999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一種面向醫(yī)療大數據安全共享的新型區(qū)塊鏈技術

2019-07-09 11:43:48陳建森顧志豪
小型微型計算機系統(tǒng) 2019年7期
關鍵詞:智能

佘 維 ,陳建森,劉 琦,胡 躍,顧志豪,田 釗,劉 煒

1(鄭州大學 軟件學院,鄭州450000) 2(鄭州大學 互聯網醫(yī)療與健康服務河南省協同創(chuàng)新中心,鄭州 450000)

1 引 言

醫(yī)療數據的安全共享[1]是當前醫(yī)療大數據應用中的重要和熱點問題,主要包括兩個方面:1)數據的授權分發(fā)與安全傳輸;2)個人數據的隱私保護.其中,醫(yī)療數據的授權分發(fā)與安全傳輸不僅涉及數據交換和傳輸技術,更重要的是數據的權屬認定,以及由分發(fā)過程形成的數據所有者和使用者之間的信任鏈[2];個人數據[3]的隱私保護則是單個個體的健康數據融入醫(yī)療“大數據”分析與應用時,難以回避又不易解決的問題.

為了解決數據的授權分發(fā)問題,在云存儲中共享加密數據,文獻[4]提出在不可靠的環(huán)境下對數據安全共享重新加密的方法,文獻[5]提出用ECC算法實現只有加密的數據在用戶和發(fā)布者之間共享的方案.但是,這兩種方法僅僅解決了用戶間的數據共享安全問題,數據安全共享時進行數據加密或者重加密后數據處于密文狀態(tài),密文數據不能進行良好的數據計算,無法使用大數據的價值.

為了保證個人數據的隱私安全,最簡單的方法是將數據加密后傳輸或分發(fā),但這并不適用于大量醫(yī)療數據的統(tǒng)計或針對醫(yī)療數據的計算、轉化和應用,因為密文是無法直接用來計算的,此外秘鑰的分發(fā)環(huán)節(jié)同樣會引入安全隱患[6].2009年Craig Gentry提出“全同態(tài)加密”[7]方法,可在未解密的條件下對加密數據進行任何運算.如:基于格上困難問題構造的全同態(tài)加密方案[8],控制密文噪聲增長,然后執(zhí)行自己的解密函數實現同態(tài)解密,依據循環(huán)安全假設實現全同態(tài)加密;基于環(huán)上帶誤差學習困難問題構造的全同態(tài)加密方案[9],使用近似向量方法表示私鑰,密文的同態(tài)計算使用矩陣運算.但是由于醫(yī)療機構處理數據能力比較弱,為了使用醫(yī)療數據價值,通常醫(yī)療機構需要將數據交給第三方的數據處理中心進行數據處理分析從而達到更好的醫(yī)療效果和科研水平.使用全同態(tài)加密雖然能達到數據加密和計算,但是醫(yī)療機構,患者和數據中心仍然處在中心化網絡中,不能保證雙方之間的信任和安全傳輸.

本文提出一種基于區(qū)塊鏈(blockchain)和全同態(tài)加密(full homomorphic encryption)的醫(yī)療大數據安全共享方案,首先將中心化網絡中的醫(yī)療機構、患者和第三方的數據處理中心等中心化節(jié)點映射在區(qū)塊鏈網絡中實現去中心化達到各節(jié)點完全信任.然后通過智能合約調用全同態(tài)加密算法實現在共享雙方間只有密文數據并且可以進行密文計算.最終實現在不影響醫(yī)療大數據分析和實際應用的情況下,確保個人數據的隱私安全、數據授權分發(fā)和安全傳輸.

2 相關技術

2.1 區(qū)塊鏈技術

區(qū)塊鏈技術[10]的核心是去中心化,通過運用數據加密、時間戳和分布式共識等手段,在對等節(jié)點無需信任的前提下實現去中心化的點對點交易、協調與協作,解決中心化系統(tǒng)的高成本、低效率和數據存儲不安全的問題.

區(qū)塊鏈系統(tǒng)[11]分為數據層、網絡層、共識層、激勵層、合約層和應用層六層結構.其中,數據層封裝了區(qū)塊鏈底層區(qū)塊以及哈希函數、數據加密和時間戳等技術;網絡層則包括P2P技術、傳播機制和驗證機制;共識層則封裝網絡節(jié)點的各類共識算法;激勵層主要包括發(fā)行機制和分配機制;合約層主要封裝了各類腳本、算法和智能合約,是區(qū)塊鏈可編程特性的基礎;應用層是區(qū)塊鏈在各種場景下的應用[12].

智能合約[13]是區(qū)塊鏈的核心要素,是由事件來觸發(fā)的、是具有狀態(tài)的并且是運行在區(qū)塊鏈數據賬本上的一段程序.智能合約的開發(fā)是用來實現區(qū)塊鏈與合約應用程序(DApps)進行交互的.智能合約的運行原理如圖1所示.

圖1 智能合約運行原理Fig.1 Smart contract operation principle

區(qū)塊鏈中的每個節(jié)點都可以將交易數據封裝到一個帶有時間戳的數據區(qū)塊中,并且鏈接到主區(qū)塊中,形成最新的區(qū)塊,然后將區(qū)塊信息同步到整個區(qū)塊鏈網絡中.其中數據區(qū)塊[14]包括:區(qū)塊頭和區(qū)塊體.區(qū)塊頭封裝了前一區(qū)塊地址和一系列哈希值,用來鏈接前后區(qū)塊;區(qū)塊體主要包含了本區(qū)塊的主要信息.區(qū)塊結構如圖2所示.

2.2 全同態(tài)加密技術

全同態(tài)加密[15]問題早在1978年就由Rivest等人提出,之后成為密碼學界的一個開放難題,被譽為密碼學界的“圣杯”.直到2009 年 Gentry 構造出第一個全同態(tài)加密方案,人們在此基礎上研究出更完善的技術,同時全同態(tài)加密技術也得到很大發(fā)展.全同態(tài)加密提供了一種對加密數據進行處理的功能,即能夠在不知道密鑰的情況下,對密文進行任意計算,即對于任意有效的f(x)函數及明文m,有性質f(Enc(m))=Enc(f(m))[16],其中Enc表示數據加密過程,f(x)表示數據運算過程,m表示原始數據.全同態(tài)加密方案是一個4元{key-Gen;encrypt;decrypt;evaluate}組.其中,

圖2 區(qū)塊結構Fig.2 Block structure

1)KeyGen:是全同態(tài)加密的啟動運算,生成全同態(tài)方案的密鑰對(pk,sk),其中pk為公鑰,sk為私鑰.

2)encrypt(Enc):是全同態(tài)加密的加密運算,給出一個明文m,用公鑰pk加密明文m,得到密文M=encrypt(m,pk).

3)decrypt(Dec):是全同態(tài)加密的解密運算,輸入私鑰sk和密文M,進行解密運算,輸出明文m=decrypt(M,sk).

4)Evaluate:對于給定的功能函數f(x)以及一組密文M={M1,M2,…,Mn}做運算f(M),得到計算結果C=f(M).

全同態(tài)加密方案如圖3所示.

圖3 同態(tài)加密原理Fig.3 Homomorphic encryption principles

在同態(tài)加密過程中,密文計算過程中會發(fā)生錯誤,這個錯誤稱為噪聲[17],而隨著密文計算的次數增多噪聲也會隨著增加,從而導致密文計算是有限的,如果噪聲超過了這個界限,那么密文的解密就可能失敗.BGV方案是目前最具有影響力的方案,也是目前效率最高的方案.BGV方案[18]采用模交換技術與密鑰交換技術,是一種無須啟動的層次型全同態(tài)加密方案.該方案是在密文每次計算后利用密鑰交換技術將密文轉換成一個新密文,然后通過模交換技術將隨密文增大的噪聲進行約減,進而達到更多次的密文計算. BGV算法[19]的具體步驟如下:

1)Setup(λ,L)令R=Z[x]/f(x)則Rq=Zq[x]/f(x),其中f(x)=xn+1,n是2的冪次方.輸入安全參數λ和電路深度L,輸出L+1個模q,產生參數a;η是R上的一個錯誤概率分布;N=「(2n+1)logq?.

4)Dec(a,sk,M):假設密文的密鑰是Si,則輸出的明文為m←((modq)mod2).

6)Mult(A,M1,M2):與Add()算法相同,假設密文在同一層電路上則對應同一個密鑰Si,如果M1和M2不在同一層,則進行Refesh更新操作,使M1、M2處于同一層再進行計算.

a)密鑰交換:M1←switchKey(τ(Si→Si-1),M,n1,n2,qi),M1對應的密鑰是Si-1和模qi.

b)模交換M2←scale(M1,qi,qi-1,2),M2對應的密鑰是Si和模qi.

3 基于區(qū)塊鏈技術的同態(tài)加密方案

3.1 醫(yī)療數據常規(guī)處理方法及隱患

在傳統(tǒng)醫(yī)療數據收集及過程中,個人是健康信息的主要提供來源,同時私人醫(yī)生、醫(yī)院診所的就診病例和移動可穿戴設備公司的健康數據收集也是提供個人健康信息的主要手段.個人信息的泄露給用戶帶來諸多問題.傳統(tǒng)醫(yī)療數據的來源見圖4.

圖4 傳統(tǒng)醫(yī)療數據來源Fig.4 Traditional medical data sources

傳統(tǒng)醫(yī)療數據存在以下兩方面安全隱患.

1)醫(yī)療數據隱私問題

在傳統(tǒng)的醫(yī)療數據收集時,無論是從個人信息收集還是從醫(yī)療機構收集都可能會造成數據源的泄露,也可能遭受的外部攻擊,導致數據泄露,從而導致個人的隱私安全受到威脅.

2)醫(yī)療數據存儲和交易的安全問題

傳統(tǒng)的醫(yī)療數據收集后,傳統(tǒng)醫(yī)療數據進行交易或存儲在傳統(tǒng)的數據中心時,受到外部黑客的攻擊會造成數據被盜竊;在數據中心進行數據處理時,處理數據由于是明文狀態(tài)也可能在數據處理過程中造成數據泄露,從而導致醫(yī)療數據的存儲和交易受到威脅.

3.2 醫(yī)療區(qū)塊鏈及全同態(tài)加密方案

針對上述傳統(tǒng)醫(yī)療數據存在的安全隱患問題,本文提出醫(yī)療區(qū)塊鏈及全同態(tài)加密方案.在區(qū)塊鏈中實現全同態(tài)加密技術,我們需要將全同態(tài)加密算法寫在區(qū)塊鏈的智能合約中,在這種情況下,存儲在區(qū)塊鏈中的醫(yī)療數據進行交易時,會自動調動智能合約,這樣在數據交易的過程中不僅保證了交易的不可篡改性和強時序性同時還保障了醫(yī)療數據的隱私安全.

因此將傳統(tǒng)的數據來源映射在區(qū)塊鏈網絡中,是解決上述問題的關鍵.如圖5所示,私人醫(yī)生、醫(yī)院、診所和個人等都各自成為區(qū)塊鏈中的對等節(jié)點,實現去中心化,共享醫(yī)療信息.

圖5 醫(yī)療數據區(qū)塊鏈節(jié)點Fig.5 Medical data block chain node

在該區(qū)塊鏈網絡中執(zhí)行的所有操作都以防篡改的方式記錄和控制.在每個節(jié)點進行數據交易的同時,區(qū)塊鏈網絡調用智能合約,實現全同態(tài)加密的合約.最終在不受信任方實現數據共享,各方共同存儲和計算數據的同時保證數據完全隱私的目標.

交易過程如圖6所示,具體步驟如下:

圖6 數據交易Fig.6 Data transaction

1)全同態(tài)加密智能合約(FHE-Contract)

steup(λ,L):全同態(tài)加密啟始階段,輸入安全參數λ和電路深度L,輸出L+1個模q,產生參數a;

keyGen(a):密鑰對生成階段,生成私鑰sk和公鑰pk;

enc(a,pk,m):數據加密階段,對醫(yī)療數據m加密得到C;

dec(a,sk,C):數據解密階段,對醫(yī)療數據密文C,解密得到m;

add(pk,C1,C2):數據加法運算階段,對醫(yī)療數據密文做加法計算;

mult(pk,C1,C2):數據乘法運算階段,對醫(yī)療數據密文做乘法計算.

2)觸發(fā)器

因為智能合約不能直接與醫(yī)療區(qū)塊鏈的網絡進行交互,所以交互過程需要觸發(fā)器鏈接.觸發(fā)器是鏈接智能合約和醫(yī)療區(qū)塊鏈網絡之間的實體.當有節(jié)點接收數據交易請求且確認請求合法時,觸發(fā)器會發(fā)送全同態(tài)加密合約地址和加密的醫(yī)療數據,然后將合約地址和密文發(fā)布在區(qū)塊鏈網絡中.定義兩元組trigger{request,receive}.觸發(fā)器監(jiān)聽節(jié)點狀態(tài),如果trigger(request)==start,獲取請求節(jié)點地址;如果trigger(receive)==start,接收合約接口、合約地址和數據.

3)數據處理

當收到請求節(jié)點的請求時,觸發(fā)器啟動,調用全同態(tài)智能合約的Enc()功能對數據進行加密;當收到接收響應時,觸發(fā)器啟動,調用全同態(tài)智能合約,如果數據處理進行加法運算則調用Add()功能,如果數據處理進行乘法運算則調用Mult()功能.數據處理進行完,調用Dec()功能,對加密的數據結果進行解密得到數據明文結果.

3.3 醫(yī)療區(qū)塊鏈全同態(tài)加密算法

基于區(qū)塊鏈的全同態(tài)加密方法是將BGV算法部署在區(qū)塊鏈的智能合約上,節(jié)點交易通過觸發(fā)器調用智能合約來實現數據交易的隱私保護.首先初始化參數:合約接口abi,合約地址address,節(jié)點地址peerID,請求響應request,接收反饋receive,存儲數據data和計算形式calculation{add,mult};其次設置智能合約功能函數:加密功能函數enc,解密功能函數dec,同態(tài)加法功能函數add,同態(tài)乘法功能函數mult,傳遞數據功能send,接收數據功能函數get,接收節(jié)點地址功能函數getPeer和觸發(fā)器功能函數trigger;最后監(jiān)測觸發(fā)器狀態(tài)執(zhí)行合約.算法流程如圖7所示.

圖7 算法流程圖Fig.7 Algorithm flow

算法 FSC= FHE-Contract(data)

輸入:data——交易的醫(yī)療數據集.

條件:trigger()——觸發(fā)器啟動,調用全同態(tài)智能合約.

輸出:FSC——加密數據同態(tài)計算后解密的數據集.

算法步驟:

算法:FHE-Contract

1.trigger{request,receive};data{}=φ;

2. for each trigger(request)==true ∈ trigger

3. getPeer(peerID);/*得到請求節(jié)點地址*/

4. Data = FHE.enc(a,pk,data);/*數據data進行加密得到密文數據Data*/

5. send(abi,address,Data) to(peerID);/*交易包含密文數據Data,合約地址address和接口abi*/

6. end for

7. for each trigger(receive)==true ∈ trigger

8. get(abi,address,Data);/*交易獲得密文數據Data,合約地址address和接口abi.*/

9. while calculation==add do

10. Result=FHE.add(pk,Data);

11. end while

12. while calculation==mult do

13. Result=FHE.mult(pk,Data);

14. end while

15. result=FHE dec(a,sk,Result);/*密文數據結果Result進行解密得到明文結果result*/

16. end for

17.end

4 實驗與分析

基于區(qū)塊鏈的全同態(tài)加密方法主要實現個人醫(yī)療數據的隱私保護和數據統(tǒng)計的安全.本文將基于Ubuntu16.0.4系統(tǒng),使用以太坊錢包客戶端實現全同態(tài)智能合約,同時基于50名用戶的個人健康數據完成實驗.實驗目標是統(tǒng)計一個群體的平均身高及體重,我們實驗通過收取這個群體中的50名用戶的體檢報告(性別、身高和體重)作為樣本數據,來完成對這個群體的統(tǒng)計目標.用戶通過區(qū)塊鏈交易來完成信息的共享,同時通過全同態(tài)加密來完成數據統(tǒng)計.本節(jié)首先針對數據信息的隱私性和安全性進行驗證,然后驗證加密數據的全同態(tài)性,最后采用對照分析來評估系統(tǒng)的優(yōu)勢及不足.

通過實驗結果分析一方面驗證數據的隱私性和安全性,另一方面驗證加密數據的全同態(tài)性.

4.1 數據的隱私性和安全性

首先將50名用戶信息分別存儲在傳統(tǒng)的中心化數據庫和去中心化的全同態(tài)加密區(qū)塊鏈中,其中性別:男性用字符“1”表示,女性用字符“2”表示.然后分別查詢兩類數據庫中用戶的信息.通過傳統(tǒng)數據庫查詢用戶的信息如表1所示,可以訪問到用戶的所有個人信息,這樣容易導致用戶隱私的泄露.而與傳統(tǒng)數據庫相比,通過查詢全同態(tài)加密區(qū)塊鏈中的用戶信息如表2所示,訪問到的是用戶全部信息的密文數據,這樣即使數據泄露也只是一串密文的泄露,仍然無法得到其中用戶具體的個人信息.通過查詢用戶傳統(tǒng)數據庫與全同態(tài)加密區(qū)塊鏈中的數據顯示狀態(tài)對比,當數據庫遭受攻擊或者數據泄露時,傳統(tǒng)數據庫直接泄露數據信息;而區(qū)塊鏈數據庫中的數據只泄露數據密文信息,進一步的保證了用戶信息的隱私性.

表1 傳統(tǒng)存儲用戶體檢信息表Table 1 Traditional storage user medical information table

表2 加密用戶體檢信息表Table 2 Encryted user medical information

4.2 數據交易的安全性及數據同態(tài)性

實驗最后分別統(tǒng)計50名用戶中男性和女性的平均身高和平均體重.首先統(tǒng)計傳統(tǒng)數據庫中明文數據中男性和女性的平均身高和體重作為驗證數據.然后區(qū)塊鏈調用全同態(tài)加密合約,統(tǒng)計密文數據中男性和女性的平均身高和體重.通過兩種數據庫中統(tǒng)計數據的結果對比如表3,計算結果一致,表明數據進行BGV全同態(tài)加密后仍然可以對密文進行計算,具有全同態(tài)性.最后數據在中心化數據庫中收到攻擊時,會導致所有數據的安全問題,而去中心化系統(tǒng)則緩解了黑客攻擊數據庫的導致所有數據泄露問題.

表3 男女平均身高體重表Table 3 Average height and weight of men and women

4.3 實驗結果

在以太坊區(qū)塊鏈中,節(jié)點調用其他節(jié)點的全同態(tài)智能合約時,該節(jié)點只能得到解密后的體檢數據.在以太坊錢包中,交易節(jié)點的賬戶只能得到最終的平均身高和平均體重而無法查看計算過程,也無法查看每個用戶的具體信息,這樣保證了原始數據的隱私安全,還保證了數據交易過程中數據的意思安全,最后防止了數據計算過程中數據泄露的問題.如圖8-圖9所示,為其中交易節(jié)點的以太坊錢包調用其他節(jié)點的全同態(tài)智能合約時所得到的數據結果,與正確的數據結果相吻合,表明了實驗結果的正確性.

圖8 男生平均身高結果圖Fig.8 Averageheightformen圖9 男生平均體重結果圖Fig.9 Averageweightformen

4.4 系統(tǒng)優(yōu)勢及不足

在本實驗中,以50名用戶作為樣本數據,實現了全同態(tài)加密智能合約的功能,完成了安全共享醫(yī)療數據及保護個人數據隱私的目標.但是本實驗采用了小數據做簡單的運算,如果涉及到醫(yī)療大數據的復雜運算,系統(tǒng)還需進一步優(yōu)化.

5 總 結

本文提出了基于區(qū)塊鏈和全同態(tài)加密的醫(yī)療大數據安全共享方案,通過區(qū)塊鏈技術和全同態(tài)加密技術的結合,實現在區(qū)塊鏈中節(jié)點間只有密文數據傳輸并且可以進行密文計算的目標.最后基于以太坊的仿真實驗,驗證了該方案的全同態(tài)性與數據的共享安全性.最終完成在不影響醫(yī)療大數據分析和實際應用的情況下,確保個人數據的隱私安全、數據授權分發(fā)和安全傳輸的目標.

猜你喜歡
智能
智能與自主
讓紙變得智能
一種智能微耕機的研發(fā)
智能制造 反思與期望
智能前沿
文苑(2018年23期)2018-12-14 01:06:06
智能前沿
文苑(2018年19期)2018-11-09 01:30:14
智能前沿
文苑(2018年17期)2018-11-09 01:29:26
智能前沿
文苑(2018年21期)2018-11-09 01:22:32
智能制造·AI未來
商周刊(2018年18期)2018-09-21 09:14:46
爭渡智能石化
能源(2018年4期)2018-05-19 01:53:44
主站蜘蛛池模板: 亚洲男人的天堂网| 欧美激情网址| 国产交换配偶在线视频| 国产成人夜色91| 国产精品欧美激情| 久久情精品国产品免费| 亚洲成人免费看| 国产免费人成视频网| 五月丁香伊人啪啪手机免费观看| 综合网久久| 日本人真淫视频一区二区三区| 99色亚洲国产精品11p| 久久综合九色综合97网| 六月婷婷精品视频在线观看| 高清码无在线看| 99久久精品免费看国产免费软件 | 久久亚洲精少妇毛片午夜无码| 伊人久热这里只有精品视频99| 欧美亚洲国产一区| 午夜无码一区二区三区在线app| 免费在线a视频| 亚洲第一色视频| 国产成人1024精品| 高清久久精品亚洲日韩Av| 在线看片中文字幕| 啪啪国产视频| 亚洲成人动漫在线观看| 国产成人一区| 日韩AV无码一区| 亚洲精品少妇熟女| 动漫精品中文字幕无码| 在线看国产精品| 高清不卡毛片| 亚洲国产精品国自产拍A| 亚洲第一黄色网| 麻豆精品国产自产在线| 国产福利一区二区在线观看| 免费一级毛片在线观看| 午夜视频日本| 啪啪永久免费av| 亚洲高清中文字幕在线看不卡| 日韩一区二区在线电影| 日本午夜影院| 久久综合五月婷婷| 久久这里只精品国产99热8| 尤物在线观看乱码| 国产手机在线小视频免费观看 | 国产中文在线亚洲精品官网| 91年精品国产福利线观看久久 | 日韩av无码DVD| 手机在线国产精品| 成人亚洲天堂| 被公侵犯人妻少妇一区二区三区| 性视频一区| 欧美笫一页| 无码aⅴ精品一区二区三区| 国产精品免费电影| 国模视频一区二区| 亚洲高清免费在线观看| 欧美一级爱操视频| 18禁影院亚洲专区| AV网站中文| 亚洲乱码精品久久久久..| 人妻丰满熟妇AV无码区| 欧美精品另类| 中文字幕丝袜一区二区| 欧美成人日韩| 制服丝袜国产精品| 五月婷婷欧美| 亚洲第一视频区| 国产成人亚洲综合A∨在线播放| 亚洲无码91视频| 操国产美女| 精品伊人久久久大香线蕉欧美 | 亚洲第一极品精品无码| 国产一区成人| 国产视频自拍一区| 欧美无专区| 久久人搡人人玩人妻精品| 人妻91无码色偷偷色噜噜噜| 九色在线观看视频| 亚洲欧美另类中文字幕|