我在我的 iOS 设备上部署了 S/MIME,希望和我联系的朋友可以考虑发送加密邮件给我。
详情请见 About 页面下方。
如果你有看我的上一篇文章,那么你会发现在申请 StartSSL 证书的时候,同时也会分发一份免费的,以你申请邮箱为名的 S/MIME 证书作为网站的登录方式,其实这组证书可以拿来做邮件加密和签名。进入钥匙串管理(Mac 里的 Keychain Access 或 Linux 上的 Keyring manager)或证书管理器(Windows 中的 certmgr.msc),找到以你邮件开头的那个带有私钥的证书,然后导出:
导出的时候有两种方式:公私钥一并导出与不导出私钥。
拥有你的公钥证书的人可以验证你的来信的签名,并给你发送加密邮件。
拥有私钥的一方(当然就是你自己咯,私钥不能透露给任何人)可以使用私钥签名邮件,解开别人发来的加密邮件等等等等。
所以呢,你需要把带有私钥的证书通过各种方式(Mac 上的 iPhone Configuration Utility 导入或者通过邮件发送)传输到 iOS 设备上,并安装此证书,然后配置邮件应用的 S/MIME:
请注意,一定要选择对应邮箱的证书哦~
想要给别人发送加密邮件,你需要导入收件人的公钥证书。发送时和接收到的邮件中,收件人一栏会有符号标明邮件的加密、签名等信息:
同理,你需要在上面导出证书的时候一同导出一份不带私钥的公钥证书,并公开此证书。这样,所有希望给你发送加密邮件的人都可以以此公钥证书加密发送的邮件,而这封加密的邮件只能通过你的私钥解读。
P.S. iOS 上 S/MIME 的开关是全局的。当收件人的证书不存在时邮件会以未加密形式发送,在发件页面以红色高亮显示未加密。