支持携带服务地址信息的DANE扩展查询方法和系统技术方案

技术编号:11200515 阅读:109 留言:0更新日期:2015-03-26 08:06
本发明专利技术涉及一种支持携带服务地址信息的DANE扩展查询方法和系统。客户端发送查询TLSA资源记录的DNS请求消息,所述DNS请求消息的头部设有服务地址标志位;递归服务器和权威服务器响应客户端发来的DNS请求消息,根据所述服务地址标志位的设置情况填充对应的地址信息,将该地址信息和TLSA资源记录通过响应数据包返回给客户端。本发明专利技术通过在其TLSA资源记录中增加标志位和数据字段实现了DANE协议的扩展机制,能够显著提高整个域名解析流程的效率。

【技术实现步骤摘要】
支持携带服务地址信息的DANE扩展查询方法和系统
本专利技术属于网络技术、DNS
,具体涉及一种支持携带服务地址信息的DANE扩展查询方法和系统。
技术介绍
通过互联网进行通信的应用程序面临信息被偷听、篡改或伪造的威胁,为此,当前互联网上有安全需求的数据传输一般采用传输层安全(TransportLayerSecurity,TLS)协议,对信道进行加密,来确保数据的完整性、机密性。TLS协议利用密钥算法在互联网上提供端点身份认证与通信保密,其基础是数字认证机构(CertificationAuthority,CA),即通过数字证书来绑定公钥与相关信息(包括所有者的名字、CA名称、公钥的有效期、CA的数字签名等)。CA机构会妥善保管其私钥,为TLS服务器签发数字证书,并将其公钥提供给TLS客户端。TLS客户端将CA机构自己的公钥视为“信任锚点”,并以此来验证TLS服务器证书的有效性。验证通过后,TLS服务器与客户端之间就可以进行安全通信了。上述公共CA模式虽应用广泛,但仍存在不尽如人意的地方,给信息的安全传输带来隐患:CA模式允许任何CA为TLS服务器签发数字证书,这会使系统变得脆弱,一旦某个CA违背安全承诺,不管是因为主观原因还是客观原因(如私钥发生泄漏),都必将造成该CA签发的所有数字证书失去安全功能。例如,微软曾发布过一条CA安全预警,发现一家名为Comodo的CA机构颁发了欺骗性的数字证书,给微软、谷歌等公司的网站带来损害。为此,IETFDANE(DNS-BasedAuthenticationofNamedEntities,基于DNS的命名实体认证)工作组设计了一种新的DNS资源记录TLSA(TLSA仅是一种资源记录的名称,无其它含义),以使用DNSSEC(DomainNameSystemSecurityExtensions,DNS安全扩展)基础设施来保存TLS协议中用到的数字证书或公钥。DANE协议的核心是:依托DNSSEC(DNSSEC是由IETF提供的一系列DNS安全认证的机制(可参考RFC2535)。它提供了DNS数据的来源鉴定和完整性保证)基础设施来限制TLS服务器可用的CA范围,从而使区(zone)操作员可以声明可供TLS客户端使用的数字签名的范围。具体而言,此类声明分为三大类:(1)CA限制声明:TLS客户端只能接受某些特定CA颁发的数字证书,若TLS服务器传输的数字证书不是由这些特定的CA所颁发,则TLS客户端可视这些数字证书为无效;(2)证书限制声明:TLS客户端只能接受某个特定的数字证书(或公钥),而不是其它证书(或公钥),这样就对TLS能用的CA数字证书或公钥做了进一步限制;(3)信任锚点声明:TLS客户端应使用由该区声明的信任锚点来验证该区的数字证书。所有上述三类声明均可视为对信任锚点范围的限制,前两类主要限制当前已有信任锚点的范围,而第三类为TLS客户端提供了一个新的信任锚点。RFC6698定义了DANE资源记录TLSA的具体协议格式,TLSA资源记录包含四个选项,分别为:Cert.Usage、Selector、MatchingType和CertificateAssociationData。其作用分别为:(1)Cert.Usage:用来指示声明的具体类型;由上可知,共分三种类型:CA限制型、证书限制型、信任锚点声明;(2)Selector:用来指示CertificateAssociationData中所存的数据来自TLS服务器证书中的哪一部分;Selector有两个选项:一个用于指示所存数据为数字证书,另一个用于指示所存数据为公钥;(3)MatchingType:用来指示TLSA资源记录中的CertificateAssociationData如何与TLS服务器数字证书中的原始数据进行匹配;共有三种方式:原始数据直接匹配、对原始数据进行SHA-256哈希后匹配、对原始数据进行SHA-512哈希后匹配;(4)CertificateAssociationData:存储相关数据,数据类型由Selector指定。现举例说明DANE原理如下:假设Alice在区example.cn上维护着一些Web资源,为确保该域名的安全运行,Alice不希望随便哪个CA都可以为example.cn颁发数字证书,则Alice需要指定某个CA(假设为Bob),且只有由该CA为example.cn颁发的数字证书才有效。此时,Alice希望告诉所有的客户端:只有Bob的数字证书才是有效的,其它任何CA的数字证书都是无效的。有了TLSA记录,这一愿望就很容易实现,Alice只需在TLSA资源记录中增加以下内容:●Usage:限制CA●Selector:数字证书●MatchingType:SHA-256哈希●CertificateAssociationData:Bob数字证书的SHA-256哈希值假设客户端为Charlie,在其访问example.cn的Web资源时,可以收到上述TLSA资源记录,并使用上述内容来验证其收到的、来自example.cn的TLS数字证书。若该证书由Bob签发,则有效,否则无效。DANE协议使用DNSSEC基础设施来保存TLS协议中用到的数字证书或公钥,这使得DANE协议继承了DNSSEC协议的各种优点。DNSSEC是由IETF提供的一系列DNS安全认证机制,用于提供一种关于来源鉴定和数据完整性的扩展。虽然原理与CA模型类似,DNSSEC也是基于数字签名等技术,但它在以下三个方面对基础的CA模型做了改进。(1)密钥是与DNS中的域名相绑定,而不是与任意的标识符相绑定,以便各类互联网协议使用;(2)签名后的公钥可以通过DNS系统来获取,客户端只需发送一个普通的DNS请求就可以查询到所需的公钥,公钥的分发非常简单;(3)一个区的密钥只能由其父区的密钥来签名,例如,区“example.com”的密钥只能由区“.com”来签名,而区“.com”的密钥只能由根密钥来签名。在CA模型和DNSSEC中,客户端都保存了信任机构的公钥并用此来验证其它实体身份信息的合法性;不同的是,在DNSSEC中,该公钥只保存在单个根域中,而在CA模型中,公钥却保存在不同的CA中。DANE协议为DNS区操作员带来了配置灵活性,为TLS传输增加了安全性,但DANE协议的加入会增大TLS连接过程的延时。除完成TLS握手以及数字证书验证之外,TLS客户端还需等待若干个DNS往返信令交互后才能获知经验证的证书以及可访问的服务器地址。这将导致TLS连接建立时延长达数秒,使一些实时性较高的业务无法忍受。这主要由于DANE的查询需要生成一个包含特殊前缀信息的域名,前缀中包含支持TLS服务的端口号和对应的协议类型,如:1)如请求一个在443端口运行TLS的HTTP服务器,服务器域名为www.example.com,那么查询的TLSA资源记录对应域名为:_443._tcp.www.example.com;2)如请求一个在25端口运行STARTTLS的SMTP服务器,服务器域名为mail.example.com,那么查询的TLSA资源记录对应域名为:_25._tcp.mail.example.com。因此,客户端查询服本文档来自技高网...
支持携带服务地址信息的DANE扩展查询方法和系统

【技术保护点】
一种支持携带服务地址信息的DANE扩展查询方法,其特征在于,包括如下步骤:1)客户端发送查询TLSA资源记录的DNS请求消息,所述DNS请求消息的头部设有服务地址标志位;2)递归服务器和权威服务器响应客户端发来的DNS请求消息,根据所述服务地址标志位的设置情况填充对应的地址信息,将该地址信息和TLSA资源记录通过响应数据包返回给客户端。

【技术特征摘要】
1.一种支持携带服务地址信息的DANE扩展查询方法,其特征在于,包括如下步骤:1)客户端发送查询TLSA资源记录的DNS请求消息,所述DNS请求消息的头部设有用于查询A资源记录和/或AAAA资源记录的服务地址标志位;2)递归服务器和权威服务器响应客户端发来的DNS请求消息,根据所述服务地址标志位的设置情况填充对应的地址信息,该地址信息为A资源记录和/或AAAA资源记录,将该地址信息和TLSA资源记录通过响应数据包返回给客户端。2.如权利要求1所述的方法,其特征在于:所述服务地址标志位为两比特标志位,其取值为00、01、10和11,其含义分别如下:00:客户端不请求服务器的任何地址信息;01:客户端请求在TLSA资源记录返回同时携带服务器的IPv4地址信息,在DNS响应消息中不仅包含服务器的TLSA资源记录,还携带至少一个32比特的IPv4地址;10:客户端请求在TLSA资源记录返回同时携带服务器的IPv6地址信息,在DNS响应消息中不仅包含服务器的TLSA资源记录,还携带至少一个128比特的IPv6地址;11:客户端请求在TLSA资源记录返回同时携带服务器的IPv4和IPv6地址信息,在DNS响应消息中不仅包含服务器的TLSA资源记录,还携带至少一个32比特IPv4地址以及至少一个128比特的IPv6地址。3.如权利要求1或2所述的方法,其特征在于:所述递归服务器和权威服务器响应客户端的DNS请求消息时,将地址信息放置在TLSARDATA之后,或者在DNS响应数据包的Additional字段中携带上述地址信息。4.如权利要求3所述的方法,其特征在于:对于所述将地址信息放置在TLSARDATA之后的方式,在DNS响应消息中通过TYPE指示所包含的地址的类型,包括四种类型:仅包含TLSA资源记录;包含TLSA资源记录和A资源记录;包含TLSA资源记录和AAAA资源记录;包含TLSA、A和AAAA资源记录。5.如权利要求4所述的方法,其特征在于:通过传统DNS响应消息中的RDLENGTH指示A与AAAA资源记录的数量;如不能按照请求类型返回相关地址,则应在响应消息中进行错误指示。6.如权利要求1所述的方法,其特征在于,步骤2)采用递归服务器模式实...

【专利技术属性】
技术研发人员:延志伟张海阔胡安磊李晓东
申请(专利权)人:中国科学院计算机网络信息中心
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1