CN110537346A - 安全去中心化域名系统 - Google Patents

安全去中心化域名系统 Download PDF

Info

Publication number
CN110537346A
CN110537346A CN201780089772.9A CN201780089772A CN110537346A CN 110537346 A CN110537346 A CN 110537346A CN 201780089772 A CN201780089772 A CN 201780089772A CN 110537346 A CN110537346 A CN 110537346A
Authority
CN
China
Prior art keywords
domain
node
domain name
block chain
public keys
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
Application number
CN201780089772.9A
Other languages
English (en)
Other versions
CN110537346B (zh
Inventor
T·罗恩诺
E·马丁·洛佩兹
李宏伟
K·帕尔尤蒂纳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nokia Technologies Oy
Original Assignee
Nokia Technologies Oy
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nokia Technologies Oy filed Critical Nokia Technologies Oy
Publication of CN110537346A publication Critical patent/CN110537346A/zh
Application granted granted Critical
Publication of CN110537346B publication Critical patent/CN110537346B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • H04L9/3268Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements using certificate validation, registration, distribution or revocation, e.g. certificate revocation list [CRL]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0435Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0478Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload applying multiple layers of encryption, e.g. nested tunnels or encrypting the content with a first key and then with at least a second key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/061Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1458Denial of Service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/002Countermeasures against attacks on cryptographic mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/006Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving public key infrastructure [PKI] trust models
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

用于安全去中心化域名系统的计算机实现的方法,该方法包括:将域注册事务记录到区块链,域注册事务包括域名、与域公共密钥相对应的域主密钥以及用于服务器节点的域证书信息;将包括域公共密钥的域安全事务记录到区块链以生成域名记录,该域名记录包括域名、相关联的IP地址、域公共密钥和域证书信息,其中域安全事务使用域主密钥而被签名;通过客户端节点向域名节点传输域名请求;通过客户端节点从域名节点接收域名响应,域名响应包括从区块链的域名记录检索获取的域公共密钥、域证书信息和相关联的IP地址;以及使用域公共密钥和域证书信息中的至少一个项在客户端节点与服务器节点之间发起安全通信。

Description

安全去中心化域名系统
技术领域
本申请总体上涉及一种安全去中心化域名系统、区块链、分布式账本(distributed ledger)、节点与密码协议之间的安全通信。
背景技术
该部分说明了有用的背景信息,但不承认本文描述的任何技术代表现有技术。
域名系统(DNS)是用于计算机、服务或被连接到互联网或专用网络的任何资源的分层去中心化命名系统。其将各种信息与被指派给每个参与实体的域名相关联。最显著的是,它将更容易记忆的域名转换为出于定位和标识具有底层网络协议的计算机服务和设备的目的所需的数字IP地址。通过提供全球分布式目录服务,域名系统(DNS)是互联网的功能性的基本组成部分。
超文本传输协议(HTTP)是用于分布式协作超媒体信息系统的应用协议。HTTP是万维网的数据通信的基础。然而,HTTP在协议中仅使用明文,即使是针对基本访问认证。针对通过互联网进行安全信息交换,实现了安全HTTP(HTTPS)。HTTPS由传输层安全性(TLS)或其前身安全套接字层(SSL)所加密的常见HTTP通信组成。HTTPS的主要动机是对所访问网站进行认证并且保护所交换数据的隐私和完整性。
拒绝服务(DoS)攻击和中间人(MITM)攻击是互联网上两种流行的网络攻击。如今更流行的是,分布式DoS(DDoS)是一种DoS攻击,其中,多个受损系统(通常感染了特洛伊木马)被用于瞄准单个系统以通过将其溢满无用流量来降低网络性能。域名系统(DNS)服务使用具有多个镜像站点的去中心化设置来防御DDoS。
中间人(MITM)是其中攻击者进行秘密中继并且可能改变其认为它们彼此直接进行通信的两方之间的通信。这种攻击可能发生于任何两方通信,并且已经开发了各种认证技术来防御它。
当前的互联网基础设施由若干独立的层组成。要使HTTPS起作用,需要单独对基于DNS和证书的安全服务进行分类,并且该过程中涉及多个独立且无关的方。
首先,网站的域名需要向域名注册者注册(这也可以通过经销商完成)。当域被注册时,它将出现在域注册表中,并且可用于DNS服务,该DNS服务可以由注册者免费提供或者由其他人提供。
然后,域/网站服务器的所有者需要从数以千计的证书颁发机构(CA)之一(受信任第三方(TTP))购买安全证书,并且将证书安装在托管服务器上。
现今,出现了可以对几乎任何浏览器都将接受的域的证书进行签名的大约1200个证书颁发机构(CA)。这会导致一些问题。虽然成为证书颁发机构(CA)涉及经历许多手续,但是它们可能会被政府利用,被骗子恐吓或者被犯罪分子侵入以颁发假证书。
例如,如果浏览器访问受损网站并且被呈现了看起来像有效HTTPS证书的内容,则它将发起它认为是安全连接的内容,并且可能会在地址栏中显示挂锁。问题是仅需要损坏1200+个证书颁发机构(CA)中的一个就能使浏览器接受连接。
现今存在许多方式来破解HTTPS/TLS/SSL,即使是网站在做任何正确的事情时。如目前所实现的,网络的安全协议可能足以在有限的时间和动力下防御攻击者,但是对于通过攻击计算机系统的安全性而日益展开地缘政治和商业竞争的世界来说,这些协议是不够的。
区块链是分布式数据库,它维护着不断增长的数据记录列表,这些数据记录防止篡改和修改。它由数据结构区块组成,这些数据结构区块在初始区块链实现中专门保存数据,并且在一些实现中保存数据和程序,其中每个区块保存多批个体事务以及任何区块链可执行文件的结果。每个区块包含将其链接到前一区块的时间戳和信息。
区块链被视为比特币的主要技术创新,其中它充当所有比特币事务的公共账本。比特币是点到点的,允许每个用户连接到网络,向其发送新事务,验证事务并且创建新区块,这就是它被称为无许可的原因。这种原始设计已经是其他加密货币和分布式数据库的灵感来源。
证书颁发机构是可以被攻击或损坏的单点故障。
因此,需要一种技术方案来解决改善网络节点之间的安全通信的问题。
发明内容
在权利要求中阐述了本发明的示例的多个方面。
根据本发明的第一示例方面,提供了用于安全去中心化域名系统的计算机实现的方法,该方法包括:
将域注册事务记录到区块链,该域注册事务包括域名、与域公共密钥相对应的域主密钥以及用于服务器节点的域证书信息;
将包括域公共密钥的域安全事务记录到区块链以生成域名记录,该域名记录包括域名、相关联的IP地址、域公共密钥和域证书信息,其中域安全事务是使用域主密钥而被签名;
通过客户端节点向域名节点传输域名请求;
通过客户端节点从域名节点接收域名响应,该域名响应包括从区块链的域名记录获取的域公共密钥、域证书信息和相关联的IP地址;以及
使用域公共密钥和域证书信息中的至少一项在客户端节点与服务器节点之间发起安全通信。
在实施例中,域注册事务进一步包括与域相关联的缴存信息。在每n个区块处,与缴存信息相对应的量可以是响应于域注册提取的,并且被缴存到区块链网络的矿工。
在实施例中,该方法进一步包括:
使用随机数来加密域注册事务;以及
响应于域注册事务根据去中心化域名系统的安全协议而被确认到区块链中,将随机数释放到区块链。
在实施例中,域安全事务根据去中心化域名系统的安全协议被记录到区块链。
在实施例中,安全协议包括以下中的至少一项:工作量证明(PoW)、权益证明(PoS)、实用拜占庭容错(PBFT)和多数表决算法。
在实施例中,域名请求包括以下中的至少一项:域名以及与域名相关联的IP地址。
在实施例中,该方法进一步包括:
通过客户端节点,使用共享密钥来加密随机值,并且向服务器节点传输经加密的随机值;
通过服务器节点来解密经加密的随机值并且使用服务器节点的私有密钥对所解密的随机值进行签名,使用共享密钥来加密所签名的随机值并且向客户端节点传输经加密的、所签名的随机值;
通过客户端节点,使用共享密钥来解密经加密的、所签名的随机值,以生成所签名的随机值;
通过客户端节点,将所签名的随机值与服务器节点的域公共密钥组合以验证服务器节点;以及
利用随机值以用于加密客户端节点与服务器节点之间的安全通信的数据。
在实施例中,该方法进一步包括:
通过客户端节点,向服务器节点传输客户端节点的公共密钥;
通过服务器节点,使用客户端节点的公共密钥加密域公共密钥和域证书信息以提供加密的响应,并且向客户端节点传输经加密的响应;
通过客户端节点,使用客户端节点的私有密钥解密经加密的响应以生成域公共密钥和域证书信息,将所生成的域证书信息与从域名节点接收到的域证书信息相比较以验证服务器节点;
通过客户端节点,响应于验证服务器节点来生成会话密钥,使用域公共密钥加密会话密钥,并且向服务器节点传输经加密的会话密钥;
通过服务器节点,使用域私有密钥解密经加密的会话密钥;以及
利用会话密钥以用于加密客户端节点与服务器节点之间的安全通信的数据。
在实施例中,该方法进一步包括:
接收针对区块链的域名记录的更新请求;
接收域续订事务,该域续订事务包括对域名记录的更新;以及
响应于事务是根据去中心化域名系统的安全协议被确认到区块链中,记录域续订事务。
在实施例中,安全去中心化域名系统的区块链包括多个区块链节点层。
在实施例中,多个区块链节点层包括:
域名节点层;
服务器节点层;以及
客户端节点层。
在实施例中,域名节点层包括至少一个域名节点,该至少一个域名节点被配置为控制域名系统和服务器节点的域证书信息。
在实施例中,服务器节点层包括至少一个服务器节点,该至少一个服务器节点被配置为向域名节点层注册。
在实施例中,客户端节点层包括至少一个客户端节点,该至少一个客户端节点被配置为查询和响应域名节点层以用于利用与服务器节点层的安全通信。
在实施例中,客户端节点包括浏览器应用。
在实施例中,该方法进一步包括:
在区块链内定义记录,该记录标识至少一个受信任节点,其中受信任节点由唯一节点标识符来标识。
在实施例中,唯一标识符包括公共密钥,该公共密钥与被存储在受信任节点中的秘密密钥相关联。
在实施例中,该方法进一步包括:
在每个节点处生成一对公共密钥和秘密密钥。
在实施例中,该方法进一步包括:
将秘密密钥存储在节点处的安全元件内,该安全元件包括在节点内具有有限输入/输出的单独电子模块。
在实施例中,该方法进一步包括:
在区块链内定义域名记录,该域名记录包括域名、相关联的IP地址、域公共密钥和域证书信息。
在实施例中,该方法进一步包括:
接收请求以向至少一个区块链节点层添加或移除节点;
经由多个节点所组成的分布式共识系统将请求作为事务发布到至少一个区块链节点层的第二节点;以及
响应于请求事务是由第二节点根据分布式共识系统确认的,将节点的添加或移除作为事务而记录到区块链。
在实施例中,该方法进一步包括:
基于安全标准选择第二节点。
在实施例中,该方法进一步包括:
根据区块链的预定义设置的条款来促进节点的事务的验证和认证。
在实施例中,至少一个节点包括IoT(物联网)设备。
在实施例中,至少一个节点被连接到包括公共网络的广域通信接口。
在实施例中,区块链事务包括:
节点的公共密钥;以及
数据项的散列值。
在实施例中,该方法进一步包括:
通过第一节点对数据项签名;以及
响应于通过第一节点对数据项进行签名来将签名数据项作为事务记录到区块链。
根据本发明的第二示例方面,提供了一种用于安全去中心化域名系统的计算机实施的方法,该方法包括:
将域注册事务记录到区块链,该域注册事务包括域名、与域公共密钥相对应的域主密钥以及用于服务器节点的域证书信息;
将包括域公共密钥的域安全事务记录到区块链以生成域名记录,该域名记录包括域名、相关联的IP地址、域公共密钥和域证书信息,其中域安全事务是使用域主密钥而被签名;
从客户端节点接收对域名节点的域名请求;
向客户端节点传输来自域名节点的域名响应,该域名响应包括从区块链的域名记录获取的域公共密钥、域证书信息和相关联的IP地址,其中安全通信被配置为使用域公共密钥和域证书信息中的至少一项在客户端节点与服务器节点之间被发起。
根据本发明的第三示例方面,提供了一种服务器装置,该服务器装置包括:
用于收发信息的通信接口;
至少一个处理器;以及
包括计算机程序代码的至少一个存储器;
至少一个存储器和计算机程序代码被配置为与至少一个处理器一起使服务器装置:
将域注册事务记录到区块链,该域注册事务包括域名、与域公共密钥相对应的域主密钥以及服务器节点的域证书信息;
将包括域公共密钥的域安全事务记录到区块链以生成域名记录,该域名记录包括域名、相关联的IP地址、域公共密钥和域证书信息,其中域安全事务使用域主密钥而被签名;
从客户端节点接收对域名节点的域名请求;
向客户端节点传输来自域名节点的域名响应,该域名响应包括从区块链的域名记录获取的域公共密钥、域证书信息和相关联的IP地址,其中安全通信被配置为使用域公共密钥和域证书信息中的至少一项在客户端节点与服务器节点之间被发起。
根据本发明的第四示例方面,提供了一种设备,该设备包括:
用于收发信息的通信接口;
至少一个处理器;以及
包括计算机程序代码的至少一个存储器;
至少一个存储器和计算机程序代码被配置为与至少一个处理器一起使设备:
从客户端节点传输对域名节点的域名请求,其中域注册事务被记录到区块链,该域注册事务包括域名、与域公共密钥相对应的域主密钥以及用于服务器节点的域证书信息;并且进一步地,其中包括域公共密钥的域安全事务被记录到区块链以生成域名记录,该域名记录包括域名、相关联的IP地址、域公共密钥和域证书信息,其中域安全交使用域主密钥而被签名;
通过客户端节点从域名节点接收域名响应,该域名响应包括从区块链的域名记录获取的域公共密钥、域证书信息和相关联的IP地址;以及
使用域公共密钥和域证书信息中的至少一项在客户端节点与服务器节点之间发起安全通信。
在实施例中,设备包括以下中的至少一个:
工业机器;
传感器;
个人计算机;
智能手机;
物联网(IoT)设备,
个人数字助理(PDA);
互联网平板计算机;
网络附加存储装置(NAS);以及
用户设备。
根据本发明的第五示例方面,提供了被体现在计算机可读非瞬态介质上的计算机程序,包括计算机可执行程序代码,该计算机可执行程序代码在由服务器装置的至少一个处理器执行时使服务器装置:
将域注册事务记录到区块链,该域注册事务包括域名、与域公共密钥相对应的域主密钥以及用于服务器节点的域证书信息;
将包括域公共密钥的域安全事务记录到区块链以生成域名记录,该域名记录包括域名、相关联的IP地址、域公共密钥和域证书信息,其中域安全事务使用域主密钥而被签名;
从客户端节点接收对域名节点的域名请求;
向客户端节点传输来自域名节点的域名响应,该域名响应包括从区块链的域名记录获取的域公共密钥、域证书信息和相关联的IP地址,其中安全通信被配置为使用域公共密钥和域证书信息中的至少一项在客户端节点与服务器节点之间发起。
根据本发明的第六示例方面,提供了被体现在计算机可读非瞬态介质上的计算机程序,包括计算机可执行程序代码,该计算机可执行程序代码在由设备的至少一个处理器执行时使设备:
从客户端节点传输对域名节点的域名请求,其中域注册事务被记录到区块链,该域注册事务包括域名、与域公共密钥相对应的域主密钥以及用于服务器节点的域证书信息;并且进一步地,其中包括域公共密钥的域安全事务被记录到区块链以生成域名记录,该于,域名记录包括域名、相关联的IP地址、域公共密钥和域证书信息,其中域安全事务使用域主密钥而被签名;
通过客户端节点从域名节点接收域名响应,该域名响应包括从区块链的域名记录获取的域公共密钥、域证书信息和相关联的IP地址;以及
使用域公共密钥和域证书信息中的至少一个在客户端节点与服务器节点之间发起安全通信。
在前文中已经说明了本发明的不同的非约束性的示例方面和实施例。前文中的实施例仅用于解释可以在实现本发明时利用的所选择的方面或步骤。可以仅参照本发明的某些示例方面呈现一些实施例。应该了解,对应实施例也可以应用于其他示例方面。
附图说明
为了更完整地理解本发明的示例实施例,现在参考以下结合附图的描述,其中:
图1示出了示例实施例的系统的示意图;
图2示出了示例实施例的系统的另一示意图;
图3a至图3d示出了说明根据本发明的示例实施例的方法的流程图;
图4示出了示例实施例的设备的框图;
图5示出了示例实施例的服务器装置的框图;以及
图6示出了示例实施例的系统的另一示意图。
具体实施方式
通过参照附图的图1至6,理解本发明的示例实施例及其潜在优点。在本文中,相同的附图标记表示相同的部分或步骤。
在本文中,术语耦合和连接可以指代组件之间的直接联系或者通过一些(多个)中间组件耦合。
当用户尝试访问安全HTTP(HTTPS)网页时,可能会发生以下情况。第一,浏览器可以针对IP地址来查询DNS服务器以查找网站主机。该服务由可用于用户设备的DNS名称服务器提供。第二,浏览器然后可以去往主机web服务器,该主机web服务器具有由DNS名称服务器提供的网站记录,并且请求安全会话。浏览器将在该步骤中向服务器提供其公共密钥。第三,web服务器通过发送其公共密钥以及包含关于网站和证书颁发机构(CA)的信息的证书来进行响应。第四,浏览器然后可以检查证书是否有效(这取决于CA是否受信任)。在验证之后,浏览器发送利用网络服务器的公共密钥进行加密的一次性会话密钥。第五,网络服务器利用其私有密钥来对一次性会话密钥进行解密,并且此后可以通过使用一次性会话密钥在浏览器与网络服务器之间执行安全通信。
在上面的第四步骤中,web浏览器知道如何基于与浏览器预安装在一起的证书颁发机构(CA)来信任HTTPS网站。证书颁发机构(诸如,Symantec、Comodo、GoDaddy和GlobalSign)可以通过这种方式被网络浏览器创建者的信任以提供有效的证书。因此,仅当用户信任浏览器软件利用正确预安装的证书颁发机构来正确实现HTTPS,证书颁发机构仅针对合法网站进行担保,网站提供意味着它是由受信任机构进行签名的有效证书,证书正确标识网站(例如,当浏览器访问"https://example.com"时,接收到的证书恰好针对“example.com”而不是一些其他实体)并且用户信任协议的加密层(SSL/TLS)对于窃听者来说足够安全时,用户才应该信任与网站的HTTPS连接。
HTTPS基础设施使用X.509公共密钥基础设施(PKI),非对称的密钥加密系统,其中网站服务器呈现使用浏览器的私有密钥进行解密的公共密钥。数字公共密钥证书(TLS/SSL证书)被用于保护HTTPS连接免受中间人(MITM)攻击。
证书是由认可的证书颁发机构(CA)发布的小型数据文件,该证书颁发机构通过证书的命名主体来证明公共密钥的所有权。通过这种方式,证书将网站的公共密码密钥数字地绑定到组织的详细信息。在该过程中,证书颁发机构(CA)在密码方面充当受信任的第三方(TTP)。如果网站向浏览器示出来自认可的证书颁发机构(CA)的证书,则浏览器可以确定该网站是真实且安全的。然而,当前的基础设施不能免受受损的证书颁发机构(CA)的影响,例如,当受信任的第三方(TTP)变得不受信任时。
已经提出了基于区块链技术的一些备选的去中心化域名系统(DNS)解决方案。这种基于区块链的解决方案可能对中间人(MITM)攻击更具免疫力。然而,这种系统仍然具有许多限制。第一,针对域名系统(DNS)和安全服务的操作方式,它们与当前的互联网基础设施不完全兼容,需要附加的浏览软件,诸如,插件甚或独立的浏览器。第二,它们需要区块链的本地副本。第三,仅支持一些新的顶级域。
也被称为区块链技术的分布式账本技术(DLT)被用于提高安全性和可用性。区块链是分布式计算架构,其中每个网络节点执行并记录相同的事务,这些事务被分组为区块。一次只能将一个区块添加至区块链,并且每个区块都包含数学证明,该数学证明验证它是否依次序地跟随前一区块。因此,区块链“分布式数据库”跨整个网络被保持一致。与账本的个体用户交互(事务)由强密码保护。维护和验证网络的节点可以通过编码到协议中的数学强制经济激励来激励。
在实施例中,例如,在一个所有者的所有智能设备中或者在单个家庭中的所有物联网(IoT)设备之中,区块链也可以私有地用作私有区块链。例如,可以采用私有区块链,旨在将区块链技术应用于单个用户(或家庭)的智能设备的管理,包括对设备、服务、应用的访问权限以及维护和提供银行密码。
图1示出了示例实施例的系统100的示意图。
在实施例中,提供了一种基于区块链的解决方案,其解决了已知解决方案的限制。它以与当前的互联网基础设施兼容的方式提供了域名系统(DNS)服务和安全特征。另外,例如,它直接从端用户的浏览器进行工作,而无需下载区块链的副本,安装插件或者需要独立的浏览器。
由于区块链存储了免受未经授权的修改的受信任数据,所以它是部署密码公共密钥基础设施(PKI)的良好基础,例如,公开和维护用于许多密码应用的公共密钥,诸如,SSH/SSL证书、所有权证明时间戳或者其他分布式服务。
在实施例中,基于区块链的基础设施将域名系统(DNS)和安全服务组合成一个。在这种设置中,域名注册数据库与其相关联的公共密钥一起被记录到区块链中。与当前的域名系统(DNS)类似,新的基于区块链的域名系统(DNS)在服务提供商之间被分发和维护。域名系统(DNS)服务器是区块链的节点。
例如,网络的(多个)管理员可以是公司或者一个或多个专业组织的联合体。
至少地,系统100包括至少一个网络节点110至130以用于通过公共网络150(诸如,互联网)收发系统100内的数据。
图1示出了网络150的实施例,其包括多个网络节点110至130并且可以由多个信息处理系统来实现。在实施例中,信息处理系统包括任何工具或工具集合,这些工具或工具集合可操作来计算、分类、处理、传输、接收、检索、发起、切换、路由、存储、显示、表明、检测、记录、再现、处理或利用任何形式的信息、情报或数据以用于商业、科学、控制、娱乐或其他目的。例如,信息处理系统可以是个人计算机、膝上型计算机、智能电话、平板设备、智能包或其他电子设备、网络服务器、网络存储设备、数据库、数据系统、交换路由器或其他网络通信设备或者任何其他合适的设备,并且可以在大小、形状、性能、功能性和价格上变化。进一步地,信息处理系统可以包括用于执行机器可执行代码的处理资源,诸如,中央处理单元(CPU)、可编程逻辑阵列(PLA)、诸如片上系统等嵌入式设备或者其他控制逻辑硬件。信息处理系统还可以包括一个或多个计算机可读介质以存储机器可执行代码,诸如,软件或数据。信息处理系统的附加组件可以包括可以存储机器可执行代码的一个或多个存储设备、用于与外部设备通信的一个或多个通信端口以及各种输入和输出(I/O)设备,诸如,键盘、鼠标和视频显示器。
例如,用户可以操作客户端节点120,该客户端节点120可以包括具有浏览器的用户设备。例如,用户设备可以包括诸如家用台式机、膝上型计算机、平板计算机、移动电话或智能手表。区块链技术可以用于管理所有这些设备。每个设备110至130与区块链170的节点相对应,该区块链170定义了包括多个节点110至130中的至少一个节点的受信任域名圆圈140。
在实施例中,安全去中心化域名系统100进一步包括域名节点130以用于将域注册事务记录到区块链170,该域注册事务包括域名、域主密钥以及用于服务器节点110的域证书信息。例如,域主密钥可以与预期域所有者的公共密钥相对应。
在实施例中,当注册域时,域主密钥与预期域所有者的公共密钥相对应。公共密钥具有对应的私有密钥对,其允许在区块链上对事务进行签名。这种事务可能涉及货币事务,诸如,支付费用以维护网络中的域注册。
在实施例中,域主密钥可以与允许其电子认证的预期域所有者的任何形式的标识相对应。例如,这可以是与至少一个DNS节点共享的秘密。
在一个实施例中,域主密钥和域证书信息可以被组合作为一个密钥/证书。在这种情况下,关于域主密钥所公开的不同实施例被理解为包括用于两个目的的这种组合密钥/证书。同样地,关于域证书所公开的不同实施例被理解为包括被用于两个目的的这种组合的密钥/证书。
在实施例中,服务器节点110(例如,公司web主机)可以部署它自己的区块链系统111以用于其内部使用。
域名节点130进一步被配置为将包括域公共密钥的域安全事务记录到区块链170以生成域名记录(用于服务器节点110),该域名记录包括域名、相关联的IP地址、域公共密钥和域证书信息,其中域安全事务使用域主密钥而被签名。
在实施例中,客户端节点120将域名请求121传输给域名节点130。作为响应,客户端节点120接收来自域名节点130的域名响应131,该域名响应131包括从区块链170的域名记录获取的域公共密钥、域证书信息和相关联的IP地址。此后,使用域公共密钥和域证书信息中的至少一项在客户端节点120与服务器节点110之间发起安全通信。仅为了简化图1,在节点110至130之间绘制消息121、122、131,而不经过网络150。
原则上,网站/域名、IP地址、公共密钥和证书信息被记录在区块链170中。针对域的所有者(例如,服务器节点110和子域111),域购买(注册)过程组合了注册和安全证书购买两者。
在实施例中,域名数据和安全证书数据被记录在区块链170中,并且在受信任域圆圈140的其他节点110至130之中分发/监测。受信任域圆圈140可以被理解为包括被记录为区块链170内的节点的所有节点110至130。受信任圆圈140排除了未记录在区块链170内的不受信任节点160。区块链170内的域名记录可以包括域名、相关联的IP地址、域公共密钥和域证书信息。
在实施例中,例如,节点110至130可以被记录在区块链170内,以包括但不限于设备ID、名称、类型、所有者、设备的生物识别能力、用户的生物识别标识符、通常位置、对敏感信息(包括网站和应用的密码)的访问权限/级别以及使用历史。
多个节点110至130中的任何节点可以具有公共密钥私有密钥对,其可以被用于区块链170上的认证和数字签名活动。
在实施例中,任何节点110至130(无论其属于哪个区块链节点层)都能够生成公共密钥私有密钥对以经由其公共密钥来与系统交互。
网络140、150表示可以由节点110至130中的任何节点访问的包括多个节点110、130的计算环境。系统100维护分布式数据结构,该分布式数据结构在本文中可以被称为安全分布式事务账本或区块链170,其可以被利用用于访问节点、其提供的服务或应用。该安全分布式事务账本可以支持各种功能,诸如,将计算任务从一个或多个系统分发到一个或多个其他系统,支持加密货币,消息传递等其他功能。例如,节点可以包括需要利用安全用户特定的登录/密码信息进行用户注册和访问控制的服务提供商系统。
例如,节点120可以包括用户设备、物联网(IoT)设备、传感器、集成设备或家用电子设备。例如,用户设备还可以包括基于腕部的设备、皮带设备、衣服集成设备或者生物识别传感器。
系统100可以包括不属于受信任域圆圈140但是对网络150可访问的又一节点160。
任何节点110至130可以生成与节点相关的事务数据,并且使用密码散列函数对数据进行散列,以创建密码散列区块。
在实施例中,受信任圆圈140可以包括网关节点110、120,其被配置为控制受信任域圆圈140内的其他节点111、125对受信任域圆圈140外的外部网络150的访问。
在实施例中,网关节点110可以在没有来自受信任域圆圈140内的其他节点111的散列的情况下接收数据,并且使用密码散列函数执行数据散列,以创建密码散列区块。
节点110至130可以接收通知信息,该通知信息包括与受信任圆圈140相关联的用户标识信息。例如,通知信息可以通过本地连接或者通过来自远程设备160的广域连接150从另一节点110至130被接收。例如,本地连接可以经由以下短程通信协议中的至少一项来实现:近场通信(NFC)、BluetoothTM、WiFi、以太网和通用串行总线(USB)。
此外,节点110至130可以接收指令信息以在包括受信任域圆圈140的区块链数据的数据存储装置上进行协作。
系统100可以包括不属于任何受信任圆圈140的节点160。这种节点160可以在没有与系统100内的其他节点110至130的安全连接的情况下进行通信。节点160可以被连接到公共网络150。
在实施例中,节点120、125被集成为单个设备。备选地,例如,网关节点120和另一节点125是分离的实体并经由本地短程通信接口被连接,并且网关节点120和远程节点160经由广域通信接口150被连接。还可以将节点120、125设置为可释放地彼此连接,使得在一个操作模式下它们被集成在一起,并且在第二操作模式下,它们是分离的实体。
在实施例中,在散列之后,受信任域圆圈节点125或网关节点120被配置为将与数字签名相关联的密码散列区块记录到区块链170的区块。
在实施例中,可以在散列之前对事务数据进行加密。例如,数据的不对称加密可以由受信任节点110至130执行。经加密的数据可以被存储到至少一个节点。在系统包括网关节点120的情况下,将大多数受信任圆圈相关数据存储在网关节点120内可能是有益的,因为在网关节点120内比在受信任节点125内更容易设置更大的存储器和存储容量。
节点120的所有者可以具有许多节点(例如,在IoT或者家庭中可以是这种情况)。
本地短程通信接口(例如,在受信任域圆圈140内)可以包括有线或无线接口。广域通信接口可以包括公共网络150,诸如,互联网。
在实施例中,例如,有线接口包括以下中的至少一个:以太网、通用串行总线(USB);以及高清多媒体接口(HDMI)。例如,无线接口包括以下中的至少一项:BluetoothTM网络;射频标识(RF-ID)网络;近场通信(NFC)网络;无线局域网;以及IEEE 802.11网络。
在实施例中,节点110至130中的至少一项的通信接口模块可以包括用于跟踪节点的位置信息的位置模块。例如,这种位置模块可以包括用于提供与基于卫星的全球定位系统(例如,GPS)的连接的模块、用于基于蜂窝的定位系统的模块、用于室内定位的模块、用于无线非蜂窝定位系统(例如,Wi-Fi)的模块或者用于混合定位系统的模块。
在实施例中,系统100包括服务器装置110、130,其包括例如用于通过与网络150的数据连接来存储和提供用户数据、服务数据和订户信息的存储设备。例如,服务数据可以包括配置数据、账户创建数据、节点的事务数据以及数字区块链数据。
在实施例中,节点120、125中的专有应用可以是服务的客户端应用,其服务器应用在系统100的服务器装置110、130上运行。专有应用可以捕获或处理用于服务的事务数据,并且为服务提供事务数据散列、区块链记录和收发。在实施例中,可以经由连接自动地收发从节点120、125到网络150和/或服务器110、130的信息。因此,节点120、125的用户可能不需要对服务进行任何控制。域系统服务器130还可以维护服务的账户创建过程细节,诸如,将新节点附接到系统140以及维护授权用户和设备。客户端节点120、125可能根本不需要区块链实现和区块链存储装置。
在实施例中,例如,可以在服务器130处维护早期事务数据、用户简档、设置、协议、智能合约和区块链的历史数据。
服务器110、130还可以为设备110至130的数据提供云服务。可选地,可以添加其他设备,诸如,用于维护、提供或处理节点数据的外围设备以及用于将外围设备连接至系统100的通信设备。
节点125可以作为传感器操作,诸如,生物识别传感器。
节点125也可以被应用于人体皮肤或身体。
节点125可以包括物联网(IoT)设备。
节点110至130可以包括用户界面,或者备选地可以根本不包括用户界面,而是经由另一受信任节点远程操作节点。节点110至130能够在本地执行软件程序代码。软件程序代码可以是客户端应用,诸如,电子钱包应用或者其服务器应用在系统100的服务器110、130上运行的服务的客户端应用。
本发明的实施例描述了如何实现系统100,其中网站/域名、IP地址、公共密钥和证书信息被记录在区块链170中。针对域的所有者,域购买(注册)过程组合了注册和安全证书购买。
实施例可以使用开放分布式账本来保持加密用户数据的散列记录。可以不对称地加密数据,使得任何人可以重做原始数据的加密。在加密之后,对数据进行散列并且将结果添加到账本上。可以创建被图示为所有节点110至130的受信任圆圈140的安全去中心化域名系统(DNS)服务,并且在安全且受信任的圆圈140内的节点之间共享和/或划分区块链数据。
区块链170是安全的,并且仅允许批准的节点110至130访问它。例如,所有设备110、130都是区块链170的节点,并且区块链170中记录的所有敏感信息可以实时地同步或者在每当节点110、130打开时同步。客户端节点120、125可以利用由区块链170提供的服务,但是不一定需要被记录在区块链170内。
此外,区块链170可以保持对网络内的所有设备的跟踪,并且提供关于它们对区块链网络的权限以及针对被存储在区块链170中的敏感信息的综合信息。例如,设备110至130的变化及其对区块链网络的权限将需要由分布式共识协议批准。
分布式共识协议可以被用于管理区块链170信息的访问权限。任何添加/删除设备/节点110至130以及处理高度敏感的信息将需要通过分布式共识协议从其他节点110至130批准,并且将相应地创建新区块。
例如,可以基于节点110至130的多数表决来添加新区块。
图2示出了示例实施例的系统的另一示意图。
利用区块链的安全去中心化域名系统200包括多个受信任节点210、220、230。可以以各种方式在节点210、220、230之间共享和/或划分数据。数据可以包括区块链数据和关联数据。
在实施例中,安全去中心化域名系统200的区块链被配置为由多个节点层200A、200B、200C访问和维护,该多个节点层包括具有不同角色的P2P网络的对等体。
在实施例中,例如,多个区块链节点层200A、200B、200C包括域名节点层200A、服务器节点层200B和客户端节点层200C。
在实施例中,单个区块链保持对所注册的域名和服务器节点的跟踪,以形成多个区块链节点层200A、200B、200C。因此,不同的区块链节点层与系统200内的不同角色和DNS使用相对应,而不是单独的区块链。
域名节点层200A包括至少一个域名节点230,该至少一个域名节点230被配置为控制域名系统和服务器节点210的域证书信息。
服务器节点层200B包括至少一个服务器节点210,该至少一个服务器节点210被配置为向域名节点层200A注册。例如,服务器节点210还可以包括递送一个站点的多个服务器。
客户端节点层200C包括至少一个客户端节点220,该至少一个客户端节点220被配置为查询和响应域名节点层200A以用于利用与服务器节点层200B的安全通信。例如,客户端节点220可以包括浏览器应用。
在实施例中,客户端节点220可以包括以下设备中的至少一项:
工业机器;
传感器;
个人计算机;
智能手机;
物联网(IoT)设备,
个人数字助理(PDA);
互联网平板计算机;
网络附加存储装置(NAS);以及
用户设备。
为了注册用于主机服务器210的域,可以利用加密货币协议和微支付的变型。比特币(BTC)可以被用作示例货币,但是可以使用与现实世界挂钩的任何货币,诸如,EUR、USD等。例如,用于服务器节点210的域的注册被配置为通过创建与区块链的事务211来完成,该事务211包含域名、预期域维护者的公共密钥以及用于支付运行域名系统(DNS)网络的连续费用(可以采用微支付的形式)的支付信息。
在实施例中,事务211可以包括例如以下信息:
{
域:“example.com”
Primary_key:“0fa87d....”,
缴存信息:“缴存账户”/0.5BTC
}
可以从对事务211进行签名的个人或组织所拥有的缴存账户获取费用金额。在每个区块(或每n个区块)处,费用量从域注册被提取,并且被存入区块链网络的矿工。该费用可以用于至少两个目的:1)使劫持域变得成本昂贵,以及2)激励运行域名系统(DNS)节点。
在实施例中,缴存信息可以定义缴存账户或虚拟钱包,从该缴存账户或虚拟钱包连续地取出钱并且将其分发给维护节点。
在实施例中,可以定义取消事务以允许所有者收回缴存的剩余部分。
在实施例中,进行虚拟货币事务(诸如,事务211)可以包括以下步骤:例如,付款人提供可以与具有加密货币的虚拟钱包相对应的账户信息;收款人从所述虚拟钱包接收预定量(费用)的加密货币;以及所述收款人将加密货币存入收款人的虚拟钱包中。
例如,在不受信任的环境(即,未经许可的账本)中,域名系统(DNS)节点210至220中的一个或多个节点可能具有不诚实的意图,并且尝试劫持域以便以更高的值转售。节点可以尝试劫持另一域的方式是通过持续地侦听传入的事务211,然后将主密钥改变为它自己的主密钥。由于尚未伪造用于事务211的区块,所以网络200将难以确定哪个主密钥是正确的所有者,并且通常,在注册时将存在窃取域的非零概率。为了避免这种情况,实施例被配置为使用随机数对事务211进行加密。一旦经加密的事务211已经被接受到区块链200中,随机数可以被释放到区块链200,并且区块链节点210至230可以读取和信任注册事务211。通过这种方式,防止不诚实的节点侦听网络,并且在发布新注册时快速获取域名。
在实施例中,在批准之后,域注册事务211被记录到区块链200,其中域注册事务211包括域名、域主密钥和用于服务器节点210的域证书信息。
在将用于服务器节点210的域注册到域名系统(DNS)注册表中(例如,注册到域名节点230或者区块链的一些其他区块链节点层200A)并且IP地址被指派之后,服务器节点210的所有者能够提交被包括在域名系统(DNS)记录中的公共密钥以及安全证书。
然后针对相关联的服务器节点210将包括域公共密钥的域安全事务212记录到区块链200以生成域名记录,该域名记录包括域名、相关联的IP地址、域公共密钥和域证书信息,其中域安全事务使用域主密钥而被签名。
作为示例,域安全事务212可以包括以下形式的信息:
{
域:“example.com”,
子域:“example.com”,
IP-address:″162.13.40.196",
证书:“677e132a...”
Public_key:“0db43s...”
}
域安全事务212由在注册期间给出的服务器节点210主密钥进行签名。在该设置中,组合域名注册商和证书颁发机构的功能。利用区块链200的分布式特征,任何用户可以通过建立区块链节点230来操作他/她自己的域名系统(DNS)服务器以提供本地和/或公共域名系统(DNS)服务。
类如加密货币中的常规事务,域地址、域名和域公共密钥对需要在区块链的新区块生成期间从其他节点210至230获得确认,并且实际上不受由中间人攻击改变的影响。
例如,区块链可以基于工作量证明(PoW)或权益证明(PoS)原则来设置,并且账本可以是被许可的或不被许可的。例如,在许可账本的情况下,共识算法可以使用诸如多数表决或拜占庭容错共识算法等机制。
在实施例中,基于域名系统(DNS)的区块链系统200在许可的链上运行。在这种情况下,可以借助于多数表决来添加新的域名系统(DNS)区块链节点210至230。为此,账本包含具有经过认证的域名系统(DNS)节点公共密钥的记录。这些密钥可以用作用于域名系统(DNS)服务本身的证书,并且客户端节点220浏览器在这种情况下可以要求来自域名系统(DNS)服务的密码身份证明。
在实施例中,在服务器节点210相关注册和认证事务211、212被验证并且关联的域信息被更新到区块链200中的域名记录之后,实现服务器节点210和客户端节点220之间的安全通信。
无论区块链系统200被许可或不被许可,当客户端节点220浏览器访问服务器节点210的网站时,浏览器针对期望域的地址和安全信息而首先查询域名系统(DNS)区块链系统200的域名节点230(可以是层200A内的任何服务器节点)。域名节点230将利用域的地址信息以及关联的安全信息进行响应,包括域的公共密钥和资源位置,诸如,IP地址。
在实施例中,客户端节点221即将开始与服务器节点215的安全通信。客户端节点221将域名请求222传输给与服务器节点215有关的域名节点230。域名请求222可以包括以下中的至少一项:域名以及与服务器节点215的域名相关联的IP地址。响应于接收到的域名请求222,域名节点230将域名响应223传输给客户端节点221。域名响应223包括从区块链系统200的域名记录检索的域公共密钥、域证书信息和相关联的IP地址。此后,可以使用域公共密钥和域证书信息中的至少一项发起客户端节点221与服务器节点215之间的安全通信。
可以使用区块链事务来收发作为区块链170内的受信任节点的服务器节点210的安全去中心化域名系统相关信息。
在实施例中,受信任节点可以属于多个区块链节点层200A、200B、200C中的至少一个。
可以根据区块链170的预定义设置的条款来执行对受信任域系统的节点的事务的验证和认证的促进。预定义设置可以包括受信任域系统的协议和智能合约中的至少一项。
在实施例中,节点210、215、220至221(即,节点层200B和200C)可以或可以不具有在其系统上运行的区块链和/或在其系统内维护的区块链数据。
在实施例中,可以使用自平衡二元搜索树(诸如,AVL树或Patricia树)在受信任域系统200的节点210、215、220至221、230之间划分区块链170数据。
在实施例中,使用AVL树。这种实现有时可能需要在节点之间收发大量数据,并且只应该在可能的情况下使用。在其他情况下,使用Patricia树(也称为基数树)可能更为可行。这种抽象数据类型的特定选择使得将数据更新路由到正确的节点变得容易,并且由于插入/删除时的数据交换而没有开销。
在应该找到工作量证明时,节点210、215、220至221、230可以组合来自事务的散列以形成Merkle树,或者简单地保持完整存储系统的状态的散列,这将进入下一区块。在一些实现中,两者兼顾可能是可行的,因为这允许实现快进机制,与仅将事务的Merkle散列存储在区块中所需的时间相比,该快进机制使新节点在更短时间内赶上网络。
除了分发存储之外,节点210、215、220至221、230还可以分发散列能力(hashpower)。例如,这可能发生在受信任圆圈内,并且可以通过创建池来跨网络的子集完成。与存储不同,散列能力的分发不需要信任,因此可以在许多不同的场景中容易地被实现。
值得注意的是,受信任域名系统200中的节点210、215、220至221、230在计算能力和/或存储容量方面可能不相等。节点还可以履行其区块链功能的不同角色和/或附加角色。例如,在一个场景中,一个节点可以充当网关(或路由器)。在IoT设置中,这种网关节点可以存储大多数区块链,而剩余节点是相当低功率和低容量的设备,其仅存储小部分区块链。在该场景内,网关可以确保新节点在被接受为集群的一部分之前无法与外界通信。
在实施例中,还可以覆盖不平衡情况,其中第二节点维护第一节点相关区块链数据以及第二节点相关区块链数据。
由于该协议具有共享存储装置的小型节点集群,所以与构建作为账本的特征的完全分布式存储装置相比,获得了更高级别的稳定性。例如,已知,一旦缩放到足够大的大小,AVL查找表很可能会崩溃。针对不同用户制作集群激励每个用户保持链的完整记录,因为如果没有它就无法获得奖励,这对于更一般的方案是至关重要的差异,在更一般的方案中,即使没有完整记录,用户也可以获得激励。
在实施例中,受信任域系统200的每个节点210、215、220至221、230可以维护受信任域系统200的其他受信任节点210、215、220至221、230的信息。其他受信任节点的信息可以包括每个受信任节点的公共密钥。其他受信任节点的信息还可以包括受信任节点的节点标识符,诸如,MAC(介质访问控制)地址。
在实施例中,节点标识符被指派给受信任域系统200的每个节点210、215、220至221、230,其中节点标识符可以包括公共密钥。
此外,可以将受信任域系统标识符指派给受信任域系统200。路由来自受信任域系统200外部的节点的事务可以基于受信任圆圈标识符。
事务数据可以被存储在节点210、215、220至221、230处,在其上添加非对称加密的散列以生成散列区块260。在一些实施例中,数据可以直接被存储在节点210、215、220至221、230上。
经非对称加密的数据的散列区块260可以被计算,并且被添加到区块链170。基于商定的设置,例如,将散列区块添加到区块链170的一部分,该部分由负责特定事务数据、散列区块260和相关联数据的节点210、215、220至221、230来维护。可以通过证明算法来保护区块链170,诸如,工作量证明、权益证明等。用户现在可以在任何时间对数据进行解密,并且将其发送给网络系统200内的另一节点(实际上,这可以是自动化的,并且用户/管理员简单地选择哪些节点可以连续地访问哪种类型的数据)。
然后,任何受信任节点可以通过首先对其进行非对称加密,计算散列并且验证其在区块链中的存在来验证这确实是由节点210、215、220至221、230收集的原始数据。节点210、215、220至221、230可以是节点网络中的节点,诸如,用于物联网(IoT)的网络。
在实施例中,区块链可以使用Merkle树而被实现。在Merkle树中聚合交换数据的散列值是有效的,因为Merkle树的“根”230可以提供所有个体散列值的压缩摘要,使得Merkle树降低存储要求。
分布式账本是可以安全地记录用户事务数据以用于通过完全透明的信息更新而跨网络共享的数据库。
区块链数据结构是有序的、向后链接的事务区块列表。区块链可以被存储为平面文件,或者被存储在简单的数据库中。区块260被“向后”链接,每个区块引用链中的前一区块。区块链通常被视为堆栈,其中区块被分层在顶部或者彼此相邻,并且第一区块充当堆栈的基础。堆叠在彼此之上的区块的可视化使得使用诸如“高度”等术语来指代与第一区块的距离,并且使用“顶部”或“尖端”来指代最近添加的区块。
在实施例中,可能想要存储未加密的数据,在这种情况下,在两种情况下都可以省略非对称加密。在一些实施例中,事务数据可以由节点210、215、220至221、230本身加密和散列,并且如果节点公共密钥被验证为经过认证的设备,则仅被接受到账本上。
在实施例中,服务器节点、物联网(IoT)设备或客户端节点可以包括用于非对称密码的私有密钥。非对称密码系统使用密钥对:可以广泛传播的公共密钥与私有密钥配对,其仅为所有者所知。可以达成两个功能:使用公共密钥来认证消息源自配对私有密钥的持有者;和/或利用公共密钥对消息进行加密以确保只有配对私有密钥的持有者才能对其进行解密。
私有密钥可以由节点210、215、220至221、230的制造商或经销商配置到节点210、215、220至221、230,或者由节点210、215、220至221、230生成。然后,当加入受信任域系统200时,节点210、215、220至221、230可以将其公共密钥更新到其他节点210、215、220至221、230。备选地,当加入受信任域系统200并且对应的公共密钥可用时,节点210、215、220至221、230可以从其他受信任节点210、215、220至221、230接收私有密钥。
在实施例中,设备从节点210、215、220至221、230接收事务数据。该设备使用密码散列函数来对事务数据进行散列,以创建密码散列区块,并且从区块链170获取参考密码散列区块。然后,设备可以将密码散列区块与从区块链170获取的区块相比较。响应于基于比较步骤在区块链170中找到匹配的密码散列区块,可以验证事务数据。
图3a示出了图示根据第一实施例的用于安全去中心化域名系统的计算机实现的方法的流程图。该方法开始于步骤310。在步骤311中,将域注册事务记录到区块链,该域注册事务包括域名、域主密钥和用于服务器节点的域证书信息。在步骤312中,将包括域公共密钥的域安全事务记录到区块链以生成域名记录,该域名记录包括域名、相关联的IP地址、域公共密钥和域证书信息,其中域安全事务使用域主密钥而被签名。在步骤313中,通过客户端节点将域名请求传输给域名节点。在步骤314中,通过客户端节点从域名节点接收域名响应,该域名响应包括从区块链的域名记录获取的域公共密钥、域证书信息和相关联的IP地址。在步骤315中,使用域公共密钥和域证书信息中的至少一个在客户端节点与服务器节点之间发起安全通信。在步骤316中,该方法结束。
图3b示出了图示根据第二实施例的用于安全去中心化域名系统的计算机实现的方法的流程图。该方法开始于步骤320。在步骤321中,客户端节点使用共享密钥对随机值进行加密,并且将经加密的随机传输给服务器节点。在步骤322中,服务器节点对接收到的经加密的随机值进行解密并使用服务器节点的私有密钥对所解密的随机值进行签名,使用共享密钥对签名随机值进行加密并将经加密的、所签名的随机值传输给客户端节点。在步骤323中,客户端节点使用共享密钥对经加密的签名随机值进行解密以生成签名随机值。在步骤324中,客户端节点将签名随机值与服务器节点的域公共密钥组合以验证服务器节点。在步骤325中,利用随机值以对客户端节点与服务器节点之间的安全通信的数据进行加密。在步骤326中,该方法结束。
在实施例中,客户端设备的浏览器应用使用例如Diffie-Hellman算法来计算共享密钥。然后,客户端设备的浏览器或一些其他应用对随机数进行加密,并且可能将其与客户端的公共密钥一起发送给位于由区块链域名节点指定的资源位置处的服务器节点。
主机web服务器对消息进行解密,对随机数进行签名,利用共享密钥对其进行加密,并且将其发送回客户端节点。
然后,客户端通过与从区块链域名节点获得的信息相比较来验证密钥是否利用正确的私有密钥被签名。
此后,例如,使用诸如AES、DES等类似的加密方法来将随机数用于进一步的加密。
图3c示出了图示根据第三实施例的用于安全去中心化域名系统的计算机实现的方法的流程图。该方法开始于步骤330。在步骤331中,客户端节点将客户端节点的公共密钥传输给服务器节点。在步骤332中,服务器节点使用客户端节点的公共密钥对域公共密钥和域证书信息进行加密以提供经加密的响应,并且将经加密的响应传输给客户端节点。在步骤333中,客户端节点使用客户端节点的私有密钥对加密响应进行解密以生成域公共密钥和域证书信息,并且将所生成的域证书信息与从域名节点接收到的域证书信息相比较以验证服务器节点。在步骤334中,客户端节点响应于验证服务器节点来生成会话密钥,使用域公共密钥对会话密钥进行加密,并且将经加密的会话密钥传输给服务器节点。在步骤335中,服务器节点使用域私有密钥对经加密的会话密钥进行解密。在步骤336中,利用会话密钥以对客户端节点与服务器节点之间的安全通信的数据进行加密。在步骤337中,该方法结束。
在实施例中,安全协议可以被实现为HTTPS协议的修改版本。
浏览器与具有地址信息主机web服务器连接并且请求安全连接。浏览器将在该步骤中向服务器提供其公共密钥。
主机web服务器通过发送其公共密钥和由区块链名称服务器发布的安全证书进行响应,该安全证书由浏览器的公共密钥进行加密。
然后,浏览器通过将证书与早期从名称服务器获得的证书相比较来检查证书是否有效。在验证之后,浏览器发送利用网络服务器的公共密钥进行加密的一次性会话密钥。
主机web服务器利用其私有密钥来对一次性会话密钥进行解密,并且此后可以通过使用一次性会话密钥在浏览器与主机web服务器之间执行安全通信。
在实施例中,仅一个公共密钥(来自区块链的域名节点的公共密钥)可以用于安全通信。然而,代替上面提出的实施例或者在它们之上添加,可以实现任何其他密钥生成方法/协议。
此外,通过使用单个CA可能导致的任何类型的先前信任问题不再是问题,因为对现有域名及其关联证书所做的任何改变将由账本上的多个区块链节点验证。
图3d示出了图示根据第四实施例的用于安全去中心化域名系统的计算机实现的方法的流程图。该方法开始于步骤340。在步骤341中,接收对区块链的域名记录的续订请求。在步骤342中,接收包括对域名记录的更新的域需求事务。在步骤343中,响应于事务根据去中心化域名系统的安全协议被确认到区块链中,记录域续订事务。在步骤344中,该方法结束。
在实施例中,网站/域的所有权可以基于定期更新策略。停止使用或抛弃的任何网站/域可以被记录到区块链。域名及其公共密钥对也可以手动续订。如果网站/域丢失了其私有密钥,则域的管理员也可以向区块链提出请求以单独续订其密钥对。例如,响应于来自多个节点的类似验证表决步骤,可以验证新的公共密钥。
在一些实施例中,域名系统(DNS)区块链名称服务器系统可以被用于某些级别的域地址,例如,仅用于互联网的顶级和第二级。在这种情况下,在注册期间获得的域的安全证书可以用作根证书。一旦由该根证书进行签名,相同域下的任何其他页面将被视为在相同级别上受信任。
在一些实施例中,例如,域名系统(DNS)区块链名称服务器可以包括不同级别的节点,诸如,顶级管理节点和一般的子级节点。在这种情况下,例如,顶级管理节点可以负责顶级(和第二级)域注册,并且子级节点可以是希望运行它自己的域名系统(DNS)名称服务以及颁发用于它自己的网页的安全证书的任何域。
在一些实施例中,公司(或多个公司)可以部署它自己的区块链域名系统以用于内部使用。
此外,可能可以事务域名以用于现金以及货币维护者。例如,如果区块链货币被链接到法定货币,则后者将是必要的。
图4呈现了可以应用本发明的各种实施例的节点或设备120的示例框图。例如,该设备可以是计算机设备、智能设备、用户设备、用户可穿戴设备、传感器设备或者集线器设备。图4所描述的所有元件不必在相同设备中被实现。
在实施例中,传感器470可以被实现为经由通信接口450与其他设备通信的单独设备(例如,用户可穿戴设备)或者被实现为设备内的集成传感器460。用户界面440也可以被实现在经由通信接口450连接至设备120的另一设备中。例如,这种设备可以包括移动电话、智能电话或平板计算机。在实施例中,设备120可以与多个用户的多个传感器460、470(内部和外部传感器)通信。传感器460、470可以用作生物识别传感器以标识设备的用户,以使用例如指纹检测或视网膜检测。
设备120的一般结构包括用户界面440、通信接口450、处理器410和被耦合到处理器410的存储器420。设备120进一步包括软件430,该软件430被存储在存储器420中并且可操作来加载到处理器410中并在处理器410中被执行。软件430可以包括一个或多个软件模块,并且可以处于计算机程序产品的形式。不是图4的所有元件都是必需的,但是对于设备120来说是可选的,诸如,用户界面440和传感器460、470。
处理器410可以是例如中央处理单元(CPU)、微处理器、数字信号处理器(DSP)、图形处理单元等。图4示出了一个处理器410,但是设备120可以包括多个处理器。
存储器420可以是例如非易失性或易失性存储器,诸如,只读存储器(ROM)、可编程只读存储器(PROM)、可擦除可编程只读存储器(EPROM)、随机存取存储器(RAM)、闪速存储器、数据盘、光学存储装置、磁性存储装置、智能卡等。设备120可以包括多个存储器。存储器420可以被构造为设备120的一部分,或者它可以被用户插入到设备120的插槽、端口等。存储器420可以用于存储数据的唯一目的,或者它可以被构造为用于其他目的的装置的一部分,诸如,处理数据。
例如,用户界面440可以包括用于例如经由键盘、触摸板、运动传感器、设备120的触摸屏接收来自设备120的用户的输入的电路系统、语音识别电路系统、手势识别电路系统或者附件设备,诸如,耳机或遥控器。此外,例如,用户界面440可以包括用于经由显示器、扬声器、触敏显示器或触觉反馈设备为用户提供输出的电路系统。
通信接口模块450实现数据传输的至少一部分。通信接口模块450可以包括例如无线或有线接口模块。无线接口可以包括诸如WLAN、蓝牙、红外(IR)、射频标识(RF ID)、NFC、GSM/GPRS、CDMA、WCDMA、长期演进(LTE)、5G或任何适当的未来无线电技术无线电模块。例如,有线接口可以包括诸如以太网、通用串行总线(USB)、高清多媒体接口(HDMI)、Syndicatdes Constructeursd'Appareils Radiorecepteurs et Televiseurs(SCART)或美国无线电公司(RCA)。通信接口模块450可以被集成到设备120中或者被集成到可以插入到设备120的合适插槽或端口中的适配器、卡等中。通信接口模块450可以支持一种无线电接口技术或者多种技术。通信接口模块450可以支持一种有线接口技术或者多种技术。设备120可以包括多个通信接口模块450。
在实施例中,例如,通信接口模块450可以包括用于跟踪设备120的位置的位置模块。这种位置模块可以包括用于基于卫星的全球定位系统(例如,GPS)的模块、用于基于蜂窝的定位系统的模块、用于无线非蜂窝定位系统(例如,Wi-Fi)的模块或者用于混合定位系统的模块。
技术人员认识到,除了图4所示的元件之外,设备120可以包括其他元件,诸如,麦克风、扬声器、传感器、相机以及附加电路系统,诸如,输入/输出(I/O)电路系统、存储器芯片、专用集成电路(ASIC)、用于特定目的的处理电路系统(诸如,源编码/解码电路系统)、信道编码/解码电路系统、加密/解密电路系统等。另外,设备120可以包括一次性或可充电电池(未示出)以在外部电源不可用时为外部电源供电。
在实施例中,设备120包括附加传感器460、470以提供与事务数据相关联的元数据(例如,生物识别信息)。元数据可以包括以下中的至少一项:指纹信息;视网膜扫描信息;移动信息;以及位置信息。
在实施例中,设备120包括语音或手势识别部件。使用这些部件,可以从语音或手势识别预定义的短语或手势,并且将其转换为设备120的控制信息。
例如,在各种实施例中所提供的用户可穿戴设备及其传感器可以被用于例如指纹检测和视网膜扫描检测。
图5示出了示例实施例的服务器装置110、130的框图。
服务器装置110、130的一般结构包括处理器510和被耦合到处理器510的存储器520。服务器装置110、130进一步包括软件530,该软件530存储在存储器520中并且可操作以加载到处理器510中并在处理器510中执行。软件530可以包括一个或多个软件模块,并且可以是计算机程序产品的形式。
处理器510可以是例如中央处理单元(CPU)、微处理器、数字信号处理器(DSP)、图形处理单元等。图5示出了一个处理器510,但是服务器装置110、130可以包括多个处理器。
存储器520可以是例如非易失性或易失性存储器,诸如,只读存储器(ROM)、可编程只读存储器(PROM)、可擦除可编程只读存储器(EPROM)、随机存取存储器(RAM)、闪速存储器、数据盘、光学存储装置、磁性存储装置、智能卡等。服务器装置110、130可以包括多个存储器。存储器520可以被构造为服务器装置110、130的一部分,或者它可以被用户插入到服务器装置110、130的插槽、端口等。存储器520可以用于存储数据的唯一目的,或者它可以被构造为服务其他目的的装置的一部分,诸如,处理数据。
通信接口模块550实现数据传输的至少一部分。通信接口模块550可以包括例如无线或有线接口模块。无线接口可以包括诸如WLAN、蓝牙、红外(IR)、射频标识(RF ID)、GSM/GPRS、CDMA、WCDMA、长期演进(LTE)、5G或任何适当的未来无线电技术无线电模块。例如,有线接口可以包括诸如以太网或通用串行总线(USB)。通信接口模块550可以被集成到服务器装置110、130中或者被集成到可以插入到服务器装置110、130的合适插槽或端口中的适配器、卡等中。通信接口模块550可以支持一种无线电接口技术或者多种技术。可以使用通信接口550来收发节点120与系统服务器110、130之间的注册、证书和安全通信相关信息。
应用服务器540提供例如与被存储在用户数据库570中的域名和相关联安全信息以及被存储在服务数据库560中的服务信息相关的应用服务。例如,服务信息可以包括内容信息、内容管理信息或者度量信息。例如,服务信息还可以包括与事务数据、早期事务数据的历史数据或区块链相关的信息。
技术人员认识到,除了图5所示的元件之外,服务器装置110、130可以包括其他元件,诸如,麦克风、显示器以及附加电路系统,诸如,输入/输出(I/O)电路系统、存储器芯片、专用集成电路(ASIC)、用于特定目的的处理电路系统(诸如,源编码/解码电路系统)、信道编码/解码电路系统、加密/解密电路系统等。
在实施例中,域名系统的受信任圆圈最初可以由系统内的任何受信任节点根据预定义设置而被设置。针对具有更好的处理能力、安全性、存储器容量和/或供电的节点,可以平衡散列和加密。例如,散列和加密也可以是基于用户设置或基于本地系统管理员用户可变的。
图6示出了示例实施例的系统200的另一示意图。
在实施例中,尽管区块仅具有一个父区块,但是它可以暂时具有多个子区块。每个子区块引用与其父区块相同的区块,并且在“先前区块散列”字段中包含相同的(父区块)散列。最终,只有一个子区块成为私有区块链170的一部分。即使区块可能具有多于一个子区块,但是每个区块可以具有仅一个父区块。这是因为区块具有引用其单个父区块的单个“先前区块散列”字段。
在实施例中,区块链170内的每个区块可以由使用密码散列算法(例如,SHA256)在区块的报头上生成的散列来标识。每个区块还通过区块报头中的“先前区块散列”字段引用前一区块(称为父区块)。换言之,每个区块在它自己的报头内包含其父区块的散列。将每个区块链接至其父区块的散列序列创建了一直返回到曾经创建的第一区块的链(被称为起源区块)。
在实施例中,区块链170中的每个区块可以使用Merkle树来包含区块中的所有事务的概要。Merkle树(也称为二元散列树)是被用于有效地总结和验证大型数据集的完整性的数据结构。Merkle树是包含密码散列的二元树。术语“树”在计算机科学中被用于描述分支数据结构,但是这些树通常颠倒显示,其中,“根”在图的顶部并且“叶”在图的底部。
在实施例中,省略Merkle树,并且在区块链170中将“事务”区块直接链接在一起。
数字区块链170与在参与受信任域系统200的所有受信任节点之间共享的分布式密码账本相对应,通过该分布式密码账本记录每个成功执行的事务。
在实施例中,通过将来自区块链170的先前区块信息(例如,区块报头的散列)与附加信息组合来处理区块210,从而将区块210与区块链170链接在一起。例如,附加事务信息可以包括时间戳、受信任域系统的设备信息、事务历史、登录信息、密码、用户规定的敏感数据、令牌和/或数字签名。另一受信任节点可以重新计算针对区块的值,通常是区块报头的散列以及来自事务的散列信息,直到所产生的值满足有效性要求。例如,在经由散列函数(例如,SHA256、Scrypt等)处理区块210的实施例中,另一受信任节点可以递增暂时值(nonce value),例如,直到生成具有期望的工作量证明特性的散列,可能在其他因素之中存在许多前导零比特。
在实施例中,在图6中图示了前一区块210和当前区块220,并且说明了前一区块210的组合散列如何被用于在区块链170中生成当前区块220。
在一个实施例中,可以在每个节点/设备处生成一对公共密钥和秘密密钥,以便实施密码数字签名方案。公共密钥可以用作节点/设备标识符(用于代替MAC地址),而私有密钥安全地存储在节点/设备中并且它不离开节点。私有密钥可以存储在“安全元件”内,诸如,与节点/设备的其余部分具有有限输入/输出的单独电子模块,其能够执行数字签名。
在实施例中,可以利用公共密钥密码的不同用法。为了确保机密性,可以使用公共密钥加密,其中利用受信任节点的公共密钥来对消息进行加密。消息无法由不具有匹配的私有密钥的任何人进行解密,因此推测这个人是该密钥的所有者以及与公共密钥相关联的人。
为了确保防篡改,可以利用数字签名(签署),其中消息利用第一受信任节点的私有密钥进行签名,并且可以由访问第一受信任节点公共密钥的任何第二受信任节点验证。该验证证明了第一受信任节点能够访问私有密钥,因此很可能是与公共密钥相关联的人。这还确保了消息未被篡改,因为对消息的任何操纵都将导致编码消息摘要的改变,否则在第一节点(发送者)与第二节点(接收者)之间保持不变。
在实施例中,图6图示了用于生成事务记录的一种备选方案。代替生成包括所有域名和安全相关数据的事务区块,可以针对不同类型的敏感数据生成多个区块。例如,可以生成事务记录240以用于记录例如包括域名、相关联的IP地址、域公共密钥和域证书信息的域名记录。例如,可以针对域的维护费用布置另外的记录250,并且针对域的续订和相关费用布置事务记录260。
在实施例中,可以将新节点/设备添加到受信任域名系统200,并且可以将新区块添加到区块链170。
例如,用户的新节点/设备可以经由以下步骤加入区块链170网络。不是所有步骤都必须执行该程序。
第一,可以将具有合适的用户界面的区块链管理软件安装到节点/设备(例如,钱包应用)。
第二,新服务器节点/设备被连接到区块链网络上的其他受信任节点/设备。例如,这可以利用蓝牙或WiFi等直接连接或互联网协议来完成。
第三,服务器节点的管理员可以初始化关于可用区块链170的查询,并且请求加入受信任域名系统200。
第四,已经在区块链170上的受信任服务器节点/设备收集必要信息,并且根据分布式共识协议将请求推送到至少一个安全受信任节点/设备以进行确认。例如,该请求可以发送给具有生物识别传感器的受信任节点以确保确认的有效性。备选地,可以选择具有较高安全级别的较高区块链节点层的目标节点的随机选择,诸如,域名节点层。
第五,域名节点的管理员必须经由其他节点/设备中的一个来确认以允许新服务器节点/设备加入受信任域名系统的网络并且使用区块链170。
第六,当分布式共识协议接收到(多个)所有肯定答案时,对当前区块进行散列,并且新区块将被添加到区块链170并被同步到受信任系统的所有域名节点/设备。加入区块链170网络的新服务器节点/设备的通知被推送到受信任系统的期望服务器节点/设备。
在实施例中,改变节点/设备属性并且移除节点/设备可以遵循上面公开的类似过程,但是可能仅需要来自一个节点/设备的批准。可以在受信任圆圈的分布式共识协议和/或用户特定设置中设置级别或所需安全性。
此外,例如,可以将新区块添加至区块链170以包括改变公共密钥、私有密钥、证书、缴存信息、费用信息、密码、金融事务和用户改变某些信息的请求。
分布式共识协议可以采用许多不同的形式,诸如,以下方法中的一个或其组合。
可以随机挑选受信任圆圈的单个高安全性节点,以判定是否可以将区块添加至区块链170。这种随机选择可以通过不同方式有效地实现,比如,使用随机数发生器,使用工作量证明协议或权益证明协议。
如果可以将区块添加到区块链170,则高安全性节点的多数表决建立。这可能需要来自不同节点/设备的多次确认,但是例如,当高安全性节点/设备请求加入区块链170网络时,值得这样做。在这种情况下,添加新区块可能会造成安全威胁,并且在从不同节点/设备接受区块之前,需要这种较高级别的安全性。
如果高安全性节点请求区块,则可以立即将其添加到区块链170。这是快速且方便的,例如,当执行非关键更新并且可以认为安全威胁足够低以便不需要多数表决时。
在优选实施例中,应该使用高安全性节点之间的多数表决,因为与单个节点相比这使攻击网络更难。
在应该找到工作量证明(POW)时,节点可以组合来自事务的散列以形成Merkle树230,或者简单地保持完整存储系统的状态的散列,这将进入下一区块。在一些实现中,两者兼顾可能是可行的,因为这允许实现快进机制,与仅将事务的Merkle散列存储在区块中所需的时间相比,该快进机制使新节点在更短时间内赶上网络。
除了分发存储之外,节点还可以分发散列能力。例如,这可能发生在受信任圆圈内,并且可以通过创建池来跨网络的子集完成。与存储不同,散列能力的分发不一定需要信任,因此可以在许多不同的场景中容易地实施。
在实施例中,事务数据可以由第一节点生成。使用密码散列函数来对事务数据进行散列,以创建密码函数区块,该密码散列区块与第一节点的数字签名相关联并且可以被传输给区块链。
在实施例中,将节点标识符分配给每个节点,其中节点标识符可以包括公共密钥。
此外,受信任用户圆圈标识符可以分配给受信任圆圈。路由来自受信任圆圈外部的节点的事务可以基于受信任圆圈标识符。
诸如域名相关数据项等事务数据可以被存储在添加非对称加密的散列的节点处以生成散列区块210、220。在一些实施例中,数据可以被直接存储在节点上。
可以计算非对称加密数据的散列区块210、220并且将其添加到区块链170。区块链170可以由证明算法保护,诸如,工作量证明、权益证明等。用户/节点现在可以在任何时间对数据进行解密,并且将其发送给网络系统200内的第三方或对等体(实际上,这可以是自动化的,并且用户/管理员简单地选择哪些第三方或对等体可以连续地访问哪种类型的数据)。
在实施例中,区块链170可以使用Merkle树230来实现。在Merkle树230中聚合交换数据的散列值是有效的,因为Merkle树230的“根”210、220提供所有单独散列值的压缩摘要,使得Merkle树230降低存储要求。
分布式账本是可以安全地记录用户事务数据以用于通过完全透明的信息更新跨网络共享的数据库。区块链数据结构170是有序的、向后链接的事务区块列表。区块链170可以被存储为平面文件,或者被存储在简单的数据库中。区块210、220“向后”链接,每个区块引用链中的前一区块。区块链170通常被视为垂直堆栈,其中,区块被分层在彼此之上,并且第一区块充当堆栈的基础。堆叠在彼此之上的区块的可视化使得使用诸如“高度”等术语来指代与第一区块的距离,并且使用“顶部”或“尖端”来指代最近添加的区块。
尽管区块仅具有一个父区块,但是它可以暂时具有多个子区块。每个子区块引用与其父区块相同的区块,并且在“先前区块散列”字段中包含相同的(父区块)散列。最终,只有一个子区块成为区块链170的一部分。即使区块可能具有多于一个子区块,但是每个区块210、220可以具有仅一个父区块。这是因为区块具有引用其单个父区块的单个“先前区块散列”字段。
区块链170内的每个区块可以由使用SHA256密码散列算法在区块的报头上生成的散列标识。每个区块还通过区块报头中的“先前区块散列”字段引用前一区块(称为父区块)。换言之,每个区块在它自己的报头内包含其父区块的散列。将每个区块链接到其父区块的散列序列创建了一直返回到曾经创建的第一区块的链(被称为起源区块)。
在实施例中,区块链170中的每个区块使用Merkle树230包含区块中的所有事务的概要。Merkle树230(也称为二元散列树)是用于有效地总结和验证大型数据集的完整性的数据结构。Merkle树是包含密码散列的二元树。术语“树”在计算机科学中用于描述分支数据结构,但是这些树通常颠倒显示,其中,“根”在图的顶部并且“叶”在图的底部。
在实施例中,省略Merkle树,并且在私有区块链170中将“事务”区块直接链接在一起。
数字区块链170与在经过认证且受信任的节点之间共享的分布式密码账本相对应,通过该分布式密码账本记录每个成功执行的事务。
在实施例中,可能想要存储未加密的数据,在这种情况下,在两种情况下都可以省略非对称加密。在一些实施例中,事务数据可以由节点本身加密和散列,并且如果节点公共密钥被验证为经过认证的设备,则仅被接受到账本230上。
在实施例中,包括IoT(物联网)设备或节点的每个设备可以包括用于非对称密码的私有密钥。非对称密码系统使用密钥对:可以被广泛传播的公共密钥与私有密钥配对,私有密钥仅为所有者所知。可以实现两个功能:使用公共密钥来认证敏感数据项或消息源自配对私有密钥的持有者;或者利用公共密钥对消息或数据项进行加密以确保只有配对私有密钥的持有者才能对其进行解密。
私有密钥可以由节点的制造商或经销商配置到节点。然后,当加入例如受信任圆圈时,节点可以将其公共密钥更新到受信任圆圈的(多个)其他受信任节点。备选地,当加入受信任圆圈并且对应公共密钥可由节点可用时,节点可以接收来自另一节点的私有密钥。
在不以任何方式限制下面出现的权利要求的范围、解释或应用的情况下,本文公开的一个或多个示例实施例的技术效果是提高了互联网服务的安全性。
本文公开的一个或多个示例实施例的另一技术效果是区块链的分布式特征将提供不受拒绝服务(DoS)攻击影响的域名系统(DNS)服务。
本文公开的一个或多个示例实施例的更进一步的技术效果是区块链的安全特征保证了所有互联网网站不受中间人(MITM)攻击的影响。
本文公开的一个或多个示例实施例的更进一步的技术效果是使单个受损CA的风险最小化。
本文公开的一个或多个示例实施例的更进一步的技术效果是创建了域/网站所有者的简化过程。
本文公开的一个或多个示例实施例的更进一步的技术效果是可以在一个地方购买具有安全特征的新域。
本文公开的一个或多个示例实施例的更进一步的技术效果是系统不要求用户具有自定义浏览器或者在用户节点/设备中运行区块链节点。
本文公开的一个或多个示例实施例的又一技术效果是不太复杂的系统和节点需要具有有限的存储和处理要求。
在不以任何方式限制下面出现的权利要求的范围、解释或应用的情况下,本文公开的一个或多个示例实施例的技术效果是提供了改进的事务数据服务系统。
如果需要的话,本文讨论的不同功能可以以不同顺序执行和/或彼此并发地被执行。此外,如果需要的话,上述功能中的一个或多个可以是可选的或者可以组合。
尽管在独立权利要求中陈述了本发明的各个方面,但是本发明的其他方面包括来自所描述的实施例和/或从属权利要求的特征与独立权利要求的特征的其他组合,而不是仅仅在权利要求中明确陈述的组合。
在本文中还要注意的是,尽管上文描述了本发明的示例实施例,但是这些描述不应该被视为限制性的。相反,存在可以在不脱离所附权利要求限定的本发明的范围的情况下做出的若干变型和修改。

Claims (33)

1.一种用于安全去中心化域名系统的计算机实现的方法,所述方法包括:
将域注册事务记录到区块链,所述域注册事务包括域名、与域公共密钥相对应的域主密钥以及用于服务器节点的域证书信息;
将包括所述域公共密钥的域安全事务记录到所述区块链以生成域名记录,所述域名记录包括所述域名、相关联的IP地址、所述域公共密钥和所述域证书信息,其中所述域安全事务使用所述域主密钥而被签名;
通过客户端节点向域名节点传输域名请求;
通过所述客户端节点接收来自所述域名节点的域名响应,所述域名响应包括从所述区块链的所述域名记录获取的所述域公共密钥、所述域证书信息和所述相关联的IP地址;以及
使用所述域公共密钥和所述域证书信息中的至少一项在所述客户端节点与所述服务器节点之间发起安全通信。
2.根据权利要求1所述的方法,其中所述域注册事务进一步包括与所述域相关联的缴存信息,其中在每n个区块处,与所述缴存信息相对应的量是响应于域注册而被提取的,并且被缴存到区块链网络的矿工。
3.根据权利要求1或2所述的方法,进一步包括:
使用随机数来加密所述域注册事务;以及
响应于所述域注册事务根据所述去中心化域名系统的安全协议而被确认到所述区块链中,将所述随机数释放到所述区块链。
4.根据任何权利要求1至3所述的方法,其中所述域安全事务根据所述去中心化域名系统的安全协议被记录到所述区块链。
5.根据权利要求3或4所述的方法,其中所述安全协议包括以下中的至少一项:工作量证明(PoW)、权益证明(PoS)、实用拜占庭容错(PBFT)和多数表决算法。
6.根据任何权利要求1至5所述的方法,所述域名请求包括以下中的至少一项:域名以及与所述域名相关联的IP地址。
7.根据任何权利要求1至6所述的方法,进一步包括:
通过所述客户端节点,使用共享密钥来加密随机值,并且向所述服务器节点传输经加密的所述随机值;
通过所述服务器节点来解密经加密的所述随机值并且使用所述服务器节点的私有密钥对所解密的所述随机值进行签名,使用所述共享密钥来加密所签名的所述随机值并且向所述客户端节点传输经加密的、所签名的所述随机值;
通过所述客户端节点,使用所述共享密钥来解密经加密的、所签名的所述随机值,以生成所签名的所述随机值;
通过所述客户端节点,将所签名的所述随机值与所述服务器节点的所述域公共密钥组合以验证所述服务器节点;以及
将所述随机值用于加密所述客户端节点与所述服务器节点之间的所述安全通信的数据。
8.根据任何权利要求1至6所述的方法,进一步包括:
通过所述客户端节点,向所述服务器节点传输所述客户端节点的公共密钥;
通过所述服务器节点,使用所述客户端节点的所述公共密钥加密所述域公共密钥和所述域证书信息以提供经加密的响应,并且向所述客户端节点传输经加密的所述响应;
通过所述客户端节点,使用所述客户端节点的私有密钥解密经加密的所述响应以生成所述域公共密钥和所述域证书信息,将所生成的所述域证书信息与从所述域名节点接收到的所述域证书信息相比较以验证所述服务器节点;
通过所述客户端节点,响应于验证所述服务器节点来生成会话密钥,使用所述域公共密钥加密所述会话密钥,并且向所述服务器节点传输经加密的所述会话密钥;
通过所述服务器节点,使用域私有密钥解密经加密的所述会话密钥;以及
将所述会话密钥用于加密所述客户端节点与所述服务器节点之间的所述安全通信的数据。
9.根据任何权利要求1至8所述的方法,进一步包括:
接收针对所述区块链的所述域名记录的续订请求;
接收域续订事务,所述域续订事务包括对所述域名记录的更新;以及
响应于所述事务根据所述去中心化域名系统的安全协议被确认到所述区块链中,记录所述域续订事务。
10.根据任何权利要求1至9所述的方法,其中所述安全去中心化域名系统的所述区块链包括多个区块链节点层。
11.根据权利要求10所述的方法,其中所述多个区块链节点层包括:
域名节点层;
服务器节点层;以及
客户端节点层。
12.根据权利要求11所述的方法,其中所述域名节点层包括至少一个域名节点,所述至少一个域名节点被配置为控制所述域名系统和所述服务器节点的所述域证书信息。
13.根据权利要求11所述的方法,其中所述服务器节点层包括至少一个服务器节点,所述至少一个服务器节点被配置为向所述域名节点层进行注册。
14.根据权利要求11所述的方法,其中所述客户端节点层包括至少一个客户端节点,所述至少一个客户端节点被配置为查询和响应所述域名节点层以用于利用与所述服务器节点层的安全通信。
15.根据任何权利要求1至14所述的方法,其中所述客户端节点包括浏览器应用。
16.根据权利要求1至15中任一项所述的方法,进一步包括:
在所述区块链内定义记录,所述记录标识至少一个受信任节点,其中所述受信任节点由唯一节点标识符来标识。
17.根据权利要求16所述的方法,其中所述唯一标识符包括公共密钥,所述公共密钥与被存储在所述受信任节点中的秘密密钥相关联。
18.根据权利要求17所述的方法,所述方法进一步包括:
在每个节点处生成一对所述公共密钥和所述秘密密钥。
19.根据权利要求18所述的方法,所述方法进一步包括:
将所述秘密密钥存储在所述节点处的安全元件内,所述安全元件包括在所述节点内具有有限输入/输出的单独电子模块。
20.根据任何权利要求1至19所述的方法,所述方法进一步包括:
在所述区块链内定义域名记录,所述域名记录包括所述域名、所述相关联的IP地址、所述域公共密钥和所述域证书信息。
21.根据权利要求11所述的方法,进一步包括:
接收请求以向至少一个区块链节点层添加或移除节点;
经由所述多个节点所组成的分布式共识系统将所述请求作为事务发布到至少一个区块链节点层的第二节点;以及
响应于所述请求事务根据所述分布式共识系统由所述第二节点确认,将所述节点的添加或移除作为事务而记录到所述区块链。
22.根据权利要求21所述的方法,进一步包括:
基于安全标准选择所述第二节点。
23.根据任何权利要求1至22所述的方法,进一步包括根据所述区块链的预定义设置的条款来促进所述节点的事务的验证和认证。
24.根据任何权利要求1至23所述的方法,其中至少一个节点包括IoT(物联网)设备。
25.根据任何权利要求1至24所述的方法,其中至少一个节点被连接到包括公共网络的广域通信接口。
26.根据任何权利要求1至25所述的方法,其中区块链事务包括:
节点的公共密钥;以及
数据项的散列值。
27.根据任何权利要求1至26所述的方法,进一步包括:
通过第一节点对所述数据项进行签名;以及
响应于通过所述第一节点对所述数据项进行签名来将所签名的所述数据项作为事务而记录到所述区块链。
28.一种用于安全去中心化域名系统的计算机实现的方法,所述方法包括:
将域注册事务记录到区块链,所述域注册事务包括域名、与域公共密钥相对应的域主密钥以及用于服务器节点的域证书信息;
将包括所述域公共密钥的域安全事务记录到所述区块链以生成域名记录,所述域名记录包括所述域名、相关联的IP地址、所述域公共密钥和所述域证书信息,其中所述域安全事务使用所述域主密钥而被签名;
从客户端节点接收对域名节点的域名请求;
向所述客户端节点传输来自所述域名节点的域名响应,所述域名响应包括从所述区块链的所述域名记录获取的所述域公共密钥、所述域证书信息和所述相关联的IP地址,其中安全通信被配置为使用所述域公共密钥和所述域证书信息中的至少一项在所述客户端节点与所述服务器节点之间被发起。
29.一种服务器装置,所包括:
用于收发信息的通信接口;
至少一个处理器;以及
包括计算机程序代码的至少一个存储器;
所述至少一个存储器和所述计算机程序代码被配置为与所述至少一个处理器一起使所述服务器装置:
将域注册事务记录到区块链,所述域注册事务包括域名、与域公共密钥相对应的域主密钥以及用于服务器节点的域证书信息;
将包括所述域公共密钥的域安全事务记录到所述区块链以生成域名记录,所述域名记录包括所述域名、相关联的IP地址、所述域公共密钥和所述域证书信息,其中所述域安全事务使用所述域主密钥而被签名;
从客户端节点接收对域名节点的域名请求;
向所述客户端节点传输来自所述域名节点的域名响应,所述域名响应包括从所述区块链的所述域名记录获取的所述域公共密钥、所述域证书信息和所述相关联的IP地址,其中安全通信被配置为使用所述域公共密钥和所述域证书信息中的至少一项在所述客户端节点与所述服务器节点之间被发起。
30.一种设备,包括:
用于收发信息的通信接口;
至少一个处理器;以及
包括计算机程序代码的至少一个存储器;
所述至少一个存储器和所述计算机程序代码被配置为与所述至少一个处理器一起使所述设备:
从客户端节点传输对域名节点的域名请求,其中域注册事务被记录到区块链,所述域注册事务包括域名、与域公共密钥相对应的域主密钥以及用于服务器节点的域证书信息;并且进一步地,其中包括所述域公共密钥的域安全事务被记录到所述区块链以生成域名记录,所述域名记录包括所述域名、相关联的IP地址、所述域公共密钥和所述域证书信息,其中所述域安全事务使用所述域主密钥而被签名;
通过所述客户端节点接收来自所述域名节点的域名响应,所述域名响应包括从所述区块链的所述域名记录获取的所述域公共密钥、所述域证书信息和所述相关联的IP地址;以及
使用所述域公共密钥和所述域证书信息中的至少一项在所述客户端节点与所述服务器节点之间发起安全通信。
31.根据权利要求30所述的设备,包括以下中的至少一项:
工业机器;
传感器;
个人计算机;
智能手机;
物联网(IoT)设备;
个人数字助理(PDA);
互联网平板计算机;
网络附加存储装置(NAS);以及
用户设备。
32.一种被体现在计算机可读非瞬态介质上的计算机程序,包括计算机可执行程序代码,所述计算机可执行程序代码在由服务器装置的至少一个处理器执行时使所述服务器装置:
将域注册事务记录到区块链,所述域注册事务包括域名、与域公共密钥相对应的域主密钥以及服务器节点的域证书信息;
将包括所述域公共密钥的域安全事务记录到所述区块链以生成域名记录,所述域名记录包括所述域名、相关联的IP地址、所述域公共密钥和所述域证书信息,其中所述域安全事务使用所述域主密钥而被签名;
从客户端节点接收对域名节点的域名请求;
向所述客户端节点传输来自所述域名节点的域名响应,所述域名响应包括从所述区块链的所述域名记录获取的所述域公共密钥、所述域证书信息和所述相关联的IP地址,其中安全通信被配置为使用所述域公共密钥和所述域证书信息中的至少一项在所述客户端节点与所述服务器节点之间被发起。
33.一种被体现在计算机可读非瞬态介质上的计算机程序,包括计算机可执行程序代码,所述计算机可执行程序代码在由设备的至少一个处理器执行时使所述设备:
从客户端节点传输对域名节点的域名请求,其中域注册事务被记录到区块链,所述域注册事务包括域名、与域公共密钥相对应的域主密钥以及用于服务器节点的域证书信息;并且进一步地,其中包括所述域公共密钥的域安全事务被记录到所述区块链以生成域名记录,所述域名记录包括所述域名、相关联的IP地址、所述域公共密钥和所述域证书信息,其中所述域安全事务使用所述域主密钥而被签名;
通过所述客户端节点,接收来自所述域名节点的域名响应,所述域名响应包括从所述区块链的所述域名记录获取的所述域公共密钥、所述域证书信息和所述相关联的IP地址;以及
使用所述域公共密钥和所述域证书信息中的至少一项在所述客户端节点与所述服务器节点之间发起安全通信。
CN201780089772.9A 2017-03-06 2017-03-06 安全去中心化域名系统 Active CN110537346B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/FI2017/050152 WO2018162789A1 (en) 2017-03-06 2017-03-06 Secure de-centralized domain name system

Publications (2)

Publication Number Publication Date
CN110537346A true CN110537346A (zh) 2019-12-03
CN110537346B CN110537346B (zh) 2023-03-24

Family

ID=58428305

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780089772.9A Active CN110537346B (zh) 2017-03-06 2017-03-06 安全去中心化域名系统

Country Status (4)

Country Link
US (1) US11196573B2 (zh)
EP (1) EP3593482B1 (zh)
CN (1) CN110537346B (zh)
WO (1) WO2018162789A1 (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110149422A (zh) * 2019-06-25 2019-08-20 苏州梦嘉信息技术有限公司 一种域名管理方法及系统
CN111200642A (zh) * 2019-12-26 2020-05-26 下一代互联网关键技术和评测北京市工程研究中心有限公司 权威dns服务器信息分发方法及系统
CN112052660A (zh) * 2020-09-07 2020-12-08 深圳壹账通智能科技有限公司 基于去中心化的资源审核方法、装置、计算机设备和介质
CN112671950A (zh) * 2020-12-30 2021-04-16 北京百度网讯科技有限公司 基于区块链的域名处理方法、装置、电子设备和存储介质
CN114666056A (zh) * 2020-12-07 2022-06-24 西门子医疗有限公司 提供第一数字证书和dns响应
CN115150184A (zh) * 2022-07-25 2022-10-04 中国互联网络信息中心 一种元数据在fabric区块链证书中应用的方法及其系统
CN115314375A (zh) * 2022-07-22 2022-11-08 京东科技信息技术有限公司 区块链网络跨域组网方法、设备、存储介质及程序产品

Families Citing this family (68)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10848322B2 (en) * 2017-03-24 2020-11-24 Cable Television Laboratories, Inc System and method for distributed PKI root
US20190166085A1 (en) * 2017-04-19 2019-05-30 Peking University Shenzhen Graduate School Blockchain-based domain name resolution system
US10965448B1 (en) * 2017-05-03 2021-03-30 Board Of Trustees Of The University Of Illinois Dynamic distributed storage for scaling blockchain
EP3631659A4 (en) * 2017-05-22 2021-03-17 Haventec PTY LTD SYSTEM FOR BLOCKCHAIN-BASED DOMAIN NAMES AND IP NUMBER REGISTER
WO2018232304A1 (en) * 2017-06-16 2018-12-20 Intel Corporation Cloud-to-device mediator service from services definition
JP2019012415A (ja) * 2017-06-30 2019-01-24 株式会社bitFlyer ネットワークにおける合意形成方法及び当該ネットワークを構成するノード
EP3649767A1 (en) * 2017-07-06 2020-05-13 Pixm Phishing detection method and system
US11233644B2 (en) * 2017-08-09 2022-01-25 Gridplus Inc. System for secure storage of cryptographic keys
US11050781B2 (en) 2017-10-11 2021-06-29 Microsoft Technology Licensing, Llc Secure application monitoring
GB201721021D0 (en) * 2017-12-15 2018-01-31 Nchain Holdings Ltd Computer-implemented methods and systems
US11606190B2 (en) * 2017-12-26 2023-03-14 Akamai Technologies, Inc. High performance distributed system of record with cryptographic service support
WO2019144948A1 (en) 2018-01-27 2019-08-01 Redrock Biometrics Inc Decentralized biometric authentication platform
US11438139B2 (en) * 2018-02-07 2022-09-06 Raouf Boutaba Blockchain based secure naming and update verification
US10756904B1 (en) 2018-02-22 2020-08-25 EMC IP Holding Company LLC Efficient and secure distributed ledger maintenance
EP3562091B1 (en) * 2018-04-27 2023-04-19 Hewlett Packard Enterprise Development LP Highly available dhcp service by running dhcp servers on a blockchain network
US10855448B2 (en) * 2018-05-03 2020-12-01 Honeywell International Inc. Apparatus and method for using blockchains to establish trust between nodes in industrial control systems or other systems
JP7036665B2 (ja) * 2018-05-22 2022-03-15 株式会社日立製作所 データ管理方法およびデータ管理システム
US11487852B2 (en) * 2018-06-26 2022-11-01 Dell Products, L.P. Blockchain-based license management
US11632236B1 (en) * 2018-06-29 2023-04-18 Verisign, Inc. Establishment, management, and usage of domain name to blockchain address associations
US10721060B1 (en) * 2018-06-29 2020-07-21 Verisign, Inc. Domain name blockchain user addresses
US20200020059A1 (en) * 2018-07-12 2020-01-16 Bank Of America Corporation System for detecting and remediating invalid domain name registration requests
US11489662B2 (en) * 2018-08-30 2022-11-01 International Business Machines Corporation Special relationships in a blockchain
CN109582473A (zh) * 2018-10-26 2019-04-05 阿里巴巴集团控股有限公司 基于区块链的跨链数据访问方法和装置
CN109327528B (zh) * 2018-10-31 2020-10-20 创新先进技术有限公司 一种基于区块链的节点管理方法和装置
US20200160334A1 (en) * 2018-11-15 2020-05-21 International Business Machines Corporation Enhanced contract execution
JP6688939B2 (ja) * 2018-11-16 2020-04-28 アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited ブロックチェーンシステム内のクロスチェーン相互作用に対するドメイン名方式
KR102125659B1 (ko) 2018-11-16 2020-06-23 알리바바 그룹 홀딩 리미티드 블록체인 시스템에서 도메인 이름 스킴을 사용하는 크로스-체인 상호 작용
CN111434085B (zh) 2018-11-16 2022-05-13 创新先进技术有限公司 用于在区块链系统中进行跨链交互的域名管理方案
US11176093B2 (en) * 2018-11-29 2021-11-16 International Business Machines Corporation Defensible disposition of data
KR102209987B1 (ko) * 2018-11-30 2021-02-01 사단법인 금융결제원 블록체인 및 스마트 컨트랙트 기반 인증서 상태 관리 장치 및 방법
KR102209988B1 (ko) * 2018-11-30 2021-02-01 사단법인 금융결제원 복수 인증기관에 의한 인증서 상태 관리 장치 및 방법
CN109729080B (zh) * 2018-12-20 2021-05-11 全链通有限公司 基于区块链域名系统的访问攻击防护方法和系统
CN109617698B (zh) * 2019-01-09 2021-08-03 腾讯科技(深圳)有限公司 发放数字证书的方法、数字证书颁发中心和介质
US10992458B2 (en) * 2019-01-16 2021-04-27 EMC IP Holding Company LLC Blockchain technology for data integrity regulation and proof of existence in data protection systems
US11836259B2 (en) * 2019-01-16 2023-12-05 EMC IP Holding Company LLC Blockchain technology for regulatory compliance of data management systems
US10992676B2 (en) 2019-01-16 2021-04-27 EMC IP Holding Company LLC Leveraging blockchain technology for auditing cloud service for data protection compliance
CN109831545B (zh) * 2019-01-31 2020-10-09 中国互联网络信息中心 一种基于区块链的域名滥用处理方法及系统
US10735204B2 (en) * 2019-02-28 2020-08-04 Alibaba Group Holding Limited System and method for generating digital marks
EP3593491A4 (en) 2019-02-28 2020-08-19 Alibaba Group Holding Limited SYSTEM AND PROCEDURE FOR IMPLEMENTATION OF BLOCKCHAIN-BASED DIGITAL CERTIFICATES
JP6965352B2 (ja) 2019-02-28 2021-11-10 アドバンスド ニュー テクノロジーズ カンパニー リミテッド デジタル・マークを生成するためのシステム及び方法
US11153093B2 (en) * 2019-05-30 2021-10-19 Oracle International Corporation Protection of online applications and webpages using a blockchain
KR102536777B1 (ko) * 2019-06-07 2023-05-24 김종현 계층화된 블록체인을 이용한 도메인 네임 제공 시스템
CN110378691A (zh) * 2019-06-18 2019-10-25 重庆金融资产交易所有限责任公司 基于部署中心的区块链部署方法、装置和计算机设备
US10880260B1 (en) * 2019-06-19 2020-12-29 Etherweb Technologies LLC Distributed domain name resolution and method for use of same
US11102243B1 (en) * 2019-06-26 2021-08-24 Amazon Technologies, Inc. Resource address resolution based on resource ownership changes to block communications with computing resources
US11797655B1 (en) 2019-07-18 2023-10-24 Verisign, Inc. Transferring a domain name on a secondary blockchain market and in the DNS
CN110727731B (zh) 2019-09-05 2021-12-21 创新先进技术有限公司 区块链网络中加入节点的方法和区块链系统
CN110730204B (zh) * 2019-09-05 2022-09-02 创新先进技术有限公司 区块链网络中删除节点的方法和区块链系统
CN112468309B (zh) * 2019-09-06 2022-04-05 傲为有限公司 基于智能合约的域名管理系统
CN112468525B (zh) * 2019-09-06 2022-06-28 傲为有限公司 一种基于区块链的域名管理系统
CN110808841B (zh) * 2019-11-08 2023-07-11 杭州增信信息技术有限公司 基于区块链网络的通信系统及其通信方法
US20210367767A1 (en) * 2020-05-21 2021-11-25 Marvell Asia Pte. Ltd. Methods and systems for secure network communication
CN111786795B (zh) * 2020-06-30 2023-08-22 北京泰尔英福科技有限公司 域名注册方法、域名监管方法、客户端及域名监管终端
CN114157428A (zh) * 2020-09-04 2022-03-08 中国移动通信集团重庆有限公司 一种基于区块链的数字证书管理方法和系统
CN112055357B (zh) * 2020-09-16 2024-05-03 上海电科智能系统股份有限公司 基于区块链的可信安全高性能智能网联动态组网协作方法
CN113302612B (zh) * 2020-11-25 2022-12-20 支付宝(杭州)信息技术有限公司 一种用于跨链和跨网络数据传输的计算机实现方法、系统及装置
CN112968923B (zh) * 2021-01-21 2023-05-05 深圳广璞互联网技术有限公司 一种区块链任务调度的方法及miner节点
US11271894B1 (en) * 2021-03-10 2022-03-08 Accenture Global Solutions Limited Systems, devices, and methods for private query and exchange of domain information
CN115150355B (zh) * 2021-03-15 2024-06-21 正链科技(深圳)有限公司 一种分布式域名的实现方法
US11924161B1 (en) 2021-05-20 2024-03-05 Verisign, Inc. Authorization and refusal of modification, and partial modification ability, of a network identifier
US11750401B2 (en) 2021-05-20 2023-09-05 Verisign, Inc. Proving top level domain name control on a blockchain
US12003615B2 (en) * 2021-05-20 2024-06-04 Verisign, Inc. Lifecycle administration of domain name blockchain addresses
CN113255014B (zh) * 2021-07-07 2021-09-28 腾讯科技(深圳)有限公司 一种基于区块链的数据处理方法以及相关设备
WO2023287435A1 (en) * 2021-07-16 2023-01-19 Hewlett-Packard Development Company, L.P. Blockchain for digital certificate transactions
US11991294B2 (en) 2021-11-12 2024-05-21 Gridplus, Inc. Peer-to-peer secure conditional transfer of cryptographic data
US20230186070A1 (en) * 2021-12-10 2023-06-15 NB Ventures, Inc., dba GEP Artificial intelligence based data processing in enterprise application
US12014363B2 (en) * 2021-12-14 2024-06-18 Bank Of America Corporation Apparatus and methods for non-fungible tokens as universal digital identification
US20230336523A1 (en) * 2022-04-13 2023-10-19 Unstoppable Domains, Inc. Domain name registration based on verification of entities of reserved names

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1885771A (zh) * 2005-06-23 2006-12-27 国际商业机器公司 用于建立安全通信会话的方法与装置
US20090198997A1 (en) * 2006-11-20 2009-08-06 Tet Hin Yeap System and method for secure electronic communication services
US20140244998A1 (en) * 2010-11-09 2014-08-28 Secure64 Software Corporation Secure publishing of public-key certificates

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10230526B2 (en) 2014-12-31 2019-03-12 William Manning Out-of-band validation of domain name system records
US9667600B2 (en) * 2015-04-06 2017-05-30 At&T Intellectual Property I, L.P. Decentralized and distributed secure home subscriber server device
KR101637854B1 (ko) * 2015-10-16 2016-07-08 주식회사 코인플러그 블록체인을 기반으로 하는 공인인증서 발급시스템과 이를 이용한 블록체인을 기반으로 하는 공인인증서 발급방법 및 블록체인을 기반으로 하는 공인인증서 인증시스템과 이를 이용한 블록체인을 기반으로 하는 공인인증서 인증방법
US20170236123A1 (en) * 2016-02-16 2017-08-17 Blockstack Inc. Decentralized processing of global naming systems
US10856122B2 (en) * 2016-05-31 2020-12-01 Intel Corporation System, apparatus and method for scalable internet of things (IoT) device on-boarding with quarantine capabilities

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1885771A (zh) * 2005-06-23 2006-12-27 国际商业机器公司 用于建立安全通信会话的方法与装置
US20090198997A1 (en) * 2006-11-20 2009-08-06 Tet Hin Yeap System and method for secure electronic communication services
US20140244998A1 (en) * 2010-11-09 2014-08-28 Secure64 Software Corporation Secure publishing of public-key certificates

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110149422A (zh) * 2019-06-25 2019-08-20 苏州梦嘉信息技术有限公司 一种域名管理方法及系统
CN111200642A (zh) * 2019-12-26 2020-05-26 下一代互联网关键技术和评测北京市工程研究中心有限公司 权威dns服务器信息分发方法及系统
CN111200642B (zh) * 2019-12-26 2022-08-23 下一代互联网关键技术和评测北京市工程研究中心有限公司 权威dns服务器信息分发方法及系统
CN112052660A (zh) * 2020-09-07 2020-12-08 深圳壹账通智能科技有限公司 基于去中心化的资源审核方法、装置、计算机设备和介质
CN114666056A (zh) * 2020-12-07 2022-06-24 西门子医疗有限公司 提供第一数字证书和dns响应
CN114666056B (zh) * 2020-12-07 2023-02-21 西门子医疗有限公司 提供第一数字证书和dns响应
US11671266B2 (en) 2020-12-07 2023-06-06 Siemens Healthcare Gmbh Providing a first digital certificate and a DNS response
CN112671950A (zh) * 2020-12-30 2021-04-16 北京百度网讯科技有限公司 基于区块链的域名处理方法、装置、电子设备和存储介质
CN115314375A (zh) * 2022-07-22 2022-11-08 京东科技信息技术有限公司 区块链网络跨域组网方法、设备、存储介质及程序产品
CN115314375B (zh) * 2022-07-22 2024-02-06 京东科技信息技术有限公司 区块链网络跨域组网方法、设备、存储介质及程序产品
CN115150184A (zh) * 2022-07-25 2022-10-04 中国互联网络信息中心 一种元数据在fabric区块链证书中应用的方法及其系统
CN115150184B (zh) * 2022-07-25 2023-07-21 中国互联网络信息中心 一种元数据在fabric区块链证书中应用的方法及其系统

Also Published As

Publication number Publication date
CN110537346B (zh) 2023-03-24
US11196573B2 (en) 2021-12-07
US20200021446A1 (en) 2020-01-16
EP3593482A1 (en) 2020-01-15
EP3593482B1 (en) 2022-01-19
WO2018162789A1 (en) 2018-09-13

Similar Documents

Publication Publication Date Title
CN110537346A (zh) 安全去中心化域名系统
US11900368B2 (en) Method and system for zero-knowledge and identity based key management for decentralized applications
US10284379B1 (en) Public key infrastructure based on the public certificates ledger
Lim et al. Blockchain technology the identity management and authentication service disruptor: a survey
CN109862041B (zh) 一种数字身份认证方法、设备、装置、系统及存储介质
Lundkvist et al. Uport: A platform for self-sovereign identity
CN109829326B (zh) 基于区块链的跨域认证与公平审计去重云存储系统
US20160162897A1 (en) System and method for user authentication using crypto-currency transactions as access tokens
EP3526721A1 (en) Method, device and system for validating sensitive user data transactions within trusted circle
CN110602050A (zh) 区块链访问的鉴权方法和装置、存储介质、电子装置
JP6543743B1 (ja) 管理プログラム
WO2018115567A1 (en) Method and apparatus for private data transfer between parties
CN108881167A (zh) 一种有限域区块链系统的智能合约
US20070255951A1 (en) Token Based Multi-protocol Authentication System and Methods
CN110599342B (zh) 基于区块链的身份信息的授权方法及装置
US11367065B1 (en) Distributed ledger system for electronic transactions
GB2599404A (en) Verification system and method
GB2599416A (en) Authentication system and method
US20210306135A1 (en) Electronic device within blockchain based pki domain, electronic device within certification authority based pki domain, and cryptographic communication system including these electronic devices
CN105634720B (zh) 一种加密安全配置文件的方法、终端设备和系统
WO2022069132A1 (en) Physically unclonable functions
GB2599398A (en) Physically unclonable functions
Singh et al. IoT–Blockchain Integration-Based Applications Challenges and Opportunities
WO2022069137A1 (en) Challenge-response protocol based on physically unclonable functions
GB2599400A (en) Physically unclonable functions

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
GR01 Patent grant
GR01 Patent grant