是否在iOS钥匙串中加密了帐户名称(kSecAttrAccount)?

时间:2013-05-19 20:01:01

标签: ios keychain keychainitemwrapper

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

钥匙串中的所有数据项是否都已加密,因此在此示例中包含kSecAttrAccount / username?

我问,因为我不希望公开帐户名称。

1 个答案:

答案 0 :(得分:5)

如果您使用kSecAttr作为用户名,则会对其进行加密。

  

与钥匙串项目相关联的属性取决于项目的类别;应用程序最常使用的项目类别是Internet密码和通用密码。正如您所料,Internet密码包含安全域,协议类型和路径等属性。存储为钥匙串项目的密码或其他机密信息已加密。

(见"Structure of a Keychain"

使用kSecAttrAccount时,只能使用kSecClassInternetPasswordkSecClassGenericPassword类(请参阅Keychain Services Reference @ kSecAttrAccount),帐户名称将被加密。