摘要:文中基于區(qū)塊鏈技術,通過標準化和信息化的手段建立農產品種植、加工、檢驗、監(jiān)管和消費的規(guī)范化溯源流程,設計構建了分布式農產品溯源平臺。旨在能提高農戶勞動生產率,為消費者提供健康、安全的產品,同時也為政府部門的監(jiān)管工作提供信息參考。
關鍵詞:區(qū)塊鏈;農產品;溯源
Abstract: Based on blockchain technology, this paper designed and constructed a distributed agricultural product traceability platform. To establish a standardized traceability flow for the whole process of farming, processing, inspection, supervision and consumption of agricultural products through standardized and information technology, in order to improve the labor productivity of farmers, provide consumers with healthy and safe products, and also provide information reference for government supervision.
Key Words: Blockchain; Agricultural products; Traceability
0 引言
食品安全是整個社會普遍關注的話題。傳統農業(yè)由于信息不透明、數據碎片化、交易節(jié)點多,消費者很難判別農產品的可靠性和安全性。為此,建立并完善農產品溯源體系平臺,成為確保食品安全的重要手段。
區(qū)塊鏈是新興的信息化技術,具有信息可靠、去數據中心化、公正透明等特點,這為解決農產品溯源提供了可能,實現了農產品數據從種植、生產、加工、物流、銷售全過程的追溯管理,保護了企業(yè)和廣大消費者的合法權益,具有積極的社會意義。
文中通過對農產品供應鏈管理流程的分析,參照相關全流程追溯體系,構建以區(qū)塊鏈技術為基礎的農產品溯源平臺,以期形成一套來源可追溯、去向可查證、責任可追究的安全信息追溯閉環(huán)管理模式。
1 技術分析
區(qū)塊鏈(Blockchain)是由多方共同維護,以密碼學的方式確保數據傳輸和訪問安全,實現數據不可篡改、不可偽造、難以抵賴的分布式賬本(Distributed Ledger Technology)[1]。它利用分布式節(jié)點共識算法生成和更新數據,采用智能合約的分布式基礎架構與計算范式。
區(qū)塊鏈加密算法包括哈希(Hash)算法、非對稱加密算法、數字簽名等,其中經典的案例就是使用默克爾樹(Merkle樹)對區(qū)塊鏈上的區(qū)塊進行哈希運算,從而方便區(qū)塊的查詢與追溯。區(qū)塊鏈作為分布式系統,現在常用的共識算法包括工作量證明PoW(Proof of Work)、權益證明PoS(Proof of Stake)、股份授權證明DPoS(Delegated Proof of Stake)、實用拜占庭容錯PBFT(Practical Byzantine Fault Tolerance)[2]等算法。區(qū)塊鏈使用的網絡則是P2P (Peer-to-Peer Networking)對等網絡,通過分布式節(jié)點來對區(qū)塊進行廣播。對于區(qū)塊鏈而言,智能合約至關重要,它就是部署在區(qū)塊鏈上的鏈碼,一旦部署所有參與節(jié)點都應嚴格按照既定邏輯執(zhí)行,它是連接業(yè)務系統與區(qū)塊鏈之間的橋梁。
因此,運用區(qū)塊鏈技術特點研究構建農產品溯源平臺,在農產品的供應鏈過程中,從生產源頭開始把控農產品質量安全,幫助農產品生產企業(yè)提高質量管理水平,保障消費者的合法權益,提升消費者的信任度,同時也為推進農產品質量安全信息化監(jiān)管發(fā)揮重要的作用。
2 系統框架
基于區(qū)塊鏈技術的農產品溯源系統應用區(qū)塊鏈中的“聯盟鏈”的形式,由若干個授權的主要節(jié)點共同管理,系統架構由數據層、合約層以及應用層三個部分組成[3],見圖1系統架構圖。
數據層包括數據接入子層和數據服務子層。數據接入子層主要包含農產品供應鏈主體上經過共識機制認證的要上傳的相關數據,如種植、加工、包裝、檢驗檢測、倉儲、運輸、銷售等數據。上傳的數據應遵循區(qū)塊鏈格式和加密傳遞機制,分布式存儲在數據區(qū)塊之中,并按照時間戳鏈接。數據服務子層主要功能是將接入子層采集的數據信息進行分布式存儲,并通過加密和身份認證機制保證數據安全,為應用層提供數據服務。
智能合約是安裝在區(qū)塊鏈上的鏈碼,主要作用是提供操作區(qū)塊鏈服務的接口,起著橋梁的作用,數據接入子層和應用層通過合約層向區(qū)塊鏈數據服務子層寫入和讀取數據。合約層基于PoW、PoS、DPoS、PBFT等共識算法,使農產品溯源系統各節(jié)點數據達成有效共識。各節(jié)點經由聯盟審批之后方可加入區(qū)塊鏈,聯盟審核的內容應包含各節(jié)點組織主體的生產和經營等方面的資質,保證各參與聯盟組織合法合規(guī)。
應用層包括各節(jié)點的應用系統平臺、消費者和監(jiān)管部門App查詢終端等。平臺采用B/S技術框架,平臺通過掃描查詢功能,向政府、企業(yè)和消費者用戶提供農產品信息查詢服務,對溯源整個流程中各項數據資源的具體業(yè)務應用,提供企業(yè)管理、檢測機構管理、監(jiān)管機構管理、溯源產品管理、數字證書等應用功能。
3 設計與實現
3.1 功能設計
農產品溯源平臺總體功能為種植戶、生產加工企業(yè)、檢測機構、物流公司、銷售部門將采集到的相關數據存儲到區(qū)塊鏈數據庫里,經平臺后端數據整理后發(fā)布到平臺前端,用戶可通過智能手機微信對農產品的溯源碼進行掃描,系統根據不同用戶權限要求,將相關信息展示給用戶。
平臺按其功能設計,分為用戶管理功能、數據上傳功能、信息溯源功能。用戶管理功能是平臺用戶按照各自身份角色注冊信息,上傳至區(qū)塊鏈上,注冊登記成功后每次登錄需要進行身份驗證,驗證通過后方可進入農產品溯源系統平臺;數據上傳功能是將農產品生產、加工、檢測、物流、銷售等信息上傳至區(qū)塊鏈網絡,當節(jié)點用戶發(fā)起上傳數據請求時,先執(zhí)行智能合約,在數據廣播到區(qū)塊鏈網絡前,通過共識算法達成一致,生成有效區(qū)塊,最后再將區(qū)塊廣播給其他節(jié)點;信息溯源功能是指將消費者、監(jiān)管部門、檢測機構、供應鏈各參與方通過客戶端追溯查詢有關農產品生產、加工、檢測、物流、銷售等環(huán)節(jié)的信息。
3.2 溯源設計
文中基于Hyperledger Fabric技術思想對農產品溯源流程進行設計[4]。溯源流程主要包括種植、加工、檢測、物流、銷售五個環(huán)節(jié),將每個環(huán)節(jié)視為一個組織(Org),每個組織對應區(qū)塊鏈上的一個節(jié)點(Peer),每個節(jié)點獨立上傳數據,通過共識機制同步到鏈上其他節(jié)點,最終達成具有信息共識的區(qū)塊鏈數據。消費者和政府監(jiān)管部門通過客戶端查詢,實現全方位的農產品溯源追蹤,借助區(qū)塊鏈共享、難篡改、發(fā)布式存儲等特性,獲取該農產品的真實信息,從而達到溯源平臺數據公正、透明、可靠的目的,具體流程圖如圖2所示。
農產品種植養(yǎng)殖基地通過傳感控制技術及時掌握水文、土壤、溫濕度、氧濃度、施肥、光照等場地信息,第一時間收集上傳到系統中。加工企業(yè)和物流公司在節(jié)點端利用RFID射頻識別技術實現企業(yè)、員工、物流運輸等領域的管理。另外,在每一個產品的最小銷售包裝上都提供一個全球唯一的溯源二維碼,從而實現“一品一碼”精準溯源。銷售商、檢測機構、監(jiān)管部門、消費者通過二維碼鏈接到區(qū)塊鏈平臺查詢和輸入相關數據信息,同時利用大數據監(jiān)測技術,防止二維碼被仿冒復制,避免假冒偽劣產品在市場上出現,從而確保了農產品的質量安全。
3.3 數據標準設計
數據標準設計是區(qū)塊鏈系統平臺數據匯聚和共享的基礎。近幾年,諸多農產品溯源系統的相繼出現為農產品全流程數據采集匯聚,以及跨行業(yè)、跨地域、跨組織的數據開放共享和交易流通提供了技術基礎。但普遍出現數據接口不統一、數據質量偏低、“數據孤島”和“沉睡數據”等現象,因此推動數據接口、數據格式、數據開放共享等標準制定能夠改善數據采集流程和質量,統一數據接口和格式,暢通數據匯聚渠道,規(guī)范數據開放共享和交易流通活動,進而實現高質量的數據匯聚和有序的數據流通共享。
本平臺設計主要針對數據技術底層相關要素進行規(guī)范,包括數據資源和數據應用。其中,數據資源包括元數據、數據元素、數據目錄等;數據應用包括數據共享、數據開放和數據交易。具體包括對農產品種植、加工與包裝、物流與倉儲、銷售四個環(huán)節(jié)的數據信息進行數據格式規(guī)范,對農產品追溯過程中上鏈數據的共享和交易提供統一的開放接口,并對上鏈數據實行脫敏脫密處理,從而在頂層設計上對數據進行統一管理。
3.4 開發(fā)實現
文中研究的農產品溯源系統使用的操作系統為Ubuntu 18.04.5,區(qū)塊鏈平臺為Hyperlegr Fabric 1.0,使用Docker容器技術構建分布式網絡,鏈碼則是基于go語言來實現。鏈碼安裝之前先創(chuàng)建通道,通過通道將各個節(jié)點連接在一起形成聯盟鏈,然后再通過節(jié)點設置工具將鏈碼安裝在對應節(jié)點上面,最后通過鏈碼對區(qū)塊鏈進行讀寫操作。
4 安全保障
為保障平臺安全、可靠、平穩(wěn)運行,對密碼、共識機制、成員服務、接口技術、網絡安全作出必要的規(guī)定和要求[5]。
4.1 密碼應用要求
平臺使用的加密算法應當符合密碼相關國家標準、行業(yè)標準的有關規(guī)定;使用的密碼產品和密碼服務應通過國家密碼管理部門核準許可;溯源數據應進行過脫敏或加密處理;使用密碼技術對節(jié)點和用戶進行身份鑒別時,應能保證身份的唯一性和真實性。
4.2 共識機制要求
共識機制應安全、可靠,并具有一定的容錯性;還應能滿足應用場景的一致性要求,如強一致性、最終一致性,對于最終一致性算法,應具備滿足業(yè)務需求的收斂速度和確認時間;共識機制宜具備分叉管理能力,防止分叉導致的安全問題,如重放攻擊等;共識機制應保證公平,不存在后門,防止特殊人員為了特殊目的干擾共識機制的達成邏輯,從而形成有利于特定人員的共識結論;記賬權應合理分配,避免被壟斷。
4.3 成員服務要求
農產品溯源平臺根據業(yè)務需求提供相應的權限管理功能,提供隱私保護功能,如支持通過認證機構代理用戶在區(qū)塊鏈上進行事務處理,支持將數據的傳輸限制在特定授權節(jié)點間,支持用加解密方法對用戶數據的訪問采用權限控制,支持對事務發(fā)起方/接收方的信息及事務信息本身進行信息隱藏;平臺應遵循最小化授權原則,設定權限控制,如無必要,不設立高度集權的特權賬戶。
4.4 接口技術要求
平臺接口遵循權限最小化原則,對外公開的接口應將其能進行的操作最小化;宜對接口訪問權限進行等級劃分,針對不同用戶配置不同的訪問權限。
4.5 網絡安全要求
網絡應當符合網絡安全相關國家標準、行業(yè)標準的有關要求;對于P2P通信過程宜用采用本地的、自主的、雙向的認證和授權;數據的傳輸應限制在特定授權節(jié)點間,確保數據和信息在傳輸過程中不被非授權用戶讀取和篡改;設定系統的最佳節(jié)點數量和最低警戒數量,并在實際運行時實時監(jiān)測節(jié)點在線情況,預測和預警平臺安全狀態(tài)。
5 結語
文中針對農產品溯源存在的需求和問題,采用區(qū)塊鏈技術將農產品種植、加工、包裝、流通、銷售、監(jiān)管等環(huán)節(jié)數據上鏈,構建了農產品區(qū)塊鏈溯源系統平臺,通過有效的安全保障措施,解決傳統溯源技術方案中的數據中心化、信息可靠性低、溯源無法準確定位等問題,從而實現農產品全生命周期追溯管理。平臺的建成為區(qū)塊鏈技術在農產品溯源中的應用提供了有益的參考,對于農業(yè)產業(yè)發(fā)展可以起到一定的促進和推動作用。
參考文獻
[1]于合龍,陳邦越,徐大明等.基于區(qū)塊鏈的水稻供應鏈溯源信息保護模型研究[J].農業(yè)機械學報,2020,51(08):328-335.
[2]范捷,易樂天,舒繼武.拜占庭系統技術研究綜述[J].軟件學報,2013,24(6):1346-1360.
[3]柳祺祺,夏春萍.基于區(qū)塊鏈技術的農產品質量溯源系統構建[J].高技術通訊,2019,29(03):240-248.
[4]段冉陽,周文輝,魏驍,等.基于Hyperledger Fabric的食品溯源系統設計與實現[J].電子技術應用,2021,47(03):55-60.
[5]劉芳,史月蓉,孫夢,等.基于區(qū)塊鏈的農產品溯源系統數據安全的研究[J].電腦知識與技術,2019,15(32): 66-68.