使用openssl smime加密大文件

use*_*168 2 openssl ssl-certificate smime

我在我的系统中生成了本地证书,我正在尝试通过smime加密文件.但是当我运行命令时,它会给我错误Unable to load certificate Expecting trusted certificate Error 1024.这是我试图运行的脚本

openssl  smime  -encrypt -aes256  -in  ABC.xml  -binary  -outform DEM  -out  DEF.xml  test.pem
Run Code Online (Sandbox Code Playgroud)

Test.pem是我的公钥.任何人都可以告诉我,我怎么能绕过这一部分并生成一个文件.提前致谢.

Iri*_*ium 8

您没有说明您是如何创建的test.pem,但这里是您可以使用的命令序列:

创建新密钥和证书请求(系统将提示您输入其他信息以完成请求):

openssl req -newkey rsa:2048 -keyout privkey.pem -out req.pem
Run Code Online (Sandbox Code Playgroud)

自签名证书请求以创建证书

openssl x509 -req -in req.pem -signkey privkey.pem -out cert.pem
Run Code Online (Sandbox Code Playgroud)

(req.pem如果您愿意,此时可以删除)

使用新生成的证书加密文件:

openssl smime -encrypt -aes256 -in ABC.xml -binary -outform DER -out DEF.xml cert.pem
Run Code Online (Sandbox Code Playgroud)

然后可以使用以下方法解密文件:

openssl smime -decrypt -in DEF.xml -inform DER -inkey privkey.pem -out GHI.xml
Run Code Online (Sandbox Code Playgroud)