是否可以编辑/修改.so文件?

时间:2016-04-23 16:07:38

标签: android java-native-interface shared-libraries native

我正在开发一个包含本机代码的Android应用程序。 本机代码在.so文件中编译,其中包含重要的算法。

我真的很担心我的.so文件可以编辑或修改然后重新构建(重新打包)的可能性。像apks一样,它们可以被修改和重新打包以创建一个新的

我在这里有几个问题:

1)有没有办法编辑/修改.so文件并重新构建? 2)如果有,人们如何做到这一点? 3)如何防止.so文件被编辑然后重新构建?

1 个答案:

答案 0 :(得分:2)

简短的回答是,计算机可以阅读和理解的任何内容,它也可以修改。 Android for Java或本机代码中没有防弹签名机制。尽管如此,这些文件通常被认为比Java代码更不容易受到攻击,即使打开了模糊处理。

对共享库进行逆向工程很难但可行。如果知道要改变什么,拆卸,更换和装配并不难。

有许多方法可以加强对C ++代码的反向工程保护,但是没有一种方法可以抵御坚定且资金充足的攻击。因此,如果赌注非常高,请考虑在您的服务器上运行算法的重要部分,并为其安全做好准备。