郭敏 金泳
(湖南恒茂高科股份有限公司,湖南 醴陵 412200)
信息爆炸時代的到來,數(shù)據(jù)已成為一種重要的戰(zhàn)略性資源。數(shù)據(jù)共享的潛在價值越來越大,數(shù)據(jù)資源的廣泛應(yīng)用同時帶來了隱私安全保護問題,傳統(tǒng)的數(shù)據(jù)中心化的共享方案雖能夠解決共享中互不信任、數(shù)據(jù)無法共享的問題,但也存在一定的缺點。數(shù)據(jù)都集中存儲在第三方機構(gòu)中,一旦第三方機構(gòu)受到攻擊,數(shù)據(jù)在共享時無法避免被刪除或更改的風(fēng)險。區(qū)塊鏈技術(shù)的非對稱加密、哈希算法保證數(shù)據(jù)不被篡改、以及全透明去中心化的特點,能夠有效解決惡意攻擊篡改數(shù)據(jù)、改變目前傳統(tǒng)的中心化機制共享的問題。但是區(qū)塊鏈公開透明的特點導(dǎo)致了存在隱私數(shù)據(jù)共享時的泄露。傳統(tǒng)的哈希函數(shù)加密方法已不足以支撐部分隱私數(shù)據(jù)的安全共享,以此需要采用一種新的加密算法,確保隱私數(shù)據(jù)既能加密共享,又能降低隱私數(shù)據(jù)的泄露程度。同態(tài)加密是一種能夠在區(qū)塊鏈本身原有加密基礎(chǔ)上使用、無需提前解密已加密數(shù)據(jù)就執(zhí)行計算的方法。通過使用同態(tài)加密技術(shù),在區(qū)塊鏈上存儲數(shù)據(jù)、共享數(shù)據(jù)時不會改變區(qū)塊鏈的屬性,也不會造成任何重大的變動,可以達到一種完美的平衡。因此本文采用同態(tài)加密技術(shù),提出一種基于區(qū)塊鏈上的數(shù)據(jù)安全共享的方案,以期為數(shù)據(jù)安全共享提供一定的借鑒。
數(shù)據(jù)安全共享是目前國內(nèi)外學(xué)者研究的熱點,Shen.WT提出了一種遠程數(shù)據(jù)完整的審計共享方案,借助云存儲服務(wù),實現(xiàn)了隱藏在遠程數(shù)據(jù)完整審計中的敏感信息的共享[1]。陳真勇以現(xiàn)代技術(shù)相互融合為起點,提出了一種數(shù)據(jù)共享安全和融合框架,分析得出數(shù)據(jù)共享和融合是建設(shè)智慧城市的首要核心問題[2]。孫曉燕[3]、莊倩[4]、S.B.Linek等[5]、K.Williamson[6]等對科研數(shù)據(jù)共享提出了框架、模型、算法等研究。區(qū)塊鏈因其去中心化、公開透明的特點,在其基礎(chǔ)上的數(shù)據(jù)共享已成為新的挑戰(zhàn)。董祥千等認為數(shù)據(jù)開放共享式推動數(shù)據(jù)相關(guān)產(chǎn)業(yè)發(fā)展的源動力,為了保證數(shù)據(jù)的安全,借助區(qū)塊鏈技術(shù)建立了一種全新的去中心化數(shù)據(jù)共享模型,模型中采用的是安全多方計算及差分隱私技術(shù)保障數(shù)據(jù)所有者的計算和輸出隱私[8]。醫(yī)療數(shù)據(jù)安全共享困難一直都是醫(yī)療行業(yè)的一大痛點,薛騰飛等提出了一個基于區(qū)塊鏈的醫(yī)療數(shù)據(jù)共享模型,適用于解決各醫(yī)療機構(gòu)數(shù)據(jù)安全共享的難題[10]。針對能源互聯(lián)網(wǎng)企業(yè)與外間的數(shù)據(jù)共享中存在的一些隱患問題,王繼業(yè)結(jié)合區(qū)塊鏈的去中心化、資助對等、難以更改的技術(shù)特征,構(gòu)建了基于區(qū)塊鏈的數(shù)據(jù)安全共享網(wǎng)絡(luò)體系[11]。由此不難看出,由于共享經(jīng)濟獨特的發(fā)展特征,數(shù)據(jù)之間的安全共享已經(jīng)變得越來越重要。近年,我國學(xué)者在同態(tài)密碼學(xué)研究上發(fā)表了一些成果,在探索過程中,將同態(tài)加密技術(shù)應(yīng)用多在云計算、多方計算、匿名訪問、電子商務(wù)等領(lǐng)域[12]。但也有一些學(xué)者結(jié)合了區(qū)塊鏈與同態(tài)加密的特征,設(shè)計發(fā)明了一些專利,例如鄭珂威設(shè)計發(fā)明了基于完全同態(tài)加密的區(qū)塊鏈信息加密方法、華為公司也利用了同態(tài)加密的算法以實現(xiàn)區(qū)塊鏈的安全隱私保護。在梁秀波等[13]人發(fā)明的基于加法同態(tài)加密的區(qū)塊鏈的隱私保護方法中,文中采用的是加法同態(tài)加密,很好的保護了區(qū)塊鏈上交易數(shù)據(jù)的隱私,提高了交易的安全性。
目前,關(guān)于區(qū)塊鏈的研究越來越多,但卻尚未形成一個公認的區(qū)塊鏈定義,最為廣泛的定義是區(qū)塊鏈?zhǔn)且环N以塊鏈結(jié)構(gòu)存儲數(shù)據(jù),并由多方共同維護,使用密碼學(xué)技術(shù)保證傳輸和訪問安全,能夠?qū)崿F(xiàn)數(shù)據(jù)永久存儲、無法篡改、無法侵入的技術(shù)體。換言之,區(qū)塊鏈就是利用計算機程序在全網(wǎng)記錄所有交易信息的一個分布式中心化賬本[14]。區(qū)塊鏈分為狹義區(qū)塊鏈和廣義區(qū)塊鏈,狹義區(qū)塊鏈主要是以區(qū)塊鏈技術(shù)應(yīng)用,只是一個分布式賬本,是業(yè)內(nèi)一種“弱區(qū)塊鏈”的觀點。廣義的區(qū)塊鏈其實才是核心。從廣義來說,區(qū)塊鏈技術(shù)則是一種去中心化的分布式計算范式[10]。以加密鏈?zhǔn)絹眚炞C與存儲數(shù)據(jù)、以分布式共識算法來生成和更新數(shù)據(jù),以及智能合約(自動化腳本)來編程和操作數(shù)據(jù)。
區(qū)塊鏈的安全機制實則是依據(jù)它的原理決定的,區(qū)塊鏈采用的是分布式存儲,利用點對點的組成方式聯(lián)結(jié)網(wǎng)絡(luò)。每一個節(jié)點都可以保存區(qū)塊鏈全部數(shù)據(jù)的信息,如此是為了避免由傳統(tǒng)的中心節(jié)點存儲時,一旦中心節(jié)點受到攻擊而全部的數(shù)據(jù)信息受到損失的情況。點對點的分布式存儲可以建立節(jié)點之間的信任關(guān)系,也可以避免對于單一節(jié)點的過量訪問導(dǎo)致網(wǎng)絡(luò)擁擠的現(xiàn)象。
同態(tài)加密的概念首次提出于Rivest等學(xué)者1978年的《On databanks and privacy homomorphic》[15]論文中,是允許用戶直接對密文進行特定的代數(shù)運算后,得到的數(shù)據(jù)仍是加密的結(jié)果,也就是說,對明文進行同樣的代數(shù)運算操作后,得到的結(jié)果也是一樣的加密。
同態(tài)加密一般是由四個部分組成:密鑰的生成、同態(tài)加密、同態(tài)解密以及同態(tài)賦值。密鑰的生成是由安全參數(shù)λ生成公鑰pk、私鑰sk。同態(tài)加密是指給出指定明文m∈{0,1}*,用公鑰pk將其加密,得到密文c。同態(tài)解密是指輸入私鑰sk和密文c進行解密計算,輸出明文m’。同態(tài)賦值是指輸入公鑰pk,t個輸入的電路C,一組密文c=(c1,c2,…,ct),輸出c*=evaluate(pk,C,c),且 滿 足dec(sk,c*)=C(m1,m2,…mn)。其中evaluate算法是完全同態(tài)加密中最重要的部分,通過evaluate算法可以對任意函數(shù)進行計算。
區(qū)塊鏈技術(shù)的本身使得數(shù)據(jù)對每個參與方都是可達的,即用戶的數(shù)據(jù)對各個參與方是透明的,任何組織都可以訪問到相同的數(shù)據(jù)。目前,大部分的區(qū)塊鏈并沒有滿足數(shù)據(jù)的隱私性要求,針對該問題本文提出了提一種隱私數(shù)據(jù)安全共享加密機制,保障了需求數(shù)據(jù)在共享過程中不泄露隱私數(shù)據(jù)。如下圖1所示,政府、人社局、公積金中心、公安部門和部門隱私數(shù)據(jù)都各自成為區(qū)塊鏈的對等節(jié)點,實現(xiàn)去中心化,共享政務(wù)部門數(shù)據(jù)。在區(qū)塊鏈網(wǎng)絡(luò)節(jié)點中,執(zhí)行的所有操作都是防篡改的,便于記錄與控制。在節(jié)點間進行數(shù)據(jù)交易時,調(diào)用智能合約技術(shù)實現(xiàn)同態(tài)加密的合約。保證在不受信任方實現(xiàn)隱私數(shù)據(jù)的共享,在各方共同存儲與計算數(shù)據(jù)的同時保證數(shù)據(jù)共享中完全隱私的目的。
圖1同態(tài)加密區(qū)塊鏈數(shù)據(jù)交易示意圖
本文提出了的一種基于區(qū)塊鏈上的數(shù)據(jù)安全共享機制,步驟如下:
1.生成一對同態(tài)密鑰作為全網(wǎng)的同態(tài)密鑰;公開公鑰,私鑰保存在自身手中,可用于本人的申請操作可見數(shù)據(jù)分享情況;2.拆分數(shù)據(jù)擁有者的數(shù)據(jù),需要分享的數(shù)據(jù)以及不分享的隱私數(shù)據(jù);3.使用全網(wǎng)公開的公鑰加密拆分后分享的數(shù)據(jù)以及不分享的數(shù)據(jù),此加密采用加法同態(tài)加密算法;4.使用數(shù)據(jù)接收方的公鑰加密需要分享的數(shù)據(jù),此加密算法采用加法同態(tài)加密算法;5.數(shù)據(jù)擁有者發(fā)起數(shù)據(jù)共享的交易,將加密后的密文發(fā)送至區(qū)塊鏈,區(qū)塊鏈選取一個代表節(jié)點進行驗證交易數(shù)據(jù)。
安全性分析的主要內(nèi)容是關(guān)于方案可能受到的攻擊。從加密方案的層面上講,如果數(shù)據(jù)申請訪問方想成功的訪問加密的數(shù)據(jù),首先必須要擁有全網(wǎng)同態(tài)加密密文的密鑰,但私鑰是保存在第三可信方中,在本文的環(huán)境下,假設(shè)申請者從未向全網(wǎng)公開自己的身份,意味著他的身份在全網(wǎng)是不予認證通過的,他無法得到第三可信方的信任,也就無法獲得密文的私鑰,從而降低了方案的被攻擊性。從攻擊區(qū)塊鏈的層面看,區(qū)塊鏈技術(shù)本身擁有許多的礦工,從博弈論的角度來看,本文的方案抵御了這種攻擊。
本文的方案可以從以下幾個方面為數(shù)據(jù)共享時提供高質(zhì)量的隱私保護服務(wù):首先,本文基于區(qū)塊鏈上采用底層的哈希函數(shù)來保證數(shù)據(jù)存儲的完整性和真實性,同時在數(shù)據(jù)共享時使用同態(tài)加密方案來確保數(shù)據(jù)共享過程中的安全性。通過在全網(wǎng)生成同態(tài)密鑰,私鑰保存在第三可信方中,數(shù)據(jù)在共享時只以密文的形式出現(xiàn)在臉上。該機制可以為數(shù)據(jù)安全共享提供更好的隱私保護。其次,與其他隱私保護方案相比,本文密鑰管理更方便。由于私鑰是保存在第三可信方中,當(dāng)用戶在丟失了自己的數(shù)據(jù)申請情況下,通過本人的申請操作重新找回私鑰,也就是說,密鑰管理的復(fù)雜性相對較低。
同態(tài)加密方案主要是加密隱私數(shù)據(jù),而區(qū)塊鏈技術(shù)的“分布式、去中心化”的明顯特征,使得隱私數(shù)據(jù)安全共享具有較好的應(yīng)用優(yōu)勢和前景。不少的學(xué)者在區(qū)塊鏈技術(shù)與加密算法的結(jié)合應(yīng)用方面給出了確保數(shù)據(jù)安全共享先進的研究。本文通過先分析數(shù)據(jù)共享在如今社會的影響性以及普及性,提出了結(jié)合基于區(qū)塊鏈技術(shù)下數(shù)據(jù)共享的發(fā)展研究;再以區(qū)塊鏈技術(shù)作為底層技術(shù),提出了一種區(qū)塊鏈技術(shù)下的隱私數(shù)據(jù)安全共享機制研究,結(jié)合了目前在區(qū)塊上數(shù)據(jù)的共享過程以及在同態(tài)加密算法下的數(shù)隱私據(jù)共享保密方案,在經(jīng)典的Paillier同態(tài)加密方案的基礎(chǔ)上,結(jié)合本文的數(shù)據(jù)共享機制引入了一種變體的同態(tài)加密算法,在隱私數(shù)據(jù)安全共享方面給予了保障。本文提出的加密方案可以幫助隱私數(shù)據(jù)安全共享,以滿足如今的共享經(jīng)濟的發(fā)展需求。希望本文可以對數(shù)據(jù)安全共享時減少隱私數(shù)據(jù)的泄露提供一個好的借鑒,以便于為未來的研究發(fā)展提供有益的啟發(fā)。