一种基于分片区块链的链上链下协同安全计算方法及系统
- 国知局
- 2024-08-02 14:03:05
本发明涉及链上链下协同安全计算,特别是涉及一种基于分片区块链的链上链下协同安全计算方法及系统。
背景技术:
1、链上链下协同安全计算框架是一种用于确保数据在传输和共享过程中安全性的系统。在信息技术和互联网快速发展的背景下,加之多方计算及人工智能等技术的兴起,数据流通方式从传统的“单对单”向“多对多”发展,数据安全问题也越来越受到人们的关注。
2、传统的中心化数据管理系统在一定程度上提供了便利,但也面临着数据泄露、未经授权访问以及数据篡改等多种安全风险。传统数据保护机制通常依赖于严格的访问控制和复杂的加密技术,这些方法虽然在一定程度上能够避免数据被非法访问,但在数据流通和多方共享场景中存在效率低下等问题。此外,存储在中心化服务器中的数据也可能成为黑客攻击的目标,一旦数据管理系统的安全防护措施被突破,所有数据都可能被一次性泄露,造成无法挽回的后果。因此数据安全问题成为阻碍数据流通的顺畅和主体间合作的重要因素,因此需要一种更加安全可靠的框架来保护数据的安全性。
3、联邦学习旨在通过在本地客户端进行模型训练,并通过共享模型参数或梯度的方式实现全局模型的更新,从而保护用户隐私的同时利用分布式数据源进行模型训练,其优势在于隐私保护、数据多样性、降低通信成本以及实时更新。将联邦学习与链上链下协同安全计算框架相结合,可进一步提升数据安全性和隐私保护水平,确保数据在流通和共享过程中的安全性和可控性,促进数据驱动的应用场景的发展和应用。
4、但是,由于联邦学习模型训练过程中,参与方与中心服务器之间存在频繁的梯度与模型的传递,所以整个联邦系统通信开销较大,同时也存在参与数据泄露、节点投毒以及搭便车等不利于全局模型的行为。
技术实现思路
1、为了解决上述问题,本发明提出了一种基于分片区块链的链上链下协同安全计算方法及系统,确保在模型训练和梯度处理过程中,客户端数据始终保持加密状态,确保安全的模型梯度共享和聚合,从而实现数据的安全流通与隐私保护;同时每个分片可并行处理不同的数据请求,提高响应速度。
2、为了实现上述目的,本发明采用如下技术方案:
3、第一方面,本发明提供一种基于分片区块链的链上链下协同安全计算方法,应用于客户端,包括:
4、获取密钥对和全局模型,并由选取的客户端作为委员会成员,其余客户端作为训练客户端;
5、训练客户端根据全局模型进行本地训练,生成模型梯度,并根据密钥对对模型梯度进行加密,将得到的加密梯度上传到区块链系统中;
6、委员会成员获取加密梯度并进行评分,将评分结果上传到区块链系统中,所述区块链系统被划分为多个分片,以使分片后的区块链系统根据评分结果更新全局模型以及选取下一轮模型训练的委员会成员。
7、第二方面,本发明提供一种基于分片区块链的链上链下协同安全计算方法,应用于区块链系统,包括:
8、下发全局模型至客户端,并从客户端中选取委员会成员,将其余客户端作为训练客户端;以使训练客户端根据全局模型进行本地训练,生成模型梯度,并根据获取的密钥对对模型梯度进行加密,将得到的加密梯度通过智能合约上传到区块链系统中,同时使委员会成员获取加密梯度并进行评分,将评分结果上传到区块链系统中;
9、将区块链系统划分为多个分片,分片后的区块链系统根据评分结果更新全局模型以及选取下一轮模型训练的委员会成员。
10、作为可选择的实施方式,选取下一轮模型训练的委员会成员的过程包括:对训练客户端本轮及前一轮的加密梯度的评分结果进行加权,以选举下一轮模型训练的委员会成员,其中权重为:
11、;
12、其中,为训练客户端i本轮加密梯度的评分结果,为训练客户端i前一轮加密梯度的评分结果。
13、作为可选择的实施方式,在本地训练时,使用训练客户端i在本地训练中使用的数据集计算模型梯度:;
14、根据聚合梯度和学习率对本地模型进行更新:;
15、将模型梯度加密后得到的加密梯度为:
16、;
17、其中,为全局模型参数;为在给定全局模型参数下的损失函数;为损失函数的梯度;为第t+1轮模型训练的本地模型参数;为第t轮模型训练的全局模型参数;为密文状态下的数据;为私钥,为公钥;为训练客户端i在进行同态加密时选取的随机数;g为整数。
18、作为可选择的实施方式,获取全局模型后解密用于本地训练:;其中,为全局模型参数;为密文状态下的全局模型参数,、为私钥,为公钥。
19、作为可选择的实施方式,将评分结果从大至小进行排序,选取前k%加密梯度用于全局模型的更新以及选取下一轮模型训练的委员会成员,并舍弃后k%加密梯度。
20、作为可选择的实施方式,更新全局模型的过程包括:
21、根据训练客户端i在本地训练中使用的数据集计算训练客户端i的权重:;
22、根据权重对训练客户端i的加密梯度进行加权,得到加权加密梯度:
23、;
24、将所有训练客户端的加权加密梯度通过同态加法聚合成总加密梯度:
25、;
26、使用学习率更新全局模型:
27、;
28、其中,为密文状态下的数据;j为训练客户端数量;j为计算总数据集时的累加参数,为第j个训练客户端的数据集;为私钥;为公钥;为所有训练客户端的聚合梯度;为全局模型参数;为密文状态下第t次模型训练的全局模型参数;为密文状态下第t+1次模型训练的全局模型参数。
29、作为可选择的实施方式,在模型训练过程中随时加入新客户端,新客户端自动默认为训练客户端,并通过获取最新的全局模型进行本地训练。
30、第三方面,本发明提供一种基于分片区块链的链上链下协同安全计算系统,包括:
31、获取模块,被配置为获取密钥对和全局模型,并由选取的客户端作为委员会成员,其余客户端作为训练客户端;
32、训练加密模块,被配置为训练客户端根据全局模型进行本地训练,生成模型梯度,并根据密钥对对模型梯度进行加密,将得到的加密梯度上传到区块链系统中;
33、评分模块,被配置为委员会成员获取加密梯度并进行评分,将评分结果上传到区块链系统中,所述区块链系统被划分为多个分片,以使分片后的区块链系统根据评分结果更新全局模型以及选取下一轮模型训练的委员会成员。
34、第四方面,本发明提供一种基于分片区块链的链上链下协同安全计算系统,包括:
35、发送模块,被配置为下发全局模型至客户端,并从客户端中选取委员会成员,将其余客户端作为训练客户端;以使训练客户端根据全局模型进行本地训练,生成模型梯度,并根据获取的密钥对对模型梯度进行加密,将得到的加密梯度通过智能合约上传到区块链系统中,同时使委员会成员获取加密梯度并进行评分,将评分结果上传到区块链系统中;
36、更新模块,被配置为将区块链系统划分为多个分片,分片后的区块链系统根据评分结果更新全局模型以及选取下一轮模型训练的委员会成员。
37、与现有技术相比,本发明的有益效果为:
38、(1)增强的数据隐私保护:本发明结合同态加密算法和分片区块链技术,确保在整个模型训练和梯度处理过程中,客户端数据始终保持加密状态。由此,数据在本地训练后上传至区块链时即受到保护,即使在区块链上进行处理,也不会泄露实际数据内容,从而显著提高数据隐私保护水平。
39、(2)提高系统扩展性和处理效率:通过区块链分片技术,将数据和交易负载分散到多个独立的分片上,显著提升整个区块链系统的处理能力和扩展性。每个分片可以并行处理不同的交易和数据请求,减少了网络拥堵和处理延迟,提高了区块链系统的整体性能和响应速度,使得区块链系统能够轻松适应不断增长的用户需求和数据量,具备良好的可扩展性和高效的数据处理能力。
40、(3)动态与公平的参与机制:智能合约负责随机选取和动态调整委员会成员及训练客户端身份,确保每个参与方都有公平的机会参与评分和验证过程,不仅保证系统的公平性和透明度,还增强参与方的积极性和协作意愿。
41、本发明附加方面的优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
本文地址:https://www.jishuxx.com/zhuanli/20240801/241534.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表