999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Hyperledger Fabric 的食品溯源系統設計與實現

2021-04-02 03:44:14段冉陽周文輝
電子技術應用 2021年3期
關鍵詞:信息系統

段冉陽,周文輝,魏 驍,王 龍

(華北計算機系統工程研究所,北京100083)

0 引言

食品安全溯源體系是指在食品產供銷的各個環節(包括種植養殖、生產、流通以及銷售與餐飲服務等)中,食品質量安全及其相關信息能夠被順向追蹤(生產源頭-消費終端)或者逆向回溯(消費終端-生產源頭),從而使食品的整個生產經營活動始終處于有效監控之中[1]。 但目前使用的食品溯源技術方案仍然以傳統記錄方式為主,存在以下幾方面的問題:

(1)數據共享仍然缺乏[2]。 目前食品安全溯源主要依托于物流網絡等進行實現,但物流信息僅僅是整個供應鏈上的部分信息,供應鏈中如食品生產信息、包裝信息等無法進行記錄和追溯,而這些信息的完整性與真實性對于增加產品的可信度有著極大的幫助。更多的信息錄入可以讓消費者能夠更完整、更直觀地了解到產品從產生到消費的全部流程,讓更多的參與方加入進來,在提高產品溯源信息完整性的同時,加入更多的背書主體,提高產品溯源信息的真實性與可靠性。

(2)信息存儲中心化[3]。 在目前主流的產品溯源供應鏈中,主要采用中心化的信息存儲模式,需要參與產品供應鏈上的某一方進行管理和維護。 但是,不論是生產方、運輸方還是銷售方,均為產品供應鏈上的利益相關方,當有不利于其自身的信息產生時,很有可能出現篡改賬本或者謊稱賬本信息由于技術原因而丟失的情況出現,很難保證產品溯源信息的真實性和有效性。

(3)信息存儲孤島化[4]。 目前主流的系統在整個商品供應鏈中,存在信息孤島問題。通常情況下,參與產品供應鏈的各方具有多個不同的信息系統,各個信息系統之間很難進行交互,這會導致信息同步困難、信息核對繁瑣、數據交互不均衡等問題,為日后的使用埋下諸多隱患。 尤其是隨著使用時間增長,產品溯源系統產生的數據量增多,對多個系統的重復審計成本也將大大增加。

區塊鏈技術被認為是近年來最具顛覆性和革命性的創新之一[5],已在金融、貿易[6]、物流[7]、征信[8]、公益、物聯網、共享經濟等諸多領域嶄露頭角[9],其本質上是提供信任保障的技術,具有去中心、自動化和可信任的理念與特性,能提供較為有效的數據保護[10],十分契合人們對新型食品安全溯源系統的需求。 因此,為了解決上述傳統食品溯源系統中存在的問題,本文提出一種基于區塊鏈技術的食品溯源系統設計方案。

1 典型區塊鏈技術比較與選型

1.1 區塊鏈選型

區塊鏈技術發展到現在,形成了多樣的區塊鏈體系,其中最具代表性的區塊鏈體系有3 個:比特幣系統中使用的比特幣(Bitcoin) 區塊鏈系統[11]、 以太坊(Ethereum)區塊鏈[12]和在2015 年由Linux 基金會發起的超級賬本(Hyperledger Fabric)開源區塊鏈項目[13]。 下面將從區塊鏈性質、共識算法及運行模式、智能合約和貨幣類型,綜合食品安全溯源的實際使用需求,對上述3 種區塊鏈系統進行比較。 3 種區塊鏈特點如表1 所示。

表1 3 種典型區塊鏈特點對比表

現今食品溯源系統中,數據種類十分復雜且數量龐大[14],同時根據不同的食品,相關溯源信息需要不斷變更,這要求使用的區塊鏈系統具備較靈活的數據存儲系統和智能合約系統,通過對不同種類食品的智能合約的編寫,達到對食品數據的精確統計;同時,參與食品溯源系統中的各個參與方本身均為傳統供應鏈上的合作方,在現實中存在一定的信任關系,有著一定程度的信任積累,且供應鏈上各個供應方相對固定,無需面對整個公共網絡,存在惡意節點的可能性比較小;另外,由于供應鏈上參與方較多,各參與方需要寫入和維護的數據比較復雜,因此需要更快的區塊產生速度和更高效的區塊鏈網絡。

針對以上食品溯源系統的使用特點,綜合3 種區塊鏈技術的特點進行分析,Hyperledger Fabric 區塊鏈網絡的特點和優勢十分契合食品安全溯源體系的實際情況和使用需求。 因此,本文采用Hyperledger Fabric 區塊鏈系統作為底層架構,對基于區塊鏈的食品安全溯源系統進行設計與實現。

1.2 食品溯源樣例選型原因

在區塊鏈與溯源系統相結合的研究中,相關從業人員也進行了許多積極的嘗試,但大都集中在貴重物品溯源與單一物品溯源中,首先信息量相對較小,同時需要管理的產品數量并不大,因此所有溯源信息往往在一個賬本中進行維護。 本文旨在利用Hyperledger Fabric 的多賬本、模塊化等特性,對日常食品的溯源系統進行構建,在一定程度上增加整個溯源系統的靈活性,提高整體溯源系統的效率和數據吞吐能力。

食品溯源系統的主要溯源對象為消費者經常購買的食品,選擇的溯源食品種類應當對食品原材料來源、加工生產過程、運輸條件等有較高要求。 牛奶作為日常飲食的一種,深受各類人群,尤其是老年人和青少年兒童的喜愛。 但是由于目前生產鮮牛奶的廠商眾多,目前市場流通的鮮牛奶品質良莠不齊,同時鮮牛奶容易變質,需要相對嚴格的存儲和運輸環境,當產生產品質量問題時,傳統記錄手段很難對相關責任人進行定位。 因此,消費者們對鮮牛奶的食品溯源有著極大的需求,下面就以某品牌鮮牛奶為例,構建基于Hyperledger Fabric區塊鏈的食品溯源系統。

2 基于Hyperledger Fabric 的食品安全溯源系統設計

2.1 整體模型

基于上文的分析,利用Hyperledger Fabric 聯盟區塊鏈技術構建基于區塊鏈的食品安全溯源系統,系統的整體模型如圖1 所示。

在圖1 中,列舉了直接參與牛奶食品供應鏈的食品生產方、運輸方、加工方以及銷售方,同時引入消費者和監管方進行實時的查詢和監管等操作。 每個參與方在實際的區塊鏈網路體系中為一個組織(Org),每個組織中可以根據實際信息錄入情況設置節點(Peer),每個組織中至少包含一個節點。各個節點負責對各自的相關信息,如原料采集信息、分裝加工信息、物流信息以及銷售信息等進行錄入,錄入的信息經智能合約判斷合法后,通過區塊鏈節點上鏈,各個區塊鏈節點同步交易信息,進行區塊生成,形成共識的區塊鏈數據。消費者和相關監管部門利用區塊鏈節點進行相關信息的管理、查詢等操作,使整個食品供應鏈上的食品安全數據全過程真實、透明、不可篡改,達到食品安全信息可追溯、可查詢、可信任的目的。

根據參與方分工的不同,各個參與方對應節點也具備不同的功能,并對牛奶溯源過程中的相關數據進行寫入和維護。下面對各個參與方對應的組織和節點進行設置,同時定義各個組織需要寫入和維護的數據信息。 各個參與方對應的組織和節點如表2 所示。

2.2 軟件架構

圖1 基于Hyperledger Fabric 區塊鏈的食品安全溯源系統整體模型

表2 各參與方與組織對應關系表

根據上文所述的基于區塊鏈的食品安全溯源系統整體模型,進行該系統軟件架構設計。 軟件架構整體分為三大部分[15],分別為基礎層、數據層和應用層。基礎層為Fabric 區塊鏈基礎框架;數據層主要包括分布式數據存儲、共識機制、智能合約、鏈碼以及相關交易數據,同時提供權限管理等功能;應用層主要利用Fabric 區塊鏈網絡提供的各種語言版本的SDK 進行功能的編寫和調用,包括溯源信息錄入、溯源信息查詢、溯源信息監管等操作。 食品溯源系統軟件架構圖如圖2 所示。

圖2 食品溯源系統軟件架構圖

2.3 交互操作

基于上文所述的食品安全溯源系統的整體模型和軟件架構,利用Hyperledger Fabric 區塊鏈技術的特點,可以實現相關食品安全信息的基本操作,包括信息錄入、信息更新、信息監管以及信息查詢等功能,各參與方根據實際需求,通過相關的管理應用與相應區塊鏈系統進行交互,完成整體食品安全溯源系統的功能實現,食品溯源系統基本交互操作示意圖如圖3 所示。

圖3 食品溯源系統基本交互操作示意圖

同時,利用Hyperledger Fabric 區塊鏈體系對智能合約的支持,可以根據實際的使用情況,對具體的應用場景進行專用的智能合約編寫,相關參與方進行協商確定觸發條件,利用智能合約自動執行的特點,自動化地執行相關信息的上聯操作,簡化工作步驟和工作流程,在提高整體工作效率的同時,降低人為參與的風險,提高數據的有效性。智能合約工作原理示意圖如圖4 所示。

圖4 智能合約工作原理示意圖

3 基于Hyperledger Fabric 的食品溯源系統設計

3.1 Hyperledger Fabric 基本組成及技術原理

Hyperledger Fabric 由五大核心模塊組成,分別為peer、orderer、cryptogen、configtxgen 以及configtxlator。 其中,peer和orderer 屬于系統模塊,主要構成Hyperledger Fabric 的基礎系統,直接參與系統的運行,并以守護進程的方式在 后 臺 長 期 運 行;cryptogen、configtxgen 和configtxlator 屬于工具模塊,主要負責區塊鏈系統中的包括證書文件、創世區塊等相關文件的生成以及完成相關區塊鏈操作等工作,不直接參與系統運行。Hyperledger Fabric 五大核心模塊的基本功能如表3 所示。

利用上述五大核心模塊,可以構建Hyperledger Fabric聯盟區塊鏈的基礎區塊鏈網絡,該網絡由Fabric-CA、peer 節點和orderer 節點3 個基本組成部分構成,各個peer 節點可以根據功能不同細分為不同種類,并組成組織(Org)。

表3 Hyperledger Fabric 核心模塊基本功能表

peer 節點與orderer 節點構成了基本的區塊鏈網絡之后,下一步需要對相關交易數據進行處理和上鏈,對已完成的交易和上鏈數據進行存儲,并保證每個peer 節點的數據存儲是一致的,這一過程成為共識達成。 Hyper-Ledger Fabric 區塊鏈系統中的共識達成基本過程如圖5所示。

Hyperledger Fabric 區塊鏈系統共識達成過程分為以下4 個基本步驟:

(1)由區塊鏈中的一個節點peer0(領導節點)發起交易,交易中含有相關交易內容以及peer0 的數字簽名,交易信息會根據該交易定義的相關節點(這里假設相關節點為peer1、peer2 以及peer3)信息進行廣播;

(2)相關背書節點peer1、peer2 以及peer3 對交易的內容以及peer0 的簽名進行驗證,保證該交易的有效性和合法性;

(3)peer0 等待交易的背書結果,當結果滿足交易要求時,peer0 向orderer 節點集群提交該筆交易, 排序節點根據相關排序算法對交易進行排序;

(4)一段時間后,orderer 節點集群將這段時間內的所有交易排序打包,形成交易區塊并進行廣播,所有提交節點接收交易區塊并生成賬本信息, 實現交易數據的上鏈操作。

圖5 Hyperledger Fabric 區塊鏈系統共識達成過程

3.2 食品溯源系統設計

對基于Hyperledger Fabric 的食品溯源系統的設計共分為三部分, 分別為網絡模塊設計、 智能合約模塊設計以及接口模塊設計。

網絡模塊設計主要建立牛奶溯源系統的區塊鏈內部邏輯,牛奶溯源系統的區塊鏈內部邏輯結構如圖6 所示。

參與到整個牛奶溯源系統中的參與方分別為生產方、加工方、運輸方以及銷售方,每個參與方用一個組織進行代表, 每個組織中設置一個節點模擬實際工作情況,對牛奶溯源相關數據進行維護和修改等操作。 各參與方與區塊鏈組織對應關系如表2 所示。

圖6 牛奶溯源系統的區塊鏈內部邏輯結構圖

智能合約模塊設計主要包括各參與方的鏈碼名稱命名命及工作內容確定。首先根據牛奶溯源系統中的實際環境和工作內容,設置溯源系統中的各個參與方需要維護的牛奶信息種類,確定智能合約的名稱,具體對應關系如表4 所示。

表4 各參與方維護信息對應表

在本系統中,共需要記錄牛奶的7 項信息。 確定了智能合約的名稱和對應功能,對智能合約實現功能進行設計,主要設計以下幾個功能:

(1)queryMilk():該功能實現對牛奶溯源信息的查詢,需要傳入1 個參數,參數為牛奶編號(如Milk1),查詢結果返回Milk1 對應的相關信息;

(2)createMilk():該功能需要傳入共8 個參數,第一個參數為需要創建的牛奶編號,其余7 各參數分別對應牛奶溯源系統中的7 項數據;

(3)changedata():該功能實現對指定牛奶相關信息的修改,需要傳入3 個參數,第1 個參數指定需要修改的牛奶編號,第2 個參數指定需要修改的信息標簽,第3個參數為具體修改的值;

(4)getMilkHistory():該功能實現對指定牛奶的所有歷史信息進行查詢,包括信息錄入或修改的記錄,實現對該牛奶的溯源需求,需要傳入1 個參數,指定想要查詢的牛奶編號。

接口模塊設計主要通過Fabric-Nodejs-SDK 進行實現,主要分為兩個部分,分別為query.js 腳本與invoke.js腳本。 query.js 腳本主要調用queryMilk()和getMilkHistory()兩種功能;invoke.js 腳本主要調用createMilk()和changedata()兩種功能。

4 食品溯源系統實現及測試

4.1 食品溯源系統實現

Hyperledger Fabric 的牛奶溯源系統搭建的硬件環境采用Ubuntu 虛擬機完成,利用Docker 容器模擬多機環境進行封裝,具體性能如表5 所示。

表5 系統搭建硬件環境

系統搭建的軟件環境如表6 所示。

環境搭建完成后,利用Hyperledger Fabric 提供的5 個核心模塊對牛奶溯源系統進行實際搭建。

4.2 原型系統測試

基于Hyperledger Fabric 的牛奶溯源系統搭建完成后,以Milk1 為例,對相關功能進行測試。

表6 系統搭建軟件環境

(1)createMilk():創建Milk1,并對Milk1 中的所有溯源信息置空;

(2)queryMilk():對Milk1 進行查詢,結果如圖7 所示,可以看出Milk1 已經被創建,且所有溯源信息均為空;

圖7 Milk1 查詢結果(未錄入)

(3)changedata():對Milk1 中的相關數據進行寫入,并再次進行queryMilk()操作,結果如圖8 所示,可以看出Milk1 的相關信息已經改變,溯源信息不再為空;

圖8 Milk1 查詢結果(已錄入)

(4)getMilkHistory():對Milk1 的歷史信息進行查詢,部分結果如圖9 所示。

圖9 Milk1 歷史記錄查詢結果(部分)

完成基本功能測試后,對本文設計的牛奶溯源系統進行性能測試,利用多次讀寫的方式對牛奶溯源系統進行測試。

編寫腳本對本系統進行重復寫入操作,寫入次數500 次,實測區塊生成平均時長均小于3 s;編寫腳本對牛奶溯源信息進行重復讀取操作,讀取次數500 次,未發生錯誤,具備一定的可用性。

5 結論

本文研究了一種基于Hyperledger Fabric 區塊鏈的食品溯源系統,分析了目前的食品溯源系統存在的問題;同時,對現今主流的區塊鏈系統進行篩選,選定Hyperledger Fabric 聯盟區塊鏈平臺構建食品溯源系統并進行實際搭建;搭建完成后對食品溯源系統中的相關功能進行了模擬測試,并對整個系統進行了簡單的性能測試。

跟據測得的結果,本文提出的基于Hyperledger Fabric區塊鏈的食品溯源系統基本滿足當前消費者對食品溯源系統的需求,解決了傳統食品溯源系統中存在的數據量缺乏、存儲信息中心化等問題,保證了食品溯源數據的完整性、有效性與不可篡改性。

猜你喜歡
信息系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統
半沸制皂系統(下)
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
展會信息
中外會展(2014年4期)2014-11-27 07:46:46
信息
建筑創作(2001年3期)2001-08-22 18:48:14
健康信息
祝您健康(1987年3期)1987-12-30 09:52:32
主站蜘蛛池模板: 91破解版在线亚洲| 日韩在线观看网站| 国产精品无码影视久久久久久久| 精品91在线| 91精品专区| 亚洲日韩国产精品无码专区| 一区二区无码在线视频| 国产成人免费视频精品一区二区| 欧美一级高清片欧美国产欧美| 日韩经典精品无码一区二区| 久久影院一区二区h| 强奷白丝美女在线观看| 久久久久久久蜜桃| 孕妇高潮太爽了在线观看免费| 99久久精品免费视频| 国产成人久久综合777777麻豆| 国产精品不卡永久免费| 中文字幕在线一区二区在线| 无码中文字幕乱码免费2| 在线欧美一区| 亚洲日韩精品伊甸| 在线观看欧美精品二区| 99久久国产综合精品女同| 又大又硬又爽免费视频| 欧美成a人片在线观看| a级毛片免费网站| 色色中文字幕| 国产丝袜91| 全部免费特黄特色大片视频| 欧类av怡春院| 日韩午夜福利在线观看| 亚洲娇小与黑人巨大交| 亚洲a免费| 波多野结衣国产精品| 亚洲A∨无码精品午夜在线观看| 99草精品视频| 久久综合成人| 国产在线高清一级毛片| 22sihu国产精品视频影视资讯| 特级做a爰片毛片免费69| 91美女视频在线| 欧美精品在线视频观看| 91在线播放免费不卡无毒| 欧美亚洲国产精品久久蜜芽| 色AV色 综合网站| 欧美一区国产| 午夜日本永久乱码免费播放片| 欧美一级专区免费大片| 国产精品视频a| 91麻豆精品视频| 亚洲中文字幕av无码区| 91青青草视频在线观看的| 在线观看国产一区二区三区99| 国产成人高清亚洲一区久久| 伊人色在线视频| 一级毛片在线播放| 免费xxxxx在线观看网站| 国产精品免费p区| 亚洲天堂啪啪| 亚洲有码在线播放| 日韩欧美国产成人| 福利片91| 欧美日韩动态图| av色爱 天堂网| 麻豆国产在线观看一区二区| 国产va在线观看| 欧美中文字幕一区二区三区| 亚洲人成网7777777国产| 小说 亚洲 无码 精品| 91午夜福利在线观看精品| 亚洲人成影视在线观看| 久久狠狠色噜噜狠狠狠狠97视色 | 亚洲成a人片在线观看88| 亚洲精品日产精品乱码不卡| 中文毛片无遮挡播放免费| 国产欧美亚洲精品第3页在线| 99视频精品全国免费品| 国产情精品嫩草影院88av| 亚洲中文精品久久久久久不卡| 人妻无码中文字幕一区二区三区| 超碰91免费人妻| 国产精品亚洲αv天堂无码|