文獻(xiàn)標(biāo)識碼: A
DOI:10.16157/j.issn.0258-7998.190112
中文引用格式: 張金龍,,趙德政,韓慶敏. 一種基于區(qū)塊鏈技術(shù)的工業(yè)數(shù)據(jù)安全性保護(hù)方法[J].電子技術(shù)應(yīng)用,,2019,,45(7):85-88.
英文引用格式: Zhang Jinlong,Zhao Dezheng,,Han Qingmin. A method to protect industrial data based on blockchain technology[J]. Application of Electronic Technique,,2019,45(7):85-88.
0 引言
工業(yè)作為國家經(jīng)濟(jì)支柱,在互聯(lián)網(wǎng)的浪潮下不斷融合創(chuàng)新,,隨著大數(shù)據(jù),、云計算等新興技術(shù)的興起,工業(yè)大數(shù)據(jù)及應(yīng)用將不斷促進(jìn)工業(yè)生產(chǎn)應(yīng)用更加自動化,、智能化,。德國于2013年正式提出了工業(yè)4.0戰(zhàn)略,在全世界掀起了一股向智能制造轉(zhuǎn)型升級的浪潮,;美國也提出先進(jìn)制造業(yè)戰(zhàn)略及“大數(shù)據(jù)研發(fā)計劃”[1],,欲占領(lǐng)工業(yè)制高點(diǎn),;中國在2015年先后提出《中國制造2025》規(guī)劃及《促進(jìn)大數(shù)據(jù)發(fā)展行動綱要》,從頂端規(guī)劃安排大數(shù)據(jù)的發(fā)展,。這些國家戰(zhàn)略的聚焦點(diǎn)就是把互聯(lián)網(wǎng)技術(shù)和制造技術(shù)能夠更緊密地結(jié)合起來,,突出工業(yè)大數(shù)據(jù)的重要性。
然而目前我國工業(yè)大數(shù)據(jù)發(fā)展仍存在一些安全性的問題,。由于工業(yè)大數(shù)據(jù)來源于各個工業(yè)現(xiàn)場,,環(huán)境復(fù)雜規(guī)模龐大,在數(shù)據(jù)采集的過程中存在較大的困難,,且難以保證數(shù)據(jù)安全,,主要為工業(yè)現(xiàn)場設(shè)備種類多、數(shù)量大,、接口復(fù)雜,,各種協(xié)議不能互相兼容,國外設(shè)備不開放接口等原因造成不能利用一個統(tǒng)一的方式實現(xiàn)數(shù)據(jù)采集的目的,,同時也加大了對數(shù)據(jù)安全性保護(hù)的難度,,增大了安全性風(fēng)險。其次在各個工廠采集的數(shù)據(jù)及針對同一設(shè)備在不同時間采集的數(shù)據(jù)較為孤立,,難以相互關(guān)聯(lián),,導(dǎo)致在數(shù)據(jù)分析過程中不能形成針對該產(chǎn)品全生命周期的數(shù)據(jù)關(guān)聯(lián),難以對產(chǎn)品后續(xù)研發(fā)提供支持,。
更為嚴(yán)重的安全問題則是在數(shù)據(jù)存儲,、傳輸以及使用過程中存在的數(shù)據(jù)泄露及被篡改的風(fēng)險。傳統(tǒng)的數(shù)據(jù)主要存儲在中心化的服務(wù)器上,,其中一些數(shù)據(jù)不免涉及相關(guān)核心技術(shù),,若發(fā)生數(shù)據(jù)泄露等事故,將對企業(yè)造成重大資產(chǎn)損失,。
針對以上問題,,本文提出了一種基于區(qū)塊鏈技術(shù)的去中心化工業(yè)大數(shù)據(jù)安全保護(hù)方法,該方案從數(shù)據(jù)采集源頭開始,,利用密碼學(xué)、IPFS等技術(shù)將數(shù)據(jù)保護(hù)起來,,保證數(shù)據(jù)來源真實可靠,,避免因網(wǎng)絡(luò)攻擊導(dǎo)致數(shù)據(jù)泄露、因管理不周導(dǎo)致數(shù)據(jù)被篡改等風(fēng)險,,并將每一機(jī)器從上線到運(yùn)轉(zhuǎn),、維修、報廢等過程數(shù)據(jù)關(guān)聯(lián)起來,,存儲至區(qū)塊鏈中,,具備極高的安全性,。
1 系統(tǒng)總體架構(gòu)
2015年,趙赫等基于其課題組采樣機(jī)器人提出一種傳感數(shù)據(jù)真實性保障方法[2],,如圖1所示,。
該方法利用區(qū)塊鏈技術(shù)的不可篡改性,保證了數(shù)據(jù)從采集源頭的真實性,,安全性高,,成本低廉,是利用區(qū)塊鏈技術(shù)保護(hù)數(shù)據(jù)真實性的一種有效方法,。但該方法也有一定的局限性,,如采樣機(jī)器人為其課題組特定機(jī)器人,相關(guān)接口唯一,,不具備可推廣性,;數(shù)據(jù)庫為傳統(tǒng)服務(wù)器架構(gòu),且存儲數(shù)據(jù)為明文存儲,,仍然存在被攻擊及數(shù)據(jù)泄露風(fēng)險,;保障數(shù)據(jù)真實性的本質(zhì)為將數(shù)據(jù)的哈希值與區(qū)塊鏈中存儲的哈希值進(jìn)行比對,根據(jù)比對結(jié)果判斷數(shù)據(jù)是否為真實數(shù)據(jù),,但并不能防止存儲在數(shù)據(jù)庫中的數(shù)據(jù)被惡意篡改等,。
本文基于以上問題,在其系統(tǒng)上改進(jìn)了相關(guān)技術(shù)并提出了數(shù)據(jù)安全性更高,、適用性更強(qiáng)的系統(tǒng),,如圖2所示。數(shù)據(jù)處理結(jié)構(gòu)主要由傳感器,、采集中間件,、存儲中間件、處理中間件和安全管理中間件等構(gòu)成[3],,相應(yīng)本系統(tǒng)總體架構(gòu)主要由以下五部分構(gòu)成,,分別為工廠設(shè)備、數(shù)據(jù)處理模塊,、IPFS,、上層應(yīng)用及區(qū)塊鏈。
(1)工廠設(shè)備,。在本系統(tǒng)中,,通過工廠中的設(shè)備進(jìn)行數(shù)據(jù)采集工作,在采集到數(shù)據(jù)之后對數(shù)據(jù)進(jìn)行封裝并發(fā)給數(shù)據(jù)處理模塊,。本套系統(tǒng)支持大部分的設(shè)備接口,,既能兼容新出廠的設(shè)備,也能對現(xiàn)有設(shè)備進(jìn)行改造以適應(yīng)該系統(tǒng),。
(2)數(shù)據(jù)采集模塊,。首先接收設(shè)備采集的數(shù)據(jù),,將數(shù)據(jù)簽名后存儲至IPFS,IPFS會返回存儲的數(shù)據(jù)索引哈希,,之后將該索引哈希用系統(tǒng)公鑰加密后存到區(qū)塊鏈上,。
(3)存儲模塊IPFS。IPFS可對大量數(shù)據(jù)進(jìn)行去中心化的分布式存儲,,與區(qū)塊鏈具有非常高的契合性,。在這個系統(tǒng)里接收來自數(shù)據(jù)處理模塊的數(shù)據(jù),并存儲在IPFS的節(jié)點(diǎn)上,。后續(xù)接受上層應(yīng)用服務(wù)的數(shù)據(jù)調(diào)用,。
(4)區(qū)塊鏈。主要功能為記錄儀器設(shè)備各個階段的數(shù)據(jù)索引哈希,,并將其相互關(guān)聯(lián),,形成數(shù)據(jù)聯(lián)通。
(5)上層服務(wù)及應(yīng)用,。從IPFS調(diào)用需要的數(shù)據(jù),,進(jìn)行處理及展示等功能,在調(diào)到數(shù)據(jù)之前,,首先用本系統(tǒng)的私鑰對數(shù)據(jù)索引進(jìn)行解密,,解密后會得到數(shù)據(jù)索引哈希,根據(jù)數(shù)據(jù)索引哈??稍贗PFS系統(tǒng)中得到數(shù)據(jù)明文及用設(shè)備私鑰進(jìn)行的簽名,,通過簽名可驗證數(shù)據(jù)來源及真?zhèn)涡裕⑼ㄟ^區(qū)塊鏈得到數(shù)據(jù)時間戳,,確定數(shù)據(jù)采集時間,。
2 技術(shù)原理分析
本節(jié)主要分析系統(tǒng)中各主要部分技術(shù)實現(xiàn)原理。
2.1 工廠設(shè)備采集數(shù)據(jù)模塊
對于工廠中的設(shè)備,,為實現(xiàn)通過數(shù)據(jù)處理模塊對數(shù)據(jù)進(jìn)行簽名等操作,,為每臺設(shè)備分配一對公私鑰,其中私鑰由系統(tǒng)隨機(jī)產(chǎn)生,,公鑰為私鑰通過橢圓曲線算法計算所得,,之后經(jīng)過Hash160及Base58編碼成為機(jī)器公鑰地址。由于數(shù)據(jù)處理模塊直接與各種機(jī)器設(shè)備相連,,并具有安全保密設(shè)置,,可保證在該過程中數(shù)據(jù)安全不被篡改。
2.2 數(shù)據(jù)處理模塊
數(shù)據(jù)處理模塊由OPC UA改造升級而來,,通過升級增加處理數(shù)據(jù)的功能,改造后的功能為可對工廠中設(shè)備上傳的數(shù)據(jù)進(jìn)行封裝并利用該設(shè)備私鑰對數(shù)據(jù)進(jìn)行簽名,,然后將數(shù)據(jù)明文和數(shù)據(jù)簽名一同存儲至IPFS,,IPFS返回結(jié)果為該數(shù)據(jù)在IPFS系統(tǒng)中索引哈希,,利用系統(tǒng)公鑰對將該索引哈希加密,之后,,系統(tǒng)會發(fā)送一筆上鏈信息,,包含該索引哈希,實現(xiàn)數(shù)據(jù)上鏈,。
2.3 IPFS技術(shù)原理
IPFS(Interplanetary File System)是一個點(diǎn)對點(diǎn)的超媒體協(xié)議,。
當(dāng)文件被添加到IPFS節(jié)點(diǎn)后,節(jié)點(diǎn)會返回這個文件的索引哈希值,,當(dāng)下一步向IPFS網(wǎng)絡(luò)詢問哈希的時候,,它通過一個分布式哈希表,可以快速地找到擁有數(shù)據(jù)的節(jié)點(diǎn),,從而檢索到該數(shù)據(jù),。
工業(yè)環(huán)境中對數(shù)據(jù)存儲的要求為:數(shù)據(jù)量大、來源廣,、速度快,、存儲完整、具備可擴(kuò)展性[4],。IPFS的分布式存儲設(shè)計使得每一片數(shù)據(jù)都是一份數(shù)據(jù)的一部分,,只有將所有分片組合到一起才是一份完整的數(shù)據(jù),任何一個分片都不能得到數(shù)據(jù)的明文,,即使其中一個節(jié)點(diǎn)的數(shù)據(jù)泄露,,也不會對數(shù)據(jù)造成損失,且較中心化存儲下載速度更快,。這些特性使得IPFS較為適合作為工業(yè)數(shù)據(jù)的存儲容器,。
2.4 區(qū)塊鏈技術(shù)原理
區(qū)塊鏈技術(shù)是一種基于密碼學(xué)算法的去中心化的數(shù)據(jù)庫技術(shù),這個概念最早出現(xiàn)在2008 年中本聰(NAKAMOTO S)的《Bitcoin:A Peer-to-Peer Electronic Cash System》論文中[5],。
區(qū)塊鏈技術(shù)不僅可以為金融交易建立信任,,還可以用于記錄所有有價值的東西[6],如由于其不可篡改等特性就為數(shù)據(jù)安全提供一種新的思路[7],。
區(qū)塊鏈?zhǔn)且环N鏈?zhǔn)浇Y(jié)構(gòu),,由各個區(qū)塊連接而成,如圖3所示,,每個區(qū)塊包括區(qū)塊頭和區(qū)塊體,,區(qū)塊頭中的Pre_hash參數(shù)為前一區(qū)塊哈希,該參數(shù)使得各個區(qū)塊首尾相連形成鏈狀結(jié)構(gòu),。所有的鏈上信息都包含著區(qū)塊體中,,其中每筆交易可附帶備注信息,本系統(tǒng)中將數(shù)據(jù)索引哈希存儲至區(qū)塊鏈即為通過將其放在備注信息中并發(fā)送一筆交易實現(xiàn),如圖4所示,。該筆交易被礦工打包放入?yún)^(qū)塊中即可實現(xiàn)數(shù)據(jù)上鏈,,全網(wǎng)公開透明,不可篡改,,可追溯查詢,。
區(qū)塊鏈具備如下特性:
(1)去中心化。無需第三方進(jìn)行維護(hù)管理,,完全由網(wǎng)絡(luò)中節(jié)點(diǎn)基于激勵機(jī)制進(jìn)行自治,。
(2)公開透明。區(qū)塊鏈中數(shù)據(jù)面向所有人開放,,任何人都可以進(jìn)行查詢使用,。
(3)不可篡改。由于每個節(jié)點(diǎn)都保存一分區(qū)塊鏈賬本,,任何一個節(jié)點(diǎn)都不可以單方面修改其中數(shù)據(jù),,保證了其不可篡改性。
(4)安全可靠,。任何寫入?yún)^(qū)塊鏈的請求都需進(jìn)行一定運(yùn)算并滿足一定要求,,同時意味著,要想惡意篡改其中數(shù)據(jù)要掌握至少51%的算力,,使其達(dá)到安全性保證,。
基于以上特性,在數(shù)據(jù)安全保護(hù)領(lǐng)域,,區(qū)塊鏈可解決很多數(shù)據(jù)安全及隱私保護(hù)的問題,,為工業(yè)大數(shù)據(jù)發(fā)展中存在的安全問題提供了一種新的解決方案。
3 系統(tǒng)工作步驟
上一節(jié)主要介紹了每一部分的技術(shù)原理,,本節(jié)主要介紹系統(tǒng)總體工作流程,,圖5為工作流程示意圖。
3.1 部署上線環(huán)節(jié)
在系統(tǒng)及各個機(jī)器上前完成設(shè)備和系統(tǒng)的初始化,,主要是為每一個機(jī)器及系統(tǒng)分配一對公私鑰地址,,然后由系統(tǒng)地址向機(jī)器地址發(fā)送一筆微小交易,并備注該機(jī)器的設(shè)備信息,,完成初始化過程,。該筆交易將記錄設(shè)備的出廠時間、公鑰地址,、系統(tǒng)地址,、詳細(xì)參數(shù)等信息,并將其上鏈,,形成全網(wǎng)唯一的索引標(biāo)識符,,為之后設(shè)備各個階段(如設(shè)備數(shù)據(jù)采集,、設(shè)備維護(hù)、設(shè)備報廢等過程)提供前期準(zhǔn)備,,使得各個階段的數(shù)據(jù)上鏈并通過設(shè)備地址形成相互關(guān)聯(lián),,全網(wǎng)唯一、不可篡改,,便于對歷史數(shù)據(jù)的查詢及驗偽。
3.2 數(shù)據(jù)采集存儲環(huán)節(jié)
(1)采集并存儲數(shù)據(jù),。工廠中的機(jī)器會實時采集運(yùn)行中的數(shù)據(jù),,并上傳給數(shù)據(jù)處理模塊。數(shù)據(jù)處理模塊收到數(shù)據(jù)后會利用該機(jī)器的私鑰對數(shù)據(jù)進(jìn)行簽名,,之后將數(shù)據(jù)簽名和采集到的數(shù)據(jù)存儲至IPFS,。IPFS作為分布式存儲天生具有抵抗DDOS攻擊的特性,通過采用碎片化冗余存儲的方式,,避免數(shù)據(jù)泄露和丟失的風(fēng)險,。
存儲結(jié)果為IPFS系統(tǒng)中的數(shù)據(jù)索引哈希,通過該索引哈??稍贗PFS系統(tǒng)中取得存儲數(shù)據(jù),,由于哈希具有唯一性及不可逆性,任何沒有索引哈希的情況下都不能獲取到數(shù)據(jù)明文,,保證了數(shù)據(jù)安全性,。
(2)將數(shù)據(jù)索引哈希存儲至區(qū)塊鏈。由于在IPFS系統(tǒng)中,,只要擁有數(shù)據(jù)索引哈希就掌握了數(shù)據(jù)的控制權(quán),,且區(qū)塊鏈又是公開透明的,因此將數(shù)據(jù)索引哈希存至區(qū)塊鏈之前先用系統(tǒng)的公鑰對數(shù)據(jù)索引哈希進(jìn)行加密,,將數(shù)據(jù)控制權(quán)交給系統(tǒng)擁有者,,將加密后的密文及數(shù)據(jù)摘要發(fā)送一筆交易對上鏈信息進(jìn)行上鏈,交易的發(fā)送方為系統(tǒng)的公鑰地址,,接收方為機(jī)器公鑰地址,,這筆交易使得數(shù)據(jù)索引哈希即這筆數(shù)據(jù)記錄到區(qū)塊鏈上,不可篡改,,可用于后續(xù)驗證數(shù)據(jù)真?zhèn)螘r使用,。
3.3 上層應(yīng)用調(diào)用數(shù)據(jù)環(huán)節(jié)
當(dāng)調(diào)用數(shù)據(jù)時,首先從區(qū)塊鏈中獲取該數(shù)據(jù)的索引哈希及時間戳,、機(jī)器設(shè)備資料等相關(guān)信息,,由這些信息可確認(rèn)該份數(shù)據(jù)的真實有效性。對該數(shù)據(jù)哈希索引密文解密后,,利用解密得到的明文,,在IPFS系統(tǒng)中檢索所需數(shù)據(jù)。IPFS會返回所對應(yīng)的數(shù)據(jù)明文及數(shù)據(jù)簽名,根據(jù)簽名可驗證數(shù)據(jù)的真實性及數(shù)據(jù)的來源,。
至此,,該系統(tǒng)完成了從數(shù)據(jù)采集到數(shù)據(jù)存儲、調(diào)用的全流程實現(xiàn),,保證了在每個環(huán)節(jié)數(shù)據(jù)的安全性要求,。
4 結(jié)論
本文提出了一種基于區(qū)塊鏈技術(shù)的針對工業(yè)大數(shù)據(jù)的安全保護(hù)解決方法,該方案實現(xiàn)了工業(yè)大數(shù)據(jù)從采集到傳輸,、存儲,、調(diào)用的全流程安全性保證。在采集源頭采用改造后的OPC UA實現(xiàn)了針對大部分工業(yè)設(shè)備的統(tǒng)一接口,,可對大部分設(shè)備進(jìn)行系統(tǒng)適配性改造,,很大程度緩解了目前接口協(xié)議眾多難以實現(xiàn)設(shè)備統(tǒng)一采集的問題。
針對每個設(shè)備配備一對基于橢圓曲線算法的公私鑰地址,,全網(wǎng)唯一,,不可篡改,并在設(shè)備上線時利用區(qū)塊鏈發(fā)送一筆微小交易,,使設(shè)備信息及設(shè)備地址記錄在區(qū)塊鏈上,,形成全網(wǎng)數(shù)據(jù)索引,在后續(xù)設(shè)備數(shù)據(jù)采集,、維護(hù),、故障、報廢等都可將其數(shù)據(jù)記錄到區(qū)塊鏈中,,并可根據(jù)公鑰地址在區(qū)塊鏈中查詢所有的數(shù)據(jù)索引,,針對該設(shè)備將其所有數(shù)據(jù)形成強(qiáng)關(guān)聯(lián),有利于后期的數(shù)據(jù)分析及設(shè)備維護(hù),。
在數(shù)據(jù)采集后利用設(shè)備私鑰對數(shù)據(jù)進(jìn)行簽名,,確保數(shù)據(jù)來源的真實性。通過加密存儲,,保證了數(shù)據(jù)的安全性,,防止數(shù)據(jù)泄露造成企業(yè)資源損失。同時也可針對不同數(shù)據(jù)利用不同公鑰對數(shù)據(jù)索引進(jìn)行加密,,對不同私鑰設(shè)置權(quán)限,,實現(xiàn)數(shù)據(jù)分級管理,實現(xiàn)用戶隱私等隱私數(shù)據(jù)私密性存儲,。
本文利用區(qū)塊鏈,、IPFS等技術(shù)及橢圓曲線、哈希算法等算法構(gòu)建了一個工業(yè)大數(shù)據(jù)全流程的安全解決方案,,實現(xiàn)了數(shù)據(jù)采集安全,、存儲安全,、傳輸安全、隱私保護(hù)及數(shù)據(jù)強(qiáng)關(guān)聯(lián)等眾多功能,,具備非常強(qiáng)的安全性,、實用性,且成本低廉,,容易推廣,,具備非常廣闊的研究價值和應(yīng)用場景。
參考文獻(xiàn)
[1] 馬立川,,裴慶祺,,冷昊,等.大數(shù)據(jù)安全研究概述[J].無線電通信技術(shù),,2015,41(1):1-7.
[2] 趙赫,,李曉風(fēng),,占禮葵,等.基于區(qū)塊鏈技術(shù)的采樣機(jī)器人數(shù)據(jù)保護(hù)方法[J].華中科技大學(xué)學(xué)報(自然科學(xué)版),,2015,,43(s1):216-219.
[3] 姚雪梅,李少波,,璩晶磊,,等.制造大數(shù)據(jù)相關(guān)技術(shù)架構(gòu)分析[J].電子技術(shù)應(yīng)用,2016,,42(11):10-13.
[4] 李少波,,陳永前.大數(shù)據(jù)環(huán)境下制造業(yè)關(guān)鍵技術(shù)分析[J].電子技術(shù)應(yīng)用,2017,,43(2):18-21,,25.
[5] NAKAMOTO S.Bitcoin:A peer-to-peer electronic cash system[EB/OL].[2019-02-22].https://bitcoin.org/bitcoin. pdf.
[6] 張昕偉,張華,,郭肖旺,,等.基于區(qū)塊鏈的電子投票選舉系統(tǒng)研究分析[J].電子技術(shù)應(yīng)用,2017,,43(11):132-135.
[7] 袁勇,,王飛躍.區(qū)塊鏈技術(shù)發(fā)展現(xiàn)狀與展望[J].自動化學(xué)報,2016,,42(4):481-494.
作者信息:
張金龍1,,2,趙德政2,,韓慶敏1
(1.華北計算機(jī)系統(tǒng)工程研究所,,北京100083,;2.中電智能科技有限公司,北京100083)