python能加密吗_Python 加密流程

保护背景

Python语言写的程序无需编译成二进制文件代码,可以直接从源代码运行程序。在计算机内部, Python解释器把源代码转换成字节码的中间形式,然后再把它翻译成计算机使用的机器语言并运行,这使得 Python程序更加易于移植。

支持范围

若不符合以下列表中场景的用户,可以联系深思客服详细咨询。

场景是否支持

Anconda2/Anconda3支持

C++/C语言文件中调用python支持

py文件中调用C++/C支持

pyinstall/py2exe将py文件打包成exe支持

py文件转成的pyd/SO/可执行文件支持

对.pyc或者.py文件进行保护

1 . 查找Python.exe

运行python程序,可在任务管理器中查找py/pyc文件调用的主进程。

windows_python_cmd.png

windows_python.png

2. 对python.exe 进行加密。

对安装环境 Python 路径下的 python.exe 进行加密。

将 python.exe 拖入到加壳工具Virbox Protector 中。

python_exe.png

配置加密选项

将加密选项中的 DS 开关打开,并设置密码。

【一般情况下,密码可随意设置(随机生成,已经过加密处理),不需要记忆】

python_ds.png

点击“保护选中项目”,加壳后会额外生成图示两个文件。

13.png

python.exe.ssp 是配置文件,在后面对 .py/.pyc 加密时会用到;python.ssp.exe 是加壳后的 python.exe 文件,将 python.exe 剪切到其他文件夹备份,python.ssp.exe 名字改为python.exe 即可。

3. 对 .py/.pyc进行保护

打开“DSProtector.exe”对 .py/.pyc进行保护。

python-opds8.png

添加上一步加密 python.exe 生成的 python.exe.ssp 文件。添加要加密的 .py/.pyc文件。

windows_python_ds.png

点击“开始保护”,加密成功。

加密后的文件名为源文件名称,.bak文件为自动备份的源文件,软件发布前需删除bak文件。

如果不想在当前目录生成bak文件,可先设置默认输出目录,会将加密后的资源文件输出到设定的目录

至此,Python 的 .pyc /py文件已经加密成功。

pyinstall/py2exe打包exe加密流程

场景:在Windows系统上,使用python自带打包工具pyinstall/py2exe将py文件打包成单个exe。应该怎样保护?

以python3.5/pyinstall为例,操作如下:

【注意】以下两种方案均不能避免exe运行产生临时文件的情况。

pyinstall_tmp.png

方案一

针对pyinstall或py2exe将py文件打包成的exe程序,可以直接使用Virbox Protect工具对exe文件进行加壳保护。优点:方便,快捷。

缺点:由于exe运行会产生临时文件(Virbox Protect工具只对exe进行保护并不会改变exe的功能),可以通过监测exe找到缓存文件的位置,获取未加密文件。

pyinstall_exe.png

方案二

pyinstall打包时会将python35.dll库打包到exe中,且python.exe依赖python35.dll。优点:产生的临时文件中的python35.dll是保护过后的,相对方案一较安全。

缺点:操作流程相对方案一较复杂

1、使用Virbox Protector工具对python35.dll进行加壳保护。

pyinstall_python35_dll.png

2、DSProtector对py/pyc文件进行加密,加密操作完成后,使用pyinstall打包exe。

C++文件中调用python文件

场景:在Windows系统上,使用C++语言的文件中调用py文件,将C++文件打包成exe后,应该如何保护?

以python3.7为例:

1、使用Procmon.exe查看打包后的exe运行所依赖的文件,可以看到是python37.dll。

c%2B%2B_python.png

2、然后使用Virbox Protector工具对python37.dll进行加壳,使用DSProtector对py文件进行加密,加密操作完成后,即可操作运行。

c%2B%2B_python_tmp.png

如何加密Linux部署的python程序

场景:直接命令行中运行python文件。

1、命令行直接执行py或pyc文件,比如:python demo.py或python demo.pyc。

2、查找py/pyc文件调用的主进程。

linux_python.png

3、找到主进程后,再依次使用Virbox Protector工具对主进程加壳,DSProtector对py/pyc文件进行加密,加密操作完成后,程序可以正常运行。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在 Linux 下安装 PyConcrete 加密 Python 代码的步骤如下: 1. 安装 Python 和 pip PyConcrete 是一个 Python 模块,因此需要安装 Python 和 pip。在 Ubuntu 上,可以使用以下命令安装: ``` sudo apt update sudo apt install python3 python3-pip ``` 2. 安装 PyConcretee 使用 pip 安装 PyConcretee: ``` pip3 install pyconcrete ``` 3. 创建加密脚本 创建一个 Python 脚本,将要加密和保护。例如,我们可以创建一个名为 `my_script.py` 的文件,其中包含以下内容: ``` def my_function(): print("Hello, world!") if __name__ == '__main__': my_function() ``` 4. 创建加密配置文件 创建一个名为 `pyconcrete.cfg` 的文件,并将以下内容添加到其中: ``` [pyconcrete] key = my_secret_key mode = encrypt ``` 其中,`key` 是一个用于加密和解密文件的密钥,`mode` 是指定 PyConcretee 运行模式的选项。在此示例中,我们将使用 `encrypt` 模式加密文件。 5. 加密脚本 使用 PyConcretee 加密脚本: ``` pyconcrete-tool.py encrypt my_script.py -c pyconcrete.cfg -o my_script_encrypted.py ``` 这将使用 `pyconcrete.cfg` 中指定的密钥和模式,将 `my_script.py` 文件加密,并将结果保存到 `my_script_encrypted.py` 文件中。 6. 运行加密脚本 使用 Python 运行加密脚本: ``` python3 my_script_encrypted.py ``` 这将运行已加密的 `my_script_encrypted.py` 文件,并输出 `Hello, world!`。 在以上步骤中,我们使用 PyConcretee 加密了一个 Python 脚本,并在 Linux 上运行了加密后的脚本。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值