夏守先
開發(fā)設(shè)計
區(qū)塊鏈在食品生產(chǎn)全過程管控系統(tǒng)的應(yīng)用
夏守先
(廣州市龍玥電氣科技有限公司,廣東 廣州 510120)
基于區(qū)塊鏈實現(xiàn)食品生產(chǎn)全過程管控是保障食品安全的手段之一。利用區(qū)塊鏈的防篡改性、去中心化、開放性和可追溯性等特點,設(shè)計食品生產(chǎn)全過程管控系統(tǒng),將食品原始數(shù)據(jù)利用Hash函數(shù)加密后,存儲在區(qū)塊鏈上,并利用數(shù)字簽名技術(shù)及共識機制等保證數(shù)據(jù)公開透明和不可篡改,提高系統(tǒng)的安全性、可靠性及運行效率。
區(qū)塊鏈;食品安全;生產(chǎn)管控
食品安全關(guān)系人們的身體健康和生命安全,已成為當下重要的民生問題。食品生產(chǎn)全過程管控是確保食品安全的重要環(huán)節(jié)。傳統(tǒng)的食品生產(chǎn)全過程管控系統(tǒng)依賴于中心化平臺、服務(wù)器系統(tǒng)與統(tǒng)一管控模型,存在如下問題:1)中心化平臺導致上下游協(xié)同能力較弱,信息可追溯性差[1];2)系統(tǒng)數(shù)據(jù)安全性低、易篡改、無法驗證其完整性;3)食品生產(chǎn)鏈上各參與方相對獨立,信息閉塞,無法建立共信體系和隱私保護體系,資源共享難度較大。
食品生產(chǎn)行業(yè)的精細化分工,使食品在生產(chǎn)加工、存儲運輸以及銷售等任何一個環(huán)節(jié)都可能產(chǎn)生安全隱患。2019年,中共中央、國務(wù)院發(fā)布《關(guān)于深化改革加強食品安全工作的意見》,提出推進“互聯(lián)網(wǎng)+食品”監(jiān)管,建立基于大數(shù)據(jù)分析的食品安全信息平臺,推進大數(shù)據(jù)、云計算、物聯(lián)網(wǎng)、人工智能、區(qū)塊鏈等技術(shù)在食品安全監(jiān)管領(lǐng)域的應(yīng)用,實施智慧監(jiān)管[2]。
區(qū)塊鏈(Blockchain)是一種分布式數(shù)據(jù)存儲、點對點傳輸、共識機制、加密算法等計算機技術(shù)的新型應(yīng)用模式,也稱為分布式賬本技術(shù)[3]。區(qū)塊鏈的防篡改性、去中心化、開放性和可追溯性等特點滿足食品生產(chǎn)全過程管控系統(tǒng)多層級、多方參與、數(shù)據(jù)追溯的需求。為此,本文將區(qū)塊鏈應(yīng)用于食品生產(chǎn)全過程管控系統(tǒng),解決數(shù)據(jù)追溯、數(shù)據(jù)防篡改、數(shù)據(jù)安全共享、數(shù)據(jù)協(xié)同、數(shù)據(jù)防泄漏等問題。
區(qū)塊鏈技術(shù)平臺主要有比特幣(Bitcoin)、以太坊(Ethereum)和由Linux基金會發(fā)起的開源區(qū)塊鏈項目超級賬本(Hyperledger)。其中Hyperledger Fabric平臺具有高度模塊化和可配置的體系結(jié)構(gòu),支持Java,Go和Node.js等通用編程語言,不但具有公鏈防篡改,分布式記賬的特點,還融入身份識別、數(shù)據(jù)保密、低延遲、高吞吐等技術(shù)[4]。
本文以Hyperledger Fabric平臺為底層架構(gòu)開發(fā)食品生產(chǎn)全過程管控系統(tǒng),提高系統(tǒng)的運行效率和數(shù)據(jù)存儲能力。基于區(qū)塊鏈的食品生產(chǎn)全過程管控系統(tǒng)模型如圖1所示。
圖1 基于區(qū)塊鏈的食品生產(chǎn)全過程管控系統(tǒng)模型
在食品生產(chǎn)全過程中,主要參與方包括原材料供應(yīng)方、生產(chǎn)加工方、存儲運輸方、銷售方、監(jiān)管部門和消費者等。區(qū)塊鏈通過分布式賬本、非對稱加密算法、時間戳、共識機制等技術(shù),實現(xiàn)食品生產(chǎn)加工、存儲運輸以及銷售等全過程關(guān)鍵數(shù)據(jù)上鏈,從根本上解決食品安全問題。基于區(qū)塊鏈的食品生產(chǎn)全過程管控系統(tǒng)框圖如圖2所示。
圖2 基于區(qū)塊鏈的食品生產(chǎn)全過程管控系統(tǒng)框圖
區(qū)塊是存儲交易信息的數(shù)據(jù)結(jié)構(gòu)。一個區(qū)塊由區(qū)塊頭和區(qū)塊體組成,區(qū)塊頭存儲散列(Hash)、前一Hash、時間戳等部分;區(qū)塊體存儲數(shù)據(jù);區(qū)塊頭中保存的Hash和前一個Hash相互鏈接,形成有序的鏈狀結(jié)構(gòu)被稱為區(qū)塊鏈[5]。
食品生產(chǎn)全過程中的各參與方按照管控系統(tǒng)的流程,先后把各自關(guān)鍵數(shù)據(jù)寫入?yún)^(qū)塊鏈,以保證區(qū)塊鏈中食品數(shù)據(jù)的完整性和時間確定性。
1)食品生產(chǎn)加工前,將原材料名稱、生產(chǎn)廠商、購入時間等數(shù)據(jù)通過私鑰寫入?yún)^(qū)塊鏈;
2)在生產(chǎn)加工過程中,將配料信息、加工工序、加工設(shè)備、加工人員、包裝信息、出產(chǎn)日期與保質(zhì)期等數(shù)據(jù)通過私鑰寫入?yún)^(qū)塊鏈;生產(chǎn)加工發(fā)起交易請求,并利用私鑰分別與存儲運輸方和銷售方簽署智能合約,系統(tǒng)記錄交易操作并在交易完成后對存儲運輸方和銷售方進行授權(quán);
3)在存儲運輸過程中,物流公司成為新的被授權(quán)角色,其將存儲倉庫的溫濕度,出入庫時間、運輸車、運輸路線、運輸時間等數(shù)據(jù)通過私鑰寫入?yún)^(qū)塊鏈;
4)在銷售過程中,上一級銷售方利用私鑰簽署智能合約,下一級銷售方成為新的被授權(quán)角色;食品驗收后,將銷售時間、銷售價格等相關(guān)數(shù)據(jù)通過私鑰寫入?yún)^(qū)塊鏈;
5)消費者通過食品包裝上的條形碼、二維碼或RFID實時查詢、關(guān)注食品的安全性和可靠性,發(fā)現(xiàn)問題可進行信息反饋;
6)當食品發(fā)生問題時,監(jiān)管部門通過私鑰獲得更高等級的權(quán)限,并根據(jù)出現(xiàn)問題的環(huán)節(jié)進行問責。
食品生產(chǎn)全過程中各參與方多且分散、涉及面廣、生產(chǎn)管控周期長、很難通過集中化的方式進行管控。同時,各參與方關(guān)鍵數(shù)據(jù)繁雜,無法形成統(tǒng)一標準,難以整合,易形成信息孤島。上述因素導致傳統(tǒng)食品生產(chǎn)全過程管控系統(tǒng)資源消耗大、效率較低。且傳統(tǒng)的食品生產(chǎn)全過程管控系統(tǒng)數(shù)據(jù)庫通常采用中心化的數(shù)據(jù)庫,較難控制數(shù)據(jù)庫的信息不被攻擊或篡改,并難以協(xié)調(diào)信息提供方和調(diào)用方之間權(quán)利和義務(wù)?;趨^(qū)塊鏈的食品生產(chǎn)全過程管控系統(tǒng)的去中心化、無需信任的數(shù)據(jù)架構(gòu)以及底層開放等特性使信息更加公開透明,解決了數(shù)據(jù)追溯、數(shù)據(jù)防篡改、數(shù)據(jù)安全共享、數(shù)據(jù)協(xié)同、數(shù)據(jù)防泄漏等問題。
食品生產(chǎn)全過程管控系統(tǒng)的原始數(shù)據(jù)通過傳感器、射頻識別(radio frequency identification,RFID)技術(shù)、物聯(lián)網(wǎng)技術(shù)等采集。原始數(shù)據(jù)上傳到區(qū)塊鏈后與數(shù)字簽名、時間戳(Timestamp)等共同封裝于區(qū)塊鏈,數(shù)據(jù)的存儲為分布式。
從區(qū)塊鏈中每個數(shù)據(jù)區(qū)塊的結(jié)構(gòu)來看,新生成的區(qū)塊存儲上一區(qū)塊的Hash值,并以此為區(qū)塊標識。同時,區(qū)塊中還包含時間戳,它是一個字符序列,唯一標識某一刻的時間,是數(shù)據(jù)在某個特定時間已經(jīng)存在、完整和可驗證的標記。在基于區(qū)塊鏈的食品生產(chǎn)全過程管控系統(tǒng)中,每個環(huán)節(jié)都會產(chǎn)生一個不可偽造和更改的時間記錄信息。區(qū)塊間按時間發(fā)生順序連接,從而形成一條從最新區(qū)塊追溯到初始區(qū)塊的數(shù)據(jù)鏈條,保證了基于區(qū)塊鏈的食品生產(chǎn)全過程管控系統(tǒng)中各參與方的每條數(shù)據(jù)都可以追溯,便于追責和監(jiān)管。
基于區(qū)塊鏈的食品生產(chǎn)全過程管控系統(tǒng)采用數(shù)字簽名算法防止數(shù)據(jù)被篡改,保證各參與方身份真實及數(shù)據(jù)完整。數(shù)字簽名算法利用非對稱加密算法和Hash函數(shù),采用簽名及驗證的方式來驗證數(shù)據(jù)是否被篡改。數(shù)字簽名與驗證過程如圖3所示。
圖3 數(shù)字簽名與驗證過程
非對稱加密算法可生成私鑰和公鑰。Hash函數(shù)可把任意長度的輸入變換成固定長度的輸出,該輸出的Hash值就是消息摘要。首先,發(fā)送方利用Hash函數(shù)得到一個發(fā)送數(shù)據(jù)的消息摘要,再用私鑰對消息摘要進行簽名,形成發(fā)送方的數(shù)字簽名;然后,將數(shù)字簽名、原數(shù)據(jù)和公鑰一起發(fā)送給接收方;接著,接收方用發(fā)送方的公鑰對數(shù)字簽名進行解密,得到發(fā)送方的消息摘要,再用相同的Hash函數(shù)對原數(shù)據(jù)進行Hash計算,得到一個新的消息摘要;最后,將新的消息摘要與解密的消息摘要進行對比,若相同,說明收到的數(shù)據(jù)是完整的,且真實可靠。
同時,區(qū)塊鏈按時間順序生成,每個區(qū)塊都包含指向上一個區(qū)塊的Hash指針,一旦數(shù)據(jù)被篡改,則與后面區(qū)塊的記錄不符,從而導致后面所有區(qū)塊都要重新共識,如此龐大的計算量致使數(shù)據(jù)幾乎無法被篡改。
基于區(qū)塊鏈的食品生產(chǎn)全過程管控系統(tǒng)的共識機制以去中心化方式維護分布式數(shù)據(jù)庫數(shù)據(jù)的一致性。系統(tǒng)沒有中心化的硬件或管理機構(gòu),區(qū)塊鏈節(jié)點間具有均等的權(quán)利和義務(wù),任何一個節(jié)點出現(xiàn)問題都不會影響系統(tǒng)運行[6]。本系統(tǒng)采用的共識機制是kafka,通過排序節(jié)點接收區(qū)塊鏈交易,并對其進行排序,執(zhí)行交易后將交易結(jié)果保存在排序節(jié)點的本地日志,最后利用P2P傳播方式將結(jié)果擴散給區(qū)塊鏈的每個節(jié)點[7],有效提升系統(tǒng)的交易處理速度和能力,具有高吞吐,低延遲特征。這使得系統(tǒng)各參與方地位平等,各節(jié)點信息公開透明,提高信息交互效率,優(yōu)化信息共享效果。
食品生產(chǎn)全過程可能被業(yè)務(wù)分割為多個不同區(qū)塊,不同區(qū)塊之間的信息共享需要邏輯簡單,具有良好擴展性的數(shù)據(jù)協(xié)同方式實現(xiàn)。Fabric中的1條鏈相當于1個共享賬本,需要共享信息的節(jié)點(可以是1個設(shè)備或幾個設(shè)備聯(lián)合通過1個節(jié)點訪問和提交信息)都可以加入某條鏈,該共享賬本的信息僅在該鏈內(nèi)擴散。鏈對信息的擴散起到隔離作用,節(jié)點具有較好的隱私性;同時,節(jié)點無需保留與本節(jié)點無關(guān)的信息,提高存儲和網(wǎng)絡(luò)通信效率,改善區(qū)塊鏈性能。另外,在某些情況下,終端可能需要跨鏈訪問相關(guān)數(shù)據(jù),如生產(chǎn)B食品的終端可能需要進一步了解原材料(A食品)的具體組成。本系統(tǒng)設(shè)計2層跨鏈體系結(jié)構(gòu),第一層為主鏈,主要用于跨鏈路由、跨鏈節(jié)點加入該鏈;第二層為多條業(yè)務(wù)鏈,具體存儲食品生產(chǎn)關(guān)鍵數(shù)據(jù)。該結(jié)構(gòu)易于擴展新的共享節(jié)點,且節(jié)點間也能快速互操作。
基于區(qū)塊鏈的食品生產(chǎn)全過程管控系統(tǒng)利用Hyperledger Fabric技術(shù)解決隱私泄露問題。首先,F(xiàn)abric多鏈技術(shù)可隔離數(shù)據(jù),數(shù)據(jù)僅在鏈內(nèi)傳播,一定程度上緩解了數(shù)據(jù)泄露風險;其次,F(xiàn)abric的Private Data可實現(xiàn)在同一條區(qū)塊鏈內(nèi),一部分數(shù)據(jù)鏈內(nèi)所有節(jié)點共享,另一部分數(shù)據(jù)只有經(jīng)過特定認證的節(jié)點才可訪問。Private Data具有較高的隱私性,它不經(jīng)過共識節(jié)點排序,而僅通過Gossip協(xié)議以P2P的方式在終端間傳輸,只有特定認證過的終端才會同步Private Data,同一條鏈內(nèi)未經(jīng)過認證的終端僅存儲Private Data的Hash校驗,如圖4所示。
圖4 Private Data隱私保護技術(shù)
區(qū)塊鏈作為一種分布式賬本,具有低成本、效率高、數(shù)據(jù)透明和安全可靠等特點,解決了食品生產(chǎn)全過程中信息不對稱、信用缺失和數(shù)據(jù)共享難度大等問題[8]。本文將區(qū)塊鏈應(yīng)用于食品生產(chǎn)全過程管控系統(tǒng),支持食品生產(chǎn)過程資源有效協(xié)調(diào),提升安全保障能力,促進食品行業(yè)高質(zhì)量發(fā)展。
[1] 冷杰武,江平宇,劉加軍,等.區(qū)塊鏈技術(shù)驅(qū)動的產(chǎn)消者自組織產(chǎn)品制造社群構(gòu)建[J].廣東工業(yè)大學學報,2017,34(5):1-9.
[2] 張長魯,張健.國內(nèi)區(qū)塊鏈研究主題挖掘、熱點分析及趨勢探究[J].統(tǒng)計與信息論壇,2021,36(2):119-128.
[3] Nakamoto S. Bitcoin: a peer-to- peer electronic cash system Online[EB/OL].(2009-02-03).https://bitcoin.org/bitcoin.pdf.
[4] 汪普慶,瞿翔,熊航,等.區(qū)塊鏈技術(shù)在食品安全管理中的應(yīng)用研究[J].農(nóng)業(yè)技術(shù)經(jīng)濟,2019(9):82-90.
[5] Swan M. Blockchain: Blueprint for a new economy [M]. US: O’ReillyMedia, 2015.
[6] 劉琰,楊博,王瑜.基于區(qū)塊鏈技術(shù)的食品可追溯系統(tǒng)研究[J].中國自動識別技術(shù), 2020(4):62-67.
[7] 姚勇鋒,孫恩昌,張延華,等.基于聯(lián)盟鏈的建筑行業(yè)標準管理系統(tǒng)[J].計算機測量與控制,2020,28(10):221-225,230.
[8] 徐睿,孫霞,郭業(yè)民,等.基于區(qū)塊鏈技術(shù)的食品安全溯源體系應(yīng)用與研究進展[J].食品安全質(zhì)量檢測學報,2020,11(20): 7610-7616.
Application of Blockchain in the Whole Process Control System of Food Production
Xia Shouxian
(Guangzhou Longyue Electric Technology Co., Ltd, Guangzhou 510120, China)
The whole process control of food production based on blockchain is one of the means to ensure food safety. Based on the characteristics of anti tampering, decentralization, openness and traceability of blockchain, the whole process management and control system of food production is designed. The original food data is encrypted by Hash function and stored on the blockchain. The digital signature technology and consensus mechanism are used to ensure that the data is open, transparent and non tamperable, so as to improve the security, reliability and operation efficiency of the system.
blockchain; food safety; production control
夏守先,男,1976年生,本科,工程師,主要研究方向:自動控制及儀器儀表。E-mail: 2782157865@qq.com
TP399
A
1674-2605(2021)03-0006-04
10.3969/j.issn.1674-2605.2021.03.006