iOS Keychain - kSecClassGenericPassword和kSecClassInternetPassword有什么区别?

问题描述 投票:1回答:1

我有一些代码将数据存储在钥匙串中。代码在单元测试期间正在运行。我存储的值是Data但是,当我指定时

 kSecClass : kSecClassGenericPassword, I get OSStatus 0 - success
 kSecClass : kSecClassInternetPassword, I get OSStatus -25303

kSecClassGenericPassword和kSecClassInternetPassword之间的存储要求或差异是什么? (相同的代码与kSecClassInternetPassword失败)

更新:可能互联网密码查询缺少必填字段之一,如kSecAttrServer,而不是kSecAttrService

ios keychain osstatus ksecclassgenericpassword ksecclassinternetpassword
1个回答
2
投票

“Internet密码”是Safari的一些专业记录。它们包括主机和用户数据,使您在为未知的站点列表存储数百条记录时更容易查看。它们几乎绝不是浏览器想要的东西。

几乎在所有情况下,无论你存储什么,应用程序想要存储数据的内容都是“通用密码”,即使它不是密码。 “通用密码”基本上是“加密数据的blob”。 (如果您的应用需要存储公钥/私钥或证书,那么适用的类对此有用,但这比存储“加密数据的blob”更不常见。)

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.