1. 什么是S/MIME?

S/MIME (Secure/Multipurpose Internet Mail Extensions) 是一项网络通信标准,设计用于提高电子邮件的安全性。它建立在 MIME 的基础之上,添加了加密和数字签名的功能,从而实现了电子邮件内容的安全传输、身份验证和完整性保护。S/MIME 使用公钥加密技术,每个用户都有一对密钥,用于加密的公钥和用于解密的私钥。

2. 什么是S/MIME证书?

S/MIME 证书是用于确保电子邮件通信安全的数字证书。它是一种独特的数字数据,可向收件人验证发件人身份,并确保邮件信息保持私密性和完整性。典型的 S/MIME 证书包含姓名、电子邮件地址、证书用途、签发日期和有效期,以及证书签发机构的数字签名。该证书与私人密钥绑定。私钥丢失它就等于泄露了数字身份,可能会带来严重后果。S/MIME证书可以通过权威的证书机构(如Sectigo、Digicert、Globalsign、 锐安信sslTrus 等)申请,缺点是价格比较贵;也可以生成自签名证书,缺点是会有不可信安全提醒。

3. S/MIME邮件加密/解密原理

S/MIME 使用公钥加密技术(如RSA),允许发件人使用收件人的公共密钥加密邮件内容。这样,只有持有对应私钥的收件人才能解密邮件,确保了信息在传输过程中的私密性。

S/MIME加密和解密过程

4. S/MIME签名原理

发送者使用自己的私钥对邮件内容进行数字签名,生成的签名随邮件一起发送。收件人收到邮件后,用发送者的公钥验证签名,确保邮件未经篡改且确实是由声明的发件人发送的。

5. 启用S/MIME加密的邮件原文

当启用了S/MIME后,加密和签名后的邮件内容会作为特殊的MIME部分嵌入到电子邮件消息中,这些MIME类型包括但不限于:application/pkcs7-mime 和 multipart/signed。下面是Coremail邮箱客户端发送的加密邮件信头示例信息。

Content-Type: application/pkcs7-mime; name="smime.p7m"; smime-type=enveloped-data

Content-Transfer-Encoding: base64

Content-Disposition: attachment; filename="smime.p7m"

Content-Description: S/MIME Encrypted Message

加密邮件未解密状态会显示一个p7m类型的附件

如果无法提供解密邮件所需的私钥,收件人只能查看邮件信头(如发件人、收件人、主题、发信时间等),无法查看邮件正文内容。

6. 邮件客户端S/MIME支持现状分析

6.1 Outlook 邮件客户端

在Windows系统,Outlook客户端对S/MIME的支持相对完善。Outlook支持设置用户默认加密证书、默认启用加密或签名、自动解密等。

Outlook客户端加密和签名入口

6.2 Apple Mail 邮件客户端

MAC系统Apple Mail邮件客户端同样也支持S/MIME功能。

MAC系统自带的邮件客户端启用S/MIME

6.3 Android/IOS 邮件客户端

安卓、IOS主流版本自带的邮件APP也支持S/MIME功能,不过功能相对简单。

MIUI自带邮件APP中支持启用S/MIME

6.4 国产邮件客户端

国产桌面邮件客户端在S/MIME技术的应用与支持方面相较于国际主流产品而言,呈现出一定的发展滞后性。以Foxmail为例,其最新发布的7.2版本尚未实现对S/MIME证书的全面兼容,这意味着用户无法利用这款客户端实现基于S/MIME的数字签名和加密邮件功能,从而限制了在传输敏感信息或确保合规要求时的安全选项。同样,网易邮箱大师这一广受用户欢迎的国产邮件应用,目前也未能将S/MIME纳入其功能清单,导致用户在使用这些客户端处理需要高级安全特性的邮件时,不得不寻求其他支持S/MIME的工具或服务。然而,值得注意的是,国产邮箱领域的创新力量正在积极迎头赶上。Coremail作为国内企业邮箱服务的领军品牌和信创领域的代表性厂商,其邮箱客户端在最新推出的4.0版本中已成功实现了对S/MIME功能的全面支持,支持Windows/MAC/信创操作系统等多个平台。此举不仅提升了Coremail在信息安全层面的竞争力,满足了企业用户对于数据保护与合规通信的高标准需求,同时也标志着国产邮件客户端在逐步弥补与国际同类产品在高级邮件安全特性方面的差距,为本土市场的数字化安全通信提供了更为坚实的基础。

Coremail邮件客户端启用S/MIME

7. 结束语

S/MIME目前在国内的普及率相对较低,但是随着信息安全意识的提升和法律法规对数据保护要求的日益严格,尤其在金融、政府机关、医疗、教育等涉及敏感信息交换的行业,S/MIME将会被广泛采用来保证电子邮件通信的安全性。

参考来源:邮件安全篇:邮件端到端加密S/MIME | MailABC邮件知识百科

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐