关于python的加密

目前软件开发商对 Python 加密时可能会有两种形式,一种是对python转成的exe进行

保护,另一种是直接对.py或者.pyc文件进行保护,下面将列举两种形式的保护流程。

生成的dis文件可以用 notepad++ 查看出源码

解决方案#

由上图可看出,没有经过加密的.pyc文件可以很轻易的通过Easy Python Decompiler v1.3.2工具反编译出源码 ,深思对.pyc保护的方式是通过DS Protector工具进行保护 ,防止源码被反编译 。

DS Protector是北京深思数盾自主研发的程序数据保护工具 ,它弥补了加壳VirboxProtector的功能, Virbox Protector是对程序编译后的二进制代码行保护,配合DS Protector数据保护工具就形成了代码,数据三位一体的防护。

而对于 python 开发的程序保护方式主要是对 开发的程序保护方式主要是对 pyc 文件进行加密,可以保护主要代码逻辑不被反编译,从而最大程度保护软件开发者的合法权益。

通过 Virbox Protector先对解析文件的python.exe进行加密,加密时打开 DS Protector 插件功能,然后通过DS Protector对pyc文件进行加密,并使用壳生成的配置将后文件进行加密后的python.exe pyc文件和授权三者关联起来。

经深思保护#

加密后使用 Easy Python Decompiler v1.3.2工具反编译 pyc文件失败。

对可执行的exe进行保护#

未经深思保护#

通过打包工具py2exe和跨平台的PyInstaller工具都可以将 python 脚本打包成可执行文件,打包后的可执行文件不依赖 python,可以直接在没装python 的机器上运行。 注:不同的打包方式原理不同,源码存放位置也不同,所以需要保护具体模块也不同。

使用 Py2exe打包后,只需使用unpy2exe-master,将exe文件放入待反编译的程序目录下,执行 python unpy2XXX.exe件,反编译为 pyc pyc文件;

使用 PyInstaller打包后,将pyinstxtractor.py 放入待反编译的程序目录下,执行 pyinstxtractorXXX.exe,会对应的生成一个文件夹,在文件夹中找到名字和程序相同pyc文件。 然后使用 Easy Python Decompiler v1.3.2工具反编译 pyc 文件,成功后同目录下生成一个带后缀dis的文件,生成的dis文件可以用notepad++查看出源码。

解决方案#

python脚本打包的可执行文件,可以直接使用 Virbox Protector 对exe 程序进行加壳保护,加壳软件中内置了虚拟机、碎片代码执行混淆等多种安全技术,能有效阻止 exe 程序被反编译,无法dump内存。

注:不同的打包方式原理不同,源码存放位置也不同所以需要保护的具体模快也不同

经深思保护:#

加密之后再尝试解压 XXX.exe 失败 ,已经无法进行反编译,使用常规工具也是无法分析的。

加密之后再尝试解压log322.exe失败,已经无法进行反编译,使用常规反编译工具也是无法进行分析的。

python代码封装加密_对Python源码加密及反编译前后对比相关推荐

  1. xjar加密后运行错误_XJar: Spring-Boot JAR 包加/解密工具,避免源码泄露以及反编译。...

    XJar Spring Boot JAR 安全加密运行工具,同时支持的原生JAR. 基于对JAR包内资源的加密以及拓展ClassLoader来构建的一套程序加密启动,动态解密运行的方案,避免源码泄露或 ...

  2. 获取微信小程序源码并进行反编译

    获取微信小程序源码并进行反编译 只需如下几部就可以爬取到你所想要的微信小程序源码: 第一: node.js运行环境 如果没有安装nodejs,请先安装一下 下载地址:https://nodejs.or ...

  3. python代码去马赛克_十行python代码教你如何去除万恶的,如s一样的马赛克

    世界上有一种东西,叫作马赛克,不知道困扰了多少痴男怨女.小编新get到一个技能,忍不住拿出来秀一秀. 小编这几天的了解其实水印和马赛克的原理是一样的,都是覆盖.一般是去不了的,那么这个技术来了,请看~ ...

  4. php7.0源码加密,Zend Guard(php源码加密工具) V7.0 官方版

    Zend Guard是一款能够对PHP源码加密的软件,采用先进的编码和迷乱技术,对您的PHP应用的源码进行加密处理,从而保护您的PHP应用版权不被侵犯. [功能特色] 1.通过采用先进的编码和迷乱技术 ...

  5. php 商业源码加密保护,关于PHP源码加密保护的方式

    很久没写关于技术类文章了,记得以前写关于技术类的文章都是15年前的事儿了,这篇文章有点软广告的性质,愿意读的请继续,如不耐烦的请关闭.当然后续我也会更新一些业务实现的文章.PHP加密方式很多,大多数作 ...

  6. 调用python接口并画图_【PySpark源码解析】教你用Python调用高效Scala接口

    点击 机器学习算法与Python学习 ,选择加星标 精彩内容不迷路 机器之心专栏 作者:汇量科技-陈绪 众所周知,Spark 框架主要是由 Scala 语言实现,同时也包含少量 Java 代码.Spa ...

  7. python代码风格指南_记录Python代码:完整指南

    python代码风格指南 Welcome to your complete guide to documenting Python code. Whether you're documenting a ...

  8. 什么叫python代码的优化_优化Python代码

    如果你的问题是关于优化python代码(我认为应该是这样),那么你可以做各种各样的intesting的事情,但是首先: 你可能不应该痴迷于优化python代码!如果您正在使用最快的算法来解决问题,并且 ...

  9. python代码颜色搭配_修改Python IDLE代码配色及语法高亮主题

    文章1 原出处:http://wangye.org/blog/archives/634/ 文章2 原出处:http://huacnlee.com/blog/share-someting-python- ...

  10. python代码阅读器_用Python代码实现的RSS阅读器示例

    玩蛇网python之家这篇文章是关于如何使用Python代码实现RSS阅读器示例,如何用Tkinter等模块方法实现RSS订阅器的编写,参考学习过下面的正试代码后就会明白. 简单的说下RSS阅读器是什 ...

最新文章

  1. mssql mysql 语法区别_mssql与mysql区别之——变量区别
  2. vue cli3.0 引入eslint 结合vscode使用
  3. UVA-10714 Ants---蚂蚁模拟
  4. 【数据结构】绪论部分
  5. 对于高并发的理解及实践方案
  6. 如何在面试中通过工厂模式来给自己加分?逆袭面经分享
  7. SpringBoot之AOP详解
  8. 今天高考,讲几句大实话
  9. java类作为多层级的数据实体_API json多层数据实体类封装(利用泛型技术)
  10. java生成cmd jar包_Java程序运行机制及cmd编译运行探究(二) cmd编译运行Java程序并打成jar包...
  11. 一个小偷写给失主的信
  12. 【个人笔记 - 目录】OpenCV4 C++ 快速入门 30讲
  13. 95.Extjs 表单中自定义的验证规则 VTypes
  14. 玩转 Android10 源码开发定制(一)源码下载
  15. 如何制作流程图?流程图制作软件哪个好
  16. 用户下单时商品库存变化
  17. 自媒体创作怎么细分领域?怎么进行选题?
  18. 如何制作渐变色二维码
  19. sql语句order by与group by
  20. 如何解决后台传回的数据不是正常的json数据,例如是个List [ ]

热门文章

  1. python 视频ai换脸_Python实现AI换脸--Faceswap
  2. NewStar week3
  3. MDK+STM32F2X7VG+ucos_II
  4. [小团队自动化](二) Drone CI使用Vault作为凭据存储 —— 打造自己的CI/CD工作流...
  5. wavecom短信猫推荐RS232串口短信猫适于二次开发应用
  6. 第9章第5节:继续目录页幻灯片的制作 [PowerPoint精美幻灯片实战教程]
  7. VUE CSS流动边框特效(二)
  8. WordPress主题制作全过程(五):制作header.php
  9. dtsi与dts_设备树dts dtsi文件
  10. 智慧农业众筹,共享农场土地租赁,认养小程序源码具备的功能?