广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Pyinstaller加密打包成反编译可执行文件
  • 910
分享到

Pyinstaller加密打包成反编译可执行文件

2024-04-02 19:04:59 910人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

目录前言PYD打包说明前言 了解 Python 的都知道 Pyinstaller 可以将 .py 文件打包成 windows 下可执行的 .exe 文件, 但是在我们不想让他人反编译

前言

了解 Python 的都知道 Pyinstaller 可以将 .py 文件打包成 windows 下可执行的 .exe 文件, 但是在我们不想让他人反编译获取源码的时候就显得无能为力, 此时我们可以了解 .pdy 文件。

PYD

pyc 是二进制文件, 是由 python 编译器进行编译后生成的文件, 加载速度快。pyo 是优化编译后的二进制文件, 可以通过 Python -O file.py 生成。pyd 则是 Python 的动态链接库, 由其他语言编写。

那 .pyd 可不可以反编译呢?

这是文档上的一段描述, .pyd 由 C 或者 c++ 编译组成, 至于它是否完全不可反编译, 我相信是不可能的, 仅是加大了反编译的难度。

打包

你需要安装 Cython 以及 pyinstaller 两个扩展包作为依赖。 Docs

将主要代理编写至 main_code.py 文件中, 建议提供入口函数 main()

编写 build.py 代理并键入以下内容:

from distutils.core import setup
from Cython.Build import cythonize
setup(
    name='随你写什么',
    ext_modules=cythonize([
        "main_code.py",  # 你的主要代码封装文件名
    ])
)

执行 python3 build.py build_ext --inplace 生成 .pyd 文件

重命名生成的 .pyd 为 main_code.pyd

新建执行脚本文件 run.py 并键入以下内容:

from main_code import *
if __name__ == '__main__':
    main()

此时你可以尝试修改 main_code.py 成别的名字, 并运行 run.py 文件, 你会发现运行正常。

执行 pyinstaller -D -i xxx.ico -w run.py

最后你会发现你的代码中没有 .pyc 的主要逻辑代码。

说明

为了使用打包的时候使用 -D 而不使用 -F?

在生成唯一 .exe 文件后执行速度过慢, 当然我仅仅是推荐, 你可以使用任何自定义的方式编译你想要的效果。

以上就是Pyinstaller加密打包成反编译可执行文件的详细内容,更多关于Pyinstaller加密打包反编译的资料请关注编程网其它相关文章!

--结束END--

本文标题: Pyinstaller加密打包成反编译可执行文件

本文链接: https://www.lsjlt.com/news/118729.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作