iOS钥匙串中的账户名称(kSecAttrAccount)是否加密?

8

苹果的泛用钥匙串示例将用户名和密码保存在iOS钥匙串中。它使用kSecAttrAccount作为用户名,kSecValueData作为密码。

所有数据项都放置在钥匙串中时都会被加密,包括此示例中的kSecAttrAccount/用户名吗?

我问这个问题是因为我不想暴露账户名称。


你有查看应用程序文档文件夹吗? - Undo
是的,我看了@Undo,但不是很清楚。我不想猜测诸如钥匙串之类的东西。 - meaning-matters
你找到了这个问题的答案吗? - makaron
1个回答

6
如果您使用kSecAttr作为用户名,它将被加密。
与钥匙串项目相关的属性取决于项目的类别;应用程序最常使用的项目类别是Internet密码和通用密码。正如您所期望的那样,Internet密码包括诸如安全域、协议类型和路径等属性。存储为钥匙串项目的密码或其他机密信息都是加密的。
(参见"钥匙串结构"
由于您使用的是kSecAttrAccount,它只能与kSecClassInternetPasswordkSecClassGenericPassword类一起使用(请参见Keychain Services Reference @ kSecAttrAccount),因此帐户名称将被加密。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接