Python代码混淆器PyCry
Python代码混淆器PyCry最新版正式发布!
(下载链接在文章末尾)
(旧版本见https://home.x64bbs.cn/thread-3654-1-1.html)
经过与全网其他能找到的Python代码混淆器(如Opy、PyObfuscate、OxyryPythonObfuscator、Pyminifier、Intensio-Obfuscator,但不包括PyArmor等加密打包工具)的对比,可以肯定PyCry的功能比几乎其他所有Python代码混淆器的功能都要强大且全面,可以适用于各种常见需求。并且PyCry生成的代码很长,即使使用月之暗面、文心一言、DeepSeek等大模型也难以解析,保护代码高度安全。我测试了将PyCry源码使用PyCry混淆(发布版没有混淆),可将33KB的代码混淆成了3426KB的代码,将886行代码混淆成了45771行代码。
过一段时间会开源。
————————————————
功能:
变量名混淆
类名混淆
函数名混淆
字符串分段混淆
字符串加密
整数/浮点数混淆
布尔值混淆
添加干扰代码
本次更新:
新增字符串和字节串加密功能
修复BUG-3:lambda表达式参数定义时的参数名没有混淆
修复BUG-7:混淆代码过程中显示无响应
修复BUG-9:nonlocal表达式没有混淆变量名
修复BUG-10:混淆类名时未检查类名是否在已调用列表内
改正了混淆完毕提示词中的错误
UI更新
另外可以选择混淆后的代码是否自动换行(Non-PrettyCode选项勾选则不自动换行,建议不勾选)。
注意事项1:若执行字符串加密,则混淆后的代码执行和打包时需要安装pycryptodome和rsa两个第三方库,通过命令行执行以下代码安装:
pip install pycryptodome
pip install rsa
注意事项2:PyCry在混淆较大代码文件时耗时较长,混淆过程中不会显示任何窗口,请耐心等待,完毕后会有类似以下图片中的提示窗口,未来版本会增加进度提示。
欢迎大家反馈建议和疑问!!
————————————————
下载链接:https://pan.huang1111.cn/s/2v1aniN
————————————————
免责声明:若PyCry对文件数据、系统等产生任何包括但不限于造成系统卡顿等意料之外的影响,软件作者不承担任何责任。
转载请注明并附上本链接。
Python代码混淆器PyCry的更多相关文章
- Python 代码混淆和加密技术
动机 Python进行商业开发时, 需要有一定的安全意识, 为了不被轻易的逆向. 混淆和加密就有所必要了. 混淆 为了增加代码阅读的难度, 源代码的混淆非常必要, 一个在线的Python代码混淆网站. ...
- Python代码混淆和加密技术
Python进行商业开发时, 需要有一定的安全意识, 为了不被轻易的逆向. 混淆和加密就有所必要了. 为了增加代码阅读的难度, 源代码的混淆非常必要, 一个在线的Python代码混淆网站. http: ...
- 推荐一个C#代码混淆器 .NET Reactor【转】
C#的代码辛苦写出来之后,一个反射工具,就可以完全显露出来. 当然,在做项目时,这个功能还不错.因为我就曾在一个项目上使用C#,没有进行任何混淆.结果在项目二年多之后,需要做一些调整,自己保存的源代码 ...
- Android程序增加代码混淆器
增加代码混淆器.主要是增加proguard-project.txt文件的规则进行混淆,之前新建Android程序是proguard.cfg文件 能够看一下我採用的通用规则(proguard-proje ...
- 5个常用Java代码混淆器 助你保护你的代码
[IT168 技术文档] 从事Java编程的人都知道,可以通过逆向工程反编译得到Java程序的源代码,这种反编译工具之一就是JAD.因此,为保护我们的劳动成果,尽可能给反编译人员制造障碍,我们可以使用 ...
- python 代码混淆工具汇总
pyminifier Pyminifier is a Python code minifier, obfuscator, and compressor. Note For the latest, co ...
- Java代码加密与反编译(一):利用混淆器工具proGuard对jar包加密
Java 代码编译后生成的 .class 中包含有源代码中的所有信息(不包括注释),尤其是在其中保存有调试信息的时候.所以一个按照正常方式编译的 Java .class 文件可以非常轻易地被反编译.通 ...
- 代码混淆保安全「GitHub 热点速览 v.21.43」
作者:HelloGitHub-小鱼干 虽然让代码难以阅读看似是件难以理解的事情,但是混淆后的代码起到了类似加密的作用,而且经过混淆的代码依旧能实现原代码的功能.javascript-obfuscato ...
- O-MVLL代码混淆方式
在介绍O-MVLL之前,首先介绍什么是代码混淆以及基于LLVM的代码混淆,O-MVLL项目正是基于此而开发来的. 有关O-MVLL的概括介绍以及安装和基本使用方式,可参见另一篇随笔 https://w ...
- Java项目源码为什么要做代码混淆(解释的很好)
代码混淆,是将计算机程序的代码转换成一种功能上等价,但是难于阅读和理解的形式的行为.代码混淆可以用于程序源代码,也可以用于程序编译而成的中间代码.执行代码混淆的程序被称作代码混淆器.目前已经存在许多种 ...
随机推荐
- 操作系统综合题之“用记录型信号量机制的wait和signal操作来解决了由北向南和由南向北过河人的同步问题(独木桥问题-代码补充)”
1.问题:一条哦东西走向河流上,有一根南北走向的独木桥,要想过河只能通过这根独木桥.只要人们朝着相同的方向过独木桥,同一时刻允许有多个人可以通过.如果在相反的方向上同时有两个人过独木桥则会发生死锁.如 ...
- 神经网络-反向传播BP算法推导
还是用前向算法的图, 然后仔细一看分类输出, 发现好像错了, 这该如何去反向修改权值呢? 因其是网络结构, 改变一点, 必然会引起一连串的改动, 这个过程, 如何来描述呢? 数学推导 声明变量 首先, ...
- the server time zone value ‘�й���ʱ��‘ is unrecognized or represents more than one time zone.
分析:数据库和系统时区差异造成 解决:在jdbc连接的url后面加上 &serverTimezone=GMT
- Error: A JNI error has occurred, please check your installation and try again Exception in thread "main" java.lang.UnsupportedClassVersionError: HelloWorld has been compiled by a more
一个新手容易遇到的问题,电脑上装了多个版本的java,比如8和11,导致javac和java的版本不一样 在控制面板里将其他版本卸载,留个8就行 然后在环境变量里重新配置一下就ok
- linux 使用ll查看文件发现文件后面带 *
结论:如果你看到带 * 的文件名,通常意味着这个文件具有可执行权限. 使用alias ll检查 ll 是不是一个别名,以及它具体代表什么命令. 检查的结果如下:alias ll='ls -alF' 在 ...
- 部分请求报 CROS ERROR
当我在写系统时,发现/post/list请求报错跨域问题.但是/login,logout请求能通过.报错为下: 于是开始找文档,最开始以为是后端跨域配置导致的(但是仔细一想,发现/login又能够通过 ...
- USB Gadget设备枚举失败的处理方法
技术背景 我们的板子作为 USB Gadget 设备通过 USB 线接入 USB 主机使用,我们的板子被主机识别为一个 Compsite Device,这个 Compsite Device 是由我们板 ...
- Oracle 客户端深度指南:SQL Developer 与 PL/SQL Developer 全面安装使用教程
作为拥有10年Oracle开发经验的资深工程师,我将为您提供一份专业级的客户端工具指南.无论您是初学者还是进阶开发者,本教程都将帮助您高效使用Oracle生态中最强大的两个工具. 一.工具对比与选择建 ...
- Kafka入门实战教程(10):不再依赖ZooKeeper的KRaft
1 新的KRaft架构模式 在Kafka 2.8之前,Kafka重度依赖于Zookeeper集群做元数据管理和集群的高可用(即所谓的共识服务). 在Kafka 2.8之后,引入了基于Raft协议的KR ...
- laradock下mysql You need to specify one of MYSQL_ROOT_PASSWORD, MYSQL_ALLOW_EMPTY_PASSWORD and MYS...
上图 异常报错 mysql You need to specify one of MYSQL_ROOT_PASSWORD, MYSQL_ALLOW_EMPTY_PASSWORD and MYSQL_R ...