使用 OpenSSL 使用密钥 (.pem) 解密 .P7M 文件

信息安全 加密 openssl 微笑 解密
2021-09-05 02:49:37

我对安全性的了解有限,所以我需要一些帮助。

问题

我想使用它的私钥 (.pem) 解密一个 .P7M 文件。我更愿意为此使用 OpenSSL。

到目前为止尝试过

OpenSSL smime -decrypt -in "Secret.p7m" -inkey "Key.pem" > Result.txt

错误

unable to load signing key file
7548:error:0906D06C:PEM routines:PEM_read_bio:no start line:.\crypto\pem\pem_lib
.c:701:Expecting: ANY PRIVATE KEY
error in smime**The P7M File**

内容类型:application/pkcs7-mime;名称="smime.p7m"; smime-type=envelope-data
内容传输编码:base64
内容处置:附件;filename="smime.p7m"
内容描述:S/MIME 加密消息

BLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLABLA

2个回答

您的解密命令是正确的。

您的密钥文件似乎有问题。它真的以(注意破折号的确切数量)开始-----BEGIN RSA PRIVATE KEY-----和结束吗?-----END RSA PRIVATE KEY-----或者它可能是DER编码的,需要你添加-keyform DER你的解密命令行?

顺便说一句:您可以检查密钥本身的完整性 openssl rsa -in Key.pem

我遇到了同样的问题,Lupo 的答案是正确的。您可以尝试使用以下命令转换密钥:

openssl pkcs12 -in <key file.p7m> -out <key_file.pem> -nodes