目前,我正在为我的客户开发一款Django应用程序,但我现在开始考虑将其出售给客户,让他们自己托管.
我的问题是:如何包装和销售Django应用程序,同时保护其代码免受盗版或盗窃?分发一堆.py文件听起来不是个好主意,因为我把它卖给的人也可以把它们复制下来并传给别人.
我认为为了解决这个问题,可以安全地假设每个购买此产品的人都会运行相同的(LAMP)设置.
目前,我正在为我的客户开发一款Django应用程序,但我现在开始考虑将其出售给客户,让他们自己托管.
我的问题是:如何包装和销售Django应用程序,同时保护其代码免受盗版或盗窃?分发一堆.py文件听起来不是个好主意,因为我把它卖给的人也可以把它们复制下来并传给别人.
我认为为了解决这个问题,可以安全地假设每个购买此产品的人都会运行相同的(LAMP)设置.
不要试图混淆或加密代码-它永远不会起作用.
我建议将Django应用程序"作为服务"出售--要么为他们托管它,要么向他们出售代码and support.写一份合同,禁止他们重新分配它.
这就是说,如果您决定以某种方式混淆代码,那么您可以将python应用程序完全按如下方式分发.pyc(Python编译字节码)..这就是Py2App的工作原理.
它仍然可以重新分发,but编辑这些文件将非常困难,所以你可以添加一些基本的授权内容,而不是让它被几个#
个..
正如我所说,我认为你不会通过加密或模糊处理等方式成功地打击盗版..取决于你的客户,一份简单的合同,也许一些真正基本的判断会比一些复杂的解密系统走得更远(使用应用程序的体验是better,而不是hopefully not any worse)