CN113656829A - 一种基于格密码与联盟链的医疗数据安全共享方法 - Google Patents
一种基于格密码与联盟链的医疗数据安全共享方法 Download PDFInfo
- Publication number
- CN113656829A CN113656829A CN202110830671.0A CN202110830671A CN113656829A CN 113656829 A CN113656829 A CN 113656829A CN 202110830671 A CN202110830671 A CN 202110830671A CN 113656829 A CN113656829 A CN 113656829A
- Authority
- CN
- China
- Prior art keywords
- data
- medical
- user
- secret
- matrix
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
Abstract
本发明涉及一种基于格密码与联盟链的医疗数据安全共享方法,属于区块链技术领域。本方法将联盟区块链技术运用于医疗数据共享系统,将秘密共享算法与联盟区块链上业务进行融合,提出了利用格密码的抗量子计算攻击的特性,并将基于格密码的秘密共享算法应用于医疗数据共享系统中。与现有技术相比,本方法基于区块链技术,各参与方之间信息公开透明,去中心化,可轻松实现举证追责。本方法采用联盟链的身份管理机制,使得只有授权的节点才能加入网络,提高了数据安全性。本方法首次融合了基于格密码的秘密共享算法,使得医疗数据共享系统能够有效应对量子计算机技术的威胁。
Description
技术领域
本发明涉及一种医疗数据安全共享方法,具体涉及一种基于格密码与联盟链的医疗数据安全共享方法,属于区块链技术领域。
背景技术
随着计算机与互联网技术的发展,电子医疗数据已经在日常生活中广泛普及。医疗机构产生的电子医疗数据通常包含患者信息、临床实验数据、费用记录等。一些医疗产品研发公司普遍采用基于真实的医疗数据进行产品研发工作。
医疗数据共享系统为众多的医疗机构与医疗产品研发公司提供了一个可以共享医疗数据的平台,其主要设计目标为:保证医疗数据在共享的过程中的隐私性、完整性、正确性。
医疗数据共享系统为了提高数据安全性,会考虑如下业务场景:当一家医疗产品研发机构(简称使用者)期望使用一份医疗机构发布的医疗数据,各家医疗机构会根据对该使用者的信用评估去决策是否同意该使用者获取并使用数据,只有当满足一定数量以上的医疗机构选择同意,该使用者才能实现对数据的访问。
目前,主流的医疗数据共享系统基于云计算平台这种中心化的服务提供方,使用者访问数据的记录、医疗机构做出决策的记录、医疗数据本身的信息等都存储在第三方云平台,参与医疗数据共享的组织需要依赖于一个提供数据共享服务的可信第三方。由此产生的缺点主要有两类:
一是中心化的服务提供方容易受到黑客攻击,且被攻击后恢复数据的成本巨大,甚至无法恢复;
二是服务提供方可对参与数据共享的组织的相关记录进行修改,当参与方之间出现全责纠纷时,举证和追责耗时费力,甚至不可行。
现有的医疗数据共享系统为满足需求,通常采用秘密共享算法,大部分是基于数论中的离散对数困难问题。然而,随着量子计算机的出现,使得基于离散对数困难问题以及整数因式分解困难问题的密码机制在未来将不再安全。
区块链技术的核心思想在于去中心化,外加其可追溯性、不可篡改性,能够很好地被运用于解决医疗数据共享参与方之间的权责纠纷,轻松实现举证追责,联盟区块链技术的身份管理机制能管理数据共享参与方的身份,且高效的共识机制能够满足面向企业的性能要求。
发明内容
本发明的目的是针对现有的医疗数据共享系统存在的因参与方之间交互记录不透明导致权责纠纷、举证追责困难等问题缺陷,同时为了应对在未来量子计算机对传统加密算法构成的安全性威胁,创造性地提出一种基于格密码与联盟链的医疗数据安全共享方法。
本方法的创新点在于:首次将秘密共享算法与联盟区块链上业务进行融合;首次提出了利用格密码的抗量子计算攻击的特性,并将基于格密码的秘密共享算法应用于医疗数据共享系统中。
为了达到以上目的,本发明采取如下技术方案。
首先,对有关概念进行说明:
定义1:医疗数据共享网络
包含提供医疗数据的医疗机构、对医疗数据进行请求的医疗产品研发机构,简称使用者,以及产生秘密共享算法公共参数、管理秘密共享份额的管理者,其中,管理者由政府监管机构担任。
定义2:联盟区块链网络
即联盟链网络,是用于医疗数据共享的基础设施网络,包含三种类型节点:客户端节点、对等节点、排序节点。
定义3:客户端节点
指基于联盟链网络的医疗数据共享网络中的用户,向联盟链网络发送请求,通过联盟链处理交易信息,每一个数据共享参与方都要有一个客户端节点。
定义4:对等节点
指在联盟链网络中提供服务功能的节点,每一个数据共享参与方都需要有一个对等节点。其中,服务功能包括智能合约执行、交易验证、维护分布式账本。
定义5:排序节点
在联盟链网络中负责通过共识算法对交易执行结果进行排序,并打包成区块,分发给对等节点。
定义6:智能合约
一种分布式的计算机程序,能够根据协议条款自动执行,当其执行后,会对联盟链中分布式账本内容进行更新。
一种基于格密码与联盟链的医疗数据安全共享方法,包括以下步骤:
步骤1:初始化操作。
管理者对联盟链网络配置初始化,进而建立网络,并对秘密共享算法相关安全参数进行初始化。
具体地,步骤1包含以下步骤:
步骤1.1:联盟链网络配置参数包括:受信任的组织列表、组织角色划分、出块参数、服务器节点参数、网络通信参数。
管理者根据上述参数创建并启动网络,将这些参数写入账本。
步骤1.2:将各家医疗机构与使用者的服务器节点和客户端节点加入联盟链网络。
其中,每个节点均需提供自己组织所颁发的证书,这些证书必须来自于受信任的组织列表。
步骤1.3:管理者确定秘密共享算法的安全参数,包括秘密共享门限、素数域、密钥大小,并调用智能合约将这些参数上链。
步骤2:进行份额分发。
管理者为系统中每个参与者生成份额,并分发给各个医疗机构,当每个参与者收到份额后需要对份额进行验证与确认。
具体地,步骤2包含以下步骤:
步骤2.1:管理者随机生成与医疗机构数量相同的公共向量Λ,随机为每个参与者随机生成秘密共享份额C。
步骤2.2:将份额分发给各自的医疗机构,并调用智能合约将Λ上链。
步骤2.3:收到份额的医疗机构通过哈希算法对份额进行验证。若通过验证则将确认信息发布至区块链,否则等待管理者再次发送份额,直到全部医疗机构确认后才能执行下一步骤。
步骤3:进行数据发布。
医疗机构将一份数据通过对称加密生成密文,将数据的摘要信息发布上链。
具体地,步骤3包括以下步骤:
步骤3.1:医疗机构将一份数据通过对称加密生成密文,并对应生成一个秘密s,用于恢复出数据明文。
步骤3.2:医疗机构将数据密文地址发布上链。
步骤3.3:管理者计算出对应该数据的一个公共矩阵A,并发布上链。
步骤4:进行数据恢复。
使用者将对一份数据的请求信息发布到区块链上,其余的医疗机构构造伪份额发送给该使用者,帮助其恢复出数据。
具体地,步骤4包括以下步骤:
步骤4.1:使用者将请求数据的信息生成一个账本状态发布到区块链上,信息包括数据恢复的状态、收到伪份额个数。
步骤4.2:同意该使用者对数据进行访问的医疗机构,根据自己的份额与该医疗数据的公共矩阵A计算出一个伪份额,并将伪份额发送给使用者。
步骤4.3:使用者根据收到的伪份额计算出秘密s,只有收到至少与门限值数量相等的伪份额时,才能将秘密恢复。
步骤4.4:使用者将恢复出的秘密发送给发布该数据的医疗机构,后者结合区块链账本状态内容确定恢复出的秘密是否有效。若验证通过,则该医疗机构将解密数据密文的密钥发送给使用者,从而恢复出数据明文,否则请求失败,使用者无法获得密钥。
有益效果
本发明方法,与现有技术相比,具有以下优点:
1.本方法基于区块链技术,各参与方之间信息公开透明,去中心化,可轻松实现举证追责。
2.本方法采用联盟链的身份管理机制,使得只有授权的节点才能加入网络,提高了数据安全性。
3.本方法首次融合了基于格密码的秘密共享算法,使得医疗数据共享系统能够有效应对量子计算机技术的威胁。
附图说明
图1为本发明方法实施例的流程图。
具体实施方式
下面结合附图和实施例对本发明方法做进一步详细说明。
实施例
本实施例描述了医疗数据共享网络采用本发明方法进行数据共享的过程。
如图1所示,在医疗数据共享网络中有x家医院P1,…,Px、一个使用者Pk和一个管理者。其中,表示在模q的有限整数域上的m维向量空间,表示在模q的有限整数域上的m×n矩阵空间,M-1表示矩阵M的逆矩阵。
步骤1:管理者首先通过对联盟链网络配置初始化进而建立网络,并对秘密共享算法相关参数进行初始化。
具体地,步骤1包含如下子步骤:
步骤1.1:管理者对联盟链网络参数进行初始化,生成账本状态NetConfig,写入区块链账本中,NetConfig包括受信任的组织列表、组织角色划分、出块参数、服务器节点参数、网络通信参数等。
步骤1.3:调用智能合约,将q、v、t、r发布上链,生成账本状态MathParams。
步骤2:管理者为系统中每个参与者生成份额并分发给各家医院,当每个参与者收到份额后,需要对份额进行验证与确认。
具体地,步骤2包含如下子步骤:
步骤2.2:管理者随机生成一个矩阵F,表示在模q的有限整数域上的t×r矩阵空间。通过hj=Fcj计算出一个矩阵H=[h1…hx],调用智能合约将λ1,…,λx、F、H发布上链,生成一个账本状态PublicMats。其中,hx表示列向量。
在步骤2.2中,矩阵H中的列向量hj都是基于格密码最小整数解(SIS)困难问题构造的单向函数(以下简称SIS-OWF)的输出,在公布矩阵F与H的情况下不会透漏份额的信息。生成的账本状态PublicMats包含一个confirm字段,其值类型为数组,负责存放确认过份额的医院,初始值为空值。
步骤2.3:当一个医院Pj收到自己的份额后,通过查询账本中PublicMats状态,能得到F和H,通过计算hj=Fcj是否成立,如果成立则代表收到了正确的份额,调用智能合约将Pj添加到PublicMats的confirm数组中。
步骤3:设医院1发布数据DT1。
具体地,步骤3包含以下步骤:
步骤3.2:医院1生成一个账本状态InfoDT1,其中包含URL1、医院1的身份等信息。
步骤3.3:医院1针对s1,根据向量v生成一个矩阵B1,作为s1的格基,满足si=B1v,并将B1发送给管理者。设C=[c1 … cx],Λ=[λ1 … λx]管理者通过计算得到关于数据DT1的公共矩阵A1,满足A1C=B1Λ。
其中,步骤3.3中求矩阵B1的方法为:
b1=s1-B′1v′ (2)
其中,v′表示向量v的前(t-1)项。
在步骤3.3中,管理者计算数据DT1的公共矩阵A1的方法为:
A′1=(B1Λ-A″1C″)C′-1 (4)
其中,A′1表示A1的前x列,C′表示份额矩阵C的前(r-x)行,C″表示C的后x行。
步骤4:使用者Pk获取数据DT1,包括以下子步骤:
步骤4.1:使用者Pk调用智能合约,生成一个账本状态ReqDT1Pk,字段如表1所示。
表1账本状态ReqDT1P5
其中,步骤4.4用到的合法性检验方法如下:
然后,医院获取全部数据恢复阶段产生的账本状态,即ReqPjDTi,记作集合SR;
最后,遍历集合SR,若找出字段requester为Pk、字段dataID为DT1、字段status为2(表示就绪)的账本状态,则秘密验证通过,否则返回验证失败信息。
该秘密合法性检验方法的伪代码形式如下:
上述秘密验证算法能够防止秘密s1泄漏所造成的影响,通过检查账本状态ReqDT1Pk中字段来保证数据安全。
表2展示了本发明中所用到的账本状态,及其意义。
表2几种账本状态与其意义
Claims (3)
1.一种基于格密码与联盟链的医疗数据安全共享方法,首先对有关概念进行说明:
定义1:医疗数据共享网络
包含提供医疗数据的医疗机构、对医疗数据进行请求的医疗产品研发机构,简称使用者,以及产生秘密共享算法公共参数、管理秘密共享份额的管理者,其中,管理者由政府监管机构担任;
定义2:联盟区块链网络
即联盟链网络,是用于医疗数据共享的基础设施网络,包含三种类型节点:客户端节点、对等节点、排序节点;
定义3:客户端节点
指基于联盟链网络的医疗数据共享网络中的用户,向联盟链网络发送请求,通过联盟链处理交易信息,每一个数据共享参与方都要有一个客户端节点;
定义4:对等节点
指在联盟链网络中提供服务功能的节点,每一个数据共享参与方都需要有一个对等节点;其中,服务功能包括智能合约执行、交易验证、维护分布式账本;
定义5:排序节点
在联盟链网络中负责通过共识算法对交易执行结果进行排序,并打包成区块,分发给对等节点;
定义6:智能合约
一种分布式的计算机程序,能够根据协议条款自动执行,当其执行后,会对联盟链中分布式账本内容进行更新;
其特征在于,包括以下步骤:
步骤1:管理者对联盟链网络配置初始化,进而建立网络,并对秘密共享算法相关安全参数进行初始化,包括以下步骤:
步骤1.1:联盟链网络配置参数包括:受信任的组织列表、组织角色划分、出块参数、服务器节点参数、网络通信参数;
管理者根据上述参数创建并启动网络,将这些参数写入账本;
步骤1.2:将各家医疗机构与使用者的服务器节点和客户端节点加入联盟链网络;
其中,每个节点均需提供自己组织所颁发的证书,这些证书必须来自于受信任的组织列表;
步骤1.3:管理者确定秘密共享算法的安全参数,包括秘密共享门限、素数域、密钥大小,并调用智能合约将这些参数上链;
步骤2:管理者为系统中每个参与者生成份额,并分发给各个医疗机构,当每个参与者收到份额后需要对份额进行验证与确认,包括以下步骤:
步骤2.1:管理者随机生成与医疗机构数量相同的公共向量Λ,随机为每个参与者随机生成秘密共享份额C;
步骤2.2:将份额分发给各自的医疗机构,并调用智能合约将Λ上链;
步骤2.3:收到份额的医疗机构通过哈希算法对份额进行验证;若通过验证则将确认信息发布至区块链,否则等待管理者再次发送份额,直到全部医疗机构确认后才能执行下一步骤;
步骤3:医疗机构将一份数据通过对称加密生成密文,将数据的摘要信息发布上链,包括以下步骤:
步骤3.1:医疗机构将一份数据通过对称加密生成密文,并对应生成一个秘密s,用于恢复出数据明文;
步骤3.2:医疗机构将数据密文地址发布上链;
步骤3.3:管理者计算出对应该数据的一个公共矩阵A,并发布上链;
步骤4:使用者将对一份数据的请求信息发布到区块链上,其余的医疗机构构造伪份额发送给该使用者,帮助其恢复出数据,包括以下步骤:
步骤4.1:使用者将请求数据的信息生成一个账本状态发布到区块链上,信息包括数据恢复的状态、收到伪份额个数;
步骤4.2:同意该使用者对数据进行访问的医疗机构,根据自己的份额与该医疗数据的公共矩阵A计算出一个伪份额,并将伪份额发送给使用者;
步骤4.3:使用者根据收到的伪份额计算出秘密s,只有收到至少与门限值数量相等的伪份额时,才能将秘密恢复;
步骤4.4:使用者将恢复出的秘密发送给发布该数据的医疗机构,后者结合区块链账本状态内容确定恢复出的秘密是否有效;若验证通过,则该医疗机构将解密数据密文的密钥发送给使用者,从而恢复出数据明文,否则请求失败,使用者无法获得密钥。
2.如权利要求1所述的一种基于格密码与联盟链的医疗数据安全共享方法,其特征在于,步骤3.3的具体实现方法为:
设医院1发布数据DT1,医院1将数据DT1使用私钥sk1进行加密,生成数据密文CT1,并将密文上传到文件服务器,地址为URL1;随机生成 表示在模q的有限整数域上的r维向量空间;将s1与sk1进行绑定,s1表示对应密钥ski的秘密;医院1生成一个账本状态InfoDT1,其中包含URL1、医院1的身份;
医院1针对s1,根据向量v生成一个矩阵B1,作为s1的格基,满足si=B1v,并将B1发送给管理者;s1表示对应密钥ski的秘密;
设C=[c1 … cx],Λ=[λ1 … λx],管理者通过计算得到关于数据DT1的公共矩阵A1,满足A1C=B1A;
其中,求矩阵B1的方法为:
b1=s1-B′1v′ (2)
其中,v′表示向量v的前(t-1)项;
管理者计算数据DT1的公共矩阵A1的方法为:
A′1=(B1A-A″1C″)C′-1 (4)
其中,A′1表示A1的前x列,C′表示份额矩阵C的前(r-x)行,C″表示C的后x行。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110830671.0A CN113656829A (zh) | 2021-07-22 | 2021-07-22 | 一种基于格密码与联盟链的医疗数据安全共享方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110830671.0A CN113656829A (zh) | 2021-07-22 | 2021-07-22 | 一种基于格密码与联盟链的医疗数据安全共享方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113656829A true CN113656829A (zh) | 2021-11-16 |
Family
ID=78477673
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110830671.0A Pending CN113656829A (zh) | 2021-07-22 | 2021-07-22 | 一种基于格密码与联盟链的医疗数据安全共享方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113656829A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116506123A (zh) * | 2023-06-27 | 2023-07-28 | 广州信安数据有限公司 | 基于公约协议的多主体数据共同体构建方法、介质及系统 |
-
2021
- 2021-07-22 CN CN202110830671.0A patent/CN113656829A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116506123A (zh) * | 2023-06-27 | 2023-07-28 | 广州信安数据有限公司 | 基于公约协议的多主体数据共同体构建方法、介质及系统 |
CN116506123B (zh) * | 2023-06-27 | 2023-09-15 | 广州信安数据有限公司 | 基于公约协议的多主体数据共同体构建方法、介质及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11159526B2 (en) | System and method for decentralized-identifier authentication | |
US11025435B2 (en) | System and method for blockchain-based cross-entity authentication | |
US11533164B2 (en) | System and method for blockchain-based cross-entity authentication | |
EP3788522B1 (en) | System and method for mapping decentralized identifiers to real-world entities | |
Huang et al. | Blockchain-based multiple groups data sharing with anonymity and traceability | |
Wei et al. | Security and privacy for storage and computation in cloud computing | |
CN111797159A (zh) | 数据库中的信息管理和访问控制 | |
WO2020051710A1 (en) | System and process for managing digitized security tokens | |
CN115296838B (zh) | 基于区块链的数据共享方法、系统及存储介质 | |
Sinha et al. | Luciditee: A tee-blockchain system for policy-compliant multiparty computation with fairness | |
CN114880715A (zh) | 一种基于同态加密智能合约的电力数据安全共享方法及系统 | |
Cha et al. | A blockchain-based privacy preserving ticketing service | |
CN113656829A (zh) | 一种基于格密码与联盟链的医疗数据安全共享方法 | |
Srisakthi et al. | Towards the design of a secure and fault tolerant cloud storage in a multi-cloud environment | |
Li et al. | A blockchain‐based traceable group loan system | |
CN111585756A (zh) | 一种适用于多副本-多云情形下的无证书云审计方法 | |
Dongare et al. | Panda: Public auditing for shared data with efficient user revocation in the cloud | |
Goel et al. | Blockchain-Based Secure and Efficient Crowdsourcing Framework | |
Piccolo | Distributed ledger technology in the capital market: Shared versus private information in a permissioned blockchain | |
Jiang et al. | Unified identity authentication system based on blockchain | |
Korlapati et al. | SIOCEN: Secure Integrity Verification of Outsourced Data in Cloud Storage using Blockchain | |
Li et al. | Bilinear‐map accumulator‐based verifiable intersection operations on encrypted data in cloud | |
Luong | A blockchain-based privacy-preserving medical insurance storage system | |
Banerjee et al. | Cumulus: Blockchain-Enabled Privacy Preserving Data Audit in Cloud | |
CN117528516A (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 |