无法通过SSH验证openssl smime验证
我正在尝试SSH进入我大学的服务器以执行OpenSSL分配。 我有我的自签名证书aasignedcert.pem
,它是用aaprivatekey.pem
和我的明文test.txt
签名的aaprivatekey.pem
。
我首先使用以下命令签署了我的消息以创建我的testsigned.txt
文件:
openssl smime -sign -signer aasignedcert.pem -in test.txt -inkey aaprivatekey.pem > testsigned.txt
然后,加密文件以制作testsigned.txt.enc
:
openssl smime -encrypt -in testsigned.txt -aes128 aasignedcert.pem > test.txt.enc
为了确保一切正常,我解密了该文件并将其存储在testsigned.dec.txt
:
openssl smime -decrypt -aes128 -in test.txt.enc -inkey aaprivatekey.pem > test.dec.txt
解密的文件确实具有原始明文。 最后,我试图使用我签署的证书对其进行验证:
openssl smime -verify -in test.dec.txt -CAfile aasignedcert.pem -certfile aasignedcert.pem
但是,这不起作用。 即使摆弄参数,我也会一直得到这个错误信息:
Verification failure 139814549997256:error:21075075:PKCS7 routines:PKCS7_verify:certificate verify error:pk7_smime.c:342:Verify error:unable to get local issuer certificate
我无法弄清楚我做错了什么。 有人有想法吗?
你是如何创建aasignedcert.pem的? 也许你是使用你创建的本地CA自签名的? 如果是这种情况,我相信你需要将CA的证书传递给-CAfile参数。
openssl smime -verify -in test.dec.txt -CAfile [CA的证书] -certfile aasignedcert.pem
要在验证消息时取消对密钥证书的检查,可以将-noverify参数提供给verify命令(尽管openssl smime verify -noverify确实看起来有点奇怪)。
链接地址: http://www.djcxy.com/p/63481.html上一篇: Cannot verify openssl smime verify over SSH
下一篇: OpenSSL as a CA without touching the certs/crl/index/etc environment