繁体   English   中英

私人钥匙串商店

[英]Private Keychain store

我们有一个企业iOS SDK,它使用Keychain来存储高度敏感的信息。 这些信息对客户端的应用程序不可用。

我一直认为您需要一个密钥来从钥匙串中获取关联的值。 但是最近,我发现您可以要求 Keychain 返回 Keychain 中存储的所有密钥(恕我直言,这是一个糟糕的设计)。

由于客户端的应用程序可以轻松获取所有钥匙串元素,我真的很想为 SDK 创建一个单独的钥匙串商店。 我已经查看了 SO 问题,但从未找到答案。

TL;DR:如何在 iOS 中创建单独的钥匙串存储?

你不能。

KeyChain 的安全边界是应用程序(如果您启用 KeyChain 共享,则为来自同一开发人员的多个应用程序的 KeyChain 标识符)。

一旦您的框架嵌入到客户端应用程序中,它就是客户端应用程序的一部分。 它没有自己的上下文或进程空间或任何将其代码与客户端代码区分开来的东西。

如果您的框架中的代码在 KeyChain 中放置了一些东西,那么对于 iOS,它是客户端应用程序在 KeyChain 中放置了一些东西,并且没有理由对其自身保密。

即使您可以仅为您的框架创建一个 KeyChain,也可能将信息放入 KeyChain 的代码在您的框架中,因此攻击者可以通过反编译您的框架来获取信息。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM