文獻(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è)制高點;中國在2015年先后提出《中國制造2025》規(guī)劃及《促進(jìn)大數(shù)據(jù)發(fā)展行動綱要》,從頂端規(guī)劃安排大數(shù)據(jù)的發(fā)展。這些國家戰(zhà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)險,并將每一機器從上線到運轉(zhuǎn)、維修、報廢等過程數(shù)據(jù)關(guān)聯(lián)起來,存儲至區(qū)塊鏈中,具備極高的安全性。
1 系統(tǒng)總體架構(gòu)
2015年,趙赫等基于其課題組采樣機器人提出一種傳感數(shù)據(jù)真實性保障方法[2],如圖1所示。
該方法利用區(qū)塊鏈技術(shù)的不可篡改性,保證了數(shù)據(jù)從采集源頭的真實性,安全性高,成本低廉,是利用區(qū)塊鏈技術(shù)保護(hù)數(shù)據(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ù)安全性更高、適用性更強的系統(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é)點上。后續(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)隨機產(chǎn)生,公鑰為私鑰通過橢圓曲線算法計算所得,之后經(jīng)過Hash160及Base58編碼成為機器公鑰地址。由于數(shù)據(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)是一個點對點的超媒體協(xié)議。
當(dāng)文件被添加到IPFS節(jié)點后,節(jié)點會返回這個文件的索引哈希值,當(dāng)下一步向IPFS網(wǎng)絡(luò)詢問哈希的時候,它通過一個分布式哈希表,可以快速地找到擁有數(shù)據(jù)的節(jié)點,從而檢索到該數(shù)據(jù)。
工業(yè)環(huán)境中對數(shù)據(jù)存儲的要求為:數(shù)據(jù)量大、來源廣、速度快、存儲完整、具備可擴展性[4]。IPFS的分布式存儲設(shè)計使得每一片數(shù)據(jù)都是一份數(shù)據(jù)的一部分,只有將所有分片組合到一起才是一份完整的數(shù)據(jù),任何一個分片都不能得到數(shù)據(jù)的明文,即使其中一個節(jié)點的數(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é)點基于激勵機制進(jìn)行自治。
(2)公開透明。區(qū)塊鏈中數(shù)據(jù)面向所有人開放,任何人都可以進(jìn)行查詢使用。
(3)不可篡改。由于每個節(jié)點都保存一分區(qū)塊鏈賬本,任何一個節(jié)點都不可以單方面修改其中數(shù)據(jù),保證了其不可篡改性。
(4)安全可靠。任何寫入?yún)^(qū)塊鏈的請求都需進(jì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)及各個機器上前完成設(shè)備和系統(tǒng)的初始化,主要是為每一個機器及系統(tǒng)分配一對公私鑰地址,然后由系統(tǒng)地址向機器地址發(fā)送一筆微小交易,并備注該機器的設(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ù)。工廠中的機器會實時采集運行中的數(shù)據(jù),并上傳給數(shù)據(jù)處理模塊。數(shù)據(jù)處理模塊收到數(shù)據(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)的公鑰地址,接收方為機器公鑰地址,這筆交易使得數(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ù)的索引哈希及時間戳、機器設(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ù)形成強關(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ù)強關(guān)聯(lián)等眾多功能,具備非常強的安全性、實用性,且成本低廉,容易推廣,具備非常廣闊的研究價值和應(yīng)用場景。
參考文獻(xiàn)
[1] 馬立川,裴慶祺,冷昊,等.大數(shù)據(jù)安全研究概述[J].無線電通信技術(shù),2015,41(1):1-7.
[2] 趙赫,李曉風(fēng),占禮葵,等.基于區(qū)塊鏈技術(shù)的采樣機器人數(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.華北計算機系統(tǒng)工程研究所,北京100083;2.中電智能科技有限公司,北京100083)