曹婷婷 丁毅 張經倫 李潔 王晨碩



摘 ? 要:提高物聯網設備采集數據的安全性和真實性,是區塊鏈溯源應用面臨的重要問題。文章設計并實現了一種物聯網終端數據安全可信的采集、記錄方法。該方法設計多采集設備減少數據缺失風險,使用認證和加密方法來保障安全傳輸,利用采集設備和IOT網關完成數據的篩選,對異常設備統計并進行警告。同時,通過移動均值計算完成誤差約減的功能,減少不穩定設備造成的數據偏差、數據錯誤、數據冗余等問題。另外,該機制還包含基于序號的同步策略,保證數據的正確傳輸順序。最后系統通過實驗,驗證該機制的可行性。
關鍵詞:物聯網設備;數據采集;數據過濾;數據處理
中圖分類號: TP391 ? ? ? ? ?文獻標識碼:A
Abstract: Improving the authenticity and security of data collected by Internet of Things devices is an important problem in the application of blockchain traceability. This paper designed and implemented a safe and reliable method to collect and record data from the Internet of Things terminals. This method utilizes multi-device collection to reduce the risk of data missing, employs certification and encryption technologies to ensure secure transmission, uses collected equipment and IOT gateway to select data, calculates and gives warnings for the abnormal equipment. Data deviation, data errors, data redundancy and other problems caused by unstable equipment are reduced through the moving average method at the same time. In addition, the mechanism also includes a synchronization policy based on sequence numbers to ensure the correct data transmission Finally, the feasibility of the mechanism was verified through experiments.
Key words: IOT device; data acquisition; data filtering; data processing
1 引言
近年來食品安全、假冒偽劣產品等事件頻發,嚴重損害消費者的利益,得到了各利益群體與政府的高度關注,2015年《中華人民共和國食品安全法》的相關文件指出:將建立全程可追溯的食品安全體系寫入法律[1],促進對溯源的需求,溯源可以實現產品從原料到成品、以及成品到原料的雙向可追溯功能。目前,通過建立中心化的溯源系統來存儲產品全過程的數據信息,來監督食品的安全,保證消費者權益。因此,涌現了大量食品安全溯源系統,如“國家食品安全追溯平臺[2]”“藥品溯源系統”(碼上放心[3])等,可以滿足用戶充分了解產品信息動態的需求。但這些數據存儲在中心化的機構,存在數據中心易被攻擊、數據易篡改的問題。
一個新的發展趨勢是溯源系統與區塊鏈技術相結合,以保護數據不被篡改。但只能保證鏈上的數據不被篡改,數據可信,無法保證上傳至區塊鏈前的信息真實可信,而物聯網與溯源系統的結合可以實現數據采集的自動化,以減少人工操作帶來的誤操作和人為篡改,從源頭增加數據的可信度,但由于物聯網設備具有可移動性、資源受限、受環境影響大、易受攻擊等特性,因此,使用物聯網設備自動采集只是減少溯源數據造假的概率,數據可信問題依然存在。如何提高物聯網設備采集的數據可用性、物聯網設備采集數據上傳至區塊鏈存儲系統這一環節的操作真實性、安全性,是區塊鏈與物聯網結合的重要問題。
因此,本文提出一種面向溯源應用的可信數據采集機制,從而提高數據的可用性和可信度,加強溯源的實際效果和應用價值。
區塊鏈數據庫具備區塊鏈典型特征,即由去中心化的多個分布式節點組成,所有節點共同來存儲數據,對數據的操作需要通過共識機制得到確認后實現。同時,區塊鏈數據庫兼具傳統數據庫高吞吐量、低延遲的特點。BigchainDB[4]是一套典型的區塊鏈數據庫系統,本文以區塊鏈數據庫作為實驗基礎展開相關研究。
2 相關工作
2.1傳統溯源應用
食品安全一直受到社會的廣泛關注,為了提高對食品的監督,目前針對溯源系統的研究也較為豐富,邱榮洲等人[5]設計了一套基于溯源技術的蔬菜基地管理系統,實現了蔬菜基地企業內部的溯源,消費者通過該系統溯源蔬菜相關信息。姜爽等人[6]構建了一種第三方溯源平臺,通過第三方平臺對生產相關的數據進行監測,產品采用二維碼技術來記錄信息的流通過程,以此向用戶提供溯源數據。王雅君等人[7]為實現對海產食品質量信息的全程追溯,建立了基于關鍵節點的過程跟蹤與產品質量追溯模型,但多采用人工的方式錄入以及將關鍵節點的數據整理后存儲于集中式的數據庫。由文獻[5~7]得出,現有的溯源系統多采用集中式的數據庫來存儲溯源信息,存在中心機構易被攻擊、信息泄露、數據易被篡改等問題,所以很難保證溯源信息的可信、可靠。
2.2 區塊鏈溯源應用
區塊鏈技術不可篡改、可追溯、去中心化的特性使其成為解決現有溯源系統的重要技術手段、應用場景以及研究熱點。2018年,阿里巴巴和普華永道[8]將應用區塊鏈等新技術共同打造透明、可追溯的跨境食品供應鏈,搭建更為安全的食品市場。零售巨頭沃爾瑪[9]利用IBM基于超級賬本架構的區塊鏈解決方案,成功地完成兩個區塊鏈試點,實現對中國豬肉和美洲芒果的安全溯源。另外,Badzar[10]旨在通過探索區塊鏈技術在物流中的應用潛力,重點是提高供應商和消費者的信息透明度,實現對商品的可信溯源。Kumar[11]提出將區塊鏈技術用于大米的農產品溯源中,來跟蹤查詢大米整個流程的所有狀態,以此來驗證大米的質量。可見區塊鏈技術難篡改、可追溯、透明性的特點可提高商品的存儲安全和可信溯源。
2.3 基于區塊鏈及物聯網溯源應用
隨著物聯網技術的發展,區塊鏈與物聯網技術結合的溯源方式應用廣泛,文獻[12~14]分別提出的Waltonchain[12]、溯源鏈[13]、優物鏈[14],都是基于區塊鏈與物聯網的項目,主要應用集中在對食品生鮮以及醫療藥品領域,但物聯網技術與區塊鏈的結合仍面臨一些挑戰,文獻[15~16]針對物聯網技術與區塊鏈展開分析,物聯網設備的數量急劇增多,且設備終端越來越智能化,但同時也帶來了數據可靠性的挑戰。另外Makhdoom等人[17]實現了一個基于物聯網供應鏈監測系統的測試案例,該場景下用戶可自定義產品配送溫度閾值,運輸中超過閾值會產生報警信息。其中采集的溫度數據會被上傳至區塊鏈存儲,保證信息真實、可追溯,但該過程中存在由于物聯網設備不穩定且易受攻擊造成的數據丟失、異常而導致數據失真的問題。綜上,如何提高物聯網設備采集數據的真實性、安全性,是物聯網溯源系統需要解決的重要問題。
3 可信溯源數據采集機制
3.1 系統架構
為了提高溯源信息的真實性、安全性,滿足用戶溯源的實際應用需求,減少物聯網采集設備不穩定且易受攻擊造成的影響,本文設計了一套面向溯源應用的可信數據采集機制。
系統架構如圖1所示,分為物聯網設備采集模塊、通信模塊、IOT(Internet of Things, 物聯網)網關模塊以及數據存儲模塊。
(1)物聯網采集設備:主要功能是實現數據的定制采集,采集模塊主要由傳感器采集,并可進行一定處理,然后發送至網關模塊。
(2)IOT網關:又分為通信模塊和網關模塊。通信模塊主要負責實現采集模塊與IOT網關的通信功能,可通過WiFi方式完成連接。網關模塊主要作用:一是對數據進行處理,IOT網關作為邊緣計算的重要形式,可以承擔數據處理的功能;二是作為客戶端,與區塊鏈數據庫節點連接,實現數據的上傳。
(3)數據存儲系統:主要負責數據的存儲,其存儲平臺是區塊鏈數據庫。將IOT網關模塊處理后的數據存儲在區塊鏈數據庫中。前端主要完成數據的采集,中間為數據的處理與傳輸,底層是數據的存儲,層級模塊相互依賴,共同作用,完成溯源功能。
3.2 數據采集、處理、存儲流程
本文提出的溯源可信數據采集機制主要包含數據采集、數據處理以及數據存儲三部分操作。下面以肉豬溯源為例對該機制的運行流程進行描述(并未包括同步策略部分),如圖2所示。
本文使用區塊鏈數據庫BigchainDB來存儲數據。區塊鏈數據庫中包含資產數據和附加數據兩部分。資產數據包括溯源對象的基本信息,比如將溯源對象肉豬的編號對應一個資產ID,該信息具有不可更改性和唯一性。
附加數據是資產數據的屬性信息,可以通過資產的創建(Create)、轉讓(Transfer)方法,進行屬性的增加和修改。另外,附加數據還包括采集的環境數據,比如肉豬所在環境的溫度、濕度和CO2等。
本研究利用該機制對該溯源對象肉豬的附加信息進行采集、處理、存儲,具體步驟為:
(1)數據采集
由于采集設備具有移動性,易受外界的攻擊,為了保證采集數據的安全性,本文首先要對采集設備的身份進行認證。具體為:IOT網關生成一對公私鑰,根據IP列表,將公鑰發出,終端接收到公鑰信息后,使用該公鑰將其IP、標識信息以及對稱加密密鑰(安全數據傳輸,見下文)加密,再發送給IOT網關,IOT網關收到之后使用私鑰解密,并將IP及標識信息與網關存有的認證信息核對,如果一致,則身份認證通過。IOT網關給終端發送認證成功信息,終端就可以繼續后續采集傳輸工作了。如果終端未收到認證成功信息,則處于等待狀態,間隔一定時間后繼續給IOT網關發送認證信息。為了加強采集設備身份安全性,可定期驗證采集設備身份。
另外,采集設備的不穩定性可能會造成數據缺失、數據異常,為了降低這種風險,這里使用多個設備同時采集養殖場肉豬所在環境的溫度、濕度、CO2等信息,如圖2中①所示。采集設備還可以對數據進行一定的處理,設置溫度范圍值。假定設置肉豬的運輸環境溫度值范圍為15℃-45℃,進行數據分類發現異常數據。如圖2中②所示,若采集肉豬的環境溫度在該范圍內,輸出該溫度值,如果不在該范圍內,則輸出Fail,采集設備將結果數據發送給IOT網關。
為了提高采集設備傳輸的安全性,本文采用加密方式進行傳輸,如圖3所示,對稱加密速度快,適用于對實時性要求高的場景,但其安全風險大。因此,本文采用對稱與非對稱加密相結合的方式,既保證采集數據的實時性,同時保證數據安全。首先采集設備利用對稱加密算法(比如DES)對數據進行加密,然后將加密后的數據通過安全傳輸通道發送給IOT網關,同時采集設備利用非對稱加密算法(比如RSA),使用IOT網關的公鑰(伴隨著成功認證信息獲取)對采集設備的對稱加密密鑰進行非對稱加密,并通過安全傳輸通道發送給IOT網關,IOT網關則利用對應的私鑰進行解密獲取密鑰并保存,這樣此密鑰就可以對傳輸的采集數據進行解密,獲取數據。
圖5對比均值和移動均值兩種減少數據誤差方法,其中標識為Fail值的數據按照0處理。黑色圓點線代表了溫度的平均值,隨機波動性可能使結果產生偏差,如采集溫度值的第41次、第82次、第369次、第443次等明顯出現了較大的波動性,在第443次的溫度值達到了24.6℃。而通過移動平均計算可平滑整個溫度值的趨勢,如圖5中黑色線所示。
上述實驗的分析結果表明,使用多個設備共同采集數據,減少了數據缺失風險,并使用樹莓派網關進行數據處理,可以降低由于采集設備的不穩定造成數據偏差、數據錯誤、數據冗余等問題,有效提高上鏈數據的真實性和質量。
5 結束語
物聯網設備數據采集與區塊鏈存儲相結合進行溯源應用是當前的重要發展方向。
本文針對物聯網設備的不穩定特性,設計并實現了一種物聯網終端數據安全可信采集、記錄方法,以求減少數據缺失、數據誤差、傳輸安全與次序等方面對采集數據質量的影響,為實現區塊鏈產品溯源提供了一套可行的數據采集方案。
基金項目:
1.國家重點研發計劃(項目編號:2018YFB1402703);
2.北京市教育委員會科技計劃一般項目(項目編號:KM201910037003);
3.北京市社會科學基金研究基地項目(項目編號:18JDGLB026);
4.智能物流系統北京市重點實驗室(項目編號:BZ0211);
5.北京物資學院2019年度“實培計劃”項目資助。
參考文獻
[1] 國務院.中華人民共和國食品安全法.[EB/OL].http://www.gov.cn/zhengce/2015-04/25/content_2853643.htm.2015-05-24/2020-02-15.
[2] 中國物品編碼中心.國家食品安全追溯平臺. [EB/OL].http://www.chinatrace.org/.2020-01-03/2020-05-22.
[3] 阿里健康.碼上放心.[EB/OL].http://www.mashangfangxin.com/,2015-04-01/.2020-04-26.
[4] BigchainDB團隊.BigchainDB WhitePaper.[EB/OL].https://www.bigchaindb.com/whitepaper,2018-05/2020-03-12.
[5] 邱榮洲, 池美香, 陳宏等. 基于溯源技術的蔬菜基地管理系統開發與應用[J]. 中國農業科技導報,2017,(04):57-64.
[6] 姜爽, 韓貴清, 司震宇等. 第三方稻米溯源平臺設計與實現[J]. 農業工程學報,2017,327(24):223-229.
[7] 王雅君, 張浩, 時君麗等. 基于過程的海產食品質量信息可追溯系統[J]. 農業工程學報, 2015(14):272-279.
[8] 海外網.阿里巴巴與普華永道等戰略合作推動跨境食品可溯源.[EB/OL].http://m.haiwainet.cn/middle/352345/2017/0324/content_30816830_1.html,2017-03-24/2020-05-12.
[9] Kamath R. Food traceability on blockchain: Walmarts pork and mango pilots with IBM[J]. The Journal of the British Blockchain Association,2018,1(1):3712.
[10] Badzar A. Blockchain for securing sustainable transport contracts and supply chain transparency-an explorative study of blockchain technology in logistics[D]. Lund: Lund University,2016.
[11] Kumar M V, Iyengar N C S. A framework for Blockchain technology in rice supply chain management[J]. Adv. Sci. Technol. Lett,2017,146:125-130.
[12] 沃爾頓基金會.Waltonchain白皮書.[V2.0].[EB/OL].https://www.waltonchain.org/templets/default/doc/Waltonchainwhitepaper_CN_20180525.pdf,2018-05-25/2020-04-26.
[13] Traceability Chain Foundation LTD.Traceability Chain 白皮書.[EB/OL].http://dl.tacblock.com/Traceability_Chain_Whitepaper.pdf,2018-09/2020-04-26.
[14] 優物鏈團隊.UCOT優物鏈.[EB/OL].https://www.ucot.world/,2018-02-13/2020-05-22.
[15] Khan M A, Salah K. IoT security: Review, blockchain solutions, and open challenges[J]. Future Generation Computer Systems,2018,82:395-411.
[16] Reyna A, Martín C, Chen J, et al. On blockchain and its integration with IoT. Challenges and opportunities[J]. Future Generation Computer Systems,2018,88:173-190.
[17] Makhdoom I, Abolhasan M, Abbas H, et al. Blockchain's adoption in IoT: The challenges, and a way forward[J]. Journal of network and computer applications,2019,125(JAN.):251-279.