CN115765965A - 基于联邦学习和双联盟区块链的医疗数据安全共享方法 - Google Patents
基于联邦学习和双联盟区块链的医疗数据安全共享方法 Download PDFInfo
- Publication number
- CN115765965A CN115765965A CN202211374997.8A CN202211374997A CN115765965A CN 115765965 A CN115765965 A CN 115765965A CN 202211374997 A CN202211374997 A CN 202211374997A CN 115765965 A CN115765965 A CN 115765965A
- Authority
- CN
- China
- Prior art keywords
- data
- medical data
- contract
- medical
- alliance chain
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Landscapes
- Medical Treatment And Welfare Office Work (AREA)
Abstract
本发明公开了一种基于联邦学习和双联盟区块链的医疗数据安全共享方法,包括:建立区块链网络,建立双联盟链;制定智能合约,选举出公证人;医疗数据使用者发出请求申请给公证人,由公证人签名认证后整理发送给医疗数据拥有者;医疗数据拥有者收到请求后,触发相关模型训练合约,将训练好的全局参数加密上链和返回相应信息给公证人,并且对医院节点贡献进行评估;公证人下载信息提取参数数据文件,发送给医疗数据使用者;医疗数据使用者解密提取明文,医院节点根据贡献值完成升降级排名。本发明利用联邦学习实现医疗数据共享的同时,引入双联盟区块链技术保护医疗数据隐私的安全,规避联邦学习过程中医疗数据安全性差,防篡改性弱等问题。
Description
技术领域
本发明涉及区块链和机器学习领域,涉及医疗数据安全共享技术,具体涉及一种基于联邦学习和双联盟区块链的医疗数据安全共享方法。
背景技术
联邦学习自2016年谷歌提出后成为分布式机器学习的新兴技术,已广泛应用于物联网、智慧医疗、智能金融等领域。联邦学习技术可以驱动数据交易,保证数据提供方原始数据保留本地,成为组织多方协作产生数据模型的有效解决思路。然而,当下医疗数据匮乏并且获取费用很高,即使在医院内部,医疗数据的访问也是受到严格限制。因此,联邦学习成为保护医疗数据隐私和合法利用医疗数据最具有前景的解决方案。但是,联邦学习会过于依赖服务器中心,一旦该服务器发生故障或是受到攻击,会影响全局模型更新,导致训练效果底下。
区块链是数字加密货币体系的核心技术,它具有去中心化、去信任、灵活和安全等特点。区块链技术可以有效防止云等中心化服务器所带来的安全隐患,它将数据存储在网络节点中,并且实时更新。区块链技术可以弥补联邦学习中可靠性欠缺,成本较高等缺点。智能合约作为区块链的核心技术,可以自主执行全部或部分与合约相关的操作,从而做到真正意义上的去中性化。在大数据时代,区块链技术为医疗数据隐私保护、信息同步、安全共享等提供了全方位服务。
随着人工智能和大数据时代的发展,其现有技术快速推动了医疗领域的智能化,提高了医疗工作效率和改善对患者的护理水平。截至目前,现有的医疗系统并非真正意义上的智能,部分系统还存在着被质疑提供了不安全和不准确的治疗推荐,以及有泄漏病人隐私的现象。因此,联邦学习成为解决医疗数据共享问题上新的突破口,它可以在没有数据直接共享或收集的情况下从多源分散数据库中学习,帮助研究和挖掘医疗数据的潜在价值。同时,区块链技术的去中心化、不可篡改等特性能够很好的应对联邦学习中心化模式训练中的成本高、效率低、隐私泄漏等问题。在医疗领域,联邦学习和区块链技术的结合促进了不同医院间的相互协作,实现医疗数据多途径安全研究使用,极大推动了智慧医疗的发展。
专利号公开号为CN111698322A的专利文献,公开了“一种基于区块链和联邦学习的医疗数据安全共享方法”,其将区块链和联邦学习结合应用到了医疗数据安全共享上,但是该专利只是将两种技术结合到医疗领域,并未具体分析客户端的需求情况,以及没有考虑到具体的激励机制去吸引高质量医疗数据拥有者的问题,所达到的效果不是很理想。
发明内容
发明目的:为了克服现有技术中存在的不足,提供一种基于联邦学习和双联盟区块链的医疗数据安全共享方法,利用联邦学习实现医疗数据共享的同时,引入双联盟区块链技术保护医疗数据隐私的安全,规避联邦学习过程中医疗数据安全性差,防篡改性弱等问题。
技术方案:为实现上述目的,本发明提供一种基于联邦学习和双联盟区块链的医疗数据安全共享方法,包括如下步骤:
S1:所有参与方共同建立区块链网络,建立双联盟链,双联盟链包括由各个医院组成的医疗数据联盟链(Medical Data Consortium Blockchain,MDCB)和由政府机关、高校、医疗科研院所等研究机构组成的医疗科研联盟链(Medical Research ConsortiumBlockchain,MRCB);
S2:所有的参与方共同制定智能合约,并从两个联盟链中选举出可信节点组成公证人;
S3:医疗科研联盟链中的医疗数据使用者发出请求申请给公证人,并且提供节点公钥,等待授权,由公证人签名认证后整理发送给医疗数据联盟链中的医疗数据拥有者;
S4:医疗数据拥有者收到请求后,通过医疗数据联盟链进行数据授权,并下载初始化参数的神经网络模型,启动本地模型训练;
S5:在医疗数据联盟链中所有参与的医院均完成本地模型训练后,收集各个医院节点训练的模型参数后,聚合训练全局模型,这样可以实现医疗数据保留在客户端本地从而实现数据共享,上传加密后的计算参数并触发医疗数据联盟链中的聚合计算合约(Aggregation Computing Contract,ACC)和节点评估合约(Node Evaluation Contract,NEC);
S6:聚合计算合约将所有计算结果解密后,继续全局模型聚合计算,并将全局模型的参数上传IPFS存储;节点评估合约将会计算评估数据拥有者的贡献值,并在完成计算后对医疗数据联盟链中所有参与的医院进行升降级排名;
S7:IPFS在收到全局模型的参数后生成文件指纹,将相应的文件指纹发送给医疗数据联盟链,由医疗数据联盟链将相应的文件指纹和加密密钥发送给公证人;
S8:公证人对数据拥有者进行身份认证并签名,通过认证签名后,公证人下载文件指纹,向IPFS请求相应加密的全局参数文件;
S9:公证人下载接收的加密全局参数文件,并请求同态加密(HomomorphicEncryption Contract,HEC)按需处理密文数据,公证人链下传输加密密文给医疗科研联盟链中的医疗数据使用者;
S10:医疗科研联盟链中的医疗数据使用者在收到加密密文后,利用节点私钥解密得到全局参数。
进一步地,所述步骤S1中根据全新全国医院综合排名以及医院所拥有的数据质量,对医疗数据联盟链的医院节点进行等级划分,将医院节点划分为一级重点医院联盟链(LEVE-I Key Hospital Alliance Chain,KH1)和二级重点医院联盟链(LEVE-II KeyHospital Alliance Chain,KH2),将重点医院划分到一级重点医院联盟链中,将其他医院划分至二级重点医院联盟链中。
进一步地,所述步骤S2中智能合约体系由两部分组成:一部分是医疗数据联盟链中医疗数据备份合约(Medical Data Backup Contract,MDBC),另一部分是医疗科研联盟链中医疗数据管理合约(Medical Data Manage Contract,MDMC),医疗数据备份合约和医疗数据管理合约均包含数据管理合约(Data Manage Contract,DMC)和身份控制合约(Identity Control Contract,ICC)。
进一步地,所述步骤S2中医疗数据备份合约存储共享的医疗数据的模型参数,其包括了数据管理合约、身份控制合约和聚合计算合约;医疗数据管理合约含执行参数数据存储和访问请求等相应合约,其包括了身份控制合约和数据管理合约,其中该合约的身份控制合约用于管理节点身份,包括了数据权限合约和公证人创建股票合约,数据管理合约实现参数数据的保护和验证,以及密文的处理和共享等业务,它包括了数据存储合约、数据共享合约和同态加密合约。
进一步地,所述步骤S3中使用基于拉格朗日插值法的秘密共享技术,假设医疗数据联盟链中有k个节点分别向医疗科研联盟链请求参数数据d1,d2,...,dk,其具体包括如下步骤:
A1:数据拥有者将参数数据d1,d2,...,dk用全同态加密技术转化成密文w,同时生成w个随机数{n1,n2,...,nt-1},由此可以得到:
f(x)=w+n1x+n2x2+...+nt-1xt-1 (1)
A2:秘密分割算法,可以从公式(2)中自动生成m个节点,利用函数Scatter()分别向每个参与者Pi(i∈m),即共有m个参与者共同加入到密文w的共享,将w切分成m份(i,wi);
Share(w,t,m)→{(i,wi),i∈m} (2)
A3:收集密文算法,调用函数Gather()收集密文片段wi,由公式(3)可得到f(x)中n0=w,因此将问题转换为m个参与者聚集,利用m个节点中的t个节点求f(x)的值,因为已知t个节点可以确定一条唯一的t-1次方的曲线,接着,使用拉格朗日插值法实现并得到密文片段wi:
A4:密文重构算法,通过使用Recon()函数将密文片段wi进行重构,收集到的t(t≤(m-1)/2)份以上的密文片段重构出w,密文w即为数据使用者所请求的参数数据d1,d2,...,dk集合;
Recon({i,wi,i∈m},t)→w (4)。
本发明提供的基于拉格朗日插值法的秘密共享技术主要是针对医疗数据中的秘密图像处理,利用的拉格朗日多项式插值法帮助解决医疗数据共享过程中的图像质量损失和恢复秘密时的校验等问题。
进一步地,所述步骤S4中数据使用者可以通过链上查询实时监工数据拥有者是否收到相关数据请求申请,从而处于计算准备状态。
进一步地,所述步骤S6中数据拥有者的评估值包括历史贡献值Hcvi和直接贡献值Dcvi,Valuei表示医院节点i的贡献值,α和β分别表示历史贡献值和直接贡献值的权重,并且满足α+β=1,计算公式如下:
Valuei=αHcvi+βDcvi
Hcvi=γCi+ηQi
其中,直接贡献值包括医院节点的节点计算力Ci和数据质量Qi,γ和η分别表示节点计算力和数据质量的权重参数。
进一步地,所述步骤S5中触发聚合计算合约后,首先,会验证参与本地模型训练的数据拥有者的模型哈希值,确保数据的使用价值;其次,在进行全局聚合计算前会查询链上聚合计算状态;然后,在查询完所有关备案后,获取参与训练的数据拥有者的公钥,对加密参数数据进行解密;最后,实现全局模型聚合计算。
进一步地,所述步骤S6中对于医院节点的数据质量Qi利用模型训练结果的准确率来判断,(xi,yi)表示验证数据,p表示验证数据的数量,Modeli(xi)表示医院节点i本地模型训练结果,并计算:
进一步地,所述步骤S10中医疗数据联盟链中所有的参与方根据本轮计算得到的贡献值进行排名,在一级重点医院联盟链中排名最后的几家医院节点会被移至二级重点医院联盟链中,由二级重点医院联盟链中排名靠前的医院节点自动补位。
本发明方案可以总结为:首先,部署区块链网络,建立双联盟链,所有的参与方共同制定智能合约,并从联盟链中选举出公证人,并对医院节点进行等级划分;其次,医疗数据使用者发出请求申请给公证人,由公证人签名认证后整理发送给医疗数据拥有者;然后,医疗数据拥有者收到请求后,触发相关模型训练合约,将训练好的全局参数加密上链和返回相应信息给公证人,并且对医院节点贡献进行评估;接着,公证人下载信息提取参数数据文件,整理完毕后发送给医疗数据使用者;最后,医疗数据使用者解密提取明文,医院节点根据贡献值完成升降级排名,等待下次训练。
本发明是基于双联盟联的框架,区分了医疗数据拥有者的联盟和医疗数据使用者的联盟,更加切合实际使用情况。同时,引入医院节点贡献值的计算,采用“升降级”的排名方式,能够激励医院节点和吸引高质量数据拥有者加入。
有益效果:本发明与现有技术相比,具备如下优点:
1、本发明使用了分布式文件存储系统结合双联盟链实现数据高效存储;利用公证人签名技术实现数据跨链;结合联邦学习和区块链技术保护医疗数据的隐私,规避医疗数据共享中隐私泄漏问题。
2、本发明在保护病患隐私的前提下,实现了去中心化、防篡改和低成本的管理。在扩大医疗数据库提升模型训练效果的同时,促进医疗领域不同身份机构间的合作,发挥了医疗数据的潜在价值。同时提出医院节点“升降级”方式,评价医院的贡献值以及调动医院参与的积极性。
附图说明
图1为本发明医疗数据安全共享结构图;
图2为本发明的具体流程图;
图3为本发明数据跨链共享流程图。
具体实施方式
下面结合附图和具体实施例,进一步阐明本发明,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本申请所附权利要求所限定的范围。
如图1所示,本发明提供一种医疗数据安全共享的结构模式,针对医疗数据共享效率低下的问题,在医疗数据系统上引入联邦学习技术,解决不同身份的人员访问和共享医疗数据困难的问题;针对医疗数据隐私容易泄漏的问题,在联邦学习上使用双联盟区块链方案,利用公证人签名技术实现数据跨链,可以有效实现医疗数据安全存储和共享,并且降低管理成本。通过建立联邦学习和双联盟区块链的医疗数据安全共享方案,可以帮助解决医疗数据孤岛问题,实现医疗价值安全共享。
为了达到上述效果,本发明提供一种基于联邦学习和双联盟区块链的医疗数据安全共享方法,包括如下步骤:
S1:所有参与方共同建立区块链网络,建立双联盟链,双联盟链包括由各个医院组成的医疗数据联盟链(MDCB)和由政府机关、高校、医疗科研院所等研究机构组成的医疗科研联盟链(MRCB);
本实施例在建立区块链网络上,使用的是FISCO BCOS底层技术平台,由医疗数据联盟链和医疗科研联盟链组成双联盟区块链。其中:
医疗数据联盟链中的各个医院会将完成训练的模型参数加密上传至私有的星际文件系统(Inter-Planetary File System,IPFS)集群,实现数据链下存储。上传前,IPFS会对文件进行检测,防止重复造成宽带浪费,并且存储未重复的参数文件以及返回文件指纹。医院将文件的哈希值(Hash)、文件指纹等上链存储,便于减轻链上存储的压力。其中,通过对Hash和下载文件Hash的对比校验,以保证参数文件存储完整和未被篡改。根据最新全国医院综合排名以及医院所拥有的数据量,对MDCB中的医院进行划分,将重点医院划分一级重点医院联盟链(LEVE-I Key Hospital Alliance Chain,KH1)中,将其他医院划分至二级重点医院联盟链(LEVE-II Key Hospital Alliance Chain,KH2)中。
医疗科研联盟链的节点为各个医疗研究机构。各机构从医疗数据联盟链中获得上传节点ID、IPFS文件指纹等,可以从公有的IPFS集群中下载相应的医疗参数数据文件。
S2:所有的参与方共同制定智能合约,并从两个联盟链中选举出可信节点组成公证人;
智能合约体系由两部分组成:一部分是医疗数据联盟链中医疗数据备份合约(MDBC),另一部分是医疗科研联盟链中医疗数据管理合约(MDMC),医疗数据备份合约和医疗数据管理合约均包含数据管理合约(DMC)和身份控制合约(ICC)。
本实施例中所制定的合约架构由两部分组成,二者作为全局合约记录着各自联盟链中所有节点的身份标志、注册时间、对应的DMC和ICC,以及对应公钥。具体如下:
1)医疗数据备份合约存储共享的医疗数据的模型参数,其包含数据管理合约、身份控制合约和聚合计算合约,可以实现联邦学习技术在医疗数据联盟链中的应用,促进不同医院间医疗数据的共享。
2)医疗数据管理合约执行参数数据存储和访问请求等相应合约。但此合约中的ICC用于管理节点的身份,包括数据权限合约和公证人创建投票合约;同时,DMC用于实现参数数据的保护和验证,以及密文的处理和共享等业务。医疗数据管理合约还包含数据存储合约、数据共享合约和同态加密合约。数据存储合约用于存储参数数据的属性信息,数据共享合约用于存储双联盟之间共享的档案信息,而同态加密合约可以基于请求对参数数据进行同态运算加密处理。
具体的,公证人机制使用的是多重签名公证人。通过公证人创建投票合约,从两个联盟链中选举出一组可信节点作为公证人。多重签名公证人的每一个节点都有自己的一个密钥,只有当达到预设的公证人签名数量或比例时,跨链交易才可以被确认,公证人通过IPFS和联盟链下载数据文件密文,链下传输参数数据文件,数据接收者可以使用自己的私钥解密获取明文,从而实现医疗数据安全共享。
S3:医疗科研联盟链中的医疗数据使用者发出请求申请给公证人,并且提供节点公钥,等待授权,由公证人签名认证后整理发送给医疗数据联盟链中的医疗数据拥有者;
为了确保MRCB中多方医疗数据使用者可以安全共享医疗数据,本发明结合安全多方计算技术实现节点跨链安全共享数据模型。如图3所示在发出医数据共享请求后,公证人根据有关请求内容向医疗数据拥有者发出共享请求。在医疗数据拥有者收到请求后进行身份验证和权限管理,启动模型训练和全局模型聚合,将参数数据加密上传至IPFS集群并将文件指纹等发送给公证人,公证人根据需求从IPFS集群中查询相应数据,调用同态加密,计算各个节点所请求的数据集合,即密文w,密文w会被分割成多个信息块,然后将密文分片进行跨链传输,医疗数据使用者根据指定重构算法进行密文片段重构得到密文w并且上传至医疗科研联盟链上。此过程中,每个节点均不知道参数数据以及其他数据使用者请求的内容。
本实施例使用基于拉格朗日插值法的秘密共享技术,假设医疗数据联盟链中有k个节点分别向医疗科研联盟链请求参数数据d1,d2,...,dk,其具体包括如下步骤A1~A4:
A1:数据拥有者将参数数据d1,d2,...,dk用全同态加密技术转化成密文w,同时生成w个随机数{n1,n2,...,nt-1},由此可以得到:
f(x)=w+n1x+n2x2+...+nt-1xt-1 (1)
A2:秘密分割算法,可以从公式(2)中自动生成m个节点,利用函数Scatter()分别向每个参与者Pi(i∈m),即共有m个参与者共同加入到密文w的共享,将w切分成m份(i,wi);
Share(w,t,m)→{(i,wi),i∈m} (2)
A3:收集密文算法,调用函数Gather()收集密文片段wi,由公式(3)可得到f(x)中n0=w,因此将问题转换为m个参与者聚集,利用m个节点中的t个节点求f(x)的值,因为已知t个节点可以确定一条唯一的t-1次方的曲线,接着,使用拉格朗日插值法实现并得到密文片段wi:
A4:密文重构算法,通过使用Recon()函数将密文片段wi进行重构,收集到的t(t≤(m-1)/2)份以上的密文片段重构出w,密文w即为数据使用者所请求的参数数据d1,d2,...,dk集合;
Recon({i,wi,i∈m},t)→w (4)
S4:医疗数据拥有者收到请求后,通过医疗数据联盟链进行数据授权,并下载模型,启动本地模型训练;数据使用者可以通过链上查询实时监工数据拥有者是否收到相关数据请求申请,从而处于计算准备状态。
本发明的“中间人”是多重签名公证人。多重签名公证人的机制需要有多位公证人在各自的账本上签名达成共识后才能完成跨链交易。多重签名公证人的每个节点都有自己的密钥,并且有自身保管不在系统中流通,公证人无法获取数据拥有者的私钥,所以公证人在数据共享环节中无法获取参数数据文件的明文。因此,本发明能够有效抵挡中间人的攻击,确保数据隐私安全。
S5:在医疗数据联盟链中所有参与的医院均完成本地模型训练后,收集各个医院节点训练的模型参数后,聚合训练全局模型,这样可以实现医疗数据保留在客户端本地从而实现数据共享,上传加密后的计算参数并触发医疗数据联盟链中的聚合计算合约(Aggregation Computing Contract,ACC)和节点评估合约(Node Evaluation Contract,NEC);
触发聚合计算合约后,首先,会验证参与本地模型训练的数据拥有者的模型哈希值,确保数据的使用价值;其次,在进行全局聚合计算前会查询链上聚合计算状态;然后,在查询完所有关备案后,获取参与训练的数据拥有者的公钥,对加密参数数据进行解密;最后,实现全局模型聚合计算。
S6:聚合计算合约将所有计算结果解密后,继续全局模型聚合计算,并将全局模型的参数上传IPFS存储;节点评估合约将会计算评估数据拥有者的贡献值,并在完成计算后对医疗数据联盟链中所有参与的医院进行升降级排名;
本实施例中数据拥有者的评估值包括历史贡献值Hcvi和直接贡献值Dcvi,Valuei表示医院节点i的贡献值,α和β分别表示历史贡献值和直接贡献值的权重,并且满足α+β=1,计算公式如下:
Valuei=αHcvi+βDcvi
Hcvi=γCi+ηQi
其中,直接贡献值包括医院节点的节点计算力Ci和数据质量Qi,γ和η分别表示节点计算力和数据质量的权重参数;
对于医院节点的数据质量Qi利用模型训练结果的准确率来判断,(xi,yi)表示验证数据,p表示验证数据的数量,Modeli(xi)表示医院节点i本地模型训练结果,并计算:
S7:IPFS在收到全局模型的参数后生成文件指纹,将相应的文件指纹发送给医疗数据联盟链,由医疗数据联盟链将相应的文件指纹和加密密钥发送给公证人;
S8:公证人对数据拥有者进行身份认证并签名,通过认证签名后,公证人下载文件指纹,向IPFS请求相应加密的全局参数文件;
S9:公证人下载接收的加密全局参数文件,并请求同态加密(HomomorphicEncryption Contract,HEC)按需处理密文数据,公证人链下传输加密密文给医疗科研联盟链中的医疗数据使用者;
S10:医疗科研联盟链中的医疗数据使用者在收到加密密文后,利用节点私钥解密得到全局参数。
医疗数据联盟链中所有的参与方根据本轮计算得到的贡献值进行排名,在一级重点医院联盟链中排名最后的几家医院节点会被移至二级重点医院联盟链中,由二级重点医院联盟链中排名靠前的医院节点自动补位。
本发明采用上述方案,将所有节点划分为医疗数据使用者、医疗数据拥有者、公证人三种类型。由医疗数据使用者发起申请参数数据共享的请求;医疗数据拥有者通过对有关使用者进行身份验证后提供加密密钥给公证人;公证人下载有关参数数据,对数据校验处理后加密传输给医疗数据使用方。
基于区块链的医疗数据最大的优势在于可以防止恶意篡改以及敏感信息的泄漏,数据块无法篡改、无法撤销,链上的每一次动作都被被记录,这样可以确保医疗数据的正确性和唯一性。本发明提出对医院节点的贡献值进行排名,从而完成医院节点“升降级”。此方式可以充分调动医疗机构的参与积极性,也会成为评估医院的重要标准。
在此过程中,为了使多方医院共同参与模型训练,打破“数据壁垒”,本发明使用联邦学习技术。该技术帮助实现数据存储和模型训练皆放在本地,而只传输模型参数,解决目前医疗领域存在的单个医院医疗数据量小不足以支撑实现高精度模型的问题,并且最大化医疗数据价值。
本实施例还提供一种基于联邦学习和双联盟区块链的医疗数据安全共享系统,该系统包括网络接口、存储器和处理器;其中,网络接口,用于在与其他外部网元之间进行收发信息过程中,实现信号的接收和发送;存储器,用于存储能够在所述处理器上运行的计算机程序指令;处理器,用于在运行计算机程序指令时,执行上述共识方法的步骤。
本实施例还提供一种计算机存储介质,该计算机存储介质存储有计算机程序,在处理器执行所述计算机程序时可实现以上所描述的方法。所述计算机可读介质可以被认为是有形的且非暂时性的。非暂时性有形计算机可读介质的非限制性示例包括非易失性存储器电路(例如闪存电路、可擦除可编程只读存储器电路或掩膜只读存储器电路)、易失性存储器电路(例如静态随机存取存储器电路或动态随机存取存储器电路)、磁存储介质(例如模拟或数字磁带或硬盘驱动器)和光存储介质(例如CD、DVD或蓝光光盘)等。计算机程序包括存储在至少一个非暂时性有形计算机可读介质上的处理器可执行指令。计算机程序还可以包括或依赖于存储的数据。计算机程序可以包括与专用计算机的硬件交互的基本输入/输出系统(BIOS)、与专用计算机的特定设备交互的设备驱动程序、一个或多个操作系统、用户应用程序、后台服务、后台应用程序等。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
Claims (10)
1.一种基于联邦学习和双联盟区块链的医疗数据安全共享方法,其特征在于,包括如下步骤:
S1:所有参与方共同建立区块链网络,建立双联盟链,双联盟链包括由各个医院组成的医疗数据联盟链和由研究机构组成的医疗科研联盟链;
S2:所有的参与方共同制定智能合约,并从两个联盟链中选举出可信节点组成公证人;
S3:医疗科研联盟链中的医疗数据使用者发出请求申请给公证人,并且提供节点公钥,等待授权,由公证人签名认证后整理发送给医疗数据联盟链中的医疗数据拥有者;
S4:医疗数据拥有者收到请求后,通过医疗数据联盟链进行数据授权,并下载初始化参数的神经网络模型,启动本地模型训练;
S5:在医疗数据联盟链中所有参与的医院均完成本地模型训练后,收集各个医院节点训练的模型参数后,聚合训练全局模型,上传加密后的计算参数并触发医疗数据联盟链中的聚合计算合约和节点评估合约;
S6:聚合计算合约将所有计算结果解密后,继续全局模型聚合计算,并将全局模型的参数上传IPFS存储;节点评估合约将会计算评估数据拥有者的贡献值,并在完成计算后对医疗数据联盟链中所有参与的医院进行升降级排名;
S7:IPFS在收到全局模型的参数后生成文件指纹,将相应的文件指纹发送给医疗数据联盟链,由医疗数据联盟链将相应的文件指纹和加密密钥发送给公证人;
S8:公证人对数据拥有者进行身份认证并签名,通过认证签名后,公证人下载文件指纹,向IPFS请求相应加密的全局参数文件;
S9:公证人下载接收的加密全局参数文件,并请求同态加密按需处理密文数据,公证人链下传输加密密文给医疗科研联盟链中的医疗数据使用者;
S10:医疗科研联盟链中的医疗数据使用者在收到加密密文后,利用节点私钥解密得到全局参数。
2.根据权利要求1所述的一种基于联邦学习和双联盟区块链的医疗数据安全共享方法,其特征在于,所述步骤S1中根据全新全国医院综合排名以及医院所拥有的数据质量,对医疗数据联盟链的医院节点进行等级划分,将医院节点划分为一级重点医院联盟链和二级重点医院联盟链,将重点医院划分到一级重点医院联盟链中,将其他医院划分至二级重点医院联盟链中。
3.根据权利要求1所述的一种基于联邦学习和双联盟区块链的医疗数据安全共享方法,其特征在于,所述步骤S2中智能合约体系由两部分组成:一部分是医疗数据联盟链中医疗数据备份合约,另一部分是医疗科研联盟链中医疗数据管理合约,医疗数据备份合约和医疗数据管理合约均包含数据管理合约和身份控制合约。
4.根据权利要求3所述的一种基于联邦学习和双联盟区块链的医疗数据安全共享方法,其特征在于,所述步骤S2中医疗数据备份合约存储共享的医疗数据的模型参数,其包括了数据管理合约、身份控制合约和聚合计算合约;医疗数据管理合约包括了身份控制合约和数据管理合约,其中该合约的身份控制合约用于管理节点身份,包括了数据权限合约和公证人创建股票合约,数据管理合约包括了数据存储合约、数据共享合约和同态加密合约。
5.根据权利要求1所述的一种基于联邦学习和双联盟区块链的医疗数据安全共享方法,其特征在于,所述步骤S3中使用基于拉格朗日插值法的秘密共享技术,假设医疗数据联盟链中有k个节点分别向医疗科研联盟链请求参数数据d1,d2,...,dk,其具体包括如下步骤:
A1:数据拥有者将参数数据d1,d2,...,dk用全同态加密技术转化成密文w,同时生成w个随机数{n1,n2,...,nt-1},由此可以得到:
f(x)=w+n1x+n2x2+...+nt-1xt-1 (1)
A2:秘密分割算法,可以从公式(2)中自动生成m个节点,利用函数Scatter()分别向每个参与者Pi(i∈m),即共有m个参与者共同加入到密文w的共享,将w切分成m份(i,wi);
Share(w,t,m)→{(i,wi),i∈m} (2)
A3:收集密文算法,调用函数Gather()收集密文片段wi,由公式(3)可得到f(x)中n0=w,因此将问题转换为m个参与者聚集,利用m个节点中的t个节点求f(x)的值,因为已知t个节点可以确定一条唯一的t-1次方的曲线,接着,使用拉格朗日插值法实现并得到密文片段wi:
A4:密文重构算法,通过使用Recon()函数将密文片段wi进行重构,收集到的t(t≤(m-1)/2)份以上的密文片段重构出w,密文w即为数据使用者所请求的参数数据d1,d2,...,dk集合;
Recon({i,wi,i∈m},t)→w (4)。
6.根据权利要求1所述的一种基于联邦学习和双联盟区块链的医疗数据安全共享方法,其特征在于,所述步骤S4中数据使用者可以通过链上查询实时监工数据拥有者是否收到相关数据请求申请,从而处于计算准备状态。
7.根据权利要求1所述的一种基于联邦学习和双联盟区块链的医疗数据安全共享方法,其特征在于,所述步骤S6中数据拥有者的评估值包括历史贡献值Hcvi和直接贡献值Dcvi,Valuei表示医院节点i的贡献值,α和β分别表示历史贡献值和直接贡献值的权重,并且满足α+β=1,计算公式如下:
Valuei=αHcvi+βDcvi
Hcvi=γCi+ηQi
其中,直接贡献值包括医院节点的节点计算力Ci和数据质量Qi,γ和η分别表示节点计算力和数据质量的权重参数。
8.根据权利要求1所述的一种基于联邦学习和双联盟区块链的医疗数据安全共享方法,其特征在于,所述步骤S5中触发聚合计算合约后,首先,会验证参与本地模型训练的数据拥有者的模型哈希值,确保数据的使用价值;其次,在进行全局聚合计算前会查询链上聚合计算状态;然后,在查询完所有关备案后,获取参与训练的数据拥有者的公钥,对加密参数数据进行解密;最后,实现全局模型聚合计算。
10.根据权利要求1所述的一种基于联邦学习和双联盟区块链的医疗数据安全共享方法,其特征在于,所述步骤S10中医疗数据联盟链中所有的参与方根据本轮计算得到的贡献值进行排名,在一级重点医院联盟链中排名最后的几家医院节点会被移至二级重点医院联盟链中,由二级重点医院联盟链中排名靠前的医院节点自动补位。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211374997.8A CN115765965A (zh) | 2022-11-04 | 2022-11-04 | 基于联邦学习和双联盟区块链的医疗数据安全共享方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211374997.8A CN115765965A (zh) | 2022-11-04 | 2022-11-04 | 基于联邦学习和双联盟区块链的医疗数据安全共享方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115765965A true CN115765965A (zh) | 2023-03-07 |
Family
ID=85356431
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211374997.8A Withdrawn CN115765965A (zh) | 2022-11-04 | 2022-11-04 | 基于联邦学习和双联盟区块链的医疗数据安全共享方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115765965A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116957110A (zh) * | 2023-09-20 | 2023-10-27 | 中国科学技术大学 | 一种基于联盟链的可信联邦学习方法及系统 |
CN117235782A (zh) * | 2023-08-31 | 2023-12-15 | 北京可利邦信息技术股份有限公司 | 基于联盟链实现隐私计算数据安全的方法、系统及终端 |
CN117472866A (zh) * | 2023-12-27 | 2024-01-30 | 齐鲁工业大学(山东省科学院) | 一种区块链监管与激励下的联邦学习数据共享方法 |
CN117574440A (zh) * | 2024-01-17 | 2024-02-20 | 浙江大学 | 基于多种签名技术的联盟链医疗数据确权溯源方法及系统 |
CN117894437A (zh) * | 2023-12-29 | 2024-04-16 | 湖南红普创新科技发展有限公司 | 数字病理学数据的集成共享方法、装置、设备及存储介质 |
-
2022
- 2022-11-04 CN CN202211374997.8A patent/CN115765965A/zh not_active Withdrawn
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117235782A (zh) * | 2023-08-31 | 2023-12-15 | 北京可利邦信息技术股份有限公司 | 基于联盟链实现隐私计算数据安全的方法、系统及终端 |
CN116957110A (zh) * | 2023-09-20 | 2023-10-27 | 中国科学技术大学 | 一种基于联盟链的可信联邦学习方法及系统 |
CN116957110B (zh) * | 2023-09-20 | 2024-01-05 | 中国科学技术大学 | 一种基于联盟链的可信联邦学习方法及系统 |
CN117472866A (zh) * | 2023-12-27 | 2024-01-30 | 齐鲁工业大学(山东省科学院) | 一种区块链监管与激励下的联邦学习数据共享方法 |
CN117472866B (zh) * | 2023-12-27 | 2024-03-19 | 齐鲁工业大学(山东省科学院) | 一种区块链监管与激励下的联邦学习数据共享方法 |
CN117894437A (zh) * | 2023-12-29 | 2024-04-16 | 湖南红普创新科技发展有限公司 | 数字病理学数据的集成共享方法、装置、设备及存储介质 |
CN117574440A (zh) * | 2024-01-17 | 2024-02-20 | 浙江大学 | 基于多种签名技术的联盟链医疗数据确权溯源方法及系统 |
CN117574440B (zh) * | 2024-01-17 | 2024-04-30 | 浙江大学 | 基于多种签名技术的联盟链医疗数据确权溯源方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111639361B (zh) | 一种区块链密钥管理方法、多人共同签名方法及电子装置 | |
CN111130757B (zh) | 一种基于区块链的多云cp-abe访问控制方法 | |
CN110189192B (zh) | 一种信息推荐模型的生成方法及装置 | |
CN108418680B (zh) | 一种基于安全多方计算技术的区块链密钥恢复方法、介质 | |
CN112019591B (zh) | 一种基于区块链的云数据共享方法 | |
US11425171B2 (en) | Method and system for cryptographic attribute-based access control supporting dynamic rules | |
CN108681966B (zh) | 一种基于区块链的信息监管方法及装置 | |
CN115765965A (zh) | 基于联邦学习和双联盟区块链的医疗数据安全共享方法 | |
CN111914027B (zh) | 一种区块链交易关键字可搜索加密方法及系统 | |
US20190036895A1 (en) | Data distribution over nodal elements | |
CN109145612B (zh) | 基于区块链实现防数据篡改、用户共谋的云数据共享方法 | |
JP2022549581A (ja) | Dag構造のブロックチェーンにおいてブロックの連続的順序を決定するためのコンピューティング・システム、方法、非一時的コンピュータ可読媒体及びコンピュータ・プログラム | |
US20160275294A1 (en) | Data system and method | |
Pandiaraja et al. | A Novel Data Privacy-Preserving Protocol for Multi-data Users by using genetic algorithm. | |
CN112631605A (zh) | 联邦学习模型的代码编译方法、装置、设备及存储介质 | |
CN113609508A (zh) | 一种基于区块链的联邦学习方法、装置、设备及存储介质 | |
US12034867B2 (en) | Blockchain with random committee selection | |
Wu et al. | A blockchain based access control scheme with hidden policy and attribute | |
Lyu et al. | Towards fair and decentralized privacy-preserving deep learning with blockchain | |
CN113344222A (zh) | 一种基于区块链的安全可信的联邦学习机制 | |
CN112364376A (zh) | 一种属性代理重加密医疗数据共享方法 | |
CN113889208B (zh) | 基于区块链的链上-链下医疗数据共享方法、装置及设备 | |
CN116318617B (zh) | 基于rfid和区块链的医疗救援物资慈善捐助方法 | |
Tran et al. | An efficient privacy-enhancing cross-silo federated learning and applications for false data injection attack detection in smart grids | |
CN113764060A (zh) | 一种基于双区块链的医疗数据管理系统、病人授权病历共享方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20230307 |