我正在寻找二进制加密代码生成的选项,发现两个可用选项是 PIC 和 PIE。我试图找到两者之间的差异,但没有找到合适的文章。如果有人可以用专业人士和玉米的例子来解释差异或提供好文章的链接,那将是很好的学习。
我的基本动机是保护编译后的代码,因为 ELF/PE 格式可能会受到病毒的攻击,也可能会被黑客入侵,或者借助反向技术可以重新生成代码。还请提供任何其他方法来保护已编译的代码免受攻击和 d-compling。
我正在通过 Cygwin 使用 GCC 编译器来构建跨平台应用程序。
我正在寻找二进制加密代码生成的选项,发现两个可用选项是 PIC 和 PIE。我试图找到两者之间的差异,但没有找到合适的文章。如果有人可以用专业人士和玉米的例子来解释差异或提供好文章的链接,那将是很好的学习。
我的基本动机是保护编译后的代码,因为 ELF/PE 格式可能会受到病毒的攻击,也可能会被黑客入侵,或者借助反向技术可以重新生成代码。还请提供任何其他方法来保护已编译的代码免受攻击和 d-compling。
我正在通过 Cygwin 使用 GCC 编译器来构建跨平台应用程序。
从gcc 文档:
-fpic
生成适合在共享库中使用的与位置无关的代码 (PIC)...
-fpie
这些选项类似于 -fpic 和 -fPIC,但生成的与位置无关的代码只能链接到可执行文件中......