On 5/4/19 8:35 AM, nathan tech wrote: > It has to be said, after extensive research, and responses here, it > seems python was just not designed to be a commercial product. > > Licenses are all well and good, but if you're hacking a product, you're > just not going to be stopped by a lisence. > > Furthering to that, if I ever sold products it would be £5, or $7, and 7 > bucks just isn't worth all the effort to make python difficult to hack. > > Nothing is impossible, but, deterring the average user just for $7? Not > worth it. > > Thanks anyway guys. > > Nate
A few more comments to add, this is philosophical and business model territory, not coding, thus not necessarily the space we here are good at :) As Alan observed, the purpose of "compile" in Python is not to obfuscate, it is to improve the chances that the program works right as delivered without running into dependency and path problems. (especially on Windows, a tricky target anyway and you should have limited confidence any given system has Python installed) There are people who have been working for years on "protecting" code written in Python. Some claim to have technologies with very good success. Personally, I tend to take those claims with a grain of salt, and won't provide any links; some internet searching should turn up some ideas. If you feel you have secrets to protect, or indeed simply want to prevent people from using your code without paying there are several different general approaches: Licensing means - tell people they can't do that. Technical means - the use of license keys, code obfuscation (*), etc. Software as a service - put the "meat" of your technology as a web service, give the application the user runs away for free but use some sort of API/license key scheme to restrict who can actually use the service. Better value - just make it not worth the time for people to cheat - your product is so cheap the work to steal it costs more; you keep adding new value such that reverse-engineers have to start over frequently, etc. There's a page on the Python wiki about this, which really doesn't have that much information, but I will include anyway: https://wiki.python.org/moin/Asking%20for%20Help/How%20do%20you%20protect%20Python%20source%20code%3F * Note on code obfuscation: people can do surprisingly sophisticated things here. One approach that has been used is to change the bytecode emitted so it can only be read by a custom interpreter which you supply. Dropbox did this. Of course, researchers figured out how to decode it anyway. I didn't realize this was so old, time passes... https://developers.slashdot.org/story/13/08/28/0048238/researchers-reverse-engineer-dropbox-cracking-heavily-obfuscated-python-app This stuff definitely falls in the catgeory of "is it worth doing all this to protect an inexpensive app"? _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: https://mail.python.org/mailman/listinfo/tutor