通过CMS_sign的OpenSSL加密消息不起作用

时间:2018-12-19 11:52:39

标签: ios encryption openssl aes rsa

我一直在寻找整整一周的时间,如何在iOS上使用PKCS#7(rfc5652标准)对消息进行加密。

我试图通过 openSSL 实现CMS加密。我找到了 openSSL 文档,该文档显示了如何使用 CMS_sign()方法的示例。

  

https://www.npmjs.com/package/react-router-config

问题是,结果文件(smout.txt)始终为空。这是将加密数据写入文件的代码的一部分:

/* Sign content */
cms = CMS_sign(scert, skey, NULL, in, flags);

if (!cms)
    goto err;

out = BIO_new_file("smout.txt", "w");
if (!out)
    goto err;

if (!(flags & CMS_STREAM))
    BIO_reset(in);

/* Write out S/MIME message */
if (!SMIME_write_CMS(out, cms, in, flags))
    goto err;

我还研究了其他替代方案,例如 SwiftCrypto SwiftyRSA ,但是它们都不实现CMS加密。在官方的Apple论坛上,我读到Apple并没有直接实现CMS加密。我了解到的唯一选择是在 openSSL 框架中使用 CMS_sign()方法,但效果不佳。

请您告诉我如何实施此加密? 或者,请告诉我一些替代方法。

0 个答案:

没有答案