CN113764058A - 一种信息查询方法、装置、设备及存储介质 - Google Patents

一种信息查询方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN113764058A
CN113764058A CN202010967507.XA CN202010967507A CN113764058A CN 113764058 A CN113764058 A CN 113764058A CN 202010967507 A CN202010967507 A CN 202010967507A CN 113764058 A CN113764058 A CN 113764058A
Authority
CN
China
Prior art keywords
information
health information
inquiry
request
query
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
CN202010967507.XA
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.)
Beijing Jingdong Shangke Information Technology Co Ltd
Beijing Wodong Tianjun Information Technology Co Ltd
Original Assignee
Beijing Jingdong Shangke Information Technology Co Ltd
Beijing Wodong Tianjun Information Technology Co Ltd
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 Beijing Jingdong Shangke Information Technology Co Ltd, Beijing Wodong Tianjun Information Technology Co Ltd filed Critical Beijing Jingdong Shangke Information Technology Co Ltd
Priority to CN202010967507.XA priority Critical patent/CN113764058A/zh
Publication of CN113764058A publication Critical patent/CN113764058A/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
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2471Distributed queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Epidemiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Primary Health Care (AREA)
  • Public Health (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例公开了一种信息查询方法、装置、设备及存储介质,所述方法应用于区块链节点,包括:获取健康信息查询请求;调用查询控制智能合约执行所述健康信息查询请求,确定所述健康信息查询请求的健康信息查询地址;将所述健康信息查询地址反馈至信息查询方,以使所述信息查询方根据所述健康信息查询地址获取所述健康信息查询请求对应的目标健康信息。本发明实施例提供的方法通过根据预先设置的查询控制智能合约进行健康信息查询请求的响应,实现了对电子健康记录的访问的有效控制。

Description

一种信息查询方法、装置、设备及存储介质
技术领域
本发明实施例涉及计算机技术领域,尤其涉及一种信息查询方法、装置、设备及存储介质。
背景技术
随着数字化设备的普及,患者的电子健康记录(electronic health record,EHR)数据可以从更多来源进行收集,如可穿戴设备、智能传感器、医疗影像设备等。有报道称,EHR数据量将以每年48%的速度持续增长,在2020年将达到2314ZB。在实现本发明的过程中,发明人发现现有技术中至少存在以下技术问题:由于数据违规操作而导致的医疗记录曝光事件时有发生,因此,保护EHR数据的安全已经成为电子医疗领域一个举足轻重的问题。虽然加密技术解决了EHR的一些基本安全问题和隐私问题,但由于EHR数据的高度分布式和碎片化,以及数据所有方和数据使用者之间复杂的关系,数据的管理,尤其是访问控制难以有效执行。由此可见,如何实现EHR数据访问的有效控制是一个亟待解决的技术问题。
发明内容
本发明实施例提供了一种信息查询方法、装置、设备及存储介质,以实现对电子健康记录的访问的有效控制。
第一方面,本发明实施例提供了一种信息查询方法,应用于区块链节点,包括:
获取健康信息查询请求;
调用查询控制智能合约执行健康信息查询请求,确定健康信息查询请求的健康信息查询地址;
将健康信息查询地址反馈至的信息查询方,以使信息查询方根据健康信息查询地址获取健康信息查询请求对应的目标健康信息。
第二方面,本发明实施例还提供了一种信息查询装置,配置于区块链节点,包括:
查询请求获取模块,用于获取健康信息查询请求;
查询地址获取模块,用于调用查询控制智能合约执行健康信息查询请求,确定健康信息查询请求的健康信息查询地址;
地址信息反馈模块,用于将健康信息查询地址反馈至信息查询方,以使信息查询方根据健康信息查询地址获取健康信息查询请求对应的目标健康信息。
第三方面,本发明实施例还提供了一种计算机设备,设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如本发明任意实施例所提供的信息查询方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明任意实施例所提供的信息查询方法。
本发明实施例通过区块链节点获取健康信息查询请求;调用查询控制智能合约执行健康信息查询请求,确定健康信息查询请求的健康信息查询地址;将健康信息查询地址反馈至信息查询方,以使信息查询方根据健康信息查询地址获取健康信息查询请求对应的目标健康信息,通过区块链节点根据预先设置的查询控制智能合约进行健康信息查询请求的响应,实现了对电子健康记录的访问的有效控制。
附图说明
图1是本发明实施例一所提供的一种信息查询方法的流程图;
图2是本发明实施例二所提供的一种信息查询方法的流程图;
图3a是本发明实施例三所提供的一种信息查询系统的架构图;
图3b是本发明实施例三所提供的一种访问控制策略的参考架构和处理模型示意图;
图3c是本发明实施例三所提供的一种信息查询系统的访问控制工作流程示意图;
图3d是本发明实施例三所提供的一种基于区块链的基础设施示意图;
图4是本发明实施例四所提供的一种信息查询装置的结构示意图;
图5是本发明实施例五所提供的一种计算机设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
为了清楚地介绍本发明各实施例的技术方案,首先对执行信息查询的系统进行说明。在本实施例中,信息查询系统可以包括区块链系统数据所有方和信息查询方。其中,数据所有方用于向区块链网络发布存储或查询事务请求(如信息存储请求、信息获取请求等)以使信息存储至区块链系统所维护的区块链中,或从区块链系统所维护的区块链中获取信息;或设置其信息的访问权限;信息查询方用于向区块链网络发布查询事务请求(如信息获取请求等),以从区块链系统所维护的区块链中获取信息。其中,数据所有方或信息查询方所使用的设备为安装有接入区块链系统的客户端的电子设备,可以是智能手机、笔记本等移动终端,还可以是台式机、个人电脑等固定终端。区块链系统可以是以太坊或EOS(Enterprise Operation System,商用操作系统)等区块链平台。可选的,可以采用Hyperledger Fabric区块链平台。
图1是本发明实施例一所提供的一种信息查询方法的流程图。本实施例可适用于查询区块链中隐私信息时的情形,尤其适用于查询电子健康记录时的情形。该方法可以由信息查询装置执行,该信息查询装置可以采用软件和/或硬件的方式实现,例如,该信息查询装置可配置于计算机设备中。如图1所示,所述方法包括:
S110、获取健康信息查询请求。
在本实施例中,健康信息查询请求可以为数据所有方或信息查询方发起的,用户查询目标健康信息的请求。示例性的,患者或医护人员通过区块链系统客户端发起信息查询操作,区块链系统客户端接收到患者或医护人员的信息查询操作后,生成相应的健康信息查询请求发送至区块链节点,区块链节点接收健康信息查询请求,并调用相应的智能合约响应该健康信息查询请求。
可选的,目标健康信息可以为查询对象的电子病历(Electronic MedicalRecord,EMR)、健康测量信息等。其中,EMR可以理解为医疗机构以电子化方式创建、保存和使用的,重点针对门诊、住院患者(或保健对象)临床诊疗和指导干预信息的医疗数据,是居民个人在医疗机构历次就诊过程中产生和被记录的完整、详细的临床信息。健康测量信息可以为智能可穿戴式传感器测量的生理信息,如血压传感器测量的血压信息、气流传感器测量的呼吸信息、心电图传感器测量的心电图信息、肌电图传感器测量的肌电信息、鼾声传感器测量的声音信息、体位传感器测量的体位信息、皮肤反应传感器测量的皮肤信息等。
S120、调用查询控制智能合约执行健康信息查询请求,确定健康信息查询请求的健康信息查询地址。
在本实施例中,通过查询控制智能合约对电子健康记录的访问进行控制。可选的,查询控制智能合约可以基于属性进行访问控制。一个实施例中,查询控制合约可以使用基于属性的访问控制策略语言编写,其原理为可扩展访问控制标记语言(Extensible AccessControl Markup Language,XACML),XACML可以根据访问策略中定义的规则来评估访问请求。但是XACML的设计模式比较繁琐,语法复杂,开发人员进行XACML脚本的编写和读取难度较大。为简化开发难度,可以使用授权缩略语言(Abbreviated Language ForAuthorization,ALFA)编写查询控制合约,ALFA可以指定访问控制策略,并直接映射到XACML结构中。ALFA包含与XACML定义的元素相同,并继承了XACML的整体结构和概念。因此,可以使用ALFA来执行查询控制合约中基于属性的访问控制策略。
在上述方案的基础上,调用查询控制智能合约执行健康信息查询请求,确定健康信息查询请求的健康信息查询地址,包括:根据健康信息查询请求生成授权缩略语言形式的权限查询请求;根据权限查询请求确定信息查询方是否具备查询权限,并在信息查询方具备查询权限时,基于健康信息查询请求的目标信息标识关联的目标信息存储路径确定健康信息查询地址。优选的,使用授权缩略语言执行查询控制合约中基于属性的访问控制策略,以简化开发难度。具体的,首先将健康信息查询请求转化为ALFA的权限查询请求,根据预先设定的访问权限判断逻辑判断权限查询请求对应的信息查询方是否具备查询权限,当信息查询方具备查询权限时,获取健康信息查询请求的目标信息标识关联的目标信息存储路径,基于获取的目标信息存储路径确定健康信息查询地址。可选的,健康信息查询地址可以为目标健康信息的统一资源定位符。
一个实施例中,根据权限查询请求判断信息查询方是否具备查询权限,包括:根据权限查询请求确定查询发起方和查询目标方,调用查询目标方对应的访问控制列表判断查询发起方是否具备查询权限。可选的,针对每个数据所有方,数据所有方可以设置能够访问其电子健康记录的访问列表。在判断信息查询方是否具备查询权限时,可以获取权限查询请求对应的查询目标方的目标用户标识,获取目标用户标识对应的访问控制列表,当查询发起方满足访问控制列表的访问条件时,判定信息查询方具备查询权限;否则,判定信息查询方不具备查询权限。其中,访问控制列表的访问条件可以为可以访问电子健康记录的用户标识或用户属性。
在上述方案的基础上,还包括:响应于检测到的访问控制列表设置请求,确定访问控制列表设置请求关联的设置用户标识及设置访问控制列表,并将设置用户标识和设置访问控制列表上链存储。可选的,为保证数据所有方的电子健康记录的隐私性,数据所有方可以设置可访问其电子健康记录的访问控制列表,并将访问控制列表上链存储,以在接收到健康信息查询请求时,调用存储的访问控制列表判断健康信息查询请求的任务发起者是否具备访问权限。
一个实施例中,目标信息存储路径包括至少一个目标一次性自毁地址,基于健康信息查询请求的目标信息标识关联的目标信息存储路径确定健康信息查询地址,包括:获取目标信息存储路径中的一个目标一次性自毁地址作为健康信息查询地址。可选的,为了避免恶意用户通过健康信息查询地址获取电子健康记录,可以使用目标一次性自毁地址作为健康信息查询地址,使得任务发起者根据接收到的目标一次性自毁地址获得目标健康信息后,该地址无法再次使用,保证了电子健康记录的安全性。可选的,目标一次性自毁地址可以为目标一次性自毁统一资源定位符。
在上述方案的基础上,还包括:响应于检测到的健康信息存储请求,将健康信息存储请求关联的存储健康信息上链存储,并基于存储健康信息的原始存储地址生成至少一个存储一次性自毁地址;将至少一个存储一次性自毁地址作为存储健康信息的存储信息存储路径,并将存储信息存储路径与存储健康信息的存储信息标识关联存储至区块链网络中。可选的,可以在将健康信息进行存储后,基于健康信息的存储地址生成存储一次性自毁地址,将生成的存储一次性自毁地址作为存储信息存储路径与信息标识关联存储至区块链网络中。当接收到信息查询请求时,将存储信息存储路径中的存储一次性自毁地址作为健康信息查询地址。优选的,为了增加信息可查询的次数,可以生成多个存储一次性自毁地址作为信息存储路径。
S130、将健康信息查询地址反馈至信息查询方,以使信息查询方根据健康信息查询地址获取健康信息查询请求对应的目标健康信息。
在本实施例中,获得健康信息查询地址后,将健康信息查询地址作为健康信息查询请求对应的响应信息反馈至健康信息查询请求对应的信息查询方,使信息查询方根据健康信息查询地址再次从区块链网络中获取目标健康信息。
本发明实施例通过区块链节点获取健康信息查询请求;调用查询控制智能合约执行健康信息查询请求,确定健康信息查询请求对应的健康信息查询地址;将健康信息查询地址反馈至信息查询方,以使信息查询方根据健康信息查询地址获取健康信息查询请求对应的目标健康信息,通过区块链节点根据预先布置的查询控制智能合约进行健康信息查询请求的响应,实现了对电子健康记录的访问的有效控制。
实施例二
图2是本发明实施例二所提供的一种信息查询方法的流程图。本实施例在上述方案的基础上,进行了进一步优化。如图2所示,所述方法包括:
S210、获取健康信息查询请求。
S220、调用查询控制智能合约执行健康信息查询请求,确定健康信息查询请求的健康信息查询地址。
S230、将健康信息查询地址反馈至信息查询方。
S240、获取信息访问请求,信息访问请求由信息查询方根据目标查询信息生成。
在信息查询方接收到健康信息查询地址后,根据健康信息查询地址生成信息访问请求并发送至区块链网络,区块链节点根据接收到的信息访问请求获取目标健康信息。
S250、获取信息访问请求对应的目标健康信息,将目标健康信息反馈至信息查询方。
在本实施例中,区块链节点根据信息访问请求中包含的地址获取目标健康信息,将目标健康信息作为信息访问请求对应的响应信息反馈至信息访问请求对应的信息查询方,完成电子健康记录信息的查询。
需要说明的是,将健康信息查询地址反馈至信息查询方的区块链节点与将目标健康信息反馈至信息查询方的区块链节点可以为相同的区块链节点,也可以为不同的区块链节点。可以理解的是,将健康信息查询地址反馈至信息查询方的区块链节点与将目标健康信息反馈至信息查询方的区块链节点均可调用查询控制智能合约,但将健康信息查询地址反馈至信息查询方的区块链节点中可能未存储健康信息,而将目标健康信息反馈至信息查询方的区块链节点中存储有健康信息。
在本发明的一种实施方式中,在将目标健康信息反馈至信息查询方之前,还包括:获取目标健康信息关联的哈希摘要;相应的,将目标健康信息反馈至信息查询方,包括:将目标健康信息和哈希摘要反馈至信息查询方,以使信息查询方根据哈希摘要判断目标健康信息是否被篡改。可选的,为了保证查询到的目标健康信息的准确性,可以在数据所有方将电子健康记录上链存储时,根据上链存储的信息生成哈希摘要,并在接收到信息访问请求后,将目标健康信息对应的哈希摘要与目标健康信息一同反馈至信息查询方。信息查询方可以根据接收到的目标健康信息的当前哈希摘要和接收到的哈希摘要是否一致判断目标健康信息是否被篡改。可以理解的是,当目标健康信息的当前哈希摘要和接收到的哈希摘要一致时,可判定目标健康信息未被篡改;当目标健康信息的当前哈希摘要和接收到的哈希摘要不一致时,可判定目标健康信息被篡改。
本发明实施例通过获取信息访问请求,获取信息访问请求对应的目标健康信息,将目标健康信息作为信息访问请求对应的响应信息反馈至信息访问请求对应的信息查询方,完成了目标健康信息的查询操作,实现了对电子健康记录访问的有效控制。
实施例三
本实施例在上述实施例的基础上,提供了一种优选实施例。
本发明实施例提供的信息查询方法可以由信息查询系统执行。图3a是本发明实施例三所提供的一种信息查询系统的架构图。如图3a所示,信息查询系统利用区块链和边缘节点来对EHR数据实施基于属性的访问控制。其中,边缘节点是存储EHR数据并施加基于属性的访问控制策略的计算和存储设备。
整体来说,利用Hyperledger Fabric区块链执行使用了访问控制列表(AccessControl Lists,ACL)编程的智能合约,实现对EHR数据执行基于身份的访问控制,并将所有的访问事件记录到区块链中,以实现责任的可追溯性。在协作过程中,由边缘节点存储EHR数据,并进一步执行基于属性的数据访问控制,其策略指定在缩写授权语言(AbbreviatedLanguage For Authorization,ALFA)中。此外,使用哈希摘要来保护存储在边缘节点中的EHR数据的完整性,从而检测EHR的任何改动。此外,在智能合约中使用一次性自毁URL,该URL包含边缘节点上的EHR数据地址,在成功执行ACL访问策略后,这些URL将被返回给医疗服务提供者,然后医疗服务提供者就可以使用这些URL来访问边缘节点上的EHR数据。因此,只有通过边缘节点上的基于属性的访问控制的合格用户才能访问EHR数据。
可选的,信息查询系统包含如下实体:患者:患者是拥有要访问的EHR数据的实体。患者可以指定其拥有的EHR数据的访问策略;医疗传感器/成像设备:医疗传感器是收集患者的EHR数据,并将其发送至边缘节点的医疗设备。成像设备可能包括X光扫描、CT扫描、MRI、超声等设备,这些设备会从患者身上生成EHR数据;医护人员:医护人员(如医生和护士)是需要访问患者拥有的EHR数据的实体。医护人员会主动向患者寻求访问授权。EHR数据:EHR数据是患者所拥有的信息,可以被授权的医护人员访问;边缘节点:边缘节点是存储EHR数据并施加基于属性的访问控制策略的计算和存储设备。区块链:区块链作为架构的控制器,管理访问控制策略,并记录防篡改访问日志。
其中,边缘节点使用了基于属性的访问控制策略语言,其原理为可扩展访问控制标记语言(Extensible Access Control Markup Language,XACML),XACML可以根据访问策略中定义的规则来评估访问请求。图3b是本发明实施例三所提供的一种访问控制策略的参考架构和处理模型示意图。图3b中,策略执行点(Policy Enforcement Point,PEP)检查用户的访问请求,将请求转化为XACML授权请求,并将其转发给策略决策点(Policy DecisionPoint,PDP),以获得访问决策(如许可或拒绝),并根据收到的决策采取行动。策略管理点(Policy Administration Point,PAP)负责管理访问控制策略。PDP根据其配置的策略评估传入的请求,并返回访问决策。PDP也可以使用策略信息点(Policy Information Point,PIP)来检索属性值。PIP连接PDP来检索外部属性值来源(如资源、主体、环境)。
但是,由于XACML的设计模式比较繁琐,语法复杂,开发难度较大。因此,可以使用授权缩略语言(Abbreviated Language For Authorization,ALFA),ALFA可以指定访问控制策略,并直接映射到XACML结构中。ALFA包含与XACML定义的元素相同,并继承了XACML的整体结构和概念。ALFA的主要组成部分是:属性、目标、条件、规则、策略和职责。可以使用ALFA来执行存储在边缘节点的EHR数据的基于属性的访问控制策略。利用ALFA的上述组件,可以根据数据所有方的规范,对EHR数据强制执行各种访问控制策略,提供一个全面的决策过程。
图3a中的医疗传感器可以为智能可穿戴式传感器。智能可穿戴式传感器技术的进步使得EHR系统能够收集患者的生物计量数据。目前广泛使用的传感器包括血压传感器、气流传感器、心电图传感器、肌电图传感器、鼾声传感器、体位传感器、体位传感器、皮肤反应传感器等,这些传感器可以通过数据收集平台利用WiFi直接将EHR数据上传到边缘节点,或者通过蓝牙将EHR数据传输到患者的智能手机上,由智能手机将EHR上传到边缘节点。
图3c是本发明实施例三所提供的一种信息查询系统的访问控制工作流程示意图。如图3c所示,智能传感器和成像设备从患者身上采集EHR数据,并上传到边缘节点。接下来,边缘节点应用基于属性的访问控制策略强制执行EHR数据的访问权限,并返回给患者一个包含边缘节点上EHR地址的一次性自毁网址。第三步,该患者将在Hyperledger Fabric区块链上注册,并定义访问控制列表(Access Control List,ACL)策略,声明医护人员的访问权限。接下来,医生/护士可以通过智能合约发送访问请求,医生/护士会根据访问控制列表策略检查身份信息。如果满足条件,智能合约会找到单独存储EHR数据的边缘节点,并返回相应的URL地址。最后,医生或护士只要满足对EHR数据执行基于属性的访问控制策略的要求,就可以获得对EHR数据的访问权限。需要说明的是,图3c中的“区块链(HER访问日志)”为可以调用智能合约的区块链节点,“边缘节点”为存储有健康信息,且可以调用智能合约的区块链节点。因此,图3c中的“区块链(HER访问日志)”与“边缘节点”可能为同一个节点,也可能为不同的节点。
上述过程中对电子健康记录的访问控制主要基于访问控制列表的智能合约。先对智能合约的实现进行说明。在本实施例中,使用Hyperledger Fabric实现一个基于区块链的基础设施。图3d是本发明实施例三所提供的一种基于区块链的基础设施示意图。如图3d所示,该基础设施包含四个可编程部分。第一部分是在模型文件(.cto)中定义网络功能,其中包括参与者、URL地址、交易和访问控制日志。第二部分是在脚本文件(.js)中编写智能合约,其中包含交易处理功能。第三部分是在访问控制文件(.acl)中为不同的参与者定义ACL规则。最后,在Query File(.qry)中定义数据库查询。
可以理解的是,在本实施例中,参与者代表患者和医生。患者的EHR地址作为个人资产保存在区块链网络中。可以理解为,患者和EHR资产具有一对一的配对关系,都是通过患者标识来识别。经ACL授权,医生可以检索患者的EHR地址,而患者只允许检索自己的EHR地址。检索功能被定义为智能合约中的交易过程,由提交请求的参与者调用。最后,所有的历史检索事件都被保存为区块链网络上不可更改、可溯源的EHR访问控制日志。
在边缘节点从患者处收集EHR数据后,患者可以对其EHR数据执行ACL策略。通过定义ACL策略,可以确定哪些用户被允许读取、写入和更新哪些数据。当ACL策略在区块链网络中可用时,医生或护士等数据用户可以向患者发送访问请求,获得访问许可,并接收存储在边缘节点中的实际EHR数据的URL地址。
可选的,一个ACL策略的定义包括主题、操作、目标、条件、动作等组件。其中,主题:定义了ACL过程中涉及的人或实体。操作:表示该规则所管辖的操作。在本实施例中,支持三种操作:READ、WRITE和UPDATE。目标:定义了ACL规则所适用的对象,它可以是一个单一的EHR数据文档,也可以是一个复杂的EHR数据联合体。条件:是一个覆盖多个变量的“与”门策略表达式,同时包括if(...)条件表达式,用于ACL规则的复杂条件。动作:表示ACL规则的最终操作,必须是ALLOW或DENY。可选的,可以定义两种类型的ACL规则:非条件规则和条件规则。非条件规则用于控制对特定参与者群体的访问策略。相比之下,条件型ACL规则可以使用各种“与”门表达式来实现访问控制策略,并返回动作结果上的布尔结果。
在上述方案的基础上,可以通过哈希摘要检测电子健康记录是否被篡改。当边缘节点向患者发送URL结果时,可以包括EHR数据的哈希摘要结果。哈希摘要结果包含一个由单向散列公式创建的字符串,可以保护EHR数据的完整性,并检测数据任意部分的改动。通过比较哈希摘要的结果,患者或医护人员可以判断电子健康记录仪数据是否有任何更改。如果EHR数据被修改了,散列算法的结果与原始数据不同。该哈希摘要还会同步存储到区块链中。当恶意用户试图篡改EHR数据时,新生成的哈希摘要与存储在区块链中的原始哈希摘要不同,可立即发现EHR数据被攻击。
另外,还可以通过一次性自毁统一资源定位系统(uniform resource locator,URL)保证电子健康记录被泄露。示例性的,医护人员向区块链网络发送访问请求后,强制执行的ACL策略会对医生提供的信息进行检查。如果身份信息满足ACL策略,患者和医生之间执行的智能合约会将访问记录保存到区块链网络中,并返回一个指向EHR数据地址的一次性自毁URL。可选的,可以使用https://1ty.me/来包含存储在边缘节点中的EHR数据地址。https://1ty.me/使用HTTPS协议,将EHR数据地址信息进行加密,解密地址的密钥是包含在URL中的部分数据。这个生成的URL不存储在其服务器中,因此,只有有效的、一次性的URL链接才能显示和解密地址信息。地址信息一旦被查看,加密的信息就会被从系统中删除,URL链接也会消失,无法再次访问。
可以理解的是,患者或医护人员需要通过在区块链上注册,获得唯一标识才能在信息查询系统中进行信息存储、查询等操作。在没有医护人员完整注册信息的情况下,恶意用户无法冒充医护人员身份来请求EHR数据。如果用户试图通过恶意攻击获取信息,系统可以将该账号列入黑名单,所有的访问请求和操作都会被永久记录在区块链上作为证据。当发现该用户的账户被黑客入侵时,系统可以追溯攻击者的行为,并识别出被更改的数据。
本发明实施例提出了一种混合架构,利用区块链和边缘节点来对EHR数据实施基于属性的访问控制。该架构利用区块链:(1)执行智能合约,从而实施ACL策略;(2)将所有访问事件记录到区块链中。此外,EHR数据被存储在边缘节点上,并在边缘节点实施了缩写授权语言中指定的基于属性的访问控制策略。同时结合一次性自毁URL、EHR哈希摘要保证了电子健康记录数据的安全性,实现了电子健康记录访问的有效控制。
实施例四
图4是本发明实施例四所提供的一种信息查询装置的结构示意图。该信息查询装置可以采用软件和/或硬件的方式实现,例如该信息查询装置可以配置于计算机设备中。如图4所示,所述装置包括查询请求获取模块410410、查询地址获取模块420和地址信息反馈模块430,其中:
查询请求获取模块410,用于获取健康信息查询请求;
查询地址获取模块420,用于调用查询控制智能合约执行健康信息查询请求,确定健康信息查询请求的健康信息查询地址;
地址信息反馈模块430,用于将健康信息查询地址反馈至信息查询方,以使信息查询方根据健康信息查询地址获取健康信息查询请求对应的目标健康信息。
本发明实施例通过区块链节点中的查询请求获取模块获取健康信息查询请求;查询地址获取模块调用查询控制智能合约执行健康信息查询请求,确定健康信息查询请求的健康信息查询地址;地址信息反馈模块将健康信息查询地址反馈至信息查询方,以使信息查询方根据健康信息查询地址获取健康信息查询请求对应的目标健康信息,通过区块链节点根据预先布置的查询控制智能合约进行健康信息查询请求的响应,实现了对电子健康记录的访问的有效控制。
可选的,在上述方案的基础上,查询地址获取模块420包括:
请求转化单元,用于根据健康信息查询请求生成授权缩略语言形式的权限查询请求;
查询地址确定单元,用于根据权限查询请求确定信息查询方是否具备查询权限,并在信息查询方具备查询权限时,基于健康信息查询请求的目标信息标识关联的目标信息存储路径确定健康信息查询地址。
可选的,在上述方案的基础上,查询地址确定单元具体用于:
根据权限查询请求确定查询发起方和查询目标方,调用查询目标方对应的访问控制列表判断查询发起方是否具备查询权限。
可选的,在上述方案的基础上,装置还包括访问权限设置模块,用于:
响应于检测到的访问控制列表设置请求,确定访问控制列表设置请求关联的设置用户标识及设置访问控制列表,并将设置用户标识和设置访问控制列表上链存储。
可选的,在上述方案的基础上,目标信息存储路径包括至少一个目标一次性自毁地址,查询地址确定单元具体用于:
获取目标信息存储路径中的一个目标一次性自毁地址作为健康信息查询地址。
可选的,在上述方案的基础上,装置还包括健康信息存储模块,用于:
响应于检测到的健康信息存储请求,将健康信息存储请求关联的存储健康信息上链存储,并基于存储健康信息的原始存储地址生成至少一个存储一次性自毁地址;
将至少一个存储一次性自毁地址作为存储健康信息的存储信息存储路径,并将存储信息存储路径与存储健康信息的存储信息标识关联存储至区块链网络中。
可选的,在上述方案的基础上,装置还包括健康信息访问模块,包括:
访问请求获取单元,用于获取信息访问请求,信息访问请求由信息查询方根据健康信息查询地址生成;
目标信息反馈单元,用于获取信息访问请求对应的目标健康信息,将目标健康信息反馈至信息查询方。
可选的,在上述方案的基础上,目标信息反馈单元还用于:
获取目标健康信息关联的哈希摘要;
将目标健康信息和哈希摘要反馈至信息查询方,以使信息查询方根据哈希摘要判断目标健康信息是否被篡改。
本发明实施例所提供的信息查询装置可执行本发明任意实施例所提供的信息查询方法,具备执行方法相应的功能模块和有益效果。
实施例五
图5是本发明实施例五所提供的一种计算机设备的结构示意图。图5示出了适于用来实现本发明实施方式的示例性计算机设备512的框图。图5显示的计算机设备512仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图5所示,计算机设备512以通用计算设备的形式表现。计算机设备512的组件可以包括但不限于:一个或者多个处理器516,系统存储器528,连接不同系统组件(包括系统存储器528和处理器516)的总线518。
总线518表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器516或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
计算机设备512典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机设备512访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器528可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)530和/或高速缓存存储器532。计算机设备512可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储装置534可以用于读写不可移动的、非易失性磁介质(图5未显示,通常称为“硬盘驱动器”)。尽管图5中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线518相连。存储器528可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块542的程序/实用工具540,可以存储在例如存储器528中,这样的程序模块542包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块542通常执行本发明所描述的实施例中的功能和/或方法。
计算机设备512也可以与一个或多个外部设备514(例如键盘、指向设备、显示器524等)通信,还可与一个或者多个使得用户能与该计算机设备512交互的设备通信,和/或与使得该计算机设备512能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口522进行。并且,计算机设备512还可以通过网络适配器520与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器520通过总线518与计算机设备512的其它模块通信。应当明白,尽管图中未示出,可以结合计算机设备512使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理器516通过运行存储在系统存储器528中的程序,从而执行各种功能应用以及数据处理,例如实现本发明实施例所提供的信息查询方法,该方法包括:
获取健康信息查询请求;
调用查询控制智能合约执行健康信息查询请求,确定健康信息查询请求的健康信息查询地址;
将健康信息查询地址反馈至信息查询方,以使信息查询方根据健康信息查询地址获取健康信息查询请求对应的目标健康信息。
当然,本领域技术人员可以理解,处理器还可以实现本发明任意实施例所提供的信息查询方法的技术方案。
实施例六
本发明实施例六还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明实施例所提供的信息查询方法,该方法包括:
获取健康信息查询请求;
调用查询控制智能合约执行健康信息查询请求,确定健康信息查询请求的健康信息查询地址;
将健康信息查询地址反馈至信息查询方,以使信息查询方根据健康信息查询地址获取健康信息查询请求对应的目标健康信息。
当然,本发明实施例所提供的一种计算机可读存储介质,其上存储的计算机程序不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的信息查询方法的相关操作。
本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (11)

1.一种信息查询方法,其特征在于,应用于区块链节点,包括:
获取健康信息查询请求;
调用查询控制智能合约执行所述健康信息查询请求,确定所述健康信息查询请求的健康信息查询地址;
将所述健康信息查询地址反馈至信息查询方,以使所述信息查询方根据所述健康信息查询地址获取所述健康信息查询请求对应的目标健康信息。
2.根据权利要求1所述的方法,其特征在于,所述调用查询控制智能合约执行所述健康信息查询请求,确定所述健康信息查询请求对应的健康信息查询地址,包括:
根据所述健康信息查询请求生成授权缩略语言形式的权限查询请求;
根据所述权限查询请求确定所述信息查询方是否具备查询权限,并在所述信息查询方具备查询权限时,基于所述健康信息查询请求的目标信息标识关联的目标信息存储路径确定所述健康信息查询地址。
3.根据权利要求2所述的方法,其特征在于,所述根据所述权限查询请求判断所述信息查询方是否具备查询权限,包括:
根据所述权限查询请求确定查询发起方和查询目标方,调用所述查询目标方对应的访问控制列表判断所述查询发起方是否具备查询权限。
4.根据权利要求3所述的方法,其特征在于,还包括:
响应于检测到的访问控制列表设置请求,确定所述访问控制列表设置请求关联的设置用户标识及设置访问控制列表,并将所述设置用户标识和所述设置访问控制列表上链存储。
5.根据权利要求2所述的方法,其特征在于,所述目标信息存储路径包括至少一个目标一次性自毁地址,所述基于所述健康信息查询请求的目标信息标识关联的目标信息存储路径确定所述健康信息查询地址,包括:
获取所述目标信息存储路径中的一个目标一次性自毁地址作为所述健康信息查询地址。
6.根据权利要求5所述的方法,其特征在于,还包括:
响应于检测到的健康信息存储请求,将所述健康信息存储请求关联的存储健康信息上链存储,并基于所述存储健康信息的原始存储地址生成至少一个存储一次性自毁地址;
将所述至少一个存储一次性自毁地址作为所述存储健康信息的存储信息存储路径,并将所述存储信息存储路径与所述存储健康信息的存储信息标识关联存储至区块链网络中。
7.根据权利要求1所述的方法,其特征在于,还包括:
获取信息访问请求,所述信息访问请求由所述信息查询方根据所述健康信息查询地址生成;
获取所述信息访问请求对应的目标健康信息,将所述目标健康信息反馈至所述信息查询方。
8.根据权利要求6所述的方法,其特征在于,在将所述目标健康信息反馈至所述信息查询方之前,还包括:
获取所述目标健康信息关联的哈希摘要;
相应的,所述将所述目标健康信息反馈至所述信息查询方,包括:
将所述目标健康信息和所述哈希摘要反馈至所述信息查询方,以使所述信息查询方根据所述哈希摘要判断所述目标健康信息是否被篡改。
9.一种信息查询装置,配置于区块链节点,其特征在于,包括:
查询请求获取模块,用于获取健康信息查询请求;
查询地址获取模块,用于调用查询控制智能合约执行所述健康信息查询请求,确定所述健康信息查询请求的健康信息查询地址;
地址信息反馈模块,用于将所述信息查询地反馈至信息查询方,以使所述信息查询方根据所述健康信息查询地址获取所述健康信息查询请求对应的目标健康信息。
10.一种计算机设备,其特征在于,所述设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-8中任一所述的信息查询方法。
11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-8中任一所述的信息查询方法。
CN202010967507.XA 2020-09-15 2020-09-15 一种信息查询方法、装置、设备及存储介质 Pending CN113764058A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010967507.XA CN113764058A (zh) 2020-09-15 2020-09-15 一种信息查询方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010967507.XA CN113764058A (zh) 2020-09-15 2020-09-15 一种信息查询方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN113764058A true CN113764058A (zh) 2021-12-07

Family

ID=78785725

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010967507.XA Pending CN113764058A (zh) 2020-09-15 2020-09-15 一种信息查询方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN113764058A (zh)

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030131060A1 (en) * 2002-01-09 2003-07-10 Bellsouth Intellectual Property Corporation Method, system, and apparatus for providing self-destructing electronic mail messages
US6904528B1 (en) * 2000-01-03 2005-06-07 Ge Yokogawa Medical Systems, Limited Illegitimate duplication preventing method, data processing apparatus and medical imaging apparatus
CN102360480A (zh) * 2011-10-06 2012-02-22 吴东辉 一种链接网上支付及记录链接的方法和系统
CN102571949A (zh) * 2011-12-31 2012-07-11 河海大学 一种基于网络的数据自毁方法
US20150213236A1 (en) * 2013-11-27 2015-07-30 Anchorfree Inc. Systems and methods for implementing self-destructing content links
WO2015183783A1 (en) * 2014-05-27 2015-12-03 Machnick Frank Method and system for encrypting and transmitting information over unsecured communication channel
CN105787373A (zh) * 2016-05-17 2016-07-20 武汉大学 一种移动办公系统中Android终端数据防泄漏方法
CN107644169A (zh) * 2017-08-25 2018-01-30 成都亿睿科技有限公司 一种数据保护方法及数据保护系统
CN110729028A (zh) * 2019-10-15 2020-01-24 腾讯科技(深圳)有限公司 一种健康数据处理方法、装置、电子设备及存储介质
CN111145850A (zh) * 2019-12-23 2020-05-12 支付宝(杭州)信息技术有限公司 基于区块链的医疗数据查询方法以及装置

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6904528B1 (en) * 2000-01-03 2005-06-07 Ge Yokogawa Medical Systems, Limited Illegitimate duplication preventing method, data processing apparatus and medical imaging apparatus
US20030131060A1 (en) * 2002-01-09 2003-07-10 Bellsouth Intellectual Property Corporation Method, system, and apparatus for providing self-destructing electronic mail messages
CN102360480A (zh) * 2011-10-06 2012-02-22 吴东辉 一种链接网上支付及记录链接的方法和系统
CN102571949A (zh) * 2011-12-31 2012-07-11 河海大学 一种基于网络的数据自毁方法
US20150213236A1 (en) * 2013-11-27 2015-07-30 Anchorfree Inc. Systems and methods for implementing self-destructing content links
WO2015183783A1 (en) * 2014-05-27 2015-12-03 Machnick Frank Method and system for encrypting and transmitting information over unsecured communication channel
CN105787373A (zh) * 2016-05-17 2016-07-20 武汉大学 一种移动办公系统中Android终端数据防泄漏方法
CN107644169A (zh) * 2017-08-25 2018-01-30 成都亿睿科技有限公司 一种数据保护方法及数据保护系统
CN110729028A (zh) * 2019-10-15 2020-01-24 腾讯科技(深圳)有限公司 一种健康数据处理方法、装置、电子设备及存储介质
CN111145850A (zh) * 2019-12-23 2020-05-12 支付宝(杭州)信息技术有限公司 基于区块链的医疗数据查询方法以及装置

Similar Documents

Publication Publication Date Title
Guo et al. Access control for electronic health records with hybrid blockchain-edge architecture
Madine et al. Blockchain for giving patients control over their medical records
KR102112460B1 (ko) 블록체인-기반 데이터 프로세싱 방법 및 디바이스
Avancha et al. Privacy in mobile technology for personal healthcare
Kotz et al. Privacy and security in mobile health: a research agenda
Tith et al. Patient consent management by a purpose-based consent model for electronic health record based on blockchain technology
Aileni et al. IoMT: A blockchain perspective
JP5008003B2 (ja) 患者の再識別のためのシステムおよび方法
Le et al. Activity-oriented access control to ubiquitous hospital information and services
US20080172737A1 (en) Secure Electronic Medical Record Management Using Hierarchically Determined and Recursively Limited Authorized Access
US11562812B2 (en) Computer implemented method for secure management of data generated in an EHR during an episode of care and a system therefor
Azbeg et al. Access control and privacy-preserving blockchain-based system for diseases management
Zhao et al. Research on electronic medical record access control based on blockchain
KR20200067596A (ko) 블록체인을 이용한 의료정보관리시스템
CN109947854B (zh) 基于区块链的电子病历处理方法、装置、设备和介质
Azad et al. A privacy‐preserving framework for smart context‐aware healthcare applications
Unal et al. Machine learning for the security of healthcare systems based on Internet of Things and edge computing
US20220391537A1 (en) System for protecting and anonymizing personal data
Sharma et al. Healthify: a blockchain-based distributed application for health care
Deepa A Biometric Approach for Electronic Healthcare Database System using SAML-A Touchfree Technology
Nath et al. Block chain-based security and privacy framework for point of care health care IoT devices
Aboelfotoh et al. A mobile-based architecture for integrating personal health record data
Abid et al. A smart contract-based access control framework for smart healthcare systems
RU2664406C2 (ru) Способ и система для придания анонимности многоузловому показателю эффективности и для управления действиями и повторной идентификацией анонимных данных
US9953188B2 (en) System, method, and program for storing and controlling access to data representing personal behavior

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