Python3源代码保护:将py源代码⽂件转换为pyd动态链接库⽂件以保护代码
Python这门解释型语⾔有⼀个致命的缺点:使⽤Python开发的软件包含了pyc⽂件,pyc⽂件能够被反编译成为源代码,这样对于⼀些企业开发的软件来说⾮常危险(这也是为什么Python不常被软件开发公司使⽤,除了⾕歌),今天我们要学习⼀下Python保护源代码的⼀招:py转pyd⽂件。
我们需要⽤到的⼯具有:
1. Microsoft Visual Studio环境
2. Cython
3. 由pip下载的setuptools
4. ⼀个⾃制的python⼩程序
5. Python环境
我们需要借助C语⾔⽣成pyd代码,因为Python⼀般是C语⾔实现的,我们先要下载所需的环境。
我们需要下载的⼯作负载是C++桌⾯开发这个选项,但是不是所有都要选择,只要选择三个项⽬:MSV
python怎么读取py文件C⽣成⼯具,Win10 SDK(版本根据你的win10的确切版本⽽定)还有C++分析⼯具,这三个缺⼀不可,总共需要下载将近3.54GB的内容,但是我觉得有点⼩题⼤做,但是这没办法,微软⽬前只有Visual Studio for Python27这个软件,没有适⽤于Python3的,所以我们必须下载这些东西。
静静等待下载的时候,我们可以创建⼀个⼩⼩的Python程序,在这⾥命名为setup.py,写⼊如下内容:
import setuptools
from Cython.Build import cythonize
sion import Extension
extensions =[Extension('名字',['⽂件路径'])]
setuptools.setup(ext_modules = cythonize("⽂件路径"))
在这些代码中我们可以发现,我们还缺少Cython和setuptools,我们需要使⽤python环境的pip来下载。Win+R打开运⾏,输⼊cmd运⾏命令提⽰符,然后输⼊指令:
pip install cython
pip install --upgrade setuptools(通常setuptools是已经安装好的,最好更新⼀下)
操作上述指令的时候遇到任何问题,可以参照这篇⽂章:
但是前提是你安装python环境的时候勾选了Add Python to PATH,否则你输⼊pip它不鸟你。。。
安装好了cython,setuptools和VS环境中的⼯作负载之后,我们就可以开始转换代码了,我们传参运⾏我们制作的setup.py⽂件,进⼊cmd切换到所在⽬录,然后输⼊指令(下图为完整⽣成过程,发⽣错误的可以以此做个对照):
python setup.py build_ext
然后我们可以看到⾸先将py⽂件转换为c代码,然后结合obj⽂件使⽤VS环境中的cl.exe进⾏编译,最后完成了代码的⽣成。
完成之后我们发现多出来⼀个build⽂件夹,我们进⼊lib⽂件夹,之后就能发现我们编译好的pyd⽂件,把这个⽂件移出来,可以当成py⽂件进⾏导⼊,只是你不能到源代码⽽已,这么做就保证了源代码安全。
好了今天为⼤家介绍的py转换为pyd⽂件的教程就到这⾥结束了,感谢⼤家阅读,如果遇到什么问题可以在评论区留⾔。
本⽂为作者原创,⾮经本⼈允许,禁⽌转载。
--------------------------END-------------------------------
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论