如果需要把重要的python代码加密,防止破解,pyc这种最简单的,但是也是最容易被破解
pyd,这个是开发cython生成的二进制脚本,可以直接当库导入(简单来说它就是个dll.)
安全性来说,pyd是二进制文件,只能被反编译,所以只能看到汇编。
所以只介绍pyd 的编译。
系统:win10
python:3.6
首先安装cython:pip install Cython
然后 修改python安装目录下Lib\distutils\msvc9compiler.py文件(如有必要可能msvccompiler.py文件也需要做相应更改,视系统而定),找到get_build_version方法直接return 9.0
def get_build_version():
"""Return the version of MSVC that was used to build Python.
For Python 2.3 and up, the version number is included in
sys.version. For earlier versions, assume the compiler is MSVC 6.
"""
# 这里返回vc版本,如果没有往下看
return 9.0
prefix = "MSC v."
i = sys.version.find(prefix)
if i == -1:
return 6
i = i + len(prefix)
s, rest = sys.version[i:].split(" ", 1)
majorVersion = int(s[:-2]) - 6
minorVersion = int(s[2:3]) / 10.0
# I don't thi