[发明专利]一种基于零知识证明的加密区块链设计方法在审
| 申请号: | 202011526289.2 | 申请日: | 2020-12-22 |
| 公开(公告)号: | CN113014390A | 公开(公告)日: | 2021-06-22 |
| 发明(设计)人: | 刘璨;蔡维德 | 申请(专利权)人: | 北京航空航天大学 |
| 主分类号: | H04L9/32 | 分类号: | H04L9/32;G06Q20/40;G06Q20/38;H04L12/18 |
| 代理公司: | 暂无信息 | 代理人: | 暂无信息 |
| 地址: | 100191*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 知识 证明 加密 区块 设计 方法 | ||
本发明设计一种保护区块内交易隐私信息的加密方法,特别涉及到零知识证明的计算,其特征在于包含以下步骤:节点对收到的交易创立随机数,并对其加密作为交易标识;节点根据所有权验证逻辑和余额一致逻辑构建相应的数字电路,并建立零知识证明,将公共数字在系统内共识;节点根据自己提请的交易,构建witness,用该witness发起交易;节点收到witness后,对其有效性进行验证,并广播验证结果;各节点根据验证结果达成系统内的一致性。本发明解决了区块信息公开的问题,即利用零知识证明系统实现了对区块交易中隐私信息的保护,同时能区块链系统中的节点能完成交易认证,实现区块数据的一致性共识。
技术领域
本发明涉及一种加密区块链的技术领域,尤其涉及一种基于零知识证明的加密区块链设计方法。
背景技术
区块链技术在实际应用中都面临着一个巨大的问题——数据隐私的问题。因为,区块链的共识机制是依存于账本数据公开,这使得所有的节点可以看到相同的账本数据,接收到相同的交易后,并能根据交易内容以及账本信息进行验证。而对交易内隐私进行保护,必然是要对交易数据进行加密,这和交易信息要想所有节点广播相矛盾。所以要想实现对区块链中隐私的保护,需要将区块链技术和一个最加密之后仍可以进行计算从而验证交易正确性的技术相结合。
在密码学领域,零知识证明可以实现类似的功能。零知识证明是证明者可以向验证者证明一个NP论断,而不揭露其中的信息。在区块链系统中,区块的构建者可以利用零知识证明对构建的区块产生一个证明,向其他验证节点证明该区块内的交易都市满足要求的,而且验证节点无法从该证明中获取到任何的交易信息。区块链技术和零知识证明技术相结合,实现对区块链中交易信息的隐私保护,获取使用者对区块链系统的信任,将促进区块链技术更好的应用在各个场景中。
发明内容
为了解决上述关键问题,本发明提供了一种基于零知识证明的加密区块链设计方法,包括以下步骤:
S1、构建身份公私钥系统和零知识证明系统参数;
S2、利用秘钥系统和参数,发起和验证交易;
S3、区块链系统对收到的验证结果进行共识。
所述的步骤S1中公私钥系统和零知识证明系统参数的获取具体包括以下步骤:
S11、节点从CA获取自身的公私钥,并将公钥广播出去。
S12、节点将收到的公钥信息储存起来。
S13、主节点获取当前区块的状态,包括merkletree的叶子节点和路径信息,利用这些信息构建零知识证明参数,并发送给其他节点。
S14、节点收到零知识证明参数后,用自身区块信息验证参数正确性,如果验证通过就将该参数储存起来。
所述的步骤S2中构建和验证交易具体包括以下步骤:
S21、发起交易的节点,节点在交易池中找到符合条件的交易,并且将此时的状态作为witness和零知识证明参数一起发送给各节点。
S22、节点在收到一笔交易时,首先是根据交易标识验证该交易是否在交易池中,是否存在双花的现象。
S23、如果在交易池中的话,在验证witness是否符合零知识证明系统,如果验证通过,节点广播通过;否则,广播不通过。
本发明具有以下优点和有益效果:本发明解决了区块信息公开的问题,即利用零知识证明系统实现了对区块交易中隐私信息的保护,同时能区块链系统中的节点能完成交易认证,实现区块数据的一致性共识。
附图说明
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京航空航天大学,未经北京航空航天大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011526289.2/2.html,转载请声明来源钻瓜专利网。





