劉媛媛



關鍵詞: 區塊鏈;食品安全;監督管理
中圖分類號:TP3 文獻標識碼:A
文章編號:1009-3044(2023)03-0074-04
1 引言
俗話說,“國以民為本,民以食為天,食以安為先”,食品安全歷來都是民眾密切關注的社會問題。而“食品安全記錄本”作為市場監管部門對餐飲單位進行食品安全監管的一種重要手段,通過對餐飲單位生產運營過程中各環節操作記錄信息的采集,全面把控食品安全質量,保障消費者的權益和身體健康[1]。傳統的監管系統設計采用中心化數據庫,數據易被篡改,缺乏一定的公信力。并且數據收集涉及多個職能部門,數據來源多樣,形式不統一,數據不能有效地進行整合分析,產生的數據價值較低。同時業務環節數字化程度低,數據質量較差,影響其追溯性[2]。在食品安全監督信息系統的建設中,探索“區塊鏈+食品安全監管”新思路,借助區塊鏈技術有效地對食品操作全流程信息上鏈,從而實現了信息不可篡改、信息公開透明、食品安全監管全鏈條溯源等增益效果。在傳統信息系統建設的同時依據業務特點進行了大膽的創新和嘗試,在區塊鏈技術應用上將起到示范性作用[3]。
2 區塊鏈技術的特點和應用
2.1 分布式數據存儲
傳統系統采用中心化數據存儲,當某臺服務器權限較高時,可以有效控制整個系統的數據流。但區塊鏈技術采用去中心化思維,采用密碼學原理和共識算法,保證區塊鏈在整個網絡中的節點責任和義務相同,所有節點均能維護區塊鏈中的數據,使用分布式數據存儲,區塊鏈系統不存在中心化的管理機構。
2.2 高度自治性
區塊鏈采用基于協商一致的規范和協議,使得整個系統中所有節點都能夠在去信任的環境自由安全地交換數據。此規范協議既包括系統運行的數學算法,也包括完成交易的智能合約。由傳統系統對“人”的信任改成了對“機器”的信任,最終達成無法進行人為干預的目的[4]。
2.3 信息高度透明
區塊鏈中的數據完全公開透明,對外向所有用戶開放,任何用戶都可以對區塊鏈中的數據查詢,并可以依托區塊鏈系統開發上層應用程序,系統信息透明度高。
2.4 數據不可篡改
區塊鏈系統中每個區塊中的數據通過哈希算法生成哈希值后被安全存儲,并且每個區塊中數據頭部均由上個區塊中的哈希值進行標記,節點與節點之間相互不信任,除非同時控制全網超過51%的系統算力,否則無法對區塊鏈中的數據進行篡改,從而保證了區塊鏈中數據的可靠性[5]。
通過區塊鏈技術可以實現“數據信息上鏈、數據不可篡改、數據公開透明”,利用聯盟鏈多節點的接入,還可以實現“相互制約、去三方信任”,這些特性可以應用在數據溯源、監管信息存儲、數據存證公證等環節,借助區塊鏈高級特性“智能合約”,還可以在金融領域實現特定業務場景,如“供應鏈金額”“質押借貸”“股權分配”等。
3 區塊鏈在監管系統中的研究
3.1 利用區塊鏈實現一種監管數據不可篡改的技術方案
安全監管的日常工作中,各項監管數據的記錄和存檔備查,是監管工作的一種重要手段。對比傳統的信息記錄系統,增加了信息篡改的隱患。故需要通過技術手段杜絕此種現象,通過區塊鏈技術可以實現監管信息不可篡改的技術方案。如果強行修改,系統將自動識別探測,并進行紅色標記展示。
如圖1所示,將信息進行SHA數字簽名后,信息生成唯一存證,信息是否被修改,只需簽名和之前存證做對比即可,由此可以鎖定信息。SHA是一種密碼單向散列函數,單向散列函數生成的信息摘要是不可預見的,消息摘要和原始數據沒有任何關系。h=H(M),M是待處理的明文,可以為任意長度;H是單向散列函數,h是生成的報文摘要,具有固定長度,并且和M長度無關。其中H具有以下單向性質:給M和H,易計算h;給定h和H,難計算M,甚至得不到M的任何消息;給定H,要找兩個不同的M1和M2,在計算上是不可行的[6]。
利用區塊鏈結構,提供基礎的數據存儲空間,所有的監管信息數據,存儲在各個區塊中,如圖2所示。區塊與區塊之間,利用數字加密SHA算法,相互印證,確保區塊數據的不可篡改。此外,需要在多臺服務器上共同運行監管信息管理系統,使之節點超過3個,則可以保持3個節點服務器項目制約,不可單獨修改數據。
本監管聯盟鏈將采取PBFT 共識協議:PracticalByzantine Fault Tolerance,該共識協議實現了在有限個節點的情況下的拜占庭問題,有3f+1的容錯性,并同時保證一定的性能。該算法可以容忍小于1/3個無效節點或作惡節點,從而保障數據的一致性和不可篡改。
圖3為PBFT協議通信模式,每個客戶端請求需經過5個階段,通過采用兩次兩兩交互的方式在服務器達成一致后再執行客戶端的請求。由于客戶端不能從服務器端獲得任何服務器運行狀態的信息,PBFT 中主節點是否發生錯誤只能由服務器監測[7]。如果服務器在一段時間內都不能完成客戶端的請求,則會出發視圖更換協議。其中C為客戶端,N0-N3表示服務節點,N0為主節點,N3為故障節點。
3.2 利用摘要簽名存證上鏈實現大文件存儲和文件防篡改監控
通過信息簽名檢索模塊,實現針對不同信息的簽名處理,緊密結合監管聯盟鏈,將處理后的存證上鏈。上鏈后監管聯盟將反饋區塊高度,存證哈希等鏈上信息,數據存儲系統做對應保存。同時信息簽名檢索模塊將定期做存證巡檢,到監管聯盟鏈上查詢區塊信息,跟數據存儲系統中的存證做對比,如果信息被篡改,將做標記展示。
針對不同信息文件處理方式不同,如圖4所示,對于文字在容量允許的情況下,將全部上鏈存儲;對于圖片,需要利用壓縮技術,上鏈存儲縮略信息和摘要信息;對于文件和視頻,將做摘要上鏈存儲。
3.3 通過中心化檢索技術實現監管聯盟數據的有效公式
區塊鏈上的數據通常比較抽象,一般保存的是進制數據和哈希數據,若直接瀏覽訪問,難以理解分析。配套監管聯盟鏈,研發對應的數據展示模塊,可以更加直觀清晰地進行數據展示和分析。如圖5所示。在這個過程中,需要依據監管數據類別、層級等制定有效的規范,將原有的多樣信息,整理為有規可循的固定數據結構,數據展示模塊要遵循約定規則,就可以將難以理解的區塊數據“翻譯”為可以識別的有效數據。
4 系統功能設計
4.1 系統主要模塊設計
1) 安全責任信息線上管理
各餐飲單位負責人,通過手機在線完成安全記錄的確認和提交,監管管理人員可以通過系統檢索查詢安全記錄,餐飲單位負責人同時可以在線查看自己相關信息。
2) 信息上鏈和存證公示
所有的記錄信息都可以上鏈到自有的聯盟鏈中并產生對應的存證,鏈上信息可以通過公開的界面進行查詢同時公示存證信息,存證信息包括區塊高度、哈希信息等。
3) 監管聯盟鏈
依據安全信息記錄上鏈的訴求,定制化一款聯盟鏈,通過3個以上節點運行,并支持一定的擴展性,以備后續系統業務擴展的需求。
4) 記錄信息管理
監管人員可以管理系統中的各餐飲單位,依據餐飲單位查看食品安全記錄信息,同時查看對應的存證信息。
5) 考試管理
監管人員可以錄入考題,同時設置好答案,多道題目任意組合成一張試卷,由餐飲單位負責人考核答題,系統可自動評分,考試結果上鏈存證。
4.2 系統架構設計
如圖6所示,運行3個以上節點服務器,項目制約管控,保障鏈上信息的不可篡改和公開透明。運行中各節點將按照既定的規則出塊運轉,可是隨時增加節點。聯盟鏈中將記錄食品安全信息的摘要信息和完整的存證信息,同時提供區塊查詢、存證查詢和校驗的功能。中心化系統模塊實現整個業務功能,包括給餐飲單位使用的移動App,監管人員使用的后臺管理系統。中心化系統會同聯盟鏈做數據通訊,完成重要信息上鏈和存證的拉取和存儲,同時中心化系統可以到鏈上驗證數據庫中的重要數據是否被篡改。存證公示門戶輪播展示聯盟鏈最新的區塊高度和最新的上鏈信息,用作信息公示[8]。可以根據存證哈希值,檢索鏈上記錄的具體信息,面向餐飲單位商戶以及各監管部門公開透明開放。監管管理門戶是監管人員內部使用的管理后臺,可以對餐飲單位商戶進行管理,查看記錄信息,校驗信息存證,查看聯盟鏈的運行狀態等。餐飲單位商戶使用移動App,通過賬號密碼登錄,相關管理人員可以提交本單位的安全檢查信息,確認無誤后信息上鏈,上鏈后數據不可修改。同時可以查看本單位的歷史安全記錄以及對應鏈上存證信息。
餐飲單位負責人通過手機App將記錄信息提交給業務系統,如圖7所示。業務系統存儲數據后打包提交給聯盟鏈,聯盟鏈接收數據后將摘要信息上鏈,同時反饋上鏈的區塊高度、哈希標識等信息,業務系統接收后入庫備查。
4.3 系統主要界面設計
1) 餐飲單位移動App端設計
餐飲單位負責人可通過手機App登錄,如上圖所示,系統主頁面將列出每日需完成的監管任務,餐飲負責人線下完成任務后可線上提交,同時可附件圖片和視頻,點擊提交檢查,提交記錄數據將進行上鏈,上鏈成功過后返回存證內容、所在區塊、存證標識以及存證時間。
2) 食品監管人員監管管理端設計
如圖9所示,食品監管人員通過監管管理平臺,可以對餐飲單位信息進行創建、修改、查看、統計等操作,賦值權限,并可以按照監管街道進行數量統計。
監管人員可以通過監管平臺查看餐飲單位提交的監管信息記錄,每條數據均已上鏈,同時系統中記錄存證內容、所在區塊、存證標識、存證時間等區塊數據,如圖10所示,保證了數據的高度透明和不可篡改特性。
公眾通過存證公示門戶,可以查看所有餐飲單位的安全記錄信息,同時可以查看監管鏈上的區塊信息。
5 結束語
基于區塊鏈技術的食品安全監督信息管理系統構建成功并初步部署實施后,改變了傳統模式下中心化數據管理模式,取得了較好的應用效果。同時推動了監管科技創新,提升監管效能。