[发明专利]基于区块链的承诺存在性证明方法、设备及可读存储介质有效
申请号: | 201810477297.9 | 申请日: | 2018-05-17 |
公开(公告)号: | CN108805565B | 公开(公告)日: | 2022-01-18 |
发明(设计)人: | 石翔;李辉忠;张开翔;范瑞彬;马国峻;刘雪峰;詹阳;裴庆祺 | 申请(专利权)人: | 深圳前海微众银行股份有限公司 |
主分类号: | G06Q20/38 | 分类号: | G06Q20/38 |
代理公司: | 深圳市世纪恒程知识产权代理事务所 44287 | 代理人: | 胡海国 |
地址: | 518052 广东省深圳市前海深港合作区前*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 区块 承诺 存在 证明 方法 设备 可读 存储 介质 | ||
本发明公开了一种基于区块链的承诺存在性证明方法,包括:构造一框选窗口,并根据构造的框选窗口的承诺框选个数,从所述区块链的承诺数组中框选出包含对应个数承诺的若干承诺集合;构造所述若干承诺集合中各承诺集合的承诺默克树,并将所述各承诺集合的承诺默克树的公开根节点存储至各区块链节点,以形成公开根池;接收转账者发送的私密转账请求,并由各区块链节点根据所述公开根池、所述私密转账请求中的公开根节点和proof,证明所述私密转账请求中待证明承诺的存在性。本发明还公开了一种基于区块链的承诺存在性证明设备及可读存储介质。本发明能够减少空间占用和运算时间,提高私密资金的存在性证明效率。
技术领域
本发明涉及区块链的技术领域,尤其涉及一种基于区块链的承诺存在性证明方法、设备及可读存储介质。
背景技术
区块链的核心理念包括密码学技术和去中心化思想,零知识证明是一种密码学证明思想,即示证者与验证者共同协商规则,在规则中,示证者在不暴露自身秘密参数的情况下,向验证者提供一串密文,验证者通过验证密文,能够相信示证者拥有相应的秘密参数,而验证者却无法知道秘密参数的内容。由于零知识证明具备正确性、完备性和零知识性等特点,将零知识证明应用于区块链,实现私密转账,而私密转账的关键点在于证明要转账的私密资金是否存在。
目前,通过一棵记录区块链上所有承诺(表示一笔私密资金的密文)的默克树,结合零知识证明,实现私密资金的存在性证明,然而,零知识证明主要采用零知识电路实现,而零知识电路非常庞大,同时,为给全部承诺提供存在性证明,需要一棵树高较高的默克树,树高越高,哈希运算次数也越多,则重复的哈希电路也较多,进一步地增加了电路的庞大程度,空间占用较多,运算时间较长,私密资金的存在性证明效率较低。
因此,如何减少空间占用和运算时间,提高私密资金的存在性证明效率是目前亟待解决的问题。
发明内容
本发明的主要目的在于提供一种基于区块链的承诺存在性证明方法、设备及可读存储介质,旨在如何减少空间占用和运算时间,提高私密资金的存在性证明效率。
为实现上述目的,本发明提供一种基于区块链的承诺存在性证明方法,所述基于区块链的承诺存在性证明方法包括:
构造一框选窗口,并根据构造的框选窗口的承诺框选个数,从所述区块链的承诺数组中框选出包含对应个数承诺的若干承诺集合;
构造所述若干承诺集合中各承诺集合的承诺默克树,并将所述各承诺集合的承诺默克树的公开根节点存储至各区块链节点,以形成公开根池;
接收转账者发送的私密转账请求,并由各区块链节点根据所述公开根池、所述私密转账请求中的公开根节点和proof,证明所述私密转账请求中待证明承诺的存在性。
可选地,所述根据构造的框选窗口的承诺框选个数,从所述区块链的承诺数组中框选出包含对应个数承诺的若干承诺集合的步骤包括:
根据构造的框选窗口的承诺框选个数和所述区块链的承诺数组包含的承诺个数,计算承诺集合数;
按照所述承诺框选个数,从所述区块链的承诺数组中框选出包含对应个数承诺的承诺集合,直至框选的承诺集合的个数达到所述承诺集合数。
可选地,构造所述若干承诺集合中各承诺集合的承诺默克树的步骤包括:
按照所述若干承诺集合中各承诺集合的框选顺序,依次获取所述各承诺集合中各承诺的哈希值;
根据所述各承诺集合中各承诺的哈希值,构造所述各承诺集合的承诺默克树。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳前海微众银行股份有限公司,未经深圳前海微众银行股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810477297.9/2.html,转载请声明来源钻瓜专利网。