区块链与远程医疗大数据安全研究
2020-10-09熊辉张垚雷蕾
熊辉 张垚 雷蕾
摘 要:新型冠状病毒肺炎(COVID-19)疫情肆虐全球,医疗保健已成为人们生活中不可缺少的一部分,医疗数据量急剧增加。为了简化诊断和治疗流程,减少人员聚集,医疗保健专业人员越来越多地采用基于物联网(IoT)可穿戴技术实现远程监护病人,用于治疗和护理患者。然而,开放式网络对数据传输和数据事务的日志记录带来严重的隐私风险和安全隐患,医疗数据的安全和隐私问题可能导致治疗过程的延迟,甚至危及患者的生命。通过对医疗健康大数据安全管理的分析,文章提出一个适用于物联网系统的改进型区块链模型新框架。这些附加的隐私和安全属性基于高级密码学原语,使物联网应用数据及交易在基于区块链的网络上更加安全。
关键词:物联网;区块链;加密算法;数据安全;远程医疗
中图分类号:TP393.01 文献标识码:A
DOI:10.19881/j.cnki.1006-3676.2020.09.10
Abstract:Novel coronavirus pneumonia (COVID-19) epidemic has been widespread in the world,and medical care has become an indispensable part of human life,the amount of TCM data increases in the epidemic. In order to simplify the process of diagnosis and treatment and reduce the concentration of personnel,more and more medical and health professionals use the wearable technology based on Internet of things (IOT) to realize remote monitoring of patients for the treatment and care of patients. However,open network brings serious privacy risks and security risks to data transmission and data transaction logging,the security and privacy problems of medical data may lead to delay of treatment process and even endanger the lives of patients. Through the security management and analysis of healthcare big data,this paper proposes a new framework of improved blockchain model for Internet of things. These additional privacy and security attributes are based on advanced encryption primitives,which make Internet of things application data and transactions more secure on the blockchain based network.
Key words:Internet of things;Blockchain;Encryption algorithm; Data security; Telemedicine
2020年1月至今,新型冠状病毒肺炎(COVID-19)疫情肆虐全球,许多国家正面临病人数量急剧增加的严峻形势,病人越来越难以获得初级医生或护理人员的治疗[1]。近年来,物联网和可穿戴设备蓬勃兴起,远程病人监护和体征数据分析可以提高护理质量和医生接诊量。远程病人监控(RPM)[2]提供常规临床环境之外病人的监控和护理(如在家隔离期间),给病人提供了便利服务。患者根据需要与医疗机构保持联系,降低了医疗费用,提高了医疗质量。RPM系统的主要组成部分包括:用于监控健康数据并将其传输到网络中的专业监控设备;具有互联网连接能力的智能终端(如手机、平板电脑等)和可穿戴设备;智慧城市网络及应用相关程序。可穿戴设备收集患者检测数据,并将其传输到医院或医疗机构,以便于健康监测、疾病诊断和治疗。在这个过程运行时,智慧城市网络服务器和数据库中会分析和传输所有患者数据而形成大数据流。如何保障医疗数据安全,建立可信度高、及时可靠的RPM物联网系统,是当今世界研究的热点课题。
一、背景技术
随着5G技术的发展,智慧城市的基础物联网(IoT)的发展方向之一是可穿戴设备网络。通过嵌入软件、电子设备、传感器、处理器等,使可穿戴设备能够连接和交换数据。在未来的智慧城市中,不仅在互联网上可以传输可穿戴设备的医疗数据,而且这些可穿戴设备之间可以共享大量数据。为了与各级医疗机构共同处理患者数据,医疗领域物联网基础设施需要进行安全的数据共享。患者医疗数据是高度私有的,共享数据可能会增加暴露的风险,医疗数据的泄露或丢失的新闻屡见不鲜。患者信息可能包含身份财产等内容,这些记录本身有多种形式,包括报告、图像、视频和原始数据等。根据网络存储设备提供程序的不同格式,它们也可能在不同的系统中使用,记录的完整性变得至关重要。此外,当前IoT数据共享系统使用集中式体系结构,需要建立集中的信任机制。在这种机制下,系统某个数据中心出现安全性问题,将会导致整个系统数据发生泄漏风险。
区块链(Blockchain)技术是实现数据隐私和安全的解决方案之一[3]。区块链被定义一个分布式的账本,即每个区块链的节点都拥有系统所有交易的信息和数据,每个节点的权利相等,都有着一样的账本,摧毁部分节点对系统完全不造成影响,区块链系统具有极大的鲁棒性。区块链是一种共享数据结构,负责存储所有交易历史。这些存储数据区块(Block)以“链(Chain)”的形式相互联系。链的第一个区块被称为创世块(Genesis Block),每个块由块头、事件计数器和交易事件组成。区块链是分布式数据存储、点对点传输、共识机制、加密算法等計算机技术的新型应用模式。
区块链安全基于工作证明概念,只有当系统获得授权节点已进行足够计算工作的证据时,交易才被视为有效。矿工(负责创建块)不断尝试以哈希(Hash)计算的形式解决密码难题,这个过程被称为工作证明(Proof-of-Work,PoW),向区块链添加新区块的过程被称为“挖矿”。链中的每个块都由块头中的唯一的哈希值标识,由哈希算法(SHA-256)生成[4]。哈希算法接受任意大小的明文,并计算固定大小的256位加密哈希字段,每个块头包含链中前一个块的地址。由于无法删除或更改区块中的信息,因此区块链成为医疗保健系统中大数据安全最合适的技术[5]。然而,在物联网环境下运用区块链技术并非易事,例如还需要解决PoW对计算能力要求极高、低可扩展性和通过网络进行交易确认的长延迟问题。
二、区块链增强医疗数据安全模型
针对上述问题,笔者提出了一种新型区块链模型方案,以消除传统区块链PoW的技术缺陷,使其适用于物联网设备。这种区块链模型依赖于网络的分布式特性和其他附加的安全属性。区块链中的交易在区块链网络中公开广播,并包含有关发送方和接收方的附加信息。在区块链的应用场景中,每个人都有一个公共地址,任何人都可以看到他们已经在该地址存储了哪些数据。这样,用户就不能在网络中匿名。为了保证匿名性和用户的真实性,可以使用一个轻量级的隐私保护环(Ring)签名方案,该方案适用于真实用户的匿名交易。另一方面,环签名允许签名者匿名签署消息[6]。在环签名中,避免使用诸如配对、求幂之类的繁杂操作,使其更适合区块链及物联网系统。系统模型使用轻量级加密算法(ARX密码)和公共加密方案对数据进行双重加密,即先用对称密钥加密对数据进行加密,然后用公钥对对称密钥本身进行加密。ARX是一类密码算法,它使用三种简单的算术运算:模加法运算、位旋转运算和异或运算。近年来,ARX密码引起了工业界和学术界的广泛关注[7]。为了在公共网络上安全地交换加密密钥,模型使用Diffie-Hellman密钥交换技术[8]。使用这两种技术将确保用户数据的安全性、隐私性和匿名性,使物联网设备之间的远程医疗大数据传输及时可靠。
该模型有如下特点:
(一)分散化
為了确保远程医疗数据传输物联网的健壮性和可扩展性,并消除多点(终端)对一点(服务器)集中式数据流量,模型建立了一个分散的系统。使用这种分散系统,通过点对点覆盖网络实现去中心化,可以消除单点故障或信息延迟问题[9]。
(二)数据认证
用户计算机或云服务存储需要传输未经处理的数据进入区块链网络,在传输过程中,数据可能会被修改或丢失。保存这些不正确的、可能被篡改的医疗数据会增加系统的负担,并可能导致对患者的治疗不及时,甚至死亡。为了确保数据不被修改,模型使用了一个轻量级数字签名方案。在医疗机构或卫生监管机构接收端,数据通过用户的数字签名进行验证。如果接收正确,则向患者发送数据接收的收据。
(三)可伸缩性
传统区块链技术解决PoW,需要依靠强大的计算机算力。然而,智慧城市中物联网受到地区计算资源限制,不能提供足够算力给诸多设备节点,并且随着网络中节点数量的增加,区块链的扩展性会变得较差。模型消除了重叠网络中PoW的概念,并将覆盖网络划分为多个集群,而不是单个区块链,因此每个区块链并不负责所有节点的数据安全。相反,模型将节点分散到几个集群上,使之依赖于网络的分布式特性和其他附加算法的安全属性。
(四)数据存储
通过区块链存储物联网大数据是不现实的,模型将使用云服务器来存储加密的数据块。通过附加算法的加密安全性,如数字签名和高标准加密技术算法,数据在云端的安全性能够得到保证。但是,这可能会导致第三方受信任的问题。为此,模型将所有事务数据存储在不同的块中,使用Merkle树创建每个块的组合散列,并将其传输到分布式网络中,云数据的任何变化都很容易被系统检测[10]。考虑到分布式网络的特点,执行区域划分保留了在一定范围内的分散度。
(五)用户匿名性
患者的医疗数据可能包含敏感信息,因此数据必须在网络上匿名。模型使用轻量级环结构和数字签名保证匿名性,环签名允许签名者对数据进行匿名签名,即签名与其他环结构混合,除了实际签名者,谁也不知道是哪个成员对消息签名。
通过以上模型设计,基于区块链技术的医疗物联网系统由五个部分组成:覆盖网络、云存储、医疗服务提供商、智能合约和配备医疗可穿戴物联网设备的患者[11]。
(一)覆盖网络
覆盖网络是基于分布式架构的对等网络。连接到网络的节点可以是计算机、智能手机、平板电脑或其他物联网设备。在模型中,网络由特定的节点组成,这些节点需要证明已获得有效的认证。在网络上注册账户之前,可以上传或验证此类证书。一旦获得授权,节点将能够通过网络对数据或交易进行数字签名。为了提高网络的可扩展性和避免网络延迟,模型将节点以多个集群的形式分组。每个集群都有一个簇头(Cluster-head)字段,负责存储节点的公钥,任何连接到集群的节点都可以随着时间的变化而自动优化集群的连接时间。另外,添加到集群的节点可以更改簇头字段的数据。簇头字段能维护请求者(如医疗服务提供者)的公钥,医疗机构可以访问特定患者的数据,以及被允许访问的请求者(如需要监控的患者)的公钥。患者通常希望与特定医生共享其数据,然后节点对数据进行数字签名,并使用医生节点的公共地址将其发送到网络。簇头字段验证患者数字签名和患者公钥,如果验证正确,簇头将在自己的簇中搜索医生节点的公钥。如果公钥可用,那么簇头将把数据广播到自己的集群;如果医生节点公钥不可用,那么它将把事务广播到其他集群。如果没有验证任何节点的数字签名或公钥,则簇头不会在其集群中广播数据,而是将事务传输给其他簇头。簇头还负责存储云中存储的数据块的哈希值。集群中的每个新块还包含前一个块的哈希,每个哈希块都表示所有先前哈希值的组合哈希序列。簇头可以独立地决定是否保留新数据块的哈希,当一个簇头添加了新的序列,系统将把这个消息广播给所有集群。其他集群也使用前一个链的哈希值验证新块。为了跟踪网络中分布式信任关系,每个簇头基于Beta信誉系统对其他簇头保持一个可信任等级[12]。
(二)云存储
模型使用云存储服务器来保存患者数据,而不是通过区块链保存物联网医疗数据。云端连接到覆盖网络,存储用户的数据块具有唯一块号,一旦数据开始存储在标识块中,云服务器将数据块的哈希值发送到覆盖网络。模型使用Merkle树计算单个块中数据的哈希值。如果覆盖网络接受新块的根哈希值,则将新哈希值与之前的哈希值相加,并生成链的新哈希值。在这种情况下,网络不需要建立第三方信任机制,数据的任何更改都可以即时跟踪。
(三)医疗服务提供商
通常是指健康监管部门或医学检查、治疗机构。一旦从远程医疗物联网上收到患者发出的警报消息,医疗服务提供商就会及时处理数据,避免患者病情恶化。它们被视为网络中的一个节点,通过授权从云端接收特定的患者数据。
(四)智能合约
智能合约允许在任何物联网设备中创建协议,在事件发生时自动执行。当系统从患者可穿戴设备上接收到不符合指定范围的数据读数,智能合约将向授权人员或医疗服务提供商发送警报消息,并将异常数据发送到云存储中,以便医疗服务提供商在必要时可以接收患者的监测数据。
(五)配备医疗可穿戴物联网设备的患者
物联网设备将收集患者的所有健康数据,包括心率、血压、体温、血糖、血脂、睡眠状况或步行距离等。任何授权机构都有特定权限获取患者的数据。如果患者需要治疗,可以与指定医生共享个人健康数据。治疗结束后,患者可继续与其他医生或医疗服务提供商联系。
在区块链中,作为节点的患者配有可穿戴设备,如血压传感器、温度传感器或其他已知设备。而随机接入病人不允许直接连接网络,他们需要建立账户并提供身份验证文件后才能将进入IoT系统。一旦账户验证了所提供的文档,用户就可以访问网络。患者健康信息被发送到智能设备(如智能手机或平板电脑),由应用程序格式化和聚合。完成后,格式化的信息将被发送到相关的智能合约,以便进行全面分析,并根据需要提供监测阈值,物联网根据阈值判断监测数据是否正常。如果健康读数异常,则智能合约将创建一个事件,并向覆盖网络和患者发送警报。此外,系统将异常数据存储到云服务器,然后云服务器将存储数据的哈希值传输到覆盖网络。当监测数据传输到云服务器时,发送方会向数据添加数字签名。然后,覆盖网络向医疗服务提供商发送警报。模型没有将运行状况数据存储到覆盖网络,而是将事务警报存储到覆盖网络。此警报作为特殊客户的事务处理,并采用先进的密码技术保护隐私。在系统模型中,发送信息的实体可以被视为发送者,而接收信息的实体可以被视为接收者。覆盖网络包含所有连接节点的公钥信息和云端存儲数据的哈希索引。一旦医疗机构节点收到警报,医生或机构就可以通过IoT网络访问患者的完整健康数据。
三、总结
物联网隐私与安全是当今学术界和产业界最为关注的问题之一,RPM系统主要关注的是医疗数据的安全和高效传输。医疗数据经常被黑客觊觎,因此保护健康信息(PHI)是医疗保健提供商未来信息化发展的重要方向。医疗保健数据隐私已成为网络犯罪攻击的目标,在过去十年里,对医疗设备或健康数据的网络攻击变得越来越普遍。由于无法删除或更改区块中的信息,区块链技术成为应用于医疗保健系统的最佳技术。然而,区块链技术的原始形式还不足以解决目前远程医疗数据的安全问题。笔者提出了一种新的混合加密方法模型,在考虑物联网算力资源约束因素的同时,结合了私钥、公钥、区块链和许多其他轻量级密码学原语的优点,通过以患者为中心的监测数据访问控制,能够保证物联网系统中医疗数据的安全性和隐私性。
参考文献:
[1] Fernandez R,Lord H,Halcomb E,et al. Implications for COVID-19:a systematic review of nurses' experiences of working in acute care hospital settings during a respiratory pandemic[J]. International Journal of Nursing Studies,2020:103637.
[2] Blanchet K D. Remote Patient Monitoring[J]. med econ,2008(2):127-130.
[3] 王磊,赵晓永.基于区块链机制的云计算环境下服务组合策略的研究[J]. 计算机应用研究,2019(01):81-86,90.
[4] Martino R,Cilardo A . Designing a SHA-256 Processor for Blockchain-based IoT Applications[J]. Internet of Things,2020:100254.
[5] 熊辉,郭兴元,康娟. 区块链技术与医疗健康大数据应用简析[J].中国市场,2020(11):159-160.
[6] Malina L,Hajny J,Dzurenda P,et al. Lightweight Ring Signatures for Decentralized Privacy-preserving Transactions[C]//International Conference on Security and Cryptography,2018(01):692-697.
[7] 付凯.针对ARX算法基于MILP的差分线性自动化搜索技术与模减差分的SMT模型[D].济南:山东大学,2016.
[8] Kiltz E,Winterhof A. Polynomial interpolation of cryptographic functions related to Diffie-Hellman and discrete logarithm problem[J].Discrete Applied Mathematics,2006(02):326-336.
[9] Dorri A,Kanhere S S,Jurdak R,et al. LSB:A Lightweight Scalable Blockchain for IoT security and anonymity[J]. Journal of Parallel and Distributed Computing,2019(134):180-197.
[10] Wang Y,Shen Y,Wang H,et al. MtMR:Ensuring MapReduce Computation Integrity with Merkle Tree-based Verifications[J]. IEEE Transactions on Big Data,2016(03):418-431.
[11] Christidis K,Devetsikiotis M. Blockchains and Smart Contracts for the Internet of Things[J]. IEEE Access,2016(4):2292-2303.
[12] 崔艳.基于Beta信誉系统的无线传感网络鲁棒安全自定位[J].计算机应用与软件,2015(05):127-131,156.