首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >安全存储的限制- KeyChain和KeyStore

安全存储的限制- KeyChain和KeyStore
EN

Stack Overflow用户
提问于 2020-09-14 14:59:02
回答 1查看 2.1K关注 0票数 6

我计划在我的应用程序中使用存储来保存一些私钥和令牌。我正在寻找安卓和iOS上安全存储的局限性,但我无法找到其中一些问题的答案:

  1. KeyChain和KeyStore分别在iOS和安卓上的存储空间有多大?
  2. 我们里面能放多少把钥匙?
  3. 个人钥匙能有多大?
  4. 储存的寿命是多少?它是否只在安装应用程序时才存在?是短暂的坚持吗?

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-09-17 13:19:18

安全存储就像共享Prefence/NSUserDefault一样。它以键值对存储数据。对数据进行加密,并使用从唯一设备密钥生成的密钥对存储的数据进行加密和解密。数据存储在根目录中,只有OS才能访问它。

  1. 安全存储没有存储限制(在任何文档中都没有提到空间限制,但我确实认为不能存储大量属于1Gb+的数据)
  2. 您可以在里面存储无限数量的密钥。
  3. 基于MKJParekh的答复,您可以存储到2147483647字符。
  4. 一旦应用程序被卸载,数据就会被删除。(请注意,安全存储中的数据不能在Android中备份) 看看这个

不使用安全存储来存储敏感的私钥和令牌。没有指定要在安全存储中存储哪些私钥和令牌。您可能正在存储数据库凭据或其他用户不应该获得的内容。虽然存储在安全存储中的数据是加密的,但并不完全安全。用户可以根目录/越狱他们的设备,这使他们完全控制操作系统。有些工具可以在提供密钥时截取密钥,并使用这些密钥解密数据。防止这种情况的唯一方法是永远不要把密钥给用户。您应该将其存储在您可以控制的服务器中。(Firebase函数、AWS EC2或您自己的VPS)就是这些服务器的例子。

何时使用安全存储

使用安全存储存储应该对用户加密和隐藏的数据。该数据应该只存储用户的敏感数据,比如他们的api键,而不是您的服务器私钥

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

https://stackoverflow.com/questions/63886883

复制
相关文章

相似问题

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