CN109819068A - 用户终端及其区块链域名解析方法 - Google Patents
用户终端及其区块链域名解析方法 Download PDFInfo
- Publication number
- CN109819068A CN109819068A CN201910210205.5A CN201910210205A CN109819068A CN 109819068 A CN109819068 A CN 109819068A CN 201910210205 A CN201910210205 A CN 201910210205A CN 109819068 A CN109819068 A CN 109819068A
- Authority
- CN
- China
- Prior art keywords
- adjacent end
- address
- domain name
- target
- user terminal
- 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.)
- Granted
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提出一种用户终端及其区块链域名解析方法,其中,方法包括:用户终端的操作系统启动后,从当前网络的地址分配服务器获取用户终端的IP地址以及满足预设相邻条件的在线相邻终端的节点列表信息,获取包含相同目标区块标识的多个在线目标相邻终端的多个目标IP地址;从验证成功的目标区块中提取包括区块链域名和IP地址对应关系的域名注册信息并保存,以使目标应用程序根据通信IP地址发送访问请求。由此,由去中心化的区块链方式来获取域名,且在应用程序进行域名访问时,能基于区块中的信息接入区块链网络,避免了黑客的钓鱼攻击等行为,提高了区块链网络的灵活性。
Description
技术领域
本发明涉及区块链技术领域,尤其涉及一种用户终端及其区块链域名解析方法。
背景技术
在计算机领域,IP地址作为上网设备、服务器等的“身份证”广泛使用。随着计算机网络技术的发展,IP地址大量增加,为了便于管理和地址的分配,出现了域名系统,也就是说,现有技术中将IP地址和域名作为共同的网络地址进行分配。
相关技术中,IP地址对应的域名由DNS服务器提供,然而,当前网络环境中,提供域名配置服务的DNS服务器较为集中化,而DNS服务器的根服务器掌握在某一个国家或者组织手中,这种中心化的DNS服务器一旦被恶意掌控,将对互联网造成严重威胁。
发明内容
本发明旨提供一种用户终端及其区块链域名解析方法,以解决现有技术中,域名由中心化较强的DNS服务器配置,导致容易受到钓鱼攻击等的技术问题。
本发明第一实施例提供一种基于用户终端操作系统的区块链域名解析方法,在所述用户终端的操作系统内核层设置区块链域名解析模块,所述解析方法包括:用户终端的操作系统启动后,从当前网络的地址分配服务器获取所述用户终端的IP地址以及满足预设相邻条件的在线相邻终端的节点列表信息,其中,所述在线相邻终端包括:所述当前网络中受所述地址分配服务器分配IP地址的其他用户终端,和/或,与所述地址分配服务器相连的其他设备终端,所述节点列表信息包括:每个在线相邻终端的IP地址和每个在线相邻终端当前对应存储的区块链账本中的区块标识集合;所述用户终端查询所述节点列表信息,获取包含相同目标区块标识的多个在线目标相邻终端的多个目标IP地址,根据所述多个目标IP地址分别向所述多个在线目标相邻终端发送携带所述目标区块标识的区块验证请求消息,并接收所述多个在线目标相邻终端分别反馈的包括所述目标区块标识的哈希值验证响应消息,比较所述多个在线目标相邻终端分别反馈的哈希值大小,若所有的哈希值相同,则确定与所述目标区块标识对应的目标区块验证成功;所述用户终端从验证成功的所述目标区块中提取包括区块链域名和IP地址对应关系的域名注册信息并保存,当获取目标应用程序发送的包含目标域名的访问请求时,通过所述区块链域名解析模块查询本地保存的所述域名注册信息获取与所述目标域名对应的通信IP地址反馈给所述目标应用程序,以使所述目标应用程序根据所述通信IP地址发送访问请求。
本发明第二实施例提供一种用户终端,在所述用户终端的操作系统内核层设置区块链域名解析模块,包括:第一获取模块,用于在用户终端的操作系统启动后,从当前网络的地址分配服务器获取所述用户终端的IP地址以及满足预设相邻条件的在线相邻终端的节点列表信息,其中,所述在线相邻终端包括:所述当前网络中受所述地址分配服务器分配IP地址的其他用户终端,和/或,与所述地址分配服务器相连的其他设备终端,所述节点列表信息包括:每个在线相邻终端的IP地址和每个在线相邻终端当前对应存储的区块链账本中的区块标识集合;第二获取模块,用于查询所述节点列表信息,获取包含相同目标区块标识的多个在线目标相邻终端的多个目标IP地址;发送模块,用于根据所述多个目标IP地址分别向所述多个在线目标相邻终端发送携带所述目标区块标识的区块验证请求消息;比较模块,用于接收所述多个在线目标相邻终端分别反馈的包括所述目标区块标识的哈希值验证响应消息,比较所述多个在线目标相邻终端分别反馈的哈希值大小,若所有的哈希值相同,则确定与所述目标区块标识对应的目标区块验证成功;提取模块,用于从验证成功的所述目标区块中提取包括区块链域名和IP地址对应关系的域名注册信息并保存;反馈模块,用于当获取目标应用程序发送的包含目标域名的访问请求时,通过所述区块链域名解析模块查询本地保存的所述域名注册信息获取与所述目标域名对应的通信IP地址反馈给所述目标应用程序,以使所述目标应用程序根据所述通信IP地址发送访问请求。
本发明第三实施例提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如上述实施例描述的基于用户终端操作系统的区块链域名解析方法。
本发明第四实施例提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述实施例描述的基于用户终端操作系统的区块链域名解析方法。
本发明实施例提供的技术方案可以包括以下有益效果:
用户终端的操作系统启动后,从当前网络的地址分配服务器获取用户终端的IP地址以及满足预设相邻条件的在线相邻终端的节点列表信息,其中,在线相邻终端包括:当前网络中受地址分配服务器分配IP地址的其他用户终端,和/或,与地址分配服务器相连的其他设备终端,节点列表信息包括:每个在线相邻终端的IP地址和每个在线相邻终端当前对应存储的区块链账本中的区块标识集合,用户终端查询节点列表信息,获取包含相同目标区块标识的多个在线目标相邻终端的多个目标IP地址,根据多个目标IP地址分别向多个在线目标相邻终端发送携带目标区块标识的区块验证请求消息,并接收多个在线目标相邻终端分别反馈的包括目标区块标识的哈希值验证响应消息,比较多个在线目标相邻终端分别反馈的哈希值大小,若所有的哈希值相同,则确定与目标区块标识对应的目标区块验证成功,最后,用户终端从验证成功的目标区块中提取包括区块链域名和IP地址对应关系的域名注册信息并保存,当获取目标应用程序发送的包含目标域名的访问请求时,通过区块链域名解析模块查询本地保存的域名注册信息获取与目标域名对应的通信IP地址反馈给目标应用程序,以使目标应用程序根据通信IP地址发送访问请求。由此,由去中心化的区块链方式来获取域名,且在应用程序进行域名访问时,能基于区块中的信息接入区块链网络,避免了黑客的钓鱼攻击等行为,提高了区块链网络的灵活性。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中,
图1是根据本发明一个实施例的基于区块链域名系统的场景交互示意图;
图2是根据本发明一个实施例的基于用户终端操作系统的区块链域名解析方法的流程图;
图3是根据本发明一个实施例的基于用户终端操作系统的区块链域名解析方法的应用场景示意图;
图4是根据本发明一个实施例的用户终端的结构示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
为了解决上述背景技术中提到的由于网络地址由中心化较强的DNS服务器配置,导致容易被攻击的技术问题,本发明提供了一种基于用户终端操作系统的区块链域名解析方法,由去中心化的方式来获取取名,提高了应用程序的域名发送的安全性,避免了黑客的钓鱼攻击等行为。
具体而言,为了解决上述技术问题,本发明提供了一种域名生成的区块链网络,如图1所示,在该区块链网络中互联网服务提供商ISP节点向自身所归属的区块链域名系统服务器发送基于身份加密IBE(identity-based encryption,基于身份的加密)的身份私钥请求消息,其中,身份私钥请求消息包括:申请的目标域名和对应的IP地址,进而,区块链域名系统服务器接收身份私钥请求消息并解析获取目标域名,查询本地存储的主钥和公共参数,按照预设算法对主钥、公共参数和目标域名进行计算生成ISP节点的身份私钥,该身份私钥与ISP节点唯一对应,其中,目标域名为ISP节点的身份公钥,进而应用ISP节点在区块链中的节点公钥对ISP节点的身份私钥进行加密后生成ISP节点的加密身份私钥,并将加密身份私钥发送给于目标域名对应的IP地址对应的ISP节点。
进一步地,ISP节点接收区块链域名系统服务器发送的加密身份私钥后,应用自身在区块链中的节点私钥对加密身份私钥进行解密获取ISP节点的身份私钥,并应用身份私钥对目标域名和对应的IP地址、以及区块链域名系统服务器的服务器标识进行身份私钥签名后,向区块链网络发送域名注册广播消息。记账节点接收域名注册广播消息进行解析获取目标域名和对应的IP地址以及服务器标识,并应用目标域名对ISP节点的身份私钥签名进行验证,如果验证通过,则将目标域名和对应的IP地址、以及区块链域名系统服务器的服务器标识的对应关系写入新生成的区块中,并记入区块链账本中。
由此,本发明实施例的网络地址生成方法,在基于区块链域名系统基于区块链的去中心化思想生成,一方面避免了钓鱼攻击等,另一方面,基于共识机制,避免非法节点扰乱网络地址的合法生成。
然而,这种网络地址的生成方式,在客户端(比如应用程序APP等)接入区块链网络时,一般采用P2P广播互相寻址,为了接入P2P相邻节点,需要在客户端首先预制区块链中的种子节点(也可以理解为创始节点)地址,通过种子节点获得相邻节点。但是在实际应用中,比如,在安装操作系统的时候可能无法获得域名区块链的种子节点,或者种子节点IP地址可能变化,如果采用域名访问种子节点,则域名对应的区块链网络还没有接入,无法进行域名访问。
因而,为了解决这种区块链域名解析模块内置在用户终端的操作系统内核层时,域名无法访问的问题,本发明还提出了一种基于用户终端操作系统的区块链域名解析方法。
具体而言,图2是根据本发明一个实施例的基于用户终端操作系统的区块链域名解析方法的流程图,该方法包括以下步骤:
步骤101,用户终端的操作系统启动后,从当前网络的地址分配服务器获取用户终端的IP地址以及满足预设相邻条件的在线相邻终端的节点列表信息,其中,在线相邻终端包括:当前网络中受地址分配服务器分配IP地址的其他用户终端,和/或,与地址分配服务器相连的其他设备终端,节点列表信息包括:每个在线相邻终端的IP地址和每个在线相邻终端当前对应存储的区块链账本中的区块标识集合。
具体地,在用户终端的操作系统启动阶段,从当前网络的地址分配服务器中首先获取该用户终端的IP地址以及满足相邻条件的在线终端的节点列表信息,其中,在线相连终端包括在当前网络中受地址分配服务器分配IP地址的其他用户终端,比如在当前局域网络中的其他用户终端,和/或,与地址分配服务器连接的其他设备终端,比如,与当前服务器相连的其他服务器等,另外,节点列表信息包括每个在线相邻终端的IP地址和每个在线相邻终端当前对应存储的区块链账本中的区块标识集合,其中,应当理解的是,区块标识集合中包含了对应终端中存储的所有的区块的唯一标识。
容易理解的是,在本发明的实施例中,在无法从区块链网络中获取IP地址对应的域名时,考虑到与其处于同一个局域网的其他相连的用户终端的区块中,必然记录有关域名访问请求生成的记录信息,因而,可以借助这些区块中的记录信息来查找有关域名,由此,由于区块中记录的信息必然是经过共识机制验证过的,因而,安全性较高,且克服了操作系统启动中无法接入区块链网络等导致的域名获取失败的障碍。
需要说明的是,在不同的应用场景中,从当前网络的地址分配服务器获取用户终端的IP地址以及满足预设相邻条件的在线相邻终端的节点列表信息的方式不同,作为一种可能的实现方式,用户终端判断地址分配服务器首次发送的在线相邻终端的节点列表信息中的在线相邻终端的数量是否满足预设阈值,若获知在线相邻终端的数量满足预设阈值,则确定满足预设相邻条件,由此,保证了多个在线节点之间提供的区块可以互相验证,保证了有关区块的真实性,进一步保证了获取的有关域名的可靠性,其中,相邻终端的数量的预设阈值可以根据大量实验数据标定。
在本实施例中,如果用户终端获知在线相邻终端的数量不满足预设阈值,则为了保证获取的有关域名的可靠性,向当前的在线相邻终端发送相邻终端增量获取请求,并接收当前的在线相邻终端反馈的增量在线相邻终端的节点信息并存储在节点列表信息中,直到节点列表信息中的在线相邻终端的数量满足预设阈值。也就是说,当在线相邻终端的数量较少时,还可以请求在线相邻终端的在线相邻终端以扩大当前节点列表信息中的在线相邻终端的数量。
作为另一种可能的实现方式,在本实施例中,如果用户终端获知在线相邻终端的数量不满足预设阈值,则向地址分配服务器发送相邻终端增量获取请求,并接收地址分配服务器反馈的扩大范围的增量在线相邻终端的节点信息并存储在节点列表信息中,直到节点列表信息中的在线相邻终端的数量满足预设阈值。比如,地址分配服务器发送相邻终端是发布距离当前用户终端的通信时延为10ms以内的在线相邻用户终端,在接收到相邻终端增量获取请求后,扩大通信时延,地址分配服务器发送相邻终端是发布距离当前用户终端的通信时延为15ms以内的在线相邻用户终端,也就是说,当在线相邻终端的数量较少时,还可以请求地址分配服务器放大其选择现在相邻节点的粒度以扩大当前节点列表信息中的在线相邻终端的数量。
步骤102,用户终端查询节点列表信息,获取包含相同目标区块标识的多个在线目标相邻终端的多个目标IP地址,根据多个目标IP地址分别向多个在线目标相邻终端发送携带目标区块标识的区块验证请求消息,并接收多个在线目标相邻终端分别反馈的包括目标区块标识的哈希值验证响应消息,比较多个在线目标相邻终端分别反馈的哈希值大小,若所有的哈希值相同,则确定与目标区块标识对应的目标区块验证成功。
具体地,通过多个在线相邻终端针对同一个IP地址对应的区块互相校验,验证区块的可靠性,其中,正如以上描述的,区块链网络中基于IP地址进行域名访问请求,因而,基于IP地址可以获取与历史域名访问请求对应的区块。
具体而言,在本实施例中,用户终端查询节点列表信息,获取包含相同目标区块标识的多个在线目标相邻终端的多个目标IP地址,根据多个目标IP地址分别向多个在线目标相邻终端发送携带目标区块标识的区块验证请求消息,并接收多个在线目标相邻终端分别反馈的包括目标区块标识的哈希值验证响应消息,进一步地,比较多个在线目标相邻终端分别反馈的哈希值大小,若所有的哈希值相同,则表明哈希值对应的区块是真实的,从而,确定与目标区块标识对应的目标区块验证成功。
在本发明的一个实施例中,如果用户终端获知所有的哈希值不完全相同,则表明哈希值对应的区块是不真实的,从而,确定与目标区块标识对应的目标区块验证失败。
步骤103,用户终端从验证成功的目标区块中提取包括区块链域名和IP地址对应关系的域名注册信息并保存,当获取目标应用程序发送的包含目标域名的访问请求时,通过区块链域名解析模块查询本地保存的域名注册信息获取与目标域名对应的通信IP地址反馈给目标应用程序,以使目标应用程序根据通信IP地址发送访问请求。
具体地,基于IP地址获取的对应的历史域名访问请求对应的域名记录在对应的区块中,因而,在本实施例中,从验证成功的目标区块中提取包括区块链域名和IP地址对应关系的域名注册信息并保存(图中的域名IP映射缓存表存有本申请中的域名注册信息),以便于后续有关应用程序调用时,直接从保存的域名注册信息查找对应的IP地址。
进一步地,当获取目标应用程序发送的包含目标域名的访问请求时,通过区块链域名解析模块查询本地保存的域名注册信息获取与目标域名对应的通信IP地址反馈给目标应用程序,以使目标应用程序根据通信IP地址发送访问请求,由此,无需接入区块链网络即可获知对应的IP地址进行域名的请求,接入对应的区块链网络。
由此,本发明实施例的基于用户终端操作系统的区块链域名解析方法,如图3所示,在用户终端(如图中的APP1-APP4所在终端)启动后,可以由用户终端中的区块链域名解析模块从其他在线相邻终端中提取包括区块链域名和IP地址对应关系的域名注册信息并保存,由此,对应的APP可以基于该保存的域名注册信息获取到请求接入网关等的通信IP地址,根据该IP地址接入区块链网络。
综上,本发明实施例的基于用户终端操作系统的区块链域名解析方法,用户终端的操作系统启动后,从当前网络的地址分配服务器获取用户终端的IP地址以及满足预设相邻条件的在线相邻终端的节点列表信息,其中,在线相邻终端包括:当前网络中受地址分配服务器分配IP地址的其他用户终端,和/或,与地址分配服务器相连的其他设备终端,节点列表信息包括:每个在线相邻终端的IP地址和每个在线相邻终端当前对应存储的区块链账本中的区块标识集合,用户终端查询节点列表信息,获取包含相同目标区块标识的多个在线目标相邻终端的多个目标IP地址,根据多个目标IP地址分别向多个在线目标相邻终端发送携带目标区块标识的区块验证请求消息,并接收多个在线目标相邻终端分别反馈的包括目标区块标识的哈希值验证响应消息,比较多个在线目标相邻终端分别反馈的哈希值大小,若所有的哈希值相同,则确定与目标区块标识对应的目标区块验证成功,最后,用户终端从验证成功的目标区块中提取包括区块链域名和IP地址对应关系的域名注册信息并保存,当获取目标应用程序发送的包含目标域名的访问请求时,通过区块链域名解析模块查询本地保存的域名注册信息获取与目标域名对应的通信IP地址反馈给目标应用程序,以使目标应用程序根据通信IP地址发送访问请求。由此,由去中心化的区块链方式来获取域名,且在应用程序进行域名访问时,能基于区块中的信息接入区块链网络,避免了黑客的钓鱼攻击等行为,提高了区块链网络的灵活性。
为了实现上述实施例,本发明还提出了一种用户终端,该用户终端可以是智能手机、智能穿戴式设备、电脑笔记本等可以安装应用程序具有操作系统的设备,其中,图4是根据本发明一个实施例的用户终端的结构示意图,在用户终端的操作系统内核层设置区块链域名解析模块,如图4所示,该用户终端包括:第一获取模块10、第二获取模块20、发送模块30、比较模块40、提取模块50和反馈模块60,其中,
第一获取模块10,用于在用户终端的操作系统启动后,从当前网络的地址分配服务器获取用户终端的IP地址以及满足预设相邻条件的在线相邻终端的节点列表信息,其中,在线相邻终端包括:当前网络中受地址分配服务器分配IP地址的其他用户终端,和/或,与地址分配服务器相连的其他设备终端,节点列表信息包括:每个在线相邻终端的IP地址和每个在线相邻终端当前对应存储的区块链账本中的区块标识集合。
在本发明的一个实施例中,第一获取模块10具体用于判断所述地址分配服务器首次发送的在线相邻终端的节点列表信息中的在线相邻终端的数量是否满足预设阈值,若获知所述在线相邻终端的数量满足预设阈值,则确定满足预设相邻条件。
在本实施例中,第一获取模块10还用于在获知在线相邻终端的数量不满足预设阈值时,向当前的在线相邻终端发送相邻终端增量获取请求,并接收当前的在线相邻终端反馈的增量在线相邻终端的节点信息并存储在节点列表信息中,直到节点列表信息中的在线相邻终端的数量满足预设阈值。
第二获取模块20,用于查询节点列表信息,获取包含相同目标区块标识的多个在线目标相邻终端的多个目标IP地址。
发送模块30,用于根据多个目标IP地址分别向多个在线目标相邻终端发送携带目标区块标识的区块验证请求消息。
比较模块40,用于接收多个在线目标相邻终端分别反馈的包括目标区块标识的哈希值验证响应消息,比较多个在线目标相邻终端分别反馈的哈希值大小,若所有的哈希值相同,则确定与目标区块标识对应的目标区块验证成功。
提取模块50,用于从验证成功的目标区块中提取包括区块链域名和IP地址对应关系的域名注册信息并保存。
反馈模块60,用于当获取目标应用程序发送的包含目标域名的访问请求时,通过区块链域名解析模块查询本地保存的域名注册信息获取与目标域名对应的通信IP地址反馈给目标应用程序,以使目标应用程序根据通信IP地址发送访问请求。
需要说明的是,前述对基于用户终端操作系统的区块链域名解析方法实施例的解释说明,也适用于本发明实施例的用户终端,其实现原理类似,在此不再赘述。
综上,本发明实施例的用户终端,用户终端的操作系统启动后,从当前网络的地址分配服务器获取用户终端的IP地址以及满足预设相邻条件的在线相邻终端的节点列表信息,其中,在线相邻终端包括:当前网络中受地址分配服务器分配IP地址的其他用户终端,和/或,与地址分配服务器相连的其他设备终端,节点列表信息包括:每个在线相邻终端的IP地址和每个在线相邻终端当前对应存储的区块链账本中的区块标识集合,用户终端查询节点列表信息,获取包含相同目标区块标识的多个在线目标相邻终端的多个目标IP地址,根据多个目标IP地址分别向多个在线目标相邻终端发送携带目标区块标识的区块验证请求消息,并接收多个在线目标相邻终端分别反馈的包括目标区块标识的哈希值验证响应消息,比较多个在线目标相邻终端分别反馈的哈希值大小,若所有的哈希值相同,则确定与目标区块标识对应的目标区块验证成功,最后,用户终端从验证成功的目标区块中提取包括区块链域名和IP地址对应关系的域名注册信息并保存,当获取目标应用程序发送的包含目标域名的访问请求时,通过区块链域名解析模块查询本地保存的域名注册信息获取与目标域名对应的通信IP地址反馈给目标应用程序,以使目标应用程序根据通信IP地址发送访问请求。由此,由去中心化的区块链方式来获取域名,且在应用程序进行域名访问时,能基于区块中的信息接入区块链网络,避免了黑客的钓鱼攻击等行为,提高了区块链网络的灵活性。
为了实现上述实施例,本发明还提出了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如前述实施例描述的基于用户终端操作系统的区块链域名解析方法。
为了实现上述实施例,本发明还提出一种非临时性计算机可读存储介质,其上存储有计算机程序,当该计算机程序被处理器执行时能够实现如前述实施例所描述的基于用户终端操作系统的区块链域名解析方法。
在本发明中,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
在本发明中,除非另有明确的规定和限定,第一特征在第二特征“上”或“下”可以是第一和第二特征直接接触,或第一和第二特征通过中间媒介间接接触。而且,第一特征在第二特征“之上”、“上方”和“上面”可是第一特征在第二特征正上方或斜上方,或仅仅表示第一特征水平高度高于第二特征。第一特征在第二特征“之下”、“下方”和“下面”可以是第一特征在第二特征正下方或斜下方,或仅仅表示第一特征水平高度小于第二特征。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (10)
1.一种基于用户终端操作系统的区块链域名解析方法,其特征在于,在所述用户终端的操作系统内核层设置区块链域名解析模块,所述解析方法包括:
用户终端的操作系统启动后,从当前网络的地址分配服务器获取所述用户终端的IP地址以及满足预设相邻条件的在线相邻终端的节点列表信息,其中,所述在线相邻终端包括:所述当前网络中受所述地址分配服务器分配IP地址的其他用户终端,和/或,与所述地址分配服务器相连的其他设备终端,所述节点列表信息包括:每个在线相邻终端的IP地址和每个在线相邻终端当前对应存储的区块链账本中的区块标识集合;
所述用户终端查询所述节点列表信息,获取包含相同目标区块标识的多个在线目标相邻终端的多个目标IP地址,根据所述多个目标IP地址分别向所述多个在线目标相邻终端发送携带所述目标区块标识的区块验证请求消息,并接收所述多个在线目标相邻终端分别反馈的包括所述目标区块标识的哈希值验证响应消息,比较所述多个在线目标相邻终端分别反馈的哈希值大小,若所有的哈希值相同,则确定与所述目标区块标识对应的目标区块验证成功;
所述用户终端从验证成功的所述目标区块中提取包括区块链域名和IP地址对应关系的域名注册信息并保存,当获取目标应用程序发送的包含目标域名的访问请求时,通过所述区块链域名解析模块查询本地保存的所述域名注册信息获取与所述目标域名对应的通信IP地址反馈给所述目标应用程序,以使所述目标应用程序根据所述通信IP地址发送访问请求。
2.如权利要求1所述的方法,其特征在于,所述从当前网络的地址分配服务器获取所述用户终端的IP地址以及满足预设相邻条件的在线相邻终端的节点列表信息,包括:
所述用户终端判断所述地址分配服务器首次发送的在线相邻终端的节点列表信息中的在线相邻终端的数量是否满足预设阈值,若获知所述在线相邻终端的数量满足预设阈值,则确定满足预设相邻条件。
3.如权利要求2所述的方法,其特征在于,在所述用户终端判断所述地址分配服务器首次发送的在线相邻终端的节点列表信息中的在线相邻终端的数量是否满足预设阈值之后,还包括:
所述用户终端若获知所述在线相邻终端的数量不满足预设阈值,则向当前的在线相邻终端发送相邻终端增量获取请求,并接收所述当前的在线相邻终端反馈的增量在线相邻终端的节点信息并存储在所述节点列表信息中,直到所述节点列表信息中的在线相邻终端的数量满足预设阈值。
4.如权利要求2所述的方法,其特征在于,在所述用户终端判断所述地址分配服务器首次发送的在线相邻终端的节点列表信息中的在线相邻终端的数量是否满足预设阈值之后,还包括:
所述用户终端若获知所述在线相邻终端的数量不满足预设阈值,则向所述地址分配服务器发送相邻终端增量获取请求,并接收所述地址分配服务器反馈的扩大范围的增量在线相邻终端的节点信息并存储在所述节点列表信息中,直到所述节点列表信息中的在线相邻终端的数量满足预设阈值。
5.如权利要求1所述的方法,其特征在于,在所述比较所述多个在线目标相邻终端分别反馈的哈希值大小之后,还包括:
所述用户终端若获知所有的哈希值不完全相同,则确定与所述目标区块标识对应的目标区块验证失败。
6.一种用户终端,其特征在于,在所述用户终端的操作系统内核层设置区块链域名解析模块,包括:
第一获取模块,用于在所述用户终端的操作系统启动后,从当前网络的地址分配服务器获取所述用户终端的IP地址以及满足预设相邻条件的在线相邻终端的节点列表信息,其中,所述在线相邻终端包括:所述当前网络中受所述地址分配服务器分配IP地址的其他用户终端,和/或,与所述地址分配服务器相连的其他设备终端,所述节点列表信息包括:每个在线相邻终端的IP地址和每个在线相邻终端当前对应存储的区块链账本中的区块标识集合;
第二获取模块,用于查询所述节点列表信息,获取包含相同目标区块标识的多个在线目标相邻终端的多个目标IP地址;
发送模块,用于根据所述多个目标IP地址分别向所述多个在线目标相邻终端发送携带所述目标区块标识的区块验证请求消息;
比较模块,用于接收所述多个在线目标相邻终端分别反馈的包括所述目标区块标识的哈希值验证响应消息,比较所述多个在线目标相邻终端分别反馈的哈希值大小,若所有的哈希值相同,则确定与所述目标区块标识对应的目标区块验证成功;
提取模块,用于从验证成功的所述目标区块中提取包括区块链域名和IP地址对应关系的域名注册信息并保存;
反馈模块,用于当获取目标应用程序发送的包含目标域名的访问请求时,通过所述区块链域名解析模块查询本地保存的所述域名注册信息获取与所述目标域名对应的通信IP地址反馈给所述目标应用程序,以使所述目标应用程序根据所述通信IP地址发送访问请求。
7.如权利要求6所述的用户终端,其特征在于,
所述第一获取模块,具体用于判断所述地址分配服务器首次发送的在线相邻终端的节点列表信息中的在线相邻终端的数量是否满足预设阈值,若获知所述在线相邻终端的数量满足预设阈值,则确定满足预设相邻条件。
8.如权利要求6所述的用户终端,其特征在于,
所述第一获取模块,还用于在获知所述在线相邻终端的数量不满足预设阈值时,向当前的在线相邻终端发送相邻终端增量获取请求,并接收所述当前的在线相邻终端反馈的增量在线相邻终端的节点信息并存储在所述节点列表信息中,直到所述节点列表信息中的在线相邻终端的数量满足预设阈值。
9.一种计算机设备,其特征在于,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如权利要求1-5中任一所述的基于用户终端操作系统的区块链域名解析方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-5中任一所述的基于用户终端操作系统的区块链域名解析方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910210205.5A CN109819068B (zh) | 2019-03-19 | 2019-03-19 | 用户终端及其区块链域名解析方法、计算机设备、计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910210205.5A CN109819068B (zh) | 2019-03-19 | 2019-03-19 | 用户终端及其区块链域名解析方法、计算机设备、计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109819068A true CN109819068A (zh) | 2019-05-28 |
CN109819068B CN109819068B (zh) | 2021-07-30 |
Family
ID=66609676
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910210205.5A Active CN109819068B (zh) | 2019-03-19 | 2019-03-19 | 用户终端及其区块链域名解析方法、计算机设备、计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109819068B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110808841A (zh) * | 2019-11-08 | 2020-02-18 | 杭州增信信息技术有限公司 | 基于区块链网络的通信系统及其通信方法 |
CN111585992A (zh) * | 2020-04-26 | 2020-08-25 | 数网金融有限公司 | 一种检测网络攻击的方法、客户端及存储介质 |
CN111641735A (zh) * | 2020-06-10 | 2020-09-08 | 上海聪链信息科技有限公司 | 通过音频线配置区块链服务器ip地址的方法 |
CN112039930A (zh) * | 2019-06-03 | 2020-12-04 | 厦门本能管家科技有限公司 | 一种基于大节点构建移动区块链的方法及系统 |
CN113055359A (zh) * | 2021-02-25 | 2021-06-29 | 国网信息通信产业集团有限公司 | 基于区块链的IPv6域名数据隐私保护方法及相关设备 |
CN115623080A (zh) * | 2022-11-30 | 2023-01-17 | 四川汉唐云分布式存储技术有限公司 | 基于区块链的分布式存储方法、装置及计算机设备 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106027264A (zh) * | 2016-07-26 | 2016-10-12 | 宁圣金融信息服务(上海)有限公司 | 域名区块链链接保存方法和装置 |
US20170346848A1 (en) * | 2016-05-31 | 2017-11-30 | Ned M. Smith | System, Apparatus And Method For Scalable Internet Of Things (IOT) Device On-Boarding With Quarantine Capabilities |
CN108270882A (zh) * | 2018-01-24 | 2018-07-10 | 腾讯科技(深圳)有限公司 | 域名的解析方法和装置、存储介质、电子装置 |
US20180205552A1 (en) * | 2015-06-02 | 2018-07-19 | ALTR Solutions, Inc. | Utilizing a tree-structure to segment and distribute files across a series of blockchains |
CN108512935A (zh) * | 2018-04-16 | 2018-09-07 | 腾讯科技(深圳)有限公司 | 数据服务系统、方法、服务器和计算机可读存储介质 |
WO2018213880A1 (en) * | 2017-05-22 | 2018-11-29 | Haventec Pty Ltd | System for blockchain based domain name and ip number register |
CN109413076A (zh) * | 2018-11-06 | 2019-03-01 | 北京奇虎科技有限公司 | 域名解析方法及装置 |
-
2019
- 2019-03-19 CN CN201910210205.5A patent/CN109819068B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180205552A1 (en) * | 2015-06-02 | 2018-07-19 | ALTR Solutions, Inc. | Utilizing a tree-structure to segment and distribute files across a series of blockchains |
US20170346848A1 (en) * | 2016-05-31 | 2017-11-30 | Ned M. Smith | System, Apparatus And Method For Scalable Internet Of Things (IOT) Device On-Boarding With Quarantine Capabilities |
CN106027264A (zh) * | 2016-07-26 | 2016-10-12 | 宁圣金融信息服务(上海)有限公司 | 域名区块链链接保存方法和装置 |
WO2018213880A1 (en) * | 2017-05-22 | 2018-11-29 | Haventec Pty Ltd | System for blockchain based domain name and ip number register |
CN108270882A (zh) * | 2018-01-24 | 2018-07-10 | 腾讯科技(深圳)有限公司 | 域名的解析方法和装置、存储介质、电子装置 |
CN108512935A (zh) * | 2018-04-16 | 2018-09-07 | 腾讯科技(深圳)有限公司 | 数据服务系统、方法、服务器和计算机可读存储介质 |
CN109413076A (zh) * | 2018-11-06 | 2019-03-01 | 北京奇虎科技有限公司 | 域名解析方法及装置 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112039930A (zh) * | 2019-06-03 | 2020-12-04 | 厦门本能管家科技有限公司 | 一种基于大节点构建移动区块链的方法及系统 |
CN112039930B (zh) * | 2019-06-03 | 2023-04-07 | 本无链科技(深圳)有限公司 | 一种基于大节点构建移动区块链的方法及系统 |
CN110808841A (zh) * | 2019-11-08 | 2020-02-18 | 杭州增信信息技术有限公司 | 基于区块链网络的通信系统及其通信方法 |
CN111585992A (zh) * | 2020-04-26 | 2020-08-25 | 数网金融有限公司 | 一种检测网络攻击的方法、客户端及存储介质 |
CN111641735A (zh) * | 2020-06-10 | 2020-09-08 | 上海聪链信息科技有限公司 | 通过音频线配置区块链服务器ip地址的方法 |
CN113055359A (zh) * | 2021-02-25 | 2021-06-29 | 国网信息通信产业集团有限公司 | 基于区块链的IPv6域名数据隐私保护方法及相关设备 |
CN113055359B (zh) * | 2021-02-25 | 2023-01-31 | 国网信息通信产业集团有限公司 | 基于区块链的IPv6域名数据隐私保护方法及相关设备 |
CN115623080A (zh) * | 2022-11-30 | 2023-01-17 | 四川汉唐云分布式存储技术有限公司 | 基于区块链的分布式存储方法、装置及计算机设备 |
Also Published As
Publication number | Publication date |
---|---|
CN109819068B (zh) | 2021-07-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109819068A (zh) | 用户终端及其区块链域名解析方法 | |
CN108270882B (zh) | 域名的解析方法和装置、存储介质、电子装置 | |
CN111373704B (zh) | 一种支持多模标识网络寻址渐进去ip的方法、系统及存储介质 | |
CN109246211B (zh) | 一种区块链中的资源上传和资源请求方法 | |
CN104506510B (zh) | 用于设备认证的方法、装置及认证服务系统 | |
US7228417B2 (en) | Simple secure login with multiple-authentication providers | |
CN101488950B (zh) | 用于因特网的对称密钥分发的方法、设备和系统 | |
US9712422B2 (en) | Selection of service nodes for provision of services | |
CN109983752A (zh) | 带有编码dns级信息的网络地址 | |
CN109951482A (zh) | 用户终端及其区块链域名解析方法 | |
CN109981814A (zh) | 基于区块链网络服务节点的域名信息查询方法和系统 | |
CN109413228A (zh) | 基于区块链域名系统的IPv6生成方法和系统 | |
CN110599142B (zh) | 数据存储方法、装置、计算机设备和存储介质 | |
CN104052736A (zh) | 用于预签名dnssec启用区域至记录集中的系统和方法 | |
CN102171984A (zh) | 服务提供者访问 | |
JP2013509061A (ja) | オーバーレイネットワークで通信ピアの選択をサポートする方法およびシステム | |
CN106790296B (zh) | 域名记录验证方法及装置 | |
CN109714447A (zh) | 基于区块链域名系统的域名生成方法和系统 | |
CN115189913B (zh) | 数据报文的传输方法和装置 | |
Kintis et al. | Understanding the privacy implications of ecs | |
CN106936945A (zh) | 分布式域名解析方法及装置 | |
CN109951481B (zh) | 基于区块链网络相邻节点的信息处理方法和系统 | |
CN106027555B (zh) | 一种采用sdn技术改善内容分发网络安全性的方法及系统 | |
US8112535B2 (en) | Securing a server in a dynamic addressing environment | |
KR20210045562A (ko) | 익명화된 네트워크 트래픽 기반의 사이버 위협 정보 공유 방법 및 이를 이용한 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: 100191 1107c, 11 / F, Xueyuan international building, 1 Zhichun Road, Haidian District, Beijing Applicant after: IALLCHAIN Co.,Ltd. Address before: 100043 5158, 5 floor, 11 Shixing street, Shijingshan District, Beijing. Applicant before: IALLCHAIN Co.,Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |