孫 靜,唐 欣
(1.岳陽職業(yè)技術(shù)學(xué)院,湖南 岳陽 414000;2.湖南大唐先一科技有限公司,湖南 長沙 410007)
電子健康記錄(Electronic Health Records,EHR)包含了所有必要的醫(yī)療信息,在診斷病人時(shí)至關(guān)重要。傳統(tǒng)的文檔編制方法有局限性,例如被破壞、丟失或被盜,EHR不但消除了這些限制,而且適應(yīng)性更強(qiáng)、效率更高、更不容易出錯(cuò)、更容易獲得。如今的大多數(shù)醫(yī)療健康系統(tǒng)都以醫(yī)療健康提供者為中心,互操作性非常有限。數(shù)據(jù)可能會(huì)在整個(gè)操作過程中被泄露或修改,因此在參與者之間共享醫(yī)療信息是極其困難的。醫(yī)療機(jī)構(gòu)要求共享這些信息,以為患者提供更好的護(hù)理[1-4]。
現(xiàn)有的系統(tǒng)不能滿足人們對醫(yī)療數(shù)據(jù)安全性、隱私性、有效管理和共享醫(yī)療記錄等方面的要求。因此,當(dāng)前的醫(yī)療健康系統(tǒng)迫切需要?jiǎng)?chuàng)新,以使患者的敏感醫(yī)療信息能夠在各方之間有效地交換,而不會(huì)有被泄露或操縱的風(fēng)險(xiǎn)。醫(yī)療健康系統(tǒng)的創(chuàng)新需要一種數(shù)據(jù)訪問方法,既安全又能確保只有經(jīng)過授權(quán)的個(gè)人才能訪問患者的醫(yī)療信息。在現(xiàn)實(shí)世界中,患者并不局限于單一的醫(yī)院或醫(yī)生,他們可能從一家醫(yī)院轉(zhuǎn)到另一家醫(yī)院,或向其他診所或醫(yī)生尋求治療[5]。鑒于人們對電子病歷系統(tǒng)隱私和安全的需求,需要構(gòu)建一個(gè)基于區(qū)塊鏈的高效、安全和智能的醫(yī)療健康系統(tǒng),以確保數(shù)據(jù)存儲(chǔ)安全、數(shù)據(jù)訪問方便,讓患者完全控制他們的醫(yī)療數(shù)據(jù)。
區(qū)塊鏈網(wǎng)絡(luò)由5層組成,分別是應(yīng)用層、共識(shí)層、網(wǎng)絡(luò)層、數(shù)據(jù)層和基礎(chǔ)設(shè)施層。應(yīng)用層包含實(shí)現(xiàn)某些所需功能的應(yīng)用程序代碼,它允許覆蓋API、應(yīng)用程序等;共識(shí)層描述了共識(shí)功能,任何人都可以用它來確定共識(shí)分類;網(wǎng)絡(luò)層是使區(qū)塊鏈工作的部分;數(shù)據(jù)層管理存儲(chǔ)在區(qū)塊鏈上和區(qū)塊鏈外的信息;在基礎(chǔ)設(shè)施層中,節(jié)點(diǎn)是該層的核心[6]。
Lai等[7]提出了一種基于可追溯環(huán)簽名和區(qū)塊鏈的安全醫(yī)療數(shù)據(jù)共享方案,并提出了一種基于分布式密鑰生成的無證書可追溯環(huán)簽名算法,在保證數(shù)據(jù)完整性的同時(shí)保護(hù)隱私,將訪問控制和自控制對象(Sharable Content Object,SCO)相結(jié)合的智能合約可以實(shí)現(xiàn)解密外包和數(shù)據(jù)共享。此外,該方案采用星際文件系統(tǒng)(Inter Planetary File System,IPFS)存儲(chǔ)海量醫(yī)療隱私數(shù)據(jù),并對哈希索引進(jìn)行加密存儲(chǔ),提高了數(shù)據(jù)共享的效率。該方案可以實(shí)現(xiàn)EHR的源跟蹤,同時(shí)實(shí)現(xiàn)數(shù)據(jù)的安全共享和隱私保護(hù)。
溫亞蘭等[8]提出一種將聯(lián)邦學(xué)習(xí)與區(qū)塊鏈相結(jié)合的醫(yī)療數(shù)據(jù)共享與隱私保護(hù)方案,使用聯(lián)邦學(xué)習(xí)對多源醫(yī)療數(shù)據(jù)進(jìn)行建模,將訓(xùn)練的模型參數(shù)和醫(yī)療機(jī)構(gòu)的聲譽(yù)值存儲(chǔ)于區(qū)塊鏈上,并利用區(qū)塊鏈對貢獻(xiàn)高質(zhì)量數(shù)據(jù)的醫(yī)院進(jìn)行獎(jiǎng)勵(lì),并提出一種基于雙重主觀邏輯模型的聲譽(yù)值計(jì)算方法來改進(jìn)聯(lián)邦學(xué)習(xí)的精確度,使用改進(jìn)的聲譽(yù)機(jī)制保證在數(shù)據(jù)共享中篩選數(shù)據(jù)源的效率,利用區(qū)塊鏈和聯(lián)邦學(xué)習(xí)技術(shù),提高共享效率,實(shí)現(xiàn)隱私保護(hù)。
劉楊等[9]提出一個(gè)基于多層次區(qū)塊鏈的醫(yī)療數(shù)據(jù)共享模型,對個(gè)人醫(yī)療數(shù)據(jù)進(jìn)行加密后上傳到區(qū)塊鏈下的分布式存儲(chǔ)中,并將數(shù)據(jù)索引信息上傳到區(qū)塊鏈上,利用多層次區(qū)塊鏈協(xié)同技術(shù)和鏈上鏈下混合存儲(chǔ)方式提高存儲(chǔ)效率;引入差分隱私保護(hù)聯(lián)邦學(xué)習(xí)中模型參數(shù)提升數(shù)據(jù)的隱私安全性。
張學(xué)旺等[10]提出了一種面向醫(yī)療區(qū)塊鏈的新型輕節(jié)點(diǎn)數(shù)據(jù)查詢方法,引入具有動(dòng)態(tài)追加能力的Merkle山脈,設(shè)計(jì)基于推薦的可信節(jié)點(diǎn)選擇和基于采樣的可信節(jié)點(diǎn)驗(yàn)證的最新有效塊獲取算法,采取MMR和Merkle樹的承諾機(jī)制,使得持有一個(gè)最新有效塊的輕節(jié)點(diǎn)用戶能夠驗(yàn)證全節(jié)點(diǎn)發(fā)送的醫(yī)療數(shù)據(jù)。
本文提出了一種基于區(qū)塊鏈的電子病歷高效存儲(chǔ)和共享系統(tǒng),提高了數(shù)據(jù)的安全性和隱私性。病人和醫(yī)療健康提供者是此應(yīng)用程序針對的兩類用戶。需要存儲(chǔ)的醫(yī)療數(shù)據(jù)首先被發(fā)送到MetaMask來計(jì)算鏈上手續(xù)費(fèi)后,使用MetaMask以太坊的形式進(jìn)行轉(zhuǎn)換。接收到數(shù)據(jù)量后,區(qū)塊鏈網(wǎng)絡(luò)挖掘數(shù)據(jù),然后將其作為一個(gè)新塊添加。通過這種方式,數(shù)據(jù)可以安全地存儲(chǔ),并可以在醫(yī)院之間共享,便于獲取,如圖1所示。
圖1 基于區(qū)塊鏈醫(yī)療數(shù)據(jù)存儲(chǔ)和共享流程
該模塊中有兩個(gè)登錄端口:一個(gè)用于患者,另一個(gè)用于醫(yī)生。任何想要登錄的用戶都必須先填寫一張注冊表,填寫他們的姓名和其他基本信息。當(dāng)患者登錄時(shí),會(huì)顯示患者的醫(yī)療數(shù)據(jù)歷史,而當(dāng)醫(yī)生登錄時(shí),必須輸入患者的ID號才能查看患者的詳細(xì)信息。
最初數(shù)據(jù)由患者輸入,然后在獲得詳細(xì)信息后計(jì)算挖掘數(shù)據(jù)所需的金額。這項(xiàng)工作是由MetaMask完成的。金額以鏈上手續(xù)費(fèi)的形式計(jì)算。這種鏈上手續(xù)費(fèi)使用MetaMask轉(zhuǎn)換為以太坊,然后區(qū)塊鏈網(wǎng)絡(luò)挖掘該塊,一個(gè)包含患者詳細(xì)信息的新塊被創(chuàng)建并添加到區(qū)塊鏈網(wǎng)絡(luò)中。
MetaMask是一種加密貨幣錢包,使用戶能夠訪問分散式應(yīng)用程序(dapps)的Web 3生態(tài)系統(tǒng)。
(1)MetaMask是一種加密貨幣錢包,使用戶能夠存儲(chǔ)以太幣和其他ERC-20代幣。錢包還可用于與去中心化應(yīng)用程序或dapp進(jìn)行交互。
(2)去中心化互聯(lián)網(wǎng)Web 3建立在加密貨幣和去中心化應(yīng)用程序的基礎(chǔ)之上。但是為了使用它們,需要一個(gè)優(yōu)雅、直觀、易于使用的界面。
MetaMask作為一個(gè)瀏覽器插件,用作以太坊錢包,安裝方式與任何其他瀏覽器插件一樣。通過將MetaMask連接到基于以太坊的dapp,用戶可以在游戲中使用代幣,在應(yīng)用程序中質(zhì)押代幣,并在去中心化交易所(DEX)上進(jìn)行交易。它還為用戶提供了進(jìn)入去中心化金融或DeFi新興世界的入口,提供了訪問Compound和PoolTogether等DeFi應(yīng)用程序的方式。一旦要存儲(chǔ)的數(shù)據(jù)被交給MetaMask,就計(jì)算出挖掘數(shù)據(jù)所需的鏈上手續(xù)費(fèi)。鏈上手續(xù)費(fèi)是挖掘數(shù)據(jù)和完成事務(wù)所需工作量的度量。最大費(fèi)用是交易所需的總費(fèi)用。
最大費(fèi)用=(基本費(fèi)用+優(yōu)先權(quán)費(fèi)用)×用氣單位
計(jì)算完成后,從MetaMask錢包中以以太坊貨幣的形式支付鏈上手續(xù)費(fèi)。一旦支付了金額,就在區(qū)塊鏈網(wǎng)絡(luò)中啟動(dòng)挖掘。
挖掘被設(shè)置為自動(dòng),因此所有的事務(wù)都被自動(dòng)挖掘。一旦挖掘數(shù)據(jù),挖掘的數(shù)據(jù)將使用安全哈希算法256(SAR-256)轉(zhuǎn)換為哈希值。一旦挖掘完成,就會(huì)創(chuàng)建一個(gè)具有唯一塊號的新塊。最后,該區(qū)塊被添加到區(qū)塊鏈網(wǎng)絡(luò)中的區(qū)塊鏈中。該模塊從區(qū)塊鏈網(wǎng)絡(luò)獲取數(shù)據(jù)?;颊叩卿浐螅仨気斎胨麄兊腎D號,才能從區(qū)塊鏈網(wǎng)絡(luò)獲取詳細(xì)信息。對于患者登錄,區(qū)塊鏈中存儲(chǔ)的所有詳細(xì)信息都是可見的。醫(yī)生登錄時(shí),必須輸入病人的身份證號,才可以看到每個(gè)病人的基本情況,而且只有在病人允許的情況下,醫(yī)生才能查看所有的信息。
該模塊的關(guān)鍵是安全地共享患者的醫(yī)療數(shù)據(jù)。未經(jīng)病人允許,醫(yī)生不得查看病人的私人資料。這是通過向患者的注冊電子郵箱發(fā)送一次性口令來實(shí)現(xiàn)的。只有在病人允許之后,醫(yī)生才能看到病人的全部信息,保障了患者的隱私。
區(qū)塊鏈技術(shù)的去中心化和抗篡改特性使其非常適合保護(hù)和共享醫(yī)療數(shù)據(jù)。文章提出并實(shí)施了一種基于區(qū)塊鏈的醫(yī)療數(shù)據(jù)交換策略,可以使醫(yī)患雙方方便地獲取醫(yī)療記錄,確保了數(shù)據(jù)的完整性、安全性,并使醫(yī)療數(shù)據(jù)可以得到及時(shí)更新,使患者不再需要隨身攜帶文件,為醫(yī)生提供了一個(gè)強(qiáng)有力的決策工具。在任何緊急情況下,這都是一種較好的方法,有可能徹底改變醫(yī)院的醫(yī)療數(shù)據(jù)系統(tǒng)。