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

基于智能合約和數(shù)字簽名的馬鈴薯種薯防竄溯源研究

2023-07-31 08:29:30孫傳恒魏玉冉徐大明李登奎
關(guān)鍵詞:培育生產(chǎn)

孫傳恒 魏玉冉 邢 斌 徐大明 李登奎 張 航

(1.天津農(nóng)學(xué)院計(jì)算機(jī)與信息工程學(xué)院, 天津 300384; 2.國家農(nóng)業(yè)信息化工程技術(shù)研究中心, 北京 100097;3.農(nóng)產(chǎn)品質(zhì)量安全追溯技術(shù)及應(yīng)用國家工程實(shí)驗(yàn)室, 北京 100097)

0 引言

馬鈴薯在全球重要糧食作物中排名第4位,也是我國主要糧經(jīng)作物[1]。近年來,我國產(chǎn)業(yè)結(jié)構(gòu)調(diào)整,使得馬鈴薯產(chǎn)業(yè)在國民經(jīng)濟(jì)增長中的占比越來越重,馬鈴薯主糧化戰(zhàn)略已經(jīng)啟動(dòng)[2]。但我國馬鈴薯整體生產(chǎn)水平仍然較低,這主要是因?yàn)槲覈N薯質(zhì)量不高,直接影響了馬鈴薯的最終產(chǎn)量和質(zhì)量[3]。因此,研究馬鈴薯種薯的生產(chǎn)溯源,通過信息技術(shù)提高種薯的產(chǎn)量及質(zhì)量,對(duì)加快我國馬鈴薯產(chǎn)業(yè)化、主糧化進(jìn)程有著重大意義[4]。

我國馬鈴薯種薯生產(chǎn)全環(huán)節(jié)流程復(fù)雜、周期較長、品種繁多,對(duì)種薯生產(chǎn)溯源數(shù)據(jù)進(jìn)行信息化記錄的技術(shù)儲(chǔ)備不健全,導(dǎo)致種薯溯源困難[5]。對(duì)此,相關(guān)研究人員提出了一些傳統(tǒng)溯源解決方案。文獻(xiàn)[6]采用數(shù)據(jù)庫、二維碼等技術(shù)創(chuàng)建溯源平臺(tái),實(shí)現(xiàn)對(duì)馬鈴薯種薯全供應(yīng)鏈的溯源。文獻(xiàn)[7]通過對(duì)馬鈴薯進(jìn)行連續(xù)3年的跟蹤監(jiān)測,建立了基于穩(wěn)定同位素和礦質(zhì)元素的馬鈴薯產(chǎn)地溯源模型,并開發(fā)了馬鈴薯質(zhì)量信息識(shí)別與產(chǎn)地溯源專家系統(tǒng)。文獻(xiàn)[8]使用射頻識(shí)別技術(shù)和二維碼技術(shù)達(dá)到防偽防竄貨目的,對(duì)整個(gè)供應(yīng)鏈進(jìn)行全過程監(jiān)控。然而,傳統(tǒng)質(zhì)量溯源通過中心化平臺(tái)來進(jìn)行,生產(chǎn)溯源數(shù)據(jù)的存儲(chǔ)方式為集中式存儲(chǔ),溯源數(shù)據(jù)易被篡改[9]。區(qū)塊鏈技術(shù)是分布式的網(wǎng)絡(luò)架構(gòu)[10],網(wǎng)絡(luò)中的所有節(jié)點(diǎn)遵守統(tǒng)一的共識(shí)機(jī)制,共同維護(hù)一個(gè)區(qū)塊鏈賬本,所有交易操作均會(huì)被記錄,篡改某數(shù)據(jù)非常困難[11]。近年來,隨著區(qū)塊鏈技術(shù)在農(nóng)業(yè)領(lǐng)域的迅速發(fā)展,文獻(xiàn)[12]采用“區(qū)塊鏈+數(shù)據(jù)庫”的雙存儲(chǔ)模式,實(shí)現(xiàn)紅茶從茶園到茶桌的全程可信溯源。文獻(xiàn)[13]提出一種高效且低成本運(yùn)行的方法,利用公有鏈和私有鏈兩套區(qū)塊鏈確保溯源數(shù)據(jù)的真實(shí)可靠。文獻(xiàn)[14]設(shè)計(jì)出基于區(qū)塊鏈智能合約的框架,用于記錄農(nóng)作物生長、流通等數(shù)據(jù),旨在消除供應(yīng)鏈企業(yè)間的信息孤島。文獻(xiàn)[15]使用嵌入式控制等物聯(lián)網(wǎng)技術(shù)與區(qū)塊鏈相結(jié)合實(shí)現(xiàn)防篡改、透明化、可溯源的農(nóng)產(chǎn)品溯源系統(tǒng)。文獻(xiàn)[16]結(jié)合以太坊智能合約和星際文件系統(tǒng)(InterPlanetary file system,IPFS)管理和控制供應(yīng)鏈生態(tài)系統(tǒng)中所有參與者之間的交互和交易,并在大豆供應(yīng)鏈方面實(shí)現(xiàn)了溯源應(yīng)用。文獻(xiàn)[17]設(shè)計(jì)出一種基于邊緣計(jì)算和區(qū)塊鏈的防偽溯源模型,并采用離散波長轉(zhuǎn)換和遺傳算法來提高系統(tǒng)的安全性,優(yōu)化系統(tǒng)的性能。文獻(xiàn)[18]提出了“On-Chain+Off-Chain”的農(nóng)產(chǎn)品質(zhì)量安全溯源策略,降低鏈上存儲(chǔ)空間壓力的同時(shí)實(shí)現(xiàn)了農(nóng)產(chǎn)品供應(yīng)鏈之間溯源信息的真實(shí)可靠。文獻(xiàn)[19]通過智能合約實(shí)現(xiàn)果蔬農(nóng)產(chǎn)品溯源模型,并提出了對(duì)稱加密與橢圓曲線混合加密的隱私數(shù)據(jù)授權(quán)訪問方法,實(shí)現(xiàn)供應(yīng)鏈各企業(yè)間隱私數(shù)據(jù)的隔離存儲(chǔ)。根據(jù)文獻(xiàn)表明,眾多區(qū)塊鏈技術(shù)研究人員研究農(nóng)產(chǎn)品和食品安全溯源相關(guān)領(lǐng)域[20-22],實(shí)現(xiàn)全食品業(yè)和農(nóng)業(yè)生產(chǎn)信息透明化和共享數(shù)據(jù)精準(zhǔn)化[23],從源頭解決食品和農(nóng)產(chǎn)品質(zhì)量安全問題是未來的發(fā)展趨勢[24]。然而,將區(qū)塊鏈技術(shù)應(yīng)用于馬鈴薯種薯的生產(chǎn)溯源方面的研究較少。此外,種薯生產(chǎn)期間的實(shí)物形態(tài)差異化明顯[25],在生產(chǎn)過程中易出現(xiàn)品種、等級(jí)等竄貨問題,將區(qū)塊鏈技術(shù)應(yīng)用于馬鈴薯種薯生產(chǎn)溯源時(shí),還應(yīng)考慮其生產(chǎn)竄貨問題。

針對(duì)上述問題,結(jié)合分析馬鈴薯種薯生產(chǎn)過程中的關(guān)鍵環(huán)節(jié)及溯源數(shù)據(jù),本文提出一種基于智能合約[26-27]和數(shù)字簽名[28-29]的馬鈴薯種薯防竄與溯源方法,為種薯整個(gè)生產(chǎn)環(huán)節(jié)設(shè)計(jì)一條溯源區(qū)塊鏈。以智能合約和數(shù)字簽名為實(shí)現(xiàn)方式,解決種薯的生產(chǎn)竄貨問題,并保障種薯各項(xiàng)生產(chǎn)溯源數(shù)據(jù)的安全可靠,最終提高種薯生產(chǎn)基地的整體生產(chǎn)效率。采用Raft共識(shí)機(jī)制[30]實(shí)現(xiàn)區(qū)塊鏈間的節(jié)點(diǎn)共識(shí),每個(gè)環(huán)節(jié)作為種薯區(qū)塊鏈中的聯(lián)盟組織,每個(gè)聯(lián)盟組織中都包含多個(gè)節(jié)點(diǎn)共同維護(hù)一個(gè)分布式賬本,實(shí)現(xiàn)種薯生產(chǎn)溯源數(shù)據(jù)的真實(shí)可信;利用數(shù)字簽名機(jī)制與種薯生產(chǎn)過程中的接收環(huán)節(jié)對(duì)應(yīng)培育節(jié)點(diǎn)進(jìn)行公私鑰對(duì)綁定,用于防止種薯生產(chǎn)竄貨的第1層保障;通過智能合約實(shí)現(xiàn)種薯培育目的地的防竄貨報(bào)警設(shè)計(jì),使種薯區(qū)塊鏈網(wǎng)絡(luò)中的所有節(jié)點(diǎn)背書完成后共同遵守統(tǒng)一的邏輯規(guī)則,用于防止種薯品種、等級(jí)等生產(chǎn)竄貨的第2層保障;同時(shí)將報(bào)警信息進(jìn)行上鏈存儲(chǔ),更高效地解決種薯生產(chǎn)竄貨數(shù)據(jù)的溯源問題;最后對(duì)本文所提出的馬鈴薯種薯生產(chǎn)溯源模型通過應(yīng)用案例進(jìn)行驗(yàn)證分析。

1 馬鈴薯種薯生產(chǎn)全環(huán)節(jié)分析及區(qū)塊鏈網(wǎng)絡(luò)模型

1.1 種薯生產(chǎn)全環(huán)節(jié)及溯源數(shù)據(jù)分析

馬鈴薯種薯生產(chǎn)過程中涉及的關(guān)鍵環(huán)節(jié)包括種苗資源保存、脫毒苗擴(kuò)繁、原原種培育、原種培育和倉儲(chǔ)環(huán)節(jié)。種薯生產(chǎn)環(huán)節(jié)眾多,實(shí)物形態(tài)在不同的環(huán)節(jié)有所不同,生產(chǎn)基地同時(shí)培育的品種繁多,極其容易發(fā)生竄貨問題。因此,本文在深入分析種薯生產(chǎn)全環(huán)節(jié)及關(guān)鍵溯源數(shù)據(jù)的基礎(chǔ)上,在區(qū)塊鏈網(wǎng)絡(luò)中設(shè)計(jì)種薯生產(chǎn)竄貨報(bào)警環(huán)節(jié),一旦發(fā)生竄貨,將進(jìn)入該環(huán)節(jié)進(jìn)行竄貨報(bào)警處理,同時(shí)將對(duì)應(yīng)竄貨報(bào)警數(shù)據(jù)進(jìn)行上鏈存儲(chǔ)。各環(huán)節(jié)的關(guān)鍵溯源數(shù)據(jù)如表1所示。

表1 種薯生產(chǎn)全環(huán)節(jié)關(guān)鍵溯源數(shù)據(jù)

1.2 種薯區(qū)塊鏈網(wǎng)絡(luò)模型

馬鈴薯種薯生產(chǎn)全環(huán)節(jié)的溯源數(shù)據(jù)參差不齊,目前尚且沒有種薯生產(chǎn)業(yè)務(wù)集成技術(shù)和手段,也沒有統(tǒng)一的生產(chǎn)溯源信息接口和標(biāo)準(zhǔn)規(guī)范,造成了種薯生產(chǎn)全環(huán)節(jié)的信息孤島,不僅影響種薯生產(chǎn)基地的總體生產(chǎn)效率,還使消費(fèi)者和相關(guān)監(jiān)管部門可信溯源困難。區(qū)塊鏈技術(shù)具有去中心化、篡改存儲(chǔ)數(shù)據(jù)困難、多節(jié)點(diǎn)共同維護(hù)、數(shù)據(jù)透明等特點(diǎn),通過分布式網(wǎng)絡(luò)中的各節(jié)點(diǎn)數(shù)據(jù)備份實(shí)現(xiàn)溯源數(shù)據(jù)的安全存儲(chǔ)。本文通過開源許可區(qū)塊鏈框架Hyperledger Fabric使種薯生產(chǎn)全環(huán)節(jié)共同維護(hù)一個(gè)區(qū)塊鏈賬本,每個(gè)相關(guān)環(huán)節(jié)安裝不同的智能合約,利用智能合約完成溯源數(shù)據(jù)的更新上鏈,不相關(guān)的環(huán)節(jié)無法相互之間進(jìn)行種薯轉(zhuǎn)送交易操作和溯源數(shù)據(jù)更新上鏈,以此來規(guī)范化種薯生產(chǎn)流程,最終提高可信溯源。種薯生產(chǎn)溯源區(qū)塊鏈網(wǎng)絡(luò)模型如圖1所示。

圖1 種薯生產(chǎn)溯源區(qū)塊鏈網(wǎng)絡(luò)模型

種薯生產(chǎn)全過程的溯源數(shù)據(jù)通過一條綜合區(qū)塊鏈進(jìn)行存儲(chǔ),將種薯生產(chǎn)溯源中的全部環(huán)節(jié)映射為區(qū)塊鏈中的相關(guān)組織,即種苗資源保存組織、脫毒苗擴(kuò)繁組織、原原種培育組織、原種培育組織和倉儲(chǔ)組織,將防竄報(bào)警環(huán)節(jié)映射為竄貨報(bào)警處理組織,并將各個(gè)環(huán)節(jié)的關(guān)鍵溯源數(shù)據(jù)均通過智能合約進(jìn)行上鏈存儲(chǔ),非關(guān)鍵溯源數(shù)據(jù)使用傳統(tǒng)數(shù)據(jù)庫存儲(chǔ),可以從源頭減輕區(qū)塊鏈的存儲(chǔ)壓力。同時(shí),將消費(fèi)者、相關(guān)監(jiān)管部門等溯源用戶映射為外部組織,作為查詢相關(guān)溯源數(shù)據(jù)的組織節(jié)點(diǎn)。區(qū)塊鏈中的每個(gè)組織都有自己的peer節(jié)點(diǎn)來分布式存儲(chǔ)對(duì)應(yīng)溯源數(shù)據(jù),每批種薯都有一個(gè)唯一的批次編號(hào),種薯在全部生產(chǎn)環(huán)節(jié)流通時(shí)都需關(guān)聯(lián)此唯一批次編號(hào)上傳所有關(guān)鍵溯源數(shù)據(jù)。此外,本文還利用區(qū)塊鏈種薯全生產(chǎn)鏈全連接溯源編碼設(shè)計(jì)為每個(gè)生產(chǎn)環(huán)節(jié)對(duì)應(yīng)產(chǎn)生一個(gè)與批次編號(hào)相關(guān)聯(lián)的二級(jí)編號(hào),如資源編號(hào)對(duì)應(yīng)種苗資源保存環(huán)節(jié)、擴(kuò)繁編號(hào)對(duì)應(yīng)脫毒苗擴(kuò)繁環(huán)節(jié)等。

2 種薯防竄報(bào)警方法設(shè)計(jì)

2.1 區(qū)塊鏈種薯全生產(chǎn)鏈全連接溯源編碼設(shè)計(jì)

在種薯區(qū)塊鏈溯源模型中,需通過種薯溯源編碼在區(qū)塊鏈網(wǎng)絡(luò)中獲取該編碼所對(duì)應(yīng)的全部生產(chǎn)溯源數(shù)據(jù)。為了使區(qū)塊鏈種薯溯源編碼具有唯一溯源性,設(shè)計(jì)區(qū)塊鏈種薯全生產(chǎn)鏈全連接編碼,并利用該編碼與對(duì)應(yīng)種薯生產(chǎn)全環(huán)節(jié)溯源數(shù)據(jù)相關(guān)聯(lián)。種薯溯源編碼在馬鈴薯種苗資源保存環(huán)節(jié)進(jìn)行批次編碼初始化處理,包含種苗資源保存環(huán)節(jié)在內(nèi)的種薯生產(chǎn)全環(huán)節(jié)開始培育時(shí),順序連接對(duì)應(yīng)環(huán)節(jié)的溯源編碼,在倉儲(chǔ)環(huán)節(jié)實(shí)現(xiàn)種薯溯源編碼的全環(huán)節(jié)連接,最終聚焦到以箱為單位的種薯溯源編碼,實(shí)現(xiàn)一箱一碼,保證種薯溯源編碼的唯一性,為利用區(qū)塊鏈技術(shù)實(shí)現(xiàn)種薯防竄生產(chǎn)溯源打下源頭基礎(chǔ)。

具體編碼設(shè)計(jì)如表2所示,例如,在種苗資源保存環(huán)節(jié)進(jìn)行批次編碼初始化處理,此時(shí)的種薯批次編碼為B001。在種苗資源保存環(huán)節(jié)開始對(duì)該批次編碼所對(duì)應(yīng)的種苗進(jìn)行培育時(shí),順序連接種苗資源保存環(huán)節(jié)的溯源編碼R001,此時(shí)對(duì)應(yīng)種薯溯源編碼為B001R001,直至對(duì)應(yīng)種薯順利進(jìn)入倉儲(chǔ)環(huán)節(jié),形成最終種薯溯源編碼為B001R001D001YY001Y001WH001。當(dāng)對(duì)應(yīng)種薯在其生產(chǎn)過程中發(fā)生竄貨報(bào)警時(shí),將不繼續(xù)連接當(dāng)前發(fā)生竄貨環(huán)節(jié)的對(duì)應(yīng)環(huán)節(jié)編碼,種薯溯源編碼的連接停留在上一環(huán)節(jié),同時(shí)生成對(duì)應(yīng)竄貨報(bào)警編碼。例如,對(duì)應(yīng)種薯在脫毒苗擴(kuò)繁環(huán)節(jié)發(fā)生竄貨報(bào)警,則此時(shí)的種薯溯源編碼為B001R001,對(duì)應(yīng)竄貨報(bào)警編碼為W001。此外,所有環(huán)節(jié)的溯源編碼數(shù)字項(xiàng)順序生成。例如,批次編碼為B001的下一批次編碼為B002。

表2 區(qū)塊鏈種薯全生產(chǎn)鏈全連接溯源編碼設(shè)計(jì)

2.2 數(shù)字簽名機(jī)制

種薯生產(chǎn)各環(huán)節(jié)的培育節(jié)點(diǎn)眾多,生產(chǎn)基地繁育品種數(shù)量龐大,由于對(duì)應(yīng)種薯被送往錯(cuò)誤接收環(huán)節(jié)培育節(jié)點(diǎn)而引發(fā)的生產(chǎn)竄貨問題頻繁出現(xiàn),嚴(yán)重降低整體生產(chǎn)效率。橢圓曲線數(shù)字簽名算法(Elliptic curve digital signature algorithm,ECDSA)是一種非對(duì)稱加密算法,使用私鑰簽名、公鑰驗(yàn)證確保數(shù)據(jù)的真實(shí)性并防止交易數(shù)據(jù)被篡改,使用公鑰加密、私鑰解密確保可驗(yàn)證節(jié)點(diǎn)的唯一性。同時(shí),ECDSA具有在已知公鑰的情況下,無法推導(dǎo)出該公鑰對(duì)應(yīng)私鑰的特點(diǎn),本文利用該特點(diǎn)對(duì)種苗/薯轉(zhuǎn)送交易進(jìn)行公鑰數(shù)字簽名加密,相關(guān)接收環(huán)節(jié)對(duì)應(yīng)培育節(jié)點(diǎn)使用本節(jié)點(diǎn)私鑰進(jìn)行解密驗(yàn)證,確保該種苗/薯轉(zhuǎn)送接收環(huán)節(jié)對(duì)應(yīng)培育節(jié)點(diǎn)的唯一正確性。該方法是種苗/薯接收環(huán)節(jié)對(duì)應(yīng)培育節(jié)點(diǎn)的歸屬證明,實(shí)現(xiàn)防止種薯生產(chǎn)竄貨的第1層保障。橢圓曲線公式為

y2=x3+ax+b(modp) (4a3+27b2≠0(modp))

(1)

式中a、b——橢圓曲線參數(shù)

p——質(zhì)數(shù) mod——取模運(yùn)算符

以資源保存環(huán)節(jié)培育完畢,需要將種苗送往脫毒苗擴(kuò)繁環(huán)節(jié)對(duì)應(yīng)培育節(jié)點(diǎn)進(jìn)行培育為例,橢圓曲線數(shù)字簽名加密、解密過程如下:

(1)脫毒苗擴(kuò)繁環(huán)節(jié)對(duì)應(yīng)培育節(jié)點(diǎn)選定一條橢圓曲線Fp(a,b),同時(shí)選取橢圓曲線上一點(diǎn)作為基點(diǎn)G,其中n為橢圓曲線的階,即nG=∞。

(2)脫毒苗擴(kuò)繁環(huán)節(jié)對(duì)應(yīng)培育節(jié)點(diǎn)選擇一個(gè)隨機(jī)數(shù)作為私有密鑰k,并根據(jù)離散點(diǎn)計(jì)算原則生成公有密鑰K=kG。

(3)脫毒苗擴(kuò)繁環(huán)節(jié)對(duì)應(yīng)培育節(jié)點(diǎn)將橢圓Fp(a,b)和點(diǎn)G、K傳送給種苗資源保存環(huán)節(jié)對(duì)應(yīng)節(jié)點(diǎn)。

(4)種苗資源保存環(huán)節(jié)對(duì)應(yīng)節(jié)點(diǎn)接到信息后,將待傳輸?shù)拿魑木幋a到Fp(a,b)上的一點(diǎn)A,并產(chǎn)生一個(gè)隨機(jī)整數(shù)r(r

(5)種苗資源保存環(huán)節(jié)對(duì)應(yīng)節(jié)點(diǎn)通過橢圓曲線公鑰K加密:C1=A+rK,C2=rG,加密后的數(shù)字簽名密文C是一個(gè)點(diǎn)對(duì)。

(6)脫毒苗擴(kuò)繁環(huán)節(jié)對(duì)應(yīng)培育節(jié)點(diǎn)接收到數(shù)字簽名密文C后,可通過私鑰k解密C1-kC2,計(jì)算A+rK-k(rG)=A,對(duì)點(diǎn)A解碼就可以得到明文。以種苗資源保存環(huán)節(jié)和脫毒苗擴(kuò)繁環(huán)節(jié)為例,數(shù)字簽名機(jī)制如圖2所示。

圖2 數(shù)字簽名機(jī)制

在種薯生產(chǎn)溯源區(qū)塊鏈網(wǎng)絡(luò)中,每個(gè)節(jié)點(diǎn)都擁有所有節(jié)點(diǎn)的公鑰以及本節(jié)點(diǎn)的私鑰,通過公私鑰對(duì)嚴(yán)格匹配的策略確保種苗/薯轉(zhuǎn)送接收環(huán)節(jié)對(duì)應(yīng)培育節(jié)點(diǎn)的唯一正確性。例如,種苗在資源保存環(huán)節(jié)培育完畢,需要將其送往脫毒苗擴(kuò)繁環(huán)節(jié)進(jìn)行下一步培育,資源保存環(huán)節(jié)對(duì)應(yīng)培育節(jié)點(diǎn)會(huì)在區(qū)塊鏈網(wǎng)絡(luò)中產(chǎn)生一個(gè)種苗轉(zhuǎn)送交易,并使用脫毒苗擴(kuò)繁環(huán)節(jié)對(duì)應(yīng)接收節(jié)點(diǎn)的公鑰對(duì)該交易進(jìn)行數(shù)字簽名加密。脫毒苗擴(kuò)繁環(huán)節(jié)對(duì)應(yīng)培育節(jié)點(diǎn)接收到需要進(jìn)行下一步培育的種苗后,需使用本節(jié)點(diǎn)的私鑰對(duì)該種苗轉(zhuǎn)送交易進(jìn)行數(shù)字簽名解密驗(yàn)證。解密驗(yàn)證成功,則說明接收節(jié)點(diǎn)正確,可以記錄脫毒苗擴(kuò)繁環(huán)節(jié)相關(guān)上鏈數(shù)據(jù);解密驗(yàn)證失敗,則說明接收節(jié)點(diǎn)錯(cuò)誤,可能發(fā)生竄貨,此時(shí)會(huì)觸發(fā)竄貨報(bào)警處理,給予相關(guān)竄貨報(bào)警提示,并將對(duì)應(yīng)報(bào)警信息進(jìn)行上鏈存儲(chǔ)。

2.3 種薯防竄報(bào)警溯源模型

種薯生產(chǎn)基地培育品種繁多,除接收環(huán)節(jié)對(duì)應(yīng)培育節(jié)點(diǎn)易發(fā)生竄貨問題外,培育節(jié)點(diǎn)因錯(cuò)誤識(shí)別種薯品種、等級(jí)等信息,致使種薯的培育方式發(fā)生改變、種薯成品混雜的情況也頻繁發(fā)生,最終導(dǎo)致種薯整體生產(chǎn)效率和質(zhì)量水平低下。解決種薯生產(chǎn)竄貨問題是本文的研究重點(diǎn),通過智能合約與數(shù)字簽名相結(jié)合的方式實(shí)現(xiàn)防止種薯生產(chǎn)竄貨的雙層保障。在種薯生產(chǎn)溯源區(qū)塊鏈中,每個(gè)相關(guān)環(huán)節(jié)間都需安裝部署對(duì)應(yīng)的區(qū)塊鏈智能合約,在數(shù)字簽名驗(yàn)證接收環(huán)節(jié)對(duì)應(yīng)培育節(jié)點(diǎn)正確后,通過智能合約將當(dāng)前種苗/薯與對(duì)應(yīng)鏈上存儲(chǔ)信息進(jìn)行對(duì)比,符合竄貨條件時(shí)觸發(fā)竄貨報(bào)警處理,實(shí)現(xiàn)防止種薯生產(chǎn)竄貨的第2層保障。實(shí)物數(shù)據(jù)采集通過種薯生產(chǎn)全環(huán)節(jié)安裝部署各種物聯(lián)網(wǎng)設(shè)備獲取,通過二維碼等標(biāo)識(shí)技術(shù)結(jié)合區(qū)塊鏈種薯全生產(chǎn)鏈全連接溯源編碼將實(shí)物數(shù)據(jù)對(duì)應(yīng)轉(zhuǎn)化為數(shù)字?jǐn)?shù)據(jù)并存入?yún)^(qū)塊鏈中,所有生產(chǎn)環(huán)節(jié)都進(jìn)行上述實(shí)物與鏈上數(shù)據(jù)的錨定。

智能合約是運(yùn)行在區(qū)塊鏈網(wǎng)絡(luò)中的一種計(jì)算機(jī)協(xié)議,以代碼的形式體現(xiàn)出該協(xié)議去中心化、自動(dòng)執(zhí)行、高確定性、高自治性等特點(diǎn),區(qū)塊鏈中的相關(guān)節(jié)點(diǎn)均安裝部署對(duì)應(yīng)智能合約則可以達(dá)到網(wǎng)絡(luò)環(huán)境高度自治的效果。在本文所提出的種薯防竄報(bào)警溯源模型中,智能合約可以實(shí)現(xiàn)種薯全生產(chǎn)環(huán)節(jié)溯源數(shù)據(jù)的安全上鏈、按合約條件觸發(fā)防竄報(bào)警機(jī)制、查詢具體溯源數(shù)據(jù)等功能,實(shí)現(xiàn)對(duì)種薯生產(chǎn)全環(huán)節(jié)溯源數(shù)據(jù)的全方位正向記錄、逆向溯源,為種薯生產(chǎn)基地提供強(qiáng)大的數(shù)據(jù)記錄與查詢、防止種薯生產(chǎn)竄貨的技術(shù)支撐。利用智能合約完成種薯開始培育前的品種、等級(jí)等自動(dòng)化確認(rèn),與前生產(chǎn)環(huán)節(jié)的上鏈信息進(jìn)行對(duì)比驗(yàn)證,有效防止種薯生產(chǎn)竄貨的問題,也為生產(chǎn)基地、消費(fèi)者和相關(guān)監(jiān)管部門等追溯用戶提供安全可信的溯源信息。種薯防竄報(bào)警溯源模型如圖3所示。

圖3 種薯防竄報(bào)警溯源模型

在該模型中,由于種苗資源保存環(huán)節(jié)是種薯生產(chǎn)全環(huán)節(jié)的初始環(huán)節(jié),不存在生產(chǎn)竄貨的發(fā)生,因此不在該環(huán)節(jié)中設(shè)計(jì)竄貨報(bào)警智能合約,僅利用智能合約將相關(guān)生產(chǎn)溯源數(shù)據(jù)進(jìn)行上鏈存儲(chǔ)。脫毒苗擴(kuò)繁及其后環(huán)節(jié)將對(duì)接收種苗/薯的實(shí)際情況與前環(huán)節(jié)上傳的溯源數(shù)據(jù)進(jìn)行對(duì)比分析,作為判斷當(dāng)前環(huán)節(jié)是否發(fā)生竄貨的數(shù)據(jù)依據(jù),同時(shí)將該溯源數(shù)據(jù)作為全部種薯生產(chǎn)溯源數(shù)據(jù)的一部分。種薯生產(chǎn)全環(huán)節(jié)將本環(huán)節(jié)培育完畢的種苗/薯送往至下一生產(chǎn)環(huán)節(jié)進(jìn)行培育時(shí),需要使用接收環(huán)節(jié)對(duì)應(yīng)培育節(jié)點(diǎn)的公鑰對(duì)種苗/薯轉(zhuǎn)送交易進(jìn)行數(shù)字簽名加密,接收環(huán)節(jié)對(duì)應(yīng)培育節(jié)點(diǎn)收到該種苗/薯時(shí),需要使用本節(jié)點(diǎn)私鑰對(duì)已加密的前環(huán)節(jié)種苗/薯轉(zhuǎn)送交易進(jìn)行數(shù)字簽名解密驗(yàn)證。解密驗(yàn)證失敗,則說明接收環(huán)節(jié)對(duì)應(yīng)培育節(jié)點(diǎn)錯(cuò)誤,此時(shí)通過智能合約觸發(fā)相關(guān)竄貨報(bào)警處理;解密驗(yàn)證成功,則說明接收環(huán)節(jié)對(duì)應(yīng)培育節(jié)點(diǎn)正確,此時(shí)會(huì)自動(dòng)調(diào)用智能合約要求該節(jié)點(diǎn)通過各種物聯(lián)網(wǎng)設(shè)備獲取并錄入對(duì)應(yīng)培育節(jié)點(diǎn)當(dāng)前接收種苗/薯的品種、等級(jí)等信息,并與前環(huán)節(jié)相關(guān)節(jié)點(diǎn)存入?yún)^(qū)塊鏈網(wǎng)絡(luò)中的信息進(jìn)行對(duì)比,全部符合則說明種苗/薯送至正確培育節(jié)點(diǎn)目的地,同時(shí)正確識(shí)別該種薯的品種、等級(jí)等信息,并正確安排其對(duì)應(yīng)培育方式;有一項(xiàng)及以上不符合則說明種薯送至正確培育節(jié)點(diǎn)目的地,但錯(cuò)誤識(shí)別該種苗/薯的品種、等級(jí)等信息,無法正確安排其對(duì)應(yīng)培育方式,此時(shí)進(jìn)行竄貨報(bào)警處理,將種薯溯源編號(hào)、報(bào)警編號(hào)、報(bào)警時(shí)間、報(bào)警環(huán)節(jié)等相關(guān)竄貨報(bào)警信息存儲(chǔ)至區(qū)塊鏈網(wǎng)絡(luò)中,并給予相關(guān)竄貨報(bào)警提示。此外,利用區(qū)塊鏈存儲(chǔ)數(shù)據(jù)的不可篡改等特性,使得種薯生產(chǎn)溯源數(shù)據(jù)在區(qū)塊鏈溯源網(wǎng)絡(luò)中得以可信存儲(chǔ),并利用不同數(shù)據(jù)查詢智能合約實(shí)現(xiàn)不同追溯用戶的溯源查詢,種薯生產(chǎn)基地、消費(fèi)者和相關(guān)監(jiān)管部門可通過溯源節(jié)點(diǎn)調(diào)用對(duì)應(yīng)數(shù)據(jù)查詢智能合約獲取區(qū)塊鏈中對(duì)應(yīng)種薯的相關(guān)溯源信息。

2.4 智能合約設(shè)計(jì)

本文使用Hyperledger Fabric平臺(tái),結(jié)合種薯種植領(lǐng)域?qū)<乙庖姟⒎N薯生產(chǎn)基地的實(shí)際情況等制定相關(guān)的智能合約規(guī)則和一系列合約觸發(fā)條件。智能合約業(yè)務(wù)邏輯設(shè)計(jì)如表3所示。

表3 智能合約設(shè)計(jì)

將種薯各生產(chǎn)環(huán)節(jié)的溯源信息寫入?yún)^(qū)塊鏈均由智能合約實(shí)現(xiàn)。在各環(huán)節(jié)上傳對(duì)應(yīng)生產(chǎn)溯源信息時(shí),如果發(fā)生竄貨則會(huì)觸發(fā)防竄報(bào)警智能合約,接續(xù)進(jìn)行防竄報(bào)警處理。具體算法如下:

算法1:發(fā)送方數(shù)據(jù)上鏈智能合約

輸入:以種苗資源保存環(huán)節(jié)為例,批次編號(hào)BatchId,資源編號(hào)ResourceId,種苗名稱SeedName,品種名稱BreedName等

輸出:上鏈成功返回交易ID,區(qū)塊高度numBlock,數(shù)據(jù)哈希dataHash,前一個(gè)區(qū)塊哈希previousHash,上鏈?zhǔn)》祷劐e(cuò)誤原因

區(qū)塊鏈中的種苗資源保存環(huán)節(jié)對(duì)應(yīng)peer節(jié)點(diǎn)發(fā)起invoke上鏈請(qǐng)求

if len(args)∥判斷請(qǐng)求中的數(shù)組長度是否符合規(guī)定長度標(biāo)準(zhǔn)

return shim.Error;∥數(shù)組長度不符合標(biāo)準(zhǔn),上鏈?zhǔn)?返回具體錯(cuò)誤原因

else∥符合上鏈要求,請(qǐng)求上鏈

ECDSA_Encode();∥使用接收節(jié)點(diǎn)公鑰加密

APIstub.PutState(args[2],resourceGrowInfoAsBytes);

return success;∥返回交易基本信息

算法2:接收方數(shù)據(jù)上鏈智能合約

輸入:以脫毒苗擴(kuò)繁環(huán)節(jié)為例,批次編號(hào)BatchId,種苗名稱SeedName,擴(kuò)繁編號(hào)DetoxificateId,品種名稱BreedName等

輸出:上鏈成功返回交易ID,區(qū)塊高度numBlock,數(shù)據(jù)哈希dataHash,前一個(gè)區(qū)塊哈希previousHash,上鏈?zhǔn)》祷劐e(cuò)誤原因

區(qū)塊鏈中的脫毒苗擴(kuò)繁環(huán)節(jié)對(duì)應(yīng)peer節(jié)點(diǎn)發(fā)起invoke上鏈請(qǐng)求

if len(args)∥判斷請(qǐng)求中的數(shù)組長度是否符合長度標(biāo)準(zhǔn)

err := ECDSA_Decode;∥使用本節(jié)點(diǎn)私鑰解密

if err != nil∥判斷私鑰是否解密成功

recordWarn();∥解密失敗,觸發(fā)防竄報(bào)警合約

return shim.Error;∥返回具體錯(cuò)誤原因

else∥解密成功

if args[1]!= resourceBatchIdGrow∥判斷請(qǐng)求中的批次ID是否與前生產(chǎn)環(huán)節(jié)對(duì)應(yīng)上鏈數(shù)據(jù)相符

recordWarn();∥如果批次ID不符則觸發(fā)防竄報(bào)警合約

return shim.Error;∥上鏈?zhǔn)?返回具體錯(cuò)誤原因

elseif args[2]!= resourceResourceIdGrow∥判斷請(qǐng)求中的資源ID是否與前生產(chǎn)環(huán)節(jié)對(duì)應(yīng)上鏈數(shù)據(jù)相符

recordWarn();∥如果資源ID不符則觸發(fā)防竄報(bào)警合約

return shim.Error;∥上鏈?zhǔn)?返回具體錯(cuò)誤原因

elseif args[3]!= resourceSeedNameGrow∥判斷請(qǐng)求中的種苗名稱是否與前生產(chǎn)環(huán)節(jié)對(duì)應(yīng)上鏈數(shù)據(jù)相符

recordWarn();∥如果種苗名稱不符則觸發(fā)防竄報(bào)警合約

return shim.Error;∥上鏈?zhǔn)?返回具體錯(cuò)誤原因

elseif args[4]!= resourceBreedNameGrow∥判斷請(qǐng)求中的品種名稱是否與前生產(chǎn)環(huán)節(jié)對(duì)應(yīng)上鏈數(shù)據(jù)相符

recordWarn();∥如果品種名稱不符則觸發(fā)防竄報(bào)警合約

return shim.Error;∥上鏈?zhǔn)?返回具體錯(cuò)誤原因

else∥符合上鏈要求,請(qǐng)求上鏈

APIstub.PutState(args[5],detoxificateGrowInfoAsBytes);

return success;∥返回交易基本信息

竄貨報(bào)警智能合約將觸發(fā)竄貨報(bào)警時(shí)的相關(guān)報(bào)警信息進(jìn)行上鏈存儲(chǔ)。具體算法如下:

算法3:竄貨報(bào)警智能合約

輸入:種薯當(dāng)前編號(hào)NowSeedPotatoId,報(bào)警時(shí)間WarnTime,報(bào)警環(huán)節(jié)WarnLink等

輸出:上鏈成功返回交易ID,區(qū)塊高度numBlock,數(shù)據(jù)哈希dataHash,前一個(gè)區(qū)塊哈希previousHash,上鏈?zhǔn)》祷劐e(cuò)誤原因

觸發(fā)防竄報(bào)警時(shí)發(fā)起報(bào)警數(shù)據(jù)上鏈請(qǐng)求

if len(args)∥判斷請(qǐng)求中的數(shù)組長度是否符合規(guī)定長度標(biāo)準(zhǔn)

return shim.Error;∥數(shù)組長度不符合標(biāo)準(zhǔn),上鏈?zhǔn)?返回具體錯(cuò)誤原因

var warnInfo = WarnInfo{BatchId: args[1], NowSeedPotatoId: args[2], WarnId: args[3], WarnTime: args[4], WarnLink: args[5], WarnPoint: args[6], WorkerId: args[7], WorkerName: args[8]};∥將報(bào)警信息存入待上鏈數(shù)組

APIstub.PutState(args[2], warnInfoAsBytes);∥請(qǐng)求上鏈

return success;∥返回交易基本信息

數(shù)據(jù)查詢智能合約在區(qū)塊鏈中通過用戶輸入的查詢編號(hào)進(jìn)行對(duì)應(yīng)的數(shù)據(jù)查詢。具體算法如下:

算法4:數(shù)據(jù)查詢智能合約

輸入:以查詢竄貨報(bào)警信息為例,報(bào)警編號(hào)WarnId

輸出:報(bào)警編號(hào)對(duì)應(yīng)的具體信息

if len(args)∥判斷請(qǐng)求中的數(shù)組長度是否符合規(guī)定長度標(biāo)準(zhǔn)

return shim.Error;∥查詢失敗,返回具體錯(cuò)誤原因

warnInfoAsBytes, _ := APIstub.GetState(args[0]);∥通過當(dāng)前Key值獲取對(duì)應(yīng)Value值

retrun success;∥查詢成功,返回?cái)?shù)據(jù)

3 系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

3.1 系統(tǒng)架構(gòu)設(shè)計(jì)

本研究基于Hyperledger Fabric構(gòu)建面向種薯生產(chǎn)全環(huán)節(jié)溯源的模型架構(gòu),通過區(qū)塊鏈技術(shù)對(duì)溯源數(shù)據(jù)進(jìn)行管理和維護(hù),實(shí)現(xiàn)種薯生產(chǎn)全環(huán)節(jié)溯源數(shù)據(jù)的高度共享;種薯各生產(chǎn)環(huán)節(jié)分布式上傳本環(huán)節(jié)內(nèi)的溯源數(shù)據(jù),并利用數(shù)字簽名結(jié)合智能合約的方式高效防止生產(chǎn)竄貨的發(fā)生,保證各生產(chǎn)環(huán)節(jié)種薯溯源數(shù)據(jù)的真實(shí)性、實(shí)時(shí)性以及安全性。種薯生產(chǎn)溯源模型架構(gòu)如圖4所示,共分為4層,由下至上分別為存儲(chǔ)層、服務(wù)層、接口層和應(yīng)用層。

圖4 種薯生產(chǎn)溯源模型架構(gòu)

存儲(chǔ)層利用區(qū)塊鏈技術(shù)不可篡改等特點(diǎn),實(shí)現(xiàn)所有相關(guān)節(jié)點(diǎn)共同維護(hù)同一個(gè)數(shù)據(jù)賬本,且所有交易操作均記錄對(duì)應(yīng)時(shí)間戳,確保生產(chǎn)溯源數(shù)據(jù)的真實(shí)可靠。同時(shí),為減少種薯溯源的查詢時(shí)間,溯源數(shù)據(jù)通過面向文檔的數(shù)據(jù)庫管理系統(tǒng)(Cluster of unreliable commodity hardware database,CouchDB)存儲(chǔ),并通過Key-Value鍵值索引進(jìn)行數(shù)據(jù)查詢;服務(wù)層采用Raft共識(shí)機(jī)制,以智能合約為具體實(shí)現(xiàn)方式,結(jié)合ECDSA橢圓曲線數(shù)字簽名算法,保證種薯生產(chǎn)全環(huán)節(jié)溯源數(shù)據(jù)的成功上鏈,實(shí)現(xiàn)防止生產(chǎn)竄貨的自動(dòng)處理;接口層面向種薯生產(chǎn)過程中的5個(gè)關(guān)鍵溯源環(huán)節(jié)和1個(gè)竄貨報(bào)警環(huán)節(jié),封裝相關(guān)溯源數(shù)據(jù)公鑰加密接口、私鑰解密接口以及對(duì)于種薯生產(chǎn)溯源數(shù)據(jù)和竄貨報(bào)警數(shù)據(jù)上鏈接口和查詢接口,滿足種薯生產(chǎn)全環(huán)節(jié)的溯源數(shù)據(jù)共享、查詢以及防止生產(chǎn)竄貨的發(fā)生等需求;應(yīng)用層通過系統(tǒng)為種薯生產(chǎn)全環(huán)節(jié)的相關(guān)方提供不同的便捷服務(wù)。

3.2 系統(tǒng)實(shí)現(xiàn)

本文所提出的馬鈴薯種薯防竄溯源模型應(yīng)用于云南省馬鈴薯種薯質(zhì)量溯源系統(tǒng),種薯生產(chǎn)全環(huán)節(jié)節(jié)點(diǎn)通過對(duì)應(yīng)區(qū)塊鏈接口在該系統(tǒng)中實(shí)現(xiàn)種薯生產(chǎn)溯源數(shù)據(jù)的上傳及查詢功能,系統(tǒng)網(wǎng)絡(luò)中的所有節(jié)點(diǎn)共享一個(gè)區(qū)塊鏈分布式帳本,共同參與全網(wǎng)的共識(shí)記賬。如圖5a所示,種薯生產(chǎn)過程中的5個(gè)關(guān)鍵環(huán)節(jié)均可以上傳相關(guān)溯源信息。上傳成功,則會(huì)在系統(tǒng)中生成相應(yīng)的環(huán)節(jié)編號(hào),并在狀態(tài)欄顯示成功,同時(shí)會(huì)顯示該上傳操作交易在區(qū)塊鏈網(wǎng)絡(luò)中生成的區(qū)塊高度以及區(qū)塊交易ID;上傳失敗,則會(huì)在系統(tǒng)中生成相應(yīng)的竄貨報(bào)警編號(hào),在狀態(tài)欄中顯示失敗,并給出竄貨報(bào)警提示。如圖5b所示,可根據(jù)竄貨報(bào)警編號(hào)查詢對(duì)應(yīng)竄貨報(bào)警的詳細(xì)信息。在該系統(tǒng)中設(shè)有用戶節(jié)點(diǎn)權(quán)限機(jī)制,用戶節(jié)點(diǎn)只能進(jìn)行本環(huán)節(jié)內(nèi)的相關(guān)種薯生產(chǎn)溯源信息上傳等操作,不能進(jìn)行其他環(huán)節(jié)的相關(guān)操作。同時(shí),所有生產(chǎn)環(huán)節(jié)生成的交易操作信息、種薯溯源信息和竄貨報(bào)警信息的詳情全部用戶節(jié)點(diǎn)均可查看,可用來監(jiān)督種薯生產(chǎn)全環(huán)節(jié)間共享原始數(shù)據(jù)。

圖5 云南省馬鈴薯種薯質(zhì)量溯源系統(tǒng)界面

同時(shí),為滿足相關(guān)用戶溯源需求,種薯質(zhì)量溯源系統(tǒng)提供掃碼溯源功能,可通過掃描種薯外包裝上的二維碼獲取相關(guān)生產(chǎn)溯源數(shù)據(jù)。如圖6所示,經(jīng)過查詢后,可獲取產(chǎn)品介紹信息、企業(yè)信息、溯源信息和防偽信息。其中溯源信息展示種薯生產(chǎn)全環(huán)節(jié)的關(guān)鍵數(shù)據(jù),防偽信息展示區(qū)塊鏈地址、追溯Hash值、區(qū)塊高度等信息。

圖6 掃碼溯源界面

4 系統(tǒng)測試

4.1 測試環(huán)境

本研究的測試環(huán)境基于Hyperledger Fabric 1.4.4、Hyperledger Explorer 1.1.8搭建,使用虛擬機(jī)系統(tǒng)版本為Ubuntu 16.04 LTS。性能測試將智能合約通過balance-transfer接口進(jìn)行封裝,使用外部接口測試工具Postman 9.31.0進(jìn)行30輪次的測試。硬件配置為:4 GB內(nèi)存、8核處理器、50 GB硬盤。區(qū)塊鏈通過16個(gè)節(jié)點(diǎn)存儲(chǔ)種薯生產(chǎn)溯源數(shù)據(jù),其中包含種苗資源保存節(jié)點(diǎn)、脫毒苗擴(kuò)繁節(jié)點(diǎn)、原原種培育節(jié)點(diǎn)、原種培育節(jié)點(diǎn)、竄貨報(bào)警節(jié)點(diǎn)、外部溯源節(jié)點(diǎn)各2個(gè),另外包含倉儲(chǔ)節(jié)點(diǎn)4個(gè)。種薯區(qū)塊鏈中的所有節(jié)點(diǎn)均采用狀態(tài)數(shù)據(jù)庫CouchDB存儲(chǔ)上鏈數(shù)據(jù),通過Key-Value鍵值對(duì)檢索狀態(tài)數(shù)據(jù)庫查詢相應(yīng)數(shù)據(jù)。具體測試環(huán)境配置如表4所示。

表4 區(qū)塊鏈配置信息

4.2 竄貨報(bào)警功能分析

測試以脫毒苗擴(kuò)繁環(huán)節(jié)接收種苗進(jìn)行下一階段培育,將該接收種苗的相關(guān)信息進(jìn)行上鏈為例。如圖7a所示,如果脫毒苗擴(kuò)繁環(huán)節(jié)對(duì)應(yīng)培育節(jié)點(diǎn)私鑰解密失敗,或申請(qǐng)入培養(yǎng)室時(shí)上傳的種苗相關(guān)信息與區(qū)塊鏈賬本中存儲(chǔ)的該種苗對(duì)應(yīng)品種、等級(jí)等信息不符時(shí),則將該上鏈申請(qǐng)給予竄貨報(bào)警處理,并給出竄貨報(bào)警原因提示。如圖7b所示,通過Hyperledger explorer顯示該竄貨報(bào)警交易所在區(qū)塊信息,其中區(qū)塊高度(區(qū)塊號(hào))為2701,區(qū)塊哈希為6939b143ab66e4db59e89ee9c6c9612461fbf1daba8523 6ac0e1b2908341fa8b,前一區(qū)塊哈希為99bc65133e 24ad81bf3cbdcc7a87e97084aee88d0081ad4e67cbdc19 11018371。竄貨報(bào)警交易詳情如圖7c所示,其中交易ID為b3a2c205f71c2fd17c58e3c9cae0e4262fd946f 3be6019e86f87b0838948c12d,調(diào)用鏈碼為alarmcc,寫入賬本的Key為“W230”(竄貨報(bào)編號(hào))、Value為“batch_id:B288,trace_seed_potato_id:B288R016,warn_id:W230,warn_time:2022-11-25 11:50:18,warn_link:脫毒苗擴(kuò)繁環(huán)節(jié),warn_point:私鑰解密失敗,worker_id:DW018,worker_name:袁藝”(種薯溯源編號(hào)、竄貨報(bào)警時(shí)間、環(huán)節(jié)、觸發(fā)點(diǎn))等信息。

圖7 防竄報(bào)警功能測試

4.3 數(shù)據(jù)上鏈與查詢性能分析

4.3.1種薯生產(chǎn)溯源數(shù)據(jù)上鏈與查詢

數(shù)據(jù)上鏈性能測試結(jié)果如圖8a所示,種薯生產(chǎn)溯源數(shù)據(jù)的平均上鏈時(shí)間為2 566 ms,能夠滿足種薯生產(chǎn)基地全環(huán)節(jié)實(shí)時(shí)更新種薯溯源數(shù)據(jù)的需求;數(shù)據(jù)查詢性能測試結(jié)果如圖8b所示,種薯生產(chǎn)溯源數(shù)據(jù)的平均查詢時(shí)間為95 ms,能夠滿足相關(guān)溯源用戶快速查詢種薯各項(xiàng)生產(chǎn)信息的需求;由測試結(jié)果可以得出,該種薯防竄溯源區(qū)塊鏈的數(shù)據(jù)上鏈和數(shù)據(jù)查詢效率較高,可以滿足各相關(guān)用戶的日常需求。

圖8 數(shù)據(jù)上鏈與查詢性能測試

4.3.2竄貨報(bào)警觸發(fā)上鏈與查詢

種薯生產(chǎn)溯源防竄設(shè)計(jì)是基于智能合約和數(shù)字簽名實(shí)現(xiàn)的,在某種程度上,這兩種方式的結(jié)合可以在種薯生產(chǎn)過程中高度防止竄貨的發(fā)生。因此,本研究在防竄貨的報(bào)警觸發(fā)與報(bào)警信息上鏈和查詢的平均時(shí)間方面進(jìn)行性能分析。測試結(jié)果如圖9所示,報(bào)警觸發(fā)與報(bào)警信息上鏈的平均時(shí)間為2 562 ms,查詢具體報(bào)警信息的平均時(shí)間為77 ms。由測試結(jié)果可以得出,該種薯防竄溯源區(qū)塊鏈的防竄報(bào)警性能較好,可以滿足種薯生產(chǎn)基地的相關(guān)需求。

圖9 防竄貨性能測試

5 結(jié)論

(1)提出了基于智能合約和數(shù)字簽名的馬鈴薯種薯防竄溯源模型,對(duì)種薯的整個(gè)生產(chǎn)環(huán)節(jié)建立溯源區(qū)塊鏈,使種薯生產(chǎn)全環(huán)節(jié)共同維護(hù)一個(gè)區(qū)塊鏈分布式帳本,保證種薯生產(chǎn)溯源數(shù)據(jù)的統(tǒng)一共享;通過數(shù)字簽名公私鑰對(duì)驗(yàn)證和智能合約聯(lián)合解決種薯生產(chǎn)過程中的竄貨問題,防止生產(chǎn)竄貨,提高生產(chǎn)溯源效率和準(zhǔn)確率,滿足種薯生產(chǎn)基地的標(biāo)準(zhǔn)化生產(chǎn)需求。

(2)提出的防竄溯源模型能夠?qū)崿F(xiàn)種薯溯源數(shù)據(jù)的安全存儲(chǔ),并高度防止生產(chǎn)竄貨的發(fā)生。相關(guān)測試結(jié)果表明,種薯生產(chǎn)溯源數(shù)據(jù)的平均上鏈時(shí)間為2 566 ms,平均查詢時(shí)間為95 ms,報(bào)警觸發(fā)與報(bào)警信息上鏈的平均時(shí)間為2 562 ms,查詢具體報(bào)警信息的平均時(shí)間為77 ms,模型性能較高,可以滿足種薯生產(chǎn)溯源數(shù)據(jù)的上鏈與查詢需求,在防止種薯生產(chǎn)竄貨方面具有一定的參考價(jià)值。

猜你喜歡
培育生產(chǎn)
用舊的生產(chǎn)新的!
“三夏”生產(chǎn) 如火如荼
第十二道 共同的敵人
未來或可培育無味榴蓮
S-76D在華首架機(jī)實(shí)現(xiàn)生產(chǎn)交付
第十道 生相克
蟑螂
安全生產(chǎn)重于泰山
念好"四部經(jīng)"培育生力軍
中國火炬(2014年3期)2014-07-24 14:44:39
Сварочное Проμзвоσсmво(《焊接生產(chǎn)》)2012年第5期要目
主站蜘蛛池模板: 欧美伦理一区| 亚洲欧美一区二区三区图片| 久久国产黑丝袜视频| 伦精品一区二区三区视频| 99re热精品视频中文字幕不卡| 波多野衣结在线精品二区| 国产一线在线| 日本欧美视频在线观看| 成人免费一级片| 亚洲黄网视频| 一级爱做片免费观看久久| 婷婷亚洲视频| 114级毛片免费观看| 国产成人免费高清AⅤ| 黄色免费在线网址| 99这里只有精品6| 日本成人一区| 亚亚洲乱码一二三四区| 思思热精品在线8| 一级福利视频| 亚洲,国产,日韩,综合一区| 精品国产香蕉伊思人在线| 无码福利日韩神码福利片| 欧美日韩午夜| 在线a网站| 亚洲色图综合在线| 色吊丝av中文字幕| 国产一二三区在线| 免费在线成人网| 成人在线观看一区| 在线看国产精品| 4虎影视国产在线观看精品| 亚洲午夜天堂| 国产精品精品视频| 免费jizz在线播放| 日韩视频精品在线| 丁香六月综合网| 亚洲精品无码久久毛片波多野吉| 视频二区中文无码| 欧美国产日产一区二区| 手机精品视频在线观看免费| 97视频在线观看免费视频| 亚洲精品欧美日本中文字幕| 视频一本大道香蕉久在线播放 | 日本高清在线看免费观看| 久久久久人妻一区精品色奶水 | 99热国产这里只有精品9九 | 精品国产免费观看| 亚洲欧美在线综合图区| 青青青视频蜜桃一区二区| 男女性色大片免费网站| 国产亚洲精品精品精品| 欧美亚洲国产日韩电影在线| 日本在线免费网站| 性色一区| 熟女日韩精品2区| 国产女人18水真多毛片18精品 | 国产av无码日韩av无码网站| 国产一级毛片yw| 国产成人精品综合| 精品久久国产综合精麻豆| av免费在线观看美女叉开腿| 国产精品成人免费视频99| 一级全免费视频播放| 2020久久国产综合精品swag| 中文无码日韩精品| 国产一级毛片网站| 五月天在线网站| 欧美成人免费午夜全| 无码免费的亚洲视频| 毛片网站观看| 亚洲无码电影| 91精品国产综合久久香蕉922| 国产美女在线观看| 毛片在线播放网址| 亚洲国产日韩一区| 国产91精品久久| 日韩视频福利| 精品91自产拍在线| 鲁鲁鲁爽爽爽在线视频观看| 国产人妖视频一区在线观看| 久久综合干|