区块链网络Fabric-CA数字证书的获取方法和获取装置与流程

文档序号:18453725发布日期:2019-08-17 01:26阅读:779来源:国知局
区块链网络Fabric-CA数字证书的获取方法和获取装置与流程

本发明属于区块链技术领域,特别涉及一种区块链网络fabric-ca数字证书的获取方法和获取装置。



背景技术:

2008年,比特币的诞生,让区块链这种新技术出现在人类社会面前。基于区块链自身技术特点,区块链具有天然的匿名性,也正是这种匿名性,推动了区块链技术的早期发展。但区块链技术发展至今,也对实名性提出了要求,如在很多领域(比如法人之间的交易),如果不能确定交易对手的身份,交易将无法进行。而且,基于人类社会的秩序管制需要,也只有实名才能解决。基于此,区块链引入了ca认证机制,如ibm的联盟链平台fabric,不管是节点,还是用户,都必须经过fabricca体系认证之后才能接入区块链,进行交易。

在现有的fabric网络中,fabric-ca作为超级账本的数字认证中心,具有用户信息的注册,数字证书的发行、延期与吊销等功能,和传统ca一样提供用户身份管理的功能,但其依旧存在着与现实生活的身份脱轨的问题。

具体的说,从fabric网络颁发出的fabric-ca数字证书没有和我们的真实社会身份信息对应上。这样就会带来监管漏洞的问题,因为在区块链网络中,身份都是虚拟的,我代表的不一定是我,或者说不知道在网络上我用区块链的虚拟身份做了哪些事,这样就会为黑色行为或产业提供了庇护所。这也是世界各国政府比较担心的问题。



技术实现要素:

本发明所要解决的技术问题之一是提供一种fabric-ca数字证书的获取方法,通过对用户的注册信息进行预先验证,以保证最终从fabric网络颁发出的数字证书与用户真实社会身份信息相对应,解决了区块链弱监管的问题。

为了解决上述技术问题,本申请的实施例提供了一种区块链网络fabric-ca数字证书的获取方法,包括以下步骤:

接收用户录入的注册身份信息;

调用第三方身份认证系统对所述注册身份信息进行有效性验证;

在有效性验证通过的情况下,对所述用户与所述注册身份信息进行匹配性验证;

在匹配性验证通过的情况下,基于所述注册身份信息向fabric-ca服务器进行证书申请,以获取fabric-ca数字证书。

优选地,所述第三方身份认证系统包括签名服务器和认证服务器;所述调用第三方身份认证系统对所述注册身份信息进行有效性验证,具体包括,

获取所述签名服务器对客户端基础业务数据的第一签名数据;

基于所述第一签名数据和客户端基础业务数据向所述认证服务器申请业务流水号数据;

基于申请得到的业务流水号数据和所述注册身份信息生成中间数据,并获取所述签名服务器对所述中间数据的第二签名数据;

基于所述第二签名数据和中间数据向所述认证服务器发送验证请求,以验证所述注册用户的身份信息的有效性。

优选地,所述基于申请得到的业务流水号数据和所述注册身份信息生成中间数据为:

通过所述签名服务器对所述注册身份信息进行加密,将加密后的注册身份信息与业务流水号数据进行组装,以生成得到所述中间数据。

优选地,所述客户端基础业务数据至少包括设置客户号信息,应用名称信息,时间戳信息和认证模式信息。

优选地,所述用户录入的注册身份信息包括姓名和身份证号码;对所述用户与所述注册身份信息进行匹配性验证包括:

接收用户上传的用户手持身份证的照片,所述用户手持身份证的照片包括身份证正面信息和用户面部信息;

基于智能图像识别算法对所述用户手持身份证的照片进行识别,从身份证正面信息中识别出第一人脸图像,从用户面部信息中识别出第二人脸图像;

比对所述第一人脸图像和第二人脸图像之间的相似度是否大于等于预设值,以用于验证所述用户与所述注册身份信息是否匹配。

优选地,对所述用户与所述注册身份信息进行匹配性验证,还包括:

接收用户上传的身份证正反面的照片,基于智能图像识别算法从该照片中识别出姓名、身份证号码以及证件有效期范围;

比对录入的注册身份信息中的姓名和身份证号码与识别出的姓名、身份证号码是否一致,比对当前实际日期是否超出识别出的证件有效期范围,以用于验证所述用户与所述注册身份信息是否匹配。

优选地,对所述用户与所述注册身份信息进行匹配性验证,还包括:

接收用户上传的手写当天日期的照片,基于智能图像识别算法从该照片中识别出当天日期;

比对当天实际日期与识别出的当天日期是否一致,以用于验证所述用户与所述注册身份信息是否匹配。

优选地,当所述第一人脸图像和第二人脸图像之间的相似度大于等于预设值,且所述录入的注册身份信息中的姓名和身份证号码与识别出的姓名、身份证号码一致,且当前实际日期未超出识别出的证件有效期范围,且当前实际日期与识别出的当天日期一致时,确认所述用户与所述注册身份信息匹配。

优选地,所述基于所述注册身份信息向fabric-ca服务器进行证书申请,具体为:

根据所述注册身份信息制作证书请求文件,将所述证书请求文件发送给所述fabric-ca服务器以进行证书申请。

本申请的实施例还提供了一种区块链网络fabric-ca数字证书的获取装置,其包括:

接收单元,其用于接收用户录入的注册身份信息;

有效性验证单元,其用于调用第三方身份认证系统对所述注册身份信息进行有效性验证;

匹配性验证单元,在有效性验证通过的情况下,对所述用户与所述注册身份信息进行匹配性验证;

证书申请单元,其用于在匹配性验证通过的情况下,基于所述注册身份信息向fabric-ca服务器进行证书申请,以获取fabric-ca数字证书。

与现有技术相比,上述方案中的一个或多个实施例可以具有如下优点或有益效果:

本申请在fabric-ca的基础上,对用户的注册身份信息进行预先审核验证,以验证通过后的注册身份信息进行fabric-ca数字证书的申请获取,解决了区块链弱监管的问题。采用调用第三方身份认证系统(例如公安部身份识系统),并结合智能图像识别系统进行审核验证的方式,使获取方法实施的权威性、安全性和效率性得到了保证。

本发明的其他优点、目标,和特征在某种程度上将在随后的说明书中进行阐述,并且在某种程度上,基于对下文的考察研究对本领域技术人员而言将是显而易见的,或者可以从本发明的实践中得到教导。本发明的目标和其他优点可以通过下面的说明书,权利要求书,以及附图中所特别指出的结构来实现和获得。

附图说明

附图用来提供对本申请的技术方案或现有技术的进一步理解,并且构成说明书的一部分。其中,表达本申请实施例的附图与本申请的实施例一起用于解释本申请的技术方案,但并不构成对本申请技术方案的限制。

图1是本发明中的区块链网络fabric-ca数字证书的获取方法的应用场景示意图;

图2是根据本发明一实施例的区块链网络fabric-ca数字证书的获取方法的流程示意图;

图3是根据本发明一实施例的调用第三方身份认证系统有效性验证的交互过程示意图;

图4是根据本发明一实施例的区块链网络fabric-ca数字证书的获取装置的构成示意图。

具体实施方式

以下将结合附图及实施例来详细说明本发明的实施方式,借此对本发明如何应用技术手段来解决技术问题,并达成相应技术效果的实现过程能充分理解并据以实施。本申请实施例以及实施例中的各个特征,在不相冲突前提下可以相互结合,所形成的技术方案均在本发明的保护范围之内。

如图1所示,本发明的发明构思是在现有官方fabric-ca架构基础上,在fabric用户注册身份时,增加了实名审核验证环节(图1中虚线左侧所示);审核验证通过后(图1中虚线右侧所示),fabric-caserver才能对用户进行证书的签发,用户据此获得的证书,才能凭借该身份(证书)在区块链上进行活动。进而从根源上解决了区块链弱监管的问题。

基于图1所示的构思,本发明提出了一种区块链网络fabric-ca数字证书的获取方法,如图2所示,该获取方法中,

首先进行步骤s210,接收用户录入的注册身份信息。举例而言,通过专门开发的注册网页或app来接收用户录入的注册身份信息。

之后进行步骤s220,调用第三方身份认证系统对注册身份信息进行有效性验证。这里的第三方身份认证系统指例如公安部身份识系统这样的,具有权威性的认证系统,有效性验证指对身份信息的是否真实有效的验证,例如录入的身份信息为姓名和身份证号,就是验证姓名和身份证号是否真实存在,两者是否匹配等。

在一具体的实施例中,第三方身份认证系统包括签名服务器和认证服务器;调用该第三方身份认证系统对注册身份信息进行有效性验证的具体过程如图3所示。需要说明的是,图3中认证客户端为逻辑上的客户端,其是相对于第三方身份认证系统来说的,其可部署于注册网页或app的后台服务器中。对注册身份信息进行有效性验证,

首先要获取签名服务器对客户端基础业务数据的第一签名数据。其中,在一具体的实施例中,客户端基础业务数据至少包括设置客户号信息,应用名称信息,时间戳信息和认证模式信息。

具体的,如图3中①所示,认证客户端通过预设规则生成客户端基础业务数据,然后通过向签名服务器请求对客户端基础业务数据的签名,签名服务器响应该请求,并返回第一签名数据给认证客户端。

之后,基于第一签名数据和客户端基础业务数据向认证服务器申请业务流水号数据。具体的,如图3中②所示,将客户端基础业务数据和第一签名数据进行打包,根据打包后的数据向认证服务器请求业务流水号,认证服务器响应该请求返回业务流水号数据。

再之后,基于申请得到的业务流水号数据和用户录入的注册身份信息生成中间数据,并获取签名服务器对该中间数据的第二签名数据。具体的,如图3中③、④所示,将用户录入的注册身份信息发送给签名服务器请求加密,签名服务器响应该请求并返回加密后的注册身份信息;认证客户端将业务流水号数据和加密后的注册身份信息进行组装得到中间数据,并向签名服务器请求对中间数据的签名,签名服务器响应该请求返回第二签名数据。

最后,基于第二签名数据和中间数据向认证服务器发送验证请求,以验证注册用户的身份信息的有效性。具体的,如图3中⑤所示,认证客户端将中间数据和第二签名数据进行组装,请求认证服务器对组装后的数据进行验证,认证服务器响应该请求返回验证结果,例如验证结果为“通过”或“不通过”。

此外,需要说明的是上述过程中,认证客户端与认证服务器的交互中,认证客户端发起请求的类型为http请求。

执行步骤s220后,若验证不通过,则注册失败,结束证书获取过程。若验证通过,则继续图2中步骤s230,在有效性验证通过的情况下,对该用户与注册身份信息进行匹配性验证。

步骤s230中的匹配性验证,是要验证判断是否是用户本人来进行注册操作,而不是其他人盗用用户的身份信息进行操作。

在一具体的实施例中,用户录入的注册身份信息包括姓名和身份证号码;对用户与对注册身份信息进行匹配性验证包括:

接收用户上传的用户手持身份证的照片,该用户手持身份证的照片包括身份证正面信息和用户面部信息,基于智能图像识别算法对用户手持身份证的照片进行识别,从身份证正面信息中识别出第一人脸图像,从用户面部信息中识别出第二人脸图像;

接收用户上传的身份证正反面的照片,基于智能图像识别算法从该照片中识别出姓名、身份证号码以及证件有效期范围;

接收用户上传的手写当天日期的照片,基于智能图像识别算法从该照片中识别出当天日期;

比对第一人脸图像和第二人脸图像之间的相似度是否大于等于预设值,比对录入的注册身份信息中的姓名和身份证号码与识别出的姓名、身份证号码是否一致,比对当前实际日期(可通过ntp服务器获取)是否超出识别出的证件有效期范围,比对当天实际日期与识别出的当天日期是否一致,以用于验证用户与注册身份信息是否匹配,

当第一人脸图像和第二人脸图像之间的相似度大于等于预设值,且录入的注册身份信息中的姓名和身份证号码与识别出的姓名、身份证号码一致,且当前实际日期未超出识别出的证件有效期范围,且当前实际日期与识别出的当天日期一致时,确认该用户与注册身份信息匹配,即匹配性验证通过。

此外,以上述匹配性验证的实施例为基础上,还可以增加人工审核环节,即当由于上传的照片质量不佳,智能图像识别算法对相应照片处理识别失败后,会返回结果给运营人员,由人工去进行照片的识别比对,以完成匹配性验证。

执行步骤s230后,同样的,若验证不通过,则注册失败,结束证书获取过程。若验证通过,则继续图2中步骤s240,在匹配性验证通过的情况下,基于该注册身份信息向fabric-ca服务器进行证书申请,以获取fabric-ca数字证书。

在一具体的实施例中,基于注册身份信息向fabric-ca服务器进行证书申请,具体为,

首先,根据注册身份信息制作证书请求文件(csr文件)。

举例而言,调用fabric-caclient或者fabricsdk根据注册身份信息进行证书请求文件的制作,csr文件中主要包含申请单位名称法定名称、申请单位的所在部门、申请单位所属国家、申请单位所在省名或州名以及最重要的申请证书的具体名称,这里将具体名称部分填入注册身份信息中用户的身份证号码和姓名。

之后,将制作好的证书请求文件发送给fabric-ca服务器以进行证书申请,fabric-caserver就会根据这个csr里面的信息使用其根ca或中间ca的私钥签名生成证书公钥文件,进行证书的颁发(证书里面主要包含用户的信息、用户的公钥以及证书的有效日期等)。注册用户通过fabric-caclient或者fabricsdk拿到fabric-caserver颁发的数字证书,从而获取到fabric-ca数字证书。该过程与现有技术相同,这里不进行展开说明。

用户使用获取的该数字证书通过特定的peer节点以及特定的orderer节点进行交互来参与区块链网络中交易(如图1所示),该数字证书就代表用户,与用户真实社会身份信息相对应,解决了区块链弱监管的问题。

如图4所示,本申请的实施例还提供了一种区块链网络fabric-ca数字证书的获取装置,其包括:

接收单元41,其用于接收用户录入的注册身份信息;

有效性验证单元42,其用于调用第三方身份认证系统对注册身份信息进行有效性验证;

匹配性验证单元43,在有效性验证通过的情况下,对该用户与注册身份信息进行匹配性验证;

证书申请单元44,其用于在匹配性验证通过的情况下,基于注册身份信息向fabric-ca服务器进行证书申请,以获取fabric-ca数字证书。

在一具体的实施例中,第三方身份认证系统包括签名服务器和认证服务器;有效性验证单元42具体配置为,

获取签名服务器对客户端基础业务数据的第一签名数据;

基于第一签名数据和客户端基础业务数据向认证服务器申请业务流水号数据;

通过签名服务器对注册身份信息进行加密,将加密后的注册身份信息与业务流水号数据进行组装,以生成得到中间数据;

获取签名服务器对中间数据的第二签名数据;

基于第二签名数据和中间数据向认证服务器发送验证请求,以验证注册用户的身份信息的有效性。

在一具体的实施例中,用户录入的注册身份信息包括姓名和身份证号码;匹配性验证单元43具体配置为:

接收用户上传的用户手持身份证的照片,该用户手持身份证的照片包括身份证正面信息和用户面部信息;基于智能图像识别算法对该用户手持身份证的照片进行识别,从身份证正面信息中识别出第一人脸图像,从用户面部信息中识别出第二人脸图像;

接收用户上传的身份证正反面的照片,基于智能图像识别算法从该照片中识别出姓名、身份证号码以及证件有效期范围;

接收用户上传的手写当天日期的照片,基于智能图像识别算法从该照片中识别出当天日期;

比对第一人脸图像和第二人脸图像之间的相似度是否大于等于预设值,比对录入的注册身份信息中的姓名和身份证号码与识别出的姓名、身份证号码是否一致,比对当前实际日期是否超出识别出的证件有效期范围,比对当天实际日期与识别出的当天日期是否一致,以用于验证用户与注册身份信息是否匹配;

当第一人脸图像和第二人脸图像之间的相似度大于等于预设值,且录入的注册身份信息中的姓名和身份证号码与识别出的姓名、身份证号码一致,且当前实际日期未超出识别出的证件有效期范围,且当前实际日期与识别出的当天日期一致时,确认该用户与注册身份信息匹配。

在一具体的实施例中,证书申请单元44,具体配置为,

根据注册身份信息制作证书请求文件,将该证书请求文件发送给fabric-ca服务器以进行证书申请。

以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉该技术的人员在本发明所揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1