電子健康病例的存儲訪問方法
【技術領域】
[0001] 本發明屬于信息安全中密碼學領域,具體設計一種電子健康病例的存儲訪問方 法。
【背景技術】
[0002] 使電子健康系統運轉的電子健康病例(EHR)的發展不管在學術上還是工業上都 得到了大量的關注。因為與傳統的紙質健康檔案(PBHR)相比,EHR可以更加靈活的存儲和 分享。因為是數字形式,在一個人的EHR賬戶中可以包含不同類型的健康數據,例如處方文 件、X光之類的醫療影像、B超、音頻片段或者視頻文件,并且可以很方便的訪問。要尋找一 個人的EHR,患者和他的醫生只需要從存儲的服務器中檢索它們就可以了,而不用在堆滿文 檔的房間中費力尋找。這些特點讓EHR具有了 PBHR不可企及的優勢。美國的退伍軍人管 理局的醫療保健系統是一個成功的案例,它的數據庫包含了 1700個醫院,診所和其他的醫 療機構的病例信息。現在,許多國家和地區也都已經或者正在以建立他們自己的EHR系統, 但是對于沒有專業能力的醫療機構來說,管理一個龐大的可全球訪問的(例如遠程醫療) EHR數據庫是一個非常困難的任務,這一點影響了 EHR系統的實施。然而,新近的云計算的 優勢可以將健康醫護提供者從這個難題中解放出來。不是建立區域EHR服務器,而是將EHR 外包給一個云存儲服務武器,(例如微軟公司的HealthVault)可以極大地減少了建立和運 轉的花費,同時也保證了 EHR的可訪問度。然而,外包EHR還是存在困難,其中最大的就是 患者健康檔案的隱私和安全威脅:患者的EHR往往是各種惡意攻擊的對象,容易受到攻擊 而遺失、泄露、或者被竊取。
【發明內容】
[0003] 本發明旨在至少解決上述技術問題之一。
[0004] 為此,本發明的目的在于提出一種電子健康病例的存儲訪問方法。
[0005] 為了實現上述目的,本發明的第一方面的實施例公開了一種電子健康病例的存儲 訪問方法,包括以下步驟:A :對可信密鑰授權機構進行初始化,生成公鑰和主密鑰;B :所述 可信密鑰授權機構利用所述主密鑰對醫療工作人員的身份進行認證生成醫務人員訪問控 制憑證,并公布所述醫務人員訪問控制憑證有效時間;C :所述可信密鑰授權機構對患者的 身份進行認證生成患者訪問控制憑證;D :對所述患者訪問控制憑證、與所述患者訪問憑證 對應的所述醫務人員訪問控制憑證和訪問策略進行封裝;E :對所述封裝進行驗證,若通過 驗證,存儲所述封裝;以及F :接收解封請求并驗證,若所述解封請求中包括所述封裝內對 應的所述患者訪問控制憑證或所述醫務人員訪問控制憑證,則通過驗證并解封。
[0006] 根據本發明實施例的電子健康病例的存儲訪問方法,可實現有效的訪問控制,并 最大程度地保護了電子健康病例在存儲于不可完全信賴的第三方服務器上的安全性,節約 了移動設備的解密開銷。
[0007] 另外,根據本發明上述實施例的電子健康病例的存儲訪問方法,還可以具有如下 附加的技術特征:
[0008] 進一步地,所述步驟A進一步包括:Al:所述可信密鑰授權機構輸入系統安全參數 A,系統根據安全參數X的大小,選擇橢圓曲線:Y2= X3+aX+b,再由所述橢圓曲線上的點構 成兩個素數P階的群G和一個雙線性映射運算e : G X G 4 €T,其中,a和b是系數;
有的4 G [0,11+ 1],所述可信密鑰授權機構選擇隨機的元素^仍,沒2,仍,仉和 構Z(G,得到所述公鑰求泥和所述主密鑰,其中所述公鑰:P置為:
[0009]
[0010] 所述主密鑰夏^:為狐級=沒2%
[0011] 進一步地,所述醫療工作人員分為多個等級,上級所述醫療工作人員可以 為下級所述醫療工作人員授予訪問憑證,所述步驟B進一步包括:Bl :對于一個角色 災=(!R1,…災d),所述可信密鑰授權機構表示I = fi: e知},并公布時間壽命亡;
工作人員的訪問憑據為:
[0012]
[0013] 其中,JGh表示角色龍的訪問憑證;B3:上級所述醫療工作人員從可信密鑰授權 機構處獲得訪問憑證(為便于區分采用R '以及r'表示):
[0014]
[0015]其中r二{心凡G心},r '為隨機指數;B4:上級所述醫療工作人員選擇一個
[0016]
[0017] 進一步地,所述步驟C進一步包括:所述可信密鑰授權機構選擇一個隨
[0018] 進一步地,所述步驟D進一步包括:Dl:所述患者或所述醫療工作人員選擇一個隨 機的指數P Jtp計算頭文件的第一個元素C。= g e;D2 :所述患者或所述醫療工作人員產生 一個消息封裝密鑰K = e (gp g2)e并且計算EF = SymEnc (K,EHR),其中FF為上傳的電子健 康病例的封裝文件;D3 :用戶計算W = H(C0) G 頭文件中的第二個元素為:
[0019]
[0020]封裝的所述電子健康病例數據的形式為(Hdr,EF) = (C。,C1, EF),其中 I.二J?./ G S'P},Hdr表示上傳的所述電子健康病例的頭文件。
[0021] 進一步地,所述步驟E進一步包括:在封裝的所述(Hdr,EF) = (CtpCpEF)外包到 存儲服務器之前,驗證員驗證所述電子健康病例是否被一個特定的訪問策略正確的封裝, 驗證員測試下面的等式是否成立:
[0022]
[0023]其中I =絝馬€ %}:,w = H(C。),如果所述等式成立,那么審核員輸出所述封 裝有效信息,否則,審核員輸出所述封裝有效信息。
[0024] 進一步地,所述步驟F進一步包括:Fl:判斷請求解封人員的身份,如果所述請求 解封人員為所述醫療工作人員,則進入步驟F2,如果請求所述解封人員與所述患者則進入 步驟F4 ;F2:醫療工作者計算消息解封裝密鑰
[0025]
[0026]其中w = H(C。);F3:所述醫療工作者運行EHR = SymDec (K,EF),得出所述電子健 康病例;F4:假設身份為ID的患者的訪問憑證為
[0029]所述患者計算消息解封裝密鑰
[0030]
[0031]其中I. ={i:凡GSP},w = H(C0);
[0032]F5:所述患者運行EHR = SymDec (K,EF),得出所述電子健康病例。
[0033]本發明的附加方面和優點將在下面的描述中部分給出,部分將從下面的描述中變 得明顯,或通過本發明的實踐了解到。
【附圖說明】
[0034]本發明的上述和/或附加的方面和優點從結合下面附圖對實施例的描述中將變 得明顯和容易理解,其中:
[0035] 圖1是現有技術中患者和醫療工作人員查看電子健康病例的結構示意圖;
[0036]圖2是本發明一個實施例的患者和醫療工作人員查看電子健康病例的結構示意 圖;
[0037]圖3是本發明一個實施例的流程圖。
【具體實施方式】
[0038] 下面詳細描述本發明的實施例,所述實施例的示例在附圖中示出,其中自始至終 相同或類似的標號表示相同或類似的元件或具有相同或類似功能的元件。下面通過參考附 圖描述的實施例是示例性的,僅用于解釋本發明,而不能理解為對本發明的限制。
[0039]在本發明的描述中,需要理解的是,術語"中心"、"縱向"、"橫向"、"上"、"下"、"前"、 "后"、"左"、"右"、"豎直"、"水平"、"頂"、"底"、"內"、"外"等指示的方位或位置關系為基于 附圖所示的方位或位置關系,僅是為了便于描述本發明和簡化描述,而不是指示或暗示所 指的裝置或元件必須具有特定的方位、以特定的方位構造和操作,因此不能理解為對本發 明的限制。此外,術語"第一"、"第二"僅用于描述目的,而不能理解為指示或暗示相對重要 性。
[0040]在本發明的描述中,需要說明的是,除非另有明確的規定和限定,術語"安裝"、"相 連"、"連接"應做廣義理解,例如,可以是固定連接,也可以是可拆卸連接,或一體地連接;可 以是機械連接,也可以是電連接;可以是直接相連,也可以通過中間媒介間接相連,可以是 兩個元件內部的連通。對于本領域的普通技術人員而言,可以具體情況理解上述術語在本 發明中的具體含義。
[0041] 參照下面的描述和附圖,將清楚本發明的實施例的這些和其他方面。在這些描述 和附圖中,具體公開了本發明的實施例中的一些特定實施方式,來表示實施本發明的實施 例的原理的一些方式,但是應當理解,本發明的實施例的范圍不受此限制。相反,本發明的 實施例包括落入所附加權利要求書的精神和內涵范圍內的所有變化、修改和等同物。
[0042] 以下結合附圖描述根據本發明實施例的電子健康病例的存儲訪問方法。
[0043] 相關技術介紹
[0044] 雙線性群
[0045] 由于本發明所設計的算法中使用了雙線性映射這方面的數學知識。特在此作相關 定義說明。
[0046] 群生成元為一個算法將安全參數X作為輸入,并且輸出一個雙線性群的描述,
[0047] 雙線性特性:對于有e(g%hb) = e(g,h)ab成立;其中,Zp表示 集合{0,1,2,...,p-l}。
[0048]非退化性:,G群中至少存在一個元素g,使得計算后的e(g,g) AGt群的某個生 成元;
[0049] 可計算性:存在有效的算法,使得所有的,可以有效計算出e(u,V)的值;
[0050] 抗碰撞哈希函數
[0051] 本發明中使用的哈希函數具備兩個基本特性:單向性和抗碰撞性;單向性是指只 能從哈希函數的輸入推導出輸出,而絕不能從哈希函數的輸出計算出輸入;抗碰撞性是指 不能找到兩個不同的哈希函數輸入使其哈希后的結果相同。本發明中的哈希算法輸入是任 意長度的二進制字符串。
[0052] 在此介紹一些算法中一些字符所代表的含義:
[0053] 我們使用[a,b]來表示整數集{a,a+1,...b}。一個醫療工作人員的角色用 向量災=(?, ,.,, )包含不同的基本元素敗。我們定義丨丨災I丨為哭中基礎元素的個 數,%為與龍相聯系的基本元素集合。訪問策略P被一個包含不同角色的角色集合所 定義。類似的,P當中的基本元素和P的基本元素集合也可以被相應定義。我們定義角 色災=(^1,…,?)的前綴為Pref(:?2)= …J dO,:訪問策略p的前綴為 Pref(P) =UjiepPref(Jl)
[0054]
[0055] 請參考圖2和圖3。
[0056] 模塊一:系統初始化模塊TKA調用初始化算法,生成公鑰和主密鑰。
[0062] 其中,在步驟1中所述的"算法f(r)",其運行方法如下:TA輸入系統安全參數 A,系統根據X的大小,選擇相應的橢圓曲線:Y 2=X3+aX+b(a和b是系數),再由橢圓曲線 上的點構成兩個素數P階的群(ST。最后,選擇一種函數映射e,將群島中的元素映射到 群位7中去;一般,安全參數數值越大,所選擇橢圓曲線上的點也越多,群也越大。
[0063] 其中,步驟