没有合适的资源?快使用搜索试试~ 我知道了~
由于Python开源的特性,在一些商业场景下,若不想将源码暴露,可通过混淆、编译为pyc或so(Windows下为pyd)文件等方法起到保护源码的效果。其中,将源码编译为so文件是常用且较好的一种保护方法。 1 混淆 代码混淆是将函数、类名和变量名等替换为其他符号,提高了阅读的难度。Oxyry网站提供的在线代码混淆(或使用pyminifier),如下图所示: 代码混淆简单且成本代价低,但由于未改变程序的主体结构,仅降低代码的可读性,实际对源码的保护并不是很好。 2 pyc pyc是Python脚本编译后形成的字节文件。生成后的pyc文件可以直接替换对应的py文件。但需注意Pyth
资源推荐
资源详情
资源评论
Python源码保护源码保护
由于Python开源的特性,在一些商业场景下,若不想将源码暴露,可通过混淆混淆、编译为pyc或so(Windows下为pyd)文件等方法起到保护源码的效果。其中,将源码编译
为so文件是常用且较好的一种保护方法。
1 混淆混淆
代码混淆是将函数、类名和变量名等替换为其他符号,提高了阅读的难度。Oxyry网站提供的在线代码混淆(或使用pyminifier),如下图所示:
代码混淆简单且成本代价低,但由于未改变程序的主体结构,仅降低代码的可读性,实际对源码的保护并不是很好。
2 pyc
pyc是Python脚本编译后形成的字节文件。生成后的pyc文件可以直接替换替换对应的py文件。但需注意Python编译版本与运行版本需要一致。pyc生成并使用流程如下:
1)通过Python标准库中py_compile(或compileall)或被调用的脚本(如A.py被调用),都将在__pycache__文件夹中生成pyc文件,py_compile使用代码如下:
import py_compile
py_compile.compile(file="xxx.py") # 需转换为pyc文件在——__pycache__中
2)将pyc文件直接替换对应py文件
与其他语言相同,pyc也可以通过反编译获取源码。pyc反编译反编译通过uncompyle6,使用如下所示:
# 安装
pip install uncompyle6
# 使用
uncompyle6 xxx.pyc
3 so或或pyd
so(pyd是windows平台)文件是通过cython转换为c后,再进行编译形成的文件。生成so并使用流程如下:
1)安装cython,Linux平台需安装gcc,Windows平台需安装对应版本的Visual Studio
pip install cython
资源评论
weixin_38668754
- 粉丝: 3
- 资源: 973
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于python的高性能爬虫程序,使用了多线程+缓存+xpath实现的,这里以彼-岸图库为例,实现,仅用于学习交流
- 中分辨率成像光谱仪(MODIS)烧毁面积产品信息MODIS-C6-BA-User-Guide-1.2.pdf
- Screenshot_20240427_172613_com.huawei.browser.jpg
- 关于学习Python的相关资源网站链接及相关介绍.docx
- (HAL库)基于STM32F103C8T6的温控PID系统[Dht11、ESP8266、无线透传、L298N……]
- VoLTE高丢包优化指导书.xlsx
- Rust资源文件.zip
- 前后端分离实践:使用 React 和 Express 搭建完整登录注册流程
- gradle-publish-to-MavenLocal.zip
- 10份网络优化创新案例.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功