CN112768018A - 基于集成信用度评估智能合约的电子病历安全共享方法 - Google Patents

基于集成信用度评估智能合约的电子病历安全共享方法 Download PDF

Info

Publication number
CN112768018A
CN112768018A CN202011476472.6A CN202011476472A CN112768018A CN 112768018 A CN112768018 A CN 112768018A CN 202011476472 A CN202011476472 A CN 202011476472A CN 112768018 A CN112768018 A CN 112768018A
Authority
CN
China
Prior art keywords
electronic medical
intelligent contract
medical record
patient
identity authentication
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
Application number
CN202011476472.6A
Other languages
English (en)
Inventor
刘智栋
张乐君
薛霄
陈慧灵
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yangzhou University
Original Assignee
Yangzhou University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Yangzhou University filed Critical Yangzhou University
Priority to CN202011476472.6A priority Critical patent/CN112768018A/zh
Publication of CN112768018A publication Critical patent/CN112768018A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H10/00ICT specially adapted for the handling or processing of patient-related medical or healthcare data
    • G16H10/60ICT specially adapted for the handling or processing of patient-related medical or healthcare data for patient-specific data, e.g. for electronic patient records
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting 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/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3825Use of electronic signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3829Payment protocols; Details thereof insuring higher security of transaction involving key management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • G06Q20/4014Identity check for transactions
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H15/00ICT specially adapted for medical reports, e.g. generation or transmission thereof

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Accounting & Taxation (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Bioethics (AREA)
  • Computer Hardware Design (AREA)
  • Medical Informatics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Epidemiology (AREA)
  • Primary Health Care (AREA)
  • Public Health (AREA)
  • Databases & Information Systems (AREA)
  • Medical Treatment And Welfare Office Work (AREA)

Abstract

本发明公开了一种基于集成信用度评估智能合约的电子病历安全共享方法,包括:系统公共参数建立;区块链的初始化;建立信用度评估机制;集成信用度评估机制到智能合约中并部署智能合约;用户申请系统成员资格;电子病历生成;患者共享电子病历;患者设置访问控制参数;机构共享研究报告;机构请求电子病历。本发明具有简单、轻量的特点,能保护数据共享者的隐私安全、同时为数据共享者提供了可信的共享环境和动态的访问控制策略接口,具有良好的应用价值。

Description

基于集成信用度评估智能合约的电子病历安全共享方法
技术领域
本发明属于信息共享领域,具体为一种基于集成信用度评估智能合约的电子病历安全共享方法。
背景技术
近年来信息技术,尤其是云技术的迅速发展为EHR的共享铺平了道路。医疗保健行业见证了EHR发展的重大变化,世界各地纷纷采用新技术来管理EHR。然而除了巨大的优势之外,EHR在云上的存储还面临着安全问题:1)未经患者授权的第三方可能会恶意访问EHR,这对于EHR共享中数据的完整性,隐私性和安全性存在不利影响。2)患者很难跟踪和管理存储在云中的EHR。
针对这些问题,许多研究提出了用于云服务器的存储、管理和共享技术。这些研究使用不同的密码学技术和云技术设计EHR共享访问控制模型以实现隐私保护和访问控制。尽管这些研究高度重视数据安全和隐私保护,但他们的系统仍然存在患者密钥管理困难、EHR共享透明度不高以及密钥存在泄露风险等问题。
随着区块链技术的发展,其特有的去中心化、可追溯性和隐私性在医疗保健行业受到广泛的关注。越来越多的学者开始研究基于区块链的EHR共享模型。基于以太坊区块链的Ancile[Dagher G G,Mohler J,Milojkovic M,et al.Ancile:Privacy-PreservingFramework for Access Control and Interoperability of Electronic HealthRecords Using Blockchain Technology[J].Sustainable Cities and Society,2018,39:283-297.]利用智能合约增强访问控制和数据混淆。文中详细描述了患者、EHR提供商和第三方之间的交互过程。MedChain[Daraghmi E Y,Daraghmi Y,Yuan S,et al.MedChain:ADesign of Blockchain-Based System for Medical Records Access and PermissionsManagement[J].IEEE Access,2019,7:164595-164613.]与Ancile类似,通过精心设计智能合约实现访问控制,同时MedChain加入了激励机制,给出了计算EHR质量的方法。然而现有的EHR共享研究中缺乏信用度评估机制。
发明内容
本发明的目的在于提供一种基于集成信用度评估智能合约的电子病历安全共享方法。
实现本发明目的的技术方案为:一种基于集成信用度评估智能合约的电子病历安全共享方法,包括以下步骤:
步骤1,身份认证机构建立系统公共参数,提供安全通信信道;
步骤2,部署以太坊客户端,初始化POA区块链,初始化共识节点;
步骤3,建立信用度评估机制;
步骤4,将信用度评估机制集成到智能合约中,身份认证机构部署智能合约;
步骤5,用户进行成员资格身份注册,身份认证机构为用户颁发成员资格公钥和私钥;
步骤6,通过身份认证的用户,身份认证机构调用智能合约将用户信息存入区块链中;
步骤7,医生为患者开电子病历,同时医生使用以太坊私钥skd对电子病历进行签名;医院将电子病历、医生的签名信息发送给患者;
步骤8,患者本地客户端随机生成对称密钥加密电子病历,并将加密的电子病历和医生签名上传到云端;
步骤9,患者调用智能合约将电子病历的索引共享到区块链中;
步骤10,调用智能合约设置全局的访问控制策略,并为电子病历单独设置白名单;
步骤11,当机构研究发现误诊的电子病历时,将研究报告上传到云端,云端返回研究报告的索引,机构调用智能合约共享研究报告;
步骤12,机构调用智能合约请求电子病历,智能合约触发事件,链外患者、云执行代理重加密,为机构生成解密电子病历的密钥;
优选地,步骤1所述的建立系统公共参数具体包括:
步骤1-1,身份认证机构选择一个椭圆曲线EP(a,b)以及一个素数n,设置EP(a,b)的基为P;
步骤1-2,身份认证机构选择阶为素数q的乘法循环群G,选择5个hash函数h1:G→Zq,h2:{0,1}*×{0,1}*×G×G→Zq,h3:{0,1}*×{0,1}*×{0,1}*×G→Zq,h4:{0,1}*×G×G×{0,1}*×{0,1}*,h5:{0,1}*×G×{0,1}*×{0,1}*×{0,1}*
步骤1-3,身份认证机构选择
Figure BDA0002837423240000021
作为其私钥,并设置ppub=s·P作为身份认证机构的公钥;将{EP(a,b),n,P,h1,h2,h3,h4,h5,ppub}作为系统的公共参数。
优选地,步骤2所述的区块链初始化过程为包括:
步骤2-1,身份认证机构本地生成以太坊公钥和私钥;
步骤2-2,身份认证机构利用以太坊客户端以太坊客户端创建POA共识区块链的创世块;
步骤2-3,身份认证机构开启以太坊客户端,利用创世块初始化区块链,并开始挖矿。
优选地,步骤3所述的建立信用度评估机制,具体包括:
步骤3-1,根据模糊层次分析法将医院信用度划分为多层次结构;
步骤3-2,将同一层次的特征两两进行比较,获得初始判断矩阵;
步骤3-3,将初始判断矩阵转换为模糊判断一致矩阵,确定各特征的权重。
优选地,确定各特征的权重的具体公式为:
Figure BDA0002837423240000031
式中,v为某个特性下特征的个数,qik为模糊一致判断矩阵中的元素。
优选地,身份认证机构为用户颁发成员资格公钥PD和成员资格私钥D分别为:
Figure BDA0002837423240000032
PD=D·P
式中,ID为用户真实身份信息,VID为用户真实身份的证明信息。
优选地,步骤11所述机构共享研究报告,具体包括:
步骤11-1,机构在查看患者电子病历时,发现患者电子病历时存在误诊,机构更正电子病历时的错误并形成研究报告;
步骤11-2,机构将研究报告上传到云端,云端返回报告存储索引;
步骤11-3,机构将报告存储索引、机构的成员资格公钥作为智能合约接口函数contribute_research()的参数,将共享研究报告信息存储到区块链中;
步骤11-4,智能合约在处理共享研究报告交易时触发投票事件a,监听该事件的审计几点链下对研究报告的详细内容进行审核;
步骤11-5,审计节点审核通过后调用智能合约接口函数给研究报告投票,当投票达到设定的阈值后,该交易成功完成
本发明与现有技术相比,其显著优点为:1)本发明利用云存储和区块链相结合的模式,云服务中存储电子病历,区块链链中存储电子病历索引;利用区块链技术,提供透明的、去中心化和可溯源的共享过程;2)本发明提供了一种信用度评估方法,将信用度评估机制集成到智能合约中,为患者提供可信的电子病历共享环境;3)本发明采用POA共识机制的区块链,在交易处理速度上较POW工作量证明共识机制的区块链更快;4)本发明提供了基于信用度奖惩机制和共谋检测方法,维护系统的安全与稳定。
下面结合附图对本发明作进一步详细描述。
附图说明
图1为本发明基于集成信用度评估智能合约的电子病历安全共享方法的示意图。
图2为本发明中为机构划分的信用度属性图。
图3为本发明中机构调用智能合约接口函数获取审计节点的签名的工作流程图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在一个实施例中,如图1所示,一种基于集成信用度评估智能合约的电子病历安全共享方法,整体的系统模型和架构如图1所示,具体包括以下步骤:
步骤1,身份认证机构IDM建立系统公共参数,提供安全通信信道;
进一步地,在其中一个实施例中,步骤1所述的建立系统公共参数,具体包括:
步骤1-1,IDM选择一个椭圆曲线EP(a,b)以及一个素数n,设置EP(a,b)的基为P;
步骤1-2,IDM选择阶为素数q的乘法循环群G,选择5个安全的hash函数h1:G→Zq,h2:{0,1}*×{0,1}*×G×G→Zq,h3:{0,1}*×{0,1}*×{0,1}*×G→Zq,h4:{0,1}*×G×G×{0,1}*×{0,1}*,h5:{0,1}*×G×{0,1}*×{0,1}*×{0,1}*
步骤1-3,IDM选择
Figure BDA0002837423240000041
作为其私钥,并设置ppub=s·P作为IDM的公钥。将{EP(a,b),n,P,h1,h2,h3,h4,h5,ppub}作为系统的公共参数,
Figure BDA0002837423240000042
为素数q的余数,不包含零。
步骤2,部署以太坊客户端,初始化POA区块链,初始化共识节点;
进一步地,在其中一个实施例中,步骤2所述的初始化POA区块链,具体包括:
步骤2-1,IDM本地生成以太坊公钥和私钥;
步骤2-2,IDM利用以太坊客户端创建POA区块链的创世块;
步骤2-3,IDM开启以太坊客户端,利用创世块初始化区块链,并开始挖矿。
步骤3,建立信用度评估机制;
进一步地,在其中一个实施例中,步骤3所述的建立信用度评估机制,具体包括:
步骤3-1,根据模糊层次分析法(Fuzzy Analytic Hierarchy Process,FAHP)将医院信用度划分为多层次结构,如图2所示,首先将信用度划分为三个特性,然后各个特性被又划分为具体的特征;
进一步地,在其中一个实例中,步骤3-1建立的信用度的特性为服务特性,可靠特性和安全特性。其中服务特性由医院贡献的病历数、用户访问该医院病历数、医院研究报告贡献数、医院审计请求数和医院的规模等级组成,可靠特性由医院病历误诊数和提出诊断错误数组成,安全特性由医院尝试越权访问患者病历次数和医院伪造交易次数组成。
步骤3-2,将同一层次的特征两两进行比较,获得初始判断矩阵;
进一步地,在其中一个实施例中,步骤3-2中的服务特性下特征比较过程如下:
服务特性特征矩阵为Ep=(e1,e2,…,ev),利用公式(1)将服务特性下的特征进行比较,获得初始判断矩阵EQ=(eqij)v×v,。
Figure BDA0002837423240000051
根据图2中服务特性特征比较,p2>p1=p3>p4=p5,可以得出EQv×v如下:
Figure BDA0002837423240000052
步骤3-3,将初始判断矩阵转换为模糊判断一致矩阵,通过计算确定各特征以及各特性的权重。
进一步地,在其中一个实施例中,步骤3-3中的服务特性下的特征的权重计算如下:
1)通过公式(2)将初始判断矩阵转化为模糊判断一致矩阵Q=(qij)v×v
Figure BDA0002837423240000053
通过上式则可得出服务特性的模糊判断一致矩阵的具体值为:
Figure BDA0002837423240000061
2)使用公式(3)计算服务特性下各特征的权重向量,从而得到WP=(wp1,wp2,wp3,wp4,wp5)。
Figure BDA0002837423240000062
通过上式可得服务特性下各个特征的特征权重的具体值为:
WP=(0.225,0.300,0.225,0.125,0.125)
步骤4,将信用度评估机制集成到智能合约中,然后IDM部署智能合约;
进一步地,在其中一个实施例中,步骤4所述的将信用度评估机制集成到智能合约中,然后IDM部署智能合约,具体包括:
步骤4-1,根据步骤3得到的信用度各特征以及各特性权重,在智能合约中实现信用度计算方法,并实现其他诸如共享EHR,共享研究报告等接口功能,其具体的参数、结构体,功能函数,合约事件在表1中给出。表1提供了合约的三个部分:第一个是状态变量即永久存储在区块链中的数据;第二个是合约事件,用于通知链外世界对区块链中的事件作出响应;第三个就是合约中涉及到的函数;表一则是对其中的合约状态变量、合约事件、合约函数的具体解释。根据表一的描述,用solidity编写实现相应的功能;
步骤4-2,身份认证机构使用智能合约部署工具truffle将编写好的智能合约部署到POA区块链中。
步骤5,用户进行成员资格身份注册,IDM为用户颁发成员资格公钥和私钥;
进一步地,在其中一个实施例中,步骤5所述用户系统成员资格注册,具体包括:
步骤5-1,用户在本地生成以太坊私钥sk和公钥pk,并产生一个以太坊地址Eth_address;
步骤5-2,用户将真实身份ID和身份证明VID发送给IDM;
步骤5-3,IDM收到用户的身份ID和证明VID后,根据公式(4)计算出用户的成员资格私钥D和成员资格公钥PD;
Figure BDA0002837423240000071
步骤5-4,用户与IDM之后的通信将通过成员资格私钥、步骤1中的系统公共参数以及随机数协商会话的对称密钥。
步骤6,步骤4中通过身份认证的用户,IDM调用智能合约将用户角色等信息存入区块链中;
进一步地,在其中一个实施例中,具体为:IDM将用户的以太坊地址Eth_address、成员资格公钥PD和用户的角色信息作为智能合约节点登记接口函数node_register()的参数,将用户以太坊地址与成员资格公钥的关系和用户信息存储的智能合约相关变量中。
步骤7,患者在医院就诊,医生为患者开电子病历EHR,同时医生需要使用以太坊私钥skd对EHR进行签名得到医生签名sigd。然后,医院将EHR、医生的签名等信息发给患者;
进一步地,在其中一个实施例中,步骤7所述患者就诊,医生对所开EHR签名的具体操作为:医生给患者开具EHR后,使用椭圆曲线ECSDA签名算法和自己的以太坊私钥skd对EHR的hash值进行签名获得签名对{r,s},r和s为私钥通过ECDSA-secp256k1算法推导得出的32字节的x坐标和32字节的y坐标值。再结合以太坊的1字节的版本号v形成最终的签名对{v,r,s}。
步骤8,患者拿到EHR后,患者本地客户端随机生成对称密钥加密EHR,然后患者将加密的EHR和医生签名sigd上传到云端;
步骤9,患者完成步骤7后,云端会返回EHR的存储索引url。随后,患者调用智能合约将EHR的索引url和EHR的其他相关信息共享到区块链中;
进一步地,在其中一个实施例中,步骤9所述患者调用智能合约共享EHR的具体操作为:患者拿到步骤8中云返回的存储EHR的索引url后,将索引url,url的hash值url_hash,患者成员资格公钥PDp,患者加密EHR的对称密钥[smk]pk,EHR的hash值ehr_hash,医生的成员资格公钥PDh和医生的签名sigd作为智能合约共享EHR接口函数contribute_EHR()的参数,将共享EHR关键信息存储到区块链中;
步骤10,患者共享EHR后,调用智能合约设置全局的访问控制策略,为EHR单独设置白名单;
步骤11,当机构研究EHR时发现误诊的EHR,将研究报告上传到云端,云端返回研究报告的索引r_url。机构调用智能合约共享研究报告。
进一步地,在其中一个实施例中,步骤11所述机构共享研究报告,具体包括:
步骤11-1,机构在查看患者电子病历时,发现患者电子病历存在误诊,随后机构可以更正EHR的错误并形成研究报告;
步骤11-2,机构将研究报告上传到云端,云端返回报告存储索引r_url;
步骤11-3,机构将r_url,机构的成员资格公钥PDI作为智能合约接口函数contribute_research()的参数,将共享研究报告的关键信息存储到区块链中;
步骤11-4,智能合约在处理共享研究报告交易时触发投票事件audit_vote(),监听该事件的审计几点链下对研究报告的详细内容进行审核;
步骤11-5,审计节点审核通过后调用智能合约接口函数agree_research()给研究报告投票,当投票达到设定的阈值后,该交易成功完成;
步骤12,机构调用智能合约请求EHR,智能合约触发事件,链外患者、云执行代理重加密,为机构生成解密EHR的密钥;
进一步地,在其中一个实施例中,步骤12所述机构请求EHR,具体包括:
步骤12-1,机构先调用智能合约接口函数request_EHR()获取审计节点的签名sigA,其获取签名的流程为图3的过程,医院需要挑战的POW难题为下式,其中url为请求的EHR的索引,timestamp为挑战时间戳,nounce为一个正整数的随机值;
output=hash{PD||url||timestamp||nounce}
步骤12-2,拿到审计节点的签名后即可调用合约函数request_smk_PD()申请EHR的解密密钥;
步骤12-3,合约触发事件store_smk_PD();
步骤12-4,监听该事件的IDM通知患者生成重加密密钥[K]p-r
步骤12-5,患者将重加密密钥发送到云端,云端执行代理重加密后将解密密钥
Figure BDA0002837423240000081
发给请求者。
上述步骤9,步骤11,步骤12所产生的区块链交易,在智能合约处理过程中会更新医院的信用度属性信息。
本文采用云服务和区块链技术相结合的新模式,然后在区块链智能合约中加入用户信用度评估机制,为患者提供动态可调节的访问控制策略。为了保证患者的隐私安全,本文采用Wu等人[Wu L,Zhang Y,Xie Y,et al.An Efficient and Secure Identity-BasedAuthentication and Key Agreement Protocol with User Anonymity for MobileDevices[J].Wireless Personal Communications,2017,94(4):3371-3387.]的加密技术AKAP,该加密技术适用于移动设备,符合实际应用场景,同时还为用户提供了匿名机制。
实施例
作为一种具体示例,在其中一个实施例中,对本发明进行进一步验证说明。一种基于集成信用度评估智能合约的电子病历安全共享方法,包括以下内容:
(1)首先,系统完成步骤1-4流程,区块链初始化完成,智能合约已经部署完毕。然后,用户注册了以太坊账号后向IDM申请将信息登记到区块链中。在该过程中,IDM利用wu等人的身份认证密钥协商机制AKAP为用户创建成员资格公钥PD和成员资格私钥D。用户身份验证成功后IDM调用合约接口node_register()将用户的信息写入区块链。如果用户是机构,智能合约会初始化机构的信用度属性,属性信息被记录到变量PD_credit[PD]中,然后将机构信息更新到审计节点变量audit_node中。本发明IDM部署的智能合约中变量、事件、函数的详细介绍如表1所示。
(2)患者成功加入区块链后可以调用合约设置访问控制参数,患者调用合约函数set_strategy()创建交易Policy_TXID,合约通过verify_PD()验证患者是否完成节点注册,验证后将患者访问控制策略attr存入合约变量strategy[PD]指向的结构体PD_strategy中。
(3)患者在完成步骤7和8后,得到必要的参数后患者调用合约函数contribute_EHR()创建共享EHR合约交易EHR_TXID。合约内部执行函数verify_PD(),验证患者注册身份,验证通过后,EHR的相关信息存入EHR_share[url_hash]变量中,该变量指向EHR_sharing结构体,同时合约为该EHR初始化白名单url_whitelist[url_hash],将患者的信息以及解密密钥[smk]pk存入该白名单所指向的结构体PD_whitelist中。最后,合约执行内部函数set_url_PD()将患者与EHR的关系记录到变量url_PD[url_hash]中。
(4)患者看病时不可避免存在误诊情况,机构在发现患者共享的EHR存在误诊后,可以进行修改,并将研究报告发送到云端供审计节点审查。随后机构调用合约函数contribute_research()共享研究报告。contribute_research()会触发事件audit_vote(),监听该事件的审计节点链下审核研究报告。审计节点PDA审核通过后调用合约函数agree_research()来增加con_research[r_hash].voteCount的值,重复投票不会增加投票数。Research_TXID中的voteCount需在规定时间set_timestamp内超过预先设定的投票阈值set_threshold。同时链下机构将修改的EHR和对EHR的hash值得签名sigI发送给IDM,IDM转发给患者,患者重复(3)的过程重新共享更正后的EHR,并通过调用correct_new_url()函数将更正后的url存入错误EHR的记录中。
(5)机构想要解密EHR必须先获取申请该EHR的权限,所以机构需要先调用函数request_EHR()获取审计节点的签名sigA,这一步审计节点会利用机构的信用度对机构发起POW挑战即图3中的过程。拿到签名sigA后机构调用合约函数request_smk_PD(),智能合约执行函数verify_PD(),verify_url(),verify_request()验证请求者是否存在违规行为,其中第一个验证函数检测s1违规行为,其余两个验证函数检测s2违规行为。一旦验证出请求者存在违规,就会计算审计节点的共谋概率ηη超过阈值则会触发事件collusion()通知IDM,IDM链下给与共谋双方惩罚。通过验证函数和患者访问控制策略strategy[PDp]后,合约触发事件store_smk_PD(),IDM通知患者生成重加密密钥[K]p-r,患者将重加密密钥发送到云端,云端执行代理重加密后将解密密钥[smk]pkr发给请求者。
(6)在智能合约中我们提供了机构信用度属性的实时更新和计算。共识节点生成新区块时,智能合约在处理(3)(4)(5)中的这些交易时会自动更新交易中相关机构PDI的信用度属性信息即图2中所示的特征属性。具体如下:
1)共识节点挖到新的区块new_blockId
2)如果是(3)中的交易,则PD_credit[PDI].EHR_counts++
3)如果是(4)中的交易,则PD_credit[PDIa].research_counts++,PD_credit[PDIa].correct_counts++,PD_credit[PDIb].error_counts++。(其中PDIa表示贡献研究报告的机构,PDIb表示给患者诊断错误的机构)
4)如果是(5)中的交易,则PD_credit[PDIc].requested_counts++,PD_credit[PDId].audit_counts++。(其中PDIc表示EHR出自哪家机构,PDId表示请求EHR交易中的审计节点)
5)如果交易中出现违规行为,若是图2中的s1违规行为,则合约会执行函数punish_s1(PDI),PD_credit[PDI].s1_counts++,PD_credit[PDI].s1_blocknmb更新为当前区块号,调用函数caculate_credit(PDI)将机构违规时的信用度记录到PD_credit[PDI].credit中。若是图2中的s2违规行为,则合约调用函数punish_s2(PDI),PD_credit[PDI].s2_counts++,PD_credit[PDI].s2_blocknmb更新为当前区块号,调用函数caculate_credit(PDI)将机构违规时的信用度记录到PD_credit[PDI].credit中。
由上述实施例可知本发明具有简单、轻量的特点,能保护数据共享者的隐私安全、同时为数据共享者提供了可信的共享环境和动态的访问控制策略接口,具有良好的应用价值。
Figure BDA0002837423240000111
Figure BDA0002837423240000121
Figure BDA0002837423240000131
表1

Claims (7)

1.一种基于集成信用度评估智能合约的电子病历安全共享方法,其特征在于,包括以下步骤:
步骤1,身份认证机构建立系统公共参数,提供安全通信信道;
步骤2,部署以太坊客户端,初始化POA区块链,初始化共识节点;
步骤3,建立信用度评估机制;
步骤4,将信用度评估机制集成到智能合约中,身份认证机构部署智能合约;
步骤5,用户进行成员资格身份注册,身份认证机构为用户颁发成员资格公钥和私钥;
步骤6,通过身份认证的用户,身份认证机构调用智能合约将用户信息存入区块链中;
步骤7,医生为患者开电子病历,同时医生使用以太坊私钥skd对电子病历进行签名;医院将电子病历、医生的签名信息发送给患者;
步骤8,患者本地客户端随机生成对称密钥加密电子病历,并将加密的电子病历和医生签名上传到云端;
步骤9,患者调用智能合约将电子病历的索引共享到区块链中;
步骤10,调用智能合约设置全局的访问控制策略,并为电子病历单独设置白名单;
步骤11,当机构研究发现误诊的电子病历时,将研究报告上传到云端,云端返回研究报告的索引,机构调用智能合约共享研究报告;
步骤12,机构调用智能合约请求电子病历,智能合约触发事件,链外患者、云执行代理重加密,为机构生成解密电子病历的密钥。
2.根据权利要求1所述的基于集成信用度评估智能合约的电子病历安全共享方法,其特征在于,步骤1所述的建立系统公共参数具体包括:
步骤1-1,身份认证机构选择一个椭圆曲线EP(a,b)以及一个素数n,设置EP(a,b)的基为P;
步骤1-2,身份认证机构选择阶为素数q的乘法循环群G,选择5个hash函数h1:G→Zq,h2:{0,1}*×{0,1}*×G×G→Zq,h3:{0,1}*×{0,1}*×{0,1}*×G→Zq,h4:{0,1}*×G×G×{0,1}*×{0,1}*,h5:{0,1}*×G×{0,1}*×{0,1}*×{0,1}*
步骤1-3,身份认证机构选择
Figure FDA0002837423230000011
作为其私钥,并设置ppub=s·P作为身份认证机构的公钥;将{EP(a,b),n,P,h1,h2,h3,h4,h5,ppub}作为系统的公共参数。
3.根据权利要求1所述的基于集成信用度评估智能合约的电子病历安全共享方法,其特征在于,步骤2所述的区块链初始化过程为包括:
步骤2-1,身份认证机构本地生成以太坊公钥和私钥;
步骤2-2,身份认证机构利用以太坊客户端以太坊客户端创建POA共识区块链的创世块;
步骤2-3,身份认证机构开启以太坊客户端,利用创世块初始化区块链,并开始挖矿。
4.根据权利要求1所述的基于集成信用度评估智能合约的电子病历安全共享方法,其特征在于,步骤3所述的建立信用度评估机制,具体包括:
步骤3-1,根据模糊层次分析法将医院信用度划分为多层次结构;
步骤3-2,将同一层次的特征两两进行比较,获得初始判断矩阵;
步骤3-3,将初始判断矩阵转换为模糊判断一致矩阵,确定各特征的权重。
5.根据权利要求4所述的基于集成信用度评估智能合约的电子病历安全共享方法,其特征在于,确定各特征的权重的具体公式为:
Figure FDA0002837423230000021
式中,v为某特性下特征的个数,qik为模糊判断一致矩阵Q中的元素。
6.根据权利要求1所述的基于集成信用度评估智能合约的电子病历安全共享方法,其特征在于,身份认证机构为用户颁发成员资格公钥PD和成员资格私钥D分别为:
Figure FDA0002837423230000022
PD=D·P
式中,ID为用户真实身份信息,VID为用户真实身份的证明信息。
7.根据权利要求1所述的基于集成信用度评估智能合约的电子病历安全共享方法,其特征在于,步骤11所述机构共享研究报告,具体包括:
步骤11-1,机构在查看患者电子病历时,发现患者电子病历时存在误诊,机构更正电子病历时的错误并形成研究报告;
步骤11-2,机构将研究报告上传到云端,云端返回报告存储索引;
步骤11-3,机构将报告存储索引、机构的成员资格公钥作为智能合约接口函数contribute_research()的参数,将共享研究报告信息存储到区块链中;
步骤11-4,智能合约在处理共享研究报告交易时触发投票事件,监听该事件的审计几点链下对研究报告的详细内容进行审核;
步骤11-5,审计节点审核通过后调用智能合约接口函数给研究报告投票,当投票达到设定的阈值后,该交易成功完成。
CN202011476472.6A 2020-12-15 2020-12-15 基于集成信用度评估智能合约的电子病历安全共享方法 Pending CN112768018A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011476472.6A CN112768018A (zh) 2020-12-15 2020-12-15 基于集成信用度评估智能合约的电子病历安全共享方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011476472.6A CN112768018A (zh) 2020-12-15 2020-12-15 基于集成信用度评估智能合约的电子病历安全共享方法

Publications (1)

Publication Number Publication Date
CN112768018A true CN112768018A (zh) 2021-05-07

Family

ID=75693893

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011476472.6A Pending CN112768018A (zh) 2020-12-15 2020-12-15 基于集成信用度评估智能合约的电子病历安全共享方法

Country Status (1)

Country Link
CN (1) CN112768018A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113990429A (zh) * 2021-12-29 2022-01-28 医典云(南京)数据科技有限公司 一种电子病历数据保护方法及装置
CN114329526A (zh) * 2021-12-17 2022-04-12 重庆邮电大学 一种基于区块链和用户信用度的数据共享访问控制方法

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101702804A (zh) * 2009-11-23 2010-05-05 西安电子科技大学 基于自认证公钥的两方密钥协商方法
CN105978906A (zh) * 2016-07-01 2016-09-28 中国人民解放军国防科学技术大学 一种基于身份的通信握手协议
CN106060070A (zh) * 2016-07-01 2016-10-26 中国人民解放军国防科学技术大学 基于身份密码系统的tls握手协议
CN106209369A (zh) * 2016-07-01 2016-12-07 中国人民解放军国防科学技术大学 基于身份密码系统的单交互认证密钥协商协议
CN106953727A (zh) * 2017-03-13 2017-07-14 南京邮电大学 D2d通信中基于无证书的组安全认证方法
CN109936569A (zh) * 2019-02-21 2019-06-25 领信智链(北京)科技有限公司 一种基于以太坊区块链的去中心化数字身份登录管理系统
CN110879897A (zh) * 2019-12-03 2020-03-13 广东电网有限责任公司 一种基于区块链的电力数据安全保护方法
CN110971401A (zh) * 2019-11-19 2020-04-07 武汉大学 一种基于交叉互锁机制的认证密钥协商方法及其实施装置
CN111428211A (zh) * 2020-03-20 2020-07-17 浙江传媒学院 面向联盟区块链的视频作品多因子确权溯源的存证方法
CN111817855A (zh) * 2020-06-10 2020-10-23 北京航空航天大学 基于以太坊区块链的电子投票方法及系统
CN111988276A (zh) * 2020-07-16 2020-11-24 山东爱城市网信息技术有限公司 一种基于PoA共识的实名制方法

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101702804A (zh) * 2009-11-23 2010-05-05 西安电子科技大学 基于自认证公钥的两方密钥协商方法
CN105978906A (zh) * 2016-07-01 2016-09-28 中国人民解放军国防科学技术大学 一种基于身份的通信握手协议
CN106060070A (zh) * 2016-07-01 2016-10-26 中国人民解放军国防科学技术大学 基于身份密码系统的tls握手协议
CN106209369A (zh) * 2016-07-01 2016-12-07 中国人民解放军国防科学技术大学 基于身份密码系统的单交互认证密钥协商协议
CN106953727A (zh) * 2017-03-13 2017-07-14 南京邮电大学 D2d通信中基于无证书的组安全认证方法
CN109936569A (zh) * 2019-02-21 2019-06-25 领信智链(北京)科技有限公司 一种基于以太坊区块链的去中心化数字身份登录管理系统
CN110971401A (zh) * 2019-11-19 2020-04-07 武汉大学 一种基于交叉互锁机制的认证密钥协商方法及其实施装置
CN110879897A (zh) * 2019-12-03 2020-03-13 广东电网有限责任公司 一种基于区块链的电力数据安全保护方法
CN111428211A (zh) * 2020-03-20 2020-07-17 浙江传媒学院 面向联盟区块链的视频作品多因子确权溯源的存证方法
CN111817855A (zh) * 2020-06-10 2020-10-23 北京航空航天大学 基于以太坊区块链的电子投票方法及系统
CN111988276A (zh) * 2020-07-16 2020-11-24 山东爱城市网信息技术有限公司 一种基于PoA共识的实名制方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
张乐君等: ""基于集成信用度评估智能合约的安全数据共享模型"", 《自动化学报》, 10 December 2020 (2020-12-10), pages 1 - 4 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114329526A (zh) * 2021-12-17 2022-04-12 重庆邮电大学 一种基于区块链和用户信用度的数据共享访问控制方法
CN114329526B (zh) * 2021-12-17 2024-03-26 重庆邮电大学 一种基于区块链和用户信用度的数据共享访问控制方法
CN113990429A (zh) * 2021-12-29 2022-01-28 医典云(南京)数据科技有限公司 一种电子病历数据保护方法及装置
CN113990429B (zh) * 2021-12-29 2022-03-15 医典云(南京)数据科技有限公司 一种电子病历数据保护方法及装置

Similar Documents

Publication Publication Date Title
De Oliveira et al. Towards a blockchain-based secure electronic medical record for healthcare applications
CN110321721B (zh) 基于区块链的电子病历访问控制方法
TWI718585B (zh) 使用同態加密的區塊鏈資料保護
TWI695613B (zh) 使用同態加密的區塊鏈資料保護
Zhang et al. An efficient blockchain-based hierarchical data sharing for Healthcare Internet of Things
CN111986755B (zh) 一种基于区块链和属性基加密的数据共享系统
WO2016106752A1 (zh) 一种共享数据的访问控制方法、装置及系统
CN114254386B (zh) 基于层次聚合和区块链的联邦学习隐私保护系统及方法
US9698974B2 (en) Method for creating asymmetrical cryptographic key pairs
CN103391192B (zh) 一种基于隐私保护的跨安全域访问控制系统及其控制方法
CN107423637B (zh) 支持云上电子病历数据可追踪的完整性审计方法
Wazid et al. BUAKA-CS: Blockchain-enabled user authentication and key agreement scheme for crowdsourcing system
Tang et al. A secure and trustworthy medical record sharing scheme based on searchable encryption and blockchain
CN110750541B (zh) 一种基于区块链的数据存储索引系统及方法
CN112511599B (zh) 一种基于区块链的人防数据共享系统及方法
CN114357492A (zh) 一种基于区块链的医疗数据隐私融合方法及装置
WO2022068358A1 (zh) 基于信息的属性生成密钥的加密方法、装置及设备
CN112768018A (zh) 基于集成信用度评估智能合约的电子病历安全共享方法
Sun et al. MedRSS: A blockchain-based scheme for secure storage and sharing of medical records
Shi et al. A Blockchain‐Based User Authentication Scheme with Access Control for Telehealth Systems
Yang et al. An access control model based on blockchain master-sidechain collaboration
Xie et al. A novel blockchain-based and proxy-oriented public audit scheme for low performance terminal devices
Alsaeed et al. A scalable and lightweight group authentication framework for Internet of Medical Things using integrated blockchain and fog computing
Faroug et al. Blockchain-based solutions for effective and secure management of electronic health records
Thilagavathy et al. A novel framework paradigm for EMR management cloud system authentication using blockchain security network

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