0%

encryptpy加密python源码

1. python代码的加密方式

(1)pyc

python解释器执行的过程中会首先生成.pyc文件,然后再解释执行.pyc文件中的内容。

./pyc是一个二进制的文件,不具备可读性,可以使用compileall库将py文件编译为pyc二进制文件。

现在反编译工具可以较为轻松的将pyc文件破解,安全性较差。

(2)代码混淆

代码混淆是一种常见的加密方式,其原理是让代码的可读性变差,例如删除注释,添加无意义代码,变量、函数、类进行重命名等。

常用的代码混淆的库是pyobfuscate。

(3)打包为exe

使用py2exe可以将python脚本打包为可以在windows上运行的文件。

(4)cpython加密

一般情况下,cpython可以用来提升python的性能,其实也可以作为加密的一种方式。

cpython可以将py文件编译为.c文件,再将.c文件编译为.so(linux)或者pyd(windows)文件。

常用的cpython加密库是encryptpy(https://pypi.org/project/encryptpy/)。

image-20220425162929113

image-20220425162958433