摘 要:為解決目前醫(yī)療區(qū)塊鏈對(duì)于患者個(gè)人隱私及數(shù)據(jù)安全的不足,借助區(qū)塊鏈和密鑰交換技術(shù)提出一種新的以用戶為隱私中心的基于區(qū)塊鏈的醫(yī)療數(shù)據(jù)可信共享方案.結(jié)合密鑰交換技術(shù)和智能合約進(jìn)行數(shù)據(jù)密鑰的驗(yàn)證和可信交換,實(shí)現(xiàn)數(shù)據(jù)安全可信共享和交易雙方的權(quán)益保護(hù).實(shí)驗(yàn)及理論證明,與現(xiàn)有方案相比,該方案具有低消耗和高吞吐率,具有一定的優(yōu)勢(shì)和適用性.
關(guān)鍵詞:
區(qū)塊鏈;電子病歷;數(shù)據(jù)共享
中圖分類號(hào):
TP391"" 文獻(xiàn)標(biāo)志碼:
A"" 文章編號(hào):
1000-1565(2024)03-0322-07
A blockchain-based trusted data sharing scheme for electronic medical records
YANG Xiaohui, JIA Kai
(School of Cyber Security and Computer, Hebei University, Baoding 071002, China)
Abstract: In order to address the current inadequacies of patient privacy and data security in medical blockchain, a blockchain-based trusted sharing scheme with user privacy as the center is proposed with the help of blockchain and key exchange technology. Combining key exchange technology and smart contracts for data key verification and trusted exchange, data security, trusted sharing and protection of rights and interests of both parties in the transaction are realized. Experiments and theories have proved that compared with existing schemes, this scheme has low consumption and high throughput, and has certain advantages and applicability.
Key words: blockchain; electronic medical record; data sharing
目前,電子醫(yī)療檔案(electronic medical records,簡(jiǎn)稱EMR)行業(yè)正在迅速發(fā)展.采用EMR代替?zhèn)鹘y(tǒng)的紙質(zhì)文檔已被公認(rèn)為是邁向醫(yī)療保健現(xiàn)代化的重要一步.隨著EMR數(shù)據(jù)的飛速增長(zhǎng),數(shù)據(jù)安全隱私成為不可忽略的問題.IBM《2022年數(shù)據(jù)泄露成本報(bào)告》顯示,2022年醫(yī)療行業(yè)平均數(shù)據(jù)泄露成本最高,達(dá)到1 000萬美元,相較于2021年增長(zhǎng)41.6%.在數(shù)據(jù)量快速增長(zhǎng)和數(shù)據(jù)泄露日益嚴(yán)峻的背景下,如何構(gòu)建能實(shí)現(xiàn)數(shù)據(jù)安全和隱私安全的EMR管理方案成為維系醫(yī)療保健現(xiàn)代化健康發(fā)展的關(guān)鍵因素.
EMR數(shù)據(jù)的敏感性和特殊性決定了其對(duì)于數(shù)據(jù)擁有者及數(shù)據(jù)使用者的不同意義,尤其是數(shù)據(jù)的真實(shí)性對(duì)于雙方都有重要的價(jià)值.傳統(tǒng)的以機(jī)構(gòu)為中心的EMR信息管理系統(tǒng)容易造成患者訪問數(shù)據(jù)的障礙,降低患者參與數(shù)據(jù)處理、數(shù)據(jù)移植和信息交換的能力[1].數(shù)據(jù)存儲(chǔ)中心受到攻擊時(shí)易造成大規(guī)模的數(shù)據(jù)泄露和破壞[2],具體而言主要存在以下問題:1)單點(diǎn)故障.目前醫(yī)療機(jī)構(gòu)數(shù)據(jù)存儲(chǔ)方式基本屬于集中式存儲(chǔ),易造成單點(diǎn)故障,一旦中央服務(wù)器宕機(jī)或受到攻擊,整個(gè)系統(tǒng)都會(huì)受到影響.2)醫(yī)療數(shù)據(jù)篡改.EMR的存儲(chǔ)服務(wù)由醫(yī)療機(jī)構(gòu)和云服務(wù)商提供,患者無法確保自身醫(yī)療數(shù)據(jù)的完整性和真實(shí)性,一旦發(fā)生醫(yī)療糾紛,患者的合法權(quán)益很難得到保障.3)數(shù)據(jù)共享中的隱私泄露.由于不同醫(yī)療機(jī)構(gòu)使用的數(shù)據(jù)庫和云服務(wù)商沒有統(tǒng)一標(biāo)準(zhǔn),且各類服務(wù)提供商之間往往存在技術(shù)壁壘,因此很難在不披露患者隱私的情況下進(jìn)行數(shù)據(jù)共享,且數(shù)據(jù)共享的質(zhì)量和速度難以保證.
區(qū)塊鏈(Blockchain)技術(shù)因其鏈?zhǔn)降姆植际劫~本結(jié)構(gòu),具有去中心化、多方維護(hù)、不可篡改和可溯源的特性,與EMR所要求的數(shù)據(jù)安全屬性十分契合[3],它可以實(shí)現(xiàn)鏈上數(shù)據(jù)不被篡改,且區(qū)塊鏈用戶可以借助區(qū)塊鏈獲取安全且可驗(yàn)證的數(shù)據(jù)路徑.為解決上述的隱私和互信問題,本文基于區(qū)塊鏈構(gòu)建了一種可信的醫(yī)療數(shù)據(jù)共享方案,借助密鑰交換技術(shù)和智能合約,實(shí)現(xiàn)用戶對(duì)數(shù)據(jù)使用權(quán)的完全控制及相應(yīng)的權(quán)益獲取,同時(shí)能在雙方不互信任的前提下實(shí)現(xiàn)可信的醫(yī)療數(shù)據(jù)交換.
1 相關(guān)工作
醫(yī)療數(shù)據(jù)結(jié)構(gòu)多樣、數(shù)據(jù)量大、復(fù)雜程度高,將數(shù)據(jù)完全上鏈雖能最大程度保護(hù)數(shù)據(jù)不被篡改,但是空間開銷和通信開銷難以承受.目前主流方案均以元數(shù)據(jù)上鏈、原始數(shù)據(jù)上傳到云服務(wù)器的方式進(jìn)行存儲(chǔ).但是云服務(wù)器具有誠實(shí)且好奇性,因此在此類方案中的云服務(wù)器具有半可信性.基于云服務(wù)器的安全可靠假設(shè)不再成立,且集中式云服務(wù)器可能導(dǎo)致電子醫(yī)療網(wǎng)絡(luò)出現(xiàn)故障的可能性,Nguyen等[4]和Alrebdi等[5]均提出了基于區(qū)塊鏈和星際文件系統(tǒng)(interPlanetary file system,簡(jiǎn)稱IPFS)的醫(yī)療健康數(shù)據(jù)共享模型,IPFS負(fù)責(zé)實(shí)現(xiàn)數(shù)據(jù)安全,智能合約實(shí)現(xiàn)可信的訪問控制.就數(shù)據(jù)共享及數(shù)據(jù)授權(quán)問題,鐘楠等[6]結(jié)合門限簽名技術(shù)和智能合約實(shí)現(xiàn)患者數(shù)據(jù)的隱私共享.Niu等[7]將EMR關(guān)鍵詞和數(shù)據(jù)分別存儲(chǔ)在區(qū)塊鏈和醫(yī)院云服務(wù)器上,解決了存儲(chǔ)空間問題和云服務(wù)器半誠實(shí)搜索問題,并通過數(shù)據(jù)公開審計(jì)機(jī)制,防止醫(yī)生以虛假身份上傳虛假的數(shù)據(jù).AL Omar等[8]基于假名和橢圓曲線加密算法(elliptic curve cryptography,簡(jiǎn)稱ECC)構(gòu)建了EMR數(shù)據(jù)存儲(chǔ)和分享模型.Zhang等[9]提出了FHIRChain模型,該模型將FHIR數(shù)據(jù)元素(具有唯一標(biāo)識(shí)標(biāo)簽)與基于令牌的設(shè)計(jì)相結(jié)合,基于區(qū)塊鏈以分布式和可驗(yàn)證的方式進(jìn)行數(shù)據(jù)交換,并基于智能合約對(duì)參與者進(jìn)行身份驗(yàn)證和管理數(shù)據(jù)授權(quán).Hardin等[10]提出了Amanuensis體系,通過區(qū)塊鏈和可信執(zhí)行環(huán)境來保證數(shù)據(jù)來源的可靠性,并通過組織聯(lián)盟,共同負(fù)責(zé)驗(yàn)證數(shù)據(jù)的完整性并控制數(shù)據(jù)的訪問策略,通過區(qū)塊鏈記錄和執(zhí)行訪問策略,確保相關(guān)內(nèi)容不被篡改.Guo等[11]提出了多權(quán)限ABS簽名方案,患者根據(jù)屬性確認(rèn)消息,并采用多權(quán)威機(jī)構(gòu)避免密碼托管問題.Tan等[12]基于密文策略屬性基加密構(gòu)建區(qū)塊鏈?zhǔn)跈?quán)方案,鏈上存儲(chǔ)公鑰和策略列表,第三方發(fā)布私鑰、解密參數(shù)等,屬性滿足用戶才可以實(shí)現(xiàn)數(shù)據(jù)訪問.
2 關(guān)鍵技術(shù)
2.1 區(qū)塊鏈技術(shù)
區(qū)塊鏈技術(shù)是利用加密鏈?zhǔn)絽^(qū)塊結(jié)構(gòu)來驗(yàn)證和存儲(chǔ)數(shù)據(jù),利用分布式節(jié)點(diǎn)共識(shí)算法來生成和更新數(shù)據(jù),因其鏈?zhǔn)降臄?shù)據(jù)結(jié)構(gòu)具有去中心化、不可篡改、可溯源、流程透明和交易匿名等特性,在多行業(yè)領(lǐng)域內(nèi)都擁有廣泛的發(fā)展前景.根據(jù)低層節(jié)點(diǎn)的權(quán)限機(jī)制,區(qū)塊鏈一般可以分為公有鏈、私有鏈和聯(lián)盟鏈.具體而言,公有鏈允許任何用戶自由創(chuàng)建賬戶、驗(yàn)證交易并將區(qū)塊添加到賬本中,基于共識(shí)實(shí)現(xiàn)完全去中心化的信任機(jī)制;私有鏈的所有者有權(quán)限制任何用戶在鏈上的任何行為;聯(lián)盟鏈一般為多機(jī)構(gòu)共同管理,通過身份認(rèn)證、用戶分組和權(quán)限限制等方案使參與者在有限自由的情況下進(jìn)行鏈上操作.
智能合約是部署在區(qū)塊鏈上的一種自動(dòng)執(zhí)行的程序,是計(jì)算機(jī)程序和系統(tǒng)參與者的結(jié)合,具有規(guī)范性、不可逆性和不可違約性.一旦滿足智能合約中的任何條件,觸發(fā)語句就會(huì)自動(dòng)執(zhí)行相應(yīng)的功能.以太坊在其區(qū)塊鏈上實(shí)施了一種近乎圖靈完備的語言Solidity,可以構(gòu)筑功能復(fù)雜的智能合約,任何人可以在區(qū)塊鏈上部署去中心化應(yīng)用程序(decentralized applications,簡(jiǎn)稱Dapps),用以實(shí)現(xiàn)多領(lǐng)域的靈活運(yùn)用.
2.2 橢圓曲線Diffie-Hellman密鑰交換算法
橢圓曲線Diffie-Hellman密鑰交換算法(elliptic curve cryptography-diffie-hellman,簡(jiǎn)稱ECC-DH)是一種基于非對(duì)稱密鑰的密鑰交換算法,通信雙方可以在不暴露任何秘密信息的情況下協(xié)商出對(duì)稱密鑰.該方法利用的是橢圓曲線上的離散對(duì)數(shù)問題,即已知G和x*G求x的難題.相較于經(jīng)典的DH算法,ECC-DH算法借助ECC實(shí)現(xiàn)了更短的密鑰長(zhǎng)度和更高的安全性.
假設(shè)密鑰交換雙方為Alice、Bob,其有共享的曲線參數(shù)(橢圓曲線E、階N、基點(diǎn)G).ECC-DH密鑰交換流程如下:
1)Alice生成隨機(jī)整數(shù)a,計(jì)算A=a*G.Bob生成隨機(jī)整數(shù)b,計(jì)算B=b*G.
2)Alice將A傳遞給Bob,Bob將B傳遞給Alice.
3)Alice和Bob根據(jù)已有參數(shù)計(jì)算,若CEK=b*A=b*(a*G)=a*(b*G)=a*B=CEK,即雙方得到一致的會(huì)話密鑰CEK.若攻擊者截獲通信消息得到A、B、G,現(xiàn)有算力下其幾乎不可能計(jì)算得到a和b,繼而也無法得到會(huì)話密鑰CEK.
3 基于區(qū)塊鏈的可信醫(yī)療數(shù)據(jù)共享方案
3.1 數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)
本方案基于聯(lián)盟鏈構(gòu)建醫(yī)療區(qū)塊鏈,任何用戶均需要通過驗(yàn)證才可進(jìn)行鏈上操作.患者在可信的醫(yī)療機(jī)構(gòu)進(jìn)行醫(yī)療活動(dòng)后生成EMR,選擇數(shù)據(jù)脫敏后通過對(duì)稱加密算法(AES)進(jìn)行數(shù)據(jù)加密并存儲(chǔ)于IPFS,用戶每次加密使用本地區(qū)塊鏈錢包隨機(jī)生成的密鑰.收到IPFS返回的數(shù)據(jù)地址后,患者構(gòu)建EMR的元數(shù)據(jù)并將其上傳到區(qū)塊鏈上,構(gòu)建的元數(shù)據(jù)的核心結(jié)構(gòu)如表1所示,其中對(duì)密鑰進(jìn)行的哈希運(yùn)算使用SHA-256,標(biāo)準(zhǔn)疾病分類代碼使用國家標(biāo)準(zhǔn).
3.2 數(shù)據(jù)共享方案
3.2.1 方案組成
本方案中設(shè)計(jì)的實(shí)體包括患者、數(shù)據(jù)需求商、區(qū)塊鏈以及IPFS,設(shè)計(jì)的網(wǎng)絡(luò)包括通訊網(wǎng)絡(luò)和區(qū)塊鏈網(wǎng)絡(luò).相關(guān)實(shí)體及網(wǎng)絡(luò)關(guān)系如圖1所示.
所設(shè)計(jì)的患者擁有一個(gè)基于區(qū)塊鏈熱錢包設(shè)計(jì)的本地客戶端,不僅包含了區(qū)塊鏈錢包具有的區(qū)塊鏈地址生成、存儲(chǔ)和交易的能力之外,還具有在通訊網(wǎng)絡(luò)進(jìn)行通訊交流的能力.所設(shè)計(jì)的區(qū)塊鏈基于聯(lián)盟鏈構(gòu)建,只有相關(guān)用戶通過驗(yàn)證后其地址才能在鏈上進(jìn)行相應(yīng)操作.所設(shè)計(jì)的數(shù)據(jù)需求商泛指對(duì)數(shù)據(jù)有需求的相關(guān)機(jī)構(gòu),如醫(yī)療、科研、保險(xiǎn)行業(yè)等合法機(jī)構(gòu).所設(shè)計(jì)的IPFS為分布式文件存儲(chǔ)管理系統(tǒng),能夠?qū)崿F(xiàn)文件的長(zhǎng)期保存以及回溯.
3.2.2 數(shù)據(jù)定位
數(shù)據(jù)需求商依據(jù)所需疾病對(duì)應(yīng)的標(biāo)準(zhǔn)疾病代碼在區(qū)塊鏈上進(jìn)行數(shù)據(jù)搜尋,獲取相應(yīng)患者區(qū)塊鏈地址和數(shù)據(jù)位置后,在通訊網(wǎng)絡(luò)向患者發(fā)出數(shù)據(jù)共享請(qǐng)求.
3.2.3 臨時(shí)會(huì)話構(gòu)建
患者同意與數(shù)據(jù)需求商進(jìn)行數(shù)據(jù)共享后,雙方利用ECC-DH算法及其共有參數(shù)構(gòu)建臨時(shí)會(huì)話密鑰CEK.在CEK構(gòu)建成功后,患者和數(shù)據(jù)需求商可以進(jìn)行加密通信,完成交易費(fèi)用fee、交易時(shí)間t和相關(guān)數(shù)據(jù)請(qǐng)求等具體交易內(nèi)容的溝通協(xié)商.通訊結(jié)束后,患者根據(jù)協(xié)商一致的內(nèi)容構(gòu)建智能合約參數(shù)TPP=(Ck,feep,tp),其中Ck=CEKPk,同樣,數(shù)據(jù)需求商構(gòu)建合約參數(shù)TPD=(Addr,CEKD,feeD,tD),其中Addr為患者的區(qū)塊鏈地址,其上保存著EMR對(duì)應(yīng)的Hashk.
3.2.4 密鑰驗(yàn)證及交易
雙方完成合約參數(shù)構(gòu)建后,數(shù)據(jù)需求商調(diào)用區(qū)塊鏈上的驗(yàn)證交易合約Verify transaction,合約使用預(yù)先設(shè)計(jì)的算法,雙方提供的合約參數(shù)TPP、TPD以及鏈上數(shù)據(jù)實(shí)現(xiàn)共識(shí)驗(yàn)證、密鑰驗(yàn)證、費(fèi)用轉(zhuǎn)移和密鑰密文傳遞的功能.合約Verify transaction的具體算法如下,其中,P代表患者,D代表數(shù)據(jù)需求商.
首先,智能合約在約定交易時(shí)間判斷雙方給出的交易時(shí)間和交易費(fèi)用是否一致,如果一致,則證明雙方就這筆交易達(dá)成共識(shí),否則,智能合約將中斷合約的執(zhí)行.
共識(shí)驗(yàn)證通過后,智能合約首先獲取并驗(yàn)證區(qū)塊鏈上的數(shù)據(jù)需求商地址的余額是否能夠覆蓋此次數(shù)據(jù)交易的費(fèi)用fee,該條件滿足之后,合約在鏈上獲取Addr上存儲(chǔ)的元數(shù)據(jù),并獲取其中存儲(chǔ)的哈希值Hashk,用于協(xié)助驗(yàn)證患者提供的解密密鑰k的真實(shí)性.具體的驗(yàn)證方法如下:
患者在合約參數(shù)中提供Ck為患者提供的私有證據(jù),區(qū)塊鏈上存儲(chǔ)的Haskk為預(yù)先存儲(chǔ)的公開證據(jù),若滿足
Hashk=Hash(CEKDCk)
=Hash(CEKDCEKPkP)=Hashk,
(1)
即說明用戶的私有證據(jù)的原像k和公開證明的原像kP相同,密鑰的真實(shí)性驗(yàn)證完成.隨后合約進(jìn)行轉(zhuǎn)賬操作,并將Ck返回給數(shù)據(jù)需求商.
3.2.4 EMR數(shù)據(jù)解密
數(shù)據(jù)需求商獲得智能合約返回的Ck后,利用CEK對(duì)其進(jìn)行解密獲得所需的EMR對(duì)稱加密密鑰k.隨后數(shù)據(jù)需求商根據(jù)元數(shù)據(jù)上存儲(chǔ)的Addr_IPFS獲取對(duì)應(yīng)的加密EMR數(shù)據(jù)在IPFS上的地址,進(jìn)行下載解密操作,獲取所需的EMR原始數(shù)據(jù).
4 實(shí)驗(yàn)與分析
實(shí)驗(yàn)方案在個(gè)人計(jì)算機(jī)上進(jìn)行,主要參數(shù)為Intel(R) Core(TM) i5,CPU-2.90 GHz,16 GB RAM,Win 11,64位操作系統(tǒng).智能合約使用Solidity編寫,借助Remix在以太坊Ropsten測(cè)試網(wǎng)絡(luò)上部署運(yùn)行并進(jìn)行測(cè)試.
4.1 智能合約消耗評(píng)估
部署和調(diào)用智能合約需要消耗Gas,也就是以太坊虛擬機(jī)的加密燃料.在以太坊環(huán)境運(yùn)行任何DApps都會(huì)消耗發(fā)起方的Gas,Gas消耗與智能合約的數(shù)據(jù)處理量和算法難度有關(guān).數(shù)據(jù)量越大,操作越復(fù)雜,Gas成本越高,因此可以有效反映合約的資源消耗.以太坊上的用戶可以通過Eth支付Gas費(fèi)用,Eth的價(jià)格和以太坊的統(tǒng)計(jì)數(shù)據(jù)是實(shí)時(shí)變化的,使用2023年1月1日的數(shù)據(jù),1Eth約為1 207 USD,區(qū)塊生成時(shí)間約為15 s,Gasprice為20 Gwei(0.00000002Eth/Gas).計(jì)算Gas的公式[13]如下:
Feeeth=Gasprice*Gasused,
FeeFiat=Feeeth*Ethprice.(2)
表2顯示了智能合約Verify transaction的執(zhí)行成本.受共識(shí)機(jī)制、加密貨幣價(jià)格和Gasprice的影響,在測(cè)試網(wǎng)絡(luò)上成功完成一次合約Verify transaction的執(zhí)行成本約為3.45美元,驗(yàn)證失敗的費(fèi)用約為2.95美元.2022年9月,以太坊的共識(shí)機(jī)制由PoW更改為PoS,由于市場(chǎng)對(duì)加密貨幣Eth價(jià)格的共識(shí),其與法幣的匯率并未發(fā)生明顯變化.如果部署在采用其他共識(shí)方案的公有鏈上,例如BSC鏈(采用PoSA共識(shí))或Sol鏈(采用PoH共識(shí)),其Gas消耗成本將微不足道.本方案基于聯(lián)盟鏈設(shè)計(jì),因此可以建立一個(gè)高效經(jīng)濟(jì)的共識(shí)機(jī)制,從而顯著降低智能合約消耗的成本和費(fèi)用.
相較于方案[8],本方案中使用的合約輸入數(shù)據(jù)為TPP和TPD.而方案[8]的合約投入與EMR數(shù)據(jù)的大小呈正相關(guān),對(duì)于較大的EMR數(shù)據(jù)而言其成本較高.本方案設(shè)計(jì)的合約輸入數(shù)據(jù)為TPP和TPD,它們的大小是固定的,且一般明顯小于EMR的數(shù)據(jù)大小,因此Gas消耗量是確定的且相對(duì)較小,在EMR數(shù)據(jù)大小較大時(shí)優(yōu)勢(shì)更加明顯.
4.2 加解密消耗比較
為了實(shí)現(xiàn)EMR數(shù)據(jù)隱私安全,存儲(chǔ)電子病歷時(shí)進(jìn)行加密操作是必要的.為了分析加密和解密的耗時(shí),構(gòu)建了一個(gè)20 MB到480 MB的字符串?dāng)?shù)據(jù)集,分別使用本文的加密方案和文獻(xiàn)[8]的方案對(duì)數(shù)據(jù)進(jìn)行處理,結(jié)果如圖2所示.可以看出,這兩種方案在加密和解密過程中曲線的增長(zhǎng)率幾乎是線性的,運(yùn)算時(shí)間與數(shù)據(jù)量呈現(xiàn)正相關(guān),算力確定的情況下能預(yù)計(jì)耗費(fèi)時(shí)間.在時(shí)間消耗上,本方案的加密時(shí)間和解密時(shí)間分別是文獻(xiàn)[8]方案的28.5%和33.3%.另外,隨著數(shù)據(jù)量的增加,本方案的時(shí)間消耗增長(zhǎng)更慢,因此在體積較大的數(shù)據(jù)中有更好的適應(yīng)性.總體而言,本方案加密和解密時(shí)間很短且可預(yù)測(cè).本方案的數(shù)據(jù)加解密階段是可變和獨(dú)立的過程,可變是指不同用戶的輸入大小可以不同,獨(dú)立是指不同用戶的數(shù)據(jù)處理不相互依賴,因此可以適應(yīng)各種計(jì)算條件.
4.3 吞吐率評(píng)估
本方案基于聯(lián)盟鏈設(shè)計(jì),智能合約的實(shí)驗(yàn)在以太坊測(cè)試網(wǎng)絡(luò)環(huán)境下進(jìn)行.以太坊的交易確認(rèn)時(shí)間長(zhǎng),吞吐率與GasLimit、TxGas和BlockTime有關(guān),其中,GasLimit是區(qū)塊的Gas限制,TxGas是計(jì)算出區(qū)塊所需的Gas交易的執(zhí)行時(shí)間,BlockTime是出塊的時(shí)間間隔,理論TPS可以使用以下公式計(jì)算:
TPS=GasLimitTxGas*BlockTime .(3)
出塊時(shí)間過長(zhǎng)或GasLimit設(shè)置過高會(huì)導(dǎo)致單個(gè)區(qū)塊記錄交易過多,數(shù)據(jù)量過大,繼而降低各節(jié)點(diǎn)的塊同步速度.為避免影響區(qū)塊的同步速度,設(shè)置區(qū)塊的間隔為5 s,單個(gè)區(qū)塊的GasLimit為0x8ffffff[13],該設(shè)置下合約的TPS為1 200 TPS,靜態(tài)估算一年可完成3 784.3億次驗(yàn)證.2021年1月—11月,全國醫(yī)療衛(wèi)生機(jī)構(gòu)累計(jì)診治60.5億人次,該方案的設(shè)置能夠滿足中國的醫(yī)療就診需求.另外,聯(lián)盟鏈的礦工可以靈活調(diào)整GasLimit,動(dòng)態(tài)改變TPS,因此本方案也可具有較強(qiáng)的靈活性.
4.4 數(shù)據(jù)隱私和完整性分析
存儲(chǔ)在IPFS的EMR由標(biāo)準(zhǔn)對(duì)稱加密算法(AES)加密,密鑰由患者的區(qū)塊鏈錢包生成和保存.存儲(chǔ)在區(qū)塊鏈上關(guān)于加密密鑰的證據(jù)由標(biāo)準(zhǔn)哈希函數(shù)(SHA-3)生成.根據(jù)哈希算法安全性[14],攻擊者無法從密文和哈希值中獲取密鑰的任何信息.元數(shù)據(jù)存儲(chǔ)在區(qū)塊鏈上,區(qū)塊鏈的結(jié)構(gòu)確保鏈上數(shù)據(jù)不可篡改.如果存儲(chǔ)在IPFS中的EMR數(shù)據(jù)發(fā)生變化,對(duì)應(yīng)的哈希值及IPFS地址也會(huì)發(fā)生變化.加密算法、區(qū)塊鏈和IPFS的結(jié)構(gòu)共同保證了數(shù)據(jù)在存儲(chǔ)結(jié)構(gòu)上的隱私性、安全性和完整性.
4.5 數(shù)據(jù)共享可信性分析
本方案構(gòu)建驗(yàn)證交易合約Verify transaction來自動(dòng)化執(zhí)行密鑰驗(yàn)證和交易.只有當(dāng)交易內(nèi)容共識(shí)且解密密鑰為真時(shí),轉(zhuǎn)賬操作才會(huì)自動(dòng)執(zhí)行,并將密鑰的密文返回給數(shù)據(jù)需求商.受智能合約設(shè)計(jì)的原子性,若預(yù)設(shè)條件不完全滿足,智能合約將終止執(zhí)行.合約運(yùn)行過程中不存在參數(shù)暴露,智能合約的共識(shí)驗(yàn)證階段的設(shè)計(jì)可協(xié)助驗(yàn)證密鑰交換期間沒有發(fā)生中間人攻擊.智能合約的任何驗(yàn)證結(jié)果均存儲(chǔ)上鏈,實(shí)現(xiàn)記錄并支持溯源.綜上所述,所設(shè)計(jì)的方案在雙方不互信任的前提下能實(shí)現(xiàn)可信的數(shù)據(jù)共享.
5 結(jié)論
針對(duì)目前醫(yī)療區(qū)塊鏈的隱私安全和數(shù)據(jù)共享的可信問題,提出一種基于區(qū)塊鏈的醫(yī)療數(shù)據(jù)可信共享方案,通過結(jié)合區(qū)塊鏈和星際文件系統(tǒng),設(shè)計(jì)存儲(chǔ)結(jié)構(gòu)以實(shí)現(xiàn)患者數(shù)據(jù)的不可更改和可溯源.通過結(jié)合密鑰交換技術(shù)和智能合約,解決了數(shù)據(jù)共享中的互不信任問題,實(shí)現(xiàn)數(shù)據(jù)共享中密鑰的安全性、真實(shí)性和交易內(nèi)容的共識(shí)性及不可否認(rèn)性,確保數(shù)據(jù)共享過程中參與雙方的利益和安全.實(shí)驗(yàn)與分析表明,此方案具有低消耗、高吞吐量的特點(diǎn),可以有效地應(yīng)用于醫(yī)療行業(yè).
參 考 文 獻(xiàn):
[1] HYLOCK R H, ZENG X M. A blockchain framework for patient-centered health records and exchange(HealthChain): evaluation and proof-of-concept study[J]. J Med Internet Res, 2019, 21(8): e13592. DOI: 10.2196/13592.
[2] SOOKHAK M, JABBARPOUR M R, SAFA N S, et al. Blockchain and smart contract for access control in healthcare: a survey, issues and challenges, and open issues[J]. J Netw Comput Appl, 2021, 178: 102950. DOI: 10.1016/j.jnca.2020.102950.
[3] BERDIK D, OTOUM S, SCHMIDT N, et al. A survey on blockchain for information systems management and security[J]. Inf Process Manag, 2021, 58(1): 102397. DOI: 10.1016/j.ipm.2020.102397.
[4] NGUYEN D C, PATHIRANA P N, DING M, et al. Blockchain for secure EHRs sharing of mobile cloud based E-health systems[J]. IEEE Access, 2019, 7: 66792-66806. DOI: 10.1109/ACCESS.2019.2917555.
[5] ALREBDI N, ALABDULATIF A, IWENDI C, et al. SVBE: searchable and verifiable blockchain-based electronic medical records system[J]. Sci Rep, 2022, 12(1): 266. DOI: 10.1038/s41598-021-04124-8.
[6] 鐘楠,楊波,張麗娜.基于區(qū)塊鏈的醫(yī)療服務(wù)群智網(wǎng)絡(luò)系統(tǒng)[J].密碼學(xué)報(bào), 2022, 9(3): 511-523. DOI: 10.13868/j.cnki.jcr.000530.
[7] NIU S F, CHEN L X, WANG J F, et al. Electronic health record sharing scheme with searchable attribute-based encryption on blockchain[J]. IEEE Access, 2020, 8: 7195-7204. DOI: 10.1109/ACCESS.2019.2959044.
[8] AL OMAR A, BHUIYAN M Z A, BASU A, et al. Privacy-friendly platform for healthcare data in cloud based on blockchain environment[J]. Future Gener Comput Syst, 2019, 95: 511-521. DOI: 10.1016/j.future.2018.12.044.
[9] ZHANG P, WHITE J, SCHMIDT D C, et al. FHIRChain: applying blockchain to securely and scalably share clinical data[J]. Comput Struct Biotechnol J, 2018, 16: 267-278. DOI: 10.1016/j.csbj.2018.07.004.
[10] HARDIN T, KOTZ D. Amanuensis: Information provenance for health-data systems[J]. Inf Process Manag, 2021, 58(2): 102460. DOI: 10.1016/j.ipm.2020.102460.
[11] GUO R, SHI H X, ZHAO Q L, et al. Secure attribute-based signature scheme with multiple authorities for blockchain in electronic health records systems[J]. IEEE Access, 2018, 6: 11676-11686. DOI: 10.1109/ACCESS.2018.2801266.
[12] TAN L, YU K P, SHI N, et al. Towards secure and privacy-preserving data sharing for COVID-19 medical records: a blockchain-empowered approach[J]. IEEE Trans Netw Sci Eng, 2022, 9(1): 271-281. DOI: 10.1109/TNSE.2021.3101842. DOI:10.1016/j.cose.2020.102050.
[13] YANG X, LI W J C, SECURITY. A zero-knowledge-proof-based digital identity management scheme in blockchain [J]. Comput amp; Secur, 2020, 99: 102050. DOI: 10.1016/j.cose.2020.102050.
[14] 程冠杰,鄧水光,溫盈盈,等.基于區(qū)塊鏈的物聯(lián)網(wǎng)認(rèn)證機(jī)制綜述[J].軟件學(xué)報(bào), 2023, 34(3): 1470-1490. DOI: 10.13328/j.cnki.jos.006778.
(責(zé)任編輯:孟素蘭)
收稿日期:2023-02-21;修回日期:2024-03-25
基金項(xiàng)目:
國家重點(diǎn)研發(fā)計(jì)劃項(xiàng)目(2017YFB0802300);河北省自然科學(xué)基金資助項(xiàng)目(F2021201052)
第一作者:楊曉暉(1975—),男,河北大學(xué)教授,博士,主要從事分布計(jì)算與信息安全方向研究.E-mail: yxh@hbu.edu.cn
通信作者:賈凱(1995—),男,河北大學(xué)在讀碩士研究生,主要從事區(qū)塊鏈身份管理和數(shù)據(jù)隱私方向研究.E-mail: jiakai@stumail.hbu.edu.cn
河北大學(xué)學(xué)報(bào)(自然科學(xué)版)2024年3期