【问题标题】:Why are there so many iMessage Signing Keys in the private key section of Keychain?为什么 Keychain 的私钥部分有这么多 iMessage 签名密钥?
【发布时间】:2016-07-15 13:19:56
【问题描述】:
我试图清理我的钥匙串,因为里面有很多证书。
当我打开私钥部分时,我发现相同的密钥太多了。
我可以删除它们吗?我不知道他们是为了什么。请帮帮我!
【问题讨论】:
标签:
ios
xcode
macos
keychain
imessage
【解决方案1】:
正常,没问题。如果要清理无用的密钥,只需先退出消息应用程序,然后打开钥匙串并删除所有名为“iMessage Signing Key”和“iMessage Encryption Key”的项目。然后您应该重新启动 OS X,重新启动后,OS X 将请求并生成新的密钥对用于 iMessage 加密。
密钥对的数量取决于您设置的接收 iMessage 的地址数量。打开“消息”->“首选项”->“帐户”,在“您可以通过以下地址访问消息”部分下,如果您选中 4 个地址,OS X 将生成 4 个“iMessage 签名密钥”和 4 个“iMessage 加密密钥”并将它们存储到 Keychain。
详细信息,iMessage 系统会为每个地址生成两对,即用于加密的 RSA 1280 位密钥,称为“iMessage 加密密钥”和用于签名的 ECDSA 256 位密钥,称为“iMessage 签名密钥”。私钥保存在设备的钥匙串中,公钥发送到 Apple 的目录服务。用户的外发消息在 CTR 模式下为每个收件人的设备单独加密,使用发件人的私钥签名,然后发送到 Apple iMessage 服务进行传递。您可以从iOS Security Guide 查看。顺便说一句,在 OS X 上,这是由 /System/Library/PrivateFrameworks/MessageProtection.framework 完成的。