首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Android中,如何保护客户端的api密钥,即使设备已经扎根?

在Android中,如何保护客户端的api密钥,即使设备已经扎根?
EN

Stack Overflow用户
提问于 2021-09-07 11:27:27
回答 1查看 761关注 0票数 0

我们如何在有根的设备上保护api密钥?

正如你所知道的,我们不能信任客户,我们所能做的就是给黑客制造困难。下面是一些我知道的保护密钥的要点

  1. 使用NDK (在C类中存储密钥,并在运行时将其保存在kotlin类中)--即使设备是根或反编译的,黑客也无法访问它。
  2. 使用Android密钥链(将密钥存储在硬件设备中,没有设备完整性、证书,任何人都无法访问它。它存储在与您的应用程序不同的位置。不确定如果我们解压缩应用程序会发生什么)。
  3. 安全共享偏好。(即使我们对文件进行加密,它仍然可以在根设备上访问,在检查代码之后,还可以计算解密算法)
  4. 安全共享偏好和保护/护卫?(当设备扎根时,在app包下公开存储加密密钥仍然不是一个好主意。)
  5. 如果我们只是加密文件呢?(同样,它将在app包文件夹下,可以访问。)

还有其他选择吗?

EN

回答 1

Stack Overflow用户

发布于 2021-09-07 12:09:05

查看可以加密文件或共享首选项的Jetpack安全库

然而,一个好的经验法则是,如果你不希望你的应用程序中的东西被访问,那么你就不应该在本地存储它们。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69087401

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档