一种医疗数据共享方法及系统技术方案

技术编号:38561722 阅读:13 留言:0更新日期:2023-08-22 21:02
本发明专利技术属于信息安全的技术领域,公开了一种医疗数据共享方法及系统,基于联盟区块链,利用区块链具有的去中心化、不可篡改、安全可信等特点解决医疗数据共享难题。此外,通过属性基可搜索加密,对用户在密文域上关键字的搜索权限进行细粒度访问控制,保护患者隐私安全。本发明专利技术充分考虑了在属性基加密中,云服务器与用户之间的不可信关系,将属性分为属性名与属性值,访问策略只显式地表示属性名,而将敏感的属性值隐藏在密文中。另外,通过分配属性组密钥,实现高效的属性和用户撤销,以充分保证用户隐私安全。保证用户隐私安全。保证用户隐私安全。

【技术实现步骤摘要】
一种医疗数据共享方法及系统


[0001]本专利技术涉及信息安全的
,尤其涉及一种医疗数据共享方法及系统。

技术介绍

[0002]随着我国智慧医疗的稳步发展和医疗规模的不断扩大,医疗领域正逐渐步入数字化时代,医疗数据共享可以提高医疗服务质量并且降低成本。然而,医疗数据具有隐私性强,数据量大,利用价值高等特点,共享医疗数据容易泄露患者的隐私。此外,不同的医疗机构之间也很难实现医疗数据的共享。
[0003]为了解决上述问题,本文引入了区块链技术、可搜索加密以及属性基加密。区块链技术具有的去中心化、不可篡改、安全可信等特点,已广泛应用于各个领域,包括医疗领域。其中,区块链的不可篡改特性为数据价值的共享提供了载体,可以很好的解决医疗数据共享难的问题。本专利技术充分利用区块链的特性,将区块链的存储和计算能力融入方案中,例如存储系统公共参数、生成数据访问日志、智能合约承担计算和返回数据。所有的数据共享交易ID都被记录到联盟区块链,用于联盟验证和追溯。可搜索加密算法则支持用户在密文域上进行关键字搜索,保护用户隐私的同时,也提高了数据使用的灵活度,这一特性使得可搜索加密在数据共享时代得到了广泛的运用。然而,在医疗场景中,数据共享还需要考虑数据用户细粒度搜索权限的问题。在本专利技术中,将属性基加密与可搜索加密相结合,即通过属性基加密来控制用户搜索权限,对密文的搜索形成访问控制。但是,在传统的属性基加密算法中,明文形式的访问策略也可能泄露数据拥有者的隐私。针对上述问题,本专利技术充分考虑了在属性基加密中云服务器与用户之间的不可信关系,将属性分为属性名与属性值,访问策略只显式的表示属性名,而将更敏感的属性值隐藏在密文中,从而云服务器无法知道特定的属性值。此外,还针对单关键字属性基可搜索加密搜索效率低的问题,提出一种高效的多关键字属性基可搜索加密算法。另外,还分配属性组密钥,实现高效的属性和用户撤销,以充分保证用户隐私安全。

技术实现思路

[0004]本部分的目的在于概述本专利技术的实施例的一些方面以及简要介绍一些较佳实施例。在本部分以及本申请的说明书摘要和专利技术名称中可能会做些简化或省略以避免使本部分、说明书摘要和专利技术名称的目的模糊,而这种简化或省略不能用于限制本专利技术的范围。
[0005]鉴于上述现有存在的问题,提出了本专利技术。
[0006]因此,本专利技术解决的技术问题是:现有技术存在容易泄露患者隐私以及难以实现医疗数据共享的问题。
[0007]为解决上述技术问题,本专利技术提供如下技术方案:第一方面,本专利技术实施例提供了一种医疗数据共享方法,包括:基于用户上传的信息初始化系统参数,生成用户属性密钥和路径密钥,上传至云服务器;
云服务器将用户密文及多关键字索引密文重新加密并保存;当需要使用用户信息时,发送搜索陷门至云服务器,云服务器通过判断索引与搜索陷门是否匹配,将信息发送给使用者;使用者基于收到的信息更新密钥并上传至云服务器,云服务器通过判断用户属性是否满足访问策略,将解密密文发送给使用者,从而解密得到明文。
[0008]作为本专利技术所述的医疗数据共享方法的一种优选方案,其中:定义所述系统的全局属性名集合为:定义全体用户集合为:定义一组用户集合为:其中,为该集合用户的属性;定义属性组集合为:定义为属性名对应的属性组密钥,所述被中未被撤销的用户所共享。
[0009]作为本专利技术所述的医疗数据共享方法的一种优选方案,其中:所述初始化系统参数,包括:定义初始化系统安全参数为;定义一个双线性对表示为:定义所述系统的哈希函数为:定义所述系统的哈希函数为:其中,和表示素数阶为的乘法循环群,表示一个大素数,的一个生成元为;对的每一个属性名,进行哈希值计算,表示为:其中,表示属性名的哈希值,表示一个将映射成为属性名的函数;随机选择,并分别计算:,,;保存所述系统主密钥,发布全局公共参数,表示为:其中,表示随机数,,表示中的元素,表示中的元素。
[0010]作为本专利技术所述的医疗数据共享方法的一种优选方案,其中:所述用户属性密钥,包括:随机选择,输入公共参数和用户的属性集合;
其中,表示用户的属性名集合,表示用户的属性值集合,表示具体的属性值,计算得到:计算得到:计算得到:计算得到:随机选择,计算:计算:计算:生成所述用户密钥,表示为:其中,分别表示用户属性密钥中的各个组件;将每个属性名对应的属性组发送至所述云服务器;所述路径密钥,包括:所述云服务器为用户定义一个KEK二叉树,在中的每一个用户都对应KEK树中的一个叶子节点;在二叉树中,每一个节点都存储了一个随机密钥KEK,用来表示,随机密钥彼此之间相互独立;从叶子节点到根节点的路径节点上的一组KEKs表示为路径密钥。
[0011]作为本专利技术所述的医疗数据共享方法的一种优选方案,其中:用户信息加密,包括:电子病历的加密与上传,包括:在所述云服务器中部署用于数据分享的智能合约;为用户随机选择一个对称密钥,对电子病历文件加密得到明文文件;用户将上传至所述云服务器,从系统返回得到密文地址;加密多关键字索引,包括:用户从电子病历中选取包含个关键字的多关键字集,表示为:其中,表示多关键字集中的第个关键字;用户输入公共参数以及多关键字集,对于用户随机选择,,计
算:算:算:算:输出多关键字索引密文,表示为:其中,分别表示多关键字索引密文中的各个组件;文件加密密钥和地址加密,包括:用户输入公共参数、对称密钥、密文地址以及访问策略;其中,是一个的矩阵,是中的一行映射到属性名的一个映射函数,是与相关的属性值;用户随机选择一个向量,用来分享秘密值;其中,为一组随机数;对每个,随机选择,并计算;其中,表示一个属性名的一个秘密份额,表示矩阵的第行,计算:计算:计算:计算:用户输出密文,表示为:其中,表示删除属性值集合后不完整的访问策略,分别表示密文中的各个组件;用户将上传至所述云服务器;对密文重加密,包括:所述云服务器对于每一个,随机选择一个;其中,表示密文与多关键字索引密文的结合信息,是构建密文的访问策略中所有属性名对应的属性组,表示一组随机数;重加密密文表示为:
其中,为密文中组件重加密后更新后新的组件;所述云服务器对于每一个,在KEK树中选择一个可以覆盖中所有用户的根节点,根节点的集合表示为;重加密密文的标题信息表示为:所述云服务器保存;所述智能合约生成的哈希值、时间戳、交易发起用户以及其他信息上传至医疗联盟区块链,在共识节点确认交易并同步到区块链后,将返回交易ID;其中,表示重加密密文、多关键字索引密文以及标题信息的结合信息。
[0012]作为本专利技术所述的医疗数据共享方法的一种优选方案,其中:所述搜索陷门,包括:输入公共参数、用户密钥以及想查询的关键字集合,对于选择随机数,计算:计算:计算:计算:输出搜索陷门,表示为:其中,表示集合中第个关键字,表示搜索陷门,分别表示搜索陷门中各个组件;数据使用者将上传至所述云服务器,并调用智能合约。
[0013]作为本专利技术所述的医疗数据共享方法的一种优选方案,其中:所述判断索引与搜索陷门是否匹配,包括:所述云服务器收到数据使本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种医疗数据共享方法,其特征在于,包括:基于用户上传的信息初始化系统参数,生成用户属性密钥和路径密钥,上传至云服务器;云服务器将用户密文及多关键字索引密文重新加密并保存;当需要使用用户信息时,发送搜索陷门至云服务器,云服务器通过判断索引与搜索陷门是否匹配,将信息发送给使用者;使用者基于收到的信息更新密钥并上传至云服务器,云服务器通过判断用户属性是否满足访问策略,将解密密文发送给使用者,从而解密得到明文。2.如权利要求1所述的医疗数据共享方法,其特征在于,还包括:定义所述系统的全局属性名集合为:定义全体用户集合为:定义一组用户集合为:其中,为该集合用户的属性;定义属性组集合为:定义为属性名对应的属性组密钥,所述被中未被撤销的用户所共享。3.如权利要求2所述的医疗数据共享方法,其特征在于:所述初始化系统参数,包括:定义初始化系统安全参数为;定义一个双线性对表示为:定义所述系统的哈希函数为:定义所述系统的哈希函数为:其中,和表示素数阶为的乘法循环群,表示一个大素数,的一个生成元为;对的每一个属性名,进行哈希值计算,表示为:其中,表示属性名的哈希值,表示一个将映射成为属性名的函数;随机选择,并分别计算:,,;保存所述系统主密钥,发布全局公共参数,表示为:其中,表示随机数,,表示中的元素,表示中的元素。4.如权利要求3所述的医疗数据共享方法,其特征在于:所述用户属性密钥,包括:随机选择,输入公共参数和用户的属性集合;
其中,表示用户的属性名集合,表示用户的属性值集合,表示具体的属性值,计算得到:计算得到:计算得到:计算得到:随机选择,计算:计算:计算:生成所述用户密钥,表示为:其中,分别表示用户属性密钥中的各个组件;将每个属性名对应的属性组发送至所述云服务器;所述路径密钥,包括:所述云服务器为用户定义一个KEK二叉树,在中的每一个用户都对应KEK树中的一个叶子节点;在二叉树中,每一个节点都存储了一个随机密钥KEK,用来表示,随机密钥彼此之间相互独立;从叶子节点到根节点的路径节点上的一组KEKs表示为路径密钥。5.如权利要求4所述的医疗数据共享方法,其特征在于:用户信息加密,包括:电子病历的加密与上传,包括:在所述云服务器中部署用于数据分享的智能合约;为用户随机选择一个对称密钥,对电子病历文件加密得到明文文件;用户将上传至所述云服务器,从系统返回得到密文地址;加密多关键字索引,包括:用户从电子病历中选取包含个关键字的多关键字集,表示为:其中,表示多关键字集中的第个关键字;用户输入公共参数以及多关键字集,对于用户随机选择,,计算:
输出多关键字索引密文,表示为:其中,分别表示多关键字索引密文中的各个组件;文件加密密钥和地址加密,包括:用户输入公共参数、对称密钥、密文地址以及访问策略;其中,是一个的矩阵,是中的一行映射到属性名的一个映射函数,是与相关的属性值;用户随机选择一个向量,用来分享秘密值;其中,为一组随机数;对每个,随机选择,并计算;其中,表示一个属性名的一个秘密份额,表示矩阵的第行,计算:计算:计算:计算:用户输出密文,表示为:其中,表示删除属性值集合后不完整的访问策略,分别表示密文中的各个组件;用户将上传至所述云服务器;对密文重加密,包括:所述云服务器对于每一个,随机选择一个;其中,表示密文与多关键字索引密文的结合信息,是构建密文的访问策略中所有属性名对应的属性组,表示一组随机数;重加密密文表示为:
其中,为密文中组件重加密后更新后新的组件;所述云服务器对于每一个,在KEK树中选择一个可以覆盖中所有用户的根节点,根节点的集合表示为;重加密密文的标题信息表示为:所述云服务器保存;所述智能合约生成的...

【专利技术属性】
技术研发人员:王化群谢杰彪王少辉
申请(专利权)人:南京邮电大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1