周明,黃影,李葵,魏俊奎,李志
(1.國網(wǎng)安徽省電力有限公司信息通信分公司,安徽合肥 230009;2.國網(wǎng)信通產(chǎn)業(yè)集團(tuán)安徽繼遠(yuǎn)軟件有限公司,安徽合肥 230088)
信息化時(shí)代的到來,使越來越多企業(yè)通過數(shù)字化形式進(jìn)行管理。物資清查數(shù)據(jù)屬于企業(yè)機(jī)密內(nèi)容,一旦泄露或丟失會(huì)對(duì)企業(yè)造成嚴(yán)重后果,管理層也因無法第一時(shí)間獲得財(cái)產(chǎn)資料導(dǎo)致決策依據(jù)缺乏。由于網(wǎng)絡(luò)技術(shù)與人們工作生活高度結(jié)合,使人們對(duì)數(shù)據(jù)儲(chǔ)存安全隱私性的要求不斷提高。一般情況下對(duì)數(shù)據(jù)安全的關(guān)注體現(xiàn)在防護(hù)設(shè)備與密碼設(shè)備中,例如防火墻、入侵監(jiān)測系統(tǒng)等。隨著儲(chǔ)存系統(tǒng)與辦公自動(dòng)化技術(shù)在企業(yè)的普遍應(yīng)用,一旦儲(chǔ)存介質(zhì)出現(xiàn)失效現(xiàn)象,全部機(jī)密信息都可能被篡改或丟失,對(duì)企業(yè)與個(gè)人帶來嚴(yán)重經(jīng)濟(jì)損失。因此有必要研究一種安全儲(chǔ)存方法。
文獻(xiàn)[1]提出一種數(shù)據(jù)安全儲(chǔ)存的協(xié)同方法,從分布式角度出發(fā),構(gòu)建一個(gè)能夠?qū)崿F(xiàn)數(shù)據(jù)儲(chǔ)存與控制的協(xié)同體系模型,為該模型設(shè)計(jì)多級(jí)可信管理、密鑰管理等功能,保證數(shù)據(jù)損失程度在能夠接受的范圍內(nèi)。文獻(xiàn)[2]設(shè)計(jì)一種基于SWIFT的海量數(shù)據(jù)儲(chǔ)存系統(tǒng)。建立系統(tǒng)基礎(chǔ)框架,再分別對(duì)該系統(tǒng)的數(shù)據(jù)儲(chǔ)存哈希過程、Ring 優(yōu)化、Replica 優(yōu)化三個(gè)模塊進(jìn)行設(shè)計(jì)。但是上述兩種方法內(nèi)存占用率大,會(huì)出現(xiàn)系統(tǒng)堵塞現(xiàn)象?;诖?,本文提出區(qū)塊鏈技術(shù)對(duì)物資清查數(shù)據(jù)安全存儲(chǔ)系統(tǒng)。區(qū)塊鏈屬于一個(gè)自身攜帶信任機(jī)制與防篡改的記錄系統(tǒng),它轉(zhuǎn)變了互聯(lián)網(wǎng)服務(wù)方式,在信息非對(duì)稱條件下建立互相信任的架構(gòu),打消用戶針對(duì)安全問題的顧慮。其利用高度冗余的分布儲(chǔ)存形式,通過匿名簽名方式提高數(shù)據(jù)安全性,減少儲(chǔ)存過程中造成的泄露威脅,構(gòu)建符合用戶信任條件的儲(chǔ)存模式。
為改善物資清查數(shù)據(jù)儲(chǔ)存的隱私性,需從下述兩方面對(duì)數(shù)據(jù)進(jìn)行保護(hù):判斷數(shù)據(jù)正確性,降低其遭到刪改或偽造的可能;實(shí)現(xiàn)對(duì)初始數(shù)據(jù)的可追溯[3],具有一定的數(shù)據(jù)恢復(fù)性能。區(qū)塊鏈技術(shù)利用去中心化與去信任的形式較好的解決以上問題。該技術(shù)屬于一種分布式記賬系統(tǒng)。區(qū)塊鏈中主要包括交易、區(qū)塊與鏈。其中交易指促使賬本出現(xiàn)變化的操作,例如增多一條記錄即為完成一次交易;區(qū)塊表示單位時(shí)間內(nèi)交易的數(shù)據(jù)結(jié)構(gòu);鏈則是由串聯(lián)的小區(qū)塊構(gòu)成[4],記載著系統(tǒng)中全部狀態(tài)變化情況。區(qū)塊鏈系統(tǒng)通常包括數(shù)據(jù)層、網(wǎng)絡(luò)層、應(yīng)用層等多個(gè)層次。其中數(shù)據(jù)層能夠建立數(shù)據(jù)區(qū)塊,實(shí)現(xiàn)數(shù)據(jù)加密處理,并加入時(shí)間戳;網(wǎng)絡(luò)層可以對(duì)節(jié)點(diǎn)之間通信情況進(jìn)行檢測;應(yīng)用層則能完成區(qū)塊鏈技術(shù)的各類應(yīng)用。詳細(xì)層次結(jié)構(gòu)如圖1所示。
圖1 區(qū)塊鏈層次結(jié)構(gòu)圖
經(jīng)過對(duì)區(qū)塊鏈層次結(jié)構(gòu)的分析,得出該技術(shù)存在如下優(yōu)勢:(1)去中心化[5]:對(duì)于數(shù)據(jù)傳輸、驗(yàn)證與儲(chǔ)存都在分布式架構(gòu)基礎(chǔ)上進(jìn)行,增強(qiáng)節(jié)點(diǎn)之間的信任度,構(gòu)成可信任的分布式系統(tǒng);(2)集體維護(hù):利用特殊機(jī)制,激勵(lì)全部節(jié)點(diǎn)都能參與到新數(shù)據(jù)合理性檢驗(yàn)中;(3)時(shí)序性:區(qū)塊信息中具有時(shí)間戳,可以加強(qiáng)時(shí)間維度,可追溯性較強(qiáng);(4)安全性:利用非對(duì)稱加密技術(shù)進(jìn)行數(shù)據(jù)簽名,此外通過全部節(jié)點(diǎn)的檢測過程來防止外部攻擊,確保交易行為不能偽造,提高安全性。
結(jié)合實(shí)例系統(tǒng)中物資清查數(shù)據(jù)面臨的安全威脅做出下述假設(shè):任意一個(gè)攻擊者獨(dú)自到來,攻擊者之間無任何聯(lián)系;攻擊者數(shù)量滿足參數(shù)是γ的松柏分布[6],γ 表示一段時(shí)間內(nèi)攻擊平均次數(shù);每次攻擊導(dǎo)致的物資清查數(shù)據(jù)信息篡改情況滿足參數(shù)是μ的負(fù)指數(shù)分布[7]。
在確定上述條件后,如果終端數(shù)量是M,U表示物資清查數(shù)據(jù)編碼集合,U={u1,u2,…,un},ui=[ui,code,ui,state],其中,ui.code表示物資清查數(shù)據(jù)編碼,ui.state代表物資清查數(shù)據(jù)狀態(tài),ui.code{1,0,-1},其取值分別與物資清查數(shù)據(jù)發(fā)生篡改、無變化、偽造三種情況相對(duì)應(yīng)。
假設(shè)L 為系統(tǒng)安全運(yùn)行的前提條件,SL(t1,t2)表示系統(tǒng)在符合安全要求下[t1,t2]單位時(shí)間內(nèi)遭到攻擊的可能性,PL(t1,t2,k)代表在符合安全要求下[t1,t2]單位時(shí)間內(nèi)物資清查數(shù)據(jù)受到k次篡改與偽造的可能性。RB(S)描述在區(qū)域塊算法B 下系統(tǒng)運(yùn)行的風(fēng)險(xiǎn)因素,也可稱其為系統(tǒng)魯棒性,pn(t)代表在t時(shí)間點(diǎn)系統(tǒng)遭受n個(gè)攻擊者入侵的幾率。
根據(jù)上述假設(shè)可以得出,如果△t足夠小,則在[t,t+△t]時(shí)間區(qū)間內(nèi)存在一個(gè)攻擊者的幾率是γ△t。所以,在t+△t時(shí)間點(diǎn)上,系統(tǒng)受到n個(gè)攻擊者入侵幾率pn(t+△t)的計(jì)算公式為:
令△t→0,能夠得到:
綜合分析特殊情況,即如果n=0,在時(shí)間[t,t+△t]范圍內(nèi)系統(tǒng)受到攻擊的可能性有三種:(1)在時(shí)間點(diǎn)t上系統(tǒng)沒受到任何攻擊,在[t,t+△t]范圍內(nèi)也沒存在一個(gè)新攻擊,其出現(xiàn)的概率表示為(1-γ△t)p0(t);(2)在時(shí)間點(diǎn)t上系統(tǒng)并沒受到攻擊,但在[t,t+△t]時(shí)間范圍內(nèi)出現(xiàn)新攻擊,其概率表示為γ△tμ△tp0(t);(3)在時(shí)間點(diǎn)t上受到攻擊而在[t,t+△t]時(shí)間范圍內(nèi)并無其它攻擊,其概率表示為(1-γ△t)μ△tp1(t)。
因此存在:
所以pn(t)滿足公式(2)與(3)的要求。
則SL(t1,t2)可通過下述公式獲?。?/p>
本文構(gòu)建的安全儲(chǔ)存機(jī)制模型如下:
公式(5)代表t時(shí)間點(diǎn)系統(tǒng)受到n個(gè)攻擊者入侵的幾率表達(dá)式;公式(6)屬于系統(tǒng)受到攻擊程度的約束條件;公式(7)是系統(tǒng)自身約束函數(shù),要求至少儲(chǔ)存一個(gè)文件;公式(8)代表時(shí)間段[t1,t2]上物資清查數(shù)據(jù)文件被破壞k 次的機(jī)率,公式(9)描述系統(tǒng)目標(biāo)約束條件,可判斷某段時(shí)間內(nèi)系統(tǒng)受到攻擊的平均狀況,此值越小,表明系統(tǒng)魯棒性越高。
利用區(qū)塊鏈技術(shù)構(gòu)建安全儲(chǔ)存機(jī)制模型能夠使系統(tǒng)安全得到提升,但是不能避免系統(tǒng)由于漏洞與工作人員的惡意破壞造成的安全威脅,所以還需進(jìn)一步優(yōu)化。優(yōu)化方法如下所述。
區(qū)域鏈的關(guān)鍵優(yōu)勢是可以在決策權(quán)較為分散的系統(tǒng)中使用激勵(lì)機(jī)制,確保不同節(jié)點(diǎn)之間對(duì)區(qū)塊數(shù)據(jù)形成共識(shí)。經(jīng)過分析使共識(shí)端利益最大化行為和物資清查數(shù)據(jù)安全儲(chǔ)存目標(biāo)之間的關(guān)系,得出若全部終端均存在待提交驗(yàn)證,為實(shí)現(xiàn)收益最大化,任意一方都無法影響其它區(qū)塊的驗(yàn)證結(jié)果。通過數(shù)學(xué)形式表示為:在儲(chǔ)存系統(tǒng)中,A={A1,A2,…,An}表示系統(tǒng)終端集合。任意一終端Ai提交的其它終端驗(yàn)證內(nèi)容與收益利用集合Gi={Si1,Si2,…,Sin}代表。由終端Ai打包的不同驗(yàn)證組合(Si1,Si2,…,Sin)內(nèi),某驗(yàn)證方Aj對(duì)Ai給出的驗(yàn)證結(jié)果是Sij,其符合下述條件:
因此得到的本次區(qū)塊記賬分權(quán)情況[8]有下述幾種:情況1:此次計(jì)算時(shí)間并未結(jié)束,針對(duì)最早形成的AiA,令ui(Si1,Si2,…,Sin=n),此時(shí)確定Ai是本輪最優(yōu)區(qū)塊,即選擇最早經(jīng)過系統(tǒng)全部終端的區(qū)塊;情況2:此次計(jì)算過程已經(jīng)完成Ai,AjA,令n>ui(Si1,Si2,…,Sin)>uj(Sj1,Sj2,…,Sjn),因此將Ai當(dāng)做此次最優(yōu)區(qū)塊;情況3:此次計(jì)算過程已經(jīng)完成,AiAj,AkA,令n>ui(Si1,Si2,…,Sin)=(Sj1,Sj2,…,Sjn),從Ai與Aj中挑選最先到達(dá)ui的區(qū)塊作為最優(yōu)區(qū)塊,該區(qū)塊獲得的收益最大。
(1)整體設(shè)計(jì)要求
物資清查數(shù)據(jù)安全存儲(chǔ)系統(tǒng)為用戶提供加密的重要文件,不但要安全可靠,還要最大程度符合下述要求:實(shí)用性:符合物資清查數(shù)據(jù)安全儲(chǔ)存的不同需求,操作簡便;穩(wěn)定性:物資清查數(shù)據(jù)安全存儲(chǔ)系統(tǒng)開發(fā)過程中,需綜合分析可能發(fā)生的意外狀況,確保系統(tǒng)穩(wěn)定運(yùn)行,構(gòu)建物資清查數(shù)據(jù)恢復(fù)機(jī)制,降低用戶損失;先進(jìn)性:利用當(dāng)前最先進(jìn)的技術(shù),確保系統(tǒng)各類功能性能達(dá)到最佳。
(2)安全性分析
物資清查數(shù)據(jù)安全儲(chǔ)存屬于復(fù)雜的系統(tǒng)工程,其核心內(nèi)容是物資清查數(shù)據(jù)加密,不但要具備安全高效的加密、解密方法,還必須確保操作簡單,并實(shí)現(xiàn)多種軟硬件的兼容。其中對(duì)安全性能的要點(diǎn)分為:協(xié)議安全:主要包括身份認(rèn)證、可用性等。物資清查數(shù)據(jù)儲(chǔ)存系統(tǒng)經(jīng)常遭到不信任與不安全的威脅,在該情況下確保用戶安全利益不受到侵犯是系統(tǒng)的基礎(chǔ);數(shù)據(jù)安全:包括物資清查數(shù)據(jù)儲(chǔ)存過程中敏感信息與數(shù)據(jù)保護(hù),即為物資清查數(shù)據(jù)的機(jī)密性與完整性。該方面研究大多集中在物資清查數(shù)據(jù)加密、簽名[9-10]等方面。這些技術(shù)需要耗費(fèi)儲(chǔ)存系統(tǒng)大量資源與時(shí)間;流程安全:該儲(chǔ)存系統(tǒng)中的重點(diǎn)問題是怎樣確保物資清查數(shù)據(jù)儲(chǔ)存過程的安全性。當(dāng)前最有效的解決方法是簽名,將簽名當(dāng)作文件創(chuàng)始者與修改者之間的協(xié)議,解決物資清查數(shù)據(jù)儲(chǔ)存流程安全問題。
結(jié)合上述系統(tǒng)設(shè)計(jì)要求,設(shè)計(jì)如圖2所示的系統(tǒng)整體架構(gòu)。并根據(jù)物資清查數(shù)據(jù)儲(chǔ)存安全機(jī)制模型分別設(shè)計(jì)系統(tǒng)硬件與軟件結(jié)構(gòu)。
圖2 安全儲(chǔ)存系統(tǒng)整體架構(gòu)圖
2.4.1 硬件部分
(1)核心磁盤驅(qū)動(dòng)架構(gòu)
在此系統(tǒng)中,存儲(chǔ)設(shè)備分為微端口、驅(qū)動(dòng)以及上層類驅(qū)動(dòng)[11]。其中微端口主要和硬件設(shè)備打交道;類驅(qū)動(dòng)則需利用下層微端口完成具體功能。
磁盤驅(qū)動(dòng)確定物理媒介時(shí),形成磁盤設(shè)備目標(biāo)。每個(gè)磁盤均對(duì)應(yīng)一個(gè)物理磁盤。由于磁盤比文件系統(tǒng)更加容易操作,因此驅(qū)動(dòng)更加方便設(shè)計(jì)與編寫。
該系統(tǒng)利用磁盤驅(qū)動(dòng)處理,其驅(qū)動(dòng)程序名稱是Secure Disk.sys。
(2)核心芯片選取
該系統(tǒng)的儲(chǔ)存介質(zhì)利用NAND FLASH芯片,其外部接口速度是50MHz,接口寬度是九位。任意一個(gè)芯片包括8345個(gè)數(shù)據(jù)塊,每塊包含73頁,其中73Bytes屬于空閑區(qū),儲(chǔ)存容量是16Gbit。其將頁作為單位做讀寫操作,將塊作為單位進(jìn)行刪除,硬件數(shù)據(jù)保護(hù)功能良好。
2.4.2 軟件部分
因?yàn)槲镔Y清查數(shù)據(jù)安全儲(chǔ)存系統(tǒng)的重要目的是避免存在敏感數(shù)據(jù)的業(yè)務(wù)參與者之間出現(xiàn)欺詐,因此在軟件設(shè)計(jì)過程中借助一個(gè)不可信的第三方實(shí)現(xiàn)。
在區(qū)塊鏈技術(shù)基礎(chǔ)上第二使用者C在第一使用者D處獲得任務(wù)后安全儲(chǔ)存系統(tǒng)軟件具體流程為:(1)第一個(gè)使用者D將ES經(jīng)過第三方M發(fā)送到C,第三方對(duì)其保存;(2)C使用D的公鑰KBp對(duì)第一用戶的簽名進(jìn)行驗(yàn)證獲得EKB(m)與H(m);(3)第一用戶將EKAp(KBp)經(jīng)過第三方發(fā)送給C,第三方對(duì)EKAp(KBp)進(jìn)行保存;(4)第一用戶對(duì)EKB進(jìn)行解密處理,獲得m′,運(yùn)算H(m′),若H(m′)=H(m),得出第一用戶m′=m,此時(shí)第一用戶獲得正確的事件m;(5)第一使用者將S=signKAPKAB(p)(C)發(fā)送到第二使用者處,第三方對(duì)其保存;(6)第一使用者將S=signKAPKAB(p)(C)發(fā)送到主管處進(jìn)行驗(yàn)證,如果是合法的即可獲得事件處理權(quán)限;(7)主管對(duì)接收的消息進(jìn)行驗(yàn)證,獲取第一使用者賬號(hào)與密碼,若屬于D的合法賬戶則付款給C。
為驗(yàn)證所設(shè)計(jì)的系統(tǒng)性能,仿真實(shí)驗(yàn)在配置是AMD Sempron(tm)processor3000+1.60GHz,運(yùn)行內(nèi)存是8GB,操作系統(tǒng)是Windows10 的計(jì)算機(jī)上進(jìn)行。將文獻(xiàn)[1]、文獻(xiàn)[2]方法當(dāng)作對(duì)比目標(biāo)。圖3~5分別表示利用不同方法所設(shè)計(jì)的系統(tǒng)在數(shù)據(jù)儲(chǔ)存完整性、CPU 占用率以及系統(tǒng)擁塞率中的對(duì)比結(jié)果。
圖3 儲(chǔ)存完整性對(duì)比圖
圖4 CPU占用率對(duì)比圖
圖5 系統(tǒng)擁塞情況對(duì)比圖
通過分析以上對(duì)比結(jié)果可以得出:在儲(chǔ)存數(shù)據(jù)大小相同時(shí),所提方法數(shù)據(jù)儲(chǔ)存完整性最高,這是因?yàn)閰^(qū)塊鏈技術(shù)具有良好的數(shù)據(jù)恢復(fù)能力,即使在儲(chǔ)存過程中出現(xiàn)數(shù)據(jù)丟失現(xiàn)象也能實(shí)現(xiàn)初始數(shù)據(jù)的追溯;此外,隨著儲(chǔ)存數(shù)據(jù)的增多,其它兩種方法CPU占用率明顯提高,而本文系統(tǒng)CPU變化率并不明顯,主要是本文在對(duì)硬件設(shè)計(jì)過程中選取的芯片容量較大,符合海量數(shù)據(jù)安全儲(chǔ)存要求;最重要的是所提系統(tǒng)擁塞率較低,這表明此系統(tǒng)可以實(shí)現(xiàn)數(shù)據(jù)分離儲(chǔ)存,這種儲(chǔ)存形式即使合法,用戶也不能直接接觸到物資清查數(shù)據(jù),有效解決了企業(yè)內(nèi)部員工泄密問題,只有有效防范系統(tǒng)攻擊才能確保擁塞率較低,從而保證數(shù)據(jù)的機(jī)密性。
物資清查數(shù)據(jù)安全儲(chǔ)存屬于信息系統(tǒng)建設(shè)領(lǐng)域的重要環(huán)節(jié),為避免人員泄密與惡意攻擊帶來的安全隱患,本文構(gòu)建區(qū)塊鏈技術(shù)設(shè)計(jì)物資清查數(shù)據(jù)安全存儲(chǔ)系統(tǒng)。仿真實(shí)驗(yàn)驗(yàn)證了該系統(tǒng)具有儲(chǔ)存完整性高、CPU 占用率低且有效保證了數(shù)據(jù)安全的性能。因?yàn)闂l件有限,此系統(tǒng)仿真實(shí)驗(yàn)只能在虛擬機(jī)環(huán)境下進(jìn)行,并沒有應(yīng)用在真實(shí)場景中,因此必然存在一些實(shí)際問題需要解決,不論是系統(tǒng)整體架構(gòu)還是細(xì)節(jié)功能,都有一定提升空間。