我正在尝试从iOS上的SecKey获取PEM编码的密钥。EC私钥存储在Keychain中。
我从SecKey对象获取一个Data对象:
if #available(iOS 10.0, *) {
var error: Unmanaged<CFError>?
if let cfdata = SecKeyCopyExternalRepresentation(key, &error) {
return cfdata as Data
}
}
数据对象位于04|| X轴||Y型||K格式。如何将其转换为PEM密钥?
1条答案
按热度按时间n53p2ov01#
您使用哪条曲线?如果您使用kSecECCurveSecp 256 r1和kSecAttrTokenIDSecureEnclave,您就不能导出ECPrivateKey!在受信任的协处理器中创建的密钥不能导出(我相信导入的密钥也不能导出)。另外,您永远不应该传输私钥材料。这会破坏SEP的全部功能。请参见:https://developer.apple.com/documentation/security/ksecattrtokenidsecureenclavehttps://support.apple.com/en-ng/guide/security/sec59b0b31ff/web显示器