如何将RSA私钥从原始字节转换为SecKeyRef?

时间:2019-07-14 09:23:54

标签: macos openssl rsa

我正在现代化一个旧的macOS应用程序,该应用程序用于以原始字节形式将RSA私钥存储到磁盘。我的意思是说

BN_bn2bin(rsaKey->d, privBytes);

并将privBytes写入磁盘。我现在正尝试从这些字节中创建一个SecKeyRef。

我找不到使用Apple API进行此操作的方法。因此,我尝试将此密钥转换为有效的PEM格式,以便可以将其导入SecKeyRef。

RSA *rsaKey = RSA_new();
rsaKey->d = BN_bin2bn(privBytes, privBytesLength, NULL);
PEM_write_RSAPrivateKey(pFile, rsaKey, NULL, NULL, 0, NULL, NULL);

虽然确实会在磁盘上创建一个PEM文件,但SecItemImport()函数无法从中生成SecKeyRef。

任何帮助将不胜感激。

0 个答案:

没有答案