我遇到了这个问题,我需要在 OpenSSL 的帮助下使用非对称 key 对大文件 (>5MB) 进行加密解密。
以下是我的要求的简要说明:-
- 我有一台运行 Linux 的设备。
- 设备可以从服务器下载固件镜像/补丁。
- 服务器中的图像/补丁将使用已共享给他们的公钥加密。
- 下载图像后,设备需要使用私钥对其进行解密以验证其真实性。
- 目标设备将使用在其上构建和安装的 OpenSSL 库进行解密。
- 除此之外,目标设备还需要验证下载的固件镜像/补丁的签名。
我在 Internet 上找到了许多不同的方法。对我来说最吸引人的方法是使用 OpenSSL S/MIME 加密/解密
。但是我没有找到合适的库/工具来使用 C 编程语言来完成这项工作。我发现的所有示例都主要使用控制台应用程序。
有一些示例 C 程序,但没有使用非对称 key 进行加密和解密;他们使用随机的 128 位 key 和 IV 代替。
谁能提供一些例子来帮助我。
最佳答案
不要忘记 OpenSSL 是开源的。如果您想查看“openssl smime”命令的源代码,则需要查看 apps/smime.c。 openssl 源代码中的文件。
关于c++ - 使用非对称 key 的大文件加密/解密的C程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28047751/