将 .py 文件编译为 .c 文件,然后转换为 .so 文件

compile .py file to .c file then convert to .so file

我正在尝试用 Cython 编译 python 文件,它被编译为 .c 文件 然后我使用 gcc 来加密最好的方法是什么

我是这样做的:

cython -a test.py

然后 :

gcc -shared -pthread -fPIC -fwrapv -O2 -Wall -fno-strict-aliasing -I/usr/include/python2.7 -o test.so test.c

但有人告诉我他解密了我的文件并看到了代码 使用 GCC

加密的最佳方式是什么

谢谢。

什么加密?没有。您生成的是一个共享库 - 一个 .so 文件。

这可以检查符号并反汇编,但您不能轻易恢复原始 Python 或 C 代码。

编译和加密不是一回事。编译代码旨在使其可由机器或虚拟机/语言运行时执行。虽然通常不可能 反编译 编译后的程序为原始源代码(或什至接近它的东西),但通常可以恢复类似于原始源代码的东西。

这可能的程度取决于许多因素,包括:

  • 原始语言
  • 使用的编译器
  • 编译过程中涉及的中间表示的数量
  • 编译器优化代码的积极程度(通常是编译器选项)
  • 调试符号是否已从生成的可执行文件中删除