CN110958110A - 一种基于零知识证明的区块链隐私数据管理方法和系统 - Google Patents
一种基于零知识证明的区块链隐私数据管理方法和系统 Download PDFInfo
- Publication number
- CN110958110A CN110958110A CN201911248093.9A CN201911248093A CN110958110A CN 110958110 A CN110958110 A CN 110958110A CN 201911248093 A CN201911248093 A CN 201911248093A CN 110958110 A CN110958110 A CN 110958110A
- Authority
- CN
- China
- Prior art keywords
- module
- user
- information service
- client
- party information
- 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.)
- Granted
Links
Images
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
- H04L9/3218—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 proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs
-
- 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/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- 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/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Power Engineering (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Telephonic Communication Services (AREA)
Abstract
本发明公开了一种针对用户丢失区块链私钥后管理隐私数据形式的数字资产的方法,属于区块链技术领域,其提出了一种公开透明的资产管理方式,用户在丢失私钥之后,可以根据预存信息将隐私数据转移或恢复到目的地址上,同时保证管理资产过程是隐私安全的;并提出了一种基于零知识证明的用户身份认证方式,能安全可靠地验证丢失者的真实身份;本发明适用于解决区块链系统在私钥丢失后的资产可恢复及使用性问题,能够在无私钥的情况下验证身份并将用户的隐私数据恢复或转移到目的的地址上。
Description
技术领域
本发明属于区块链技术领域,更具体地,涉及一种基于零知识证明的区块链隐私数据管理方法和系统。
背景技术
在当今的区块链网络领域中,私钥是用户身份的唯一标识,一对公私钥与一笔数字资产预先绑定,用户使用私钥进行签名交易,从而证明拥有该数字资产的使用权。
然而,现在区块链网络中的数字资产管理方法存在一些问题:隐私数据形式的数字资产与私钥绑定,但私钥与真实用户没有任何联系,当用户丢失私钥时,就意味着用户丢失了其在区块链上的唯一身份标识,导致该用户所拥有的隐私数据将无法被使用;有鉴于此,有的用户选择将私钥备份在第三方平台,在使用时再从第三方平台调取私钥,然而,由于第三方平台具有中心化的特性,易受到攻击,因此难以保证私钥的安全性,并会造成隐私数据被盗取。
发明内容
针对现有技术的以上缺陷或改进需求,本发明提供了一种基于零知识证明的区块链隐私数据管理方法和系统,其目的在于,解决现有区块链网络中的数字资产管理方法中存在一旦用户私钥丢失则无法使用隐私数据的技术问题,以及存储私钥的第三方平台收到恶意攻击时导致私钥和隐私数据被盗取的技术问题。
为实现上述目的,按照本发明的一个方面,提供了一种基于零知识证明的区块链隐私数据管理方法,包括以下步骤:
(1)客户端从其多个第三方信息服务商中选择至少一个第三方信息服务商的地址,获取操作客户端的用户在每一个第三方信息服务商的地址上已经注册过的手机号和对应的密钥,对该第三方信息服务商的地址、手机号、以及密钥进行哈希和处理,以得到对应于该第三方信息服务商的哈希值,并将得到的所有哈希值构造成默克尔树;
(2)客户端随机生成随机数,对步骤(1)中构造的默克尔树的根值和随机数进行哈希和处理,并将得到的哈希值提交到区块链网络,并判断是否从区块链网络接收到交易号,如果接收到则表示哈希值提交成功,并进入步骤(3),否则重复提交操作,直到从区块链网络接收到交易号为止;
(3)客户端在用户丢失私钥之后,生成彼此对应的一对新的公私钥对和用户地址,并对该用户地址和步骤(1)中构造的默克尔树的根值进行哈希和处理,以得到新的哈希值,利用该哈希值和步骤(2)中提交到区块链网络的哈希值生成第一零知识证明,利用用户在第三方信息服务商的地址上已经注册过的手机号和对应的密钥生成第二零知识证明,并将第一零知识证明和第二零知识证明打包成协助恢复资产请求发送给步骤(1)中选择的第三方信息服务商;
(4)接收到协助协助恢复资产请求的第三方信息服务商利用恢复资产请求中的第二零知识证明验证对应的用户是否是该第三方信息服务商提供服务的用户,如果是则转入步骤(5),否则过程结束;
(5)接收到协助协助恢复资产请求的第三方信息服务商利用恢复资产请求中的第一零知识证明验证该用户丢失私钥是否属实,如果属实则向区块链网络提交身份确认凭证,然后转入步骤(6),否则过程结束;
(6)区块链中的节点在收到身份确认凭证后,将其作为叶子节点添加至区块链网络预先建立的验证默克尔树中,并向客户端发送身份确认凭证;
(7)客户端在获取到身份确认凭证之后,使用零知识证明的方法来证明在区块链网络预先建立的验证默克尔树中存在身份确认凭证,并且提交该身份确认凭证的第三方信息服务商的地址位于步骤(1)构造的默克尔树中,从而得到第三零知识证明,并将该第三零知识证明提交给区块链网络;
(8)区块链网络中的节点验证客户端提交的第三零知识证明是否正确,如果验证通过,则返回交易号给客户端,并进入步骤(9),否则返回步骤(6);
(9)客户端判断收到的身份确认凭证的数量是否大于等于恢复阈值,如果是,则进入步骤(10),否则返回步骤(6);
(10)客户端判断其在步骤(1)选择的第三方信息服务商数量是否大于1,如果是则进入步骤(11),否则进入步骤(13);
(11)客户端根据步骤(1)中构造的默克尔树的根值、步骤(1)中手机号对应的密钥、以及恢复阈值生成第四零知识证明,并将第四零知识证明提交给区块链网络;
(12)区块链网络中的节点利用第四零知识证明验证用户提交的交易是否有效,如果是,则进入步骤(14),否则过程结束。
(13)客户端将收到的所有交易号构成的集合、以及步骤(2)所收到的交易号一起打包成交易提交给区块链网络;
(14)区块链网络中的节点将用户在区块链网络中的隐私数据恢复到步骤(3)生成的新用户地址上;
(15)区块链网络中的节点判断新用户地址上恢复的隐私数据是否是转账数据,如果是,则利用新用户地址对应的私钥对转账数据进行签名,并将签名后的转账数据转给收账用户,过程结束,否则过程结束。
优选地,所述方法进一步包括在步骤(14)中将用户在区块链网络中的隐私数据恢复到步骤(3)生成的新用户地址上之前,区块链网络中的节点选择等待一段时延,判断是否有其他用户执行隐私数据恢复撤销操作,如果有则中断该隐私数据恢复操作,过程结束,否则将用户在区块链网络中的隐私数据恢复到步骤(3)生成的新用户地址上。
优选地,身份确认凭证中包括:对步骤(3)中新的公私钥对中的公钥、以及该第三方信息服务商生成的第一随机数进行哈希计算后得到的哈希值,以及利用该公钥对该第三方信息服务商生成的第二随机数进行加密后得到的加密结果。
优选地,零知识证明的生成和验证过程都是通过Bellman库实现的。
优选地,恢复阈值应大于等于1,且小于等于步骤(1)中构建的默克尔树中叶子节点的数量。
按照本发明的另一方面,提供了一种基于零知识证明的区块链隐私数据管理系统,其特征在于,包括:
第一模块,其设置于客户端中,用于从其多个第三方信息服务商中选择至少一个第三方信息服务商的地址,获取操作客户端的用户在每一个第三方信息服务商的地址上已经注册过的手机号和对应的密钥,对该第三方信息服务商的地址、手机号、以及密钥进行哈希和处理,以得到对应于该第三方信息服务商的哈希值,并将得到的所有哈希值构造成默克尔树;
第二模块,其设置于客户端中,用于随机生成随机数,对第一模块构造的默克尔树的根值和随机数进行哈希和处理,并将得到的哈希值提交到区块链网络,并判断是否从区块链网络接收到交易号,如果接收到则表示哈希值提交成功,并进入第三模块,否则重复提交操作,直到从区块链网络接收到交易号为止;
第三模块,其设置于客户端中,用于在用户丢失私钥之后,生成彼此对应的一对新的公私钥对和用户地址,并对该用户地址和第一模块中构造的默克尔树的根值进行哈希和处理,以得到新的哈希值,利用该哈希值和第二模块中提交到区块链网络的哈希值生成第一零知识证明,利用用户在第三方信息服务商的地址上已经注册过的手机号和对应的密钥生成第二零知识证明,并将第一零知识证明和第二零知识证明打包成协助恢复资产请求发送给第一模块选择的第三方信息服务商;
第四模块,其设置于接收到协助协助恢复资产请求的第三方信息服务商中,用于利用恢复资产请求中的第二零知识证明验证对应的用户是否是该第三方信息服务商提供服务的用户,如果是则转入第五模块,否则过程结束;
第五模块,其设置于接收到协助协助恢复资产请求的第三方信息服务商中,用于利用恢复资产请求中的第一零知识证明验证该用户丢失私钥是否属实,如果属实则向区块链网络提交身份确认凭证,然后转入第六模块,否则过程结束;
第六模块,其设置于区块链中的节点中,用于在收到身份确认凭证后,将其作为叶子节点添加至区块链网络预先建立的验证默克尔树中,并向客户端发送身份确认凭证;
第七模块,其设置于客户端中,用于在获取到身份确认凭证之后,使用零知识证明的方法来证明在区块链网络预先建立的验证默克尔树中存在身份确认凭证,并且提交该身份确认凭证的第三方信息服务商的地址位于第一模块构造的默克尔树中,从而得到第三零知识证明,并将该第三零知识证明提交给区块链网络;
第八模块,其设置于区块链网络中的节点中,用于验证客户端提交的第三零知识证明是否正确,如果验证通过,则返回交易号给客户端,并进入第九模块,否则返回第六模块;
第九模块,其设置于客户端中,用于判断收到的身份确认凭证的数量是否大于等于恢复阈值,如果是,则进入第十模块,否则返回第六模块;
第十模块,其设置于客户端中,用于判断其在第一模块选择的第三方信息服务商数量是否大于1,如果是则进入第十一模块,否则进入第十三莫快递;
第十一模块,其设置于客户端中,用于根据第一模块中构造的默克尔树的根值、第一模块中手机号对应的密钥、以及恢复阈值生成第四零知识证明,并将第四零知识证明提交给区块链网络;
第十二模块,其设置于区块链网络中的节点中,用于利用第四零知识证明验证用户提交的交易是否有效,如果是,则进入第十四模块,否则过程结束。
第十三模块,其设置于客户端中,用于将收到的所有交易号构成的集合、以及第二模块所收到的交易号一起打包成交易提交给区块链网络;
第十四模块,其设置于区块链网络中的节点中,用于将用户在区块链网络中的隐私数据恢复到第三模块生成的新用户地址上;
第十五模块,其设置于区块链网络中的节点中,用于判断新用户地址上恢复的隐私数据是否是转账数据,如果是,则利用新用户地址对应的私钥对转账数据进行签名,并将签名后的转账数据转给收账用户,过程结束,否则过程结束。
总体而言,通过本发明所构思的以上技术方案与现有技术相比,能够取得下列有益效果:
(1)由于本发明在用户遗忘私钥后使用零知识证明将隐私数据恢复到新的用户地址上,进而使用新的用户地址对应的公私钥对来使用隐私数据,从而能够解决现有区块链网络中的数字资产管理方法中存在一旦用户私钥丢失则无法使用隐私数据的技术问题
(2)由于本发明不使用第三方平台存储私钥,因此不存在私钥在第三方平台容易被盗取,进而用户的隐私数据容易被非法获得的情况,因此本发明能够解决现有区块链网络中的数字资产管理方法中存在的存储私钥的第三方平台收到恶意攻击时导致私钥和隐私数据被盗取的技术问题。
(3)本发明能够保证整个隐私数据转移过程的公开透明,每一步骤都可追溯。
附图说明
图1是本发明基于零知识证明的区块链隐私数据管理方法的流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
以下首先对本发明的技术术语进行解释和说明:
零知识证明:证明者既能向验证者充分证明自己是某种权益的合法拥有者,在证明的过程中又不向验证者泄漏任何有关被证明权益的信息——即给外界的“知识”为“零”。
信息承诺协议(哈希和处理):一类两方参与的两阶段交互协议。首先在承诺阶段,承诺者对一个字符串v承诺,发送给接收者,并且确保接受者得不到关于v的任何信息;随后在打开阶段,承诺者公开v,并证明其与第一阶段的一致性。
交易:转账目标地址为某特殊地址,区块链矿工客户端能够对该地址进行识别,例如以太坊智能合约是一种目标地址为空的特殊交易。
隐私数据:保存在区块链上的任何与密钥相关的数据,例如,加密货币、账户余额等。
本发明的整体思路在于,利用去中心化的区块链中的节点作为验证者,结合中心化认证便利性以及社交认证的可靠性,提供对私钥丢失者的身份验证,在用户丢失私钥后,能够实现对原有资产的转移。由于验证者均来自多方,减少了合谋的可能性。最后在触发恢复流程后,有一段时间的缓冲,能够令原用户有充分的时间接受到通知并进行处理。
如图1所示,本发明基于零知识证明的区块链隐私数据管理方法包括以下步骤:
(1)客户端从其多个第三方信息服务商中选择至少一个第三方信息服务商的地址,获取操作客户端的用户在每一个第三方信息服务商的地址上已经注册过的手机号和对应的密钥,对该第三方信息服务商的地址、手机号、以及密钥进行哈希和处理,以得到对应于该第三方信息服务商的哈希值,并将得到的所有哈希值构造成默克尔树;
具体而言,第三方信息服务商可以是邮箱服务提供商,也可以是通讯服务提供商。
(2)客户端随机生成随机数,对步骤(1)中构造的默克尔树的根值和随机数进行哈希和处理,并将得到的哈希值提交到区块链网络,并判断是否从区块链网络接收到交易号(Transaction ID),如果接收到则表示哈希值提交成功,并进入步骤(3),否则重复提交操作,直到从区块链网络接收到交易号为止;
(3)客户端在用户丢失私钥之后,生成彼此对应的一对新的公私钥对和用户地址,并对该用户地址和步骤(1)中构造的默克尔树的根值进行哈希和处理,以得到新的哈希值,利用该哈希值和步骤(2)中提交到区块链网络的哈希值生成第一零知识证明,利用用户在第三方信息服务商的地址上已经注册过的手机号和对应的密钥生成第二零知识证明,并将第一零知识证明和第二零知识证明打包成协助恢复资产请求发送给步骤(1)中选择的第三方信息服务商;
(4)接收到协助协助恢复资产请求的第三方信息服务商利用恢复资产请求中的第二零知识证明验证对应的用户是否是该第三方信息服务商提供服务的用户,如果是则转入步骤(5),否则过程结束;
(5)接收到协助协助恢复资产请求的第三方信息服务商利用恢复资产请求中的第一零知识证明验证该用户丢失私钥是否属实,如果属实则向区块链网络提交身份确认凭证,然后转入步骤(6),否则过程结束;
具体而言,身份确认凭证中包括两部分,一部分是对步骤(3)中新的公私钥对中的公钥、以及该第三方信息服务商生成的第一随机数进行哈希计算后得到的哈希值,另一部分是利用该公钥对该第三方信息服务商生成的第二随机数进行加密后得到的加密结果。
(6)区块链中的节点在收到身份确认凭证后,将其作为叶子节点添加至区块链网络预先建立的验证默克尔树中,并向客户端发送身份确认凭证;
(7)客户端在获取到身份确认凭证之后,使用零知识证明的方法来证明在区块链网络预先建立的验证默克尔树中存在身份确认凭证,并且提交该身份确认凭证的第三方信息服务商的地址位于步骤(1)构造的默克尔树中,从而得到第三零知识证明,并将该第三零知识证明提交给区块链网络;
(8)区块链网络中的节点验证客户端提交的第三零知识证明是否正确,如果验证通过,则返回交易号给客户端,并进入步骤(9),否则返回步骤(6);
在本实施方式中,生成和验证零知识证明都是通过Bellman库实现的。
(9)客户端判断收到的身份确认凭证的数量是否大于等于恢复阈值,如果是,则进入步骤(10),否则返回步骤(6);
具体而言,恢复阈值应大于等于1,且小于等于步骤(1)中构建的默克尔树中叶子节点的数量。
(10)客户端判断其在步骤(1)选择的第三方信息服务商数量是否大于1,如果是则进入步骤(11),否则进入步骤(13);
(11)客户端根据步骤(1)中构造的默克尔树的根值、步骤(1)中手机号对应的密钥、以及恢复阈值生成第四零知识证明,并将第四零知识证明提交给区块链网络;
(12)区块链网络中的节点利用第四零知识证明验证用户提交的交易是否有效,如果是,则进入步骤(14),否则过程结束。
(13)客户端将收到的所有交易号构成的集合、以及步骤(2)所收到的交易号一起打包成交易提交给区块链网络;
(14)区块链网络中的节点将用户在区块链网络中的隐私数据恢复到步骤(3)生成的新用户地址上;
(15)区块链网络中的节点判断新用户地址上恢复的隐私数据是否是转账数据,如果是,则利用新用户地址对应的私钥对转账数据进行签名,并将签名后的转账数据转给收账用户,过程结束,否则过程结束。
进一步优选地,本发明的方法还可以包括在步骤(14)中将用户在区块链网络中的隐私数据恢复到步骤(3)生成的新用户地址上之前,区块链网络中的节点选择等待一段时延,判断是否有其他用户执行隐私数据恢复撤销操作,如果有则中断该隐私数据恢复操作,过程结束,否则将用户在区块链网络中的隐私数据恢复到步骤(3)生成的新用户地址上。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (6)
1.一种基于零知识证明的区块链隐私数据管理方法,其特征在于,包括以下步骤:
(1)客户端从其多个第三方信息服务商中选择至少一个第三方信息服务商的地址,获取操作客户端的用户在每一个第三方信息服务商的地址上已经注册过的手机号和对应的密钥,对该第三方信息服务商的地址、手机号、以及密钥进行哈希和处理,以得到对应于该第三方信息服务商的哈希值,并将得到的所有哈希值构造成默克尔树;
(2)客户端随机生成随机数,对步骤(1)中构造的默克尔树的根值和随机数进行哈希和处理,并将得到的哈希值提交到区块链网络,并判断是否从区块链网络接收到交易号,如果接收到则表示哈希值提交成功,并进入步骤(3),否则重复提交操作,直到从区块链网络接收到交易号为止;
(3)客户端在用户丢失私钥之后,生成彼此对应的一对新的公私钥对和用户地址,并对该用户地址和步骤(1)中构造的默克尔树的根值进行哈希和处理,以得到新的哈希值。利用该哈希值和步骤(2)中提交到区块链网络的哈希值生成第一零知识证明,利用用户在第三方信息服务商的地址上已经注册过的手机号和对应的密钥生成第二零知识证明,并将第一零知识证明和第二零知识证明打包成协助恢复资产请求发送给步骤(1)中选择的第三方信息服务商;
(4)接收到协助协助恢复资产请求的第三方信息服务商利用恢复资产请求中的第二零知识证明验证对应的用户是否是该第三方信息服务商提供服务的用户,如果是则转入步骤(5),否则过程结束;
(5)接收到协助协助恢复资产请求的第三方信息服务商利用恢复资产请求中的第一零知识证明验证该用户丢失私钥是否属实,如果属实则向区块链网络提交身份确认凭证,然后转入步骤(6),否则过程结束;
(6)区块链中的节点在收到身份确认凭证后,将其作为叶子节点添加至区块链网络预先建立的验证默克尔树中,并向客户端发送身份确认凭证;
(7)客户端在获取到身份确认凭证之后,使用零知识证明的方法来证明在区块链网络预先建立的验证默克尔树中存在身份确认凭证,并且提交该身份确认凭证的第三方信息服务商的地址位于步骤(1)构造的默克尔树中,从而得到第三零知识证明,并将该第三零知识证明提交给区块链网络;
(8)区块链网络中的节点验证客户端提交的第三零知识证明是否正确,如果验证通过,则返回交易号给客户端,并进入步骤(9),否则返回步骤(6);
(9)客户端判断收到的身份确认凭证的数量是否大于等于恢复阈值,如果是,则进入步骤(10),否则返回步骤(6);
(10)客户端判断其在步骤(1)选择的第三方信息服务商数量是否大于1,如果是则进入步骤(11),否则进入步骤(13);
(11)客户端根据步骤(1)中构造的默克尔树的根值、步骤(1)中手机号对应的密钥、以及恢复阈值生成第四零知识证明,并将第四零知识证明提交给区块链网络;
(12)区块链网络中的节点利用第四零知识证明验证用户提交的交易是否有效,如果是,则进入步骤(14),否则过程结束。
(13)客户端将收到的所有交易号构成的集合、以及步骤(2)所收到的交易号一起打包成交易提交给区块链网络;
(14)区块链网络中的节点将用户在区块链网络中的隐私数据恢复到步骤(3)生成的新用户地址上;
(15)区块链网络中的节点判断新用户地址上恢复的隐私数据是否是转账数据,如果是,则利用新用户地址对应的私钥对转账数据进行签名,并将签名后的转账数据转给收账用户,过程结束,否则过程结束。
2.根据权利要求1所述的区块链隐私数据管理方法,其特征在于,所述方法进一步包括在步骤(14)中将用户在区块链网络中的隐私数据恢复到步骤(3)生成的新用户地址上之前,区块链网络中的节点选择等待一段时延,判断是否有其他用户执行隐私数据恢复撤销操作如果有则中断该隐私数据恢复操作,过程结束,否则将用户在区块链网络中的隐私数据恢复到步骤(3)生成的新用户地址上。
3.根据权利要求1或2所述的区块链隐私数据管理方法,其特征在于,身份确认凭证中包括:对步骤(3)中新的公私钥对中的公钥、以及该第三方信息服务商生成的第一随机数进行哈希计算后得到的哈希值,以及利用该公钥对该第三方信息服务商生成的第二随机数进行加密后得到的加密结果。
4.根据权利要求1至3中任意一项所述的区块链隐私数据管理方法,其特征在于,零知识证明的生成和验证过程都是通过Bellman库实现的。
5.根据权利要求1至4中任意一项所述的区块链隐私数据管理方法,其特征在于,恢复阈值应大于等于1,且小于等于步骤(1)中构建的默克尔树中叶子节点的数量。
6.一种基于零知识证明的区块链隐私数据管理系统,其特征在于,包括:
第一模块,其设置于客户端中,用于从其多个第三方信息服务商中选择至少一个第三方信息服务商的地址,获取操作客户端的用户在每一个第三方信息服务商的地址上已经注册过的手机号和对应的密钥,对该第三方信息服务商的地址、手机号、以及密钥进行哈希和处理,以得到对应于该第三方信息服务商的哈希值,并将得到的所有哈希值构造成默克尔树;
第二模块,其设置于客户端中,用于随机生成随机数,对第一模块构造的默克尔树的根值和随机数进行哈希和处理,并将得到的哈希值提交到区块链网络,并判断是否从区块链网络接收到交易号,如果接收到则表示哈希值提交成功,并进入第三模块,否则重复提交操作,直到从区块链网络接收到交易号为止;
第三模块,其设置于客户端中,用于在用户丢失私钥之后,生成彼此对应的一对新的公私钥对和用户地址,并对该用户地址和第一模块中构造的默克尔树的根值进行哈希和处理,以得到新的哈希值,利用该哈希值和第二模块中提交到区块链网络的哈希值生成第一零知识证明,利用用户在第三方信息服务商的地址上已经注册过的手机号和对应的密钥生成第二零知识证明,并将第一零知识证明和第二零知识证明打包成协助恢复资产请求发送给第一模块选择的第三方信息服务商;
第四模块,其设置于接收到协助协助恢复资产请求的第三方信息服务商中,用于利用恢复资产请求中的第二零知识证明验证对应的用户是否是该第三方信息服务商提供服务的用户,如果是则转入第五模块,否则过程结束;
第五模块,其设置于接收到协助协助恢复资产请求的第三方信息服务商中,用于利用恢复资产请求中的第一零知识证明验证该用户丢失私钥是否属实,如果属实则向区块链网络提交身份确认凭证,然后转入第六模块,否则过程结束;
第六模块,其设置于区块链中的节点中,用于在收到身份确认凭证后,将其作为叶子节点添加至区块链网络预先建立的验证默克尔树中,并向客户端发送身份确认凭证;
第七模块,其设置于客户端中,用于在获取到身份确认凭证之后,使用零知识证明的方法来证明在区块链网络预先建立的验证默克尔树中存在身份确认凭证,并且提交该身份确认凭证的第三方信息服务商的地址位于第一模块构造的默克尔树中,从而得到第三零知识证明,并将该第三零知识证明提交给区块链网络;
第八模块,其设置于区块链网络中的节点中,用于验证客户端提交的第三零知识证明是否正确,如果验证通过,则返回交易号给客户端,并进入第九模块,否则返回第六模块;
第九模块,其设置于客户端中,用于判断收到的身份确认凭证的数量是否大于等于恢复阈值,如果是,则进入第十模块,否则返回第六模块;
第十模块,其设置于客户端中,用于判断其在第一模块选择的第三方信息服务商数量是否大于1,如果是则进入第十一模块,否则进入第十三莫快递;
第十一模块,其设置于客户端中,用于根据第一模块中构造的默克尔树的根值、第一模块中手机号对应的密钥、以及恢复阈值生成第四零知识证明,并将第四零知识证明提交给区块链网络;
第十二模块,其设置于区块链网络中的节点中,用于利用第四零知识证明验证用户提交的交易是否有效,如果是,则进入第十四模块,否则过程结束。
第十三模块,其设置于客户端中,用于将收到的所有交易号构成的集合、以及第二模块所收到的交易号一起打包成交易提交给区块链网络;
第十四模块,其设置于区块链网络中的节点中,用于将用户在区块链网络中的隐私数据恢复到第三模块生成的新用户地址上;
第十五模块,其设置于区块链网络中的节点中,用于判断新用户地址上恢复的隐私数据是否是转账数据,如果是,则利用新用户地址对应的私钥对转账数据进行签名,并将签名后的转账数据转给收账用户,过程结束,否则过程结束。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911248093.9A CN110958110B (zh) | 2019-12-09 | 2019-12-09 | 一种基于零知识证明的区块链隐私数据管理方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911248093.9A CN110958110B (zh) | 2019-12-09 | 2019-12-09 | 一种基于零知识证明的区块链隐私数据管理方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110958110A true CN110958110A (zh) | 2020-04-03 |
CN110958110B CN110958110B (zh) | 2023-04-07 |
Family
ID=69980324
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911248093.9A Active CN110958110B (zh) | 2019-12-09 | 2019-12-09 | 一种基于零知识证明的区块链隐私数据管理方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110958110B (zh) |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111639923A (zh) * | 2020-05-07 | 2020-09-08 | 杭州云象网络技术有限公司 | 一种基于零知识证明的数字货币交易记账方法及系统 |
CN111756743A (zh) * | 2020-06-24 | 2020-10-09 | 腾讯科技(深圳)有限公司 | 基于区块链的资源转移方法、装置、计算机设备和存储介质 |
CN112287040A (zh) * | 2020-10-30 | 2021-01-29 | 深圳前海微众银行股份有限公司 | 一种基于区块链的权益合并方法及装置 |
CN112598411A (zh) * | 2020-12-25 | 2021-04-02 | 杭州复杂美科技有限公司 | 可撤回的隐私授权转账方法、设备和存储介质 |
CN112861184A (zh) * | 2021-03-29 | 2021-05-28 | 中信银行股份有限公司 | 资产证明的验证与生成方法、装置及电子设备 |
CN113011982A (zh) * | 2021-04-13 | 2021-06-22 | 深圳前海移联科技有限公司 | 一种基于区块链的资产方隐藏方法、系统及电子设备 |
CN113098838A (zh) * | 2021-02-21 | 2021-07-09 | 西安电子科技大学 | 一种可信分布式身份认证方法、系统、存储介质及应用 |
CN113159774A (zh) * | 2021-04-28 | 2021-07-23 | 中国互联网络信息中心 | 一种区块链中可监管零知识证明验证方法及系统 |
CN113283887A (zh) * | 2021-06-04 | 2021-08-20 | 杭州复杂美科技有限公司 | 一种基于隐私的资产找回方法、设备及储存介质 |
CN113283888A (zh) * | 2021-06-04 | 2021-08-20 | 杭州复杂美科技有限公司 | 一种基于隐私的资产找回方法、设备及储存介质 |
CN113315749A (zh) * | 2021-04-12 | 2021-08-27 | 张日和 | 用户数据上链、用户数据使用方法、匿名系统和存储介质 |
CN113328863A (zh) * | 2021-08-03 | 2021-08-31 | 北京电信易通信息技术股份有限公司 | 一种基于零知识证明的移动设备数据采集方法及系统 |
CN114362961A (zh) * | 2022-01-04 | 2022-04-15 | 北京众享比特科技有限公司 | 基于区块链的账户恢复方法、装置、设备及存储介质 |
CN114362953A (zh) * | 2020-10-13 | 2022-04-15 | 北京泛融科技有限公司 | 一种基于零知识证明的文档内容快速抽取验证方法 |
CN114820181A (zh) * | 2021-01-22 | 2022-07-29 | 富士通株式会社 | 用于处理交易的方法、设备和存储介质 |
CN115860750A (zh) * | 2023-02-27 | 2023-03-28 | 国网江西省电力有限公司信息通信分公司 | 一种电动汽车电力交易身份认证隐私保护方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105024823A (zh) * | 2015-07-27 | 2015-11-04 | 中国船舶重工集团公司第七0九研究所 | 基于零知识证明的用户身份隐私保护方法及系统 |
WO2019072302A2 (en) * | 2018-12-21 | 2019-04-18 | Alibaba Group Holding Limited | BLOCK CHAIN DATA PROTECTION BASED ON A GENERIC ACCOUNT MODEL AND A HOMOMORPHIC ENCRYPTION |
US20190140919A1 (en) * | 2018-04-12 | 2019-05-09 | Ned M. Smith | Edge computing service global validation |
CN109858281A (zh) * | 2019-02-01 | 2019-06-07 | 杭州云象网络技术有限公司 | 一种基于零知识证明的区块链账户模型隐私保护方法 |
-
2019
- 2019-12-09 CN CN201911248093.9A patent/CN110958110B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105024823A (zh) * | 2015-07-27 | 2015-11-04 | 中国船舶重工集团公司第七0九研究所 | 基于零知识证明的用户身份隐私保护方法及系统 |
US20190140919A1 (en) * | 2018-04-12 | 2019-05-09 | Ned M. Smith | Edge computing service global validation |
WO2019072302A2 (en) * | 2018-12-21 | 2019-04-18 | Alibaba Group Holding Limited | BLOCK CHAIN DATA PROTECTION BASED ON A GENERIC ACCOUNT MODEL AND A HOMOMORPHIC ENCRYPTION |
CN109858281A (zh) * | 2019-02-01 | 2019-06-07 | 杭州云象网络技术有限公司 | 一种基于零知识证明的区块链账户模型隐私保护方法 |
Non-Patent Citations (2)
Title |
---|
TIAGO M: ""A Review on the Use of Blockchain for the Internet of Things"", 《IEEE XPLORE》 * |
刘滋润等: "区块链隐私保护技术", 《计算机工程与设计》 * |
Cited By (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111639923B (zh) * | 2020-05-07 | 2023-09-29 | 杭州云象网络技术有限公司 | 一种基于零知识证明的数字货币交易记账方法及系统 |
CN111639923A (zh) * | 2020-05-07 | 2020-09-08 | 杭州云象网络技术有限公司 | 一种基于零知识证明的数字货币交易记账方法及系统 |
CN111756743B (zh) * | 2020-06-24 | 2021-12-14 | 腾讯科技(深圳)有限公司 | 基于区块链的资源转移方法、装置、计算机设备和存储介质 |
CN111756743A (zh) * | 2020-06-24 | 2020-10-09 | 腾讯科技(深圳)有限公司 | 基于区块链的资源转移方法、装置、计算机设备和存储介质 |
CN114362953B (zh) * | 2020-10-13 | 2023-12-12 | 北京泛融科技有限公司 | 一种基于零知识证明的文档内容快速抽取验证方法 |
CN114362953A (zh) * | 2020-10-13 | 2022-04-15 | 北京泛融科技有限公司 | 一种基于零知识证明的文档内容快速抽取验证方法 |
CN112287040A (zh) * | 2020-10-30 | 2021-01-29 | 深圳前海微众银行股份有限公司 | 一种基于区块链的权益合并方法及装置 |
CN112287040B (zh) * | 2020-10-30 | 2022-11-04 | 深圳前海微众银行股份有限公司 | 一种基于区块链的权益合并方法、装置、设备及介质 |
CN112598411A (zh) * | 2020-12-25 | 2021-04-02 | 杭州复杂美科技有限公司 | 可撤回的隐私授权转账方法、设备和存储介质 |
CN112598411B (zh) * | 2020-12-25 | 2023-05-30 | 杭州复杂美科技有限公司 | 可撤回的隐私授权转账方法、设备和存储介质 |
CN114820181A (zh) * | 2021-01-22 | 2022-07-29 | 富士通株式会社 | 用于处理交易的方法、设备和存储介质 |
CN113098838A (zh) * | 2021-02-21 | 2021-07-09 | 西安电子科技大学 | 一种可信分布式身份认证方法、系统、存储介质及应用 |
CN113098838B (zh) * | 2021-02-21 | 2022-08-26 | 西安电子科技大学 | 一种可信分布式身份认证方法、系统、存储介质及应用 |
CN112861184A (zh) * | 2021-03-29 | 2021-05-28 | 中信银行股份有限公司 | 资产证明的验证与生成方法、装置及电子设备 |
CN113315749A (zh) * | 2021-04-12 | 2021-08-27 | 张日和 | 用户数据上链、用户数据使用方法、匿名系统和存储介质 |
CN113011982A (zh) * | 2021-04-13 | 2021-06-22 | 深圳前海移联科技有限公司 | 一种基于区块链的资产方隐藏方法、系统及电子设备 |
CN113159774A (zh) * | 2021-04-28 | 2021-07-23 | 中国互联网络信息中心 | 一种区块链中可监管零知识证明验证方法及系统 |
CN113159774B (zh) * | 2021-04-28 | 2024-01-09 | 中国互联网络信息中心 | 一种区块链中可监管零知识证明验证方法及系统 |
CN113283888A (zh) * | 2021-06-04 | 2021-08-20 | 杭州复杂美科技有限公司 | 一种基于隐私的资产找回方法、设备及储存介质 |
CN113283887A (zh) * | 2021-06-04 | 2021-08-20 | 杭州复杂美科技有限公司 | 一种基于隐私的资产找回方法、设备及储存介质 |
CN113328863A (zh) * | 2021-08-03 | 2021-08-31 | 北京电信易通信息技术股份有限公司 | 一种基于零知识证明的移动设备数据采集方法及系统 |
CN114362961A (zh) * | 2022-01-04 | 2022-04-15 | 北京众享比特科技有限公司 | 基于区块链的账户恢复方法、装置、设备及存储介质 |
CN114362961B (zh) * | 2022-01-04 | 2024-03-19 | 北京众享比特科技有限公司 | 基于区块链的账户恢复方法、装置、设备及存储介质 |
CN115860750A (zh) * | 2023-02-27 | 2023-03-28 | 国网江西省电力有限公司信息通信分公司 | 一种电动汽车电力交易身份认证隐私保护方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110958110B (zh) | 2023-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110958110B (zh) | 一种基于零知识证明的区块链隐私数据管理方法和系统 | |
CN110930153B (zh) | 基于隐藏第三方账号的区块链隐私数据管理方法和系统 | |
CN112039872B (zh) | 基于区块链的跨域匿名认证方法及系统 | |
CN109756485B (zh) | 电子合同签署方法、装置、计算机设备及存储介质 | |
CN111046352B (zh) | 一种基于区块链的身份信息安全授权系统与方法 | |
CN109165934B (zh) | 一种基于标识密码的安全移动支付方法及系统 | |
CN112446785A (zh) | 跨链交易方法、系统、装置、设备和存储介质 | |
CN101183932B (zh) | 一种无线应用服务的安全认证系统及其注册和登录方法 | |
CN109670801B (zh) | 一种针对区块链的数字加密货币转移方法 | |
CN106027501B (zh) | 一种在移动设备中进行交易安全认证的系统和方法 | |
CN110163604B (zh) | 一种基于多方验证的区块链资产转移方法 | |
CN106576043A (zh) | 病毒式可分配可信消息传送 | |
CN109687965A (zh) | 一种保护网络中用户身份信息的实名认证方法 | |
CN109728896A (zh) | 一种基于区块链的来电认证和溯源方法及流程 | |
CN111027036A (zh) | 一种基于区块链的身份关联方法 | |
CN111815321A (zh) | 交易提案的处理方法、装置、系统、存储介质和电子装置 | |
CN112417512A (zh) | 一种基于区块链的跨境贸易隐私数据管理系统及方法 | |
CN111639923A (zh) | 一种基于零知识证明的数字货币交易记账方法及系统 | |
CN113360943A (zh) | 一种区块链隐私数据的保护方法及装置 | |
CN114731279A (zh) | 用于自动数字证书验证的方法和装置 | |
CN110505055A (zh) | 基于非对称密钥池对和密钥卡的外网接入身份认证方法和系统 | |
KR101253683B1 (ko) | 연쇄 해시에 의한 전자서명 시스템 및 방법 | |
CN111091380B (zh) | 一种基于好友隐蔽验证的区块链资产管理方法 | |
CN112529573A (zh) | 一种组合式区块链门限签名方法及系统 | |
CN113328854B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |