域名密钥识别邮件(DomainKeys Identified Mail,DKIM)是一套电子邮件认证机制,使用公开金钥加密的基础提供了数位签章与身份验证的功能,以检测寄件者、主旨、内文、附件等部分有否被伪冒或窜改。
一般来说,发送方会在电子邮件的标头插入DKIM-Signature及电子签名资讯。而接收方则透过DNS查询得到公开金钥后进行验证。
简介
一直以来,许多知名厂商均在建立电子邮件验证技术。其中最著名的包括 Yahoo的 DomainKeys技术、微软的 SenderID技术与思科系统的 identifiedinternetmail技术。其中, DomainKeys技术受到 SBC、英国电信与 GoogleGmail的支持;而 MSNHotmail、AOL、美国银行及 eBay皆响应 SenderID技术。微软曾一度打算说服 IETF工作小组通过 SenderID技术成为业界标准,最后却因为各家担心全球通用的技术为一家完全垄断而使微软的愿望落空。如今,由 Yahoo与思科系统合作发表的DKIM技术,既结合两家各自的技术,也不会有垄断于一家的争议。 DKIM技术是现阶段在 IETF内部讨论的方案,并且有望在今后成为国际标准。
域名密钥识别邮件定义了一种机制,通过对邮件信息加密并签名,从而允许实施签名的域名对将该邮件引入邮件传输流负责。邮件接收者可以通过直接查询签名者的域名得到相应的公共密钥,进而校验邮件的签名,以此验证邮件是否属于拥有签名域名的私有密钥的一方。 DKIM允许一个机构对邮件负责。这个负责的机构是一个邮件传输过程中的处理者,可以是邮件的发起者或中介。负责的机构在邮件中添加一个数字签名,并把这个签名与机构的一个域名相关联。通常,签名会由一个服务代理在邮件发起人的行政管理域 (ADMD)的授权下,由这个环境中的任何一个功能组件来执行,包括邮件客户端 (MUA)、邮件提交代理 (MSA)、网界邮件传输代(MTA)。 DKIM也允许签名由授权第三方来进行。邮件签名后,在邮件传输途径中的任何代理均可被选择用来执行对签名的验证。通常验证会由邮件接收者的行政管理域代理完成。与签名时相同,可以由这个环境中的任何功能组件来完成。特别地,这样意味着签名可以由邮件接收者的行政管理域的过滤软件来处理,而不是要求邮件接收者的用户终端来进行判断。用来进行数字签名的域名所有者是以其信誉为基础的。接收者成功验证签名后可以利用签名者的身份信息作为限制垃圾邮件、欺骗、钓鱼网站或其他不受欢迎行为的软件的一部分。
历史
DKIM是2004年在雅虎的DomainKeys和思科系统的Identified Internet Mail两套相近的基础上合并并改进而来的协定,大多数的运作方式与DomainKeys相同。在2007年2月时,DKIM被列入互联网工程工作小组(IETF)的标准提案(Proposed Standard),并于同年5月成为正式标准(Standards Track)并得到主要的电子邮件服务供应商如雅虎、Gmail、美国在线、FastMail率先支持。
优点
DKIM的主要优点是可以让寄件者有效地表明身份,让收件者可凭借公钥确认寄件者并非伪冒、内文未经篡改,提高电子邮件的可信度。邮件过滤器可使用白名单及黑名单机制更可靠地检测钓鱼邮件或垃圾邮件。
DKIM面临的威胁和发展前景
DKIM面临的威胁和发展前景就像其他任何试图阻止垃圾邮件传播的机制一样,DKIM也会受到各种攻击。一方面有针对 DKIM协议本身的攻击,比如错误的邮件长度限制 (l属性 )、错误的私有密钥、DKIM签名头部域格式错误等无意或有意的属性赋值错误,均可能造成的认证失败;另一方面, DKIM机制所依赖的DNS服务本身也具有很多不安全的因素。各种针对 DNS的攻击均有可能使得 DKIM签名失效甚至被伪造。对于这些可能的攻击,DKIM工作组发表了针对各种攻击行为的分析。如何完善 DKIM协议以应对对于协议本身的攻击也是 DKIM今后改进的重要内容。对于通过 DNS服务所进行的攻击,已经超出了 DKIM本身所考虑的范畴。因此 DKIM一方面寄希望于 DNSSEC的出现和使用解决现有的一部分问题;另一方面 DKIM的设计初衷认为各种通过 DNS的针对 DKIM的攻击行为相对于攻击建立在 DNS基础上的其他应用成本高且回报很少。想要系统性地威胁 DKIM的设计目标,攻击者必须在 DNS服务的多个部分进行长时间高成本的攻击。这种行为的非经济性会在某种程度上阻止对 DKIM的攻击。
DKIM只是为了实现一定程度上足够的认证,而并不是为了提供一种强大的加密认证机制。这种在安全性上的不完全可靠,对于网络钓鱼等涉及隐私程度高可能造成巨大损失的欺骗行为,DKIM所得出的结论是具有风险和不可信赖的。因此 DKIM的主要应用前景是在即使被攻击或认证失败也不会有很大损失的反垃圾邮件等低危险性领域。在反垃圾邮件方面, DKIM能够有效地限制垃圾邮件发送者盗用其他机构或域名的名义,为邮件过滤提供鉴别手段,并且能够在现有邮件体系下快速进行低成本的部署。 IETFDKIM工作组正在致力于完善 DKIM协议,积极推动 DKIM草案成为正式的 RFC标准,并且已经取得了阶段性的成果。在开发部署上面,已经有Sendmail、Postfix、Apache等多家公司和组织参与开发了可用的稳定版本,并且正在继续进行改进和标准化工作。