所以这是我在 Stack Overflow 上的第一个问题,它是关于钥匙串(keychain)的,所以我阅读了有关钥匙串(keychain)的苹果文档,他们提到可以通过其他方式生成或获取 key “这就是我的情况”,然后我创建了“查询字典” “就像他们说的,但是当我尝试添加它时,我收到一个错误,我的状态等于-50我不知道这意味着什么,这也是我尝试存储我的 key 的原因所以我可以将它与“SecKeyDecrypt”一起使用来解密需要SecKey作为参数的消息
更新:我发现返回代码的含义是什么 -50 errSecParam 这意味着 “传递给函数的一个或多个参数无效。” 然后我尝试删除我的 kSecValueRef as String: privateKey 它可以工作,但我仍然希望存储该 key ?
let privateKey = "myKey"
let tag = "mybunlde.com".data(using: .utf8)!
let addPrivateKey: [String: Any] = [kSecClass as String: kSecClassKey,
kSecAttrApplicationTag as String: tag,
kSecValueRef as String: privateKey]
let status = SecItemAdd(addPrivateKey as CFDictionary, nil)
guard status == errSecSuccess else { print("error while creating the key")
return
}
let getPrivateKey: [String: Any] = [kSecClass as String: kSecClassKey,
kSecAttrApplicationTag as String: tag,
kSecAttrKeyType as String: kSecAttrKeyTypeRSA,
kSecReturnRef as String: true]
print("getPrivateKey \(getPrivateKey)")
} else {
print("no key found ")
}
最佳答案
https://apple.stackexchange.com/questions/8993/how-can-i-add-a-private-key-to-my-keychain Adding private key into iOS Keychain
使用上面的链接......
关于ios - 将 key 添加到 key 链项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56253936/