Pyarmor加密安全性存疑?Python代码防破解及打包报错咨询
Python脚本加密打包问题解答
怎么隐藏Python源文件和.pyc文件?
- 别直接给用户混淆后的
.py文件,用pyarmor pack foo.py直接把原脚本打包成独立exe。这样用户运行时不会生成能被逆向的.pyc,拿到的只有单个exe文件,完全看不到源文件和pyc。 - 也可以用PyInstaller搭配PyArmor的高级加密,但PyArmor自带的
pack已经集成了混淆+打包,更省事。 - 重点:交付混淆后的脚本本身就有漏洞,因为运行时还是会生成pyc,必须打包成exe才能彻底杜绝这个问题。
用pyarmor pack foo.py转exe会泄露源码或.pyc吗?
不会。pyarmor pack会先对原脚本加密混淆,再打包成exe。运行时解密只在内存里进行,不会在磁盘生成明文的.py或.pyc,用户根本拿不到可逆向的文件。
打包报错与直接打包原文件的状态说明
- 报错
DO NOT pack the obfuscated script, please pack the original script directly是因为PyArmor的pack命令要求直接处理原脚本,它会自动完成混淆+打包的全流程,不用你先手动混淆。 - 直接打包原文件生成的exe是加密混淆状态的,PyArmor在打包过程中就会把原脚本加密好,运行时只有内存里会临时解密,磁盘上的exe里的代码是加密后的,没法直接逆向出原逻辑。
内容的提问来源于stack exchange,提问作者gunnu mitral
相关产品推荐
相关产品推荐

