我正在编写C程序,并已使用GCC将其从.c
转换为.so
文件。我不知道是否有任何方法可以将.so
文件转换回.c
文件。
假定我将代码发送给某人,并且其中包含所有.so
文件。有人可以使用任何工具,编辑器,技术等来访问我的源代码吗?
答案 0 :(得分:13)
您无法取回原始的C源文件,因为该文件包含共享对象(.so
)文件中机器代码中根本没有表示的信息。
但是,目标代码可以disassembled变成可读的机器代码,专家可以理解。因此,不应将C代码中的逻辑视为“秘密”。
存在使代码难以理解的方法,但是这些方法具有不同程度的有效性,并且它们越有效,它们所带来的副作用就越多(主要是通过使代码执行慢得多)。