趙海濤,楊偉超,尹廷鈞,孫嘉琦
(戰(zhàn)略支援部隊信息工程大學(xué)教研保障中心圖書館,河南鄭州,450001)
伴隨著區(qū)塊鏈技術(shù)的發(fā)展和完善,區(qū)塊鏈儲存的優(yōu)越性和特點也已經(jīng)開始引起了全球社會各方面的重視。由于區(qū)塊鏈的網(wǎng)絡(luò)系統(tǒng)是由各種各樣的對等節(jié)點所構(gòu)成的,同時每個節(jié)點之間采用一致性共識計算,來共同保障了互聯(lián)網(wǎng)的穩(wěn)定性和安全性。與此同時,區(qū)塊鏈儲存所具備的安全性高、業(yè)務(wù)可用性高、成本低等優(yōu)勢,也能夠很好地解決安全性問題以及保障了客戶信息安全等問題。
分布式存儲也就是將數(shù)據(jù)文件存在于不同集群的服務(wù)器上,它們通常具有相當(dāng)高的寫入效率,而組成這種集群的服務(wù)器往往是由某些成本相當(dāng)?shù)土纳逃糜布鶚?gòu)成的??蛻裟軌蚴褂孟到y(tǒng)中所提供的接口,非??旖莸膶崿F(xiàn)訪問。圖1是分布式數(shù)據(jù)庫結(jié)構(gòu)示意圖。
圖1 分布式存儲構(gòu)架圖
區(qū)塊鏈技術(shù)屬于一種分布式的記賬技術(shù),其通過采用一系列的密碼算法等,實現(xiàn)不同節(jié)點的信息傳遞與同步復(fù)制,從而將單獨的消息整合成為一個完整的體系。這種系統(tǒng)能夠保持?jǐn)?shù)據(jù)的一致,有效地保障了數(shù)據(jù)的安全。此類技術(shù)的特點是,一致性、不變性、典型性和去中心化。這些特點共同建立了值得用戶信賴的完整系統(tǒng),尤其是在區(qū)塊鏈體系中的數(shù)據(jù)審核的流程中,其能夠做到對用戶的公開與透明。其獨特的優(yōu)勢在現(xiàn)代工商業(yè)以及各項事業(yè)中發(fā)揮著關(guān)鍵的作用,為數(shù)據(jù)整理技術(shù)做出了重要的貢獻(xiàn)。
區(qū)塊鏈交易的工作機理與過程,可分成二個部分來認(rèn)識:交易與區(qū)塊。區(qū)塊鏈的基本工作機理,如圖2顯示。
圖2 區(qū)塊鏈的工作原理
步驟1:交易生成
目前的所有者,可以將私鑰密碼作為基礎(chǔ),設(shè)置上一個交易,和下一位持有者的數(shù)字簽名相同,并將數(shù)字簽名追加至本次交易尾部。在信息重新交換完成之后,消息就在整個區(qū)塊鏈網(wǎng)絡(luò)中完成傳遞,并以此方法傳送信息給其他的參與節(jié)點。
步驟2:交易傳播
當(dāng)此時的系統(tǒng)所有者將上述交換名單傳播到整個系統(tǒng)中去時,系統(tǒng)就開始將還未確立交換哈希值的節(jié)點就會匯集到一個區(qū)域板塊上。其中,能夠最先完成POW的節(jié)點,將會把自己所在的區(qū)域板塊傳播到其他的節(jié)點上。
步驟3:共識機制
共識管理機制通常有POw、PBFT等。例如,比特幣的運行機制就是將POW作為共識基礎(chǔ)的。位于此系統(tǒng)的所有節(jié)點都可以通過競爭同一道數(shù)學(xué)題來進(jìn)行快速計算,最先得出結(jié)果的區(qū)域板塊將會獲得創(chuàng)建新板塊的權(quán)利,并與其進(jìn)行交易。
步驟4:全節(jié)點驗證
如果某一節(jié)點找到了滿足其要求的數(shù)字。其就會將其所在區(qū)域的所有交易記錄傳播到整個網(wǎng)絡(luò)系統(tǒng)中去,此時,位于全網(wǎng)的其他節(jié)點就會對其進(jìn)行審查,以確定該交易的有效與否,確定其正確并存在有效簽名后,則接受該區(qū)塊被正式保存并不能被篡改。
步驟5:區(qū)塊鏈記錄
全網(wǎng)絡(luò)節(jié)點對此區(qū)塊所完成的結(jié)果進(jìn)行評分,如果其結(jié)果正確,它將在該合法區(qū)塊后,再競爭下個區(qū)塊,從而成為下一塊能夠合理記賬的新區(qū)塊。為時刻維持系統(tǒng)的穩(wěn)定,整個系統(tǒng)的算力將會隨著區(qū)塊建設(shè)的時間進(jìn)行不斷的改變,大約每隔十分鐘就會產(chǎn)生一個新的區(qū)塊。
1.4.1 哈希算法
哈希算法是把隨機長度的二進(jìn)制值串映射為固定寬度的二進(jìn)制值事,產(chǎn)生這種映射的基本規(guī)則便是哈希算法,而經(jīng)過對原始資料映射以后得出的二進(jìn)制值串,便是哈希值散列值。哈希算法的工作方法繁多,在海量數(shù)據(jù)庫中一般是對文檔名和路徑方法執(zhí)行哈希,以確定各種數(shù)據(jù)信息的正確分布略。一種最優(yōu)秀的哈希算法,必須符合:
(1)符合單向推導(dǎo)機制,不能反向推導(dǎo)出原始數(shù)值。
(2)對輸入數(shù)值特別靈敏,哪怕原來數(shù)據(jù)結(jié)果只改變了1個Bit,最終結(jié)果得出的哈希值也大不相同。
(3)散列沖突的概率要小,對不一樣的原始數(shù)據(jù)結(jié)果,哈希值相似的概率也相當(dāng)小。
(4)哈希算法的執(zhí)行效果必須盡可能有效,即使針對較長的文本,也必須要迅速地求出哈希值
圖3 算法圖例
1.4.2 貪心算法
貪心算法,也可稱為貪婪算法。它指的是對處理一個問題時,選取了一種在當(dāng)前看來是最佳的方法。換句話說,只求在局部上最佳的解決措施,而不顧及在總體上是否是最佳的處理措施。因此貪心算法并不會對所有的問題都有一種總體上的最好解決辦法。
1.4.3 加密算法
區(qū)塊鏈技術(shù)要求將Hash算法與非對稱加密算法等多個加密算法并存,以實現(xiàn)數(shù)據(jù)保密和信息安全保障。由于各個的加密算法特性都有所不同,因此單個計算很難適應(yīng)在網(wǎng)絡(luò)中不同應(yīng)用的需要。目前,國際上最主要的Hash算法為MD5和SHA。此外,在進(jìn)行不對稱加密時其會自動生成二把鑰匙,分別進(jìn)行了數(shù)據(jù)加密和數(shù)據(jù)解密:公鑰對外開放,對數(shù)據(jù)進(jìn)行保密:而私鑰進(jìn)行破解,則由用戶自行保存,不對外發(fā)布。最常見的非對稱加密算法有ECC和RSA橢圓曲線計算。
總而言之,采用區(qū)塊鏈信息技術(shù)主要的優(yōu)點便是可以在信息系統(tǒng)當(dāng)中實施某些刺激舉措,進(jìn)而使每個核心針對區(qū)塊信息形成更高效的共識。以區(qū)塊鏈信息技術(shù)為基礎(chǔ)的動態(tài)數(shù)據(jù)保存與管理系統(tǒng)表明,每個動態(tài)信息塊以及對它們的任何處理都被永久性地記錄在區(qū)塊鏈數(shù)據(jù)塊中,并用于授予用戶。與此同時,在動態(tài)信息塊中的所有信息都會被存儲到數(shù)據(jù)庫中的,不同組成部分的計算機節(jié)點上,并以動態(tài)數(shù)據(jù)塊存儲系統(tǒng)和分布式數(shù)據(jù)庫的形式存在。就像是從其他健康節(jié)點中保留下來的健康數(shù)據(jù)庫一樣,就算各個健康節(jié)點的動態(tài)信息塊都被銷毀了,也并沒有影響整個健康數(shù)據(jù)庫系統(tǒng)的正常工作。
在金融服務(wù)信息系統(tǒng)、企業(yè)管理系統(tǒng)等許多應(yīng)用領(lǐng)域中實施的信息技術(shù),由于能夠很高效地產(chǎn)生大量包含二個或多個目標(biāo)實物的數(shù)據(jù)交易。所以,產(chǎn)生此類數(shù)據(jù)的信息系統(tǒng)也叫做實例系統(tǒng)。而這種數(shù)據(jù)一般都會根據(jù)具體的行業(yè)編碼標(biāo)準(zhǔn)加以編號。不同的信息系統(tǒng)應(yīng)用中對數(shù)據(jù)的安全性存儲要求也有所不同。
與此同時,此類數(shù)據(jù)不但必須連接并描述其目標(biāo)實物以保障數(shù)據(jù)的安全性,還必須說明保護所持有的資產(chǎn)的范圍,甚至更關(guān)鍵的是,必須小心避免其在保存與傳送過程中的弄虛作假或操縱。其次,在企業(yè)安全體系中,必須記載下所有實體的動態(tài)行為,并保證這個歷史數(shù)據(jù)不能用來支撐請求篡改、變造頁面管理應(yīng)用時的安全性,尤其是在企業(yè)應(yīng)用,如消息的分析與展示,期刊的使用數(shù)據(jù)以及調(diào)查非法交易。
目前,所有的出入系統(tǒng)、用戶訪問數(shù)據(jù)庫、信息等傳統(tǒng)的安全存儲系統(tǒng),都無法防止的會發(fā)生安全危險,更無法從根本上解決動態(tài)數(shù)據(jù)保存的安全動態(tài)??傊?,其主要問題出現(xiàn)在如下二方面:首先,無法保證數(shù)據(jù)驗證的正確性,從而無法完全避免信息被人偽造,篡改;第二,無法很好的監(jiān)控動態(tài)數(shù)據(jù)的歷史運行,從而缺乏數(shù)據(jù)恢復(fù)能力。
廣泛應(yīng)用于主從管理模式的分布式系統(tǒng),主要是依靠對節(jié)點工作狀態(tài)消息的獲取、對客戶端所發(fā)出的文檔處理過程的反饋與接收,以及文檔系統(tǒng)元數(shù)據(jù)的管理工作和保存來完成進(jìn)行工作的。由于單一化的主節(jié)點模塊會導(dǎo)致整個系統(tǒng)工作出現(xiàn)瓶頸,還可以導(dǎo)致單點控制功能失靈,進(jìn)而導(dǎo)致系統(tǒng)的容錯性下降。所以,要求同時支持多主節(jié)點的分布式文件系統(tǒng),將單一主節(jié)點的載荷分?jǐn)傊炼鄠€節(jié)點中,確保在某個節(jié)點失效之后,不會對主節(jié)點的工作造成影響。此時,就可以采用P2P技術(shù),將整個數(shù)據(jù)系統(tǒng)互聯(lián)形成分布式網(wǎng)絡(luò)的集群或多個主節(jié)點。實現(xiàn)應(yīng)用系統(tǒng)主節(jié)點的本地連接與主節(jié)點集群的公開透明。
分布式云存儲系統(tǒng)必須同時具有預(yù)警、管理和監(jiān)控等功能,才能夠算出上的成熟程度。它和傳統(tǒng)意義上的存儲系統(tǒng)是不相同的,由于分布式數(shù)據(jù)管理系統(tǒng)必須對集群計算機當(dāng)中各個節(jié)點的狀態(tài)數(shù)據(jù)信息加以監(jiān)控。當(dāng)中,狀態(tài)消息通常有節(jié)點消息和主控消息這兩類。節(jié)點消息通常主要有關(guān)于每一個內(nèi)存節(jié)點的應(yīng)用狀況、設(shè)備容量配額、應(yīng)用設(shè)備容量、操作系統(tǒng)的總?cè)萘康?,利用?jié)點消息還可以檢查分布式文件系統(tǒng)的工作狀況。而服務(wù)器消息一般有分布式文件系統(tǒng)主控設(shè)備的業(yè)務(wù)、進(jìn)度、網(wǎng)絡(luò)系統(tǒng)、硬盤、存儲器、CPU、工作狀況等,還可輔助性的檢測+機的負(fù)載狀況。
為了提高大數(shù)據(jù)文件的存儲能力,人們可以在分布式網(wǎng)絡(luò)結(jié)構(gòu)中云存儲底層或分布式操作系統(tǒng)上,以文件系統(tǒng)的形態(tài)存儲大量需要管理和存儲的大數(shù)據(jù),進(jìn)而在本地操作系統(tǒng)中建立虛擬存儲集群數(shù)據(jù)節(jié)點,這便是分布式文件系統(tǒng)的基本工作原理。
主從結(jié)合的分布式云存儲體系,其分布式文件管理系統(tǒng)是由從節(jié)點與主節(jié)點所組成的,并可以直接將云端儲存業(yè)務(wù)提交給使用者。通常,用戶對云存儲業(yè)務(wù)的方向都是通過與用戶網(wǎng)絡(luò)連接來完成的。最易于發(fā)生問題的服務(wù)對象包括了服務(wù)器端、主節(jié)點、從節(jié)點,也包括了連接這三項服務(wù)對象的網(wǎng)絡(luò)設(shè)備。
對于分布式云儲存信息系統(tǒng)災(zāi)難修復(fù)關(guān)鍵技術(shù)的分析,還需要關(guān)注以下方面。由于分布式存儲系統(tǒng)的基石是互聯(lián)網(wǎng)設(shè)施,因此必須把高質(zhì)量的互聯(lián)網(wǎng)服務(wù)供應(yīng)于分布式存儲系統(tǒng)。另外,大多數(shù)人們都會處于某個共同的局域網(wǎng)下,這樣的網(wǎng)絡(luò)環(huán)境對于云存儲系統(tǒng)來說就十分安全了,也不會輕易出錯。分布式存儲網(wǎng)絡(luò)的網(wǎng)絡(luò)檢測一般需要依靠對心跳線以及系統(tǒng)的更新狀態(tài)來決定,此時,節(jié)點是否出錯就可以通過節(jié)點有無反應(yīng)來進(jìn)行判斷。其次,節(jié)點的錯誤還會分為主節(jié)點出錯和從節(jié)點出錯,采用副本冗余策略的從節(jié)點,也能夠在多個從節(jié)點出錯的情況下,保持主節(jié)點的正常運行。其次,由于從節(jié)點的所有狀態(tài)都在一定程度上由主節(jié)點進(jìn)行接收,因此,通過對主節(jié)點的觀察,我們也能夠有效收集到從節(jié)點出錯的位置,從而更好地實施從節(jié)點數(shù)據(jù)的恢復(fù)措施。
以上兩種技術(shù)的結(jié)合,充分發(fā)揮了二者的優(yōu)越特點,是現(xiàn)代計算機技術(shù)的全新使用模式,有效解決了多點間互相信賴和信息數(shù)據(jù)安全的實際問題,在智能工地、醫(yī)學(xué)影像、法院卷宗政務(wù)憑證等領(lǐng)域方面,均具有巨大的應(yīng)用前景。