• python生成可执行文件保护源码


    工作中由于需要防止源代泄漏,需要将源代码隐藏,找到两种方法:

    1.使用python生成的pyc文件。

        这种方法的优点就是pyc文件生成很容易,缺点则是很容易通过工具得到源码,并且python版本不一致也会报 bad magic error。 

        bad magic error解决方法:删除pyc,用相同版本的python重新生成,参考stackoverflow。 

        python生成pyc文件:

    python -m py_compile python_file.py

        另一种生成pyc的方法:

            在python解释器中运行:  

                import py_compile
                py_compile.compile(r'/path/to/需要生成.pyc的脚本.py')

    2.使用pyinstaller生成可执行文件。

        这种方法生成的文件相对与pyc文件更难获取到源码,并且可以通过--key进行加密,在对方无法获取key的情况下,破解难度大大增加,但是由于key容易被获取,所以这种方法也容易被逆向,具体看这里。 

        使用方法:

            pyinstaller -F python_file.py   #  -F表示生成一个文件

        运行上述命令后会再python_file.py所在目录生成dist目录,可执行文件在dist文件中,文件名称和python_file.py相同,只是没有后缀.py

        运行可执行文件的方法:

            cd dist  # change directory to dist, which is the folder generated by pyinstaller 

            ./python_file  # 如果有参数,可以继续添加

    当然,由于python的特性,基本上不可能实现反逆向,上述以及下面链接中的方法,也只能在一定程度上防止别人看到源码而已。

    更多方法看stackoverflow以及freezing your code.


    ref:

    https://stackoverflow.com/questions/39559677/pyinstaller-encryption-key 

    https://www.zhihu.com/question/30296617 

  • 相关阅读:
    2018 eclipse安装反编译插件
    Buffer flip()方法
    区块链2
    Mist 转移默认区块存储位置方法
    区块链1
    如何在Ubuntu下安装”.deb“、”.bin“、”.tar.gz“、”.tar.bz2“格式的软件包!
    eclipse 性能调优之内存分配
    linux中搭建java开发环境
    在 Ubuntu 14.04 上安装 Ubuntu Tweak 0.8.8
    Ubuntu各个版本的介绍
  • 原文地址:https://www.cnblogs.com/buxizhizhoum/p/7778693.html
Copyright © 2020-2023  润新知