我收到带有smime.p7s附件的电子邮件。当我查看Linux上的邮件时,我可以看到邮件正文中的base64编码块。我可以提取该块并在Windows上使用certmgr打开它,一切看起来都很好。
我需要验证我提取到一个文件中的证书
我想使用脚本在linux上执行所有任务。我如何使用openssl或其他命令来做到这一点?
发布于 2013-01-04 16:51:54
Openssl拥有您所需的所有命令行实用程序。
它可以在X 509证书上工作,也可以直接处理S/MIME含量。验证效用专门用于证书链验证,但该函数也内置于S/MIME实用程序中。
发布于 2013-10-25 23:00:21
你想用 openssl cms命令:
openssl cms -verify -in somemail.eml注意,验证是在.eml文件上完成的,而不是smime.p7s附件(以“MIAGCSqGSIb3DQEHAqC”开头的文件)。
对于CRL检查,请查看-crl_check和-crl_check_all参数。
若要指定要检查的CA证书,请使用-CApath或-CAfile参数。
最后,如果您想手动检查证书(如certmgr),可以使用-certsout参数:
openssl cms -verify -certsout chain.crt -in someemail.eml
openssl x509 -in chain.crt -text如果chain.crt中有多个证书,您可以手动将它们分割成不同的文件,这样您就可以使用openssl x509单独检查每个证书。
https://security.stackexchange.com/questions/26499
复制相似问题