加密保护Python程序防止Python字节码被反编译的测试

关键词:加密锁|加密狗|python程序加密|pyc代码反编译
Python程序是开源的,还用不用加密保护?因为Python程序运行产生的pyc文件很容易被反编译,代码看得一清二楚,所以加密保护是必要的,下面介绍一种python程序的加密保护方案,并测试其加密后的防止被反编译的效果。
使用硬件加密狗对Python程序进行加密,可以有效地防止python程序的PYC代码被反编译,保护python软件的版权,加密后的程序必须有加密狗才能使用。
在这里插入图片描述

本软件保护方案支持windows与Linux平台,下面以windows平台为例。
保护 Python 应用程序包含以下步骤:
1.收集应用程序的 Python 字节码 (PYC) 模块。
2.使用 Envelope 外壳加密工具保护 Python 解释程序并包含数据文件保护模块,从而使解释程序可以执行加密的数据文件。
3.使用 dfcrypt 工具保护应用程序的 Python 字节码PYC文件。
可以使用将受保护的解释程序与加密的代码封装在一起的方式分发受保护的应用程序(例如使用 pyinstaller)。
说明 一定要保护编译的 Python 字节码(PYC 文件),而不是明文 Python 源码(PY 文件)。Python 解释程序先将 PY 转换成 PYC 文件,然后再写到磁盘上以加快后续执行速度。如果提供的是受保护的 PY 文件而不是 PYC 文件,Python 解释程序会生成明文 PYC 文件,然后将其写到磁盘,然后即可对其进行分析。
使用圣天诺加密锁,首先下载安装开发工具如下图
下载地址:http://chinadlp.com/?list-DriveDownload.html
在这里插入图片描述

打开API的示例程序,这里面是未加密的例子程序。
在这里插入图片描述

运行加密工具提供的批处理文件
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

批处理文件已将py文件转换成pyc字节码文件并已加密,同时将python程序打包成可执行程序exe文件。
分发应用程序
已将受保护的文件复制到文件夹 dist/<application_name>。
要部署受保护的应用程序,请复制文件夹
dist/<application_name> 到目标机器。
然后即可通过执行
dist/<application_name>/<application_name>
启动受保护的应用程序。

现在插上加密狗,例子程序main程序即可成功运行!
拔掉加密狗,会提示找不到加密狗。
在这里插入图片描述

在这里插入图片描述

下面测试加密后的pyc文件反编译效果
使用pycdc工具来测试,发现加密后的pyc文件无法被反编译,提示:Bad MAGIC!
在这里插入图片描述

再测试下未加密的pyc文件的反编译效果
可以看到源代码。
在这里插入图片描述

所以使用加密狗来加密python程序是可以防止被反编译的。

  • 5
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值