System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及数据处理,尤其涉及一种基于区块链的医疗数据共享方法、装置、设备及存储介质。
技术介绍
1、随着医疗卫生的发展和医疗数据信息化的发展,在各个医院之间进行医疗数据的共享和交换,可以促进医生更好地开展工作,为患者提供优质的医疗服务。
2、相关的医疗数据的共享主要是通过将医疗数据上传至区块链,各个医院或医疗机构分别对应一个节点,通过区块链的方式可以在各个节点之间实现共享。但是这种方式会将患者的医疗数据上传至区块链中的节点,随着上传的数据量的增加,在进行医疗数据搜索时,搜索压力增加,难以快速获取到期望的医疗数据;并且,由于医疗数据臃肿的特点,如果将所有医疗数据进行大段上传,会进一步增加上传的数据量,影响医疗数据搜索和医疗数据共享的效率。
技术实现思路
1、本专利技术实施例提供了一种基于区块链的医疗数据共享方法、装置、设备及存储介质,以提高医疗数据搜索和医疗数据共享的效率。
2、第一方面,本专利技术实施例提供了一种基于区块链的医疗数据共享方法,包括:
3、获取区块链中第一节点上传的医疗数据;
4、对所述医疗数据进行结构化处理,得到预设格式的结构化数据;其中,所述结构化数据中包括多条结构子数据和每条结构子数据的属性;
5、对每条结构子数据分别进行加密,并对加密后每条结构子数据进行存储,得到加密后每条结构子数据的存储位置;
6、提取所述多条结构子数据对应的数据摘要,并根据每条结构子数据对应的属性,以及所述医疗数据
7、将加密后的存储位置和数据摘要,以及所述多条结构子数据的属性,存储至所述区块链中对应的区块,以进行医疗数据的共享。
8、在一种可能的实现方式中,所述方法还包括:
9、获取所述区块链中第二节点发送的数据共享请求,所述数据共享请求中包括所述第二节点期望获取的目标医疗数据的目标属性和所述目标医疗数据对应的区块,以及所述第二节点的密钥和所述目标医疗数据对应的密钥;
10、根据所述数据共享请求中的目标属性,从所述目标医疗数据对应的区块中获取所述目标属性对应的加密后的存储位置;
11、根据所述第二节点的密钥、所述目标医疗数据的密钥和所述目标属性,对所述目标属性对应的存储位置进行解密,得到对应的解密结果;
12、根据所述解密结果,确定共享数据,并将所述共享数据返回所述第二节点。
13、在一种可能的实现方式中,所述根据每条结构子数据对应的属性,以及所述医疗数据的密钥和所述第一节点的密钥,对所述多条结构子数据的存储位置和数据摘要分别进行加密,包括:
14、根据每条结构子数据对应的属性,确定每条结构子数据对应的敏感度;
15、根据所述敏感度,对所述多条结构子数据进行分组,得到多个数据组,其中,数据组和敏感度范围一一对应,一个数据组中的多条结构子数据对应的敏感度位于该数据组的敏感度范围内;
16、根据每条结构子数据对应的数据组,确定每条结构子数据的存储位置和数据摘要的加密方式;
17、基于每条结构子数据的加密方式、所述医疗数据的密钥和所述第一节点的密钥,分别对每条结构子数据的存储位置和数据摘要进行加密。
18、在一种可能的实现方式中,所述根据每个结构条数据对应的数据组,确定每个结构条数据的存储位置和数据摘要的加密方式,包括:
19、分别确定每个数据组的初始加密方式,其中,每个数据组对应的初始加密方式不同;
20、根据敏感度范围最低的数据组的初始加密方式,调整其余的数据组的初始加密方式,获得所述其余的数据组调整后的加密方式;
21、根据所述敏感度范围最低的数据组的初始加密方式和所述其余的数据组调整后的加密方式,分别确定每个数据组中每条结构子数据的存储位置和数据摘要的加密方式。
22、在一种可能的实现方式中,所述目标属性包括至少一个属性;
23、在所述根据所述第二节点的密钥、所述目标医疗数据的密钥和所述目标属性,对所述目标属性对应的存储位置进行解密之前,还包括:
24、确定所述目标属性中每个属性对应的目标敏感度范围,并确定每个目标敏感度范围是否为预设最低的敏感度范围;
25、若每个目标敏感度范围均不为所述预设最低的敏感度范围,则停止操作。
26、在一种可能的实现方式中,所述根据所述第二节点的密钥、所述目标医疗数据的密钥和所述目标属性,对所述目标属性对应的存储位置进行解密,包括:
27、对所述目标属性中预设最低的敏感度范围的属性对应的存储位置进行解密;
28、若预设最低的敏感度范围的属性中存在对应的存储位置解密失败,则确定所述目标属性中所有属性对应的解密结果为解密失败;
29、若预设最低的敏感度范围的所有属性对应的存储位置解密成功,则继续对其他敏感度范围的属性对应的存储地址进行解密;
30、若存在同一敏感度范围的属性对应的存储位置解密失败,则确定所述目标属性中该敏感度范围对应的属性的解密结果为解密失败;
31、若同一敏感度范围的属性对应的存储位置解密成功,则确定所述目标属性中该敏感度范围对应的属性的解密结果为解密成功。
32、在一种可能的实现方式中,所述根据所述解密结果,确定共享数据,并将所述共享数据返回所述第二节点,包括:
33、将所有解密成功的属性对应的结构子数据进行重组,得到共享数据;
34、将所述共享数据临时存储至一个新的存储地址;
35、通过所述新的存储地址,将所述共享数据发送至所述第二节点,并在预设时间后将所述新的存储地址内的共享数据删除。
36、第二方面,本专利技术实施例提供了一种基于区块链的医疗数据共享装置,包括:
37、获取模块,用于获取区块链中第一节点上传的医疗数据;
38、处理模块,用于对所述医疗数据进行结构化处理,得到预设格式的结构化数据;其中,所述结构化数据中包括多条结构子数据和每条结构子数据的属性;
39、存储模块,用于对每条结构子数据分别进行加密,并对加密后每条结构子数据进行存储,得到加密后每条结构子数据的存储位置;
40、加密模块,用于提取所述多条结构子数据对应的数据摘要,并根据每条结构子数据对应的属性,以及所述医疗数据的密钥和所述第一节点的密钥,对所述多条结构子数据的存储位置和数据摘要进行加密;
41、共享模块,用于将加密后的存储位置和数据摘要,以及所述多条结构子数据的属性,存储至所述区块链中对应的区块,以进行医疗数据的共享。
42、第三方面,本专利技术实施例提供了一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上第一方面或第一方面的任一种可能的实现方式所述的方法的本文档来自技高网...
【技术保护点】
1.一种基于区块链的医疗数据共享方法,其特征在于,包括:
2.根据权利要求1所述的基于区块链的医疗数据共享方法,其特征在于,所述方法还包括:
3.根据权利要求2所述的基于区块链的医疗数据共享方法,其特征在于,所述根据每条结构子数据对应的属性,以及所述医疗数据的密钥和所述第一节点的密钥,对所述多条结构子数据的存储位置和数据摘要分别进行加密,包括:
4.根据权利要求3所述的基于区块链的医疗数据共享方法,其特征在于,所述根据每条结构子数据对应的数据组,确定每条结构子数据的存储位置和数据摘要的加密方式,包括:
5.根据权利要求3或4所述的基于区块链的医疗数据共享方法,其特征在于,所述目标属性包括至少一个属性;
6.根据权利要求3或4所述的基于区块链的医疗数据共享方法,其特征在于,所述根据所述第二节点的密钥、所述目标医疗数据的密钥和所述目标属性,对所述目标属性对应的存储位置进行解密,包括:
7.根据权利要求6所述的基于区块链的医疗数据共享方法,其特征在于,所述根据所述解密结果,确定共享数据,并将所述共享数据返回所述第二
8.一种基于区块链的医疗数据共享装置,其特征在于,包括:
9.一种电子设备,包括存储器和处理器,所述存储器用于存储计算机程序,所述处理器用于调用并运行所述存储器中存储的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如上的权利要求1至7中任一项所述的方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如上的权利要求1至7中任一项所述的方法的步骤。
...【技术特征摘要】
1.一种基于区块链的医疗数据共享方法,其特征在于,包括:
2.根据权利要求1所述的基于区块链的医疗数据共享方法,其特征在于,所述方法还包括:
3.根据权利要求2所述的基于区块链的医疗数据共享方法,其特征在于,所述根据每条结构子数据对应的属性,以及所述医疗数据的密钥和所述第一节点的密钥,对所述多条结构子数据的存储位置和数据摘要分别进行加密,包括:
4.根据权利要求3所述的基于区块链的医疗数据共享方法,其特征在于,所述根据每条结构子数据对应的数据组,确定每条结构子数据的存储位置和数据摘要的加密方式,包括:
5.根据权利要求3或4所述的基于区块链的医疗数据共享方法,其特征在于,所述目标属性包括至少一个属性;
6.根据权利要求3或4所述的基于区块链的医疗数据共享方法,其特征在于,...
【专利技术属性】
技术研发人员:赵风浩,任锋,罗永强,李江,
申请(专利权)人:西康软件有限责任公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。