CN110198316A - 基于联盟区块链的身份验证方法、设备及存储介质 - Google Patents
基于联盟区块链的身份验证方法、设备及存储介质 Download PDFInfo
- Publication number
- CN110198316A CN110198316A CN201910466959.7A CN201910466959A CN110198316A CN 110198316 A CN110198316 A CN 110198316A CN 201910466959 A CN201910466959 A CN 201910466959A CN 110198316 A CN110198316 A CN 110198316A
- Authority
- CN
- China
- Prior art keywords
- service node
- block chain
- node
- user
- encryption data
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0815—Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0823—Network architectures or network communication protocols for network security for authentication of entities using certificates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/085—Secret sharing or secret splitting, e.g. threshold schemes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3247—Cryptographic 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明提供一种基于联盟区块链的身份验证方法、设备及存储介质。该方法包括用户节点基于第二服务节点的区块链标识,在联盟区块链的账本中查找第二服务节点最新发布的随机数;基于其与第二服务节点的共享密钥对随机数进行加密处理,并将加密处理后得到的第一加密数据以及待登录的第一服务节点的区块链标识和用户名发送给第二服务节点,以使第二服务节点将第一加密数据与自身计算得到的第二加密数据进行比对;接收第二服务节点在比对二者一致时反馈的验证凭证;将验证凭证发送给第一服务节点,以使第一服务节点基于验证凭证为用户提供服务。本发明提高了身份验证的安全性和效率。
Description
技术领域
本发明实施例涉及区块链技术领域,尤其涉及一种基于联盟区块链的身份验证方法、设备及存储介质。
背景技术
在互联网上有很多的互联网服务提供商(Internet Service Provider,简称ISP)/网络内容服务商(Internet Content Provider,简称ICP),每个用户在享受ISP/ICP提供的服务之前必须在该ISP/ICP上进行注册,比如当前每个人一般都有微信、支付宝等各种APP,而每个APP如果都注册,并且如果在不同的APP上注册的账号和密码一样,则很容易被撞库攻击,账号的安全性较低,而如果在不同的APP上注册的账号、密码不一样,则又很容易被遗忘,重新找回账号、密码的操作繁琐。
发明内容
本发明实施例提供一种基于联盟区块链的身份验证方法、设备及存储介质,用以提高用户使用互联网服务时,身份验证的效率和安全性,避免用户记忆大量用户名和密码的麻烦,解决用户多个互联网服务的用户名和密码一致所导致的容易被撞库攻击的问题。
第一方面,本发明实施例提供一种基于联盟区块链的身份验证方法,该方法包括:
联盟区块链中的用户节点基于所述联盟区块链中的第二服务节点的区块链标识,在所述联盟区块链的账本中查找所述第二服务节点最新发布的随机数,其中所述用户节点在所述第二服务节点上注册过用户名;所述用户节点基于其与所述第二服务节点的共享密钥对所述随机数进行加密处理,并将加密处理后得到的第一加密数据以及待登录的第一服务节点的区块链标识和所述用户名发送给所述第二服务节点,以使所述第二服务节点将所述第一加密数据与自身计算得到的第二加密数据进行比对,其中所述第二加密数据为所述第二服务节点采用所述共享密钥对其自身最新发布的随机数加密得到的;所述用户节点接收所述第二服务节点在比对所述第一加密数据和所述第二加密数据一致时反馈的验证凭证,所述验证凭证包括经过所述第二服务节点的私钥签名的所述第二服务节点的区块链标识和所述用户名;所述用户节点将所述验证凭证发送给所述第一服务节点,以使所述第一服务节点基于所述第二服务节点的公钥对所述验证凭证中的签名进行验证,并在验证通过后为用户提供服务。
在一种实施方式中,所述联盟区块链中的用户节点基于所述联盟区块链中的第二服务节点的区块链标识,在所述联盟区块链的账本中查找所述第二服务节点最新发布的随机数,包括:
联盟区块链中的用户节点基于所述联盟区块链中的第二服务节点的区块链标识,在所述联盟区块链的账本中查找所述第二服务节点最新发布的随机数和所述随机数发布的时间戳。
在一种实施方式中,所述用户节点基于其与所述第二服务节点的共享密钥对所述随机数进行加密处理,并将加密处理后得到的第一加密数据以及待登录的第一服务节点的区块链标识和所述用户名发送给所述第二服务节点,包括:
所述用户节点基于其与所述第二服务节点的共享密钥对所述随机数和所述时间戳进行加密处理,并将加密处理后得到的第一加密数据以及待登录的第一服务节点的区块链标识和所述用户名发送给所述第二服务节点。
在一种实施方式中,所述用户节点接收所述第二服务节点在比对所述第一加密数据和所述第二加密数据一致时反馈的验证凭证,包括:
所述用户节点接收所述第二服务节点在比对所述第一加密数据和所述第二加密数据一致时反馈的广播消息,所述广播消息中包括第三加密数据,所述第三加密数据为所述第二服务节点根据所述用户名对应的用户密钥采用预设算法对所述验证凭证进行加密得到的;所述用户节点从所述广播消息中获取所述第三加密数据,并对所述第三加密数据解密,得到所述验证凭证。
第二方面,本发明实施例提供一种用户节点,所述用户节点适用于一种联盟区块链,所述用户节点包括:
存储器;
处理器;
通讯接口;以及
计算机程序;
其中,所述计算机程序存储在所述存储器中,并被配置为由所述处理器执行以下操作:
基于所述联盟区块链中的第二服务节点的区块链标识,在所述联盟区块链的账本中查找所述第二服务节点最新发布的随机数,其中所述用户节点在所述第二服务节点上注册过用户名;基于所述用户节点与所述第二服务节点的共享密钥对所述随机数进行加密处理,并将加密处理后得到的第一加密数据以及待登录的第一服务节点的区块链标识和所述用户名发送给所述第二服务节点,以使所述第二服务节点将所述第一加密数据与自身计算得到的第二加密数据进行比对,其中所述第二加密数据为所述第二服务节点采用所述共享密钥对其自身最新发布的随机数加密得到的;接收所述第二服务节点在比对所述第一加密数据和所述第二加密数据一致时反馈的验证凭证,所述验证凭证包括经过所述第二服务节点的私钥签名的所述第二服务节点的区块链标识和所述用户名;将所述验证凭证发送给所述第一服务节点,以使所述第一服务节点基于所述第二服务节点的公钥对所述验证凭证中的签名进行验证,并在验证通过后为用户提供服务。
在一种实施方式中,所述处理器在执行基于所述联盟区块链中的第二服务节点的区块链标识,在所述联盟区块链的账本中查找所述第二服务节点最新发布的随机数的操作时,用于:
基于所述联盟区块链中的第二服务节点的区块链标识,在所述联盟区块链的账本中查找所述第二服务节点最新发布的随机数和所述随机数发布的时间戳。
在一种实施方式中,所述处理器在执行基于所述用户节点与所述第二服务节点的共享密钥对所述随机数进行加密处理,并将加密处理后得到的第一加密数据以及待登录的第一服务节点的区块链标识和所述用户名发送给所述第二服务节点的操作时,用于:
基于所述用户节点与所述第二服务节点的共享密钥对所述随机数和所述时间戳进行加密处理,并将加密处理后得到的第一加密数据以及待登录的第一服务节点的区块链标识和所述用户名发送给所述第二服务节点。
在一种实施方式中,所述处理器在执行接收所述第二服务节点在比对所述第一加密数据和所述第二加密数据一致时反馈的验证凭证的操作时,用于:
接收所述第二服务节点在比对所述第一加密数据和所述第二加密数据一致时反馈的广播消息,所述广播消息中包括第三加密数据,所述第三加密数据为所述第二服务节点根据所述用户名对应的用户密钥采用预设算法对所述验证凭证进行加密得到的;从所述广播消息中获取所述第三加密数据,并对所述第三加密数据解密,得到所述验证凭证。
第三方面,本发明实施例提供一种联盟区块链,该联盟区块链包括上述第二方面所述的用户节点。
第四方面,本发明实施例提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行以实现第一方面所述的方法。
在本发明实施例提供的于联盟区块链的身份验证方法、设备及存储介质中,联盟区块链中的用户节点在基于联盟区块链中的第二服务节点的区块链标识,在联盟区块链的账本中查找到第二服务节点最新发布的随机数后,通过其与第二服务节点的共享密钥对该随机数进行加密,并将加密得到的第一加密数据、待登录的第一服务节点的区块链标识和用户名发送给第二服务节点,使得第二服务节点将第一加密数据其自身计算得到的第二加密数据进行比对,并在第一加密数据和第二加密数据一致时将携带有经过其私钥签名的第二服务节点的区块链标识和用户名的验证凭证发送给用户节点,以使用户节点在接收到该验证凭证后将该验证凭证发送给第一服务节点,从而使得第一服务节点根据该验证凭证给用户提供服务。基于本发明实施例提供的技术方案,只要用户在联盟区块链上任一服务节点上注册了用户名和用户密钥,就可以使用该用户名和用户密钥登录联盟区块链上的其他服务节点,并享受该服务节点的服务,从而避免了用户记忆大量用户名和密钥的麻烦,提高了身份验证的便利性,另外,由于本发明实施例中用户节点可以直接从联盟区块链的账本中获取服务节点定期发布的随机数,不需要其他中间节点转发,因而可以进一步的提高身份验证的效率,减轻中间节点的转发压力,同时也能够避免因中间节点被攻击影响验证的问题。
附图说明
图1为本发明实施例提供的一种通信系统的示意图;
图2为本发明实施例提供的一种基于联盟区块链的身份验证方法的流程图;
图3是本发明实施例提供的一种基于联盟区块链的身份验证方法的流程图;
图4是本发明实施例提供的一种用户节点的结构示意图。
通过上述附图,已示出本公开明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本公开构思的范围,而是通过参考特定实施例为本领域技术人员说明本公开的概念。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
本发明实施例提供的基于联盟区块链的身份验证方法,旨在解决现有技术中如果用户在不同的应用程序(APP)上注册的账号和密码一样,很容易被撞库攻击,账号的安全性较低,而如果在不同的APP上注册的账号、密码不一样,又很容易被遗忘,重新找回账号、密码的操作繁琐的技术问题,特别的,在解决上述技术问题的基础上本发明实施例还着重于提高身份验证的效率和安全性,通过从区块链账本中直接获取服务节点定期发布的随机数据的方式,防止由中间节点转发随机数带来的安全问题。该方法可以适用于图1所示的通信系统。如图1所示,该通信系统包括:第一服务节点11、第二服务节点12、用户节点13、第三服务节点14、第四服务节点15、以及第五服务节点16,其中,第一服务节点11、第二服务节点12、用户节点13、第三服务节点14、第四服务节点15、以及第五服务节点16属于同一联盟区块链。其中,第二服务节点12、第三服务节点14、第四服务节点15、以及第五服务节点16可以为用户提供不同的服务,举例来说,第二服务节点12、第三服务节点14、第四服务节点15、以及第五服务节点16可以分别用于提供“推特”服务、“脸书”服务、“微信”服务和“支付宝”服务,当然这里仅为示例说明而不是唯一限定。另外,此处只是示意性说明,并不限定该联盟区块链的结构和该联盟区块链的节点个数。
下面以具体地实施例对本发明的技术方案以及本发明的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本发明的实施例进行描述。
图2为本发明实施例提供的一种基于联盟区块链的身份验证方法的流程图。该方法适用于一种联盟区块链,该联盟区块链的结构可以参照图1,该方法具体步骤如下:
步骤201、联盟区块链中的用户节点基于所述联盟区块链中的第二服务节点的区块链标识,在所述联盟区块链的账本中查找所述第二服务节点最新发布的随机数,其中所述用户节点在所述第二服务节点上注册过用户名。
步骤202、所述用户节点基于其与所述第二服务节点的共享密钥对所述随机数进行加密处理,并将加密处理后得到的第一加密数据以及待登录的第一服务节点的区块链标识和所述用户名发送给所述第二服务节点,以使所述第二服务节点将所述第一加密数据与自身计算得到的第二加密数据进行比对,其中所述第二加密数据为所述第二服务节点采用所述共享密钥对其自身最新发布的随机数加密得到的。
步骤203、所述用户节点接收所述第二服务节点在比对所述第一加密数据和所述第二加密数据一致时反馈的验证凭证,所述验证凭证包括经过所述第二服务节点的私钥签名的所述第二服务节点的区块链标识和所述用户名。
步骤204、所述用户节点将所述验证凭证发送给所述第一服务节点,以使所述第一服务节点基于所述第二服务节点的公钥对所述验证凭证中的签名进行验证,并在验证通过后为用户提供服务。
以图1为例,在图1中第二服务节点12、第三服务节点14、第四服务节点15、以及第五服务节点16构建形成联盟区块链,并为其他服务节点或用户节点提供身份验证服务。该联盟区块链的创世区块中保存有第二服务节点12、第三服务节点14、第四服务节点15、以及第五服务节点16的区块链标识、公钥、IP地址等信息,第二服务节点12、第三服务节点14、第四服务节点15、以及第五服务节点16共同作为本联盟区块链的创始节点对联盟区块链进行管理,包括是否允许某个服务节点接入本联盟区块链等。
用户通过区块链链下的方式进行用户名和密钥的注册或者已经在联盟区块链的某个服务节点上注册过,本示例中,假设用户已在第二服务节点12上注册过,但未在第一服务节点11上注册过。
示例的,在本实施例中,联盟区块链的节点,比如第一服务节点11和第二服务节点12在联盟区块链中声明自己的区块链标识,该声明使用广播消息并私钥签名的方式发布到联盟区块链中,第一服务节点11和第二服务节点12的区块链标识被记录在联盟区块链的账本中。
联盟区块链的创始节点定期在联盟区块链中发布用于身份验证的随机数,比如第二服务节点12,间隔预设时间在联盟区块链中发布一个新的随机数,该随机数被记录在联盟区块链的账本中。
用户节点13在请求第一服务节点11的服务时,首先,可以通过用户交互界面提示用户输入第二服务节点12的区块链标识,或者也可以根据第二服务节点12所能提供的服务的信息(比如服务名称“微信”等)或者与第二服务节点12相关联的其他信息,从联盟区块链的账本中获取第二服务节点12的区块链标识。
在获得第二服务节点12的区块链标识后,用户节点13根据该区块链标识从联盟区块链的账本中查找第二服务节点12最新发布的随机数,或者还可以在获取该随机数据的同时获取该随机数的时间戳。
用户节点13在获取到随机数和时间戳后,根据其与第二服务节点12之间预先约定的共享密钥对该随机数,或者对该随机数和时间戳进行加密,得到第一加密数据。在此之后,用户节点13采用自身的私钥对第一加密数据、待登录的第一服务节点的区块链标识和用户曾在第二服务节点12上注册的用户名进行签名,并将签名后的数据和自身的区块链标识携带在广播消息中广播到联盟区块链中。
第二服务节点12在接收到用户节点13的广播消息后,根据广播消息中携带的用户节点13的区块链标识从联盟区块链的账本中查找获得用户节点13的公钥,采用公钥对该广播消息中的私钥签名进行验证,若验证通过,则根据用户节点13的区块链标识查找获得其与用户节点13预定的共享密钥,并采用该共享密钥对其自身最新发布的随机数据进行加密得到第二加密数据,通过将第一加密数据和第二加密数据进行比对,来对用户的身份进行验证,若第一加密数据和第二加密数据一致,则向用户节点13反馈验证凭证,其中,该验证凭证中包括经过第二服务节点的私钥签名的第二服务节点的区块链标识、所述用户名,甚至还可以包括用户节点13的登录用户标识等。
用户节点13在接收到第二服务节点12发送的验证凭证后,将该验证凭证发送给第一服务节点11,比如在一种可行的实施例中,可以现根据第一服务节点11的区块链标识,在联盟区块链的账本中查找第一服务节点的IP地址,根据该IP地址将验证凭证发送给第一服务节点。当然这里仅为一种示例性的实施方式并不是本发明实施例的全部实施方式。
第一服务节点11在接收到验证凭证后,采用第二服务节点的公钥对验证凭证中的签名进行验证,若验证通过,则为用户提供服务。
在本实施例提供的于联盟区块链的身份验证方法、设备及存储介质中,联盟区块链中的用户节点在基于联盟区块链中的第二服务节点的区块链标识,在联盟区块链的账本中查找到第二服务节点最新发布的随机数后,通过其与第二服务节点的共享密钥对该随机数进行加密,并将加密得到的第一加密数据、待登录的第一服务节点的区块链标识和用户名发送给第二服务节点,使得第二服务节点将第一加密数据其自身计算得到的第二加密数据进行比对,并在第一加密数据和第二加密数据一致时将携带有经过其私钥签名的第二服务节点的区块链标识和用户名的验证凭证发送给用户节点,以使用户节点在接收到该验证凭证后将该验证凭证发送给第一服务节点,从而使得第一服务节点根据该验证凭证给用户提供服务。基于本实施例提供的技术方案,只要用户在联盟区块链上任一服务节点上注册了用户名和用户密钥,就可以使用该用户名和用户密钥登录联盟区块链上的其他服务节点,并享受该服务节点的服务,从而避免了用户记忆大量用户名和密钥的麻烦,提高了身份验证的便利性,另外,由于本实施例中用户节点可以直接从联盟区块链的账本中获取服务节点定期发布的随机数,不需要其他中间节点转发,因而可以进一步的提高身份验证的效率,减轻中间节点的转发压力,同时也能够避免因中间节点被攻击影响验证的问题。
图3是本发明实施例提供的一种基于联盟区块链的身份验证方法的流程图,如图3所示,在图2实施例的基础上,该方法包括:
步骤301、联盟区块链中的用户节点基于所述联盟区块链中的第二服务节点的区块链标识,在所述联盟区块链的账本中查找所述第二服务节点最新发布的随机数,其中所述用户节点在所述第二服务节点上注册过用户名。
步骤302、所述用户节点基于其与所述第二服务节点的共享密钥对所述随机数进行加密处理,并将加密处理后得到的第一加密数据以及待登录的第一服务节点的区块链标识和所述用户名发送给所述第二服务节点,以使所述第二服务节点将所述第一加密数据与自身计算得到的第二加密数据进行比对,其中所述第二加密数据为所述第二服务节点采用所述共享密钥对其自身最新发布的随机数加密得到的。
步骤303、所述用户节点接收所述第二服务节点在比对所述第一加密数据和所述第二加密数据一致时反馈的广播消息,所述广播消息中包括第三加密数据,所述第三加密数据为所述第二服务节点根据所述用户名对应的用户密钥采用预设算法对验证凭证进行加密得到的。
其中,所述验证凭证包括经过所述第二服务节点的私钥签名的所述第二服务节点的区块链标识和所述用户名。
步骤304、所述用户节点从所述广播消息中获取所述第三加密数据,并对所述第三加密数据解密,得到所述验证凭证。
步骤305、所述用户节点将所述验证凭证发送给所述第一服务节点,以使所述第一服务节点基于所述第二服务节点的公钥对所述验证凭证中的签名进行验证,并在验证通过后为用户提供服务。
本实施例通过对验证凭证进行加密,提高了验证凭证在传输过程中的安全性,防止验证凭证被攻击者拦截,减少撞库攻击事件的发生。
图4是本发明实施例提供的一种用户节点的结构示意图,该用户节点适用于一种联盟区块链,本发明实施例提供的用户节点可以执行上述基于联盟区块链的身份验证方法的执行方法实施例的处理流程。如图4所示,用户节点40包括:存储器41、处理器42、计算机程序和通讯接口43;其中,所述计算机程序存储在所述存储器中,并被配置为由处理器42执行以下操作:
基于所述联盟区块链中的第二服务节点的区块链标识,在所述联盟区块链的账本中查找所述第二服务节点最新发布的随机数,其中所述用户节点在所述第二服务节点上注册过用户名;基于所述用户节点与所述第二服务节点的共享密钥对所述随机数进行加密处理,并将加密处理后得到的第一加密数据以及待登录的第一服务节点的区块链标识和所述用户名发送给所述第二服务节点,以使所述第二服务节点将所述第一加密数据与自身计算得到的第二加密数据进行比对,其中所述第二加密数据为所述第二服务节点采用所述共享密钥对其自身最新发布的随机数加密得到的;接收所述第二服务节点在比对所述第一加密数据和所述第二加密数据一致时反馈的验证凭证,所述验证凭证包括经过所述第二服务节点的私钥签名的所述第二服务节点的区块链标识和所述用户名;将所述验证凭证发送给所述第一服务节点,以使所述第一服务节点基于所述第二服务节点的公钥对所述验证凭证中的签名进行验证,并在验证通过后为用户提供服务。
在一种实施方式中,所述处理器在执行基于所述联盟区块链中的第二服务节点的区块链标识,在所述联盟区块链的账本中查找所述第二服务节点最新发布的随机数的操作时,用于:
基于所述联盟区块链中的第二服务节点的区块链标识,在所述联盟区块链的账本中查找所述第二服务节点最新发布的随机数和所述随机数发布的时间戳。
在一种实施方式中,所述处理器在执行基于所述用户节点与所述第二服务节点的共享密钥对所述随机数进行加密处理,并将加密处理后得到的第一加密数据以及待登录的第一服务节点的区块链标识和所述用户名发送给所述第二服务节点的操作时,用于:
基于所述用户节点与所述第二服务节点的共享密钥对所述随机数和所述时间戳进行加密处理,并将加密处理后得到的第一加密数据以及待登录的第一服务节点的区块链标识和所述用户名发送给所述第二服务节点。
在一种实施方式中,所述处理器在执行接收所述第二服务节点在比对所述第一加密数据和所述第二加密数据一致时反馈的验证凭证的操作时,用于:
接收所述第二服务节点在比对所述第一加密数据和所述第二加密数据一致时反馈的广播消息,所述广播消息中包括第三加密数据,所述第三加密数据为所述第二服务节点根据所述用户名对应的用户密钥采用预设算法对所述验证凭证进行加密得到的;从所述广播消息中获取所述第三加密数据,并对所述第三加密数据解密,得到所述验证凭证。
图4所示实施例的用户节点可用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
本发明实施例还提供一种联盟区块链,该联盟区块链包括如上述图4实施例所述的用户节点。
另外,本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行以实现上述实施例所述的基于联盟区块链的身份验证方法的执行方法。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (10)
1.一种基于联盟区块链的身份验证方法,其特征在于,所述方法包括:
联盟区块链中的用户节点基于所述联盟区块链中的第二服务节点的区块链标识,在所述联盟区块链的账本中查找所述第二服务节点最新发布的随机数,其中所述用户节点在所述第二服务节点上注册过用户名;
所述用户节点基于其与所述第二服务节点的共享密钥对所述随机数进行加密处理,并将加密处理后得到的第一加密数据以及待登录的第一服务节点的区块链标识和所述用户名发送给所述第二服务节点,以使所述第二服务节点将所述第一加密数据与自身计算得到的第二加密数据进行比对,其中所述第二加密数据为所述第二服务节点采用所述共享密钥对其自身最新发布的随机数加密得到的;
所述用户节点接收所述第二服务节点在比对所述第一加密数据和所述第二加密数据一致时反馈的验证凭证,所述验证凭证包括经过所述第二服务节点的私钥签名的所述第二服务节点的区块链标识和所述用户名;
所述用户节点将所述验证凭证发送给所述第一服务节点,以使所述第一服务节点基于所述第二服务节点的公钥对所述验证凭证中的签名进行验证,并在验证通过后为用户提供服务。
2.根据权利要求1所述的方法,其特征在于,所述联盟区块链中的用户节点基于所述联盟区块链中的第二服务节点的区块链标识,在所述联盟区块链的账本中查找所述第二服务节点最新发布的随机数,包括:
联盟区块链中的用户节点基于所述联盟区块链中的第二服务节点的区块链标识,在所述联盟区块链的账本中查找所述第二服务节点最新发布的随机数和所述随机数发布的时间戳。
3.根据权利要求2所述的方法,其特征在于,所述用户节点基于其与所述第二服务节点的共享密钥对所述随机数进行加密处理,并将加密处理后得到的第一加密数据以及待登录的第一服务节点的区块链标识和所述用户名发送给所述第二服务节点,包括:
所述用户节点基于其与所述第二服务节点的共享密钥对所述随机数和所述时间戳进行加密处理,并将加密处理后得到的第一加密数据以及待登录的第一服务节点的区块链标识和所述用户名发送给所述第二服务节点。
4.根据权利要求1所述的方法,其特征在于,所述用户节点接收所述第二服务节点在比对所述第一加密数据和所述第二加密数据一致时反馈的验证凭证,包括:
所述用户节点接收所述第二服务节点在比对所述第一加密数据和所述第二加密数据一致时反馈的广播消息,所述广播消息中包括第三加密数据,所述第三加密数据为所述第二服务节点根据所述用户名对应的用户密钥采用预设算法对所述验证凭证进行加密得到的;
所述用户节点从所述广播消息中获取所述第三加密数据,并对所述第三加密数据解密,得到所述验证凭证。
5.一种用户节点,所述用户节点适用于一种联盟区块链,其特征在于,所述用户节点包括:
存储器;
处理器;
通讯接口;以及
计算机程序;
其中,所述计算机程序存储在所述存储器中,并被配置为由所述处理器执行以下操作:
基于所述联盟区块链中的第二服务节点的区块链标识,在所述联盟区块链的账本中查找所述第二服务节点最新发布的随机数,其中所述用户节点在所述第二服务节点上注册过用户名;
基于所述用户节点与所述第二服务节点的共享密钥对所述随机数进行加密处理,并将加密处理后得到的第一加密数据以及待登录的第一服务节点的区块链标识和所述用户名发送给所述第二服务节点,以使所述第二服务节点将所述第一加密数据与自身计算得到的第二加密数据进行比对,其中所述第二加密数据为所述第二服务节点采用所述共享密钥对其自身最新发布的随机数加密得到的;
接收所述第二服务节点在比对所述第一加密数据和所述第二加密数据一致时反馈的验证凭证,所述验证凭证包括经过所述第二服务节点的私钥签名的所述第二服务节点的区块链标识和所述用户名;
将所述验证凭证发送给所述第一服务节点,以使所述第一服务节点基于所述第二服务节点的公钥对所述验证凭证中的签名进行验证,并在验证通过后为用户提供服务。
6.根据权利要求5所述的用户节点,其特征在于,所述处理器在执行基于所述联盟区块链中的第二服务节点的区块链标识,在所述联盟区块链的账本中查找所述第二服务节点最新发布的随机数的操作时,用于:
基于所述联盟区块链中的第二服务节点的区块链标识,在所述联盟区块链的账本中查找所述第二服务节点最新发布的随机数和所述随机数发布的时间戳。
7.根据权利要求6所述的用户节点,其特征在于,所述处理器在执行基于所述用户节点与所述第二服务节点的共享密钥对所述随机数进行加密处理,并将加密处理后得到的第一加密数据以及待登录的第一服务节点的区块链标识和所述用户名发送给所述第二服务节点的操作时,用于:
基于所述用户节点与所述第二服务节点的共享密钥对所述随机数和所述时间戳进行加密处理,并将加密处理后得到的第一加密数据以及待登录的第一服务节点的区块链标识和所述用户名发送给所述第二服务节点。
8.根据权利要求5所述的用户节点,其特征在于,所述处理器在执行接收所述第二服务节点在比对所述第一加密数据和所述第二加密数据一致时反馈的验证凭证的操作时,用于:
接收所述第二服务节点在比对所述第一加密数据和所述第二加密数据一致时反馈的广播消息,所述广播消息中包括第三加密数据,所述第三加密数据为所述第二服务节点根据所述用户名对应的用户密钥采用预设算法对所述验证凭证进行加密得到的;
从所述广播消息中获取所述第三加密数据,并对所述第三加密数据解密,得到所述验证凭证。
9.一种联盟区块链,其特征在于,包括如权利要求5-8中任一项所述的用户节点。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-4中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910466959.7A CN110198316A (zh) | 2019-05-30 | 2019-05-30 | 基于联盟区块链的身份验证方法、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910466959.7A CN110198316A (zh) | 2019-05-30 | 2019-05-30 | 基于联盟区块链的身份验证方法、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110198316A true CN110198316A (zh) | 2019-09-03 |
Family
ID=67753423
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910466959.7A Pending CN110198316A (zh) | 2019-05-30 | 2019-05-30 | 基于联盟区块链的身份验证方法、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110198316A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110730450A (zh) * | 2019-10-18 | 2020-01-24 | 中国联合网络通信集团有限公司 | 一种移动通信方法及系统 |
CN111246476A (zh) * | 2020-01-10 | 2020-06-05 | 中国联合网络通信集团有限公司 | 一种微基站用户的验证方法和装置 |
CN111464535A (zh) * | 2020-03-31 | 2020-07-28 | 中国电子科技集团公司第三十研究所 | 一种基于区块链的跨域信任传递方法 |
CN113923233A (zh) * | 2021-09-30 | 2022-01-11 | 广联达科技股份有限公司 | 一种联盟链管理方法 |
CN114598531A (zh) * | 2022-03-10 | 2022-06-07 | 上海星图比特信息技术服务有限公司 | 身份认证方法及设备 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105323754A (zh) * | 2014-07-29 | 2016-02-10 | 北京信威通信技术股份有限公司 | 一种基于预共享密钥的分布式鉴权方法 |
CN106357640A (zh) * | 2016-09-18 | 2017-01-25 | 江苏通付盾科技有限公司 | 基于区块链网络的身份认证方法、系统及服务器 |
CN106921640A (zh) * | 2015-12-28 | 2017-07-04 | 航天信息股份有限公司 | 身份认证方法、认证装置及认证系统 |
CN107079036A (zh) * | 2016-12-23 | 2017-08-18 | 深圳前海达闼云端智能科技有限公司 | 注册及授权方法、装置及系统 |
CN107171785A (zh) * | 2017-05-18 | 2017-09-15 | 电子科技大学 | 一种基于区块链技术的数字版权管理方法 |
US20180234413A1 (en) * | 2017-02-13 | 2018-08-16 | Zentel Japan Corporation | Authenticated Network |
CN109150546A (zh) * | 2018-09-07 | 2019-01-04 | 全链通有限公司 | 基于手机号码实现区块链实名制注册的方法 |
CN109309650A (zh) * | 2017-07-27 | 2019-02-05 | 华为技术有限公司 | 处理数据的方法、终端设备和网络设备 |
-
2019
- 2019-05-30 CN CN201910466959.7A patent/CN110198316A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105323754A (zh) * | 2014-07-29 | 2016-02-10 | 北京信威通信技术股份有限公司 | 一种基于预共享密钥的分布式鉴权方法 |
CN106921640A (zh) * | 2015-12-28 | 2017-07-04 | 航天信息股份有限公司 | 身份认证方法、认证装置及认证系统 |
CN106357640A (zh) * | 2016-09-18 | 2017-01-25 | 江苏通付盾科技有限公司 | 基于区块链网络的身份认证方法、系统及服务器 |
CN107079036A (zh) * | 2016-12-23 | 2017-08-18 | 深圳前海达闼云端智能科技有限公司 | 注册及授权方法、装置及系统 |
US20180234413A1 (en) * | 2017-02-13 | 2018-08-16 | Zentel Japan Corporation | Authenticated Network |
CN107171785A (zh) * | 2017-05-18 | 2017-09-15 | 电子科技大学 | 一种基于区块链技术的数字版权管理方法 |
CN109309650A (zh) * | 2017-07-27 | 2019-02-05 | 华为技术有限公司 | 处理数据的方法、终端设备和网络设备 |
CN109150546A (zh) * | 2018-09-07 | 2019-01-04 | 全链通有限公司 | 基于手机号码实现区块链实名制注册的方法 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110730450A (zh) * | 2019-10-18 | 2020-01-24 | 中国联合网络通信集团有限公司 | 一种移动通信方法及系统 |
CN110730450B (zh) * | 2019-10-18 | 2023-03-24 | 中国联合网络通信集团有限公司 | 一种移动通信方法及系统 |
CN111246476A (zh) * | 2020-01-10 | 2020-06-05 | 中国联合网络通信集团有限公司 | 一种微基站用户的验证方法和装置 |
CN111246476B (zh) * | 2020-01-10 | 2022-09-09 | 中国联合网络通信集团有限公司 | 一种微基站用户的验证方法和装置 |
CN111464535A (zh) * | 2020-03-31 | 2020-07-28 | 中国电子科技集团公司第三十研究所 | 一种基于区块链的跨域信任传递方法 |
CN113923233A (zh) * | 2021-09-30 | 2022-01-11 | 广联达科技股份有限公司 | 一种联盟链管理方法 |
CN114598531A (zh) * | 2022-03-10 | 2022-06-07 | 上海星图比特信息技术服务有限公司 | 身份认证方法及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Attkan et al. | Cyber-physical security for IoT networks: a comprehensive review on traditional, blockchain and artificial intelligence based key-security | |
He et al. | Efficient and anonymous mobile user authentication protocol using self-certified public key cryptography for multi-server architectures | |
CN110198316A (zh) | 基于联盟区块链的身份验证方法、设备及存储介质 | |
Jiang et al. | An efficient two-factor user authentication scheme with unlinkability for wireless sensor networks | |
CN110213046A (zh) | 基于联盟区块链的身份验证方法、设备及存储介质 | |
Jiang et al. | Cryptanalysis of smart‐card‐based password authenticated key agreement protocol for session initiation protocol of Zhang et al. | |
CN110213264A (zh) | 基于联盟区块链的身份验证方法、设备及存储介质 | |
CN110213263A (zh) | 基于联盟区块链的身份验证方法、设备及存储介质 | |
CN110166255A (zh) | 基于联盟区块链的身份验证方法、设备及存储介质 | |
CN110225017A (zh) | 基于联盟区块链的身份验证方法、设备及存储介质 | |
Lu et al. | Edge-Assisted Intelligent Device Authentication in Cyber–Physical Systems | |
Bao et al. | A lightweight privacy‐preserving scheme with data integrity for smart grid communications | |
Miao et al. | VKSE-MO: Verifiable keyword search over encrypted data in multi-owner settings | |
Lounis et al. | WPA3 connection deprivation attacks | |
Nikooghadam et al. | Perfect forward secrecy via an ECC-based authentication scheme for SIP in VoIP | |
CN110138558A (zh) | 会话密钥的传输方法、设备及计算机可读存储介质 | |
GB2488753A (en) | Encrypted communication | |
Aiash et al. | A formally verified access control mechanism for information centric networks | |
Donald et al. | A secure authentication scheme for MobiCloud | |
CN110176994A (zh) | 基于联盟区块链的会话密钥分发方法、设备及存储介质 | |
CN110213047A (zh) | 会话密钥的传输方法、设备及计算机可读存储介质 | |
Yang et al. | Blockchain-based conditional privacy-preserving authentication protocol with implicit certificates for vehicular edge computing | |
CN110048842A (zh) | 会话密钥处理方法、设备及计算机可读存储介质 | |
Shikfa et al. | Local key management in opportunistic networks | |
Sultan et al. | A secure access and accountability framework for provisioning services in named data networks |
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 | ||
AD01 | Patent right deemed abandoned | ||
AD01 | Patent right deemed abandoned |
Effective date of abandoning: 20220415 |