如何确认使用哪个特定的S / MIME公钥来encryption电子邮件?

CentOS 5.8

有没有一种简单的方法来说明使用什么特定的公钥来encryption电子邮件?

我的电子邮件网关无法解密入站的S / MIME邮件,我怀疑远程发件人可能使用了不再使用且与我的私钥不匹配的过时公钥。

有一个简单的方法,我可以告诉如果发件人使用的公钥与我的私钥相匹配吗?

同样,有没有办法做到这一点的PGPencryption电子邮件?

理想情况下,我正在寻找一些可以通过Linux命令行或本机Windows工具查看的内容,而无需在用户桌面或将所有密钥加载到我的桌​​面(万一这种情况发生在多个用户身上)。

您可以使用DJIGZO电子邮件encryption网关S / MIME工具(www.djigzo.com)来做到这一点,但也许这仅仅是为了这个目的安装它(它需要Java)有点矫枉过正

要查看消息使用的详细信息:

java -cp djigzo.jar mitm.common.tools.SMIME -r -in SOME-MIME-MESSAGE.eml

示例输出代码片段:

==============================encryption的消息

encryptionalgorithm:RC2,密钥大小:128

收件人0

….. CN = MITMtestingCA,L =阿姆斯特丹,ST = NH,C = NL / 115FCD741088707366E9727452C9770 // 1.2.840.113549.1.1.1

==============================

encryption收件人显示为发行者/序列号对

您可以使用DJIGZO For Android来代替安装网关。 您可以使用它来从SD卡打开MIME邮件(.eml)。 即使邮件无法解密,如果找不到密钥,您可以通过打开encryption层来查看encryption收件人,长按encryption层,然后select“查看encryption收件人”。 这将给你一个所有发行者/序列号对的列表,或消息被encryption的证书的“主题密钥标识符”。

Android应用程序可以从以下免费下载:

https://play.google.com/store/apps/details?id=com.djigzo.android.application

当然,你需要一个Android设备:)

对于GnuPG,它看起来像你可以使用--list-packets ,稍微迂回的方式。 根据如何知道GPGencryption邮件的所有收件人 ,您可以这样做

 gpg --list-packets $FILENAME 

:pubkey enc packet开头的每一行都是一个接收者公钥。

这给了你一个给定文件encryption的密钥ID列表,你可以根据你的可用信息进行匹配。 请注意,这将显示encryption密钥ID,它不一定与通常显示的密钥ID(可能是子密钥)相同。