python 防破解_python 脚本防破解-pyd编译-python27+win7-64环境

操作环境-python2.7.15,win7-64

由于某些原因,不想或者不能用python3,所以脚本都是在python27下开发的

最近有了一个需求,需要把重要的部分加密,防止破解,然后找了各种方法,pyc这种最简单的,但是也是最容易被破解

然后看到了pyd,这个是开发cython生成的二进制脚本,可以直接当库导入,安全性来说,pyd是二进制文件,只能被反编译

安装:

首先安装cython:pip install Cython

不要看网上那些cython的教程帖,搞什么wingw,GCC啥的,折腾了老半天,弄出来的pyd还不能加载

也不要去装什么VS2015,安装包都要好几个G,装了半天也没动静

这样就完成了cython环境的配置,接下去就是实际使用

创建工作目录并生成pyd文件

这里有一个坑。程序所在的目录路径不能包含中文文字。所以我在E盘下创建一个test文件夹,用于放置要处理的python文件。

简单写了一个测试文件(命名为test.py):

#coding:utf-8

defhello():

print("Hello world")

input("")

在该目录下,再新建一个py文件(命名为setup.py):

fromdistutils.core importsetup

fromCython.Buildimportcythonize

setup(

name ='Hello world app',

ext_modules =cythonize("test.py"),

)

接着,再打开cmd,跳到该目录并执行如下命令:

python setup.py build_ext --inplace

最终生成如下文件:

其中,build是生成过程使用到的临时文件。test.c也是临时文件,可以打开看看传说中的D语言代码。

test.pyd是我们所需的文件。

pyd文件可以像平常一样使用。例如,我进入python,如下代码:

当然还有打包exe:

使用pyinstaller也是没问题的,实际测试通过

生成exe

至此,pyd的加密完成了,当然,这只是借用了cython的编译,python脚本没有做任何c优化

下一步做一些cython的优化,比如固定变量的类型,这样可以加速脚本,优化的好的话,拥有c的速度也不是不可能的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值