張劍,夏啟,趙雅萍
泰興市人民醫(yī)院 醫(yī)院辦公室,江蘇 泰州 225400
隨著醫(yī)療信息化的建設(shè),電子病歷系統(tǒng)已逐漸替代HIS,傳統(tǒng)HIS的設(shè)計(jì)管理沒有統(tǒng)一的原則,因此該系統(tǒng)病人信息是離散的、相互之間有冗余、遺漏。與HIS不同的是,電子病歷是一個(gè)相對(duì)完整的、集成的、現(xiàn)代化信息系統(tǒng),其主要設(shè)計(jì)目的是實(shí)現(xiàn)病人信息的原始性和完整性。電子病歷是網(wǎng)絡(luò)信息技術(shù)在醫(yī)療領(lǐng)域的必然產(chǎn)物,是醫(yī)院病歷現(xiàn)代化管理的必然趨勢(shì),其在臨床的初步應(yīng)用,極大地提高了醫(yī)院的工作效率和醫(yī)療質(zhì)量。根據(jù)法律規(guī)定,住院病歷保管時(shí)間不得少于30年,門診病歷保管時(shí)間不得少于15年,而電子病歷可以長(zhǎng)期保存并應(yīng)用于臨床和科學(xué)研究[1‐2]。醫(yī)療過程的復(fù)雜性決定了結(jié)構(gòu)化電子病歷必須是具有復(fù)雜層次關(guān)系的數(shù)據(jù)集,并且在數(shù)據(jù)結(jié)構(gòu)上具有明顯的多維特征。因此,電子病歷數(shù)據(jù)存儲(chǔ)的形式選擇和結(jié)構(gòu)設(shè)計(jì)成為電子病歷開發(fā)人員面臨的嚴(yán)峻挑戰(zhàn)。區(qū)塊鏈技術(shù)有適用于患者信息保存的去中心化、數(shù)據(jù)透明、不可篡改等特性[3],本文將以電子病歷的存儲(chǔ)系統(tǒng)為切入點(diǎn),預(yù)期構(gòu)建一個(gè)基于區(qū)塊鏈技術(shù)的電子病歷存儲(chǔ)系統(tǒng)。
電子病歷是指以電子化方式記錄個(gè)人的基本資料與醫(yī)療信息,它可在醫(yī)療中作為主要的信息源取代紙張病歷[4]。電子病歷中包含患者的就診信息:個(gè)人資料、病程記錄、檢驗(yàn)結(jié)果、診斷結(jié)果、手術(shù)記錄、護(hù)理記錄等。涉及病人信息的采集、存儲(chǔ)、傳輸、質(zhì)量控制、統(tǒng)計(jì)和利用。圍繞提高醫(yī)療質(zhì)量、保障醫(yī)療安全和提高醫(yī)療效率,提供醫(yī)療相關(guān)信息處理和智能化服務(wù)功能[5]。
區(qū)塊鏈?zhǔn)且环N計(jì)算機(jī)技術(shù)的新型應(yīng)用模式,它由多個(gè)節(jié)點(diǎn)組成,是一種鏈?zhǔn)綌?shù)據(jù)結(jié)構(gòu),以時(shí)序連接的方式組合數(shù)據(jù)塊。區(qū)塊鏈技術(shù)本質(zhì)上是一種數(shù)據(jù)庫(kù)技術(shù),每個(gè)區(qū)塊就像一個(gè)硬盤,保存所有信息并使用加密算法對(duì)其進(jìn)行加密,這些信息就不可篡改[6‐7]。目前,一些公司已經(jīng)開發(fā)了區(qū)塊鏈的系統(tǒng)架構(gòu),并提供了區(qū)塊鏈相關(guān)的服務(wù),例如網(wǎng)絡(luò)、存儲(chǔ)、加密等,在很大程度上簡(jiǎn)化了區(qū)塊鏈應(yīng)用程序的開發(fā)流程。技術(shù)人員只需要基于區(qū)塊鏈進(jìn)行二次開發(fā),將自身的特定需求結(jié)合區(qū)塊鏈網(wǎng)絡(luò)和應(yīng)用領(lǐng)域。其系統(tǒng)架構(gòu)分為6個(gè)層次,包括數(shù)據(jù)層、網(wǎng)絡(luò)層、共識(shí)層、激勵(lì)層、合約層和應(yīng)用層[8‐9]。區(qū)塊鏈?zhǔn)菈K防篡改時(shí)間戳分類賬,用于以分布式的方式共享和存儲(chǔ)數(shù)據(jù)。目前,區(qū)塊鏈以其包含分布式結(jié)構(gòu)、安全性、隱私性和不變性的特點(diǎn)屬性,引起了學(xué)術(shù)界和實(shí)務(wù)界(如計(jì)算機(jī)科學(xué)、金融學(xué)和法學(xué)界)的極大關(guān)注,在區(qū)塊鏈中,用戶可以生成任意數(shù)量的公鑰,有效地防止被跟蹤,從而保證了用戶的隱私。此外,區(qū)塊鏈可以使用加密技術(shù)來(lái)提高IT的安全性、隱私性和功能性[10‐12]。近幾年,基于區(qū)塊鏈的醫(yī)療系統(tǒng)是一個(gè)熱門話題。Yue等[13]提出了一個(gè)共享醫(yī)療數(shù)據(jù)的應(yīng)用程序,病人可以方便地控制、發(fā)送和擁有自己的數(shù)據(jù)。Xia等[14]還提出了一個(gè)共享醫(yī)療數(shù)據(jù)的應(yīng)用程序,提出了MeDShare系統(tǒng),該系統(tǒng)可以解決無(wú)信任環(huán)境下醫(yī)療大數(shù)據(jù)服務(wù)器之間的醫(yī)療數(shù)據(jù)共享問題。
該系統(tǒng)由獨(dú)立前端、服務(wù)器、數(shù)據(jù)庫(kù)和區(qū)塊鏈網(wǎng)絡(luò)組成,前端頁(yè)面將請(qǐng)求發(fā)送到服務(wù)器,在處理完請(qǐng)求后將結(jié)果返回到前端頁(yè)面。區(qū)塊鏈網(wǎng)絡(luò)的查詢數(shù)據(jù)過程網(wǎng)絡(luò)算法的步驟較繁瑣且包含很多代碼模塊,如果出現(xiàn)其他的大量查詢,系統(tǒng)的響應(yīng)時(shí)間則可能會(huì)超時(shí)。因此在數(shù)據(jù)的請(qǐng)求查詢過程中,盡量減少其他的并發(fā)網(wǎng)絡(luò)進(jìn)程,縮短系統(tǒng)的響應(yīng)時(shí)間。在系統(tǒng)的開發(fā)過程中,各模塊必須互相獨(dú)立,通過統(tǒng)一的接口相互連接。提高每個(gè)模塊的獨(dú)立性有助于提高系統(tǒng)的并發(fā)執(zhí)行能力,從而提高系統(tǒng)的工作效率[15]。
數(shù)據(jù)存儲(chǔ)系統(tǒng)應(yīng)符合我國(guó)數(shù)據(jù)庫(kù)管理系統(tǒng)安全技術(shù)要求規(guī)范并通過信息安全等級(jí)保護(hù)測(cè)評(píng):① 客觀上要求存儲(chǔ)系統(tǒng)容量大幅度增加;② 保證所有病歷信息的完整性,要求存儲(chǔ)系統(tǒng)具有高可靠性;③ 要求系統(tǒng)相關(guān)的數(shù)據(jù)存儲(chǔ)過程必須高效快速。優(yōu)化查詢語(yǔ)句,避免過多的表關(guān)聯(lián),先過濾有索引的,盡量縮小數(shù)據(jù)范圍。在數(shù)據(jù)庫(kù)中創(chuàng)建表時(shí),將表中字段的寬度設(shè)的盡可能小,執(zhí)行的查詢速度就越快。建立數(shù)據(jù)表索引,它在檢索行中的速度比沒有索引快得多。此外,還需要記錄注冊(cè)信息:就診類型、醫(yī)生ID、就診時(shí)間、病史、病程記錄等信息,其中包括患者的部分隱私(如身份證、健康信息等)的安全加密 建設(shè)應(yīng)視為重點(diǎn)。
通過構(gòu)建區(qū)塊鏈層次模型的合約層、網(wǎng)絡(luò)層、數(shù)據(jù)層、應(yīng)用層和共識(shí)層,實(shí)現(xiàn)電子病歷的動(dòng)態(tài)化管理。其中最基本的醫(yī)療數(shù)據(jù)是在訪問醫(yī)院時(shí)從患者的個(gè)人信息記錄中獲取,形成最初的電子病歷,電子病歷數(shù)據(jù)會(huì)嚴(yán)格按照區(qū)塊鏈的區(qū)塊形式(區(qū)塊頭 + 區(qū)塊體)來(lái)封裝,數(shù)據(jù)記錄以加密算法處理,添加時(shí)間戳后與區(qū)塊鏈相連接。網(wǎng)絡(luò)層管理機(jī)制通過多重簽名復(fù)合網(wǎng)絡(luò)設(shè)置,分布式網(wǎng)絡(luò)機(jī)制用于分散其他節(jié)點(diǎn)數(shù)據(jù)庫(kù)數(shù)據(jù)。區(qū)塊鏈主要在數(shù)據(jù)層和網(wǎng)絡(luò)層生成并傳送數(shù)據(jù)。在咨詢層次中,引入相關(guān)的咨詢機(jī)制,將成員節(jié)點(diǎn)(醫(yī)療機(jī)構(gòu)、部門、相關(guān)政府部門等)添加到區(qū)塊鏈、會(huì)診層。另外,為了保證彼此的信任,將網(wǎng)絡(luò)節(jié)點(diǎn)中的多種傳感器算法進(jìn)行膠囊化。為了體現(xiàn)合同中的行動(dòng)計(jì)劃、標(biāo)準(zhǔn)化、國(guó)家規(guī)定及其他內(nèi)容,實(shí)現(xiàn)電子醫(yī)療記錄的標(biāo)準(zhǔn)化,將其納入?yún)^(qū)塊鏈中。應(yīng)用層的動(dòng)態(tài)管理平臺(tái)將主要信息查詢、數(shù)據(jù)共享等服務(wù)提供給醫(yī)療機(jī)構(gòu)、醫(yī)生及患者。區(qū)塊鏈模型圖如圖1所示。
圖1 區(qū)塊鏈模型圖
(1)創(chuàng)建醫(yī)生賬戶:醫(yī)生在首次使用系統(tǒng)時(shí),可以登錄電子病歷系統(tǒng)。
(2)醫(yī)生登錄:醫(yī)生使用生成的賬戶登錄電子病歷系統(tǒng)并使用部分功能。
(3)醫(yī)生修改密碼:修改醫(yī)生登錄密碼。
(4)創(chuàng)建患者賬戶:為第一次使用電子病歷的患者注冊(cè)一個(gè)新賬號(hào),并使用DES算法對(duì)用戶的私人數(shù)據(jù)進(jìn)行加密。然后生成一對(duì)非對(duì)稱加密公鑰和私鑰,用戶的個(gè)人信息和病歷將被加密為非對(duì)稱加密公鑰,私鑰加密病歷的摘要信息,并將患者的公鑰保存到數(shù)據(jù)庫(kù)中。
(5)患者修改密碼:修改使用DES算法加密的患者密碼,使用原密碼解密患者的隱私數(shù)據(jù),然后設(shè)置新密碼使用DES算法加密。
電子病歷存數(shù)據(jù)存儲(chǔ)模塊主要設(shè)計(jì)以下功能:
(1)查詢相關(guān)資料:可檢索患者ID號(hào)查詢相關(guān)資料。
(2)創(chuàng)建新病歷:患者掛號(hào)后,醫(yī)生會(huì)為其創(chuàng)建一份新的病歷(用患者ID標(biāo)記),記錄患者此次病情和治療的醫(yī)療記錄。
(3)完善患者病歷:醫(yī)生根據(jù)患者ID檢索到原有病歷,并將新的問診信息和檢驗(yàn)信息添加到病歷中。
(4)病案質(zhì)量監(jiān)控:賬戶委托權(quán)限用來(lái)控制用戶賬戶委托關(guān)系的訪問控制;審計(jì)權(quán)限是為監(jiān)管機(jī)構(gòu)提供審計(jì)的功能,嚴(yán)格控制訪問權(quán)限和數(shù)據(jù)范圍,對(duì)共享賬本上交易無(wú)關(guān)的用戶可以做到用戶關(guān)聯(lián);節(jié)點(diǎn)共識(shí)權(quán)限共識(shí)許可用于管理參與節(jié)點(diǎn)或新加入節(jié)點(diǎn)的共識(shí)許可;訪問權(quán)限用來(lái)管理區(qū)塊鏈上的客戶端的數(shù)據(jù)查詢權(quán)限。
電子病歷存儲(chǔ)模塊如圖2所示,與患者的個(gè)人賬戶信息相比,諸如醫(yī)生的賬戶信息和患者的公共密鑰之類的數(shù)據(jù)的特征是數(shù)據(jù)量大,操作頻繁,安全性要求低。因此,系統(tǒng)將這些數(shù)據(jù)存儲(chǔ)在傳統(tǒng)數(shù)據(jù)庫(kù)中以提高系統(tǒng)的實(shí)現(xiàn)效率。系統(tǒng)通過對(duì)稱加密和存儲(chǔ)在數(shù)據(jù)庫(kù)中的病歷的ID信息將病患的個(gè)人信息更新到區(qū)塊鏈網(wǎng)絡(luò),以形成病患的電子病歷數(shù)據(jù)。這種數(shù)據(jù)存儲(chǔ)方法僅具有病歷的索引信息,而沒有患者電子病歷中的實(shí)際病歷數(shù)據(jù),減少了區(qū)塊鏈網(wǎng)絡(luò)中的數(shù)據(jù)存儲(chǔ),實(shí)現(xiàn)病歷數(shù)據(jù)的單獨(dú)共享。
圖2 電子病歷存儲(chǔ)模塊效果圖
該系統(tǒng)有效地解決了效率低、成本高、安全性低的數(shù)據(jù)存儲(chǔ)等常見問題。區(qū)塊鏈技術(shù)的非對(duì)稱加密算法與多節(jié)點(diǎn)的分布式存儲(chǔ)保證了數(shù)據(jù)庫(kù)的安全性,從而實(shí)現(xiàn)數(shù)據(jù)的不可偽造與不可篡改特性;采用帶有時(shí)間戳的區(qū)塊來(lái)存儲(chǔ)數(shù)據(jù)可擴(kuò)大時(shí)間范圍,從而可以驗(yàn)證各種醫(yī)療數(shù)據(jù),確保電子病歷實(shí)時(shí)記錄的準(zhǔn)確性。該數(shù)據(jù)庫(kù)會(huì)記錄電子病歷的每一次數(shù)據(jù)更改,分布式系統(tǒng)的每一個(gè)節(jié)點(diǎn)都會(huì)記錄并驗(yàn)證本次數(shù)據(jù)更改和其他數(shù)據(jù)記錄,在所有節(jié)點(diǎn)驗(yàn)證后才能通過整個(gè)系統(tǒng)的認(rèn)證并記錄下來(lái),此種運(yùn)行模式便于保證各醫(yī)院之間系統(tǒng)共享,有利于維護(hù)系統(tǒng)數(shù)據(jù)信息。時(shí)間戳與電子簽名可有效保證數(shù)據(jù)的唯一性,可作為有效的法律依據(jù)保障醫(yī)院及患者的合法權(quán)益。通過電子病歷的動(dòng)態(tài)管理、數(shù)據(jù)共享、資源分配,使患者的健康數(shù)據(jù)的集成、管理、分析更加有效,從而促進(jìn)計(jì)算機(jī)科學(xué)與臨床醫(yī)學(xué)的發(fā)展。
該系統(tǒng)采用小文件合并,大文件分塊的方法,結(jié)合斷點(diǎn)續(xù)傳技術(shù),有效利用數(shù)據(jù)節(jié)點(diǎn)區(qū)塊存儲(chǔ)容量并有效地提高了病歷傳輸效率。與傳統(tǒng)電子病歷存儲(chǔ)系統(tǒng)比較,基于區(qū)塊鏈技術(shù)的電子病歷存儲(chǔ)系統(tǒng)減少了大量的操作系統(tǒng)與管理系統(tǒng)之間的傳輸請(qǐng)求,病歷傳輸速率與區(qū)塊存儲(chǔ)使用率均有明顯提升。通過選擇5個(gè)醫(yī)療文件進(jìn)行傳輸下載測(cè)試,在相同網(wǎng)絡(luò)條件及相同主機(jī)下與原來(lái)病例存儲(chǔ)系統(tǒng)進(jìn)行對(duì)比,發(fā)現(xiàn)傳輸下載效率明顯提升(表1)。
表1 區(qū)塊鏈技術(shù)的電子病歷數(shù)據(jù)存儲(chǔ)系統(tǒng)應(yīng)用效果與HIS存儲(chǔ)系統(tǒng)對(duì)比
目前,區(qū)塊鏈技術(shù)在各個(gè)研究領(lǐng)域中正經(jīng)歷著指數(shù)級(jí)的增長(zhǎng),其從發(fā)展至今就備受各個(gè)領(lǐng)域的關(guān)注,但其在大對(duì)數(shù)領(lǐng)域中還未廣泛的實(shí)際應(yīng)用,依然存在許多機(jī)遇和挑戰(zhàn)。本文將基于區(qū)塊鏈技術(shù)設(shè)計(jì)和實(shí)施電子病歷數(shù)據(jù)存儲(chǔ)系統(tǒng),并根據(jù)區(qū)塊鏈技術(shù)的安全存儲(chǔ)特性和電子病歷存儲(chǔ)的安全需求執(zhí)行。系統(tǒng)利用區(qū)塊鏈技術(shù)中的數(shù)據(jù)不可篡改性解決了中心化存儲(chǔ)數(shù)據(jù)易被篡改的問題。使用非對(duì)稱加密算法對(duì)患者的病歷信息數(shù)據(jù)進(jìn)行加密,以防止患者隱私數(shù)據(jù)被泄露。病歷數(shù)據(jù)和患者數(shù)據(jù)的分離式存儲(chǔ)解決了數(shù)據(jù)所有權(quán)錯(cuò)位的問題。將區(qū)塊鏈技術(shù)與電子病歷數(shù)據(jù)存儲(chǔ)系統(tǒng)相結(jié)合,為解決傳統(tǒng)電子病歷安全性差、隱私保護(hù)差等問題提供新的研究思路。