零知识身份验证方法、验证客户端、用户客户端及系统技术方案

技术编号:34753368 阅读:25 留言:0更新日期:2022-08-31 18:49
本发明专利技术涉及身份验证技术领域,公开了一种零知识身份验证方法、验证客户端、用户客户端及系统。方法包括:获取原始身份信息、区块地址及身份密文,根据用户公钥,获得身份解密信息,若身份解密信息匹配原始身份信息,则根据单向加密算法对身份密文进行单向加密处理,得到待验证身份信息,根据区块地址,获得身份存证信息,根据身份存证信息及待验证身份信息,生成验证信息。本实施例可排除第三方对用户身份信息的留存和控制,通过查询区块链上数据,便可获得身份存证信息,保证身份存证信息的不可篡改,有利于保护用户隐私和更可靠地进行身份验证。证。证。

【技术实现步骤摘要】
零知识身份验证方法、验证客户端、用户客户端及系统


[0001]本专利技术涉及身份验证
,具体涉及一种零知识身份验证方法、验证客户端、用户客户端及系统。

技术介绍

[0002]人们在升学、求职或其它生活事务中,通常需要配合验证方进行验证身份信息的真实性。通常,用户需要在第三方平台上预存身份信息。后续验证身份信息时,用户需主动向验证方呈上当前身份信息,验证方到第三方平台上调取预存的身份信息,根据当前身份信息与预存的身份信息,辨别当前身份信息的真实性。但是,此种身份验证机制至少存在以下问题:通常,第三方平台为中心化平台,第三方平台有能力随意拷贝、篡改、删除、擅自使用、转让、交易用户的身份信息,容易泄漏用户的身份隐私,同时也无法保证身份验证的可靠性。

技术实现思路

[0003]本专利技术实施例的一个目的旨在提供一种零知识身份验证方法、验证客户端、用户客户端及系统,用于改善现有身份验证机制的可靠性较低问题。
[0004]在第一方面,本专利技术实施例提供一种零知识身份验证方法,应用于验证客户端,包括:获取原始身份信息、区块地址及身份密文,所述身份密文由用户私钥对所述原始身份信息进行加密得到,所述用户私钥关联用户公钥;根据所述用户公钥,解密所述身份密文,以获得身份解密信息;若所述身份解密信息匹配所述原始身份信息,则根据单向加密算法对所述身份密文进行单向加密处理,得到待验证身份信息;根据所述区块地址,查询区块链上数据,以获得身份存证信息;根据所述身份存证信息及所述待验证身份信息,生成验证信息。
[0005]可选地,所述区块地址指向的区块包括身份存证信息及权威签名信息,在解密所述身份密文前,所述方法还包括:获取权威公钥;根据所述权威公钥,验证所述权威签名信息是否合法;若合法,则进入根据所述用户公钥,解密所述身份密文的步骤;若不合法,则停止身份验证操作。
[0006]可选地,得到待验证身份信息后,所述方法还包括:根据降维算法,对所述待验证身份信息进行按位降维处理,得到降维后的待验证身份信息;对应地,则所述根据所述身份存证信息及所述待验证身份信息,生成验证信息包括:根据所述身份存证信息及所述降维后的待验证身份信息,生成验证信息。
[0007]可选地,所述根据降维算法,对所述待验证身份信息进行按位降维处理包括:
依序判断所述待验证身份信息中每个位数上的数值是否在降维数字集中;若是,则将所述位数的数值置换为第一进制数值;若否,则将所述位数的数值置换为第二进制数值,其中,所述第一进制数值与所述第二进制数值的进制数相同,且所述第一进制数值的进制数小于所述位数上数值的进制数。
[0008]可选地,所述位数上的数值的进制数为16进制;所述降维数字集包括0、1及在自然数16以内的质数;所述第一进制数值和所述第二进制数值的进制数为2进制,其中,所述第一进制数值为1,所述第二进制数值为0。
[0009]在第二方面,本专利技术实施例提供一种零知识身份验证方法,应用于用户客户端,包括:创建区块链上账户,所述区块链上账户包括用户私钥和用户公钥;根据所述用户私钥,对原始身份信息进行加密,得到身份密文;根据单向加密算法,对所述身份密文进行单向加密处理,得到身份存证信息;将所述身份存证信息发送至区块链网络,以使所述区块链网络将身份存证信息上链至区块中。
[0010]可选地,在将所述身份存证信息发送至区块链网络前,还包括:发送所述身份存证信息至权威服务器,以使所述权威服务器返回权威签名信息;相应地,则所述将所述身份存证信息发送至区块链网络,以使所述区块链网络将身份存证信息上链至区块中包括:将所述身份存证信息及所述权威签名信息发送至所述区块链网络,以使所述区块链网络将身份存证信息及所述权威签名信息上链至区块中。
[0011]可选地,将所述身份存证信息发送至所述区块链网络前,所述方法还包括:根据降维算法,对所述身份存证信息进行按位降维处理,得到降维后的身份存证信息;对应地,则将所述身份存证信息发送至区块链网络,以使所述区块链网络将身份存证信息上链至区块中包括:将所述降维后的身份存证信息发送至区块链网络,以使所述区块链网络将降维后的身份存证信息上链至区块中。
[0012]可选地,所述根据降维算法,对所述身份存证信息进行按位降维处理包括:依序判断所述身份存证信息中每个位数上的数值是否在降维数字集中;若是,则将所述位数的数值置换为第一进制数值;若否,则将所述位数的数值置换为第二进制数值,其中,所述第一进制数值与所述第二进制数值的进制数相同,且所述第一进制数值的进制数小于所述位数上数值的进制数。
[0013]在第三方面,本专利技术实施例提供一种验证客户端,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述的零知识身份验证方法。
[0014]在第四方面,本专利技术实施例提供一种用户客户端,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述的零知识身份验证方法。
[0015]在第五方面,本专利技术实施例提供一种身份区块链系统,包括:上述的验证客户端;上述的用户客户端;及上述的区块链网络,所述区块链网络分别与所述验证客户端和所述用户客户端进行通信连接。
[0016]在本专利技术实施例提供的零知识身份验证方法中,本实施例可排除第三方对用户身份信息的留存和控制,通过查询区块链上数据,便可获得身份存证信息,保证身份存证信息的不可篡改,有利于保护用户隐私和更可靠地进行身份验证。其次,本实施例先采用用户公钥解密身份密文,当身份解密信息匹配原始身份信息时,证明发送方为身份持有者后,方可进行下一步验证操作,从而保证身份验证的安全性和可靠性。再次,本实施例无需将原始身份信息上传到区块链上以充当身份存证信息,可将身份存证信息及待验证身份信息进行比对,既可实现零知识验证身份信息的目的,又避免将原始身份信息上传到网络后被一些网络服务商恶意收集,从而能够可靠保护用户的身份隐私。
附图说明
[0017]一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。
[0018]图1为本专利技术实施例提供的一种身份区块链系统的结构示意图;图2为本专利技术另一实施例提供的一种身份区块链系统的结构示意图;图3为本专利技术实施例提供的权威服务器审核身份密文的示意图;图4为本专利技术实施例提供的一种零知识身份验证方法的流程示意图,其中,执行主体为验证客户端;图5为本专利技术另一实施例提供的一种零知识身份验证方法的流程示意图;图6为本专利技术实施例提供的一种零知识身份验证方法的流程示意图,其中,执行主体为用户客户端;图7为本专利技术实施例提供的一种电子设备的电路本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种零知识身份验证方法,应用于验证客户端,其特征在于,包括:获取原始身份信息、区块地址及身份密文,所述身份密文由用户私钥对所述原始身份信息进行加密得到,所述用户私钥关联用户公钥;根据所述用户公钥,解密所述身份密文,以获得身份解密信息;若所述身份解密信息匹配所述原始身份信息,则根据单向加密算法对所述身份密文进行单向加密处理,得到待验证身份信息;根据所述区块地址,查询区块链上数据,以获得身份存证信息;根据所述身份存证信息及所述待验证身份信息,生成验证信息。2.根据权利要求1所述的方法,其特征在于,所述区块地址指向的区块包括身份存证信息及权威签名信息,在解密所述身份密文前,所述方法还包括:获取权威公钥;根据所述权威公钥,验证所述权威签名信息是否合法;若合法,则进入根据所述用户公钥,解密所述身份密文的步骤;若不合法,则停止身份验证操作。3.根据权利要求1所述的方法,其特征在于,得到待验证身份信息后,还包括:根据降维算法,对所述待验证身份信息进行按位降维处理,得到降维后的待验证身份信息;对应地,则所述根据所述身份存证信息及所述待验证身份信息,生成验证信息包括:根据所述身份存证信息及所述降维后的待验证身份信息,生成验证信息。4.根据权利要求3所述的方法,其特征在于,所述根据降维算法,对所述待验证身份信息进行按位降维处理包括:依序判断所述待验证身份信息中每个位数上的数值是否在降维数字集中;若是,则将所述位数的数值置换为第一进制数值;若否,则将所述位数的数值置换为第二进制数值,其中,所述第一进制数值与所述第二进制数值的进制数相同,且所述第一进制数值的进制数小于所述位数上数值的进制数。5.根据权利要求4所述的方法,其特征在于,所述位数上的数值的进制数为16进制;所述降维数字集包括0、1及在自然数16以内的质数;所述第一进制数值和所述第二进制数值的进制数为2进制,其中,所述第一进制数值为1,所述第二进制数值为0。6.一种零知识身份验证方法,应用于用户客户端,其特征在于,包括:创建区块链上账户,所述区块链上账户包括用户私钥和用户公钥;根据所述用户私钥,对原始身份信息进行加密,得到身份密文;根据单向加密算法,对所述身份密文进行单向加密处理,得到身份存证信息;将所述身份存证信息发送至区块链...

【专利技术属性】
技术研发人员:吴刚吴涛蔺静茹
申请(专利权)人:暗链科技深圳有限公司
类型:发明
国别省市:

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

1