• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于區(qū)塊鏈的芝麻油防偽溯源系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

      2024-05-08 03:00:10徐金勝
      食品科學(xué) 2024年8期
      關(guān)鍵詞:鏈碼芝麻油防偽

      徐金勝,張 恩,*

      (1.河南師范大學(xué)計(jì)算機(jī)與信息工程學(xué)院,河南 新鄉(xiāng) 453007;2.智慧商務(wù)與物聯(lián)網(wǎng)技術(shù)河南省工程實(shí)驗(yàn)室,河南 新鄉(xiāng) 453007)

      芝麻(Sesamum indicumL.)屬于胡麻科胡麻屬植物,是我國主要的油料作物之一[1]。芝麻可以提煉出芝麻油,俗稱“香油”。芝麻油是一種古老而珍貴的植物油,具有濃郁的香味和獨(dú)特的營養(yǎng)成分。它被世界衛(wèi)生組織列為三大優(yōu)質(zhì)食用植物油之一[2]。我國是全球最大的芝麻消費(fèi)國。由于芝麻油銷量大、價(jià)格高、利潤(rùn)豐厚,許多商家在食用油市場(chǎng)大規(guī)模銷售假芝麻油,主要通過摻入大豆油或直接使用大豆油加香精偽裝成芝麻油[3]。GB/T 8233—2018《芝麻油》中規(guī)定“芝麻油中不得摻有其他食用油和非食用油;不得添加任何香精和香料”[4]。雖然許多產(chǎn)品宣稱為“100%純芝麻油”,但芝麻油高成本生產(chǎn)導(dǎo)致其長(zhǎng)期成為重點(diǎn)摻假對(duì)象[5]。假芝麻油在加工中如果超量使用食用香精,可能會(huì)對(duì)人體消化系統(tǒng)和呼吸系統(tǒng)產(chǎn)生一定影響,嚴(yán)重可能引起腹瀉、呼吸急促或困難等癥狀,芝麻油摻假問題已導(dǎo)致嚴(yán)重的人身傷亡和經(jīng)濟(jì)損失[6]。為保護(hù)合法生產(chǎn)者和消費(fèi)者利益,迫切需要建立一套科學(xué)、快速、準(zhǔn)確和有效的芝麻油防偽溯源體系。

      目前,食品的真實(shí)性和可溯源性已成為食品檢測(cè)的一項(xiàng)重要內(nèi)容。現(xiàn)有的研究主要分析快速鑒別摻假芝麻油[7-10],但消費(fèi)者缺少可信任的方式去辨別真?zhèn)巍;诖?,本研究的目的是在保證芝麻油質(zhì)量安全的前提下增加可追溯性,通過建立一個(gè)安全和可信賴的防偽溯源系統(tǒng)讓消費(fèi)者更放心。傳統(tǒng)的溯源方式面臨幾個(gè)問題:由于涉及各企業(yè)生產(chǎn)的多種產(chǎn)品,溯源數(shù)據(jù)量大且數(shù)據(jù)易丟失;此外,溯源信息主要來源于企業(yè)數(shù)據(jù)庫,導(dǎo)致數(shù)據(jù)中心化,無法保障溯源數(shù)據(jù)的安全性、真實(shí)性和可靠性[11]。一些國內(nèi)外學(xué)者研究利用區(qū)塊鏈技術(shù)的優(yōu)勢(shì),如去中心化、信息透明性和防篡改性等,在食品質(zhì)量安全防偽溯源領(lǐng)域都進(jìn)行了探索研究。許繼平等[12]基于超級(jí)賬本Fabric開源框架設(shè)計(jì)并研發(fā)了小麥質(zhì)量安全可信溯源系統(tǒng),實(shí)現(xiàn)了糧油質(zhì)量安全全鏈條信息互聯(lián)互通,并且保證了跨鏈信息交互的安全與全流程可追溯性。劉孝保等[13]基于百度超級(jí)鏈平臺(tái)開發(fā)圖區(qū)塊鏈模型實(shí)現(xiàn)了基于區(qū)塊鏈的果蔬供應(yīng)鏈追溯系統(tǒng),并提出信息存儲(chǔ)與快速查詢提供新的方法和思路。何靜等[14]提出基于量子區(qū)塊鏈的食品冷鏈追溯系統(tǒng)構(gòu)建思路并構(gòu)建了量子區(qū)塊鏈冷鏈追溯系統(tǒng)。Guo Chaopeng等[15]提出了一種增加雙層索引結(jié)構(gòu)優(yōu)化區(qū)塊鏈中的可追溯性查詢性能,Wu Hanqing等[16]將溯源記錄復(fù)制到多個(gè)塊中并采用并行搜索提高查詢效率,Lai Chengzhe等[17]設(shè)計(jì)了一個(gè)Merkle樹獨(dú)立索引結(jié)構(gòu)支持高效的溯源查詢。上述研究有效解決了當(dāng)前食品真實(shí)性和可溯源性的質(zhì)量安全問題,實(shí)現(xiàn)了溯源數(shù)據(jù)的安全真實(shí)可靠性,但即使采取了一些解決提升溯源查詢效率方案,仍然無法有效解決目前區(qū)塊鏈數(shù)據(jù)存儲(chǔ)壓力大和查詢效率低的雙向問題。因此本研究設(shè)計(jì)了基于Fabric超級(jí)賬本框架的芝麻油防偽溯源系統(tǒng),在系統(tǒng)中改進(jìn)了傳統(tǒng)區(qū)塊鏈的溯源信息存儲(chǔ)方法,采用本地及鏈上雙存儲(chǔ)方式并進(jìn)行數(shù)據(jù)校驗(yàn)后返回信息,實(shí)現(xiàn)了鏈上鏈下的平行訪問,用區(qū)塊鏈上的哈希值與分布式節(jié)點(diǎn)中Redis緩存數(shù)據(jù)進(jìn)行哈希校驗(yàn)以確保溯源數(shù)據(jù)的正確性。同時(shí)改進(jìn)傳統(tǒng)節(jié)點(diǎn)查詢采用了鏈碼直連狀態(tài)數(shù)據(jù)庫的查詢過程,旨在緩解區(qū)塊鏈系統(tǒng)巨大的數(shù)據(jù)存儲(chǔ)壓力,提高信息的讀取效率。最后得出基于區(qū)塊鏈的芝麻油防偽溯源系統(tǒng),能夠提高芝麻油追溯信息的透明度和數(shù)據(jù)安全性,同時(shí)能夠保障芝麻油質(zhì)量安全,便于消費(fèi)者查詢真?zhèn)巍?/p>

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

      1.1 區(qū)塊鏈技術(shù)概述

      區(qū)塊鏈技術(shù)始創(chuàng)于以化名“中本聰”的學(xué)者在2008年發(fā)表的論文《比特幣:一種點(diǎn)對(duì)點(diǎn)電子現(xiàn)金系統(tǒng)》[18]。區(qū)塊鏈通過點(diǎn)對(duì)點(diǎn)分布式記賬、共識(shí)機(jī)制、非對(duì)稱加密算法和智能合約等技術(shù),為各參與方建立了信任基礎(chǔ),并為鏈上的可信數(shù)據(jù)交互提供技術(shù)支持[19]。區(qū)塊鏈的上鏈過程持續(xù)性地將新數(shù)據(jù)記錄到歷史賬本中,數(shù)據(jù)溯源按時(shí)間順序從歷史賬本中還原數(shù)據(jù),并進(jìn)行可視化,因此區(qū)塊鏈技術(shù)非常適用于溯源系統(tǒng)中[20]。區(qū)塊鏈技術(shù)經(jīng)歷了以數(shù)字資產(chǎn)為代表的1.0時(shí)期和以智能合約為代表的2.0時(shí)期,現(xiàn)正進(jìn)入賦能社會(huì)治理的3.0時(shí)代[21]。要將這項(xiàng)“僅限于網(wǎng)絡(luò)”的技術(shù)融入實(shí)體產(chǎn)業(yè)食品安全防偽溯源系統(tǒng)領(lǐng)域,需要進(jìn)行必要調(diào)整和平臺(tái)選擇。目前區(qū)塊鏈的應(yīng)用平臺(tái)有3 種訪問類型:公有鏈任何人都可以訪問,完全去中心;私有鏈成員預(yù)設(shè),不再加入其他成員;聯(lián)盟鏈在私有鏈基礎(chǔ)上允許有條件成員訪問[22]。考慮到參與芝麻油追溯體系中種植、采摘、采購、生產(chǎn)、運(yùn)輸、監(jiān)管、銷售各個(gè)環(huán)節(jié)不同權(quán)限的成員角色,均由得到準(zhǔn)入許可的可信參與方成員組成的企業(yè)聯(lián)盟,因此確定采用聯(lián)盟鏈區(qū)塊鏈類型。本實(shí)驗(yàn)采用聯(lián)盟鏈平臺(tái)Fabric作為底層平臺(tái)設(shè)計(jì)和實(shí)現(xiàn)溯源系統(tǒng),F(xiàn)abric是一個(gè)開源的企業(yè)級(jí)許可分布式賬本技術(shù)平臺(tái),專為在企業(yè)環(huán)境中使用而設(shè)計(jì)。

      1.2 基于Fabric的溯源系統(tǒng)架構(gòu)設(shè)計(jì)

      本系統(tǒng)通過分析芝麻油溯源系統(tǒng)中各個(gè)用戶的需求,將種植戶、采購原料廠商、加工廠商、物流、銷售、監(jiān)管機(jī)構(gòu)等各參與方納入Fabric聯(lián)盟區(qū)塊鏈的相應(yīng)組織,以便對(duì)相關(guān)信息進(jìn)行查詢和管理。在Fabric中,多個(gè)相關(guān)組織可以組建一個(gè)通道,每個(gè)通道都可視為一個(gè)獨(dú)立的區(qū)塊鏈網(wǎng)絡(luò)。通道與通道之間相互隔離,這樣可以保證各組織數(shù)據(jù)的隱私安全。在本系統(tǒng)中將監(jiān)管機(jī)構(gòu)和以上各用戶組織分別建立一個(gè)通道以便于監(jiān)管數(shù)據(jù),在每個(gè)通道內(nèi),存在多個(gè)peer節(jié)點(diǎn),它們作為服務(wù)節(jié)點(diǎn),維護(hù)該通道的賬本數(shù)據(jù)。此外,鏈碼也在通道中運(yùn)行,它是運(yùn)行在區(qū)塊鏈上的智能合約,也是Fabric中的業(yè)務(wù)邏輯實(shí)現(xiàn),能夠?qū)⒔邮盏降男畔懭氲絽^(qū)塊鏈中。因此本追溯系統(tǒng)架構(gòu)設(shè)計(jì)包括4 層結(jié)構(gòu):設(shè)備信息采集層、數(shù)據(jù)交互應(yīng)用層、Fabric區(qū)塊鏈網(wǎng)絡(luò)層、溯源查詢小程序?qū)?。設(shè)備信息采集層負(fù)責(zé)監(jiān)管芝麻油產(chǎn)業(yè)鏈的全過程,從種植到銷售,并采集相關(guān)數(shù)據(jù)。數(shù)據(jù)交互應(yīng)用層是提供給各個(gè)組織用戶功能的芝麻油質(zhì)量追溯平臺(tái),平臺(tái)接收傳感器和監(jiān)控設(shè)備傳來的實(shí)時(shí)信息并提供各個(gè)組織角色登錄不同界面添加己方所需要上傳的信息,溯源系統(tǒng)首先將上傳的溯源信息數(shù)據(jù)存儲(chǔ)到本地MySQL數(shù)據(jù)庫再同步到各節(jié)點(diǎn)分布式緩存Redis數(shù)據(jù)庫中,然后通過Fabric SDK提供的gRPC接口將溯源數(shù)據(jù)內(nèi)容哈?;缴蟼鞯紽abric區(qū)塊鏈網(wǎng)絡(luò)層。Fabric網(wǎng)絡(luò)層是由多個(gè)組織組成,組織中的節(jié)點(diǎn)負(fù)責(zé)智能合約的運(yùn)行,接收數(shù)據(jù)交互應(yīng)用層傳入的數(shù)據(jù)寫入到區(qū)塊鏈賬本中,賬本由一個(gè)區(qū)塊鏈組成,用于有序的、不可篡改的記錄存儲(chǔ)在區(qū)塊中,并用一個(gè)狀態(tài)數(shù)據(jù)庫維護(hù)當(dāng)前狀態(tài)。每個(gè)通道對(duì)應(yīng)一個(gè)賬本,每個(gè)peer節(jié)點(diǎn)為其所屬的每個(gè)通道維護(hù)一份賬本副本。使用了Raft共識(shí)機(jī)制在節(jié)點(diǎn)內(nèi)部達(dá)成強(qiáng)一致的背書響應(yīng),以保證各節(jié)點(diǎn)數(shù)據(jù)庫的一致性[23]。溯源查詢小程序?qū)又?,消費(fèi)者可以通過微信掃碼訪問溯源小程序查詢真?zhèn)?,進(jìn)行芝麻油產(chǎn)品供應(yīng)鏈的溯源查詢并參與互動(dòng)領(lǐng)取微信紅包,小程序端收集經(jīng)消費(fèi)者允許獲取到的位置等信息以用于廠家查驗(yàn)產(chǎn)品流向。芝麻油溯源系統(tǒng)的整體架構(gòu)如圖1所示。

      圖1 芝麻油溯源系統(tǒng)整體架構(gòu)圖Fig.1 Overall structure of sesame oil traceability system

      1.3 區(qū)塊鏈存儲(chǔ)方式和查詢性能的改進(jìn)

      芝麻油溯源平臺(tái)根據(jù)上述設(shè)計(jì)需求分析可以劃分為系統(tǒng)管理模塊、芝麻種植模塊、原料采購模塊、芝麻油加工管理模塊、監(jiān)管模塊、運(yùn)輸管理模塊、芝麻油溯源模塊。各個(gè)模塊參與方分別為管理端、種植戶、采購原料廠商、生產(chǎn)廠商、監(jiān)督部門、物流公司、銷售商等。本平臺(tái)使用了基于Java web開發(fā)框架Spring Boot開發(fā)的權(quán)限管理系統(tǒng)實(shí)現(xiàn)上述各個(gè)模塊的功能,通過Fabric區(qū)塊鏈官方提供的用于Java應(yīng)用開發(fā)的SDK開發(fā)連接區(qū)塊鏈網(wǎng)絡(luò)層的模塊接口,根據(jù)功能模塊分析,需要將芝麻油整個(gè)產(chǎn)業(yè)鏈上的種植信息、原料信息、加工信息、質(zhì)量檢測(cè)信息、運(yùn)輸信息、產(chǎn)品信息、銷售點(diǎn)信息上傳至區(qū)塊鏈網(wǎng)絡(luò)上?,F(xiàn)有的Fabric溯源系統(tǒng)大部分使用的都是數(shù)據(jù)直接上鏈的方式,生產(chǎn)應(yīng)用過程中隨著節(jié)點(diǎn)和數(shù)據(jù)的增加,區(qū)塊鏈存儲(chǔ)需要面對(duì)數(shù)據(jù)量和訪問量增大,對(duì)數(shù)據(jù)存儲(chǔ)系統(tǒng)的功能和性能均提出了較高的要求[24]。因此有部分研究在Fabric存儲(chǔ)基礎(chǔ)上提出新的存儲(chǔ)設(shè)計(jì)方式:例如楊信廷等[25]提出“數(shù)據(jù)庫+區(qū)塊鏈”的鏈上鏈下追溯信息雙存儲(chǔ)設(shè)計(jì)的農(nóng)產(chǎn)品追溯系統(tǒng)信息存儲(chǔ)模型,劉雙印等[26]等提出了“On-Chain+Off-Chain”農(nóng)產(chǎn)品質(zhì)量安全溯源信息協(xié)同管理存儲(chǔ)策略,王莉等[27]提出本地及鏈上雙存儲(chǔ)方式的糧食供應(yīng)鏈溯源模型,唐豪等[28]提出了一種基于區(qū)塊鏈的農(nóng)產(chǎn)品可信檢測(cè)數(shù)據(jù)鏈上鏈下分類存儲(chǔ)方法,上述研究一定程度上改進(jìn)了鏈上數(shù)據(jù)存儲(chǔ)的問題,但仍存在線下數(shù)據(jù)庫過于集中的問題,尤其是當(dāng)線下數(shù)據(jù)庫鏈下數(shù)據(jù)丟失時(shí)鏈上缺少完整溯源信息導(dǎo)致無法溯源問題。孫一萌等[29]提出使用鏈下數(shù)據(jù)庫Redis結(jié)合MPT樹實(shí)現(xiàn)鏈下數(shù)據(jù)的查詢可驗(yàn)證,縮短了區(qū)塊鏈數(shù)據(jù)驗(yàn)證查詢時(shí)間但未改善區(qū)塊鏈數(shù)據(jù)存儲(chǔ)壓力和上鏈效率,考慮到整個(gè)芝麻油產(chǎn)業(yè)鏈節(jié)點(diǎn)較多和溯源信息數(shù)據(jù)量較大帶來存儲(chǔ)壓力和鏈上讀寫慢以及溯源數(shù)據(jù)安全問題,本實(shí)驗(yàn)在本地及鏈上雙存儲(chǔ)設(shè)計(jì)的基礎(chǔ)上增加了Fabric多節(jié)點(diǎn)分布式Redis數(shù)據(jù)庫緩存線下本地溯源數(shù)據(jù)有效解決了區(qū)塊鏈數(shù)據(jù)存儲(chǔ)壓力和上鏈效率的問題,利用分布式Redis數(shù)據(jù)庫存儲(chǔ)線下信息同步MySQL備份也解決了線下數(shù)據(jù)庫過于集中導(dǎo)致數(shù)據(jù)丟失的風(fēng)險(xiǎn),設(shè)計(jì)的芝麻油溯源系統(tǒng)數(shù)據(jù)存儲(chǔ)模式流程如圖2所示。

      圖2 芝麻油溯源系統(tǒng)數(shù)據(jù)存儲(chǔ)模式流程圖Fig.2 Flowchart for data storage mode of sesame oil traceability system

      芝麻油防偽溯源系統(tǒng)具體的溯源存儲(chǔ)實(shí)現(xiàn)過程首先各模塊需要將詳細(xì)的溯源數(shù)據(jù)存儲(chǔ)到鏈下MySQL數(shù)據(jù)庫作為備份和對(duì)應(yīng)組織各節(jié)點(diǎn)上的Redis緩存數(shù)據(jù)庫中,其中溯源ID字段作為從種植農(nóng)作物到成品芝麻油銷售整個(gè)過程溯源信息的唯一標(biāo)識(shí),Redis存儲(chǔ)數(shù)據(jù)value值是MySQL中溯源信息轉(zhuǎn)成的JSON字符串,鏈上存儲(chǔ)數(shù)據(jù)是Redis中JSON字符串經(jīng)過MD5哈希算法處理之后的32 位字符串。溯源查詢時(shí)通過溯源ID分別查詢相對(duì)應(yīng)Fabric各組織節(jié)點(diǎn)上的Redis中的字符串信息和鏈上的哈希值,再次將哈希字符串信息和哈希值對(duì)比以驗(yàn)證溯源信息是否被修改。溯源系統(tǒng)主要的應(yīng)用是需要將芝麻油整個(gè)產(chǎn)業(yè)鏈上的過程信息展現(xiàn)給消費(fèi)者以驗(yàn)證真?zhèn)?,因此需要?duì)芝麻油各個(gè)批次的信息進(jìn)行快速追溯查詢。由于Fabric中查詢鏈上溯源信息是通過鏈碼讀取狀態(tài)數(shù)據(jù)庫,需要調(diào)用ChaincodeStub接口由peer節(jié)點(diǎn)通過gRPC從狀態(tài)數(shù)據(jù)庫CouchDB讀取狀態(tài)數(shù)據(jù)庫后返回給鏈碼。這個(gè)過程消耗了peer節(jié)點(diǎn)的網(wǎng)絡(luò)I/O,也增加了背書階段的延遲,尤其是在鏈碼作為獨(dú)立的外部服務(wù),與背書節(jié)點(diǎn)不在同一節(jié)點(diǎn)運(yùn)行的情況下[30]。為了減少節(jié)點(diǎn)的網(wǎng)絡(luò)I/O消耗和提高查詢的效率,本實(shí)驗(yàn)通過修改鏈碼ChaincodeStub接口,添加原屬于peer節(jié)點(diǎn)的交易模擬器對(duì)象和訪問狀態(tài)數(shù)據(jù)庫的配置功能,實(shí)現(xiàn)鏈碼直接訪問狀態(tài)數(shù)據(jù)庫。鏈碼通過溯源ID直接查詢狀態(tài)數(shù)據(jù)庫中的哈希值執(zhí)行計(jì)算形成模擬虛擬交易結(jié)果并返回給peer節(jié)點(diǎn)。peer節(jié)點(diǎn)只負(fù)責(zé)調(diào)用鏈碼,并對(duì)鏈碼返回的模擬交易結(jié)果進(jìn)行簽名背書。具體的go代碼修改過程如圖3所示。

      圖3 鏈碼直接訪問狀態(tài)數(shù)據(jù)庫部分代碼Fig.3 Code snippet for direct access of chain code to the state database

      2 系統(tǒng)應(yīng)用與分析

      本實(shí)驗(yàn)系統(tǒng)區(qū)塊鏈環(huán)境使用Fabric 2.4版本,默認(rèn)區(qū)塊配置文件區(qū)塊大小為10 M,每個(gè)區(qū)塊包含500 個(gè)交易,出塊時(shí)間間隔為2 s。測(cè)試運(yùn)行環(huán)境為一臺(tái)阿里云服務(wù)器,具體配置為4 核CPU、8 G內(nèi)存、80 G固態(tài)硬盤存儲(chǔ)空間、5 M獨(dú)享帶寬、Ubuntu 22.04操作系統(tǒng)。使用Fabric官方提供的區(qū)塊鏈性能基準(zhǔn)框架Caliper對(duì)系統(tǒng)區(qū)塊鏈性能進(jìn)行測(cè)試,主要涉及背書交易環(huán)節(jié)讀寫操作的吞吐量方面的測(cè)試數(shù)據(jù),測(cè)試性能指標(biāo)主要有交易吞吐量、交易延遲、資源利用率。交易吞吐量是指一段時(shí)間內(nèi)系統(tǒng)成功處理交易的數(shù)量,單位為TPS,表示1 s內(nèi)系統(tǒng)成功處理交易的數(shù)量,在溯源系統(tǒng)中指的是處理信息上鏈的數(shù)量。交易延遲是指一筆交易從客戶端發(fā)起至在系統(tǒng)中生效之間所耗費(fèi)的時(shí)間,在溯源系統(tǒng)中指的是一條采集信息到上鏈成功的時(shí)間。文獻(xiàn)[25-28]的雙鏈設(shè)計(jì)方案和本實(shí)驗(yàn)設(shè)計(jì)方案類似,本實(shí)驗(yàn)在此基礎(chǔ)上增加了分布式節(jié)點(diǎn)Redis緩存數(shù)據(jù)庫方案1和鏈碼直連狀態(tài)數(shù)據(jù)庫查詢方案2,有效解決了線下數(shù)據(jù)過于集中有丟失風(fēng)險(xiǎn)的問題,同時(shí)提升了存儲(chǔ)和查詢效率。為了體現(xiàn)方案1和方案2在測(cè)試性能指標(biāo)的提升效果,與文獻(xiàn)[25-28]進(jìn)行性能測(cè)試比較。本實(shí)驗(yàn)分別對(duì)以上3 種方案設(shè)計(jì)10 輪性能測(cè)試,每輪使用Caliper默認(rèn)基準(zhǔn)測(cè)試并發(fā)交易1 000 次,共計(jì)30 000 次。對(duì)統(tǒng)計(jì)實(shí)驗(yàn)的最終結(jié)果計(jì)算出平均交易吞吐量、平均交易延遲時(shí)間。溯源查詢時(shí)間測(cè)試實(shí)驗(yàn)是通過Postman接口測(cè)試軟件對(duì)3 種方案和對(duì)應(yīng)溯源記錄數(shù)量分別訪問查詢接口10 次,計(jì)算出平均查詢時(shí)間。平均交易延遲時(shí)間比較如圖4所示,平均交易吞吐量結(jié)果比較如圖5所示,平均查詢時(shí)間結(jié)果比較如圖6所示。由于本實(shí)驗(yàn)方案1和文獻(xiàn)[25-28]的雙鏈設(shè)計(jì)方案的在區(qū)塊鏈上存儲(chǔ)方式一致,針對(duì)鏈下增加的分布式緩存數(shù)據(jù)庫影響不到鏈上效率,所以對(duì)比交易吞吐量和交易延遲時(shí)間基本一致,查詢時(shí)間上由于方案1分布式節(jié)點(diǎn)Redis緩存數(shù)據(jù)庫方案中Redis的指定節(jié)點(diǎn)查詢性能高于單獨(dú)的鏈下存儲(chǔ)數(shù)據(jù)庫MySQL,所以對(duì)比查詢時(shí)間,Redis優(yōu)于MySQL,尤其隨著交易數(shù)量增大,查詢時(shí)間的差距越明顯。在本實(shí)驗(yàn)方案1的基礎(chǔ)上加上方案2的鏈碼直連狀態(tài)數(shù)據(jù)庫查詢方式在減少節(jié)點(diǎn)的網(wǎng)絡(luò)I/O消耗同時(shí)又提高了查詢的效率,所以在交易吞吐量、交易延遲時(shí)間和查詢時(shí)間方面,以上兩種方案都有明顯的優(yōu)勢(shì),對(duì)于在交易延遲時(shí)間和查詢時(shí)間上的性能有顯著提升。

      圖4 平均交易延遲時(shí)間Fig.4 Average transaction delay time

      圖5 平均交易吞吐量Fig.5 Average transaction throughput

      圖6 溯源平均查詢時(shí)間Fig.6 Average query time for traceability

      本實(shí)驗(yàn)系統(tǒng)已成功應(yīng)用于河南駐馬店某香油公司的區(qū)塊鏈防偽溯源系統(tǒng)設(shè)計(jì)過程中。通過對(duì)該企業(yè)芝麻油供應(yīng)鏈進(jìn)行實(shí)地調(diào)研,從種植和原料環(huán)節(jié)、加工環(huán)節(jié)、質(zhì)量監(jiān)管、運(yùn)輸和銷售環(huán)節(jié)分設(shè)計(jì)了芝麻油追溯系統(tǒng)采集方法,最終消費(fèi)者可以通過微信掃描芝麻油瓶身防偽碼在小程序中進(jìn)行防偽溯源查詢,防偽碼由溯源ID生成的產(chǎn)品唯一標(biāo)識(shí)碼組成,小程序后端通過溯源ID查詢到的溯源信息返回給小程序端。圖7為系統(tǒng)溯源信息采集界面圖,其為芝麻油供應(yīng)鏈各節(jié)點(diǎn)提供信息采集服務(wù),主要為芝麻種植、原料、加工、監(jiān)管、運(yùn)輸信息采集界面,系統(tǒng)各模塊通過信息采集功能上傳添加至對(duì)應(yīng)的供應(yīng)鏈數(shù)據(jù)信息,系統(tǒng)會(huì)自動(dòng)對(duì)數(shù)據(jù)進(jìn)行相應(yīng)處理,將溯源信息和其哈希值分別存儲(chǔ)到本地?cái)?shù)據(jù)庫和區(qū)塊鏈系統(tǒng)中。圖8為系統(tǒng)溯源信息上鏈數(shù)據(jù)明細(xì)查詢和區(qū)塊鏈瀏覽器網(wǎng)絡(luò)信息,圖9為消費(fèi)者通過微信掃描芝麻油產(chǎn)品上的防偽二維碼查詢產(chǎn)品真?zhèn)魏透鳝h(huán)節(jié)溯源信息以及數(shù)據(jù)的存證信息并參與掃碼領(lǐng)取紅包的營銷活動(dòng),消費(fèi)者掃碼同意獲取定位信息可以領(lǐng)取廠商提供的微信紅包驗(yàn)證防偽溯源二維碼是否被第一次掃碼驗(yàn)證,廠商可以根據(jù)獲取到的消費(fèi)者定位信息驗(yàn)證分銷商貨源銷售情況。與傳統(tǒng)芝麻油供應(yīng)鏈管理系統(tǒng)相比,基于區(qū)塊鏈的芝麻油供應(yīng)鏈防偽溯源系統(tǒng)具備去中心化防篡改的特性,不依賴某個(gè)組織和個(gè)人的同時(shí)保障數(shù)據(jù)安全,解決了芝麻油供應(yīng)鏈管理中的質(zhì)量安全問題,同時(shí)采用本實(shí)驗(yàn)提出的增加Redis緩存的改進(jìn)鏈上鏈下雙存儲(chǔ)方式方案和Fabric鏈碼直連狀態(tài)數(shù)據(jù)庫查詢方案,在一定程度上緩解了因溯源數(shù)據(jù)增長(zhǎng)過快帶給區(qū)塊鏈系統(tǒng)的存儲(chǔ)壓力,使溯源查詢效率明顯提升。

      圖7 芝麻油溯源系統(tǒng)信息采集圖Fig.7 Information acquisition of sesame oil traceability system

      圖8 芝麻油溯源系統(tǒng)信息上鏈圖Fig.8 Information chain of sesame oil traceability system

      圖9 芝麻油溯源系統(tǒng)小程序驗(yàn)證真?zhèn)嗡菰磮DFig.9 Sesame oil authentication and tracing by mini program of sesame oil traceability system

      本實(shí)驗(yàn)系統(tǒng)在企業(yè)環(huán)境運(yùn)行過程中,區(qū)塊鏈網(wǎng)絡(luò)溯源信息正常上鏈未出現(xiàn)崩潰現(xiàn)象,監(jiān)管機(jī)構(gòu)通過系統(tǒng)后臺(tái)根據(jù)溯源ID查詢鏈上數(shù)據(jù)能及時(shí)響應(yīng)并返回完整溯源詳細(xì)信息,消費(fèi)者掃描芝麻油產(chǎn)品上的防偽二維碼在小程序中能快速查詢到產(chǎn)品真?zhèn)魏彤a(chǎn)品基本溯源信息,整體運(yùn)行性能能夠滿足溯源系統(tǒng)應(yīng)用。本溯源系統(tǒng)能夠幫助企業(yè)將芝麻油的全過程質(zhì)量安全信息(種植、原料、生產(chǎn)、物流、銷售)等環(huán)節(jié)可視化,使造假者無法模仿出芝麻油生產(chǎn)過程中的全生命周期信息,從而達(dá)到防偽的目的。企業(yè)也能夠方便快捷地了解銷售點(diǎn)的庫存及出售數(shù)據(jù),及時(shí)了解產(chǎn)品銷售地域的分布,憑借追溯途徑的統(tǒng)計(jì)分析功能,完成防竄貨預(yù)警。消費(fèi)者掃碼查詢產(chǎn)品防偽溯源的同時(shí)吸引消費(fèi)者參與企業(yè)的營銷活動(dòng),增加消費(fèi)忠誠度,幫助生產(chǎn)企業(yè)了解了消費(fèi)者的消費(fèi)模式,為后期企業(yè)改善產(chǎn)品提供了強(qiáng)有力的數(shù)據(jù)支持。

      3 結(jié)論

      本實(shí)驗(yàn)主要探討基于區(qū)塊鏈技術(shù)的芝麻油防偽溯源系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)應(yīng)用過程,針對(duì)現(xiàn)有的基于Fabric框架的區(qū)塊鏈溯源系統(tǒng)隨著溯源信息數(shù)量持續(xù)增加存在的鏈上數(shù)據(jù)存儲(chǔ)壓力過大、查詢速度慢以及存儲(chǔ)數(shù)據(jù)安全性差等問題,提出了一種“區(qū)塊鏈緩存”的雙存儲(chǔ)設(shè)計(jì):將溯源數(shù)據(jù)哈希值存儲(chǔ)到鏈上區(qū)塊鏈和狀態(tài)數(shù)據(jù)庫中,鏈上同時(shí)返回區(qū)塊鏈對(duì)應(yīng)的哈希值,然后將溯源信息和返回的哈希值存儲(chǔ)在各個(gè)節(jié)點(diǎn)的Redis緩存數(shù)據(jù)庫和本地?cái)?shù)據(jù)庫中。查詢時(shí)從Redis數(shù)據(jù)庫通過溯源信息唯一ID值讀取信息,對(duì)獲取的溯源信息再次進(jìn)行MD5哈希計(jì)算,并與通過改進(jìn)過的Fabric鏈碼直連狀態(tài)數(shù)據(jù)庫方案獲取存儲(chǔ)在區(qū)塊鏈上狀態(tài)數(shù)據(jù)庫中的哈希值進(jìn)行一致性對(duì)比,從而驗(yàn)證溯源信息是否被篡改。通過將以上方案與現(xiàn)有的區(qū)塊鏈溯源系統(tǒng)存儲(chǔ)方案和查詢方法進(jìn)行實(shí)驗(yàn)對(duì)比,結(jié)果表明:

      1)針對(duì)區(qū)塊鏈中數(shù)據(jù)不可刪除修改,隨著溯源產(chǎn)業(yè)鏈節(jié)點(diǎn)拓展和數(shù)據(jù)劇增,區(qū)塊鏈需要存儲(chǔ)的數(shù)據(jù)量負(fù)荷壓力越來越大的情況,本實(shí)驗(yàn)提出了“區(qū)塊鏈緩存”的鏈上鏈下溯源信息雙存儲(chǔ)設(shè)計(jì),本地?cái)?shù)據(jù)庫和分布式節(jié)點(diǎn)Redis緩存數(shù)據(jù)庫存儲(chǔ)原始溯源數(shù)據(jù),區(qū)塊鏈上存儲(chǔ)溯源數(shù)據(jù)的哈希值,能夠提供鏈上數(shù)據(jù)高吞吐量和低延時(shí)的處理能力,解決數(shù)據(jù)安全問題的同時(shí)能夠保證數(shù)據(jù)的真?zhèn)涡浴?/p>

      2)本實(shí)驗(yàn)提出的在本地?cái)?shù)據(jù)庫存儲(chǔ)信息的同時(shí)增加分布式節(jié)點(diǎn)Redis緩存數(shù)據(jù)庫存儲(chǔ)溯源信息的雙存儲(chǔ)方案,一方面解決了線下數(shù)據(jù)庫過于集中的數(shù)據(jù)丟失無法追溯的安全問題;另一方面解決了溯源數(shù)據(jù)查詢分布式負(fù)載均衡的問題。同時(shí)采用Redis高性能緩存數(shù)據(jù)庫,在一定程度上,提高了查詢速率。

      3)隨著溯源記錄總量的增加,本實(shí)驗(yàn)提出的鏈碼直連狀態(tài)數(shù)據(jù)庫的查詢方法效率明顯提升,當(dāng)追溯記錄總量300 000 條時(shí)為例,本實(shí)驗(yàn)方法的查詢效率較傳統(tǒng)區(qū)塊鏈上查詢方法效率提高了47.36%。

      本實(shí)驗(yàn)系統(tǒng)不僅實(shí)現(xiàn)了芝麻油溯源數(shù)據(jù)的真實(shí)上鏈,消費(fèi)者還能方便快捷地查驗(yàn)所購買芝麻油的真?zhèn)尾⒛懿樵兊皆敿?xì)溯源信息,消除了消費(fèi)者對(duì)芝麻油生產(chǎn)商摻假問題的信任危機(jī),同時(shí)也方便監(jiān)管部門管控取證芝麻油產(chǎn)業(yè)鏈數(shù)據(jù),實(shí)現(xiàn)了“生產(chǎn)企業(yè) 監(jiān)管部門 消費(fèi)者”之間良好的信任氛圍,可為其他食品溯源防偽提供借鑒和參考。本實(shí)驗(yàn)中提供的一種增加分布式節(jié)點(diǎn)Redis緩存的改進(jìn)鏈上鏈下雙存儲(chǔ)方式方案,在需要存儲(chǔ)查詢海量溯源數(shù)據(jù)業(yè)務(wù)場(chǎng)景中有重要的應(yīng)用,也為其他聯(lián)盟鏈平臺(tái)的存儲(chǔ)方案提供了應(yīng)用參考。

      猜你喜歡
      鏈碼芝麻油防偽
      INTEGRITYTM ECO100再生縫紉線引入防偽技術(shù)
      芝麻油中紅外光譜研究
      煤炭與化工(2021年8期)2021-09-26 02:51:46
      你知道古代圣旨和紙鈔是怎樣防偽的嗎
      水酶法芝麻油與其他工藝芝麻油品質(zhì)差異研究
      中國油脂(2019年9期)2019-11-20 05:45:54
      一種新壓縮頂點(diǎn)鏈碼
      民國時(shí)期紙鈔上的防偽暗記
      芝麻油生產(chǎn)工藝對(duì)細(xì)辛素形成的影響
      基于鏈碼特征的幾何圖形快速識(shí)別算法*
      一種具有防偽功能的卷煙紙
      天津造紙(2015年2期)2015-01-04 08:18:15
      無損鏈碼技術(shù)的分析與比較
      灵武市| 玉林市| 石台县| 盐亭县| 九龙坡区| 全南县| 平顶山市| 西昌市| 湘潭市| 武安市| 柏乡县| 青州市| 新余市| 玉环县| 永新县| 邓州市| 息烽县| 涟水县| 泽州县| 克东县| 修文县| 江孜县| 韶关市| 台州市| 武安市| 遂宁市| 融水| 密云县| 阜宁县| 临朐县| 晋中市| 乌拉特后旗| 济源市| 镇原县| 威远县| 乌拉特前旗| 张家口市| 大理市| 诸暨市| 科技| 普定县|