编程语言
首页 > 编程语言> > 哪里可以存储敏感的全局信息,例如Android应用程序中的API密钥?

哪里可以存储敏感的全局信息,例如Android应用程序中的API密钥?

作者:互联网

我需要在Android应用程序中存储一些敏感信息.如果我把它放在资源文件中,看起来另一个应用程序只需使用PackageManager.getResourcesForApplication()即可浏览和读取该文件是微不足道的.

放置这样的信息的正确位置在哪里,我们不希望人们能够轻松窥探?

它应该在编译的java文件中吗?或者类文件也易于阅读?此外,如果它们在java文件中,是否可以从需要它们的XML文件中引用它们(例如,用于google maps api密钥)?

解决方法:

无论如何,您的APK将从设备中检索并撕裂. (毕竟,有些设备已植根.)无论你在哪里硬编码,无论在哪里,都会被发现并提取出来.当然,如果潜在的收益能够证实这一努力.否则,隐蔽性的安全性,例如混淆,可能是要走的路.

处理真实的秘密应该基于某种输入,特别是密码.

令人高兴的是,如果按原样使用API​​密钥,则不一定是真正的秘密.

标签:android,security,android-resources
来源: https://codeday.me/bug/20191007/1868981.html