Windows对python文件加密

最近项目需要对部分python文件加密,调研了部分方法都觉得不可行,最后采用了将python转换成so文件、pyd文件的方法。so文件,为liunx下的动态链接库文件,在windows下为dll文件,pyd文件是Python的动态模块,实质是dll文件,反编译难度较大,应该可以达到加密的效果。

安装Cpython,distutils

在需加密的文件的同一目录下新建setup.py文件,内容加上:

from distutils.core import setup
from Cython.Build import cythonize
from distutils.extension import Extension
#这里为文件名
extensions = [
    Extension('pred_BA',['pred_BA.py'])
]
setup(ext_modules=cythonize(extensions))

运行setup.py:

python setup.py build_ext

文件夹下会新增.c和bulid文件夹,build里面的lib文件夹下即为生成的pyd文件,将该文件替换py文件即可,记得pyd文件须与py文件名一致,只是后缀不同,然后可将生成的其他文件删除。

猜你喜欢

转载自www.cnblogs.com/wangzhilun/p/11754621.html