CN117395005A - 基于区块链的身份认证系统、方法及计算机设备 - Google Patents
基于区块链的身份认证系统、方法及计算机设备 Download PDFInfo
- Publication number
- CN117395005A CN117395005A CN202210792675.9A CN202210792675A CN117395005A CN 117395005 A CN117395005 A CN 117395005A CN 202210792675 A CN202210792675 A CN 202210792675A CN 117395005 A CN117395005 A CN 117395005A
- Authority
- CN
- China
- Prior art keywords
- authentication
- identity information
- blockchain
- node
- identity
- 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 84
- 230000004044 response Effects 0.000 claims abstract description 39
- 238000004590 computer program Methods 0.000 claims description 20
- 230000015654 memory Effects 0.000 claims description 10
- 230000000977 initiatory effect Effects 0.000 claims description 3
- 230000008569 process Effects 0.000 abstract description 30
- 238000010586 diagram Methods 0.000 description 16
- 230000006870 function Effects 0.000 description 10
- 230000007246 mechanism Effects 0.000 description 8
- 238000013475 authorization Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000012797 qualification Methods 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 230000010485 coping Effects 0.000 description 1
- 230000006378 damage Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000005315 distribution function Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- 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
-
- 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/3236—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 using cryptographic hash functions
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本申请公开了一种基于区块链的身份认证系统、方法、计算机设备及存储介质,属于区块链技术领域。本申请通过区块链上的预言机合约,生成链内业务的认证事件记录;链外的预言机节点检测到认证事件记录,调用认证网关节点认证身份信息,并在区块链上存储身份信息的数字藏品;该认证网关节点响应于从系统外接收到的认证请求来认证身份信息,并在目标区块链上存储身份信息的数字藏品。通过上述技术方案,既能够及时地响应链内业务对身份认证的需求,也能够高效地处理系统外的认证请求,并及时地基于可信的认证结果在链上留存身份信息的数字藏品,在保证身份认证过程安全性的同时,高效地兼容了链内和链外的多种业务场景,有效提升了身份认证的效率。
Description
技术领域
本申请涉及区块链技术领域,特别涉及一种基于区块链的身份认证系统、方法、计算机设备及存储介质。
背景技术
区块链(Blockchain)技术具有去中心化、不可篡改和可追溯等特性。将通过认证的身份信息在区块链中留存,即可在无需第三方认证机构进行信任背书的情况下,提供安全可信的身份认证服务。
由于区块链是一个确定性的、相对封闭的数据系统,其原则上无法主动获取链外的数据,因此,区块链与链外数据进行交互的过程较为繁琐。而链内和链外的多种业务场景中,都存在进行身份认证的需求,例如,运行在链内的智能合约被触发,请求进行身份认证,或者,链外的对象想要通过区块链进行身份认证。因此,如何在提供身份认证服务时,高效地兼容链内和链外的多种业务场景,从而提高身份认证的效率,成为亟待解决的问题。
发明内容
本申请实施例提供了一种基于区块链的身份认证系统、方法、计算机设备及存储介质,能够有效提高身份认证的效率。该技术方案如下:
一方面,提供了一种基于区块链的身份认证系统,该系统包括认证网关节点、预言机节点和区块链节点,该区块链节点配置有多条区块链,该区块链上存储有预言机合约,该预言机合约用于执行认证流程;
该区块链节点,用于响应于任一业务对该区块链上的预言机合约的调用请求,运行该预言机合约,以生成该业务的认证事件记录,该认证事件记录包括待认证的第一身份信息;
该预言机节点,用于响应于从该区块链上检测到该认证事件记录,基于该认证事件记录包括的该第一身份信息,向该认证网关节点发送第一认证请求,该第一认证请求携带该第一身份信息;
该认证网关节点,用于响应于从该预言机节点接收到该第一认证请求,对该第一身份信息进行认证,在获取到该第一身份信息的认证结果的情况下,向该预言机节点返回该第一身份信息的认证结果;
该预言机节点,用于响应于接收到该第一身份信息的认证结果,在该区块链上,存储该第一身份信息的数字藏品,其中,数字藏品用于证明身份信息的有效性;
该认证网关节点,还用于响应于来自该系统之外的第二认证请求,对该第二认证请求所携带的第二身份信息进行认证,响应于接收到该第二身份信息的认证结果,在该多条区块链中的目标区块链上存储该第二身份信息的数字藏品。
一方面,提供了一种基于区块链的身份认证方法,由基于区块链的身份认证系统中的预言机节点执行,该系统包括认证网关节点、该预言机节点和区块链节点,该区块链节点配置有多条区块链,该区块链上存储有预言机合约,该预言机合约用于执行认证流程;该方法包括:
响应于从该区块链上检测到业务的认证事件记录,基于该认证事件记录包括的待认证的第一身份信息,向该认证网关节点发送第一认证请求,该第一认证请求携带该第一身份信息,该认证事件记录由该区块链节点响应于该业务对该区块链上存储的预言机合约的调用请求生成;
响应于从该认证网关节点接收到该第一身份信息的认证结果,在该区块链上,存储该第一身份信息的数字藏品,其中,数字藏品用于证明身份信息的有效性。
在一种可能实施方式中,该第一身份信息包括第一对象在该区块链上的账户地址,该响应于从该认证网关节点接收到该第一身份信息的认证结果,在该区块链上,存储该第一身份信息的数字藏品包括:
在该第一身份信息的认证结果为认证通过的情况下,基于该第一身份信息和该第一身份信息的认证结果,在该区块链上生成该第一身份信息的数字藏品;
将该区块链上该第一身份信息的数字藏品,存储至该第一对象在该区块链上的账户地址。
在一种可能实施方式中,该区块链上存储有身份合约,该身份合约用于记录数字藏品与区块链上的账户地址之间的绑定关系,其中,数字藏品用于证明所绑定账户地址的身份信息的有效性;该方法还包括:
在该第一身份信息的认证结果为认证通过的情况下,向该区块链节点发起针对该第一身份信息的数字藏品绑定交易,该数字藏品绑定交易用于在该身份合约中建立该第一身份信息的数字藏品和该第一对象的账户地址之间的绑定关系。
在一种可能实施方式中,该区块链上存储有身份合约,该身份合约用于记录数字藏品与区块链上的账户地址之间的绑定关系,其中,数字藏品用于证明所绑定账户地址的身份信息的有效性;该方法还包括:
响应于成功在该身份合约中建立该第一身份信息的数字藏品和该第一对象的账户地址之间的绑定关系,触发该预言机合约的业务回调流程,该业务回调流程用于基于该第一身份信息的认证结果,响应该业务对该预言机合约的调用请求。
在一种可能实施方式中,该预言机合约的业务回调流程包括:向该业务返回回调通知,该回调通知用于指示该业务调用该身份合约,以获取该第一身份信息的认证结果。
一方面,提供了一种基于区块链的身份认证方法,由基于区块链的身份认证系统中的认证网关节点执行,该系统包括该认证网关节点、预言机节点和区块链节点,该区块链节点配置有多条区块链,该区块链上存储有预言机合约,该预言机合约用于执行认证流程;该方法包括:
响应于从该预言机节点接收到携带第一身份信息的第一认证请求,对该第一身份信息进行认证,在获取到该第一身份信息的认证结果的情况下,向该预言机节点返回该第一身份信息的认证结果,该第一身份信息的认证结果用于在该区块链上,存储该第一身份信息的数字藏品,该第一认证请求由该预言机节点基于从该区块链上检测到的认证事件记录包括的该第一身份信息发送,该认证事件记录由该区块链节点响应于任一业务对该区块链上存储的预言机合约的调用请求生成;
响应于来自该系统之外的第二认证请求,对该第二认证请求所携带的第二身份信息进行认证,响应于接收到该第二身份信息的认证结果,在该多条区块链中的目标区块链上存储该第二身份信息的数字藏品。
在一种可能实施方式中,该第一认证请求包括认证类型信息,该响应于从该预言机节点接收到携带第一身份信息的第一认证请求,对该第一身份信息进行认证包括:
从多个认证渠道节点中,确定该认证类型信息对应的目标节点,该目标节点用于对属于目标类型的身份信息进行认证;
向该目标节点发送该第一身份信息,以使该目标节点对该第一身份信息进行认证。
在一种可能实施方式中,该响应于从该预言机节点接收到携带第一身份信息的第一认证请求,对该第一身份信息进行认证包括:
向多个该目标节点发送该第一身份信息,以使多个该目标节点对该第一身份信息进行认证;该方法还包括:
基于该多个目标节点对该第一身份信息的参考认证结果,确定该第一身份信息的认证结果。
在一种可能实施方式中,该基于该多个目标节点对该第一身份信息的参考认证结果,确定该第一身份信息的认证结果包括:
基于多个该目标节点的认证记录,确定多个该目标节点的认证参考度,该认证记录包括该目标节点在目标时间段内提供认证服务的次数;
从多个该目标节点中,确定该认证参考度排序位于前目标数量的目标节点;
基于该前目标数量的目标节点对该第一身份信息的参考认证结果,确定该第一身份信息的认证结果。
在一种可能实施方式中,该基于该多个目标节点对该第一身份信息的参考认证结果,确定该第一身份信息的认证结果包括:
基于多个该目标节点对该第一身份信息的参考认证结果,确定通过节点数量,该通过节点数量是指示该第一身份信息认证通过的参考认证结果的数量;
在该通过节点数量大于目标数量的情况下,确定该第一身份信息的认证结果为该第一身份信息认证通过。
在一种可能实施方式中,该第二身份信息包括第二对象在该目标区块链上的账户地址;
该响应于接收到该第二身份信息的认证结果,在该多条区块链中的目标区块链上存储该第二身份信息的数字藏品包括:
在该第二身份信息的认证结果为认证通过的情况下,基于该第二身份信息和该第二身份信息的认证结果,在该目标区块链上生成该第二身份信息的数字藏品;
将该目标区块链上该第二身份信息的数字藏品,存储至该第二对象在该目标区块链上的账户地址。
在一种可能实施方式中,该目标区块链上存储有身份合约,该身份合约用于记录数字藏品与区块链上的账户地址之间的绑定关系,其中,数字藏品用于证明所绑定账户地址的身份信息的有效性;该方法还包括:
在该第二身份信息的认证结果为认证通过的情况下,向该区块链节点发起针对该第二身份信息的数字藏品绑定交易,该数字藏品绑定交易用于在该目标区块链的身份合约中,建立该第二身份信息的数字藏品和该第二对象的账户地址之间的绑定关系。
一方面,提供了一种计算机设备,该计算机设备包括一个或多个处理器和一个或多个存储器,该一个或多个存储器中存储有至少一条计算机程序,该计算机程序由该一个或多个处理器加载并执行以实现上述任一方面提供的基于区块链的身份认证方法。
一方面,提供了一种计算机可读存储介质,该计算机可读存储介质中存储有至少一条计算机程序,该计算机程序由处理器加载并执行以实现上述任一方面提供的基于区块链的身份认证方法。
一方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括程序代码,该程序代码存储在计算机可读存储介质中,计算机设备的处理器从计算机可读存储介质读取该程序代码,处理器执行该程序代码,使得该计算机设备执行上述任一方面提供的基于区块链的身份认证方法。
通过上述技术方案,既能够及时地响应链内业务对身份认证的需求,也能够高效地处理系统外的认证请求,并及时地基于可信的认证结果在链上留存身份信息的数字藏品,在保证身份认证过程安全性的同时,高效地兼容了链内和链外的多种业务场景,有效提升了身份认证的效率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种基于区块链的身份认证系统的架构图;
图2是本申请实施例提供的一种预言机系统的示意图;
图3是本申请实施例提供的一种分布式系统的结构示意图;
图4是本申请实施例提供的一种区块结构的示意图;
图5是本申请实施例提供的一种基于区块链的身份认证方法的流程图;
图6是本申请实施例提供的另一种基于区块链的身份认证系统的架构图;
图7是本申请实施例提供的一种基于区块链的身份认证方法的流程图;
图8是本申请实施例提供的一种身份认证流程的示意图;
图9是本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
本申请中术语“第一”“第二”等字样用于对作用和功能基本相同的相同项或相似项进行区分,应理解,“第一”、“第二”、“第n”之间不具有逻辑或时序上的依赖关系,也不对数量和执行顺序进行限定。还应理解,尽管以下描述使用术语第一、第二等来描述各种元素,但这些元素不应受术语的限制。
这些术语只是用于将一个元素与另一个元素区别开。例如,在不脱离各种示例的范围的情况下,第一节点能够被称为第二节点,并且类似地,第二节点也能够被称为第一节点。第一节点和第二节点都可以是节点,并且在某些情况下,可以是单独且不同的节点。
其中,至少一个是指一个或一个以上,例如,至少一个节点可以是一个节点、两个节点、三个节点等任意大于等于一的整数个节点。而多个是指两个或者两个以上,例如,多个节点可以是两个节点、三个节点等任意大于等于二的整数个节点。
需要说明的是,本申请所涉及的信息(包括但不限于对象设备信息、对象身份信息等)、数据(包括但不限于用于分析的数据、存储的数据、展示的数据等)以及信号,均为经对象授权或者经过各方充分授权的,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法规和标准。例如,本申请中涉及到的身份信息都是在充分授权的情况下获取的。在一些实施例中,通过提供权限询问页面,来获取对象或各方的充分授权。其中,该权限询问页面用于询问是否授予上述信息的获取权限,在该权限询问页面中,显示同意授权控件和拒绝授权控件,在检测到对该同意授权控件的触发操作的情况下,获取上述信息。
为了便于理解本申请实施例的技术方案,下面对本申请实施例涉及的术语进行解释:
区块链(Blockchain):是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。
区块链底层平台可以包括基础服务以及智能合约等处理模块。其中,基础服务模块部署在所有区块链节点设备上,用来验证业务请求的有效性,并对有效请求完成共识后记录到存储上,对于一个新的业务请求,基础服务先对接口适配解析和鉴权处理(接口适配),然后通过共识算法将业务信息加密(共识管理),在加密之后完整一致的传输至共享账本上(网络通信),并进行记录存储;智能合约模块负责合约的注册发行以及合约触发和合约执行,开发人员可以通过某种编程语言定义合约逻辑,发布到区块链上(合约注册),根据合约条款的逻辑,调用密钥或者其它的事件触发执行,完成合约逻辑,同时还提供对合约优化或注销的功能。
平台产品服务层提供典型应用的基本能力和实现框架,开发人员可以基于这些基本能力,叠加业务的特性,完成业务逻辑的区块链实现。应用服务层提供基于区块链方案的应用服务给业务方进行使用。
共识机制(Consensus Mechanism):是区块链系统中实现不同节点之间建立信任、获取权益的数学算法。在区块链系统中,通过特殊节点或者全部节点的投票,可以在很短的时间内完成对交易的验证和确认。其中,对一笔交易,如果利益不相干的多个节点能够达成共识,就可以认为系统中的全部节点对此也能够达成共识。
联盟链(Alliance Chain):是指其共识过程受到预选的区块链节点控制的区块链。区块链账本可以将读取权限只限制于联盟成员内部,也可以对外提供读取能力。在联盟链中,只针对链内的区块链节点成员开放全部或部分功能,联盟链中的各个区块链节点可以基于需要定制读写权限、查询权限等。
预言机(Oracle Mechanism):是将区块链外信息写入区块链内的一种机制。区块链上智能合约的执行通常需要触发条件,当智能合约的触发条件是链外信息时,预言机能够将链外信息输入到区块链内,实现区块链与链外数据之间的交互,使得确定的智能合约能够对不确定的链外世界做出响应。
数字藏品:是一种由原创者在区块链上发行的“真实性证明”,通过加密技术来证明数字藏品的持有者是经可信方认证过的真实所有者。数字藏品的所有权通过公共区块链网络进行验证,对象可以验证每个数字藏品的真实性,并溯源。数字藏品能够应用于游戏、艺术品、收藏品、虚拟资产、身份特征、数字音乐、数字证书等领域,用于证明数字资产的唯一归属权。
本申请实施例提供了一种基于区块链的身份认证系统,图1是本申请实施例提供的一种基于区块链的身份认证系统的架构图,参见图1,该基于区块链的身份认证系统100包括认证网关节点110、预言机节点120和多个区块链节点130,其中,该区块链节点130配置有多条区块链。
其中,该认证网关节点110用于提供针对身份信息的认证服务,该认证服务是指:对指定的身份信息进行认证,确定该身份信息的认证结果。在一些实施例中,该认证网关节点支持网关服务,该网关服务用于将从前端接收到的请求,分发至对应的服务模块中执行。在一些实施例中,该认证网关节点110将该认证网关节点提供的认证服务封装为应用程序接口(Application Programming Interface,API),来为对象提供便于调用的认证服务API。通过该网关服务,认证网关节点110能够将该系统100外针对该认证服务API的调用请求,解析为针对身份信息的认证请求,分发给认证网关节点110中执行认证服务的模块。
在一些实施例中,该认证网关节点110还提供针对多条区块链的多链接入服务,该多链接入服务是指:接入多条区块链,在该多条区块链上留存该认证服务所认证通过的身份信息对应的可信身份凭证。在一些实施例中,该可信身份凭证是指:基于认证通过的身份信息生成的数字藏品,该数字藏品用于证明该认证通过的身份信息在区块链上的有效性。
在本申请实施例中,该区块链节点130所配置的区块链上,存储有预言机合约,该预言机合约用于执行认证流程。其中,该区块链节点130能够响应于任一业务(例如区块链上的业务合约)对该预言机合约的调用请求,运行该预言机合约,以生成该业务对应的认证事件记录。在一些实施例中,该预言机合约还用于执行其他流程,例如,交易流程,本申请实施例对此不做限定。
在本申请实施例中,该预言机节点120提供认证检测服务,该认证检测服务是指:通过检测区块链上预言机合约生成的认证事件记录,为预言机合约所执行的认证流程提供可信的认证服务。示例性地,该预言机节点120在检测到该认证事件记录的情况下,调用该认证网关节点110所提供的认证服务进行身份认证,从而根据认证网关节点110返回的认证结果,向区块链上的预言机合约返回执行认证流程涉及的信息,例如,认证结果。其中,该区块链是该区块链节点130所配置的区块链。在一些实施例中,该认证检测服务还包括对其他类型的事件记录进行检测,从而为预言机合约所执行的其他流程提供相应服务,本申请实施例对此不作限定。
在一些实施例中,上述预言机合约和预言机节点可以被称为预言机系统。接下来,对本申请涉及的预言机系统进行进一步说明,该预言机系统包括存储在链上的预言机合约和运行在链外的预言机节点。
其中,预言机合约用于为区块链上的智能合约提供链外数据,从而为智能合约的执行提供可信的外部输入。相应地,该预言机合约也用于为链外数据提供接入区块链上智能合约的途径,也即是,将链外数据存储于区块链上的途径,从而保证数据的可靠性和不可篡改。
其中,该预言机节点是一种运行在链下的数据处理节点,对区块链而言,其相当于一种用于实现数据调用和访问的中间件。在一些实施例中,预言机节点通过检测链上的预言机合约,来为其提供链外的可信数据源。
在一些实施例中,该预言机系统是中心化架构,在这种示例下,该预言机节点仅从单一的可信数据源调用数据,基于指定的证明方式,证明其从单一数据源获取的数据是真实且不可篡改的,以实现整个预言机系统的高效运转。并且,基于单一数据源,可以有效节省汇总多数据源耗费的成本。
在一些实施例中,该预言机系统是具有分布式共识机制的去中心化架构。去中心化架构下的预言机节点从多个而非单个外部来源获取数据,因此,可靠性高且能够有效解决单节点故障的问题,有效提高安全性。
为了便于理解,本申请实施例提供了一种预言机系统的示意图,参见图2,图2是本申请实施例提供的一种预言机系统的示意图,其中,该预言机系统包括预言机节点210和运行在区块链220上的预言机合约230,该预言机合约230响应于区块链220上其他智能合约(例如业务合约)的调用,调用该预言机节点210,该预言机节点210响应于该预言机合约230的调用,从可信的数据源240获取数据,并向该预言机合约230返回获取到的可信数据。
本申请实施例涉及的该区块链节点130可以是分布式系统中的节点,该分布式系统由客户端和多个节点(接入网络中的任意形式的计算设备,如服务器、终端)以网络通信的形式连接构成,参见图3,图3是本申请实施例提供的一种分布式系统的结构示意图,该分布式系统300由多个节点301(接入网络中的任意形式的计算设备,如服务器、终端)和客户端302形成,节点之间形成组成的点对点(P2P,Peer To Peer)网络,P2P协议是一个运行在传输控制协议(TCP,Transmission Control Protocol)协议之上的应用层协议。在上述区块链系统300中,任何机器如服务器、终端都可以加入而成为节点,节点包括硬件层、中间层、操作系统层和应用层。
参见图3示出的分布式系统中各节点的功能,涉及的功能包括:
1)路由,节点具有的基本功能,用于支持节点之间的通信。
2)应用,用于部署在区块链中,根据实际业务需求而实现特定业务,记录实现功能相关的数据形成记录数据,在记录数据中携带数字签名以表示任务数据的来源,将记录数据发送到区块链系统中的其他节点,供其他节点在验证记录数据来源以及完整性成功时,将记录数据添加到临时区块中。
例如,应用实现的业务包括:
2.1)智能合约,计算机化的协议,可以执行某个合约的条款,通过部署在共享账本上的用于在满足一定条件时而执行的代码实现,根据实际的业务需求代码用于完成自动化的交易,例如查询买家所购买商品的物流状态,在买家签收货物后将买家的数字资产转移到商户的地址;当然,智能合约不仅限于执行用于交易的合约,还可以执行对接收的信息进行处理的合约。
2.2)共享账本,用于提供账目数据的存储、查询和修改等操作的功能,将对账目数据的操作的记录数据发送到区块链系统中的其他节点,其他节点验证有效后,作为承认账目数据有效的响应,将记录数据存入临时区块中,还可以向发起操作的节点发送确认。
3)区块链,包括一系列按照产生的先后时间顺序相互接续的区块(Block),新区块一旦加入到区块链中就不会再被移除,区块中记录了区块链系统中节点提交的记录数据。参见图4,图4是本申请实施例提供的一种区块结构(Block Structure)的示意图,每个区块中包括本区块存储交易记录的哈希值(本区块的哈希值)、以及前一区块的哈希值,各区块通过哈希值连接形成区块链。另外,区块中还可以包括有区块生成时的时间戳等信息。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了相关的信息,用于验证其信息的有效性(防伪)和生成下一个区块。
需要说明的是,本申请实施例涉及的多条区块链可以包括公链和联盟链,本申请实施例对此不作限定。
本申请实施例提供了一种应用于上述系统100中的基于区块链的身份认证方法,能够在提供身份认证服务时,高效地兼容链内和链外的多种业务场景,下面基于上述图1,以区块链的身份认证系统中的认证网关节点、预言机节点和区块链节点之间的交互过程为例,对本申请实施例的技术方案进行介绍。图5是本申请实施例提供的一种基于区块链的身份认证方法的流程图,参见图5,该方法包括下述步骤501至步骤505。
501、区块链节点响应于任一业务对区块链上的预言机合约的调用请求,运行预言机合约,以生成该业务的认证事件记录,该认证事件记录包括待认证的第一身份信息。
其中,对该区块链节点和该预言机合约的说明参考上述图1至图3对应的内容,在此不作赘述。
其中,该区块链节点配置有多条区块链。在一些实施例中,该多条区块链上存储有预言机合约,该预言机合约用于执行认证流程,原理参考上述图1至图3对应的内容,在此不作赘述。
其中,该第一身份信息是待认证的身份信息,用于表示指定对象的身份特质,例如,对象的身份证号、对象取得的资格证书编号或对象的信用记录等。在一些实施例中,该第一身份信息包括由可信的签证机构(Certificate Authority,CA)为该第一身份信息对应的对象签发的数字证书,该数字证书包括:签证机构的信息、对象信息、公钥、公证机构的签字和证书的有效期等。
在一些实施例中,该第一身份信息是经过加密的原始身份信息,以保证对象信息的安全。需要说明的是,该第一身份信息是经过对象充分授权获取到的。例如,在对象使用区块链上的智能合约来实现业务时,向对象显示权限询问页面,权限询问页面用于询问是否授予身份信息的获取权限,以及,是否同意使用获取到的身份信息进行认证,并且,在该权限询问页面中,显示同意授权控件和拒绝授权控件,在检测到对该同意授权控件的触发操作的情况下,获取身份信息。
在本申请实施例中,该区块链节点配置有多条区块链,因此,该区块链节点能够执行该多条区块链的共识过程,从而对该多条区块链上存储的信息进行管理,例如,运行该多条区块链上存储的智能合约。在一些实施例中,区块链上存储的智能合约是用于实现指定业务的业务合约,这些业务合约在运行过程中,可能需要获取链外数据,例如,业务合约运行过程中执行交易,交易涉及虚拟资源的转移,需要获取可信的汇率,而汇率需要从链外的可信平台实时获取。因此,该业务合约会触发调用请求,调用能够获取链外数据的预言机合约,来为其获取可信的链外数据。
在一些实施例中,该业务以业务合约的形式在区块链中运行,在该业务合约运行过程中,进行到针对第一身份信息的认证环节,则该业务合约触发对该预言机合约的调用请求,以通过该预言机合约,从链外获取到该第一身份信息的认证结果。该区块链节点能够响应于任一区块链上的任一业务对该预言机合约的调用请求,运行该预言机合约,以生成该业务的认证事件记录,该认证事件记录用于触发链外的节点对该第一身份信息进行认证。其中,该认证事件记录包括待认证的该第一身份信息。可选地,该认证事件记录还包括其所在的区块链的标识信息,以指示该认证事件记录来自该区块链节点所配置的多条区块链中的哪一条。
502、预言机节点响应于从该区块链上检测到该认证事件记录,基于该认证事件记录包括的该第一身份信息,向该认证网关节点发送第一认证请求,该第一认证请求携带该第一身份信息。
其中,对该预言机节点和该认证网关节点的说明参考图1和图2对应的内容,在此不作赘述。
在本申请实施例中,该预言机节点与该区块链上的预言机合约构成如图2所介绍的预言机系统,运行在链外的该预言机节点能够检测到链上的该认证事件记录,从而基于该认证事件记录包括的该第一身份信息,生成第一认证请求,该第一认证请求用于调用该认证网关节点,以通过该认证网关节点所提供的认证服务,对该第一身份信息进行认证。
503、认证网关节点响应于从该预言机节点接收到该第一认证请求,对该第一身份信息进行认证,在获取到该第一身份信息的认证结果的情况下,向该预言机节点返回该第一身份信息的认证结果。
其中,对该预言机节点和该认证网关节点的说明参考图1和图2对应的内容,在此不作赘述。
在本申请实施例中,该认证网关节点基于接收到的该第一认证请求,对该第一身份信息进行认证。在一些实施例中,该第一身份信息是经过可信的认证机构认证的信息,例如,对象的身份证号,或者,对象取得的资格证书编号等。因此,该认证网关节点能够预先接入该可信的认证机构所对应的网络节点,通过访问该网络节点,即可确定该第一身份信息的有效性,以获取该第一身份信息的认证结果。
504、预言机节点响应于接收到该第一身份信息的认证结果,在该区块链上,存储该第一身份信息的数字藏品,其中,数字藏品用于证明身份信息的有效性。
其中,该第一身份信息的数字藏品是该第一身份信息在该区块链上的唯一数字权益凭证,能够证明该第一身份信息的有效性。在该第一身份信息的认证结果为认证通过的情况下,该预言机节点在区块链上生成该第一身份信息的数字藏品,从而达到将通过认证的该第一身份信息以及该认证结果在该区块链上留存的目的,使得后续能够基于该数字藏品验证该第一身份信息的有效性。可以理解地,由于区块链具有不可篡改和可追溯特性,存储在该区块链上的数字藏品具有唯一证明该第一身份信息有效性的效力。
505、认证网关节点响应于来自该系统之外的第二认证请求,对该第二认证请求所携带的第二身份信息进行认证,响应于接收到该第二身份信息的认证结果,在该多条区块链中的目标区块链上存储该第二身份信息的数字藏品。
在一些实施例中,该认证网关节点支持网关服务,该网关服务包括路由、过滤和请求分发等功能,从而能够接收到系统外的认证请求。该认证网关节点能够将其提供的认证服务封装为认证服务API,从而向系统外的对象提供便于调用的服务接口。因此,该认证网关节点能够从该系统外接收到针对认证服务API的调用请求,并通过其支持的网关服务,将该针对认证服务API的调用请求,解析为携带该第二身份信息的第二认证请求,从而基于该第二认证请求,对该第二身份信息进行认证。可选地,该第二身份信息是经过加密的原始身份信息,以保证对象信息在网络链路中传输时的安全性。
本步骤中存储该第二身份信息的数字藏品的过程与步骤504中预言机节点存储该第一身份信息的数字藏品的过程同理,在此不作赘述。在一些实施例中,该第二认证请求携带该目标区块链的标识信息,从而能够确定将该第二身份信息的数字藏品存储至哪条或哪几条区块链上。可选地,该目标区块链可以由触发该第二认证请求的对象手动选择,也可以由该认证网关节点根据区块链的负载情况自行分配,本申请实施例对此不作限定。
上述技术方案中,预言机节点通过检测区块链内的预言机合约,能够调用认证网关节点进行身份认证,来及时地响应链内业务对身份认证的需求,并且,认证网关节点直接处理来自链外的其他认证请求,能够基于可信的认证结果在链上留存身份信息的数字藏品,从而在保证身份认证过程安全性的同时,高效地兼容了链内和链外的多种业务场景,有效提升了身份认证的效率。
接下来,通过一些实施例对本申请实施例的技术方案进行详细介绍。本申请在上述图1的系统100的基础上,提供了另一种基于区块链的身份认证系统。图6是本申请实施例提供的另一种基于区块链的身份认证系统的架构图,参见图6,该基于区块链的身份认证系统600包括认证网关节点610、预言机节点620、区块链节点630和多个认证渠道节点640,其中,该区块链节点630配置有多条区块链,多条区块链上存储有预言机合约和身份合约,该预言机合约用于执行认证流程,该身份合约用于记录数字藏品与区块链上的账户地址之间的绑定关系,其中,数字藏品用于证明所绑定账户地址的身份信息的有效性。
其中,该认证网关节点610、预言机节点620和区块链节点630的说明参考图1,在此不作赘述。
其中,该认证渠道节点640是认证机构所对应的网络节点,能够用于认证指定类型身份信息的有效性。可以理解地,对象的身份具有多种维度,因此,不同类型的身份信息能够从不同维度来证明对象不同身份特质的有效性。例如,对象的身份证号能够证明其在某个区域内公民身份的合法性;对象取得的资格证编号能够证明其资质能力达到标准;对象的信用记录能够证明其在某领域内的可信任程度。基于此,本申请实施例中的认证网关节点610通过接入多个认证渠道节点640,具备了对多类型身份信息的认证能力,从而能够有效提升进行身份认证的效率。当然,一个认证渠道节点可以对多种类型的身份信息进行认证,本申请实施例对此不作限定。
在一些实施例中,该认证网关节点610提供多渠道接入服务,该多渠道接入服务是指:针对多种类型的身份信息进行认证。可选地,在该认证网关节点610侧,该多渠道接入服务封装为统一的渠道调用API,从而使得该认证网关节点610无需关注接入不同认证渠道节点带来的区别,以提升调用渠道节点的效率。可选地,每种身份信息的类型可以对应于多个认证渠道节点640,参见图6,针对A类身份信息的认证渠道节点包括认证渠道节点A1和认证渠道节点A2;针对B类身份信息的认证渠道节点包括认证渠道节点B1和认证渠道节点B2;针对C类身份信息的认证渠道节点包括认证渠道节点C1和认证渠道节点C2。
在一些实施例中,该多渠道接入服务具有高度扩展性。根据实际业务的对身份信息类型的认证需求,可以基于该多渠道接入服务的统一API封装机制,扩展更多身份信息的类型;根据实际业务的对身份信息类型的认证需求以及多个认证渠道节点的负载情况,增减认证渠道节点的数量,例如,针对认证需求大的类型,增加其对应的认证渠道节点的数量,本申请实施例对此不作限定。
接下来,基于上述图6提供的系统架构,以区块链的身份认证系统600中的认证网关节点、预言机节点、区块链节点以及认证渠道节点之间的交互过程为例,对本申请实施例的技术方案进行介绍。图7是本申请实施例提供的一种基于区块链的身份认证方法的流程图,参见图7,该方法包括下述步骤701至步骤712。
701、区块链节点响应于任一业务对该区块链上的预言机合约的调用请求,运行该预言机合约,以生成该业务的认证事件记录,该认证事件记录包括待认证的第一身份信息。
本步骤参考步骤501,在此不作赘述。
702、预言机节点响应于从该区块链上检测到该认证事件记录,基于该认证事件记录包括的该第一身份信息,向该认证网关节点发送第一认证请求,该第一认证请求携带该第一身份信息。
本步骤参考步骤502,在此不作赘述。
703、认证网关节点响应于从该预言机节点接收到该第一认证请求,从多个认证渠道节点中,确定该第一认证请求携带的认证类型信息所对应的目标节点,该目标节点用于对属于目标类型的身份信息进行认证。
在本申请实施例中,该认证类型信息包括该第一身份信息的类型,该认证类型信息能够用于确定认证该第一身份信息所需的认证渠道节点,也即是,该目标节点。在一些实施例中,该认证网关节点读取该第一认证请求中的认证类型字段,确定该第一身份信息的类型,从而根据该第一身份信息的类型,确定该目标节点。
在另一些实施例中,该认证类型信息包括该第一身份信息的类型,以及,指定的认证渠道节点,在这种示例下,该认证网关节点基于该认证类型信息,能够直接确定该目标节点。可选地,该认证网关节点能够在该认证类型信息指示的认证渠道节点不可用的情况下,基于该认证类型信息包括该第一身份信息的类型,重新确定目标节点,以提升应对节点故障的灵活性。
在一些实施例中,第一认证请求携带的认证类型信息对应于多个目标节点,该认证网关节点能够基于该多个目标节点对该第一身份信息进行认证。多个目标节点的确定过程与上述过程同理,在此不作赘述。
704、认证网关节点向该目标节点发送该第一身份信息,以使该目标节点对该第一身份信息进行认证。
在一些实施例中,该第一身份信息包括数字证书,该目标节点可以是签发该数字证书的签证机构,基于此,该目标节点能够基于该数字证书,确定该数字证书是否为该签证机构签发,进而确认该第一身份信息的有效性。可选地,该目标节点可以是签发该数字证书时,进行签名的公证机构,本申请实施例对此不做限定。
705、认证网关节点从该目标节点在获取到该第一身份信息的认证结果的情况下,向该预言机节点返回该第一身份信息的认证结果。
在一些实施例中,该认证网关节点向多个目标节点发送该第一身份信息,相应地,会接收到该多个目标节点对该第一身份信息的参考认证结果。在这种示例下,该认证网关节点能够基于该多个目标节点对该第一身份信息的参考认证结果,确定该第一身份信息的认证结果,进而向该预言机节点返回该认证结果。在一些实施例中,该认证网关节点基于多个该目标节点对该第一身份信息的参考认证结果,确定通过节点数量,该通过节点数量是指示该第一身份信息认证通过的参考认证结果的数量。在该通过节点数量大于目标数量的情况下,该认证网关节点确定该第一身份信息的认证结果为该第一身份信息认证通过。
在另一些实施例中,该认证网关节点基于该多个目标节点对该第一身份信息的参考认证结果,确定该第一身份信息的认证结果的过程可以包括下述步骤1至步骤3。
步骤1、认证网关节点基于多个该目标节点的认证记录,确定多个该目标节点的认证参考度。
其中,该认证记录包括该目标节点在目标时间段内提供认证服务的次数。在一些实施例中,该认证记录可以由该认证网关节点从网络中实时获取,也可以由该认证网关节点通过读取已存储的历史数据来确定,本申请对此不作限定。
在一些实施例中,该认证记录包括的次数越大,则该目标节点的认证参考度越高。可选地,该认证网关节点能够基于目标节点能够认证的(身份信息的)类型数量,进一步为目标节点的认证参考度进行加权。示例性地,可以根据多个目标节点能够认证的类型数量,计算数量均值;进而基于数量均值,确定为每个目标节点的认证参考度进行加权的程度。
通过上述技术方案,能够从提供认证服务的频率以及提供认证服务的全面性等角度,确定多个目标节点的认证参考度,从而提升后续确定出的认证结果的可信程度。
步骤2、认证网关节点从多个该目标节点中,确定该认证参考度排序位于前目标数量的目标节点。
其中,该目标数量可以由该第一认证请求指定,也可以是该认证网关节点的默认设置,本申请对此不作限定。
步骤3、基于该前目标数量的目标节点对该第一身份信息的参考认证结果,确定该第一身份信息的认证结果。
在一些实施例中,该认证网关节点基于目标数量个目标节点对该第一身份信息的参考认证结果,确定通过节点数量,该通过节点数量是指示该第一身份信息认证通过的参考认证结果的数量。在该通过节点数量大于目标数量的情况下,该认证网关节点确定该第一身份信息的认证结果为该第一身份信息认证通过。
通过上述技术方案,在引入多个认证渠道节点进行参考的基础上,从提供认证服务的频率以及提供认证服务的全面性等角度,对多个目标节点的认证参考度进行排序,从而大大提升了认证结果的准确性和可信程度。
706、预言机节点响应于接收到该第一身份信息的认证结果,在该第一身份信息的认证结果为认证通过的情况下,基于该第一身份信息包括的第一对象在该区块链上的账户地址,在该区块链上,存储该第一身份信息的数字藏品,其中,数字藏品用于证明身份信息的有效性。
本步骤原理参考步骤504。
其中,该第一身份信息包括第一对象在该区块链上的账户地址。
其中,该第一身份信息的数字藏品是该第一对象在该区块链上的唯一加密权益凭证,能够用于证明该第一对象的该第一身份信息的有效性。通过将该数字藏品存储在该第一对象的账户地址中,即完成了对该数字藏品所有权的划定。
在一些实施例中,预言机节点能够基于该第一身份信息和该第一身份信息的认证结果,在该区块链上生成该第一身份信息的数字藏品,进而将该区块链上该第一身份信息的数字藏品,存储至该第一对象在该区块链上的账户地址,以完成对该数字藏品的存储过程。其中,该数字藏品能够指示该第一对象的该第一身份信息的有效性,从而在后续过程中,任意对象都能够通过验证该数字藏品,来验证该第一对象的第一身份信息的有效性,从而实现了基于区块链进行可信身份认证的目的。
707、在该第一身份信息的认证结果为认证通过的情况下,预言机节点向该区块链节点发起针对该第一身份信息的数字藏品绑定交易,该数字藏品绑定交易用于在身份合约中建立该第一身份信息的数字藏品和该第一对象的账户地址之间的绑定关系。
在一些实施例中,该身份合约是维护链上账户地址与身份认证结果之间关系的智能合约,其能够为区块链上的任意业务合约提供查询可信身份认证结果的服务。该预言机节点通过该数字藏品绑定交易,即可在该身份合约中建立下该数字藏品和该第一对象的账户地址之间的绑定关系,从而当任意业务合约需要查询该第一对象的该第一身份信息的认证结果时,通过调用该身份合约,即可获得可信的认证结果。
需要说明的是,本申请在获得对象或各方充分授权的情况下,在该身份合约中建立身份信息的数字藏品与账户地址之间的绑定关系,也即是,本步骤707相当于在获得了对象或各方授予的身份访问权限的情况下,通过该身份合约,将该第一身份信息的认证结果在链上提供给其他对象或智能合约查询。
通过上述技术方案,基于部署在区块链中的身份合约,能够高效地基于身份信息的数字藏品,对身份信息进行认证,从而在保证认证结果可靠性的基础上,有效提升了后续进行身份认证的效率。
708、预言机节点响应于成功在该身份合约中建立该第一身份信息的数字藏品和该第一对象的账户地址之间的绑定关系,触发该预言机合约的业务回调流程。
其中,该业务回调流程用于基于该第一身份信息的认证结果,响应该业务对该预言机合约的调用请求。
在本申请实施例中,在成功存储了该第一身份信息的数字藏品,并且,在身份合约中建立了可靠的绑定关系之后,该预言机节点通过触发区块链上该预言机合约的业务回调流程,向步骤701中触发了整个认证流程的该业务(以业务合约的形式运行在区块链中),返回对该第一身份信息的认证结果,以使该业务能够继续执行下去。
在一些实施例中,该预言机合约的业务回调流程包括:向该业务返回回调通知,该回调通知用于指示该业务调用该身份合约,以获取该第一身份信息的认证结果,从而基于该认证结果继续执行后续的业务流程。
通过上述技术方案,链上智能合约能够安全且及时地获取到链下的认证结果,以保证其业务流程能够流畅地执行,有效提升了业务的效率。
为了便于理解,本申请实施例提供了一种身份认证流程的示意图,参见图8,图8是本申请实施例提供的一种身份认证流程的示意图,其中,该业务合约801对该预言机合约802发送了调用请求;该预言机合约生成认证事件记录;该认证事件记录被预言机节点803检测到,从而调用认证网关节点804(认证服务)进行认证;预言机节点803在获取到认证结果为认证通过的情况下,在身份合约805中发起针对第一身份信息的数字藏品和第一对象的账户地址的绑定交易;在交易完成的情况下,预言机节点803触发该预言机合约802的回调流程;该预言机合约802基于该回调流程向该业务合约801返回回调通知,以指示该业务合约获取该认证结果。
上述步骤701至步骤708对响应于链上业务触发的第一认证请求进行身份认证的过程进行了介绍,下述步骤709至712对响应于来自该系统外的第二认证请求进行身份认证的过程进行了介绍。
709、认证网关节点响应于来自该系统之外的第二认证请求,从多个认证渠道节点中,确定该第二认证请求携带的认证类型信息所对应的第二目标节点,该第二目标节点用于对属于第二目标类型的身份信息进行认证。
本步骤参考步骤703,在此不作赘述。
710、认证网关节点向该第二目标节点发送该第二身份信息,以使该第二目标节点对该第二身份信息进行认证。
本步骤参考步骤704,在此不作赘述。
需要说明的是,上述目标节点和第二目标节点可以包括相同或不同的认证渠道节点,本申请实施例对此不作限定。
711、认证网关节点在获取到的该第二身份信息的认证结果为认证通过的情况下,基于该第二身份信息包括的第二对象在该区块链上的账户地址,在该多条区块链中的目标区块链上存储该第二身份信息的数字藏品。
本步骤参考步骤705和步骤706,在此不作赘述。
712、认证网关节点在该第二身份信息的认证结果为认证通过的情况下,向该区块链节点发起针对该第二身份信息的数字藏品绑定交易。
其中,该数字藏品绑定交易用于在该目标区块链的身份合约中,建立该第二身份信息的数字藏品和该第二对象的账户地址之间的绑定关系。
本步骤参考步骤707,在此不作赘述。
在一些实施例中,该认证网关节点响应于成功在该身份合约中建立该第二身份信息的数字藏品和该第二对象的账户地址之间的绑定关系,向该第二认证请求对应的请求方返回该第二身份信息的认证结果。
在一些实施例中,该认证网关节点向该第二认证请求对应的请求方返回认证通过信息。可选地,该认证网关节点向该第二认证请求对应的请求方返回该第二身份信息的数字藏品的元数据,例如,用于生成数字藏品的加密算法以及数字藏品所在的区块链等。基于此,能够进一步保证对象对身份信息以及认证结果的掌握情况,保障对象的数字资产权益。
在一些实施例中,该认证网关节点不仅能作为一个提供身份认证服务的平台,还能够对对象的多种类型的身份信息提供账户管理服务,进一步地,该认证网关节点还能够响应于针对链上数字藏品的销毁请求和交易请求,触发相应的流程,本申请实施例对此不作限定。
通过上述技术方案,既能够及时地响应链内业务对身份认证的需求,也能够高效地处理系统外的认证请求,并及时地基于可信的认证结果在链上留存身份信息的数字藏品,在保证身份认证过程安全性的同时,高效地兼容了链内和链外的多种业务场景,有效提升了身份认证的效率。进一步地,针对链上业务合约的执行流程,及时地反馈认证结果,保证业务能够流畅地执行,有效提升了业务的效率;针对链下的对象认证需求,及时地反馈认证得到的相关信息,保证对象对身份信息以及认证结果的掌握情况,有效保障对象的数字资产权益。
本申请实施例提供了一种计算机设备,能够实现为上述基于区块链的身份认证系统中的预言机节点、认证网关节点、区块链节点或认证渠道节点,以实现上述各个实施例提供的基于区块链的身份认证方法,下面对该计算机设备的结构进行介绍:
图9是本申请实施例提供的一种计算机设备的结构示意图,该计算机设备900可因配置或性能不同而产生比较大的差异,可以包括一个或多个处理器(Central ProcessingUnits,CPU)901和一个或多个的存储器902,其中,该一个或多个存储器902中存储有至少一条计算机程序,该至少一条计算机程序由该一个或多个处理器901加载并执行以实现上述各个方法实施例提供的方法。当然,该计算机设备900还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该计算机设备900还可以包括其他用于实现设备功能的部件,在此不做赘述。
在示例性实施例中,还提供了一种计算机可读存储介质,例如包括计算机程序的存储器,上述计算机程序可由处理器执行以完成上述实施例中的基于区块链的身份认证方法。例如,该计算机可读存储介质可以是只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、只读光盘(Compact Disc Read-Only Memory,CD-ROM)、磁带、软盘和光数据存储设备等。
在示例性实施例中,还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括程序代码,该程序代码存储在计算机可读存储介质中,计算机设备的处理器从计算机可读存储介质读取该程序代码,处理器执行该程序代码,使得该计算机设备执行上述基于区块链的身份认证方法。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,该程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
上述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (16)
1.一种基于区块链的身份认证系统,其特征在于,所述系统包括认证网关节点、预言机节点和区块链节点,所述区块链节点配置有多条区块链,所述区块链上存储有预言机合约,所述预言机合约用于执行认证流程;
所述区块链节点,用于响应于任一业务对所述区块链上的预言机合约的调用请求,运行所述预言机合约,以生成所述业务的认证事件记录,所述认证事件记录包括待认证的第一身份信息;
所述预言机节点,用于响应于从所述区块链上检测到所述认证事件记录,基于所述认证事件记录包括的所述第一身份信息,向所述认证网关节点发送第一认证请求,所述第一认证请求携带所述第一身份信息;
所述认证网关节点,用于响应于从所述预言机节点接收到所述第一认证请求,对所述第一身份信息进行认证,在获取到所述第一身份信息的认证结果的情况下,向所述预言机节点返回所述第一身份信息的认证结果;
所述预言机节点,用于响应于接收到所述第一身份信息的认证结果,在所述区块链上,存储所述第一身份信息的数字藏品,其中,数字藏品用于证明身份信息的有效性;
所述认证网关节点,还用于响应于来自所述系统之外的第二认证请求,对所述第二认证请求所携带的第二身份信息进行认证,响应于接收到所述第二身份信息的认证结果,在所述多条区块链中的目标区块链上存储所述第二身份信息的数字藏品。
2.根据权利要求1所述的系统,其特征在于,所述第一身份信息包括第一对象在所述区块链上的账户地址,所述预言机节点用于:
在所述第一身份信息的认证结果为认证通过的情况下,基于所述第一身份信息和所述第一身份信息的认证结果,在所述区块链上生成所述第一身份信息的数字藏品;
将所述区块链上所述第一身份信息的数字藏品,存储至所述第一对象在所述区块链上的账户地址。
3.根据权利要求2所述的系统,其特征在于,所述区块链上存储有身份合约,所述身份合约用于记录数字藏品与区块链上的账户地址之间的绑定关系,其中,数字藏品用于证明所绑定账户地址的身份信息的有效性;
所述预言机节点还用于:
在所述第一身份信息的认证结果为认证通过的情况下,向所述区块链节点发起针对所述第一身份信息的数字藏品绑定交易,所述数字藏品绑定交易用于在所述身份合约中建立所述第一身份信息的数字藏品和所述第一对象的账户地址之间的绑定关系。
4.根据权利要求2所述的系统,其特征在于,所述区块链上存储有身份合约,所述身份合约用于记录数字藏品与区块链上的账户地址之间的绑定关系,其中,数字藏品用于证明所绑定账户地址的身份信息的有效性;
所述预言机节点还用于:
响应于成功在所述身份合约中建立所述第一身份信息的数字藏品和所述第一对象的账户地址之间的绑定关系,触发所述预言机合约的业务回调流程,所述业务回调流程用于基于所述第一身份信息的认证结果,响应所述业务对所述预言机合约的调用请求。
5.根据权利要求4所述的系统,其特征在于,所述预言机合约的业务回调流程包括:向所述业务返回回调通知,所述回调通知用于指示所述业务调用所述身份合约,以获取所述第一身份信息的认证结果。
6.根据权利要求1所述的系统,其特征在于,所述第一认证请求包括认证类型信息,所述认证网关节点用于:
从多个认证渠道节点中,确定所述认证类型信息对应的目标节点,所述目标节点用于对属于目标类型的身份信息进行认证;
向所述目标节点发送所述第一身份信息,以使所述目标节点对所述第一身份信息进行认证。
7.根据权利要求6所述的系统,其特征在于,所述认证网关节点用于:
向多个所述目标节点发送所述第一身份信息,以使多个所述目标节点对所述第一身份信息进行认证;
所述认证网关节点还用于:
基于所述多个目标节点对所述第一身份信息的参考认证结果,确定所述第一身份信息的认证结果。
8.根据权利要求7所述的系统,其特征在于,所述认证网关节点还用于:
基于多个所述目标节点的认证记录,确定多个所述目标节点的认证参考度,所述认证记录包括所述目标节点在目标时间段内提供认证服务的次数;
从多个所述目标节点中,确定所述认证参考度排序位于前目标数量的目标节点;
基于所述前目标数量的目标节点对所述第一身份信息的参考认证结果,确定所述第一身份信息的认证结果。
9.根据权利要求7或8所述的系统,其特征在于,所述认证网关节点用于:
基于多个所述目标节点对所述第一身份信息的参考认证结果,确定通过节点数量,所述通过节点数量是指示所述第一身份信息认证通过的参考认证结果的数量;
在所述通过节点数量大于目标数量的情况下,确定所述第一身份信息的认证结果为所述第一身份信息认证通过。
10.根据权利要求1所述的系统,其特征在于,所述第二身份信息包括第二对象在所述目标区块链上的账户地址,所述认证网关节点用于:
在所述第二身份信息的认证结果为认证通过的情况下,基于所述第二身份信息和所述第二身份信息的认证结果,在所述目标区块链上生成所述第二身份信息的数字藏品;
将所述目标区块链上所述第二身份信息的数字藏品,存储至所述第二对象在所述目标区块链上的账户地址。
11.根据权利要求10所述的系统,其特征在于,所述目标区块链上存储有身份合约,所述身份合约用于记录数字藏品与区块链上的账户地址之间的绑定关系,其中,数字藏品用于证明所绑定账户地址的身份信息的有效性;
所述认证网关节点还用于:
在所述第二身份信息的认证结果为认证通过的情况下,向所述区块链节点发起针对所述第二身份信息的数字藏品绑定交易,所述数字藏品绑定交易用于在所述目标区块链的身份合约中,建立所述第二身份信息的数字藏品和所述第二对象的账户地址之间的绑定关系。
12.一种基于区块链的身份认证方法,其特征在于,由基于区块链的身份认证系统中的预言机节点执行,所述系统包括认证网关节点、所述预言机节点和区块链节点,所述区块链节点配置有多条区块链,所述区块链上存储有预言机合约,所述预言机合约用于执行认证流程;所述方法包括:
响应于从所述区块链上检测到业务的认证事件记录,基于所述认证事件记录包括的待认证的第一身份信息,向所述认证网关节点发送第一认证请求,所述第一认证请求携带所述第一身份信息,所述认证事件记录由所述区块链节点响应于所述业务对所述区块链上存储的预言机合约的调用请求生成;
响应于从所述认证网关节点接收到所述第一身份信息的认证结果,在所述区块链上,存储所述第一身份信息的数字藏品,其中,数字藏品用于证明身份信息的有效性。
13.一种基于区块链的身份认证方法,其特征在于,由基于区块链的身份认证系统中的认证网关节点执行,所述系统包括所述认证网关节点、预言机节点和区块链节点,所述区块链节点配置有多条区块链,所述区块链上存储有预言机合约,所述预言机合约用于执行认证流程;所述方法包括:
响应于从所述预言机节点接收到携带第一身份信息的第一认证请求,对所述第一身份信息进行认证,在获取到所述第一身份信息的认证结果的情况下,向所述预言机节点返回所述第一身份信息的认证结果,所述第一身份信息的认证结果用于在所述区块链上,存储所述第一身份信息的数字藏品,所述第一认证请求由所述预言机节点基于从所述区块链上检测到的认证事件记录包括的所述第一身份信息发送,所述认证事件记录由所述区块链节点响应于任一业务对所述区块链上存储的预言机合约的调用请求生成;
响应于来自所述系统之外的第二认证请求,对所述第二认证请求所携带的第二身份信息进行认证,响应于接收到所述第二身份信息的认证结果,在所述多条区块链中的目标区块链上存储所述第二身份信息的数字藏品。
14.一种计算机设备,其特征在于,所述计算机设备包括一个或多个处理器和一个或多个存储器,所述一个或多个存储器中存储有至少一条计算机程序,所述计算机程序由所述一个或多个处理器加载并执行以实现如权利要求12或权利要求13所述的基于区块链的身份认证方法。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条计算机程序,所述计算机程序由处理器加载并执行以实现如权利要求12或权利要求13所述的基于区块链的身份认证方法。
16.一种计算机程序产品,其特征在于,所述计算机程序产品包括程序代码,所述程序代码存储在计算机可读存储介质中,计算机设备的处理器从计算机可读存储介质读取所述程序代码,所述处理器执行所述程序代码,使得所述计算机设备执行如权利要求12或权利要求13所述的基于区块链的身份认证方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210792675.9A CN117395005A (zh) | 2022-07-05 | 2022-07-05 | 基于区块链的身份认证系统、方法及计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210792675.9A CN117395005A (zh) | 2022-07-05 | 2022-07-05 | 基于区块链的身份认证系统、方法及计算机设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117395005A true CN117395005A (zh) | 2024-01-12 |
Family
ID=89467242
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210792675.9A Pending CN117395005A (zh) | 2022-07-05 | 2022-07-05 | 基于区块链的身份认证系统、方法及计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117395005A (zh) |
-
2022
- 2022-07-05 CN CN202210792675.9A patent/CN117395005A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110620810B (zh) | 在区块链上的连续资产转移的非链接所有权 | |
US20190236562A1 (en) | Systems, methods, and apparatuses for implementing document interface and collaboration using quipchain in a cloud based computing environment | |
Alblooshi et al. | Blockchain-based ownership management for medical IoT (MIoT) devices | |
KR20190042567A (ko) | 블록체인 상의 동적 액세스 제어 | |
CN109614813B (zh) | 基于区块链的隐私交易方法、装置及其应用方法、装置 | |
CN111444273B (zh) | 一种基于区块链的数据授权方法以及装置 | |
CN112115205B (zh) | 基于数字证书认证的跨链信任方法、装置、设备以及介质 | |
CN111383114A (zh) | 基于区块链的资产信息管理方法和装置 | |
CN111523152B (zh) | 基于区块链的电子证件管理方法、管理网络及电子设备 | |
CN110471982B (zh) | 基于区块链的数据处理方法和装置 | |
CN110674531B (zh) | 基于区块链的居住信息管理方法、装置、服务器及介质 | |
WO2022206454A1 (zh) | 提供跨链消息的方法和装置 | |
CN111292174A (zh) | 一种纳税信息处理方法、装置及计算机可读存储介质 | |
CN111414434B (zh) | 基于区块链的数据交易管理网络、交易设备和存储介质 | |
CN111460457A (zh) | 不动产权登记监管方法、装置、电子设备及存储介质 | |
KR101890584B1 (ko) | m of n 다중 서명에 의한 인증서 서비스를 제공하는 방법 및 이를 이용한 서버 | |
CN111402033A (zh) | 基于区块链的资产信息管理方法和装置 | |
CN115277122A (zh) | 基于区块链的跨境数据流动与监管系统 | |
CN111274597B (zh) | 一种数据处理方法以及设备 | |
CN112700251A (zh) | 金融场景下的身份确认方法、装置和系统 | |
CN112862589A (zh) | 金融场景下的身份验证方法、装置和系统 | |
CN116777397A (zh) | 基于区块链的电子单据管理方法、装置、终端及存储介质 | |
WO2023019903A1 (zh) | 跨链交易系统、方法、设备及存储介质 | |
CN115048672A (zh) | 基于区块链的数据审计方法和装置、处理器及电子设备 | |
KR102450412B1 (ko) | 사물인터넷에서 서비스 수준 협약 기반 공유경제 서비스 제공시스템 및 제공방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |