基于区块链的身份验证方法、装置、设备、介质及产品制造方法及图纸

技术编号:39280297 阅读:5 留言:0更新日期:2023-11-07 10:54
本申请提出一种基于区块链的身份验证方法、装置、设备、介质及产品。该方法包括:获取针对证明对象的身份验证数据,身份验证数据中携带有证明对象的身份证明文件,身份证明文件是基于零知识证明电路对证明对象的身份声明信息进行处理后生成的;对证明对象的身份证明文件进行验证处理;若对身份证明文件的验证处理结果为验证成功,则确定验证对象对证明对象的身份验证通过;其中,验证处理包括:调用与零知识证明电路匹配的用于验证的零知识证明电路对身份证明文件进行验证,或者通过区块链中与零知识证明电路匹配的电路验证合约对身份证明文件进行验证。本申请基于零知识证明处理后的身份证明文件进行验证,可提高身份验证时的数据安全性。数据安全性。数据安全性。

【技术实现步骤摘要】
基于区块链的身份验证方法、装置、设备、介质及产品


[0001]本申请涉及区块链
,尤其涉及一种基于区块链的身份验证方法、一种基于区块链的身份验证装置、一种计算机设备、一种计算机可读存储介质及一种计算机程序产品。

技术介绍

[0002]随着互联网技术的不断发展,各式各样的社交平台层出不穷,用户在与诸如银行、学校、社交软件等第三方平台进行交互时,为了维护互联网的公共安全,往往涉及到身份验证。在身份验证的场景中,用户(证明对象)向第三方平台进行身份验证时往往是直接将自身的身份声明信息提交给第三方验证对象,这种身份验证方式可能会导致用户个人数据被泄露,无法保证数据安全性。

技术实现思路

[0003]本申请实施例提出了一种基于区块链的身份验证方法、装置、设备、介质及产品,可提高身份验证过程中的数据安全性。
[0004]一方面,本申请实施例提供了一种基于区块链的身份验证方法,该方法包括:
[0005]获取针对证明对象的身份验证数据,身份验证数据中携带有证明对象的身份证明文件,身份证明文件是基于零知识证明电路对证明对象的身份声明信息进行处理后生成的;
[0006]对证明对象的身份证明文件进行验证处理;
[0007]若对身份证明文件的验证处理结果为验证成功,则确定验证对象对证明对象的身份验证通过;
[0008]其中,验证处理包括:调用与零知识证明电路匹配的用于验证的零知识证明电路对身份证明文件进行验证,或者通过区块链中与零知识证明电路匹配的电路验证合约对身份证明文件进行验证。
[0009]一方面,本申请实施例提供了一种基于区块链的身份验证方法,该方法包括:
[0010]获取证明对象的身份声明信息,身份声明信息是由身份发行对象为证明对象发行的;
[0011]基于零知识证明电路对证明对象的身份声明信息进行处理,得到证明对象的身份证明文件;
[0012]响应于证明对象的验证操作,向验证对象发送包括身份证明文件的身份验证数据,身份验证数据用于触发验证对象对证明对象进行身份验证处理。
[0013]一方面,本申请实施例提供了一种基于区块链的身份验证装置,该装置包括:
[0014]获取单元,用于获取针对证明对象的身份验证数据,身份验证数据中携带有证明对象的身份证明文件,身份证明文件是基于零知识证明电路对证明对象的身份声明信息进行处理后生成的;
[0015]处理单元,用于对证明对象的身份证明文件进行验证处理;
[0016]确定单元,用于若对身份证明文件的验证处理结果为验证成功,则确定验证对象对证明对象的身份验证通过;
[0017]其中,验证处理包括:调用与零知识证明电路匹配的用于验证的零知识证明电路对身份证明文件进行验证,或者通过区块链中与零知识证明电路匹配的电路验证合约对身份证明文件进行验证。
[0018]在一种可能的实现方式中,处理单元1002还用于执行以下操作:
[0019]获取证明对象所在的客户端提交的身份验证请求,身份验证请求携带有客户端标识;
[0020]若根据客户端标识对客户端验证通过,则生成反馈数据;
[0021]将反馈数据发送至客户端,反馈数据用于触发客户端生成针对证明对象的身份验证数据。
[0022]在一种可能的实现方式中,身份验证数据还包括签名数据,签名数据是由客户端对接收到的反馈数据进行签名处理后得到的;处理单元还用于执行以下操作:
[0023]解析身份验证数据得到签名数据,并对签名数据进行验签处理;
[0024]若确定对签名数据验签通过,则触发执行对证明对象的身份证明文件进行验证处理的步骤。
[0025]在一种可能的实现方式中,处理单元还用于执行以下操作:
[0026]获取零知识证明电路的电路约束文件和证明计算文件,电路约束文件和证明计算文件是通过对待编译的零知识证明电路进行编译处理和可信设置处理后生成的;
[0027]在零知识证明电路中加载电路约束文件和证明计算文件,并将成功加载后的零知识证明电路作为与零知识证明电路匹配的用于验证的零知识证明电路;
[0028]基于成功加载后的零知识证明电路对证明对象的身份证明文件进行验证处理。
[0029]在一种可能的实现方式中,处理单元还用于执行以下操作:
[0030]获取证明对象的身份声明信息对应的有效期;
[0031]若身份声明信息不在所述有效期内,则生成身份验证失败的通知消息;
[0032]将通知消息发送至证明对象所在的客户端,通知消息用于触发客户端向身份发行对象请求重新获取证明对象的身份声明信息。
[0033]在一种可能的实现方式中,处理单元还用于执行以下操作:
[0034]获取零知识证明电路的验证参数,验证参数是对零知识证明电路执行可信设置处理后生成的;
[0035]根据电路约束文件、以及验证参数,生成智能合约代码文件;
[0036]将智能合约代码文件发送至区块链中,触发在区块链中基于智能合约代码文件生成电路验证合约;
[0037]其中,在区块链中允许任一区块链节点调用部署好的电路验证合约对证明对象的身份证明文件进行验证处理。
[0038]在一种可能的实现方式中,处理单元还用于执行以下操作:
[0039]接收区块链节点发送的验证处理结果,验证处理结果是区块链节点在调用电路验证合约对身份证明文件进行验证处理后生成的;
[0040]若验证处理结果为验证成功,则生成针对证明对象的状态更新请求,并将状态更新请求发送至区块链节点;
[0041]其中,状态更新请求用于触发在区块链中更新证明对象的身份状态。
[0042]一方面,本申请实施例提供了一种基于区块链的身份验证装置,该装置包括:
[0043]获取单元,用于获取证明对象的身份声明信息,身份声明信息是由身份发行对象为证明对象发行的;
[0044]处理单元,用于基于零知识证明电路对证明对象的身份声明信息进行处理,得到证明对象的身份证明文件;
[0045]发送单元,用于响应于证明对象的验证操作,向验证对象发送包括身份证明文件的身份验证数据,身份验证数据用于触发验证对象对证明对象进行身份验证处理。
[0046]在一种可能的实现方式中,处理单元基于零知识证明电路对证明对象的身份声明信息进行处理,得到证明对象的身份证明文件,用于执行以下操作:
[0047]获取证明对象的身份声明信息相关联的默克尔路径、以及证明对象的目标身份状态;
[0048]根据证明对象的默克尔路径、目标身份状态、以及身份声明信息,组装得到零知识证明电路的输入参数;
[0049]将输入参数输入至零知识证明电路进行电路验证处理,得到证明对象的身份证明文件。
[0050]在一种可能的实现方式中,处理单元将输入参数输入至零知识证明电路进行电路验证处理,得到证明对象的身份证明文件,用于执行以下操作:
[0051]对默本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于区块链的身份验证方法,其特征在于,包括:获取针对证明对象的身份验证数据,所述身份验证数据中携带有所述证明对象的身份证明文件,所述身份证明文件是基于零知识证明电路对所述证明对象的身份声明信息进行处理后生成的;对所述证明对象的身份证明文件进行验证处理;若对所述身份证明文件的验证处理结果为验证成功,则确定验证对象对所述证明对象的身份验证通过;其中,所述验证处理包括:调用与所述零知识证明电路匹配的用于验证的零知识证明电路对所述身份证明文件进行验证,或者通过区块链中与所述零知识证明电路匹配的电路验证合约对所述身份证明文件进行验证。2.如权利要求1所述的方法,其特征在于,所述方法还包括:获取证明对象所在的客户端提交的身份验证请求,所述身份验证请求携带有客户端标识;若根据所述客户端标识对所述客户端验证通过,则生成反馈数据;将所述反馈数据发送至所述客户端,所述反馈数据用于触发所述客户端生成针对所述证明对象的身份验证数据。3.如权利要求2所述的方法,其特征在于,所述身份验证数据还包括签名数据,所述签名数据是由所述客户端对接收到的所述反馈数据进行签名处理后得到的;所述方法还包括:解析所述身份验证数据得到签名数据,并对所述签名数据进行验签处理;若确定对所述签名数据验签通过,则触发执行对所述证明对象的身份证明文件进行验证处理的步骤。4.如权利要求1所述的方法,其特征在于,所述方法还包括:获取零知识证明电路的电路约束文件和证明计算文件,所述电路约束文件和证明计算文件是通过对待编译的零知识证明电路进行编译处理和可信设置处理后生成的;在零知识证明电路中加载所述电路约束文件和证明计算文件,并将成功加载后的零知识证明电路作为与所述零知识证明电路匹配的用于验证的零知识证明电路;基于成功加载后的所述零知识证明电路对所述证明对象的身份证明文件进行验证处理。5.如权利要求4所述的方法,其特征在于,所述方法还包括:获取所述证明对象的身份声明信息对应的有效期;若所述身份声明信息不在所述有效期内,则生成身份验证失败的通知消息;将所述通知消息发送至所述证明对象所在的客户端,所述通知消息用于触发所述客户端向身份发行对象请求重新获取所述证明对象的身份声明信息。6.如权利要求4所述的方法,其特征在于,所述方法还包括:获取零知识证明电路的验证参数,所述验证参数是对所述零知识证明电路执行可信设置处理后生成的;根据所述电路约束文件、以及所述验证参数,生成智能合约代码文件;将所述智能合约代码文件发送至区块链中,触发在所述区块链中基于所述智能合约代
码文件生成电路验证合约;其中,在所述区块链中允许任一区块链节点调用部署好的电路验证合约对所述证明对象的身份证明文件进行验证处理。7.如权利要求1所述的方法,其特征在于,所述方法还包括:接收区块链节点发送的验证处理结果,所述验证处理结果是所述区块链节点在调用电路验证合约对所述身份证明文件进行验证处理后生成的;若所述验证处理结果为验证成功,则生成针对所述证明对象的状态更新请求,并将所述状态更新请求发送至所述区块链节点;其中,所述状态更新请求用于触发在所述区块链中更新所述证明对象的身份状态。8.一种基于区块链的身份验证方法,其特征在于,包括:获取证明对象的身份声明信息,所述身份声明信息是由身份发行对象为所述证明对象发行的;基于零知识证明电路对所述证明对象的身份声明信息进行处理,得到所述证明对象的身份证明文件;响应于所述证明对象的验证操作,向验证对象发送包括所述身份证明文件的身份验证数据,所述身份验证数据用于触发验证对象对所述证明对象进行身份验证处理。9.如权利要求8所述的方法,其特征在于,所述基于零知识证明电路对所述证明对...

【专利技术属性】
技术研发人员:张慧蓝虎王宗友
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1