CN102045413B - 经过dht扩展的dns映射系统及其实现dns安全的方法 - Google Patents
经过dht扩展的dns映射系统及其实现dns安全的方法 Download PDFInfo
- Publication number
- CN102045413B CN102045413B CN 201110026016 CN201110026016A CN102045413B CN 102045413 B CN102045413 B CN 102045413B CN 201110026016 CN201110026016 CN 201110026016 CN 201110026016 A CN201110026016 A CN 201110026016A CN 102045413 B CN102045413 B CN 102045413B
- Authority
- CN
- China
- Prior art keywords
- dht
- server
- dns
- annulus
- key
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Abstract
一种经过DHT扩展的DNS映射系统及其实现DNS安全的方法,映射系统包括:具有DNS解析器的主机、本地与授权的DNS服务器、DHT圆环中的DHT服务器,作为映射服务器的DNS服务器和DHT服务器共同管理身份到位置的映射信息,并为主机查询映射信息。系统综合了DNS和DHT两者优点,既吸收DNS树形结构,支持映射信息的层次化查询,具备合理的商业和信任模型;也继承DHT冗余备份、健壮性强等优点,该系统基于现有DNS映射系统的改进就能实现,减少网络构建的大量财力与人力。本发明在DHT圆环和上层DNS服务器之间建立完整的信任链,利用位于身份与位置分离架构的ID管理服务器自动分发TSIG密钥,保证DNS原有的DNSSEC和TSIG安全机制仍能在经过DHT扩展的DNS映射系统中完整地实现。
Description
技术领域
本发明涉及一种经过DHT扩展的DNS映射系统及其实现DNS安全的方法,属于网络通信技术领域。
背景技术
基于主机侧的身份ID与位置Locator分离的网络架构,如主机标识协议HIP(Host Identity Protocol)和下一代互联网路由架构RANGI(Routing Architecturefor the Next Generation Internet)是在现有TCP/IP协议栈的网络层和传输层之间引入主机标识ID层,使得传输层会话只与主机ID层实现绑定,从而解决了现有Internet中IP地址的双重语义问题。网络中每台主机或终端都拥有各自的身份标识,即主机ID,主机ID必须具有全球唯一性、拓扑无关性和可携带性。Locator是主机的位置标识,代表主机或终端在网络中的位置,它随主机在网络中的位置移动而改变;在多穴情况下,一个主机可能有多个Locator。
身份位置分离体系架构中的主机ID可采用扁平ID(如HIP),也可采用层次化ID(如RANGI)。扁平ID是将非对称密钥中的公钥(Public key)进行哈希计算而得到的前128bits值作为主机ID,缺乏商业和安全模型、不利于管理。而层次化ID将主机ID分为两个部分:前一部分称为管理域标识AD ID(AuthorityDomain Identity),表示组织从属关系,如该主机ID归属的国家、地区及其所归属的ID管理权威机构(Authority)信息;后一部分是其自身拥有的非对称密钥对中的公钥和AD ID进行哈希运算后从左到右截取的128-n位bits哈希值。通过在主机ID的前一部分中引入组织从属关系语义,克服了扁平ID缺乏合理的商业和信任模型的缺陷,同时还保持了主机ID安全加密的技术优势。利用层次化的主机ID组织从属关系语义,可以实现基于组织的网络安全访问控制。
为了满足网络自治和地址可携带的要求,以及解决IPv4网络地址不足的缺陷,身份位置分离体系架构允许多个独立的IPv4网络共存,即这些网络可以采用重叠的IPv4地址空间,类似现有的私有网络。这些具有独立地址空间的网络被称为位置域LD(Locator Domain)。为了实现全球范围的网络定位和寻址,每个位置域被分配一个或多个全球唯一的ID进行标识。该ID被称为位置域ID,简称LD ID。从某种角度看,这个全球唯一的LD ID与LD内部唯一的IPv4地址构成一个全球唯一的位置标识。因每个LD都可以独立分配地址和选择路由协议,这样就能最大程度地满足网络自治的需要,用户LD也可灵活更换ISP而不需对LD内部设备进行大量的IPv4地址重新分配(renumbering)工作。
由于ID和Locator实现了分离,故需要一个提供ID与Locator绑定关系的映射系统。现在已提出的映射系统方案有域名系统DNS、分布式哈希表DHT等。
DNS(Domain Name System)是目前应用最广泛的域名解析系统,其主要功能是将主机名和电子邮件地址等映射成IP地址。DNS提供了一种分层次、基于域的命名方案,并采用分布式数据库来实现,它允许对整个数据库的各部分进行本地控制,同时整个网络也能通过客户—服务器方式访问每个部分的数据。
域名服务器为DNS客户—服务器机制的服务器端,它包含整个数据库的部分信息,并能够被称为解析器(resolver)的客户端程序所访问。解析器通常是一些库例程序,它们创建查询请求,并通过网络将它们发送到映射服务器。
域名空间是分层的树形结构(参见图1所示),DNS分布式数据库是以域名为索引的。每个节点的域名实际上是从该域的根节点到整个树的根节点符号的顺序连接,并用“.”分隔这些符号,例如bupt.edu.cn。DNS树在每个分叉点(又称节点)可以有多个分支,树的深度不超过127层。
DNS域名空间中,域是其层次结构的基本单位,任何一个域最多只有一个或没有上级域,但是,可有多个或没有下级域。在同一个域下,不能有相同的域名或主机名,但是,在不同的域中,可以有相同的域名或主机名。以原点“.”表示的根域只有一个,且没有上级域。Internet网址中的根域是默认的,通常不需表示。根域由位于美国的国际互联网络信息中心InterNIC(Internet InformationCenter)管理。但是,根域服务器没有保存全世界的所有Internet网址,只保存着顶级域和其它少数“DNS服务器—IP地址”的对应数据。而且,域名空间的每个层次都是这样进行管理的:每层的DNS服务器只负责管理其下一层的“DNS服务器—IP地址”的对应数据。全世界的DNS是结构非常庞大的分布式数据库。只有这样处理,才使其中每一台DNS服务器不至于管理过多的域名及其对应数据,从而达到均衡网络负荷、方便查询和加快查询速度的目的。
以根域为上级域的顶级域,是位于根域之下的第一级域,其数目有限且不能轻易变动,顶级域也是由InterNIC进行统一管理。有些顶级域有自己的DNS服务器,其余顶级域则由根域中的DNS服务器进行管理。在Internet网址(全域名)中,各级域之间都以原点“.”分隔开,顶级域位于最右边、即最后面。
在DNS域名空间中,除了根域和顶级域以外,其它域都被称为子域。子域是有上级域的域,每个域可以有多层下级子域位于已经申请成功的域名下,通常是按照各自需要设置一层或多层子域。另外,各级子域也是相对而言的。
DNS域名空间中的最底层是域主机名,它没有下级子域,也称为叶子(叶节点)。在Internet网址中,位于最左面、即最前面的是域主机名。在已经申请成功的域名中,域主机名通常是用户自己命名的。北京邮电大学的全域名是www.bupt.edu.cn,其中“.bupt.edu.cn”是域名(所在域的名称),而www是该域内的服务器名称;另外,在其下面还建立一个图书馆子域“.lib.bupt.edu.cn”,该子域内也有一台名为www的服务器;又如www.baidu.com中的“www”也是服务器的域主机名,“.baidu.com”是该服务器所在域的名称。
DNS将域名空间划分为区(zone)进行管理,区是由同级或不同级的多个子域组成的一个管理单位。把管辖某个(些)区域的DNS服务器称为该(些)区域的“授权DNS服务器”或“授权名称服务器”。这个DNS服务器就对这个区具有权威(authority)。一个DNS服务器可以同时对多个区具有权威。如图1所示,edu.cn域被划分成许多区,包括tsinghua.edu.cn区、bupt.edu.cn区等。该域的顶部有一个edu.cn区,负责管理整个edu.cn区,即管理有关edu.cn子域的授权信息。
DNS服务器既能查询自己授权管理的区的数据,还能在域名空间中搜索而找到不归属自己的区的信息。这个过程称为域名解析(name resolution)、即查询域名信息。由于名字空间采用逆向树的结构,只要拥有根DNS服务器的域名和地址就能找到树中任何一个节点。每个DNS服务器可以要求根DNS服务器启动相关的子域DNS服务器来查询域名空间中的任何名字。
参见图2,介绍域名查找过程。本地DNS服务器向根DNS服务器查询lib.bupt.edu.cn的地址,根DNS服务器让它询问名字为cn的DNS服务器。本地DNS服务器询问后者同样问题时,被告知edu.cn的DNS服务器的地址列表。本地DNS服务器就从该列表中选择edu.cn的DNS服务器并向其询问。edu.cn的DNS服务器就告诉本地DNS服务器bupt.edu.cn的DNS服务器地址。最后,本地DNS服务器向bupt.edu.cn的DNS服务器询问该问题并获得答案。
在身份位置分离架构中,主机ID到locator的映射类似于主机域名到IP地址的映射,尤其是层次化主机ID和主机域名有相似的层级结构,所以可以采用DNS来实现身份与位置分离架构中的映射系统。但是,因为ID与Locator映射查询节点的数量和规模都比DNS的域名多得多,在域数据较多,且不能进一步划分子域时,会影响映射系统的更新和查询的效率。此外,DNS服务器还存在单点故障和性能瓶颈问题。
分布式哈希表DHT(Distributed Hash Table)是一种分布式存储方法,采用每个DHT节点存储小部分数据和负责一个小范围的路由的方法,实现整个DHT网络的存储和寻址。每个DHT节点都有一个专属标识符,该标识符的生成是在一个节点加入到已有的DHT网络时,把该节点的IP地址等数据作为其特征输入哈希函数所产生的一个128位或160位的全局唯一的标识符,再用这个标识符代表该节点。DHT映射系统是以主机ID作为关键字进行查询定位,没有单点故障和性能瓶颈问题,但是,由于DHT网络中路由任务是分配到系统的所有节点,而一个逻辑路由跳可能发生于两个物理距离很远的节点,从而出现很大的网络传输时延,大大增加系统的路由负担。这样,DHT映射系统与DNS映射系统相比较,仅仅是服务更加抗攻击,而在系统性能和可用性方面仍然没有优势。
现有的Internet存在大量的身份欺骗和中间人攻击等网络安全风险。在映射系统的更新和查询过程中,也存在相应的安全隐患,例如:数据包拦截、ID猜测和查询预测、域区拒绝攻击等。其中,数据包拦截是攻击者位于共享网络或传输路径监听客户端的本地域名服务器和域名服务器之间的通信,窃听并篡改数据包,欺骗本地域名服务器或域名服务器。ID猜测和查询预测是攻击者不在共享网络或传输路径而无法直接窃听通信,但是,因为许多请求和回应报文都是通过UDP传输的,攻击者能非常方便地生成与客户端、解析器、服务器的协议参数状态相匹配的数据包,再采用ID猜测和查询预测来实施攻击。域区拒绝攻击是在查询的域名不存在或类型不匹配时,服务器的回应报文answer字段为空,表明所查询的名称或类型不存在,若攻击者故意删除或修改answer字段内容,解析者或查询者就都被欺骗了。
目前,DNS映射系统是用DNS签名DNSSEC(DNS Signature)来预防数据包拦截、ID猜测和查询预测、域区拒绝攻击等针对解析过程的攻击;采用事务签名TSIG(Transaction Signature)等方法对更新源和更新消息完整性实现验证。
DNSSEC是依靠公钥技术对包含在DNS中的信息创建密码签名。在DNSSEC中,每个区都会产生一对存储于区的授权DNS服务器中的公私密钥对,其中私钥由授权DNS服务器保管,用于对其数据签名,公钥则通过网络发布。父区对子区的公钥进行数字签名保护,确保子区公钥的完整性和正确性,以便信任父区,进而信任经由父区签名的子区,建立起自上而下的信任链。参见图3,父子关系的两个区rangiid.arpa与BJ.rangiid.arpa之间建立信任链后,信任父区rangiid.arpa,就信任子区BJ.rangiid.arpa。这种信任链的信任起点通常是所有解析器都信任的公钥,这个起点被称作安全入口点,该公钥由根域的域名服务器掌管,可以通过网络等媒体公开获知,让所有本地域名服务器、主机等都能预先配置于各自机器上。TSIG方法是主机和服务器之间协商一个共享密钥后,主机使用共享密钥对更新消息进行签名,域名服务器通过验证签名对更新消息的来源和完整性进行验证。当前TSIG共享密钥的配置大多使用手工配置,手工配置虽然安全,但是效率太低。
如果用DHT扩展DNS映射系统后,身份到位置的映射信息实际存储在DHT圆环中,整个映射系统的数据备份能力和可扩展性都得到很大提高。为了兼容上层DNS服务器,DHT圆环和外部通信仍然采用标准DNS消息。DHT圆环处于一个独立网络环境,只通过一些入口节点连接外部网络,这样就不用考虑针对DHT节点的路由安全等攻击;但是,还是要用传统安全手段(如摘要、签名等)保证映射信息的正确性及其通信过程中的安全性,也就是要考虑映射信息的完整性和可验证。
在原有DNS映射系统中,DNSSEC保护映射信息的完整性和安全性的方法比较完善,但是,采用DHT圆环扩展DNS映射系统后,DNSSEC无法实现:首先层级授权的信任链不能建立于DNS结合DHT的映射系统中,其次对映射信息的签名要在管理映射数据的DHT圆环中实现。而采用DHT圆环作为映射系统的最底层后,更新过程也是在DHT圆环进行,因此TSIG更新消息的验证机制在DNS结合DHT映射系统中也需要重新构建其实现过程。这些问题都成为业内科技人员关注的课题。
发明内容
有鉴于此,本发明的目的是提供一种经过DHT扩展的DNS映射系统及其实现DNS安全的方法,本发明映射系统综合了DNS和DHT两者优点,既吸收DNS树形结构,支持映射信息的层次化查询,具备合理的商业和信任模型;也继承DHT冗余备份、健壮性强等众多优点,尤其是该映射系统可在现有DNS映射系统基础上改进就能够实现,从而减少网络构建的巨大工作量。本发明实现DNS安全方法使得DHT圆环和上层授权DNS服务器之间建立起信任关系,从而在DHT圆环和上层授权DNS服务器之间、授权DNS服务器和其父域授权DNS服务器之间建立完整的信任链。本发明还提出一种自动分发TSIG共享密钥的方法,比手工配置效率高,保证DNS原有的DNSSEC和TSIG安全机制仍能在经过DHT扩展的DNS映射系统中完整地实现。
为了达到上述发明目的,本发明提供了一种经过分布式哈希表DHT扩展的域名系统DNS映射系统,其特征在于:所述映射系统包括下述设备:
移动或固定的主机,作为该映射系统的客户端,设有能够收发消息的DNS解析器,即存根解析器,以存根解析器和本地DNS服务器结合的方式完成递归查询和安全验证;
DNS服务器,是采用BIND(Berkeley Internet Name Domain)实现的DNS设备,包括本地DNS服务器和授权DNS服务器;本地DNS服务器具有递归查询功能,能够配合主机共同完成映射信息的递归查询,为保证查询安全,本地DNS服务器要配置DNS签名DNSSEC,且拥有根域授权DNS服务器的公钥;位于该系统上层的各个授权DNS服务器是采用根据主机ID的管理域标识AD ID进行分级和层次化索引构成的传统DNS树形结构,每个域都由其授权DNS服务器进行管理,每个授权DNS服务器都不存储任何身份到位置的映射信息,只存储其子域的DHT圆环的入口服务器地址或子域的授权DNS服务器信息;授权DNS服务器用于完成映射信息的层级管理,并配置DNSSEC来保证层级授权和查询过程的安全;在底层授权DNS服务器的区文件中配置一个或多个DHT服务器地址,以供用户选择DHT服务器作为DHT圆环的入口进行查询;
DHT服务器,位于该系统的最底层,是采用主机ID的扁平哈希值进行索引查询的多个相互独立的DHT圆环,每个DHT圆环代表身份空间中的一个域,由多个根据DHT算法组织并相互连接的DHT服务器组成,每个DHT服务器都设有一个包含该DHT圆环管理的域、域名与服务器自身地址的各种信息的配置文件,当DHT服务器用作入口服务器时,负责完成所有的安全处理和与DHT圆环外部的通信,并与DHT其他服务器共同完成映射信息的存储、更新和查询;该多个DHT服务器负责存储和管理该域的全部身份到位置的映射信息;且经过DHT扩展后,最底层域的映射信息被分布地存储于各个DHT服务器,每个DHT服务器只存储和管理整个域的部分映射信息,并根据业务的需要增减每个DHT圆环中的DHT服务器数量,以保证负载均衡和性能需求;DHT圆环中的DNS服务器和DHT服务器作为映射服务器,共同管理身份到位置的映射信息和为主机查询映射信息。
为了达到上述发明目的,本发明提供了一种采用本发明映射系统实现DNS安全的方法,其特征在于:所述映射系统在服务器端为主机提供映射信息的更新和查询过程中,使用事务签名TSIG(Transaction Signature)和DNS签名DNSSEC来保证信息安全,该方法包括下列操作步骤:
(1)主机注册ID与配置TSIG共享密钥后,安全地更新映射信息:每个主机在使用前必须先注册其ID,由ID管理服务器作为可信任的第三方,和DHT圆环共同完成主机ID的注册及其TSIG共享密钥的自动分发,从而完成映射信息更新过程之前TSIG共享密钥的配置,以使主机能向DHT圆环发送采用该共享密钥加密的更新消息,DHT圆环也使用该共享密钥来验证更新消息,确保更新源的可信任性与更新消息的正确性;ID管理服务器和主机的安全是使用数字签名来验证两者之间的交互消息源和消息的正确性;
(2)对DHT圆环和授权DNS服务器配置相关参数,自下而上建立信任链后,提供映射信息的安全查询服务:先在底层DHT圆环与上层授权DNS服务器之间建立信任链,DHT圆环为自己所管理的域生成公钥私钥对,并将自己的公钥告诉父域的授权DNS服务器;再在上层授权DNS服务器之间建立DNSSEC信任链,以保证该映射系统层级授权的安全,本地DNS服务器通过验证响应消息的数字签名来保证响应消息来源的正确性和响应消息的完整性;
(3)完成安全配置后,映射系统进行映射信息的安全更新与查询:主机改变位置信息时,向所归属的DHT圆环发送更新映射信息请求,在主机和DHT圆环之间执行安全的更新过程;主机要和其他主机通信时,向本地DNS服务器发送查询映射信息请求,由本地DNS服务器递归查询授权DNS服务器和DHT圆环,给主机返回查询结果。
本发明用DHT扩展的DNS映射系统及其采用DNSSEC和TSIG实现DNS安全的方法,有以下几个技术创新要点:
该映射系统结构新颖:上层为DNS树形结构,最底层是DHT圆环,DHT圆环内部各个服务器之间用DHT消息通信、与外部通信则采用DNS消息。
自动分发TSIG共享密钥:通过可信任的第三方—ID管理服务器,在DHT圆环上生成TSIG共享密钥后,由ID管理服务器以安全方式发放给主机。
建立DHT圆环和授权DNS服务器之间的信任链:通过为DHT圆环生成公钥和私钥,再将DHT圆环公钥配置给上层授权DNS服务器来建立信任链。
实现DHT圆环与DNSSEC和TSIG的兼容:通过为DHT服务器增设消息转换和安全处理的功能模块,使DHT圆环能够处理DNS消息,并能为DNS响应消息添加加密信息,从而在DNS结合DHT映射系统中完整实现DNSSEC和TSIG。另外,还提出在映射消息更新或查询过程中,DHT服务器处理DNS消息的相应操作过程。
总之,本发明经过DHT扩展的DNS的映射系统的优点是:该映射系统结合了DNS和DHT的优点,既吸收DNS树形结构,支持映射信息的层次化查询,具备合理商业和信任模型,也继承DHT冗余备份、健壮性等优点,尤其是该映射系统可在现有DNS映射系统基础上进行改进就能够实现,从而减少网络构建的巨大工作量。本发明提出的实现DNS安全方法,为DHT圆环和上层授权DNS服务器建立起信任关系,从而在DHT圆环和上层授权DNS服务器之间、授权DNS服务器和其父域授权DNS服务器之间建立完整的信任链,保证了DNSSEC和TSIG在本发明映射系统上的完整性,解决了该映射系统的层级授权问题,保证了映射信息在传输过程中的正确性和完整性,以及数据源的安全性和更新数据的完整性,防止了数据欺骗等安全攻击。本发明还提出自动分发TSIG共享密钥方法,比手工配置效率高。
附图说明
图1是DNS域名空间树形层次结构示意图。
图2是DNS域名查找过程示意图。
图3是DNS域名信任链示例图。
图4是本发明经过DHT扩展的DNS映射系统身份空间树状层级结构图。
图5是本发明经过DHT扩展的DNS映射系统组成结构示意图。
图6是本发明方法安全配置TSIG共享密钥过程示意图。
图7是本发明映射系统的信任链建立过程示意图。
图8是本发明映射系统的映射信息新过程示意图。
图9是本发明映射系统的查询映射信息程示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面结合附图和实施例对本发明作进一步的详细描述。
参见图4和图5,介绍本发明经过DHT扩展的域名系统DNS映射系统的结构组成:所述映射系统包括:具有DNS解析器的移动或固定的主机、本地DNS服务器、授权DNS服务器和DHT圆环中的DHT服务器,由DNS服务器和DHT服务器作为映射服务器,共同管理身份到位置的映射信息和为主机查询映射信息。该系统上层是各个授权DNS服务器采用传统DNS树形层次结构、最底层为DHT圆环结构;上层DNS树形结构是根据主机ID的管理域标识AD ID进行分级和层次化索引构成的,每个域都由其授权DNS服务器进行管理,每个授权DNS服务器都不存储任何身份到位置的映射信息,只存储其子域的授权DNS服务器信息或DHT圆环的入口服务器地址。因这些授权DNS服务器采用传统的DNS工作机制,故这部分不再赘述。
系统最底层是采用主机ID的扁平哈希值进行索引查询的多个相互独立的DHT圆环,每个DHT圆环代表身份空间中的一个域,由一个或多个根据DHT算法组织并相互连接的本地DHT服务器组成,负责存储和管理该AD域的全部身份到位置的映射信息;且经过DHT扩展后,最底层域的映射信息被分布地存储于各个DHT服务器,每个DHT服务器只存储和管理整个域的部分映射信息,并根据业务的需要增减每个DHT圆环中的DHT服务器数量,以保证负载均衡和性能需求。DHT圆环内部采用DHT消息通信,与外部通信采用标准DNS消息。每个DHT圆环都指定一个或多个服务器作为入口服务器,并将其入口服务器地址告知其父域的授权DNS服务器,入口服务器负责完成其所在的DHT圆环与外部的消息交互,其他服务器只是协作完成映射信息的更新和查询。该映射系统还设有位于身份与位置分离架构网络系统中的ID管理服务器,用于可信任的第三方完成与主机之间的TSIG共享密钥的自动配置。因ID管理服务器不属于本发明映射系统,故在图4与图3中都没有标出。
本发明映射服务器中的本地DNS服务器接收到主机查询ID映射信息的查询请求后,向授权DNS服务器查询该ID所归属的域,授权DNS服务器告诉本地DNS服务器其查询的ID所归属的DHT圆环的入口服务器地址,由该DHT入口服务器查询得到该DHT圆环中存储的该ID的映射信息。DHT圆环完成映射信息的更新是在DHT入口服务器接收到映射信息更新请求后,根据DHT算法将更新的映射信息存储于该DHT圆环中相应的DHT服务器。
参见图4,在arpa顶级域下新申请一个rangiid.arpa域,用来划分和管理身份与位置分离架构的主机ID到Locator的映射信息。再根据主机ID的管理域ID中代表国家的部分,将rangiid.arpa域划分成多个国家子域。然后,根据主机ID的管理域ID中代表管理机构的部分,将CN.rangiid.arpa域划分成多个子域(如中国移动CMCC等);接着,根据主机ID的管理域ID中代表地区部分,将CMCC.CN.rangiid.arpa域划分成多个子域(如北京BJ、上海SH等)。
在原有DNS映射系统中管理BJ.CMCC.CN.rangiid.arpa区的DNS服务器存储了该区的全部映射信息,而在本发明经过DHT扩展的DNS映射系统中,是由多个DHT服务器(图中用黑色圆点表示)共同管理该区的全部映射信息,这些DHT服务器由DHT算法进行组织。典型的DHT结构为圆环形结构。为方便描述,本发明将由DHT算法组织起来的这些DHT服务器称为一个DHT圆环。
下面具体介绍本发明映射系统中的各个设备:
主机是该映射系统的客户端,设有只能收发消息的DNS解析器,即存根解析器(stub resolver),以存根解析器和本地DNS服务器结合的方式完成递归查询和安全验证。
DNS服务器是采用BIND(Berkeley Internet Name Domain)实现的DNS设备,包括本地DNS服务器和授权DNS服务器。本地DNS服务器具有递归查询功能,能够配合主机共同完成映射信息的递归查询,为保证查询安全,本地DNS服务器要配置DNS签名DNSSEC(DNS Signature),且拥有DNS根服务器的公钥。授权DNS服务器用于完成映射信息的层级管理,并配置DNSSEC来保证层级授权和查询过程的安全;在底层授权DNS服务器的区文件中配置一个或多个DHT服务器地址,以供用户选择DHT服务器作为DHT圆环的入口进行查询。因新版本的BIND已经很好地实现DNSSEC和TSIG,故本发明只需要对DNS服务器进行相关配置即可完成安全部署。
DHT服务器位于最底层的DHT圆环,每个DHT服务器都设有一个包含该DHT圆环管理的域、域名与服务器自身地址的各种信息的配置文件,当DHT服务器用作入口服务器时,负责完成所有的安全处理和与DHT圆环外部的通信,并与DHT其他服务器共同完成映射信息的存储、更新和查询。DHT服务器设有下述三个模块,各模块功能为:
消息转换模块,用于接收与解析DNS的更新请求或查询请求,以及配置映射信息请求,并重新构造为对应的DHT的更新消息或查询消息后,作相应处理;解析DHT响应消息,并重新构造成DNS更新请求或查询请求的响应和配置映射信息请求响应。
安全处理模块,与消息转换模块交互,完成下述各种功能:为每个ID生成TSIG共享密钥、验证更新消息、为映射记录生成数字签名、配置公钥与私钥、生成公钥摘要和建立与上层DNS的信任链等。
存储查询模块,与消息转换模块交互,完成映射信息与域名信息的分布式存储和查询。根据key值的两种类型,存储于DHT服务器的(key,value)对的value值也包含对应的两种信息:当key值是域名时,value值是该DHT圆环的密钥对信息;当key值是ID时,value值是该ID对应的映射信息、映射信息的数字签名或TSIG共享密钥。根据DHT服务器采用的不同DHT算法,存储查询模块也采用不同的冗余存储方式。
本发明映射系统的服务器端,在为主机提供映射信息的更新和查询过程中实现DNS安全的方法是用事务签名TSIG(Transaction Signature)和DNS签名DNSSEC来保证信息安全,该方法的具体包括下述三个操作步骤:
步骤1,主机注册ID与配置TSIG共享密钥后,安全地更新映射信息:每个主机在使用前必须先注册其ID与配置TSIG共享密钥,由ID管理服务器作为可信任的第三方,和DHT圆环共同完成主机注册ID及其TSIG共享密钥的自动分发,从而完成映射信息更新过程之前TSIG共享密钥的配置,以使主机能向DHT圆环发送的更新消息采用该共享密钥加密,DHT圆环也使用该共享密钥来验证更新消息,确保更新源的可信任性与更新消息的正确性。ID管理服务器和主机的安全是使用数字签名来验证两者之间的交互消息源和消息的正确性,因非本发明的主题,故不作详述。
参见图6,介绍该步骤1的操作内容:
(11)主机生成ID后,向ID管理服务器发送包括该主机ID信息的注册请求。
(12)ID管理服务器收到ID注册请求后,先验证该请求的来源及其正确性,证实该请求确实来自该ID对应的主机后,ID管理服务器检测该ID是否与已有ID冲突,若冲突,则发送消息提示主机重新生成ID;否则,ID管理服务器将该ID存储于ID数据库,并向该ID所归属域的DHT圆环的入口服务器发送配置映射信息请求。
(13)DHT服务器接收到配置映射信息请求后,由消息转换模块解析该接收到的配置映射信息请求后,将该请求中的ID参数传递给安全处理模块。
(14)安全处理模块为该请求中的ID生成TSIG共享密钥,并将其返回给消息转换模块。
(15)消息转换模块将该ID作为key值、对应的TSIG共享密钥作为value值构造一个包含该(key,value)对的DHT更新消息,再传递给存储查询模块。
(16)存储查询模块根据DHT算法和key值,将该DHT更新消息路由到DHT圆环中相应的DHT服务器来存储该(key,value)对,若存储成功,则给消息转换模块返回DHT更新成功响应;否则,返回DHT更新失败响应。
(17)消息转换模块收到DHT更新响应后,进行解析,若是成功响应,则给ID管理服务器返回包含该ID的TSIG共享密钥的配置映射信息成功响应;否则,给ID管理服务器返回配置映射信息失败响应;
(18)ID管理服务器接收到响应消息,若配置成功,则将包括TSIG共享密钥、DHT圆环的入口服务器地址的信息组成注册请求成功响应,以安全方式发送到主机,主机对其验证后,获得TSIG共享密钥和DHT圆环的入口服务器地址;若配置失败,则给主机返回注册请求失败响应,以使主机重新注册。
主机和DHT圆环之间共享TSIG密钥后,主机就能向DHT圆环发送采用该共享密钥加密的更新消息,DHT圆环则使用TSIG共享密钥来验证更新消息,确保更新源的可信任性与更新消息的正确性。
步骤2,对DHT圆环和DNS服务器配置相关参数,自下而上建立信任链后,提供映射信息的安全查询服务:先在底层DHT圆环与上层DNS服务器之间建立信任链,DHT圆环为自己管理的域生成公钥私钥对,并将自己的公钥告诉父域的DNS服务器;再在上层授权DNS服务器之间建立DNSSEC信任链,保证该映射系统层级授权的安全,本地DNS服务器通过验证响应消息的数字签名保证响应消息来源的正确性和响应消息的完整性。
参见图7,介绍信任链的实施例的建立过程。先建立BJ.rangiid.arpa域的DHT圆环与上层DNS服务器之间的信任链,该信任链建立后,就保证了映射系统各个层级授权的安全,本地DNS服务器可以通过验证响应消息的签名来判断响应消息来源的正确性和响应消息的完整性。
该步骤2包括下列操作内容:
(21)DHT入口服务器的安全处理模块采用与DNS服务器生成密钥对相同的算法,为其所在的DHT圆环管理的域生成密钥对,共生成两个密钥对:密钥签名密钥对KSK(Key Signing Key)和区域签名密钥对ZSK(Zone Signing Key),每个密钥对都包含一个公钥和一个私钥,后者用于计算映射记录的签名,前者用于计算对ZSK的签名,以使其得到验证。
(22)密钥对生成后,消息转换模块将域名作为key、密钥对作为value生成一个DHT更新消息,再由存储查询模块根据DHT算法将该(key,value)对存储于对应的DHT服务器;当管理员需要更换密钥对,生成新的密钥对后,由存储查询模块对该DHT圆环中存储该密钥对的所有DHT服务器进行更新;DHT服务器在DHT圆环中查询获得最新密钥对后使用该密钥,因DHT圆环中冗余存储数据,故某个存储密钥对的DHT服务器退出该DHT圆环,不会丢失该密钥对信息。
(23)安全处理模块为密钥对中的公钥生成摘要,再将公钥摘要手工添加到上层授权DNS服务器的区文件中,以使上层授权DNS服务器拥有DHT圆环的公钥摘要,能用自己的ZSK私钥对DHT圆环的公钥摘要进行数字签名,这样,只要信任父域授权DNS服务器,就信任经父域授权DNS服务器签名的DHT圆环,从而DHT圆环就和上层授权DNS服务器建立了信任链。
(24)在上层授权DNS服务器之间建立信任链:子域授权DNS服务器先生成自己的密钥对,再将公钥告知其父域授权DNS服务器;以此类推,直到根域的授权DNS服务器;当根域的授权DNS服务器生成密钥对后,要向所有本地DNS服务器发布自己的公钥,以使每个本地DNS服务器都拥有根域的授权DNS服务器的公钥。
步骤3,完成安全配置后,映射系统进行映射信息的安全更新与查询:主机改变位置信息时,向所归属的DHT圆环发送更新映射信息请求,在主机和DHT圆环之间执行安全的更新过程;主机要和其他主机通信时,向本地DNS服务器发送查询映射信息请求,由本地DNS服务器递归查询授权DNS服务器和DHT圆环,给主机返回查询结果。
参见图8,介绍该步骤3中映射信息更新过程的操作内容:
(31)主机的DNS解析器使用TSIG共享密钥对DNS更新消息加密后,将其发送给其归属的DHT圆环的入口服务器;
(32)DHT服务器的消息转换模块接收到DNS更新请求后,解析其中的ID和Locator映射信息,将ID作为key值构成一个DHT查询请求,传递给存储查询模块;
(33)存储查询模块通过DHT算法查询DHT圆环存储该ID的value值,构成一个DHT查询响应并传递给消息转换模块;
(34)消息转换模块解析该DHT查询响应,获得vlaue值中的TSIG共享密钥,传递给安全处理模块;
(35)安全处理模块使用该TSIG共享密钥验证该更新消息,验证通过后,使用DHT圆环的ZSK私钥对该ID对应的映射信息进行数字签名,然后将该ID的映射信息、对映射信息的数字签名和TSIG共享密钥一起传递给消息转换模块;
(36)消息转换模块将该ID作为key,该ID的映射信息、对映射信息的数字签名和TSIG共享密钥一起作为value,组成(key,value)对构造一个DHT更新消息传递给存储查询模块;
(37)存储查询模块使用DHT算法将DHT更新消息路由到DHT圆环存储该映射信息的相应DHT服务器,并更新该ID的value,然后根据更新结果,给消息转换模块返回DHT更新响应;
(38)消息转换模块根据DHT更新响应的不同结果,构造相应的DNS更新响应发送给主机端。
参见图9,介绍该步骤3中映射信息查询过程的操作内容:
(3A)主机的DNS解析器向本地DNS服务器发起DNS查询消息;
(3B)本地DNS服务器向授权DNS服务器发起DNS查询消息;
(3C)经过递归查询后,授权DNS服务器给本地DNS服务器返回DNS查询响应,其中包括请求查询的映射信息所归属DHT圆环的DHT入口服务器地址和该DHT圆环的公钥;
(3D)本地DNS服务器根据接收到的DNS查询响应,向DHT服务器发送DNS查询消息;
(3E)该DHT服务器的消息转换模块接收和解析DNS查询消息,获得ID后,将该查询消息中的ID作为key值,构成DHT查询请求传递给存储查询模块;
(3F)存储查询模块根据DHT查询请求中的ID,使用DHT算法查询DHT圆环是否存储有该ID的value值,如果有,则给消息转换模块返回包含该value值的DHT查询响应;如果无,则给消息转换模块返回空响应;
(3G)消息转换模块接收和解析DHT查询响应,若响应不为空,则将value中的ID映射信息与该映射信息的数字签名信息构造一个DNS查询响应,发送给本地DNS服务器;否则,由安全处理模块生成一个表示不存在该映射信息的特殊记录,并使用ZSK私钥进行数字签名后,将该特殊记录和数字签名构造为DNS响应发送给本地DNS服务器;
(3H)本地DNS服务器使用DHT圆环的公钥验证该响应消息,确认无误后发送给主机的DNS解析器。
本发明已经进行了多次实施试验,下面简要描述本发明映射系统在保证DNS安全的前提下,一次完整的主机ID注册、映射信息的更新和查询过程。
查询之前,先为映射系统建立如图7所示的信任链。本发明利用ID管理服务器,在ID注册时完成其TSIG共享密钥分发。一次完整的注册更新流程如下:
(1)主机生成ID,向ID管理服务器发送ID注册请求,该请求中携带用户信息、主机ID和ID相关参数、主机用私钥对消息的签名。
(2)ID管理服务器收到ID注册请求后,验证是否允许该主机注册,通过公钥和签名认证主机的身份,证实该请求确实来自该ID对应的主机。通过验证后,ID管理服务器要检测该ID是否与已有ID冲突,若冲突,则发送消息提示主机重新生成ID;若没有冲突,则ID管理服务器要记录该ID到ID数据库。
(3)ID管理服务器向该ID所归属域的DHT圆环的入口DHT服务器发送配置映射信息请求。
(4)DHT服务器收到配置映射信息请求后,进行解析,为请求中的ID生成TSIG共享密钥;然后将该ID作为key值、对应的TSIG共享密钥作为value值构造成一个(key,value)对存储在DHT圆环中的适当位置。若存储成功,则给请求方返回配置映射信息成功响应,响应中包含该ID的TSIG共享密钥;否则,返回配置映射信息失败响应。
(5)ID管理服务器接收到注册请求响应后,进行解析;若配置成功,则将共享密钥以主机公钥进行加密,并连同DHT圆环的入口服务器地址和ID管理服务器用自己私钥对消息进行签名,一起构成注册请求的响应发送到主机;若配置失败,则给主机返回注册请求失败响应,以使主机重新注册;
(6)主机收到ID管理服务器的响应后,通过ID管理服务器的签名来认证ID管理服务器的身份,获得应答消息中的TSIG共享密钥和DHT圆环的入口服务器地址,然后主机可以安全地进行映射信息的更新;
(7)主机向DHT圆环的入口服务器发送DNS更新请求,该消息使用TSIG共享密钥加密,消息包含了ID、ID对应的Locator信息;
(8)DHT圆环的入口服务器收到DNS更新请求后,解析出该请求中的ID,利用该ID查找DHT圆环,再找到该ID的(key,value)记录,读出value中的TSIG共享密钥,然后用TSIG共享密钥验证该更新消息的正确性;若验证失败,则丢弃该更新消息;若验证成功,则计算该ID的映射信息的数字签名,将该ID的映射信息、映射信息的数字签名、TSIG共享密钥组成新的value存储于DHT圆环;存储成功后,给主机返回一个DNS更新成功的响应,否则,返回一个DNS更新失败的响应。
再以查询ID为1234567887654321.BJ.rangiid.arpa.的映射信息为例,介绍本发明方法的一次完整的查询映射信息的流程如下:
(1)主机发起的ID为1234567887654321.BJ.rangiid.arpa.的查询请求,经由本地DNS服务器发送给根域授权DNS服务器。
(2)部署了DNSSEC的DNS根域授权DNS服务器处理该查询请求:先用哈希算法计算要回复信息的摘要,再将摘要用自己的ZSK私钥加密后,将生成的数字签名和要回复的根域授权DNS服务器信息、.arpa域的授权DNS服务器地址信息、.arpa域的公钥信息构成查询请求响应,返回给本地DNS服务器。
(3)本地DNS服务器收到带有签名的查询请求响应后,利用根域授权DNS服务器的公钥解密其中的签名获得该查询请求响应的摘要,再将该摘要与从该查询请求响应的数据中计算出来的摘要进行对比,验证数据完整性;如果验证成功,则同时完成了对数据源、即授权DNS服务器的身份认证;否则,身份认证失败。此时,本地DNS服务器已拥有了.arpa域的授权DNS服务器的公钥,本地DNS服务器向.arpa顶级域的授权DNS服务器发送查询请求。
(4)部署了DNSSEC的.arpa顶级域的授权DNS服务器处理该查询请求:先用哈希算法计算要回复信息的摘要,再将该摘要用自己的ZSK私钥加密后,将生成的数字签名和要回复的.arpa域的授权DNS服务器信息、rangiid.arpa域的授权DNS服务器地址信息、rangiid.arpa域公钥信息构成该查询请求响应,返回给本地DNS服务器。
(5)本地DNS服务器用.arpa公钥解密验证步骤(4)返回的数据,得到rangiid.arpa公钥和rangiid.arpa域的授权DNS服务器地址。
(6)本地DNS服务器向rangiid.arpa域的授权DNS服务器发送查询请求。
(7)部署了DNSSEC的rangiid.arpa域的授权DNS服务器处理该查询请求:先用哈希算法计算要回复信息的摘要,再将该摘要用自己的ZSK私钥加密,将生成的数字签名和要回复的rangiid.arpa域名服务器信息、管理BJ.rangiid.arpa域映射信息的DHT圆环的入口服务器地址信息、BJ.rangiid.arpa域公钥信息构成该查询请求响应,返回给本地DNS服务器。
(8)本地DNS服务器用rangiid.arpa公钥验证步骤(7)返回的数据,得到BJ.rangiid.arpa域的公钥和管理该域的DHT圆环的入口服务器地址。
(9)DHT圆环的入口服务器在处理查询请求时,根据解析出来的ID值,查询DHT圆环中的该ID对应的value值,如果value不为空,则根据value值中的映射信息和数字签名,构造DNS查询响应返回给本地DNS服务器;否则,构造一个表示该映射信息不存在的特殊记录,并对该特殊记录进行数字签名,将该特殊记录和其数字签名构造成DNS查询响应,返回给本地DNS服务器。
(10)本地DNS服务器用BJ.rangiid.arpa域的公钥解密验证步骤(9)返回的数据,得到该ID的映射记录查询结果后,本地DNS服务器向主机返回查询结果。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (9)
1.一种经过分布式哈希表DHT扩展的域名系统DNS映射系统,其特征在于:所述映射系统包括下述设备:
移动或固定的主机,作为该映射系统的客户端,设有能够收发消息的DNS解析器,即存根解析器,以存根解析器和本地DNS服务器结合的方式完成递归查询和安全验证;
DNS服务器,是采用BIND实现的DNS设备,包括本地DNS服务器和授权DNS服务器;本地DNS服务器具有递归查询功能,能够配合主机共同完成映射信息的递归查询,为保证查询安全,本地DNS服务器要配置DNS签名DNSSEC,且拥有根域授权DNS服务器的公钥;位于该系统上层的各个授权DNS服务器是采用根据主机ID的管理域标识AD ID进行分级和层次化索引构成的传统DNS树形结构,每个域都由其授权DNS服务器进行管理,每个授权DNS服务器都不存储任何身份到位置的映射信息,只存储其子域的DHT圆环的入口服务器地址或子域的授权DNS服务器信息;授权DNS服务器用于完成映射信息的层级管理,并配置DNSSEC来保证层级授权和查询过程的安全;在底层授权DNS服务器的区文件中配置一个或多个DHT服务器地址,以供用户选择DHT服务器作为DHT圆环的入口进行查询;
DHT服务器,位于该系统的最底层,是采用主机ID的扁平哈希值进行索引查询的多个相互独立的DHT圆环,每个DHT圆环代表身份空间中的一个域,由多个根据DHT算法组织并相互连接的DHT服务器组成,每个DHT服务器都设有一个包含该DHT圆环管理的域、域名与服务器自身地址的各种信息的配置文件,当DHT服务器用作入口服务器时,负责完成所有的安全处理和与DHT圆环外部的通信,并与DHT其他服务器共同完成映射信息的存储、更新和查询;该多个DHT服务器负责存储和管理该域的全部身份到位置的映射信息;且经过DHT扩展后,最底层域的映射信息被分布地存储于各个DHT服务器,每个DHT服务器只存储和管理整个域的部分映射信息,并根据业务的需要增减每个DHT圆环中的DHT服务器数量,以保证负载均衡和性能需求;DHT圆环中的DNS服务器和DHT服务器作为映射服务器,共同管理身份到位置的映射信息和为主机查询映射信息。
2.根据权利要求1所述的映射系统,其特征在于:所述映射系统还设有位于身份与位置分离架构网络系统中的ID管理服务器,用于可信任的第三方完成与主机之间的TSIG共享密钥的自动配置。
3.根据权利要求1所述的映射系统,其特征在于:所述映射系统中,DHT圆环内部通信采用DHT消息,DHT圆环与外部通信采用标准DNS消息;每个DHT圆环都指定一个或多个服务器作为入口服务器,并将其入口服务器地址告知其父域的授权DNS服务器,入口服务器负责完成其所在的DHT圆环与外部的消息交互,其他服务器只是协作完成映射信息的更新和查询;
所述映射服务器中,本地DNS服务器接收到主机的查询ID的映射信息查询请求后,向授权DNS服务器查询该ID所归属的域,授权DNS服务器告诉本地DNS服务器其查询的ID所归属的DHT圆环的入口服务器地址,由该DHT入口服务器查询得到该DHT圆环中存储的该ID的映射信息;DHT圆环完成映射信息的更新是在DHT入口服务器接收到映射信息更新请求后,根据DHT算法将更新的映射信息存储于该DHT圆环中相应的DHT服务器。
4.根据权利要求1所述的映射系统,其特征在于:所述DHT服务器设有顺序连接的存储查询模块、消息转换模块和安全处理模块,各模块功能分别为:
消息转换模块,用于接收与解析DNS更新请求或DNS查询请求,以及配置映射信息请求,并重新构造为对应的DHT更新消息或DHT查询消息,再作相应处理;解析DHT响应消息,并重新构造成DNS更新请求或查询请求的响应和配置映射信息请求响应;
安全处理模块,与消息转换模块交互,用于完成下述各种功能:为每个ID生成TSIG共享密钥、验证更新消息、为映射记录生成数字签名、配置公钥与私钥、生成公钥摘要和建立与上层DNS的信任链;
存储查询模块,与消息转换模块交互,用于完成映射信息与域名信息的分布式存储和查询;根据key值的两种类型,存储于DHT服务器的(key,value)对的value值也包含对应的两种信息:当key值是域名时,value值是该DHT圆环的密钥对信息;当key值是ID时,value值是该ID对应的映射信息、映射信息的数字签名或TSIG共享密钥;根据DHT服务器采用的不同DHT算法,存储查询模块也采用不同的冗余存储方式。
5.一种采用权利要求1所述的映射系统实现DNS安全的方法,其特征在于:所述映射系统在服务器端为主机提供映射信息的更新和查询过程中,使用事务签名TSIG和DNS签名DNSSEC来保证信息安全,该方法包括下列操作步骤:
(1)主机注册ID与配置TSIG共享密钥后,安全地更新映射信息:每个主机在使用前必须先注册其ID,由ID管理服务器作为可信任的第三方,和DHT圆环共同完成主机ID的注册及其TSIG共享密钥的自动分发,从而完成映射信息更新过程之前TSIG共享密钥的配置,以使主机能向DHT圆环发送采用该共享密钥加密的更新消息,DHT圆环也使用该共享密钥来验证更新消息,确保更新源的可信任性与更新消息的正确性;ID管理服务器和主机的安全是使用数字签名来验证两者之间的交互消息源和消息的正确性;
(2)对DHT圆环和授权DNS服务器配置相关参数,自下而上建立信任链后,提供映射信息的安全查询服务:先在底层DHT圆环与上层授权DNS服务器之间建立信任链,DHT圆环为自己所管理的域生成公钥私钥对,并将自己的公钥告诉父域的授权DNS服务器;再在上层授权DNS服务器之间建立DNSSEC信任链,以保证该映射系统层级授权的安全,本地DNS服务器通过验证响应消息的数字签名来保证响应消息来源的正确性和响应消息的完整性;
(3)完成安全配置后,映射系统进行映射信息的安全更新与查询:主机改变位置信息时,向所归属的DHT圆环发送更新映射信息请求,在主机和DHT圆环之间执行安全的更新过程;主机要和其他主机通信时,向本地DNS服务器发送查询映射信息请求,由本地DNS服务器递归查询授权DNS服务器和DHT圆环,给主机返回查询结果。
6.根据权利要求5所述的方法,其特征在于:所述步骤(1)包括下列操作内容:
(11)主机生成ID后,向ID管理服务器发送包括该主机ID信息的注册请求;
(12)ID管理服务器收到ID注册请求后,先验证该请求的来源及其正确性,证实该请求确实来自该ID对应的主机后,ID管理服务器检测该ID是否与已有ID冲突,若冲突,则发送消息提示主机重新生成ID;否则,ID管理服务器将该ID存储于ID数据库,并向该ID所归属域的DHT圆环的入口服务器发送配置映射信息请求;
(13)DHT服务器接收到配置映射信息请求后,由消息转换模块解析该接收到的配置映射信息请求后,将该请求中的ID参数传递给安全处理模块;
(14)安全处理模块为该请求中的ID生成TSIG共享密钥,并将其返回给消息转换模块;
(15)消息转换模块将该ID作为key值、对应的TSIG共享密钥作为value值构造一个包含该(key,value)对的DHT更新消息,再传递给存储查询模块;
(16)存储查询模块根据DHT算法和key值,将该DHT更新消息路由到DHT圆环中相应的DHT服务器来存储该(key,value)对,若存储成功,则给消息转换模块返回DHT更新成功响应;否则,返回DHT更新失败响应;
(17)消息转换模块收到DHT更新响应后,进行解析,若是成功响应,则给ID管理服务器返回包含该ID的TSIG共享密钥的配置映射信息成功响应;否则,给ID管理服务器返回配置映射信息失败响应;
(18)ID管理服务器接收到响应消息,若配置成功,则将包括TSIG共享密钥、DHT圆环的入口服务器地址的信息组成注册请求成功响应,以安全方式发送到主机,主机对其验证后,获得TSIG共享密钥和DHT圆环的入口服务器地址;若配置失败,则给主机返回注册请求失败响应,以使主机重新注册;主机和DHT圆环之间共享TSIG密钥后,主机就能向DHT圆环发送采用该共享密钥加密的更新消息,DHT圆环则使用TSIG共享密钥来验证更新消息,确保更新源的可信任性与更新消息的正确性。
7.根据权利要求5所述的方法,其特征在于:所述步骤(2)包括下列操作内容:
(21)DHT入口服务器的安全处理模块采用与DNS服务器生成密钥对相同的算法,为其所在的DHT圆环管理的域生成密钥对,共生成两个密钥对:密钥签名密钥对KSK和区域签名密钥对ZSK,每个密钥对都包含一个公钥和一个私钥,后者用于计算映射记录的签名,前者用于计算对ZSK的签名,以使其得到验证;
(22)密钥对生成后,消息转换模块将域名作为key、密钥对作为value生成一个DHT更新消息,再由存储查询模块根据DHT算法将该(key,value)对存储于对应的DHT服务器;当管理员需要更换密钥对,生成新的密钥对后,由存储查询模块对该DHT圆环中存储该密钥对的所有DHT服务器进行更新;DHT服务器在DHT圆环中查询获得最新密钥对后使用该密钥,因DHT圆环中冗余存储数据,故某个存储密钥对的DHT服务器退出该DHT圆环,不会丢失该密钥对信息;
(23)安全处理模块为密钥对中的公钥生成摘要,再将公钥摘要手工添加到上层授权DNS服务器的区文件中,以使上层授权DNS服务器拥有DHT圆环的公钥摘要,能用自己的ZSK私钥对DHT圆环的公钥摘要进行数字签名,这样,只要信任父域授权DNS服务器,就信任经父域授权DNS服务器签名的DHT圆环,从而DHT圆环就和上层授权DNS服务器建立了信任链;
(24)在上层授权DNS服务器之间建立信任链:子域授权DNS服务器先生成自己的密钥对,再将公钥告知其父域授权DNS服务器;以此类推,直到授权DNS根服务器;当授权DNS根服务器生成密钥对后,要向所有本地DNS服务器发布自己的公钥,以使每个本地DNS服务器都拥有DNS根服务器的公钥。
8.根据权利要求5所述的方法,其特征在于:所述步骤(3)中,映射信息更新过程包括下列操作内容:
(31)主机的DNS解析器使用TSIG共享密钥对DNS更新消息加密后,将其发送给其归属的DHT圆环的入口服务器;
(32)DHT服务器的消息转换模块接收到DNS更新请求后,解析其中的ID和Locator映射信息,将ID作为key值构成一个DHT查询请求,传递给存储查询模块;
(33)存储查询模块通过DHT算法查询DHT圆环存储该ID的value值,构成一个DHT查询响应并传递给消息转换模块;
(34)消息转换模块解析该DHT查询响应,获得vlaue值中的TSIG共享密钥,传递给安全处理模块;
(35)安全处理模块使用该TSIG共享密钥验证该更新消息,验证通过后,使用DHT圆环的ZSK私钥对该ID对应的映射信息进行数字签名,然后将该ID的映射信息、对映射信息的数字签名和TSIG共享密钥一起传递给消息转换模块;
(36)消息转换模块将该ID作为key,该ID的映射信息、对映射信息的数字签名和TSIG共享密钥一起作为value,组成(key,value)对构造一个DHT更新消息传递给存储查询模块;
(37)存储查询模块使用DHT算法将DHT更新消息路由到DHT圆环存储该映射信息的相应DHT服务器,并更新该ID的value,然后根据更新结果,给消息转换模块返回DHT更新响应;
(38)消息转换模块根据DHT更新响应的不同结果,构造相应的DNS更新响应发送给主机端。
9.根据权利要求5所述的方法,其特征在于:所述步骤(3)中,映射信息查询过程包括下列操作内容:
(3A)主机的DNS解析器向本地DNS服务器发起DNS查询消息;
(3B)本地DNS服务器向授权DNS服务器发起DNS查询消息;
(3C)经过递归查询后,授权DNS服务器给本地DNS服务器返回DNS查询响应,其中包括请求查询的映射信息所归属DHT圆环的DHT入口服务器地址和该DHT圆环的公钥;
(3D)本地DNS服务器根据接收到的DNS查询响应,向DHT服务器发送DNS查询消息;
(3E)该DHT服务器的消息转换模块接收和解析DNS查询消息,获得ID后,将该查询消息中的ID作为key值,构成DHT查询请求传递给存储查询模块;
(3F)存储查询模块根据DHT查询请求中的ID,使用DHT算法查询DHT圆环是否存储有该ID的value值,如果有,则给消息转换模块返回包含该value值的DHT查询响应;如果无,则给消息转换模块返回空响应;
(3G)消息转换模块接收和解析DHT查询响应,若响应不为空,则将value中的ID映射信息与该映射信息的数字签名信息构造一个DNS查询响应,发送给本地DNS服务器;否则,由安全处理模块生成一个表示不存在该映射信息的特殊记录,并使用ZSK私钥进行数字签名后,将该特殊记录和数字签名构造为DNS响应发送给本地DNS服务器;
(3H)本地DNS服务器使用DHT圆环的公钥验证该响应消息,确认无误后发送给主机的DNS解析器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110026016 CN102045413B (zh) | 2011-01-24 | 2011-01-24 | 经过dht扩展的dns映射系统及其实现dns安全的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110026016 CN102045413B (zh) | 2011-01-24 | 2011-01-24 | 经过dht扩展的dns映射系统及其实现dns安全的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102045413A CN102045413A (zh) | 2011-05-04 |
CN102045413B true CN102045413B (zh) | 2013-01-02 |
Family
ID=43911171
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201110026016 Expired - Fee Related CN102045413B (zh) | 2011-01-24 | 2011-01-24 | 经过dht扩展的dns映射系统及其实现dns安全的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102045413B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105245625A (zh) * | 2015-06-30 | 2016-01-13 | 清华大学 | 跨多管理域的追溯系统 |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102882987B (zh) * | 2011-07-12 | 2015-08-26 | 阿里巴巴集团控股有限公司 | 域名过滤名单存储、匹配方法及装置 |
CN103024094B (zh) * | 2012-11-15 | 2015-07-22 | 中国科学院计算机网络信息中心 | 一种安全可靠的dns区文件信息下发更新方法及系统 |
CN104253793A (zh) * | 2013-06-27 | 2014-12-31 | 政务和公益机构域名注册管理中心 | 域名系统的安全扩展的密钥签名密钥和区域签名密钥的更新方法 |
CN104079683B (zh) * | 2014-07-14 | 2019-01-15 | 清远初曲智能科技有限公司 | 一种授权域名服务器直接响应的域名解析方法及系统 |
CN105450787B (zh) * | 2014-08-20 | 2018-12-04 | 阿里巴巴集团控股有限公司 | 网络地址映射方法、装置和系统 |
CN106547745A (zh) * | 2015-09-16 | 2017-03-29 | 北京国双科技有限公司 | 服务器主机名的生成方法及装置 |
CN106657424B (zh) * | 2015-11-03 | 2020-06-16 | 中国电信股份有限公司 | 物联网中实现域名服务的方法、设备以及系统 |
CN105872125B (zh) * | 2016-03-30 | 2019-01-22 | 中国联合网络通信集团有限公司 | 一种域名解析的方法及装置 |
CN105959427B (zh) * | 2016-04-25 | 2020-01-21 | 中国互联网络信息中心 | Dns服务器自动扩展方法 |
CN107888642A (zh) * | 2016-09-30 | 2018-04-06 | 中国电子科技集团公司信息科学研究院 | 一种标识解析装置、标识解析系统及标识解析方法 |
CN106789175A (zh) * | 2016-11-30 | 2017-05-31 | 武汉长江通信智联技术有限公司 | 一种基于一致性哈希算法进行redis横向扩展的方法 |
CN106713020A (zh) * | 2016-12-09 | 2017-05-24 | 互联网域名系统北京市工程研究中心有限公司 | 一种实现dns服务器集群配置更新同步的方法 |
CN108366136B (zh) * | 2017-12-29 | 2021-04-06 | 北京世纪互联宽带数据中心有限公司 | 一种域名的解析方法及装置 |
CN109995888B (zh) * | 2018-01-02 | 2021-11-09 | 中国移动通信有限公司研究院 | 区块链域名系统dns系统的数据更新方法及网络节点 |
CN109922165B (zh) * | 2019-04-19 | 2021-10-15 | 孙红波 | 一种共同网多根域名系统 |
CN112910852B (zh) * | 2021-01-17 | 2023-03-14 | 迅鳐成都科技有限公司 | 一种基于r树的分布式授权方法、设备及存储介质 |
CN113486388B (zh) * | 2021-09-06 | 2021-11-26 | 江苏翔晟信息技术股份有限公司 | 基于分离式秘钥存储的电子签章签署系统及方法 |
CN114006724B (zh) * | 2021-09-18 | 2023-08-29 | 中国互联网络信息中心 | 一种加密dns解析器发现及认证的方法与系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101510897A (zh) * | 2009-03-30 | 2009-08-19 | 北京邮电大学 | 针对层次化主机标识、基于叠加式dht的寻址系统和方法 |
CN101883042A (zh) * | 2009-05-05 | 2010-11-10 | 华为技术有限公司 | 层次化路由架构的映射方法及系统和域名服务器 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005333374A (ja) * | 2004-05-19 | 2005-12-02 | Toshiba Corp | ネットワーク検索システム、情報検索方法、ブリッジ装置及びプログラム |
-
2011
- 2011-01-24 CN CN 201110026016 patent/CN102045413B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101510897A (zh) * | 2009-03-30 | 2009-08-19 | 北京邮电大学 | 针对层次化主机标识、基于叠加式dht的寻址系统和方法 |
CN101883042A (zh) * | 2009-05-05 | 2010-11-10 | 华为技术有限公司 | 层次化路由架构的映射方法及系统和域名服务器 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105245625A (zh) * | 2015-06-30 | 2016-01-13 | 清华大学 | 跨多管理域的追溯系统 |
Also Published As
Publication number | Publication date |
---|---|
CN102045413A (zh) | 2011-05-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102045413B (zh) | 经过dht扩展的dns映射系统及其实现dns安全的方法 | |
CN110061838B (zh) | 一种dns资源记录的去中心化存储系统及其实现方法 | |
JP5215476B2 (ja) | 分散された記憶ネットワークにおけるデータ許可のためのシステムおよび方法 | |
US8767737B2 (en) | Data center network system and packet forwarding method thereof | |
CN101277257B (zh) | 一种dns动态更新的方法、装置和系统 | |
CN102594823B (zh) | 一种远程安全访问智能家居的可信系统 | |
US8681995B2 (en) | Supporting DNS security in a multi-master environment | |
CN102761630B (zh) | 一种面向真实用户身份信息的IPv6地址分配方法 | |
CN101960814B (zh) | Ip地址委派 | |
CN101895535B (zh) | 用于标识分离映射网络的网络认证方法、装置以及系统 | |
CN106790296B (zh) | 域名记录验证方法及装置 | |
JP2000349747A (ja) | 公開鍵管理方法 | |
CN101291216B (zh) | P2p网络系统及其认证方法 | |
CN102437946B (zh) | 一种接入控制的方法、nas设备及认证服务器 | |
CN112291356B (zh) | 基于cnfs协议的自验证可变名称分布式存储方法 | |
CN103051643B (zh) | 云计算环境下虚拟主机安全连接动态建立方法与系统 | |
CN110012119A (zh) | 一种ip地址前缀授权与管理方法 | |
CN102255983A (zh) | 实体标识符分配系统、溯源、认证方法及服务器 | |
CN104468859A (zh) | 支持携带服务地址信息的dane扩展查询方法和系统 | |
CN105245625A (zh) | 跨多管理域的追溯系统 | |
Liu et al. | Secure name resolution for identifier-to-locator mappings in the global internet | |
CN104468605A (zh) | 一种分布式安全认证方法 | |
CN115622817B (zh) | 网络标识的处理系统及方法 | |
CN111464668A (zh) | 一种快速安全的域名解析方法 | |
CN101237442A (zh) | 一体化网络中终端标识解析和业务传输方法、系统及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20130102 Termination date: 20150124 |
|
EXPY | Termination of patent right or utility model |