[发明专利]一种基于区块链与零知识证明的分布式学习下计算正确性验证方法在审
| 申请号: | 202111425764.1 | 申请日: | 2021-11-26 |
| 公开(公告)号: | CN114142989A | 公开(公告)日: | 2022-03-04 |
| 发明(设计)人: | 谢淑磊;徐汝昊 | 申请(专利权)人: | 北京科技大学 |
| 主分类号: | H04L9/00 | 分类号: | H04L9/00;H04L9/08;H04L67/1097;H04L67/104;G06N20/00;G06F16/27;G06F16/2455;G06F21/64 |
| 代理公司: | 北京市广友专利事务所有限责任公司 11237 | 代理人: | 张仲波 |
| 地址: | 100083*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 区块 知识 证明 分布式 学习 计算 正确性 验证 方法 | ||
1.一种基于区块链与零知识证明的分布式学习下计算正确性验证方法,其特征在于,包括如下步骤:
S1:搭建计算正确性的分布式学习的分布式环境,具体包含一组数据提供以及计算节点CP,一组用于验证的计算正确性的验证节点VP,以及区块链网络;
S2:系统的正确性验证,一是通过对输入输出做零知识证明的范围证明来验证,二是通过对每个CP的计算使用ZKP零知识证明技术来确保每个CP节点的计算正确性;
S3:通过区块链来保证计算的正确性与可溯源性。
2.根据权利要求1所述的基于区块链与零知识证明的分布式学习下计算正确性验证方法,其特征在于,所述步骤S1中的CP组成以及聚合方式,具体包括如下步骤:
S11:初始化过程:由每个CP,和查询者Q生成自己的密钥对(ki,Ki),其中ki对应于自己的私钥,Ki对应于公钥,然后每个CP将自己公钥相加从而获得CP的公共集体秘钥K,其中每个CP节点用此集体公共秘钥K对节点上计算的数据做加密,在此方案设计下,只有当所有的节点均参与的情况下才可以解密数据,这样可以防止加密数据在各个节点流通时在加密者不知晓的情况下被解密,从而导致隐私泄露;
S12查询过程:查询过程由查询节点发起,并向各个CP节点广播查询信息,各个分布式学习节点通过获取到查询节点Q的输入信息来做训练,本发明采用MySQL数据库的查询操作来做示例,比如要求计算几所学校(DP)中的男性的平均年龄:SELECT average age FROMDP1,DP2....WHERE sex=‘boy’,这样对应的需要响应的DP便会各自计算自己学校的平均年龄,然后将结果使用K加密;
S13编码与加密:各个CP将结果做编码并使用公共秘钥K加密,然后将加密结果沿着图中所示聚合树依次上传并做聚合(同态加密);
S14聚合:各个节点将子节点的数据进行聚合,由于传过来的值均为采用K加密的密文值,借助与格密码构造的CKKS同态加密算法可知,聚合结果的密文值相加即为聚合结果;
S15秘钥转换:CP的头结点也即CP1将按照聚合树最终获得聚合结果,CP1需要通过秘钥转换技术将K下的加密结果转换为K`下的加密结果。从而保证只有查询者Q才可以通过自己的私钥解开关于K`的密文,从而防止这个过程中其他人获知结果;
S16查询者解密:查询者Q利用对应于自己公钥K`的私钥对密文进行解密,拿到结果。
3.根据权利要求1所述的基于区块链与零知识证明的分布式学习下计算正确性验证方法,其特征在于,所述步骤S2中系统的正确性验证,具体步骤如下:
S21范围的验证体现在,查询者的输入范围,最终结果的输出范围,例如查询者Q在做一个查询时,会对查询的输入做一个零知识证明改造的范围证明,例如查询某个年龄的人数,需要通过零知识证明来验证输入的年龄在0-100区间范围内,从而可以防止恶意的输入;系统输出年龄的结果也应通过零知识证明来证明结果保持在相同范围内,从而防止恶意的输出;
S22识证明对每个CP的计算使用ZKP来做担保,并将结果记录在区块链上;
S23聚合阶段需要保证每个节点对子节点的数据做了正确的聚合,因为使用到了同态加密,所以只需要将同态加密后的结果以及子节点的密文作为proof证据,广播到VP验证节点(也即矿工节点)。矿工节点在本地验证证据,通过则证明CP节点做了正确的聚合计算;
S24公钥转换阶段会涉及到本地随机选取的值,通过对这一对值进行零知识证明,来证明CP节点正确的进行了公钥转换技术的工作。
4.根据权利要求1所述的基于区块链与零知识证明的分布式学习下计算正确性验证方法,其特征在于,所述步骤S3中的通过区块链来保证计算的正确性与可溯源性,具体步骤如下:
S31区块链采用纯数学的方法建立分布式节点间的信任关系,形成去中心化的可信分布式系统,产生交易、验证交易、记录交易信息、进行同步等活动均是基于分布式网络完成的,是彻彻底底的去中心化;
S32区块链采用独特的经济激励机制来吸引节点完成工作,促使节点提供算力或其他资源,保证整个分布式网络的顺利运行;整个分布式网络所容纳的节点越多,其健壮性越强,除非一半以上的节点同时出现问题,否则分布式网络将会一直安全运行;
S33区块链提供用户可编程的脚本系统,大大增加了区块链应用的灵活性;在比特币中,脚本不是很成熟,多用于交易的用途;而在以太坊中,更加完备、功能更加强大的脚本系统智能合约,使更为复杂更为高级的分布式应用得以实现;
S34区块链的安全性是加密技术所保证的,整个分布式网络所提供的算力是非常惊人的,想要篡改区块链中的数据,虽然在理论上可行,但是所花费的电力、设备等成本得不偿失的。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京科技大学,未经北京科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111425764.1/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种数据处理方法、装置及介质
- 下一篇:一种拨测系统的指令处理方法及系统





