电子邮件是生活和工作的必须,但是电子邮件是“明信片“,是明文传输,很不安全,必须加密。而目前要实现邮件加密,您需要使用支持S/MIME证书加密的邮件客户端软件, 如Outlook和雷鸟,并必须向CA申请和购买邮件证书,拿到邮件证书后费力在邮件客户端中配置好,再向收件人发送签名邮件交换公钥,等双方都有邮件证书并成功交换公钥后,双方才能发送加密邮件。
这个邮件加密实现过程非常繁琐和非常复杂,这使得一个非常好邮件加密技术—S/MIME没有得到普及推广应用,这直接导致了互联网的第一个重要应用—电子邮件在被发明了50年后的今天还是明文传输和明文存储!而互联网的第二个重要应用http超文本链接的明文传输已经基本完成https加密传输升级!
我们深入分析邮件加密的难点在于加密密钥的管理,即使用户费力拿到邮件证书并把证书在邮件客户端上配置成功可以使用了,但是如果在其他设备上使用还需要重新费时费力把证书导入和配置使用。而证书到期后还有重新申请证书,重新导入新证书。最难受的是,如果由于换电脑等各种原因没有把旧证书备份保存好的话,已加密的邮件都将永远无法解密了!有用户反映这非常痛苦,还不如当然不加密。这也是S/MIME邮件加密无法普及应用的原因之一。必须解决密钥管理问题才能让用户无负担地实现邮件加密。
密信技术早在2015年就组建研发团队研究如何解决S/MIME的易用性难题。为了保证用户能像发送明文邮件一样发送加密邮件,同时还要方便用户能随时随地使用任何设备能解密阅读已加密邮件,而无需费时费力去交换公钥来加密和导入证书来解密,必须解决密钥管理太复杂的问题。密信研发团队在研究了多家国际国内领先的云服务提供商提供的云密钥管理服务(KMS)后,决定采用云密钥管理技术方案来解决密钥管理难题和实现按需分发密钥。
密信技术的解决方案是把传统的一张邮件证书拆分为两张证书(一张签名证书和一张加密证书),加密证书密钥在云端生成并安全加密托管在云端,用户在完成邮箱控制权验证后就可以自动从云端取到加密证书密钥来自动解密已加密邮件,使得用户无需费时费力申请和导入邮件证书,完美实现全自动邮件加解密。而用户发送加密邮件时密信App会自动到云端公钥库去获取收件人的加密证书公钥实现全自动发送加密邮件,使得用户无需事先交换公钥,真正实现无感全自动邮件加密和解密。而签名证书由于有用户的身份信息,用户的签名行为具有法律效力,所以,密信技术把签名证书设计为用户在本地设备上生成密钥,并在本地设备上加密保存密钥。这就是为何用户看到密信App在不同设备上的签名证书的序列号是不一样的原因。
密信技术把传统的一张邮件证书拆分成两张证书并根据签名和加密的两个不同用途采用不同的密钥管理方式,完美地解决了S/MIME邮件加密服务的易用性问题,同时继承了S/MIME邮件签名的不可假冒、不可伪造和不可抵赖的特点,使得S/MIME邮件加密技术真正能实现零门槛无缝使用,用户无需关心证书在哪,只需像平常一样写好邮件点击发送即可自动发送加密邮件和自动接收和解密已加密邮件。
为了保证用户在各种终端设备上登录邮箱后都能自动解密以前加密的邮件,给用户最好的使用体验,密信采用云密钥管理方式来管理加密证书密钥,加密证书私钥由云端密钥管理系统按需自动生成并验证邮箱控制权后下发到用户端。
RSA加密算法的加密证书私钥是在符合国际标准FIPS 140-2 Level 3的硬件加密机(HSM)上产生,符合WebTrust国际标准对私钥生成和保护的要求。而国密算法SM2加密证书证书私钥则是在取得商用密码产品认证证书的密码机上产生,并符合相关国家标准对私钥的生成和保护的要求。用户私钥会分割成两部分分别加密保存在不同的密钥管理数据库中。用户必须是使用密信App成功登录邮箱并完成邮箱控制权验证后才能取到绑定此邮箱的私钥和证书,并安全地存放在用户终端设备上。
密信云端密钥管理系统(MKM)是密信密码基础设施的重要组成部分,采取了多种安全保护措施来保证密钥的安全,这些保护措施通过了第三方代码安全测试公司安全审计和通过了权威的WebTrust国际标准审计和国密局的相关审查和验收,多方安全认证,请用户放心使用。
密信加密证书私钥的安全有四个不同的保护等级,满足不同用户对密钥安全的不同需求:
以上保护措施都是基于使用密信云密钥管理系统的保护措施,而对于对加密证书密钥有更高的安全可控要求的单位用户(如:政府机构、金融机构和大企业),可以选购密信企业密钥管理系统(企业KM)在单位内网本地部署使用。这是一个即插即用的系统,只需接入单位内网并配置好相关单位邮箱域名信息即可。本单位员工只能从单位企业KM获取加密证书密钥,从而实现加密密钥的自己管控,满足有关安全可控要求。
对于签名证书,由于签名证书含有身份信息,其数字签名具有等同于手写签名的法律效力,所以,密信不在云端生成和保存用户签名证书私钥,私钥在用户本地设备生成并安全保存,不上传到云端。用户每次在新设备上使用密信App时系统都会签发一张新的签名证书给用户,两个设备上的签名证书是两张不同的证书,当然证书中的身份信息是一致的。
签名证书除了本地生成密钥不同外,私钥的保护也是同加密证书采用三个不同的安全保护级别,满足不同用户的安全需求。一旦用户设置了证书保护密码,则签名证书和加密证书都是采用这个密码,无需分开单独设置。
总结一下:为了妥善处理密钥安全与易用性的矛盾,密信采用了云密钥管理服务模式,并采用了双证书,把加密证书与签名证书分离为两张独立的证书。而为了方便用户在不同终端设备上都能解密加密邮件,在所有密信App中默认配置的加密证书是同一张证书,是第一次使用密信App在密信云端服务器生成并安全存储的。而对于部署了企业KM的用户,则加密证书密钥安全地存放在企业KM中,密信不会上传备份企业KM用户的加密密钥。加密证书的密钥使用期为3年,一旦加密证书过期,则会自动生成新的加密密钥和加密证书,旧的加密证书也会保存下发使用,用于解密以前用此证书加密的邮件,但是在密信App的证书管理菜单中不可见。这样就完美地解决了用户头疼的管理过期证书的难题。
而签名证书是在用户设备端生成密钥并只保存在用户本地设备上,这样不同的设备就会是不同的签名证书,不会是同一张证书,但是身份信息是一样,一样都可以用于数字签名。免费版服务自动配置的签名证书有效期为一年,到期后重新在本地设备生成新的密钥和自动配置新的签名证书,旧的签名证书将不再使用和不在密信App证书管理中显示。而收费版服务的签名证书,用户可选1-3年有效期,到期后用户需要续费才能重新生成和自动配置新的含有可信身份信息的签名证书,如果用户不再续费,则自动降级为免费版和自动配置免费版签名证书。
密信技术借鉴了云服务提供商提供的密钥管理服务的优势,为用户提供灵活的和用得起的密钥管理服务,使得用户无需关心加密密钥的存在,就可以轻松使用邮件加密服务。具有以下几大优势: