gpt4 book ai didi

android - 如何避免对 APK Assets 文件夹资源项目文件进行逆向工程?

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:32:08 25 4
gpt4 key购买 nike

我正在开发一个 android 应用程序,在这个应用程序 assets 文件夹中包含一些密码和一些 imp 信息。我想防止黑客访问 APK 文件中的任何资源、 Assets 或源代码,主要是 assets 资源

我怎样才能实现这个目标?

我找到并考虑了以下解决方案,请纠正我并就此提供您的建议。

1) Put every data or files in assets folder in encrypted way.

在这个解决方案中,当我需要使用这个 Assets 文件夹数据时,我需要每次都进行解密,这会使我的应用程序变慢。

2) To secure resources, don't include all important resources in the assets folder with APK. Download these resources at the time of application first start up.

此解决方案也不适合我的应用程序,因为我想在离线模式下使用我的应用程序,如果它是第一次或第二次使用的话。

3) obfuscation would not protect assets folder data so we can not use that.

请提供您的建议和意见。

如有任何帮助,我们将不胜感激。

感谢和问候

最佳答案

Android 上的逆向工程真的很容易!你无法阻止这一点。您不应在 APK 中存储任何敏感信息,因为有人可以轻松找到它们。

如果你想在用户设备上存储一些东西,你应该使用非对称加密。

可以在您的代码中隐藏一些数据,例如对称加密 key ,但如果有人想找到它,几分钟后就会被发现。 (如果你把它放在 Assets 文件夹中几秒钟......)

编辑如果您想在代码中放置对称加密 key ,请不要将其设置为:

String myKey = "myEncryptionKey";
byte[] key = myKey.getBytes();

因为逆向工程师能够用一个命令列出你的 apk 中的所有字符串......所以使用类似的东西:

StringBuilder sb = new StringBuilder();
sb.append(m);
sb.append(y);
...
byte[] key = sb.toString().getBytes();

byte[] key = Base64.decode("esfas09f8as90f8").getBytes();

关于android - 如何避免对 APK Assets 文件夹资源项目文件进行逆向工程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20068909/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com