CN116566615A - 一种基于区块链的身份认证方法及装置 - Google Patents
一种基于区块链的身份认证方法及装置 Download PDFInfo
- Publication number
- CN116566615A CN116566615A CN202310438087.XA CN202310438087A CN116566615A CN 116566615 A CN116566615 A CN 116566615A CN 202310438087 A CN202310438087 A CN 202310438087A CN 116566615 A CN116566615 A CN 116566615A
- Authority
- CN
- China
- Prior art keywords
- identity
- blockchain
- verification
- identification
- public key
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 59
- 238000012795 verification Methods 0.000 claims abstract description 131
- 230000004044 response Effects 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims 2
- 238000010586 diagram Methods 0.000 description 6
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
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
-
- 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/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
-
- 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/12—Applying verification of the received information
- H04L63/123—Applying verification of the received information received data contents, e.g. message integrity
-
- 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/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
-
- 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
-
- 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/40—Network security protocols
-
- 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/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
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)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本发明公开了一种基于区块链的身份认证方法,包括接收任一区块链中的身份证明提供方下发的原始身份证明;原始身份证明由身份证明提供方本地存储的身份私钥进行数字签名;从身份证明提供方所在的区块链中查询身份证明提供方存证的身份公钥,并基于身份公钥对原始身份证明进行验签;在验签通过的情况下,基于本地存储的设备私钥对原始身份证明进行数字签名,将数字签名后的待验证身份证明下发给任一区块链中的身份证明验证方;以使身份验证验证方从任一区块链中查询身份证明使用方存证的设备公钥,并基于设备公钥对待验证身份证明进行验签;以及,在验签通过的情况下,确定针对身份证明使用方的身份认证通过。
Description
技术领域
本发明涉及一种区块链技术,尤其涉及一种基于区块链的身份认证方法及装置。
背景技术
区块链技术,也被称之为分布式账本技术,是一种由若干台计算设备共同参与“记账”,共同维护一份完整的分布式数据库的新兴技术。由于区块链技术具有去中心化、公开透明、每台计算设备可以参与数据库记录、并且各计算设备之间可以快速的进行数据同步的特性,使得区块链技术在众多的领域中广泛的进行应用。
去中心化数字身份(Decentralized Identity,DID)是一种基于区块链技术实现的数字身份系统,具有保证数据真实可信、保护用户隐私安全、可移植性强等特征。
由于不同区块链生成的去中心化数字身份可能存在冲突,从而无法实现去中心化数字身份的跨链认证。
发明内容
本发明的目的之一在于提供一种基于区块链的身份认证方法,该方法可以实现去中心化数字身份的跨链认证。
基于根据上述发明目的,本发明提出了一种基于区块链的身份认证方法,应用于身份认证系统中的身份证明使用方,所述身份认证系统由至少两个用于实现去中心化数字身份的区块链组成,所述区块链中存证有各自区块链成员上传的去中心化数字身份关联的身份公钥;其中,与所述身份公钥对应的身份私钥由区块链成员本地存储;所述区块链成员包括身份证明提供方、身份证明使用方和身份证明验证方;所述区块链中还存证有各个区块链中的身份证明使用方上传的基于可信计算的设备公钥,与所述设备公钥对应的设备私钥由所述身份认证使用方本地存储,所述方法包括:
接收任一区块链中的身份证明提供方下发的原始身份证明;其中,所述原始身份证明包括证明所述身份证明使用方的身份,所述原始身份证明由所述身份证明提供方本地存储的身份私钥进行数字签名;
从所述身份证明提供方所在的区块链中查询所述身份证明提供方存证的身份公钥,并基于所述身份公钥对所述原始身份证明进行验签;
在验签通过的情况下,基于本地存储的设备私钥对所述原始身份证明进行数字签名,将数字签名后的待验证身份证明下发给任一区块链中的身份证明验证方;以使所述身份验证验证方从任一区块链中查询所述身份证明使用方存证的设备公钥,并基于所述设备公钥对所述待验证身份证明进行验签;以及,在验签通过的情况下,确定针对所述身份证明使用方的身份认证通过。
在本发明中,通过引入设备私钥和设备公钥,可以避免去中心化数字身份在跨链时出现冲突的问题。
进一步地,在一些实施例中,所述设备私钥存储在所述身份证明使用方本地的可信执行环境中;所述可信执行环境中包含有执行数据签名的逻辑代码和执行验签的逻辑代码:
所述基于所述身份公钥对所述原始身份证明进行验签,包括:
调用本地的可信执行环境中存储的执行验签的逻辑代码,基于所述身份公钥对所述原始身份证明进行验签;
所述基于本地存储的设备私钥对所述原始身份证明进行数字签名,包括:
调用本地的可信执行环境中存储的执行数字签名的逻辑代码,基于所述可信执行环境中的设备私钥对所述原始身份证明进行数字签名。
进一步地,在一些实施例中,所述方法还包括:
从任一区块链中获取用于执行数据签名的逻辑代码和执行验签的逻辑代码,并将所获取的执行数据签名的逻辑代码和执行验签的逻辑代码存储在本地的可信执行环境。
进一步地,在一些实施例中,所述原始身份证明下发的还包括所述身份证明提供方的去中心化数字身份;其中,所述去中心化数字身份中设置有标识位,所述标识位记录由注册所述去中心化数字身份的区块链的区块链标识;
所述从所述身份证明提供方所在的区块链中查询所述身份证明提供方存证的身份公钥,包括:
基于所述身份证明提供方对应的去中心化数字身份,获取所述去中心化数字身份的标识位记录的区块链标识;
从所述区块链标识对应的目标区块链中查询所述身份证明提供方存证的身份公钥。
进一步地,在一些实施例中,所述方法还包括:
响应于针对所述身份证明使用方的设备公钥发起的注册请求,将所述设备公钥存证到所述身份认证系统中的每个区块链。
进一步地,在一些实施例中,所述区块链中的所述执行数据签名的逻辑代码对应有唯一的代码标识;
所述调用本地的可信执行环境中存储的执行数字签名的逻辑代码,基于所述可信执行环境中的设备私钥对所述原始身份证明进行数字签名,包括:
调用本地的可信执行环境中存储的执行数字签名的逻辑代码,将所述原始身份证明和所述执行数字签名的逻辑代码的代码标识作为整体,使用所述可信执行环境中的设备私钥进行数字签名。
与前述方法相同的目的,本发明的还提供另一种基于区块链的身份认证方法,应用于身份认证系统中的身份证明验证方,所述身份认证系统由至少两个用于实现去中心化数字身份的区块链组成,所述区块链中存证有各自区块链成员上传的去中心化数字身份关联的身份公钥;其中,与所述身份公钥对应的身份私钥由区块链成员本地存储;所述区块链成员包括身份证明提供方、身份证明使用方和身份证明验证方;所述区块链中还存证有各个区块链中的身份证明使用方上传的基于可信计算的设备公钥,与所述设备公钥对应的设备私钥由所述身份认证使用方本地存储,所述方法包括:
接收任一区块链中的身份证明使用方发送的待验证身份证明;其中,所述待验证身份证明由所述身份证明使用方的设备私钥进行数字签名;
从任一区块链中查询所述身份证明使用方存证的与所述设备私钥对应的设备公钥;
基于所述设备公钥对所述待验证身份证明进行验签,并在验签通过的情况下,确定针对所述身份证明使用方的身份认证通过。
进一步地,在一些实施例中,所述待验证身份证明包括所述身份证明提供方下发给所述身份证明使用方的原始身份证明;其中,所述原始身份证明用于证明所述身份证明使用方的身份,所述原始身份证明由所述身份证明提供方本地存储的身份私钥进行数字签名。
进一步地,在一些实施例中,所述待验证身份证明在所述身份证明使用方本地的可信执行环境中生成,所述可信执行环境中包含有执行数据签名的逻辑代码和所述身份证明使用方的设备私钥;
所述待验证身份证明进一步由所述可信执行环境中存储的执行数字签名的逻辑代码,基于所述可信执行环境中的设备私钥对所述原始身份证明进行数字签名。
进一步地,在一些实施例中,所述执行验签的逻辑代码从区块链中获取并存储在所述可信执行环境,所述区块链中的所述执行数据签名的逻辑代码对应有唯一的代码标识;
所述待验证身份证明进一步由可信执行环境将所述原始身份证明和所述执行数字签名的逻辑代码的代码标识作为整体,使用所述可信执行环境中的设备私钥进行数字签名;
在所述验签通过的情况下,还包括:
响应于针对验签通过的所述待验证身份证明中的代码标识的查询请求,查询所述区块链中与所述代码标识对应的逻辑代码。
本发明的还提供一种基于区块链的身份认证装置,应用于身份认证系统中的身份证明使用方,所述身份认证系统由至少两个用于实现去中心化数字身份的区块链组成,所述区块链中存证有各自区块链成员上传的去中心化数字身份关联的身份公钥;其中,与所述身份公钥对应的身份私钥由区块链成员本地存储;所述区块链成员包括身份证明提供方、身份证明使用方和身份证明验证方;所述区块链中还存证有各个区块链中的身份证明使用方上传的基于可信计算的设备公钥,与所述设备公钥对应的设备私钥由所述身份认证使用方本地存储,所述装置包括:
接收模块,用于接收任一区块链中的身份证明提供方下发的原始身份证明;其中,所述原始身份证明用于证明所述身份证明使用方的身份,所述原始身份证明由所述身份证明提供方本地存储的身份私钥进行数字签名;
验证模块,用于从所述身份证明提供方所在的区块链中查询所述身份证明提供方存证的身份公钥,并基于所述身份公钥对所述原始身份证明进行验签;
签名模块,用于在验签通过的情况下,基于本地存储的设备私钥对所述原始身份证明进行数字签名,将数字签名后的待验证身份证明下发给任一区块链中的身份证明验证方;以使所述身份验证验证方从任一区块链中查询所述身份证明使用方存证的设备公钥,并基于所述设备公钥对所述待验证身份证明进行验签;以及,在验签通过的情况下,确定针对所述身份证明使用方的身份认证通过。
本发明的还提供一种基于区块链的身份认证装置,应用于身份认证系统中的身份证明验证方,所述身份认证系统由至少两个用于实现去中心化数字身份的区块链组成,所述区块链中存证有各自区块链成员上传的去中心化数字身份关联的身份公钥;其中,与所述身份公钥对应的身份私钥由区块链成员本地存储;所述区块链成员包括身份证明提供方、身份证明使用方和身份证明验证方;所述区块链中还存证有各个区块链中的身份证明使用方上传的基于可信计算的设备公钥,与所述设备公钥对应的设备私钥由所述身份认证使用方本地存储,所述装置包括:
接收模块,用于接收任一区块链中的身份证明使用方发送的待验证身份证明;其中,所述待验证身份证明由所述身份证明使用方的设备私钥进行数字签名;
查询模块,用于从任一区块链中查询所述身份证明使用方存证的与所述设备私钥对应的设备公钥;
验证模块,基于所述设备公钥对所述待验证身份证明进行验签;并在验签通过的情况下,确定针对所述身份证明使用方的身份认证通过。
本发明所述的基于区块链的身份认证方法及装置具有以下有益效果:
本发明在跨链场景下通过引入身份证明使用方的设备公钥和设备私钥,一方面将用于验签的设备公钥存证到身份认证系统中所有区块链,另一方面在身份证明使用方向身份证明验证方授权原始身份证明时,不再使用身份私钥而是使用设备私钥对原始身份证明进行数字签名;由于设备公钥具有全局唯一性,因此不会受到去中心化数字身份冲突的影响,从而在实现去中心化数字身份的跨链认证。
附图说明
图1示例性地示出了同一区块链下的身份认证系统的示意图;
图2示例性地显示了跨链场景下的身份认证系统的示意图;
图3示例性地显示了本发明以身份证明使用方为执行主体的基于区块链的身份认证方法的流程示意图;
图4示例性地显示了本发明改进后的跨链场景下的身份认证系统的示意图;
图5示例性地显示了本发明以身份证明验证方为执行主体的基于区块链的身份认证方法的流程示意图;
图6示例性地显示了本发明所述的基于区块链的身份认证装置的模块示意图;
图7示例性地显示了本发明所述的基于区块链的身份认证装置的模块示意图。
具体实施方式
下面将结合说明书附图和具体的实施例来对本发明所述的基于区块链的身份认证方法及装置、计算机可读存储介质、电子设备进行进一步地详细说明,但是该详细说明不构成对本发明的限制。
首先介绍本发明涉及到的一些技术概念。
去中心化数字身份(Decentralized Identity,DID)是一种基于区块链技术实现的数字身份系统,具有保证数据真实可信、保护用户隐私安全、可移植性强等特征。
在实现时,DID还需要借助去中心化公钥基础设施(Decentralized Public KeyInfrastructure,DPKI)。基于DPKI的区块链可以提供基于密码学技术的安全服务的基础设施,具体通过生成与DID关联的身份公私钥对,并根据身份公私钥对需要传输的数据进行数字签名和验签,以确保传输的数据的真实性和可信性。
一般的,现有多数的DID方案中,DPKI是在同一个区块链中实现的。下面请参考图1示出的同一区块链下的身份认证系统的示意图。
根据角色不同,可以将区块链中的区块链成员分为身份证明提供方、身份证明使用方和身份证明验证方。
首先,身份证明提供方、身份证明使用方和身份证明验证方都需要在区块链中存证自身DID关联的身份公钥,而与身份公钥对应的身份私钥则由区块链成员本地存储。
如图1中身份证明提供方的身份公钥pubkey1、身份证明使用方的身份公钥pubkey2、身份证明验方的身份公钥pubkey3都需要存证到区块链,而身份证明提供方的身份私钥prikey1、身份证明使用方的身份私钥prikey2、身份证明验证方的身份私钥prikey3则由各自存储在本地。
身份证明提供方可以向身份证明使用方提供一个身份证明,该身份证明可以是一种对身份证明使用方的身份真实性的背书。具体地,身份证明提供方可以使用本地的身份私钥prikey1对身份证明data进行数字签名,得到签名的身份证明prikey1(data)。
身份证明使用方可以将该身份证明授权给身份证明验证方。具体地,身份证明使用方使用本地的身份私钥prikey2,对由身份证明提供方签名过的身份证明prikey1(data)再次进行数字签名,得到第二次签名后的身份证明prikey2(prikey1(data))。
身份证明验证方在接收到身份证明prikey2(prikey1(data))之后,需要验证这个身份证明的真实性。具体地,身份证明验证方可以查询区块链中存证的所述身份证明提供方的身份公钥pubkey1和所述身份证明使用方的身份公钥pubkey2。更为具体的,基于身份证明提供方的DID,从区块链中查询与该DID关联的身份公钥pubkey1;基于身份证明使用方的DID,从区块链中查询与该DID关联的身份公钥pubkey2。
进一步,使用身份公钥pubkey2对身份证明prikey2(prikey1(data))进行验签(以验证身份证明确实由身份证明使用方使用),如果验证通过可以得到身份证明prikey1(data);进而,使用身份公钥pubkey1对身份证明prikey1(data)进行验签(以验证身份证明确实由身份证明提供方提供),如果验证通过可以得到身份证明data,并确定针对身份证明使用方的身份认证通过。
需要说明的是,上述示例中身份证明验证方的身份公钥和身份私钥并未使用,这是因为作为身份证明验证方时不会用到。实际上,身份证明提供方、身份证明使用方和身份证明验证方之间的角色可以变化,当图1中的身份私钥prikey3对应的区块链成员作为身份证明提供方或身份证明使用方时,就会使用到身份私钥prikey3和身份公钥pubkey3。
在同一区块链下的DPKI能够实现DID,然而如果涉及到多个区块链,由于不同的区块链成员的身份公钥仅存证在各自所在的区块链中,因此对于身份证明验证方来说,在查询身份公钥时,将面临从哪个区块链中查询的问题。
下面请参考图2示出的跨链场景下的DPKI的示意图。在跨链场景下,可能涉及多个不同的区块链。图1中示出的是2个区块链,分别是区块链1和区块链2,这2个区块链采用相同的DPKI。
首先,身份证明提供方、身份证明使用方和身份证明验证方需要在各自所在的区块链中存证自身DID关联的身份公钥,而与身份公钥对应的身份私钥则由区块链成员本地存储。
如图2中身份证明提供方的身份公钥pubkey1存证在区块链1,身份证明使用方的身份公钥pubkey2存证在区块链2,身份证明验方的身份公钥pubkey3存证在区块链1;而身份证明提供方的身份私钥prikey1、身份证明使用方的身份私钥prikey2、身份证明验证方的身份私钥prikey3则由各自存储在本地。
身份证明提供方向身份证明使用方提供一个身份证明,以及身份证明使用方将该身份证明授权给身份证明验证方,与前述同一区块链中相同,这里不再进行赘述。
进一步的,身份证明验证方在接收到身份证明使用方提供的身份证明prikey2(prikey1(data))之后,同样需要验证这个身份证明的真实性。为此,身份证明验证方需要从区块链中查询身份公钥pubkey1和pubkey2;由于存在多个区块链,就会面临从哪个区块链查询的问题。
图2的示例中仅给出了2个区块链,可能无法直观感受这个问题,那么假设此时存在100个区块链,如果遍历查询最多需要访问100个区块链才能查到身份公钥pubkey1和pubkey2,即查询效率较低。
在相关技术中,可能会将各个区块链中的身份公钥进行同步,这样从任何一个区块链中都可以查询到所有的身份公钥。然而,由于这些不同的区块链采用相同的DID技术,因而不可避免的存在DID冲突的问题。DID冲突的存在就导致无法实现去中心化数字身份的跨链认证。具体地,一旦存在DID冲突,与DID关联的身份公钥就不再唯一对应,从而导致区块链中存证的身份公钥之间的混淆。更为具体地,当身份证明验证方基于某个DID查询区块链时,可能会查询到多个与该DID关联的身份公钥,而错误的身份公钥验签可能得到错误的身份证明;因此DID冲突的存在就导致无法实现去中心化数字身份的跨链认证。
在本发明的一个实施例中,提出了一种基于区块链的身份认证的方法。图3示例性地示出了本发明所述的基于区块链的身份认证方法在一种实施方式下的流程示意图,可以应用于身份认证系统中的身份证明使用方。
下面请结合图4示出的改进后的跨链场景下的身份认证系统的示意图对上述身份认证系统加以说明。
如图4所示,身份认证系统由可以至少两个用于实现去中心化数字身份(DID)的区块链组成,所述区块链中存证有各自区块链成员上传的去中心化数字身份关联的身份公钥;其中,与所述身份公钥对应的身份私钥由区块链成员本地存储;所述区块链成员包括身份证明提供方、身份证明使用方和身份证明验证方;所述区块链中还存证有各个区块链中的身份证明使用方上传的基于可信计算的设备公钥,与所述设备公钥对应的设备私钥由所述身份认证使用方本地存储。
其中,所述设备公钥可以包括图4中示出的国内互联网金融身份认证联盟(Internal Internet Finance Authentication Alliance,IIFAA)的设备公钥,或者图4中未示出的互联网金融身份认证联盟(Internet Finance Authentication Alliance,IFAA)的设备公钥。
回到图3,上述基于区块链的身份认证方法可以包括如下步骤:
310:接收任一区块链中的身份证明提供方下发的原始身份证明;其中,所述原始身份证明包括证明所述身份证明使用方的身份,所述原始身份证明由所述身份证明提供方本地存储的身份私钥进行数字签名。
以图4为例,区块链1中的身份证明提供方可以向区块链2中的身份证明使用方提供一个身份证明,该身份证明可以是一种对身份证明使用方的身份真实性的背书。具体地,身份证明提供方可以使用本地的身份私钥prikey1对身份证明data进行数字签名,得到签名的原始身份证明prikey1(data)。
320:从所述身份证明提供方所在的区块链中查询所述身份证明提供方存证的身份公钥,并基于所述身份公钥对所述原始身份证明进行验签。
身份证明使用方在接收到原始身份证明之后,可以验证这个原始身份证明的真实性。以图4为例,身份证明使用方可以查询区块链中存证所述身份证明提供方的身份公钥pubkey1,使用身份公钥pubkey1对原始身份证明prikey1(data)进行验签(以验证原始身份证明确实由身份证明提供方提供),如果验证通过可以得到原始身份证明data。
330:在验签通过的情况下,基于本地存储的设备私钥对所述原始身份证明进行数字签名,将数字签名后的待验证身份证明下发给任一区块链中的身份证明验证方;以使所述身份验证验证方从任一区块链中查询所述身份证明使用方存证的设备公钥,并基于所述设备公钥对所述待验证身份证明进行验签;以及,在验签通过的情况下,确定针对所述身份证明使用方的身份认证通过。
本发明在跨链场景下通过引入身份证明使用方的设备公钥和设备私钥,一方面将用于验签的设备公钥存证到身份认证系统中所有区块链,另一方面在身份证明使用方向身份证明验证方授权原始身份证明时,不再使用身份私钥而是使用设备私钥对原始身份证明进行数字签名;由于设备公钥具有全局唯一性,因此不会受到去中心化数字身份冲突的影响,从而在实现去中心化数字身份的跨链认证。
在一些实施例中,所述设备私钥可以存储在所述身份证明使用方本地的可信执行环境(Trusted Execution Environment,TEE)中;所述可信执行环境中可以包含有执行数据签名的逻辑代码和执行验签的逻辑代码:
相应地,上述步骤320中的基于所述身份公钥对所述原始身份证明进行验签,可以包括:
调用本地的可信执行环境中存储的执行验签的逻辑代码,基于所述身份公钥对所述原始身份证明进行验签;
以及,上述步骤330中的基于本地存储的设备私钥对所述原始身份证明进行数字签名,可以包括:
调用本地的可信执行环境中存储的执行数字签名的逻辑代码,基于所述可信执行环境中的设备私钥对所述原始身份证明进行数字签名。
需要说明的是,所述执行验签的逻辑代码和执行数字签名的逻辑代码都是在TEE中运行的,从而确保验签和数字签名过程的数据安全。
下面结合图4所示,身份证明使用方通过调用本地TEE、运行TEE中存储的执行验签的逻辑代码,使用从区块链查询到的身份证明提供方的身份公钥pubkey1对原始身份证明prikey1(data)进行验签,如果验证通过可以得到data;接着,继续运行TEE中存储的执行数字签名的逻辑代码,使用TEE中存储的设备私钥对data重新进行数字签名,得到待验证身份证明newdata=设备私钥(data)。
通过TEE执行数字签名和签名验签,从而确保验签和数字签名过程的数据安全。
进一步地,在一些实施例中,所述方法还包括:
从任一区块链中获取用于执行数据签名的逻辑代码和执行验签的逻辑代码,并将所获取的执行数据签名的逻辑代码和执行验签的逻辑代码存储在本地的可信执行环境。
本发明中,可以将执行数据签名的逻辑代码和执行验签的逻辑代码公开在区块链上,确保逻辑代码的公开透明,一方面方便身份证明使用方获取准确的逻辑代码;另一方面,即使在区块链外传递的逻辑代码被篡改,也可以通过查询区块链中存证的逻辑代码,快速识别被篡改的逻辑代码。
进一步地,在一些实施例中,所述区块链中的所述执行数据签名的逻辑代码对应有唯一的代码标识;
相应地,所述调用本地的可信执行环境中存储的执行数字签名的逻辑代码,基于所述可信执行环境中的设备私钥对所述原始身份证明进行数字签名,可以包括:
调用本地的可信执行环境中存储的执行数字签名的逻辑代码,将所述原始身份证明和所述执行数字签名的逻辑代码的代码标识作为整体,使用所述可信执行环境中的设备私钥进行数字签名。
本发明中,通过将执行数字签名的逻辑代码的代码标识传递给身份证明验证方,使得身份证明验证方对待验证身份证明进行验签且验签通过后,基于验签得到的代码标识从区块链中追溯对应的逻辑代码。
进一步地,在一些实施例中,所述原始身份证明下发的还包括所述身份证明提供方的去中心化数字身份;其中,所述去中心化数字身份中设置有标识位,所述标识位记录由注册所述去中心化数字身份的区块链的区块链标识;
所述从所述身份证明提供方所在的区块链中查询所述身份证明提供方存证的身份公钥,包括:
基于所述身份证明提供方对应的去中心化数字身份,获取所述去中心化数字身份的标识位记录的区块链标识;
从所述区块链标识对应的目标区块链中查询所述身份证明提供方存证的身份公钥。
本发明中,针对跨链场景无法快速确定需要查询的身份公钥所在区块链的问题,针对性的在去中心化数字身份中设置了标识位,通过所述标识位记录由注册所述去中心化数字身份的区块链的区块链标识。
在实现时,由于DID实际是一个字符串,身份认证系统可以向所有区块链约定DID字符串的规则;例如可以在原有的字符串基础上新增标识位,或者也可以将原有的字符串中特定位置的字符作为标识位。
举例说明,区块链01生成的DID的字符串为DID:ION:dfaefaejflin098fanfeixxxfeafe9。以新增标识位为例,假设身份认证系统约定在字符“ION”之后增加标识位,那么基于该约定区块链01生成的DID的字符串将变为DID:ION01:dfaefaejflin098fanfeixxxfeafe9。
如此,通过字符“ION”之后设置的标识位,就可以确定该DID是由区块链01生成,因而与该DID关联的身份公钥也存证在区块链01中。
进一步地,在一些实施例中,所述方法还包括:
响应于针对所述身份证明使用方的设备公钥发起的注册请求,将所述设备公钥存证到所述身份认证系统中的每个区块链。
如前所述,身份证明使用方需要将自身的设备公钥同步到身份认证系统中所有的区块链,以使身份证明验证方从任一区块链中都可以获取到用于验签待验证身份证明的设备公钥。
需要说明的是,身份证明验证方作为所在区块链的区块链成员,从所在区块链中查询设备公钥相对效率较高;当然其也可以通过区块链的跨链技术,从其它区块链中查询设备公钥。
图3中示出的步骤330,其中的身份验证验证方从任一区块链中查询所述身份证明使用方存证的设备公钥,并基于所述设备公钥对所述待验证身份证明进行验签;以及,在验签通过的情况下,确定针对所述身份证明使用方的身份认证通过。请结合下面本发明示出的另一基于区块链的身份认证方法。
本发明除了图3之外,图5示例性地示出了本发明另一种基于区块链的身份认证方法在一种实施方式下的流程示意图,该方法可以应用于身份认证系统中的身份证明验证方。所述身份认证系统同样可以参考图4,这里不再进行赘述。
如图5所示,上述基于区块链的身份认证方法可以包括如下步骤:
510,接收任一区块链中的身份证明使用方发送的待验证身份证明;其中,所述待验证身份证明由所述身份证明使用方的设备私钥进行数字签名。
如前图3中所示,所述待验证身份证明可以包括所述身份证明提供方下发给所述身份证明使用方的原始身份证明;其中,所述原始身份证明用于证明所述身份证明使用方的身份,所述原始身份证明由所述身份证明提供方本地存储的身份私钥进行数字签名。
进一步地,在一些实施例中,所述待验证身份证明在所述身份证明使用方本地的可信执行环境中生成,所述可信执行环境中包含有执行数据签名的逻辑代码和所述身份证明使用方的设备私钥;
所述待验证身份证明进一步由所述可信执行环境中存储的执行数字签名的逻辑代码,基于所述可信执行环境中的设备私钥对所述原始身份证明进行数字签名。
如前图3中实施例所示,通过TEE执行数字签名可以确保数字签名过程的数据安全。更为具体地在身份证明使用方本地的TEE中执行数字签名可以确保安全生成待验证身份证明。
520,从任一区块链中查询所述身份证明使用方存证的与所述设备私钥对应的设备公钥。
以图4为例,身份证明验证方在接收到身份证明使用方发送的待验证身份证明newdata之后,需要验证这个待验证身份证明newdata的真实性。具体地,由于这个待验证身份证明newdata是由身份证明使用方的设备私钥签名的,而用于验证签名的设备公钥IIFAA预先存证在所有区块链;因此身份证明验证方可以从任一区块链中查询所述身份证明使用方存证的与所述设备私钥对应的设备公钥IIFAA。
需要说明的是,身份证明验证方作为所在区块链的区块链成员,从所在区块链中查询设备公钥相对效率较高;当然其也可以通过区块链的跨链技术,从其它区块链中查询设备公钥。
530,基于所述设备公钥对所述待验证身份证明进行验签,并在验签通过的情况下,确定针对所述身份证明使用方的身份认证通过。
以图4为例,身份证明验证方可以使用设备公钥IIFAA对待验证身份证明newdata=设备私钥(data)进行验签,如果验签通过可以得到原始身份证明data,确定针对所述身份证明使用方的身份认证通过。
本发明在跨链场景下通过引入身份证明使用方的设备公钥和设备私钥,一方面将用于验签的设备公钥存证到身份认证系统中所有区块链,另一方面在身份证明使用方向身份证明验证方授权原始身份证明时,不再使用身份私钥而是使用设备私钥对原始身份证明进行数字签名;由于设备公钥具有全局唯一性,因此不会受到去中心化数字身份冲突的影响,从而在实现去中心化数字身份的跨链认证。
进一步地,在一些实施例中,所述执行数字签名的逻辑代码从区块链中获取并存储在所述可信执行环境,所述区块链中的所述执行数据签名的逻辑代码对应有唯一的代码标识;
所述待验证身份证明进一步由可信执行环境将所述原始身份证明和所述执行数字签名的逻辑代码的代码标识作为整体,使用所述可信执行环境中的设备私钥进行数字签名;
相应地,所述方法在所述验签通过的情况下,还可以包括:
响应于针对验签通过的所述待验证身份证明中的代码标识的查询请求,查询所述区块链中与所述代码标识对应的逻辑代码。
本发明中,通过将执行数字签名的逻辑代码存证在区块链,并设置与逻辑代码对应的代码标识,使得身份证明验证方对待验证身份证明进行验签且验签通过后,基于验签得到的代码标识从区块链中追溯对应的逻辑代码。
与前述基于区块链的身份认证方法实施例相对应,本发明还提供了基于区块链的身份认证装置的实施例。
请参见图6,为本发明示出的基于区块链的身份认证装置的模块图,所述装置对应了图3所示实施例,所述装置可以应用于身份认证系统中的身份证明使用方,所述身份认证系统由至少两个用于实现去中心化数字身份认证的区块链组成,所述区块链中存证有各自区块链成员上传的去中心化数字身份关联的身份公钥;其中,与所述身份公钥对应的身份私钥由区块链成员本地存储;所述区块链成员包括身份证明提供方、身份证明使用方和身份证明验证方;所述区块链中还存证有各个区块链中的身份证明使用方上传的基于可信计算的设备公钥,与所述设备公钥对应的设备私钥由所述身份认证使用方本地存储;所述装置包括:
接收模块610,用于接收任一区块链中的身份证明提供方下发的原始身份证明;其中,所述原始身份证明用于证明所述身份证明使用方的身份,所述原始身份证明由所述身份证明提供方本地存储的身份私钥进行数字签名;
验证模块620,用于从所述身份证明提供方所在的区块链中查询所述身份证明提供方存证的身份公钥,并基于所述身份公钥对所述原始身份证明进行验签;
签名模块630,用于在验签通过的情况下,基于本地存储的设备私钥对所述原始身份证明进行数字签名,将数字签名后的待验证身份证明下发给任一区块链中的身份证明验证方;以使所述身份验证验证方从任一区块链中查询所述身份证明使用方存证的设备公钥,并基于所述设备公钥对所述待验证身份证明进行验签;以及,在验签通过的情况下,确定针对所述身份证明使用方的身份认证通过。
进一步地,在一些实施例中,所述设备私钥存储在所述身份证明使用方本地的可信执行环境中;所述可信执行环境中包含有执行数据签名的逻辑代码和执行验签的逻辑代码:
所述验证模块620中的基于所述身份公钥对所述原始身份证明进行验签,具体可以包括:调用本地的可信执行环境中存储的执行验签的逻辑代码,基于所述身份公钥对所述原始身份证明进行验签;
所述签名模块630中的基于本地存储的设备私钥对所述原始身份证明进行数字签名,具体可以包括:调用本地的可信执行环境中存储的执行数字签名的逻辑代码,基于所述可信执行环境中的设备私钥对所述原始身份证明进行数字签名。
进一步地,在一些实施例中,所述装置还可以包括:
存储模块,用于从任一区块链中获取用于执行数据签名的逻辑代码和执行验签的逻辑代码,并将所获取的执行数据签名的逻辑代码和执行验签的逻辑代码存储在本地的可信执行环境。
进一步地,在一些实施例中,所述原始身份证明下发的还包括所述身份证明提供方的去中心化数字身份;其中,所述去中心化数字身份中设置有标识位,所述标识位记录由注册所述去中心化数字身份的区块链的区块链标识;
所述验证模块620中的从所述身份证明提供方所在的区块链中查询所述身份证明提供方存证的身份公钥,具体可以包括:基于所述身份证明提供方对应的去中心化数字身份,获取所述去中心化数字身份的标识位记录的区块链标识;从所述区块链标识对应的目标区块链中查询所述身份证明提供方存证的身份公钥。
进一步地,在一些实施例中,所述装置还可以包括:
注册模块,用于响应于针对所述身份证明使用方的设备公钥发起的注册请求,将所述设备公钥存证到所述身份认证系统中的每个区块链。
进一步地,在一些实施例中,所述区块链中的所述执行数据签名的逻辑代码对应有唯一的代码标识;
所述签名模块630中的调用本地的可信执行环境中存储的执行数字签名的逻辑代码,基于所述可信执行环境中的设备私钥对所述原始身份证明进行数字签名,具体可以包括:调用本地的可信执行环境中存储的执行数字签名的逻辑代码,将所述原始身份证明和所述执行数字签名的逻辑代码的代码标识作为整体,使用所述可信执行环境中的设备私钥进行数字签名。
请参见图7,为本发明示出的基于区块链的身份认证装置的模块图,所述装置对应了图5所示实施例,所述装置可以应用于身份认证系统中的身份证明验证方,所述身份认证系统由至少两个用于实现去中心化数字身份认证的区块链组成,所述区块链中存证有各自区块链成员上传的去中心化数字身份关联的身份公钥;其中,与所述身份公钥对应的身份私钥由区块链成员本地存储;所述区块链成员包括身份证明提供方、身份证明使用方和身份证明验证方;所述区块链中还存证有各个区块链中的身份证明使用方上传的基于可信计算的设备公钥,与所述设备公钥对应的设备私钥由所述身份认证使用方本地存储;所述装置包括:
接收模块710,用于接收任一区块链中的身份证明使用方发送的待验证身份证明;其中,所述待验证身份证明由所述身份证明使用方的设备私钥进行数字签名;
查询模块720,用于从任一区块链中查询所述身份证明使用方存证的与所述设备私钥对应的设备公钥;
验证模块730,基于所述设备公钥对所述待验证身份证明进行验签;并在验签通过的情况下,确定针对所述身份证明使用方的身份认证通过。
进一步地,在一些实施例中,所述待验证身份证明包括所述身份证明提供方下发给所述身份证明使用方的原始身份证明;其中,所述原始身份证明用于证明所述身份证明使用方的身份,所述原始身份证明由所述身份证明提供方本地存储的身份私钥进行数字签名。
进一步地,在一些实施例中,所述待验证身份证明在所述身份证明使用方本地的可信执行环境中生成,所述可信执行环境中包含有执行数据签名的逻辑代码和所述身份证明使用方的设备私钥;
所述待验证身份证明进一步由所述可信执行环境中存储的执行数字签名的逻辑代码,基于所述可信执行环境中的设备私钥对所述原始身份证明进行数字签名。
进一步地,在一些实施例中,所述执行数字签名的逻辑代码从区块链中获取并存储在所述可信执行环境,所述区块链中的所述执行数据签名的逻辑代码对应有唯一的代码标识;
所述待验证身份证明进一步由可信执行环境将所述原始身份证明和所述执行数字签名的逻辑代码的代码标识作为整体,使用所述可信执行环境中的设备私钥进行数字签名;
所述验证模块730,还用于在所述验签通过的情况下,响应于针对验签通过的所述待验证身份证明中的代码标识的查询请求,查询所述区块链中与所述代码标识对应的逻辑代码。
上述装置中各个模块的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本发明方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以描述的基于区块链的身份认证装置的内部功能模块和结构示意,其实质上的执行主体可以为一种电子设备,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行上述任一基于区块链的身份认证方法的实施例。
在上述电子设备的实施例中,应理解,该处理器可以是处理单元(英文:CentralProcessing Unit,简称:CPU),还可以是其他通用处理器、数字信号处理器(英文:DigitalSignal Processor,简称:DSP)、专用集成电路(英文:Application Specific IntegratedCircuit,简称:ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,而前述的存储器可以是只读存储器(英文:read-only memory,缩写:ROM)、随机存取存储器(英文:random access memory,简称:RAM)、快闪存储器、硬盘或者固态硬盘。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
另外,本发明还提供有一种计算机可读存储介质,所述计算机可读存储介质中的指令由电子设备的处理器执行时,可以使得所述电子设备能够执行上述任一基于区块链的身份认证方法的实施例。
需要注意的是,以上列举的仅为本发明的具体实施例,显然本发明不限于以上实施例,随之有着许多的类似变化。本领域的技术人员如果从本发明公开的内容直接导出或联想到的所有变形,均应属于本发明的保护范围。
Claims (14)
1.一种基于区块链的身份认证方法,应用于身份认证系统中的身份证明使用方,所述身份认证系统由至少两个用于实现去中心化数字身份认证的区块链组成,所述区块链中存证有各自区块链成员上传的去中心化数字身份关联的身份公钥;其中,与所述身份公钥对应的身份私钥由区块链成员本地存储;所述区块链成员包括身份证明提供方、身份证明使用方和身份证明验证方;所述区块链中还存证有各个区块链中的身份证明使用方上传的基于可信计算的设备公钥,与所述设备公钥对应的设备私钥由所述身份认证使用方本地存储,所述方法包括:
接收任一区块链中的身份证明提供方下发的原始身份证明;其中,所述原始身份证明包括证明所述身份证明使用方的身份,所述原始身份证明由所述身份证明提供方本地存储的身份私钥进行数字签名;
从所述身份证明提供方所在的区块链中查询所述身份证明提供方存证的身份公钥,并基于所述身份公钥对所述原始身份证明进行验签;
在验签通过的情况下,基于本地存储的设备私钥对所述原始身份证明进行数字签名,将数字签名后的待验证身份证明下发给任一区块链中的身份证明验证方;以使所述身份验证验证方从任一区块链中查询所述身份证明使用方存证的设备公钥,并基于所述设备公钥对所述待验证身份证明进行验签;以及,在验签通过的情况下,确定针对所述身份证明使用方的身份认证通过。
2.如权利要求1所述的基于区块链的身份认证方法,所述设备私钥存储在所述身份证明使用方本地的可信执行环境中;所述可信执行环境中包含有执行数据签名的逻辑代码和执行验签的逻辑代码:
所述基于所述身份公钥对所述原始身份证明进行验签,包括:
调用本地的可信执行环境中存储的执行验签的逻辑代码,基于所述身份公钥对所述原始身份证明进行验签;
所述基于本地存储的设备私钥对所述原始身份证明进行数字签名,包括:
调用本地的可信执行环境中存储的执行数字签名的逻辑代码,基于所述可信执行环境中的设备私钥对所述原始身份证明进行数字签名。
3.如权利要求2所述的基于区块链的身份认证方法,所述方法还包括:
从任一区块链中获取用于执行数据签名的逻辑代码和执行验签的逻辑代码,并将所获取的执行数据签名的逻辑代码和执行验签的逻辑代码存储在本地的可信执行环境。
4.如权利要求2所述的基于区块链的身份认证方法,所述原始身份证明下发的还包括所述身份证明提供方的去中心化数字身份;其中,所述去中心化数字身份中设置有标识位,所述标识位记录由注册所述去中心化数字身份的区块链的区块链标识;
所述从所述身份证明提供方所在的区块链中查询所述身份证明提供方存证的身份公钥,包括:
基于所述身份证明提供方对应的去中心化数字身份,获取所述去中心化数字身份的标识位记录的区块链标识;
从所述区块链标识对应的目标区块链中查询所述身份证明提供方存证的身份公钥。
5.如权利要求1所述的基于区块链的身份认证方法,所述方法还包括:
响应于针对所述身份证明使用方的设备公钥发起的注册请求,将所述设备公钥存证到所述身份认证系统中的每个区块链。
6.如权利要求3所述的基于区块链的身份认证方法,所述区块链中的所述执行数据签名的逻辑代码对应有唯一的代码标识;
所述调用本地的可信执行环境中存储的执行数字签名的逻辑代码,基于所述可信执行环境中的设备私钥对所述原始身份证明进行数字签名,包括:
调用本地的可信执行环境中存储的执行数字签名的逻辑代码,将所述原始身份证明和所述执行数字签名的逻辑代码的代码标识作为整体,使用所述可信执行环境中的设备私钥进行数字签名。
7.一种基于区块链的身份认证方法,应用于身份认证系统中的身份证明验证方,所述身份认证系统由至少两个用于实现去中心化数字身份的区块链组成,所述区块链中存证有各自区块链成员上传的去中心化数字身份关联的身份公钥;其中,与所述身份公钥对应的身份私钥由区块链成员本地存储;
所述区块链成员包括身份证明提供方、身份证明使用方和身份证明验证方;所述区块链中还存证有各个区块链中的身份证明使用方上传的基于可信计算的设备公钥,与所述设备公钥对应的设备私钥由所述身份认证使用方本地存储,所述方法包括:
接收任一区块链中的身份证明使用方发送的待验证身份证明;其中,所述待验证身份证明由所述身份证明使用方的设备私钥进行数字签名;
从任一区块链中查询所述身份证明使用方存证的与所述设备私钥对应的设备公钥;
基于所述设备公钥对所述待验证身份证明进行验签,并在验签通过的情况下,确定针对所述身份证明使用方的身份认证通过。
8.如权利要求7所述的基于区块链的身份认证方法,所述待验证身份证明包括所述身份证明提供方下发给所述身份证明使用方的原始身份证明;其中,所述原始身份证明用于证明所述身份证明使用方的身份,所述原始身份证明由所述身份证明提供方本地存储的身份私钥进行数字签名。
9.如权利要求8所述的基于区块链的身份认证方法,所述待验证身份证明在所述身份证明使用方本地的可信执行环境中生成,所述可信执行环境中包含有执行数据签名的逻辑代码和所述身份证明使用方的设备私钥;
所述待验证身份证明进一步由所述可信执行环境中存储的执行数字签名的逻辑代码,基于所述可信执行环境中的设备私钥对所述原始身份证明进行数字签名。
10.如权利要求9所述的基于区块链的身份认证方法,所述执行数字签名的逻辑代码从区块链中获取并存储在所述可信执行环境,所述区块链中的所述执行数据签名的逻辑代码对应有唯一的代码标识;
所述待验证身份证明进一步由可信执行环境将所述原始身份证明和所述执行数字签名的逻辑代码的代码标识作为整体,使用所述可信执行环境中的设备私钥进行数字签名;
在所述验签通过的情况下,还包括:
响应于针对验签通过的所述待验证身份证明中的代码标识的查询请求,查询所述区块链中与所述代码标识对应的逻辑代码。
11.一种基于区块链的身份认证装置,应用于身份认证系统中的身份证明使用方,所述身份认证系统由至少两个用于实现去中心化数字身份的区块链组成,所述区块链中存证有各自区块链成员上传的去中心化数字身份关联的身份公钥;其中,与所述身份公钥对应的身份私钥由区块链成员本地存储;所述区块链成员包括身份证明提供方、身份证明使用方和身份证明验证方;所述区块链中还存证有各个区块链中的身份证明使用方上传的基于可信计算的设备公钥,与所述设备公钥对应的设备私钥由所述身份认证使用方本地存储,所述装置包括:
接收模块,用于接收任一区块链中的身份证明提供方下发的原始身份证明;其中,所述原始身份证明用于证明所述身份证明使用方的身份,所述原始身份证明由所述身份证明提供方本地存储的身份私钥进行数字签名;
验证模块,用于从所述身份证明提供方所在的区块链中查询所述身份证明提供方存证的身份公钥,并基于所述身份公钥对所述原始身份证明进行验签;
签名模块,用于在验签通过的情况下,基于本地存储的设备私钥对所述原始身份证明进行数字签名,将数字签名后的待验证身份证明下发给任一区块链中的身份证明验证方;以使所述身份验证验证方从任一区块链中查询所述身份证明使用方存证的设备公钥,并基于所述设备公钥对所述待验证身份证明进行验签;以及,在验签通过的情况下,确定针对所述身份证明使用方的身份认证通过。
12.一种基于区块链的身份认证装置,应用于身份认证系统中的身份证明验证方,所述身份认证系统由至少两个用于实现去中心化数字身份的区块链组成,所述区块链中存证有各自区块链成员上传的去中心化数字身份关联的身份公钥;其中,与所述身份公钥对应的身份私钥由区块链成员本地存储;所述区块链成员包括身份证明提供方、身份证明使用方和身份证明验证方;所述区块链中还存证有各个区块链中的身份证明使用方上传的基于可信计算的设备公钥,与所述设备公钥对应的设备私钥由所述身份认证使用方本地存储,所述装置包括:
接收模块,用于接收任一区块链中的身份证明使用方发送的待验证身份证明;其中,所述待验证身份证明由所述身份证明使用方的设备私钥进行数字签名;
查询模块,用于从任一区块链中查询所述身份证明使用方存证的与所述设备私钥对应的设备公钥;
验证模块,基于所述设备公钥对所述待验证身份证明进行验签;并
在验签通过的情况下,确定针对所述身份证明使用方的身份认证通过。
13.一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述权利要求1-10任一所述的方法。
14.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述权利要求1-10任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310438087.XA CN116566615A (zh) | 2023-04-18 | 2023-04-18 | 一种基于区块链的身份认证方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310438087.XA CN116566615A (zh) | 2023-04-18 | 2023-04-18 | 一种基于区块链的身份认证方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116566615A true CN116566615A (zh) | 2023-08-08 |
Family
ID=87500996
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310438087.XA Pending CN116566615A (zh) | 2023-04-18 | 2023-04-18 | 一种基于区块链的身份认证方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116566615A (zh) |
-
2023
- 2023-04-18 CN CN202310438087.XA patent/CN116566615A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112446785B (zh) | 跨链交易方法、系统、装置、设备和存储介质 | |
CA3030813C (en) | Method for providing smart contract-based certificate service, and server employing same | |
JP7372434B2 (ja) | スクリプトに基づくブロックチェーン相互作用 | |
US11258612B2 (en) | Method, apparatus, and electronic device for blockchain-based recordkeeping | |
WO2020134942A1 (zh) | 身份核实方法及其系统 | |
US6097811A (en) | Tree-based certificate revocation system | |
CN111144881A (zh) | 对资产转移数据的选择性访问 | |
US20190141048A1 (en) | Blockchain identification system | |
CN113988857A (zh) | Nft交易方法、交易系统、计算机可读存储介质及终端设备 | |
KR20180041043A (ko) | m of n 다중 서명에 의한 인증서 서비스를 제공하는 방법 및 이를 이용한 서버 | |
CN111031074B (zh) | 一种认证方法、服务器和客户端 | |
US11101989B2 (en) | Trusted ring | |
CN110647553B (zh) | 一种基于区块链的电力交易合同管理方法及系统 | |
CN111460499A (zh) | 一种保护隐私的基于Merkletree的区块链用户属性集核验方法 | |
CN114866260B (zh) | 一种变色龙哈希分布式身份使用方法和系统 | |
CN112737793B (zh) | 一种更新区块链域名配置的方法和装置 | |
KR101890587B1 (ko) | 머클 트리 구조를 사용하여 m of n 다중 서명에 의한 인증서 서비스를 제공하는 방법 및 이를 이용한 서버 | |
CN116566615A (zh) | 一种基于区块链的身份认证方法及装置 | |
CN111147477B (zh) | 一种基于区块链网络的验证方法及装置 | |
CN114189341A (zh) | 基于区块链标识的数字证书分级处理方法及装置 | |
CN115442123B (zh) | 实名制认证方法、装置、电子设备及计算机可读介质 | |
Majd et al. | Secure and Cost Effective IoT Authentication and Data Storage Framework using Blockchain NFT | |
US12033146B2 (en) | Script based blockchain interaction | |
CN117155553A (zh) | 一种存证方法、装置、介质和设备 | |
CN114172666A (zh) | 基于区块链标识的数字证书多级处理方法及装置 |
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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40094554 Country of ref document: HK |