CN118264398B 基于零知识证明的密文数据安全共享与访问控制方法 (云南财经大学)_第1页
CN118264398B 基于零知识证明的密文数据安全共享与访问控制方法 (云南财经大学)_第2页
CN118264398B 基于零知识证明的密文数据安全共享与访问控制方法 (云南财经大学)_第3页
CN118264398B 基于零知识证明的密文数据安全共享与访问控制方法 (云南财经大学)_第4页
CN118264398B 基于零知识证明的密文数据安全共享与访问控制方法 (云南财经大学)_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

JinyiZhao,ZhenyingWen,Taowei基于零知识证明的密文数据安全共享与访本发明提供一种基于零知识证明的密文数节点利用接收到的合法的重加密密钥碎片结合本发明还建立了事务聚合机制和重加密正确性证明机制,不仅可以提高区块链网络的可扩展2S4、代理重加密节点利用接收到的合法的重加密密钥碎片kFrag结合数据拥有者的公S5、输入数据拥有者的公钥pkA、数据使用者的私钥skB以及一组t个重加密密文集合ppS7、数据使用者将属性哈希值以及用户属性集合输入2.根据权利要求1所述的一种基于零知识证明的密文数据安全共享与访问控制方法,其特征在于,所述S5中对每个cFragi进行聚合并计算对称密钥εK之前进行重加密结果的正3.根据权利要求1所述的一种基于零知识证明的密文数据安全共享与访问控制方法,S201、随机选取整数s,y2,...,yn∈ZN,构成n维向量空间中的一个列向量⃞=(s,2,……Jn)用来分割共享密钥,并计算原始密文分量3ii4.根据权利要求1所述的一种基于零知识证明的密文数据安全共享与访问控制方法,S303、对于每一个重加密密钥碎片kFrag定义为kprag=(id,rk,g".,Q,s,s:),其中5.根据权利要求1所述的一种基于零知识证明的密文数据安全共享与访问控制方法,A以及系统主密钥MSK;rkS409、输出碎片CFrag=(R,D,id,g"")、胶囊capsule=(P,D,ξ)和重加密密文46.根据权利要求1所述的一种基于零知识证明的密文数据安全共享与访问控制方法,S502、定义Z1为zx,i的集合表示每x,j表示第j个分割后的子秘密哈希值;7.根据权利要求1所述的一种基于零知识证明的密文数据安全共享与访问控制方法,pp58.根据权利要求1所述的一种基于零知识证明的密文数据安全共享与访问控制方法,9.根据权利要求8所述的一种基于零知识证明的密文数据安全共享与访问控制方法,全网节点并触发智能合约,各节点利用VerifyNIZKP智能合约对每个cFrag进行共识验证,10.根据权利要求1所述的一种基于零知识证明的密文数据安全共享与访问控制方法,述Trading合约用于事务的收集并对所收集事务的完整性进行验证,Processing合约和6问控制;张小红等人提出了一种支持关键词检索的区块链属性代理重加密数据共享方法,7[0009]S4、代理重加密节点利用接收到的合法的重加密密钥碎片kFrag结合数据拥有者输出胶囊capsule以及capsule[0014]进一步的,所述S5中对每个cFragi进行聚合并计算对称[0016]S201、随机选取整数s,y2,...,yn∈ZN,构成n维向量空间中的一个列向量8[0026]S303、对于每一个重加密密钥碎片kFrag定义为KFruag=(id,rk,".,Q,s,s:),9[0072]S807、全网节点将胶囊capsule、capsule碎片cFrag、零知识证明π输入于零知识证明实现了链上可验证重加密,所设计的事务聚合机制在保证数据可用性的同明在利用基于区块链的密文策略属性基加密算法实现高效数据共享和细粒度访问控制的同时,进一步使用基于代理重加密的分布式密钥管理服务为数据使用者管理和分发主密地存储和管理重加密密钥碎片,数据使用者只有获得至少阈值t个密钥碎片cFragn时才能[0112]已知M是一个l×n型访问矩阵,ρ是一个从矩阵M行标集{1,2,,l}到属性的映[0113]①随机选取整数s,y2,...,yn∈ZN,构成n维向量空间中的一个列向量[0124]S305、将重加密密钥碎片定义为kfrag-id,rk,8",Q,s,s:);[0128]代理重加密节点利用接收到的合法的重加密密钥碎片kFrag结合Alice的公钥pkA,创建随机对称密钥εK,并利用其将系统主密钥MSK加密)τ+u);[0137]S409、输出碎片胶囊cK[0140]输入数据拥有者的公钥pkA、数据使用者的私钥skB以及一组t个重加密密文集合果的正确性验证,验证通过后再执行上述步骤,然后使用εK从重加密密文CTMSK中解密出碎片kfvrug=(id,rk,8",Q,s,s:),其中,CreatNIZKP函数定义为采用Fiat_Shamir技术的安全[0173]代理重加密节点将生成的证明π广播给区块链全网;[0177]S810、若式子成立则说明cFrag正确,反之说明cFrag有误,输出验证结果中,Trading合约负责事务的收集并对所收集事务的完整性进行验证,Processing合约和至ReceiveTx函数,同时为了确保传递过程中事务的完整务的完整性,如果验证通过,则说明接收到的事务在传递过程中没有被篡改,最后通过[0192]在Processing合约中,时间点将被分别更新为和[0199]S829、提交函数Withdraw()将上一状态根prev_state_root、下一状态根next_state_root以及零知识证明zk_proo[0209]当本地事务执行完毕后,本地的Merkle树根会由上一状态根prev_state_root转钥verification_key作为零知识证明生成函数ZKPGen()[0211]S839、使用zksnark密码库生成零知识证明zk_proof=zksnark_lib.generate_[0212]S840、使用zksnark密码库中的verify_proof函数验证生成的零知识证明的有效[0213]S841、如果零知识证明无效assertis_valid_proof,则输出"Invalidzero_[0215]最后将上一状态根prev_state_root、下一状态根next_state_root、事务集[0216]S843、将上一状态根prev_state_root、下一状态根next_state_root、事务集transactions以及零知识证明zk_proof作为update_chain([0217]S844、发出验证零知识证明有效性的请求require(verify_zkp(zk_proof)"[0219]图2列举了一个时间点配置方案来说明Trading合约和Processing合约的时间点的抗压效果和链上执行签名验证智能合约和重加密结果正确性验证智能合约所消耗的[0222]本发明仿真实验平台配置了Ubuntu22.10操作系统,处理器为AMDRyzen享方法,本发明和属性代理重加密数据共享方法通过将大量双线性配对运算替换为乘运确性验证智能合约所消耗的Gas。其中,单个节点执行签名验证智能合约所产生的中心化问题的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论