swift iOS 10 - 12下的P256创建

nwlls2ji  于 2023-09-30  发布在  Swift
关注(0)|答案(1)|浏览(89)

有没有办法在iOS 10-13下使用苹果原生库创建P256类型的私钥?CryptoKit仅适用于ios 13

5n0oy7gb

5n0oy7gb1#

可以使用下面的代码创建这样的键

func createPrivateKey() {
    let attributes = [
        kSecAttrKeyType: kSecAttrKeyTypeECSECPrimeRandom,
        kSecAttrKeyClass: kSecAttrKeyClassPrivate,
        kSecAttrKeySizeInBits: 256,
        kSecAttrIsPermanent: false
    ] as [CFString: Any]
    
    var error: Unmanaged<CFError>?
    let privateKey = SecKeyCreateRandomKey(attributes as CFDictionary, &error)
    print(privateKey ?? error!.takeUnretainedValue())
}

此SecKey中的密码有效,可以使用它们重新创建具有功能的P256密钥

try P256.Signing.PrivateKey(rawRepresentation: "PRIVATE_KEY_DATA")

相关问题