当前位置: 首页 > 面试题库 >

Python-如何保护Python代码?

盖昀
2023-03-14
问题内容

我正在用Python开发一款软件,该软件将分发给雇主的客户。我的雇主想通过限时许可文件限制软件的使用。

如果我们分发.py文件甚至.pyc文件,将很容易(反编译和)删除检查许可证文件的代码。

另一个方面是,我的雇主不希望我们的客户阅读该代码,因为担心该代码可能被盗或至少是“新颖的主意”。

有解决这个问题的好方法吗?最好使用现成的解决方案。

该软件将在Linux系统上运行(因此,我认为py2exe不会成功)。


问题答案:

Python是字节码编译的解释语言,很难锁定。即使你使用py2exe之类的exe打包程序,该可执行文件的布局也是众所周知的,并且Python字节码也很容易理解。

通常在这种情况下,你必须进行权衡。保护代码真的有多重要?那里是否存在真正的秘密(例如,对银行转账进行对称加密的密钥),或者你只是偏执?选择一种语言,使你能够最快地开发出最好的产品,并要对你的新颖创意的价值抱有现实的态度。

如果你确定确实需要安全地执行许可证检查,请将其编写为一个小的C扩展,以便可以对许可证检查代码进行额外的难度(但并非不可能!)以进行反向工程,并将大部分代码保留在Python中。



 类似资料:
  • 问题内容: 实际上,我是一名PHP开发人员。我想出售我的PHP产品。 因此,我想保护PHP中的一些主要源代码。但是在PHP中这是不可能的。 我也知道Golang 因此,我想在golang代码中构建秘密算法并编译为二进制。 最后,我想用PHP代码和&二进制程序保护我的PHP主要算法。 我的疑问是: 当我将golang源代码编译为二进制文件时。是否可以从二进制文件中获取golang源代码? 问题答案:

  • 我正在用python(2.7)创建一个程序,我想保护它不受逆向工程的影响。

  • 问题内容: 如何在受保护的python类中定义一个方法,只有子类才能看到它? 这是我的代码: 我只希望看到的方法的子类。 问题答案: Python不像C ++ / Java / C#支持访问保护。一切都是公开的。座右铭是:“我们都是成年人。” 记录下您的课程,并坚持要求您的合作者阅读并遵守文档。 Python的文化是,以下划线开头的名称意味着:“除非您真正知道应该使用这些名称,否则请不要使用它们。

  • 问题内容: 我想在下一个项目中使用node.js,但老板不喜欢我们的竞争对手可以读取源代码。 有没有办法保护JavaScript代码? 问题答案: 您可以使用NativeExtension for node完成此操作 您将拥有一个为.jse文件添加扩展处理程序的文件 将是源代码的加密版本(用于解密的密钥不会在纯文本中的任何地方,因为解密过程是在本机扩展中进行的)。 现在,您可以使用NativeEx

  • 问题内容: 我注意到我的网站上有奇怪的请求,试图找到phpmyadmin,例如 等等 现在,我已经通过apt在Ubuntu上安装了PMA,并希望通过不同于/ phpmyadmin /的网址访问它。我该怎么做才能改变它? 谢谢 更新资料 对于Ubuntu 9.10和Apache2,相应的设置位于该文件的链接中。该文件包含 如果要避免不必要的活动,则应将第一个更改为其他内容,例如: 问题答案: 最大的

  • 问题内容: 我已经使用Socket.IO了几天,这既令人兴奋又令人沮丧。缺少当前的文档/教程使学习变得非常困难。我终于设法创建了一个基本的聊天系统,但是有一个明显的问题。如何保护它? 是什么阻止了恶意用户复制(或编辑)我的代码并连接到我的服务器?我可以从我的PHP脚本中获取用户名并将其提交给Socket.IO,这样我就可以将他们识别为该用户(当然,PHP具有安全性),但是又是什么阻止了某人仅提交未