医疗信息系统智能合约的以太坊架构及实现

2019-05-22 07:58于永桥
产业与科技论坛 2019年7期
关键词:以太私钥合约

□于永桥

一、研究背景

以太坊是基于密码学技术和P2P通信技术构建的一个去中心化的区块链平台。在平台中,所有的交易信息都同步保存在每一个节点中[1]。与传统的中心化网络相比,对中心节点的攻击就可能会破坏整个系统,从而导致数据丢失。作为去中心化的网路平台,在每一个环节中采用分布式记账、分布式存储的方式,任何节点上的数据都是完备和平等的,这些数据块由以太坊等区块链平台进行维护[2]。这种网络共享方式,任何人都无法对数据进行操纵和篡改。在以太坊架构中,通过将区块单向级联成链,从而有效地保证了交易的不可篡改性和无法撤销性。

对于医疗信息系统来说,区块链具有先天的优势,从而彻底避免出现医疗数据造假、篡改医疗记录等事件的发生,保证了医疗数据的正确性和唯一性,同时其高冗余性也保证了数据的完整性和安全性。想象一下,在信息化和万物互联时代,涉及个人的敏感隐私资料,如身份信息、支付消费情况、疾病情况、治疗方案以及社保医保等信息,几乎是完全公开并被商家无偿使用的,患者的医疗信息在诊疗过程中患者是没有任何发言权的,出现医疗纠纷则完全依靠医疗机构的公信力,这种状态对所有人都非常危险。而以太坊通过智能合约可以对单项信息数据分配多把私钥,通过区块链多私钥权限保管模式确保个人敏感资料数据在全网络使用中的规范性和安全性[3]。这个规则是基于密码学算法而非信任,数据是透明的,任何人都无法篡改,只有授权的人或机构才能访问数据的具体内容。

对于医疗机构而言,基于区块链的以太坊架构提供了全新的医疗数据安全框架和创新,在不久的将来,以太坊架构将彻底改变人们对数据安全的认识,特别是在电子健康病例、基因和医疗数据包、医疗支付和理赔、药品的回溯和防伪以及健康管理、临床试验、药品从企业到用户的全物流管理等各方面将形成一个完整的闭环,极大地保证了数据的完整性和可追溯性,大大节约各种社会资源[4]。本文探讨了在以太坊架构上,对医疗全环节信息流构建智能合约的可能性。

二、医疗信息系统智能合约

以太坊为智能合约提供了良好的支持环境,利用区块链技术设计了一个安全机制,保证数据的不可篡改、加密安全。在技术上,通过哈希算法,将任何原始数据对应到特定的数字中,称为哈希值。任何数据发生变化,对应的哈希值就会发生变化并记录在网络中,便于后续追溯。单个节点对数据的修改是无效的,因为其付出的代价远远高于收益,也是无法实现的,从而保证了数据的稳定性和可靠性[3]。在医疗信息流的各个环节中,智能合约构成了各个环节之间的合同约定,在每一个环节中,当满足一定的条件时都会自动执行约定好的逻辑操作。例如从门诊-药房-医保环节中,如果取药环节条件满足就自动发送取药指令到药房,并同时向库房直至药厂发送相关信息更新,核对药品信息,最终自动送至病人处;如果触发了保险理赔条件,将赔偿亦自动释放给出险人,整个流程都可以用智能合约来实现。这种技术恰好解决了医疗行业多年来的痛点:医疗数据的隐私性和安全性。

以太坊的特征必将成为未来医疗行业最大的受益者,患者的医疗记录和个人隐私信息目前是完全不受患者控制的,这需要医疗机构要具有完全信任的保密机制。医疗信息的私密性和不被滥用是至关重要的核心要素,这些数据不应该被单纯的放在医疗机构的数据库中。另外,像指纹或虹膜这些身体数据在信息时代是如此重要,任何资料的大规模泄露都将会在未来的世界中引发金融灾难[2]。同时,医疗信息的完备性和可用性在医疗大数据时代又是至关重要的,区块链恰好能满足这些要求。所有这些数据都不应该被保存在某些医疗机构中,甚至成为他们牟利的工具。区块链就像世界上唯一的账本或数据库一样,它记录了每一个医疗环节中所有的历史数据。以太坊的分布式机制,保证了网络中所有节点的地位平等,任何对数据的篡改都是无效的,任何的交易信息都会在网络中被记录下来,同时任何人都可以下载整个的区块链,但在利用时需要得到授权。以门诊公钥加密系统为例,当患者在医疗系统中进行登记注册时,他得到的长长的地址实际上就是公钥,同时患者还有一把私钥,在授权自己信息的某种权利时,可以用他的私钥创建其独有的数字签名。门诊医生亦可以用患者的公钥来验证患者的签名的确是用其私钥创建的,也就是获得患者授权。

公开的就是安全的,但不等于任何人就可以滥用。智能合约保证了医疗数据无法篡改、无法撤销、每一次诊疗都会有记录,所有的信息都在所有网络上公开,并保证医疗数据的正确性和唯一性,因此不会造成医疗数据造假、泄露等问题[3]。由于医疗数据在每一个网络节点上都有备份,从而保证了单一节点上的故障不会破坏数据的完整性,数据不可遗失,而对于患者自己的隐私医疗数据,只有患者本人持有其私钥,从而确保了在整个网络上只有持有私钥的人才有资格查看数据。同时,通过一份智能合约,能够对单项医疗数据分配多把私钥,这种多私钥权限保管模式,使得任何人要对网络上的个人身份特征、疾病情况和医疗保险等信息的调取和使用,必须获得患者本人的私钥授权后才能进行访问,从而保证了个人敏感信息数据在全网络中使用的规范性和安全性。

以太坊智能合约为医疗信息安全提供了一个全新的创新框架,个人医疗记录不再记录在病历本上,这极容易丢失也无法保证医疗信息的完整性。未来个人医疗记录将保存在区块链网络节点上,把原本掌握在各个医疗结构手上的数据,公开共享,由患者私钥控制其访问权限,从而保证患者能详尽地了解自己完整的病史记录,对精准治疗和疾病预防提供指导,并作出健康规划。患者也可以对自己的医疗信息进行授权,从而在诊疗时,医疗机构可根据其医疗记录和历史情况,进行诊断。个人的医疗数据完全掌握在患者自己手中,而不存在某一个医疗机构中,从而消除了信息摩擦,也保证了信息的完整性,实现了信息共享。

更进一步说,普通健康人群的身体数据在信息时代也是重要的隐私情报和宝贵的信息资源,诸如身高体重、血糖血压甚至是唾液等,现在都是被商家无偿使用,并用来盈利的,这对患者是不公平的甚至是灾难。以太坊智能合约能通过个人基因和医疗数据的安全存储与授权使用私钥来获得,医疗健康服务商或企业要使用这些数据帮助药企有效研发新的药物,都需要患者的授权才能进行。

对于医疗机构来说,药品的采购及使用、医生的从业资质、对患者的健康管理、临床试验的各个环节都需要做到可回溯、可监管和可防伪,基于区块链的智能合约能自然的提供解决方案。建立在区块链基础上的药物一致性的物流配送和管理体系,做到药品数据即时更新共享,数据链上的药店、患者、药厂、医院甚至监管机构都能实时的观察数据流动。更进一步,智能合约还可以构建医疗从业人员的验证平台,同样允许从医人员、医疗单位等对信息进行验证,从而实验多点执业。在不久的未来,患者、医疗机构、医师、药企、保险商、监管机构等都可以在区块链上构建完整而独立的数据架构,在智能合约的基础上实现共享。

图1 医疗体系智能合约简要架构示意图

三、以太坊架构应用接口实现现状

智能合约确保了各个环节在交互时的安全性和完整性,从而保证了医疗信息的闭环操作。但是,对于一个界面友好的应用程序来说,还需要构造一个去中心化的应用来提供操作智能合约的用户接口,这就需要这些应用能很好地与以太坊进行交互。为了达到此目的,以太坊规定了每一个信息环节都需要实现的JSON RPC API,通过这个API可以采用各种通信机制来操作以太坊节点。因此,JSON RPC API的协议细节至关重要,通常用特定的语言做成封装库,以便于开发人员直接用此封装库开发出以太坊之上的去中心化应用。

以太坊用去中心化的应用程序(DApp)来实现智能合约的应用,用来实现提交交易数据到区块链并且从区块链中读取数据。目前,世界上已经有多家初创公司提前布局医疗行业区块链应用。Gem Health公司与菲利普公司合作成立一家医疗健康区块链公司,初步构建了一个网络基础设施,致力于构建一个全球化的医疗健康平台,从而为全人类提供更加私有化的医疗健康服务。目前已经初步具有完善的医疗数据、保险理赔和药品供应链、基因数据等方面的区块链数据节点。Healthnautica公司在Factom公司提供的区块链技术基础上,实现了医疗信息记录,大大方便了医院、医生和病人之间的沟通和信息共享,保证了医疗信息使用的规范性。BitHealth公司发明了解决诸如数据复制、医疗数据分散化等问题的区块链实现,可安全地在全球网络上传送和存在医疗健康数据,实现了患者可以保护个人隐私数据,医生在授权下可以调取和记录医疗信息。美国科学院和工程院双料院士George Church创建的Nebula公司运用区块链实现了基因、健康和疾病等数据追踪和共享机制,通过分权、秘钥结合区块链技术实现了数据保护。

四、结语

本文从理论和架构上初步探讨了在以太坊架构上,对医疗全环节信息流构建智能合约的可能性。医疗信息系统和基于区块链的智能合约天生具有较高的匹配度,两者结合,可大大降低各种医疗环节的成本,对医疗系统进行完善,大幅度改变医疗现状,实现医疗卫生行业更好的突破。医疗信息系统智能合约无论是对患者还是医疗机构来说都是共赢的选择。当然,现在离大规模商业化应用还很远,需要智能合约专家、医疗专家和信息技术专家通力合作,共同创新。

猜你喜欢
以太私钥合约
清扫机器人避障系统区块链私钥分片存储方法
比特币的安全性到底有多高
基于改进ECC 算法的网络信息私钥变换优化方法
车易链:做汽车业的“以太坊”
一种基于虚拟私钥的OpenSSL与CSP交互方案
A Study on the Contract Research Organization
谭嗣同之“仁本体论”的建构
以太互联 高效便捷 经济、可靠、易用的小型可编程控制器
合约必守,谁能例外!——对“情势变更”制度不可寄于过高期望