【技术实现步骤摘要】
一种用于联盟链中私有数据集的保护系统及方法
[0001]本专利技术涉及区块链
,尤其涉及一种联盟链中私有数据集的保护系统及方法。
技术介绍
[0002]在联盟链中,针对隐私数据,采用的是一种私有数据集的方案,私有数据集只在相关授权方之间点对点传输,只有其hash结果记录到分布式账本上,其他节点无权进行验证。数据的整体流程为“生成
‑
共识
‑
同步
‑
验证
‑
记账”,1.私有数据集的生成流程如图1所示,当交易在背书节点之后,会产生正常数据的读写集以及私有数据的读写集。正常数据读写集会全部提交共识记录到区块中,全网同步。而私有数据仅计算出其hash值,提交共识并记录到区块中全网同步,私有数据的读写集本身则通过私有协议在授权节点之间传输,非授权节点无法获取任何私有数据的信息。
[0003]授权节点验证数据流程如图2所示,对于授权节点,首先会同步到账本数据,其中包含正常数据读写集和私有数据的hash。正常数据可以通过验证后提交到账本,私有数据则需要等 ...
【技术保护点】
【技术特征摘要】
1.一种用于联盟链中私有数据集的保护系统,其特征在于,包括若干联盟链节点、以及设置在所述联盟链节点内的零知识证明合约系统,所述零知识证明合约系统在联盟链的各个节点内部运行,用于定义私有数据使用hash算法生成hash散列值的计算过程作为电路,以及基于电路的零知识证据生成及验证过程。2.根据权利要求1所述的用于联盟链中私有数据集保护系统,其特征在于,所述零知识证明合约系统基于电路的零知识证据生成及验证过程包括:1)调用零知识智能合约系统对私有数据进行零知识证明合约电路编译,得到电路约束数据circuit;2)私有数据零知识证明电路初始化,输入通过第1)步编译得到的电路约束数据circuit,采用zk
‑
SNARK算法对电路进行初始化,得到用于证明和验证的公共参数pk、vk,通过联盟链记录到分布式账本中;3)输入私有数据集原始数据作为电路秘密输入,以及私有数据hash散列值作为电路公开输入,生成零知识证明proof;4)使用零知识证明电路基于私有数据hash构建见证witness;将见证witness和私有数据零知识证明一起作为输入,调用零知识系统合约验证功能Verify进行验证。3.一种用于联盟链中私有数据集的保护方法,基于权利要求1
‑
2任一所述的用于联盟链中私有数据集的保护系统实现,其特征在于,包括私有数据集生成过程以及验证过程,其中私有数据集生成过程具体包括以下步骤:S1,联盟链中的执行节点对交易进行预执行,生成正常数据读写集和私有数据读写集;S2,执行节点采用零知识证明合约系统对私有数据读写集进行零知识证明处理,...
【专利技术属性】
技术研发人员:胡建鑫,付正,曾凡华,陈冬,
申请(专利权)人:新晨科技股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。