【发布时间】:2010-12-29 17:23:49
【问题描述】:
我有一个公钥和一个加密字符串。我可以成功地使用公钥加密。但是当我尝试使用公钥解密时它失败了。我的意思是当我将公钥传递给 seckeyDecrypt 时,它会失败。
我用谷歌搜索发现,默认情况下 kSecAttrCanDecrypt 对于公钥是错误的。所以当我导入公钥时,我已经添加了这个特定的行,
[publicKeyAttr setObject:(id)kCFBooleanTrue forKey:(id)kSecAttrCanDecrypt];
但是没有改进它仍然失败。请有人帮忙。
编辑: 苹果的证书、密钥和信任服务说,
kSecAttrCanEncrypt 私钥默认为 false,公钥默认为 true。
kSecAttrCanDecrypt 私钥默认为 true,公钥为 false。
这意味着,可以更改值吗?我的服务器没有签署(转换为摘要)内容。他们只是使用要在我(在 iphone 中)端解密的私钥进行加密。这可能吗?
【问题讨论】: