基于区块链的医疗系统的数据卸载和共享的合作架构(上)

阅读量    142201 | 评论 4

分享到: QQ空间 新浪微博 微信 QQ facebook twitter

 

概述–医疗行业见证了电子健康服务的重大变革,电子健康记录(EHR)被转移到移动边缘云端,以促进医疗保健。许多基于边缘云端的系统设计已被提出,但仍存在一些技术上的挑战,如集中式医疗架构导致的服务质量(QoS)低下、数据隐私和系统安全等。在本文中,我们提出了一种利用边缘云端和区块链进行医疗数据卸载和数据共享的新型混合方法。首先,提出了一种高效的数据卸载方案,物联网健康数据可以卸载到附近的边缘服务器,以便在具有隐私意识的情况下进行数据处理。然后,整合数据共享方案,通过区块链实现医疗用户之间的数据交换。特别是利用智能合约进行访问认证,开发出可信的访问控制机制,实现电子病历(EHRs)安全共享。通过大量的实际实验,实现结果显示出本方案在提高QoS、增强数据隐私和安全性、低智能合约成本等方面比现有方案更有优势。

 

1.引言

近来云计算、边缘计算和物联网(IoT)技术的发展,均增强了电子健康服务[1]、[2]。在现代电子医疗中,从移动设备-MD(即智能手机和可穿戴传感器)收集到的健康数据可以卸载到移动边缘计算(MEC)服务器上进行高效的计算和分析,然后提高服务质量(QoS),降低设备的资源负担。特别是还可以整合资源丰富的服务器的云端,存储从卸载阶段分析的历史健康数据,从而实现健康用户之间的数据共享。例如,医生可以利用云数据来支持疾病诊断,而患者可以获得健康或用药建议等医疗福利。因此,数据卸载和数据共享的合作,可促进医疗服务的提供[3]。

然而,实现这种合作系统的承诺仍然面临着不小的挑战。首先,如何将物联网医疗数据卸载到边缘云,以高效支持健康应用程序,同时保证高QoS和数据隐私,这是一个关键问题。大多数传统的方法[4-6]要么只关注网络延迟和能量使用的QoS问题,要么只关注医疗卸载的数据隐私问题,而实现一个考虑到所有这些因素的整体框架是非常必要的。其次,集中式云架构仍然是单点故障,这有可能扰乱整个网络[7]。此外,EHRs存储在中央云上会增加数据检索的通信开销,尽管它只需要较少的数据管理工作。第三,在电子健康网络中,参与者之间往往缺乏透明度和信任,要实现安全的数据共享并不简单[2]。攻击者或好奇的用户可以在未经用户许可的情况下访问健康数据,导致患者敏感信息的泄露风险。最后,对于医疗应用程序,这种数据卸载和数据共享的混合方式的可行性和实现,在现有的大多数作品中仍未解决[7-13],[15],这迫切需要进一步的创新解决方案。

为了克服上述挑战,本文提出了一种新型的利用边缘云和区块链进行医疗数据卸载和数据共享的合作架构。采用边缘计算提供低成本高效率的卸载服务以提高QoS,同时通过数据加密来保证计算的隐私性。我们开发了一个去中心化的云存储系统,并采用智能合约来实现可靠的数据共享,这样可以满足系统延迟和安全要求。由于资源限制,MD被视为轻量级节点,只参与区块链网络的数据收集或共享,而挖矿工程则由资源丰富的云机完成。采用区块链的主要目的是利用其去中心化和安全性来构建分布式云系统和安全的数据共享方案,有效解决传统架构面临的高延迟开销和单点故障问题[4-9]。我们还进行了大量的实际实验来验证所提出的联合框架的可行性。简而言之,本文提供了以下一系列贡献:

1)我们首先提出了一种高效的数据卸载方案,物联网健康数据可以卸载到附近的边缘服务器,进行具有隐私意识的数据处理。

2)然后,我们提出了一个新的数据共享方案,该方案通过区块链整合实现了医疗用户之间的数据交换。同时利用智能合约进行访问认证,开发了一种可信的访问控制机制,实现了EHRs安全共享。

3)我们进行了各种实验,来验证所提出的方法在卸载和共享性能方面优于其他基线方法。

本论文的其余部分安排如下:第二节讨论相关工作。我们在第三节中提出了一个集成架构,采用的是卸载和共享规划。第四节介绍了各种性能指标的实现结果,而第五节则是全文总结。

 

2.相关工作

在本节中,我们调查了医疗数据卸载和数据共享的相关工作。

A.健康数据卸载

已经提出了许多数据卸载方法来支持医疗保健。在[4]中,移动医疗数据可以卸载到雾节点或云端进行处理、分析和存储。在[6],[7]中,提出了一种多云模型,该模型可以在延迟和能量约束下将移动健康数据卸载到云端。这些建议的主要缺点是将数据卸载到远程云端所造成的高延迟。同时,不考虑卸载隐私,这会使敏感的健康数据有面临外部攻击的风险。另一项工作在[8]中提出了一种在云上执行医疗应用的物联网架构,但完全忽略了卸载数据所需的MD的内存使用情况优化和数据隐私问题。同时,[5]、[9]、[10]等其他工作则集中研究医疗中的卸载安全问题。例如,[9]采用哈希(hash)函数和密钥密码系统来保证数据安全。另外,在[5]、[10]中,通过使用共识算法和基于学习的隐私保护技术,在响应时间和延迟方面也解决了健康数据卸载的隐私问题。然而,上述研究缺乏对所有QoS约束(网络延迟、能耗和内存使用)和隐私意识的共同考虑,而这些对于卸载性能保障具有重要意义[2]。

B.健康数据共享

提出了几种利用区块链进行健康数据共享的解决方案。该工作[11]介绍了一种由防篡改联盟区块链和云存储结合实现的,隐私保护数据共享方案。此外,[12]描述了一种同时使用区块链和边缘云节点的混合架构,其中采用智能合约来监控访问行为和事务。尽管数据隐私性有所增强了,但此类解决方案[11]、[12]主要依靠中央云服务器进行EHRs存储,仍存在单点故障瓶颈,且产生高额通信开销。此外,智能健康合约的性能尚未得到评估。同时,[13]采用了星际文件系统(IPFS)与以太坊(Ethereum)区块链进行EHRs云端共享,但数据检索速度和安全能力等重要性能指标尚未得到验证。最近,我们的作品[3]、[14]首次尝试利用去中心化存储IPFS和智能合约实现移动云EHRs共享。在[15]中研究了一种基于区块链和外部公钥基础设施(PKI)的访问控制协议,但它需要复杂而昂贵的资源来实现EHRs的安全共享[2]。

尽管取得了可喜的成果,但上述工作未能为医疗卫生提供数据卸载和数据共享的合作框架。这促使我们利用MEC和区块链开发了一个综合解决方案,在增强QoS、提高隐私和安全性方面提供更好的医疗服务。

 

3.提出的架构和系统设计

我们在图1中所考虑的医疗系统架构,由以下四层组成。(1)物联网层由许多智能医院组成,这些医院由MD作为移动网关从传感器物联网设备上监测不同地点的患者。(2)边缘层包括一群边缘云节点,每个边缘节点管理一组附近的物联网设备,为医疗卫生提供分布式计算服务。所有的计算(包括数据处理和分析)都在边缘层实现,以提供即时的医疗服务。(3)云层,存储来自边缘节点处理后的健康数据,并与终端用户进行数据共享。为了构建云区块链网络,我们创建了四个关键的云组件,包括管理员、EHRs管理器、分布式云存储、与矿工的智能合约和策略存储。其详细情况将在下一节中介绍。(4)终端用户层是指有意使用云医疗服务的医疗机构、护理人员和患者等医疗用户网络。例如,医生利用云端分析的健康数据进行疾病诊断,或者患者可以追踪自己的医疗记录史。需要注意的是,这里的区块链网络由边缘服务器、云实体和终端用户组成,并由分布在区块链参与者[14]上的安全事务账本维护。接下来,我们重点分析数据卸载和数据共享方案。

A.健康数据卸载

我们认为每个MD都有多个健康数据任务被执行。我们引入一个卸载决策策略,用二进制变量表示,其中表示任务n被卸载到边缘服务器,否则就在本地执行

1)卸载模式:在我们近期工作[16]的实验结果的激励下,本文提出了如图2所示的卸载架构,它包括两个主要模块:移动设备上的任务配置文件和决策装置。

-任务概况:该模块通过移动性能测量工具,收集设备执行数据任务时的能耗(E)、处理时间(T)、内存使用量(M)等信息。因此,一个大小为Dn(以比特为单位)的任务配置文件可以被表述为一个变量元组[Dn,En,Tn,Mn],然后存储在MD上创建的数据库中,以支持卸载决策。

-决策装置:该模块接收配置文件模块收集的任务配置文件信息,以做出卸载决策。与[17]、[18]类似,我们采用整数线性编程模型来开发MD的决策算法。通过使用配置文件信息,算法分析并做出本地执行或卸载到MEC服务器的决策 。主要目标是为每个任务确定一个最优的计算决策,使计算延迟、能耗和内存使用量最小化。

2)卸载规划:受[10]和[18]中医疗卸载研究的启发,我们以两种计算模式下的处理时间、能耗和内存使用量三个主要指标来制定健康数据卸载问题。

-本地执行:当一个MD决定在本地执行任务n时,它会使用自己的资源来处理医疗数据。我们将分别表示任务n的移动CPU利用率(单位:CPU/位)和移动计算能力(单位:CPU/秒)。那么,本地执行时间可以计算为。我们还将定义为电池消耗量(单位:Mah)和内存使用量(单位:Mbyte),它们可以通过移动测量工具[18]来测量。

-卸载到MEC服务器:在任务卸载的情况下,数据任务在传输到MEC之前需要进行安全加密。我们将分别表示为加密任务n的移动CPU利用率(以CPU/bit为单位)、边缘CPU利用率(单位:CPU/bit)、边缘计算能力(单位:CPU/秒)。进一步,设为MD的传输数据速率,则总的卸载时间可表示为。我们还将定义为加密能量和向MEC传输任务n的能量。那么,总卸载能量由[16]计算。此外,卸载过程也会产生加密的内存使用成本,定义为,也可以通过移动测量工具[18]获得。相应地,总卸载时间、能量成本和内存使用量可以用以下公式表示:

根据以上公式,我们可以推导出在系统约束条件下联合优化时延、能耗成本和内存使用量的优化问题,如下图所示:

其中αt、αe、αm分别为成本权重,且均设为1/3。这里,约束条件(C1)、(C2)表示在MD上计算所有医疗数据任务时,时间延迟和能耗的卸载成本应小于本地执行成本。事实上,将任务卸载到MEC的解决方案应该是首选,因为它的计算效率很高,特别是对于大型任务,以获得更好的QoS。此外,任务总执行时间不应超过最大延迟值(C3)。同时,(C4)定义了用于任务计算的内存不能超过可用的移动内存。本文采用java编写的粒子群优化(PSO)(见算法1)模型,在Android手机上建立上述卸载优化算法。PSO算法已经证明了其相对于遗传算法(Genetic Algorithm,GA)等同类算法的优越性,即计算成本极低,且在Android设备上实现简单,适用于医疗等移动卸载应用[19]。

B.健康数据共享

我们将数据共享的主要内容、智能合约设计和接入协议描述如下。

1)主要内容:在数据共享方案中,我们假设医疗数据由前一小节设计的卸载框架处理并存储在云端。云计算与区块链的结合,可以实现高效的数据共享,提高吞吐量,减少数据检索,提高安全性[2]。需要注意的是,区块链利用共识验证[2]来实现分布式账本上的同步,而分布式账本是在云实体间复制的,避免了单点故障,即由于区块链上的强链接事务,一个实体的中断不会影响云系统的运行[2]。我们提出的云上共享架构如图1所示,主要包括以下四个实体。

  1. EHRs管理器:它负责控制区块链网络上的所有用户事务,包括MD的数据存储进程和移动用户的数据访问。EHRs管理器的管理能力是由智能合约通过严格的用户策略来实现的。
  2. 管理员:它通过添加、更改或撤销访问权限来管理云上的事务和操作。管理员部署智能合约,也是唯一具有能够更新或修改智能合约策略能力的实体。
  3. 智能合约:它定义了访问控制系统中允许的所有事务。用户可以通过合约地址和应用二进制接口(ABI)与智能合约进行交互。智能合约可以对医疗数据请求进行识别、验证访问和授予权限。它被认为是我们医疗平台的核心软件。
  4. 分散式IPFS存储:我们在云上部署了一个去中心化的点对点文件系统InterPlanetary File System(IPFS),这是一个分布式存储节点的网络,以构建区块链网络中的存储和共享平台[14]。从卸载方案中分析出的健康结果存储在已识别的 IPFS 节点中,而其哈希值则由EHRs管理器记录并存储在分布式哈希表(DHT)中。同时,我们还将智能合约与IPFS进行整合,提高云存储的分散性和数据共享的可控性,以便更好地进行用户访问管理。关于IPFS设置的细节可以参见我们最近的工作[14]。

2)智能合约设计:我们首先创建一个由管理员控制的共享合同,以监控事务操作。我们将PK表示为用户的公钥,userRole表示为用户的角色,Addr表示为患者在区块链中的地址。该合同主要规定了以下五项功能:

  1. 新增用户(PK, userRole):(由管理员执行)该功能允许在主合同中添加一个新用户。用户由其公钥识别,并根据其请求加入到合同中,并赋予相应的角色。
  2. 刪除用戶(PK, userRole):(由管理员执行) 用于根据相应的公钥从网络中删除用户。所有的个人信息也会从云存储中删除。
  3. 政策列表(PK):(由管理员执行)医疗服务提供者-患者之间的对等体可以商定一项政策,以表达他们的医疗关系。例如,一个病人有一个确定的医生为他提供医疗服务,只有这个医生才有权利访问他的病人的电子病历。政策列表包含在政策存储中的用户公钥,用于智能合约处理新事务时的识别。
  4. 检索EHRs (PK,Addr):(由EHRs管理器执行)它允许检索患者的云电子病历。区块链实体需要向智能合约提供患者的地址(包括患者ID和区域ID)。然后,合同验证并向EHRs管理器发送信息,以提取并将数据返回给请求者。
  5. 处罚(PK,action):(由管理员执行)当检测到有未经授权的请求进入EHRs系统时,EHRs管理器将通知智能合约对请求者进行处罚。在本论文中,我们给未经授权的移动实体一个警告信息作为惩罚。

接下来,我们提出一个数据共享协议,总结起来有以下四个步骤。

第1步:请求处理(由EHRs管理器执行)

EHRs管理器从移动用户(即医疗服务提供者或患者)那里收到一个新的请求,该请求作为与请求ID(包括AreaID和PatientID)相关联的事务Tx。EHRs管理器将通过使用Tx.getSenderPublicKey() 函数获得请求者的PK,并将其发送到合同中进行验证。

第2步:验证(由管理员执行)

在收到EHRs管理器的事务(msg.sender = ME)后,管理员会根据其在智能合约的政策列表中的PK来验证该请求。如果PK在列表中可用,则请求被接受,立刻向请求者授予数据访问权限。否则,智能合约将通过惩罚()函数发出惩罚,从区块链网络中丢弃这个请求。

第3步:EHRs检索(由管理员执行)

一旦授予权限,合同将使用abiDecoder:decodeMethod(Tx)函数对事务进行解码,以获取交易数据字段中EHRs的地址信息(见第二节)。现在,管理员可以知道请求的区域ID和患者ID,然后将其转发给EHRs管理器,以便从IPFS[14]中检索数据。

第4步:数据反馈(由EHRs管理器执行)

一旦找到所要求的数据,EHRs管理器会将把它发送给请求者。现在分享完毕,一个新的事务会被添加到区块链上,并播发给网络用户。需要注意的是,这类事务中的数据主要是患者地址,这些地址在区块链上的存储是轻量级的,也是高效的。算法1显示了我们的共享协议,其源代码可以在我们近期的工作中获得[14]。

 

参考文献

[1] S. M. Riazul Islam et al., ”The Internet of Things for Health Care: A Comprehensive Survey,” IEEE Access, vol. 3, pp. 678-708, 2015.

[2] Guo, Hao, et al., ”Attribute-based Multi-Signature and Encryption for EHR Management: A Blockchain-based Solution,” in 2020 IEEE International Conference on Blockchain and Cryptocurrency (ICBC), pp. 1-5, 2020.

[3] Dinh C. Nguyen et al., ”A mobile cloud based IoMT framework for automated health assessment and management,” in 41st Conference of the IEEE Engineering in Medicine & Biology Society (EMBC), 2019.

[4] M. Asif-Ur-Rahman et al., ”Towards a heterogeneous mist, fog, and cloud basedframework for the internet of healthcare things,” IEEE Internet of Things Journal, vol.6, pp. 4049-4062, 2018.

[5] R. Saha et al., ”Privacy ensured e-healthcare for fog-enhanced IoT basedapplications,” IEEE Access, vol. 7, pp. 44 536-44 543, 2019.

[6] H. Wu et al., ”Mobile healthcare systems with multi-cloud offlfloading,” in IEEE Int. Conf. on Mobile Data Management, vol. 2, 2013, pp. 188-193.

[7] Navaz et al. ”Towards an effificient and Energy-Aware mobile big health data architecture.” Comput. methods and programs in bio., 2018.

[8] R. M. Abdelmoneem et al., ”A cloud-fog based architecture for IoT applications dedicated to healthcare,” in IEEE ICC, 2019, pp. 1-6.

[9] D. Giri et al., ”Sechealth: An effificient fog based sender initiated secure data transmission of healthcare sensors for e-medical system,” in IEEE Global Communications Conference, 2017, pp. 1-6.

[10] M. Min et al., ”Learning-based privacy-aware offlfloading for healthcare IoT with energy harvesting,” IEEE Internet of Things Journal, vol. 6, pp. 4307-4316, 2018.

[11] J. Liu et al., ”BPDS: A blockchain based privacy-preserving data sharing for electronic medical records,” in IEEE GLOBECOM, 2018, pp. 1-6.

[12] H. Guo et al., ”Access control for electronic health records with hybridblockchain-edge architecture,” in IEEE Int. Conf. on Blockchain, 2019.

[13] S. Wang al., ”A blockchain-based framework for data sharing with fifinegrained access control in decentralized storage systems,” IEEE Access, vol. 6, pp.38437-38450, 2018.

[14] Dinh C. Nguyen et al., ”Blockchain for secure EHRs sharing of mobile cloud based e-health systems,” IEEE Access, pp. 66792-66806, 2019.

[15] M. T. de Oliveira et al., ”Towards a blockchain-based secure electronic medical record for healthcare applications,” in IEEE ICC, 2019.

[16] Dinh C. Nguyen et al., ”Privacy-preserved task offlfloading in mobile blockchain with deep reinforcement learning,” IEEE Transactions on Network and ServiceManagement, 2020, in press.

[17] Sigwele, Tshiamo, et al. ”Intelligent and energy effificient mobile smartphone gateway for healthcare smart devices based on 5G” in IEEE Global CommunicationsConference (GLOBECOM), 2018..

[18] I. Elgendy et al., ”An effificient and secured framework for mobile cloudcomputing,” IEEE Transactions on Cloud Computing, 2018.

[19] W.-T. Sung and Y.-C. Chiang, ”Improved particle swarm optimization algorithm for android medical care IoT using modifified parameters,” Journal of medical systems, vol. 36, no. 6, pp. 3755-3763, 2012.

[20] AWS Lambda with Cloud Front Lambda Edge Services [Online]. Available:https://aws.amazon.com/lambda/edge/.

[21] Firebase Performance Monitoring – Google [Online]. Available: https://fifirebase.google.com/docs/perf-mon.

分享到: QQ空间 新浪微博 微信 QQ facebook twitter
|推荐阅读
|发表评论
|评论列表
加载更多