如何在PHP中处理P7S文件

问题描述

在我的基础架构中,我正在使用电子邮件网关,该网关负责签名和加密外发邮件以及解密外来邮件

如果我使用自己喜欢的电子邮件客户端配置了imap帐户并接收消息,则可以阅读所有消息并查看所有附件(每封电子邮件包含一个.zip文件),而无需放置任何类型的证书。到目前为止,对我来说网关仍然可以正常工作。

但是电子邮件应该由PHP脚本处理。通过PHP检索电子邮件效果很好。我只对这些电子邮件的附件感兴趣。但是,我收到的不是每个电子邮件的单个 smime.p7s 文件,而不是预期的.zip文件。 MIME类型标记为八流。

但是,如果我仔细查看这些文件,则似乎是某种二进制结构,其中包含与签名相关的内容,而且看起来像是我要处理的.zip文件(base64编码)。我不确定如何正确处理此文件

我必须使用我的证书和私钥对其进行解密,还是可以使用发件人的公共证书来打开它?还是我必须先将其解码为base64?

非常感谢您提供任何有用的提示。我读了很多书,但我不知道如何正确处理smime.p7s文件,或者我必须按什么顺序处理什么:)

非常感谢

Nico

Something binary ...... and many crazy signs .....
and at some point =============> Content-Type: application/x-zip-compressed;
    name="=?iso-8859-1?B?ZWRpVGZ6WnVvcmRudW5nXzE5MDAxMDAzNzAwMDdfMTkwMDEw?=
    =?iso-8859-1?B?MDMwMDEwM18yMDIwMTAwMV8xNjAxNTA2NzQ4MDEyNDk4MDE5?=
    =?iso-8859-1?B?ODQuemlw?="
Content-transfer-encoding: base64
Content-disposition: attachment;
    filename="=?iso-8859-1?B?ZWRpVGZ6WnVvcmRudW5nXzE5MDAxMDAzNzAwMDdfMTkwMDEw?=
    =?iso-8859-1?B?MDMwMDEwM18yMDIwMTAwMV8xNjAxNTA2NzQ4MDEyNDk4MDE5?=
    =?iso-8859-1?B?ODQuemlw?="

UEsDBBQAAAgIAGcHQVE1IrKnGhMAAClnAgBOABEAZWRpVGZ6WnVvcmRudW5nXzE5MDAxMDAzNzAw .....

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)