-
随着医疗行业的信息化发展和数字化医院的建设,医疗数据增长呈井喷之势。经IDC Digital调研,截至2020年医疗服务产生的数据总量将达40万亿GB,是2010年该数据的30倍。在过去几年中,我国医疗数据的生成和共享始终保持着较高的增长速度,由每月43.6亿GB增长到120.6亿GB。医疗信息化高速发展,也给医疗信息共享提出新的挑战。首先,来源广泛、更新迅速的海量医疗数据缺乏统一规划的医疗信息融合管理平台,致使数据标准乱、数据共享难、信息孤岛化严重;其次,患者未参与到医疗信息的访问控制策略当中,信息系统权限划分不明确,无法实现病人可控的个性化隐私保护;同时,医疗大数据时代的来临导致隐私信息公开透明,使得医疗信息去隐私化面临广泛多样的攻击,对数字签名医疗信息的溯源愈加困难[1]。
在医疗信息方面,目前主要采用数据集成和共享技术,如模式映射、数据复制、综合集成和基于语义的数据交换等,通过集成独立数据源中的有效数据来实现医疗信息共享[2]。但实践表明,传统数据集成方法不能有效适应当今环境的复杂性,不但增加维护成本还降低了医疗信息的共享效率。在医疗隐私信息保护方面,文献[3]提出基于安全多方计算的隐私保护决策树方案,来解决垂直分布数据集中的医疗隐私问题。文献[4]提出利用矩阵奇异值分解(SVD)、独立成分分析(ICA)和旋转数据扰动3种不同技术来隐藏敏感的数值属性。文献[5]采用粒子群算法(PSO)降低医疗隐私信息中的敏感项频率,从而提高隐私信息的安全性。文献[6]将基因算法引入到规则隐藏中,并基于可信第三方模式将该算法实现在OLAP数据立方体中来保护医疗数据信息。
上述解决方案均是基于中心化架构和关系型数据库来实现医疗数据共享和病人隐私保护。但中心式存储容易遭受数据丢失、更改和攻击,不能保证医疗信息的安全可信。同时,信息系统对医疗隐私信息的访问控制管理不严密,权限划分不明确,无法切实保障患者隐私的安全性。此前提出的技术具有一定的局限性,并不适用于大数据时代复杂的医疗信息融合环境,且实现成本较高。
区块链去中心化、不可篡改的特性更契合当今分布式安全存储数据的趋势[7],数据块无法篡改、无法撤销,链上的每一次动作都会被记录让医疗数据的正确性与唯一性得到保证。本文提出区块链架构下基于环签名的医疗大数据安全共享模型,为大数据时代的医疗信息提供数据共享、信息同步、隐私保护等全方位一体化管控服务。设计基于区块链的端到端体系架构,利用其不可篡改、可溯源的特性确保医疗信息的权威性和病人隐私的机密性。构建基于环签名的医疗隐私存储协议,利用环签名的完全匿名性在区块链公开透明的环境下保障医疗信息和病人隐私的安全性。区块链、智能合约及环签名将共同打造一个可信、智能和高效的医疗大数据安全共享平台,从根本上解决现行医疗信息共享平台存在的一系列问题。
-
本节主要介绍在区块链的架构下使用环签名设计完全匿名的用户医疗数据存放协议,进而保证区块链中医疗信息的隐私性。
-
在医疗信息区块链网络中,对于没有交易记录存在的用户,将自动发起部署合约的操作,进而产生交易。已经部署好的医疗智能合约实时监测网络中的动态,当满足预设的条件时,触发预设指令执行,交易T的序列化表示如下:
$$T = \left\{ \begin{gathered} {\rm{RLP}}({T_n}, {T_t}, {T_s}, {T_c}) \\ {\rm{RLP}}({T_n}, {T_t}, {T_d}, {T_s}) \\ \end{gathered} \right.$$ 式中,Tn表示账户产生交易的数量;Tt为消息调用的接受地址;Tc是医疗合约的代码。上述通过RLP运算序列化链接,部署合约的交易方的address即Tt为空,Td表示调用合约接口的数据,Ts代表交易信息的签名。
本模型采用EdDSA设计一次一密的交易环签名方案[16],交易发起方m随机选取私钥${\rm{s}}{{\rm{k}}_m} \in z_n^*$,通过pkm=skmG计算得到相应的公钥pkm,其中G为椭圆曲线的一个基准点。交易发起方选取一个公钥集R={pk1, pk2, …, pkn},其中不包括pkm,对于每一个公钥设定相应的vt和wt,两者均为随机设定。Li和Ri为公钥pki属性值。
当i=m时,即公钥属于签名方m的相应公钥属性值的计算如下:
$${L_m} = {v_m} * {G_{}}$$ $${R_m} = {v_m} * {\rm{H}}({\rm{p}}{{\rm{k}}_m})$$ 当$i \ne m$时,相应的公钥属性值计算如下:
$${L_i} = {v_i} * G + {w_i} * {\rm{p}}{{\rm{k}}_i}$$ $${R_i} = {v_i} * {\rm{H}}({\rm{p}}{{\rm{k}}_i}) + {w_i} * {l_m}$$ 式中,Im=skm*H(pkm),为该消息的签名镜像,用于防止双花攻击;H(pki)将pki映射到有限域椭圆曲线的一个点。
设定签名内容包括签名消息S、每个公钥对应的ci和ei这3大类。其中设定非签名者公钥满足ci=wi,ei=vi。对于签名者m计算方式如下:
$${c_m} = {{\rm{H}}_2}(S, {L_1}, {L_2}, \cdots , {L_n}, {R_1}, {R_2}, \cdots , {R_n}) - \sum\limits_{i = 1}^n {{c_i}} $$ $${e_m} = {v_m} - {c_m} * {\rm{s}}{{\rm{k}}_m}$$ 式中,H2是哈希函数,运算输出结果大小接近l阶的曲线,交易发起方m对消息的环签名Ts为:
$${T_s} = (s, {c_1}, {c_2}, \cdots , {c_m}, \cdots , {c_n}, {c_1}, {c_2}, \cdots , {c_m}, \cdots , {c_n})$$ 本模型内部对交易发起方的交易T进行有效性检查,首先检查其是否为规定的RLP结构,然后检测交易签名Ts,过程如下:
$$ \left\{ {\begin{array}{*{20}{l}} {{\alpha _i} = {e_i}G + {c_i}*{\rm{p}}{{\rm{k}}_i}}\\ {{\beta _i} = {e_i}{\rm{H}}\left( {{\rm{p}}{{\rm{k}}_i}} \right) + {c_i}*{l_m}} \end{array}} \right. $$ 判断上述公式是否满足,若相等表示签名合法,否则拒绝该签名。
-
医疗数据网络中的矿工节点B通过对一段时间内网络中交易T={T1, T2, …, Tn}进行收集,然后通过不断尝试随机数来构造符合预设条件的区块M确认交易。区块分为区块头和区块体两部分,区块头的序列化构造如下:
$$ {\rm{H}} = {\rm{RLP}}\left( {{H_p}, {H_o}, {H_{{\rm{tr}}}}, {H_b}, {H_s}, {H_d}, {H_n}, {H_t}, {H_{{\rm{no}}}}, {H_m}} \right) $$ 式中,Hp代表前一个区块的哈希值;Ho代表叔块的哈希值,通过哈希值将区块链接起来;Htr为确认交易内容的哈希根;Hb为产生区块的矿工的哈希值;Hs为状态根的哈希值;Hd代表区块的难度等级系数;Hn表示区块号,创始块为零;Ht表示时间戳;Hno与Hm分别代表随机数和混合哈希,两者共同作为矿工的工作量证明。
矿工在规定时间内成功构造出区块B后,在医疗数据区块链网络中广播新区块B,节点将按照区块的构造机制对区块B进行合法性验证,如果新区块有效就将其添加到区块链上,区块链网络中的其他节点需同步区块B以获得下一次的记账权,详细过程描述如图 3所示。
通过哈希值和时间戳进行新区块的链接和区块链的同步,医疗信息区块链的状态变化形式化描述如下:
$${\alpha _{t + {\rm{1}}}} = \lambda ({\alpha _t}, B)$$ 式中,${\alpha _t}$表示t时刻的医疗信息区块链状态;B为通过验证的新区块;${\alpha _{t + 1}}$表示添加新区块B后的医疗信息区块链状态:
$$ B = \left( {{T_0}, {T_1}, \cdots , {T_n}} \right) $$ 式中,区块B是一段时间内交易Ti的确认记录。所以,可以将${\alpha _{t + 1}}$状态描述如下:
$${\alpha _{t + 1}} = \gamma ( \cdots \lambda (\lambda ({\alpha _t}, {T_0}), {T_1}) \cdots )$$ 式中,γ为状态转变函数,${\alpha _{t + 1}}$的区块链包含网络中交易的所有信息。
-
本节从环签名的安全性和区块存储的安全性对模型整体的安全性进行分析。
-
一个安全的环签名方案应满足正确性、无条件匿名性和不可伪造性3个方面。
1) 正确性
验证签名方按照公式验证交易签名Ts,如果成立,验证通过。
$$\sum\limits_{i = 0}^n {{c_i}} = {{\rm{H}}_2}(S, {\alpha _0}, {\alpha _1}, \cdots , {\alpha _n}, {\beta _0}, {\beta _1}, \cdots , {\beta _n})$$ 式中,$i \ne m$时,${\alpha _i}$和${\beta _i}$的转化如下:
$${\alpha _i} = {e_i} * G + i{c_i} * {\rm{p}}{{\rm{k}}_i} = {v_i}G + {w_i} * {\rm{p}}{{\rm{k}}_i} = {L_i}$$ $${\beta _i} = {e_i}{\rm{H}}({\rm{p}}{{\rm{k}}_i}) + {c_i} * {I_m} = {v_i}{\rm{H}}({\rm{p}}{{\rm{k}}_i}) + {w_i} * {I_m} = {R_i}$$ 式中,$i = m$时,${\alpha _i}$和${\beta _i}$的转化如下:
$$\begin{gathered} {\alpha _m} = {e_m} * G + {c_m} * {\rm{p}}{{\rm{k}}_m} = \\ ({v_m} - {c_m} * {\rm{s}}{{\rm{k}}_m})G + {c_m} * {\rm{p}}{{\rm{k}}_m} = \\ {v_m} * G = {L_m} \\ \end{gathered} $$ $$\begin{gathered} {\beta _m} = {e_m}{\rm{H}}({\rm{p}}{{\rm{k}}_m}) + {c_m} * {I_m} = \\ ({v_m} - {w_m} * {\rm{s}}{{\rm{k}}_m}){\rm{H}}({\rm{p}}{{\rm{k}}_m}) + {w_m} * {\rm{s}}{{\rm{k}}_m}{\rm{H}}({\rm{p}}{{\rm{k}}_m}) = \\ {v_m}{\rm{H}}({\rm{p}}{{\rm{k}}_m}) = {R_m} \\ \end{gathered} $$ 由此,可以使用上述关系按照以上方法来验证此环签名方案的的正确性:
$$\begin{gathered} {{\rm{H}}_{\rm{2}}}(S, {\alpha _0}, {\alpha _1}, \cdots , {\alpha _m}, \cdots , {\alpha _n}, {\beta _0}, {\beta _1}, \cdots , {\beta _m}, \cdots , {\beta _n}) = \\ \;\;{{\rm{H}}_2}(S, {L_0}, {L_1}, \cdots , {L_m}, \cdots , {L_n}, {R_0}, {R_1}, \cdots , {R_m}, \cdots , {R_n}) = \\ {c_m} + \sum\limits_{i = 1, i \ne m}^n {{c_i} = } \sum\limits_{i = 0}^n {{c_i}} \\ \end{gathered} $$ 2) 无条件匿名性分析
在环签名Ts中,计算ci,ei所需的Li,Ri值是签名者通过随机选取相应的vi,mi计算得出的,所以签名Ts的结果在G中呈均匀分布状态。环签名成员之外能够猜出实际签名人的概率不超过1/(n+1),而环内的城管猜出实际签名者的概率不超过1/n,所以签名方案满足无条件匿名性。
3) 不可伪造性分析
攻击者从pkm=skmG中计算出skm是一个椭圆曲线上的离散对数非常困难,可以认为私钥是安全的。
在未知密钥的条件下计算出密钥镜像skm*H(pkm)也是不可能的,即使攻击者随机选取vi,mi伪造Lm,Li,Rm,Ri和em,计算中都需要得到签名者的私钥,所以攻击者伪造签名Ts是不可能的。
-
要想成功发起一次区块伪造攻击,攻击者必须比诚实节点更快的产生出新的区块。本节从概率角度将攻击事件模型化,分析攻击者伪造区块并成功替代诚实节点的可能性。
根据文献[19]所述,攻击者成功填补某一既定差距的可能性,可以近似看作赌徒破产问题。假定一个赌徒拥有无限的透支信用,然后开始进行潜在次数为无穷的赌博,试图填补上自己的亏空。那么可以计算出他填补上亏空的概率,也就是该攻击者赶上诚实链条的概率,计算如下:
$${P_z} = 1 - \sum\limits_{k = 0}^z {\frac{{{\lambda ^k}{e^{ - \lambda }}}}{{k!}}} \left[ {1 - \frac{{{q^{z - k}}}}{p}} \right]\;\;\;\lambda = z\frac{q}{p}$$ 式中,变量p为诚实节点制造出下一个节点的概率,变量q为攻击者制造出下一个节点的概率。如图 7所示,通过对q=0.1与q=0.3两种情况下进行Pz的大小进行计算统计,可以发现概率对z值呈指数下降。而且医疗数据区块链网络中拥有大量的节点和算力,这样攻击者成功制造出区块并修改网络中所有的节点区块记录的概率接近于零。
Medical Blockchain of Privacy Data Sharing Model Based on Ring Signature
-
摘要: 随着医疗行业信息化的推进,医疗领域已进入大数据时代,但在数据异构、互操作性和隐私保护等方面仍面临诸多挑战。针对上述问题,该文构建了基于环签名的去中心化医疗大数据共享模型。该模型基于区块链去中心化思想维护一个可靠的医疗数据账本,确保隐私数据的不可篡改。构建了基于环签名的隐私数据存储协议,利用其完全匿名性保障了医疗数据和病人身份隐私的安全性;提出了基于智能合约自动化执行预设指令的医疗信息严密访问控制管理机制,通过明确划分医疗隐私信息访问权限来保障医疗隐私数据的权威性和机密性。经安全性测试结果表明,相比于传统医疗大数据共享模式,该模型具有更好的实时性和鲁棒性。Abstract: With the progress of information development of medical industry, the medical field has got into the era of big data. However, it still faces many challenges in data heterogeneity, interoperability, and privacy protection. In response to the above problems, a decentralized medical big data sharing model based on ring signature is constructed. The model maintains a reliable medical ledger database based on the decoupling of blockchain, ensuring that the privacy data cannot be tampered. It constructs a private data storage protocol based on ring signature, which guarantees medical data and patient identity privacy with its full anonymity. We proposed a medical information strict access control management mechanism based on smart contract automation execution of preset instructions. The authority and confidentiality of medical privacy data are guaranteed by clearly dividing the access rights of medical privacy information. The safety test results show that the model has better real-time and robustness than the traditional medical big data sharing model.
-
Key words:
- blockchain /
- medical big data /
- ring signature /
- safe sharing /
- smart contract
-
[1] DENNIS R, OWENSON G, AZIZ B. A temporal blockchain: A formal analysis[C]//2016 International Conference on Collaboration Technologies and Systems (CTS). Orlando, FL, USA: IEEE, 2016: 430-437. [2] DIMITROV D V. Medical internet of things and big data in healthcare[J]. Healthcare Informatics Research, 2016, 22(3): 156-163. doi: 10.4258/hir.2016.22.3.156 [3] SHEELA M A, VIJAYALAKSHMI K. A novel privacy preserving decision tree induction[C]//2013 IEEE Conference on Information & Communication Technologies. Thuckalay, Tamil Nadu, India: IEEE, 2013: 1075-1079. [4] LAKSHMI M N, RANI K S. SVD based data transformation methods for privacy preserving clustering[J]. International Journal of Computer Applications, 2013, 78(3): 39-43. doi: 10.5120/13473-1157 [5] BONAM J, REDDY A R, KALYANI G. Privacy preserving in association rule mining by data distortion using PSO[C]// Advances in Intelligent Systems and Computing.[S.l.]: Springer, 2014: 551-558. [6] DEHKORDI M N. A novel association rule hiding approach in OLAP data cubes[J]. Indian Journal of Science and Technology, 2013, 6(2): 4063-4075. [7] VUKOLI M. Rethinking permissioned blockchains[C]// Proceedings of the ACM Workshop on Blockchain, Cryptocurrencies and Contracts. Abu Dhabi, United Arab Emirates: ACM, 2017: 3-7. [8] KIYOMOTO S, RAHMAN M S, BASU A. On Blockchain-based anonymized dataset distribution platform[C]//2017 IEEE 15th International Conference on Software Engineering Research, Management and Applications (SERA). London, UK: IEEE, 2017: 85-92. [9] SASSON E B, CHIESA A, GARMAN C, et al. Zerocash: Decentralized anonymous payments from bitcoin[C]//2014 IEEE Symposium on Security and Privacy. San Jose, CA, USA: IEEE, 2014: 459-474. [10] WOOD G. Ethereum: A secure decentralised generalised transaction ledger[J]. Ethereum Project Yellow Paper, 2014, 151:1-32 http://d.old.wanfangdata.com.cn/Periodical/jsjyy201904022 [11] PETERS G W, PANAYI E. Banking beyond banks and money[M]. Berlin: Springer, 2016. [12] DHILLON V, METCALF D, HOOPER M. Blockchain Enabled Applications[M]. Berlin: Springer, 2017. [13] ZHANG Y H, HU Y, XIE J, et al. Efficient ring signature schemes over NTRU Lattices[J]. Security and Communication Networks, 2016, 9: 5252-5261. doi: 10.1002/sec.1694 [14] WU L, MENG K, XU S, et al. Democratic centralism: A hybrid blockchain architecture and its applications in energy internet[C]//2017 IEEE International Conference on Energy Internet (ICEI). Beijing, China: IEEE, 2017: 176-181. [15] LIND J, NAOR O, EYAL I, et al. Teechain: Reducing storage costs on the blockchain with offline payment channels[C]//11th ACM International Systems and Storage Conference. Haifa, Israel: ACM, 2018: 125. [16] DAI M, ZHANG S, WANG H, et al. A low storage room requirement framework for distributed ledger in blockchain[J]. IEEE Access, 2018, 6: 22970-22975. doi: 10.1109/ACCESS.2018.2814624 [17] KOSBA A, MILLER A, SHI E, et al. Hawk: The blockchain model of cryptography and privacy-preserving smart contracts[C]//2016 IEEE Symposium on Security and Privacy (SP). San Jose, CA, USA: IEEE, 2016: 839-858. [18] HALPIN H, PIEKARSKA M. Introduction to security and privacy on the blockchain[C]//2017 IEEE European Symposium on Security and Privacy Workshops (EuroS & PW). Paris, France: IEEE, 2017: 1-3. [19] XU C, WANG K, XU G, et al. Making big data open in collaborative edges: A blockchain-based framework with reduced resource requirements[C]//2018 IEEE International Conference on Communications (ICC). Kansas City, MO, USA: IEEE, 2018: 1-6.