摘要:
隨著我國糧食物流在公鐵水多式聯(lián)運(yùn)過程中面臨的挑戰(zhàn)日益增多,信息共享和管控成為關(guān)鍵問題。針對傳統(tǒng)的糧食溯源體系面臨數(shù)據(jù)中心化、信息不透明、數(shù)據(jù)易偽造等問題,提出一種糧食多式聯(lián)運(yùn)區(qū)塊鏈分級多鏈溯源模型。該模型包含一級鏈Ms—Raft算法、二級鏈R—PBFT算法和智能合約算法,一級鏈和二級鏈通過哈希鎖定相互錨定,保證數(shù)據(jù)傳輸?shù)目煽啃浴Ρ仍囼?yàn)表明,分級多鏈模型的寫入吞吐量為170 tps、讀取吞吐量為280 tps、平均記賬時延為0.25 s、平均寫入時延為0.50 s、平均查詢時間為0.41 s,與單鏈模型相比有更高的網(wǎng)絡(luò)性能、共識效率和運(yùn)行效率,且安全性更高,滿足糧食多式聯(lián)運(yùn)溯源的需求。
關(guān)鍵詞:糧食多式聯(lián)運(yùn);區(qū)塊鏈;溯源;跨鏈技術(shù)
中圖分類號:TP311; S5
文獻(xiàn)標(biāo)識碼:A
文章編號:2095-5553 (2025) 03-0195-07
收稿日期:2024年8月29日" 修回日期:2024年10月15日*
基金項目:國家重點(diǎn)研發(fā)計劃課題(2022YFD2100202)
第一作者:祝玉華,女,1964年生,山東菏澤人,博士,教授;研究方向?yàn)榧Z食信息化等。E-mail: yhzhu@haut.edu.cn
Blockchain-based graded multi-chain traceability model for food multimodal transportation
Zhu Yuhua1," 2, Meng Li’ao1," 2, Zhen Tong1," 2, Li Zhihui1," 2
(1. College of Information Science and Engineering, Henan University of Technology, Zhengzhou, 450001, China;
2. Key Laboratory of Ministry of Education Grain Information Processing and Control, Henan University of
Technology, Zhengzhou, 450001, China)
Abstract:
With the increasing challenges faced by China’s food logistics in multimodal transportation by road, rail, and water, information sharing and control have become key issues. A graded multi-chain traceability model for food multimodal transport based on blockchain is proposed to address problems with traditional food traceability systems, such as data centralization, lack of information transparency, and data forgery. This model includes a primary chain using Ms—Raft algorithm, a secondary chain using R—PBFT algorithm, and smart contract algorithms. The primary and secondary chains are anchored to each other through hash locking to ensure the reliability of data transmission. Comparative experiments show that the multi-chain model achieves a write throughput of 170 tps and read throughput of 280 tps, with average delays of 0.25 s for accounting and 0.50 s for writing, and an average query time of 0.41 s. Compared with the single-chain model, it offers improved network performance, consensus efficiency, and operational efficiency, with enhanced security, meeting the traceability requirements for food multimodal transportation.
Keywords:
food multimodal transportation; blockchain; traceability; cross-chain technology
0 引言
我國糧食物流規(guī)模較大,但在物流管理方面上下游產(chǎn)業(yè)與區(qū)域間的物流連接不順暢,物流與運(yùn)輸?shù)男枨蟊容^零散,缺少對整個產(chǎn)業(yè)鏈的需求集成[1]。糧食多式聯(lián)運(yùn)[2]是利用兩種以上的運(yùn)輸方式,將糧食從產(chǎn)地或起運(yùn)地運(yùn)輸?shù)侥康牡?。這種運(yùn)輸方式結(jié)合了各種運(yùn)輸方式的優(yōu)點(diǎn),能夠?qū)崿F(xiàn)路線多樣化、運(yùn)輸時間短、運(yùn)輸成本低等目標(biāo)[3],為解決我國糧食物流在公路、鐵路、水路多式聯(lián)運(yùn)過程中的問題提供新途徑[4]。
目前,我國糧油食品供應(yīng)鏈中出現(xiàn)較多的食品安全隱患。如農(nóng)藥殘留超標(biāo)、食品添加劑的非法使用、非法運(yùn)輸、假冒等。要解決以上問題,需要建立一套可靠、準(zhǔn)確、高效的可追溯體系。傳統(tǒng)的追溯體系是通過中央數(shù)據(jù)庫來進(jìn)行數(shù)據(jù)的存儲與管理,易出現(xiàn)信息的篡改、數(shù)據(jù)不公開透明、信息遺失等問題[5]。區(qū)塊鏈具有去中心化、不可篡改、可溯源、公開透明等特點(diǎn),在跨境物流溯源、冷鏈?zhǔn)称匪菰?、農(nóng)產(chǎn)品溯源等領(lǐng)域有著廣泛的應(yīng)用,也為糧食多式聯(lián)運(yùn)溯源提供新的解決方案。
近年來,國內(nèi)外學(xué)者在區(qū)塊鏈糧食溯源相關(guān)領(lǐng)域已經(jīng)做出一些研究。范賢麗[6]結(jié)合區(qū)塊鏈、智能合約、星際文件系統(tǒng)IPFS設(shè)計基于區(qū)塊鏈的糧食供應(yīng)鏈信息系統(tǒng)。Wang等[7]構(gòu)建基于區(qū)塊鏈的大米供應(yīng)鏈信息監(jiān)管模型,采用多種加密算法對敏感數(shù)據(jù)進(jìn)行加密,優(yōu)化大米供應(yīng)鏈監(jiān)管機(jī)構(gòu)的信息監(jiān)管流程。Yu等[8]提出一種利用財團(tuán)b區(qū)塊鏈和智能合約執(zhí)行農(nóng)產(chǎn)品交易的方法,實(shí)現(xiàn)農(nóng)產(chǎn)品供應(yīng)鏈的跟蹤,提高交易的完整性、可靠性和安全性。Xu等[9]設(shè)計了小麥質(zhì)量安全溯源系統(tǒng),實(shí)現(xiàn)了安全可信、簡潔高效的跨鏈信息交互和全流程溯源。Peng等[10]提出一種基于“數(shù)據(jù)加密+智能合約+中繼鏈”的跨鏈數(shù)據(jù)管理機(jī)制,實(shí)現(xiàn)大米供應(yīng)鏈數(shù)據(jù)和人員的精細(xì)化管理。Xie等[11]使用雙鏈存儲結(jié)構(gòu)設(shè)計了一種用于農(nóng)產(chǎn)品信息追溯的安全數(shù)據(jù)存儲方案,利用鏈?zhǔn)綌?shù)據(jù)結(jié)構(gòu)來存儲區(qū)塊鏈交易哈希,確保農(nóng)產(chǎn)品的數(shù)據(jù)不會被惡意篡改或破壞。
以上學(xué)者的研究雖解決一些糧食溯源方面的基本問題,如數(shù)據(jù)存儲、安全性、共識算法性能等,但大多局限于區(qū)塊鏈單鏈結(jié)構(gòu),逐漸不能滿足糧食供應(yīng)鏈上數(shù)據(jù)信息更新迭代帶來的可追溯性低、監(jiān)管效率低、及時性差、安全性低等問題。另外,一些多鏈結(jié)構(gòu)也存在可擴(kuò)展性差、效率低等問題,在糧食多式聯(lián)運(yùn)面臨的長鏈條、多環(huán)節(jié)、多主體和溯源數(shù)據(jù)量大的問題仍亟待解決?;诖?,本文深入分析糧食多式聯(lián)運(yùn)供應(yīng)鏈的環(huán)節(jié)和關(guān)鍵信息,根據(jù)不同供應(yīng)鏈環(huán)節(jié)的復(fù)雜性和信息冗余的特點(diǎn),提出一種糧食多式聯(lián)運(yùn)區(qū)塊鏈分級多鏈溯源模型,以實(shí)現(xiàn)對糧食全流程的溯源與監(jiān)管。
1 分級多鏈模型
1.1 模型框架
糧食多式聯(lián)運(yùn)供應(yīng)鏈可分為生產(chǎn)、加工、物流(公鐵水)、存儲、銷售5個階段[12]。生產(chǎn)階段指農(nóng)民在農(nóng)場上進(jìn)行的生產(chǎn)活動,在區(qū)塊內(nèi)記錄種子的來源、栽培者、糧食生長期間的溫度和濕度、糧食成熟時的產(chǎn)量和品質(zhì)等信息。加工階段是將原材料轉(zhuǎn)化為成品的過程,涉及可追溯性信息,如加工設(shè)備、加工時間、批次等。在這個階段,可以通過RFID記錄生產(chǎn)日期和使用的原材料清單等信息,并生成唯一的代碼。在物流階段,車輛(船只)信息、運(yùn)輸時間、車(船艙)內(nèi)環(huán)境溫度等可追溯性信息上傳到區(qū)塊鏈。在存儲階段,需要記錄和保存?zhèn)}庫號、產(chǎn)品來源、倉庫溫度等可追溯性信息。銷售階段包括可跟蹤性數(shù)據(jù),例如商店信息、商店經(jīng)理信息和營業(yè)執(zhí)照信息。為保證可追溯信息的共享,同時保護(hù)私有數(shù)據(jù)的安全,將糧油食品相關(guān)區(qū)塊鏈可追溯數(shù)據(jù)分為公共數(shù)據(jù)和私有數(shù)據(jù)?;贖yperledger Fabric2.2平臺設(shè)計分級多鏈的糧食多式聯(lián)運(yùn)區(qū)塊鏈溯源模型總體框架,如圖1所示。
該模型通過物聯(lián)網(wǎng)等自動化設(shè)備收集糧食食品供應(yīng)鏈各個環(huán)節(jié)的數(shù)據(jù)信息后,通過數(shù)據(jù)分類和上傳智能合約,將數(shù)據(jù)信息上傳到Hyperledger Fabric為底層結(jié)構(gòu)的區(qū)塊鏈網(wǎng)絡(luò)。為保證糧食多式聯(lián)運(yùn)溯源模型中加密信息和共享信息的安全可靠,解決各環(huán)節(jié)信息復(fù)雜多樣的問題,提出基于區(qū)塊鏈的分級多鏈模型。分級多鏈的定義:一級鏈?zhǔn)窍到y(tǒng)生成的第一條鏈,負(fù)責(zé)對二級鏈進(jìn)行確認(rèn),保證二級鏈能夠正常運(yùn)行;二級鏈?zhǔn)峭ㄟ^側(cè)鏈技術(shù)擴(kuò)展一級鏈而生成的區(qū)塊鏈。如果一條鏈?zhǔn)且患夋湹难由?,則稱為二級鏈;如果它是二級鏈的延伸,則稱為三級鏈,依此類推。該模型為供應(yīng)鏈的每個環(huán)節(jié)構(gòu)建了一個區(qū)塊鏈二級鏈,用于存儲該環(huán)節(jié)中需要存儲的數(shù)據(jù)。根據(jù)生產(chǎn)、加工、物流、存儲、銷售5大環(huán)節(jié),共設(shè)計5條子鏈。區(qū)塊鏈一級鏈存儲二級鏈的索引信息和哈希值等數(shù)據(jù)信息。
因?yàn)橐患夋湸鎯Φ臄?shù)據(jù)較少,故只需要創(chuàng)建1個一級鏈。一級鏈和二級鏈之間的跨鏈處理使用哈希時間鎖定技術(shù)來相互錨定。哈希時間鎖定包括兩個部分:哈希鎖定和時間鎖定。分級多鏈中的時間鎖定指一級鏈和二級鏈之間的事務(wù),只有在規(guī)定的時間內(nèi)完成才有效,超過時間無效。哈希鎖定意味著對于哈希值H,如果提供的秘密值R使Hash(R)=H,則承諾有效,否則承諾無效。在區(qū)塊鏈分級多鏈結(jié)構(gòu)下,一級鏈、二級鏈通過哈希時間鎖定的方式相互錨定。如果由于各種原因?qū)е聰?shù)據(jù)信息無法查詢或上傳成功,時間鎖定和哈希鎖定可以防止數(shù)據(jù)信息被不法分子竊取。基于區(qū)塊鏈技術(shù)的去中心化、可追溯性、防篡改等特點(diǎn),結(jié)合糧食多式聯(lián)運(yùn)供應(yīng)鏈的各個環(huán)節(jié),構(gòu)建區(qū)塊鏈網(wǎng)絡(luò)中相應(yīng)的節(jié)點(diǎn)[13]。利用基于區(qū)塊鏈的分級多鏈存儲模型對可追溯數(shù)據(jù)進(jìn)行管理,構(gòu)建糧食多式聯(lián)運(yùn)供應(yīng)鏈溯源監(jiān)管模型,可以實(shí)現(xiàn)對整個糧食多式聯(lián)運(yùn)供應(yīng)鏈的監(jiān)管。
1.2 一級鏈算法Ms—Raft
Raft是一種實(shí)現(xiàn)高可用副本的共識算法,由于Raft需要一個Leader來驅(qū)動協(xié)議的執(zhí)行,通常采用輪詢Leader選舉機(jī)制,在所有節(jié)點(diǎn)中隨機(jī)選擇一個Leader[14]。Raft有3種狀態(tài):Follower(追隨者)、Candidate(候選人)和Leader(領(lǐng)導(dǎo)者),可以實(shí)現(xiàn)互相轉(zhuǎn)換。但當(dāng)選中的領(lǐng)導(dǎo)者出現(xiàn)性能問題時,協(xié)議將暫時失去作用[15]。
為解決這個問題,提出一種融合多策略Leader選舉機(jī)制的Ms—Raft算法,該算法允許節(jié)點(diǎn)在認(rèn)為Leader存在性能問題時主動觸發(fā)新一輪的Leader選舉,并在指定的優(yōu)先級隊列中替換這個Leader。為實(shí)現(xiàn)該算法對Leader性能的實(shí)時測量,設(shè)計主動選舉機(jī)制和選舉超時機(jī)制以改進(jìn)算法心跳協(xié)議,以解決當(dāng)Leader出現(xiàn)性能下降時不能選出最新Leader的問題。
首先,當(dāng)Raft節(jié)點(diǎn)開始選舉時觸發(fā)主動選舉機(jī)制,優(yōu)先檢查節(jié)點(diǎn)的Tps、設(shè)置次數(shù)和處理時間,如不在范圍內(nèi),則拒絕請求;然后,判斷Raft節(jié)點(diǎn)時延,計算抖動值,在范圍內(nèi)則更新延遲值,否則拒絕請求。該算法實(shí)時測量Leader節(jié)點(diǎn)的性能,剔除性能較低的節(jié)點(diǎn)。該主動觸發(fā)選舉機(jī)制如圖2所示。
為快速選出性能更好的Leader節(jié)點(diǎn),設(shè)計基于服務(wù)器優(yōu)先級的選舉超時機(jī)制,將服務(wù)器的優(yōu)先級分為3個級別,分別用1、2、3表示。數(shù)字越小,優(yōu)先級越高。它根據(jù)服務(wù)器的狀態(tài)信息計算出相應(yīng)的服務(wù)器級別,并為不同優(yōu)先級的服務(wù)器分配不同級別的隨機(jī)選舉超時時間。Raft算法推薦的150~300ms選舉超時分為3個級別:優(yōu)先級為1服務(wù)器的150~200ms選舉超時,優(yōu)先級為2服務(wù)器的200~250ms選舉超時,優(yōu)先級為3服務(wù)器的250~300ms選舉超時。高優(yōu)先級服務(wù)器成為領(lǐng)導(dǎo)者的概率更高,因?yàn)樗鼈兊碾S機(jī)持續(xù)時間更短。服務(wù)器級計算策略包括正相關(guān)因素和負(fù)相關(guān)因素[16]。例如,服務(wù)器的優(yōu)先級隨吞吐量狀態(tài)信息的增加而增加,隨共識延遲和傳播延遲而降低,以確保所有服務(wù)器的優(yōu)先級都是動態(tài)變化的。
根據(jù)服務(wù)器優(yōu)先級進(jìn)行Leader選舉,在隨機(jī)時間內(nèi),只有優(yōu)先級最高的部分服務(wù)器更接近,這相當(dāng)于間接減少了參與選舉的服務(wù)器數(shù)量,同時也篩選出性能和穩(wěn)定性更好的服務(wù)器。通過設(shè)置合適的優(yōu)先級計算規(guī)則,集群理論上可以在一輪Leader選舉過程中選出性能和穩(wěn)定性較好的Leader。優(yōu)先級選舉超時機(jī)制的算法流程如圖3所示。
1.3 二級鏈算法R—PBFT
現(xiàn)有的區(qū)塊鏈共識算法集成了聯(lián)盟鏈、公鏈和私有鏈,如PoW、PoS、DPoS、PBFT等共識算法。PBFT共識算法獨(dú)立于數(shù)字貨幣,具有較低的通信復(fù)雜度[17]。此外,PBFT可以在一定條件下容納故障節(jié)點(diǎn)和惡意節(jié)點(diǎn)的存在,提供系統(tǒng)的安全性或靈活性。
由于該模型為糧食溯源模型,對數(shù)據(jù)信息的安全性和可信度要求較高,因此,在原有PBFT共識算法的基礎(chǔ)上,增加可信度標(biāo)準(zhǔn),二級鏈采用R—PBFT共識算法解決信息安全問題。如果上傳到二級鏈的信息是惡意的,通過設(shè)置可信信息,可以大大降低信息傳輸?shù)乃俣群统晒β?,從而防止犯罪分子惡意上傳?8]。假設(shè)參與R—PBFT共識算法的節(jié)點(diǎn)中有m個拜占庭節(jié)點(diǎn),所有節(jié)點(diǎn)的和為N,所有節(jié)點(diǎn)按一定比例劃分為共識節(jié)點(diǎn)CN和預(yù)設(shè)節(jié)點(diǎn)PN。共識節(jié)點(diǎn)參與共識過程,預(yù)設(shè)節(jié)點(diǎn)將共識結(jié)果保存為后續(xù)節(jié)點(diǎn),但不參與共識過程。在R—PBFT共識開始之前,所有節(jié)點(diǎn)都是普通節(jié)點(diǎn)。如果一個節(jié)點(diǎn)想要進(jìn)入共識節(jié)點(diǎn)組,需要提交申請并向全網(wǎng)廣播身份注冊。當(dāng)節(jié)點(diǎn)通過審查時,將進(jìn)入共識節(jié)點(diǎn)組。如果有太多的CN節(jié)點(diǎn),整個共識過程將受到影響,而太少將影響共識結(jié)果。因此,在比較中,選擇70%的節(jié)點(diǎn)組成CN集群,其余30%作為PN集群。當(dāng)CN節(jié)點(diǎn)達(dá)到設(shè)置的閾值時,其他普通節(jié)點(diǎn)按照入網(wǎng)的先后順序進(jìn)入PN集群。將CN節(jié)點(diǎn)集群設(shè)置為CCN,PN節(jié)點(diǎn)集群設(shè)置為CPN,兩者應(yīng)滿足式(1)。
N=CCN+CPN
(1)
在共識過程中,所有處于初始狀態(tài)的公共節(jié)點(diǎn)都有0個點(diǎn)。在一輪共識過程中,當(dāng)共識主節(jié)點(diǎn)發(fā)起共識并驗(yàn)證共識從節(jié)點(diǎn)時,主節(jié)點(diǎn)有+1點(diǎn),所有次節(jié)點(diǎn)都有+1點(diǎn)。當(dāng)共識主節(jié)點(diǎn)故障或由于惡意節(jié)點(diǎn)導(dǎo)致共識失敗時,發(fā)起共識的主節(jié)點(diǎn)請求少2分。當(dāng)積分化簡為負(fù)數(shù)時,自動退出共識,由預(yù)設(shè)節(jié)點(diǎn)補(bǔ)充[19]。R—PBFT算法流程如圖4所示。
與傳統(tǒng)的PBFT共識算法相比,二級鏈R—PBFT算法不僅擴(kuò)展PBFT節(jié)點(diǎn)更快達(dá)成共識、更低延遲、更高吞吐量、更節(jié)能的優(yōu)勢,而且增加信用信息標(biāo)準(zhǔn),降低糧食食品供應(yīng)鏈上非法分子破壞數(shù)據(jù)的頻率,提高數(shù)據(jù)信息的安全性。如果犯罪分子想要篡改和破壞數(shù)據(jù)信息,那么他們自己的信任信息就會減少,他們的節(jié)點(diǎn)也會退出共識。該算法可以有效地保證記錄信息的安全性和可信度,并減少犯罪分子破壞數(shù)據(jù)信息的數(shù)量和成功率。
1.4 智能合約算法
智能合約是一種通過編程代碼實(shí)現(xiàn)信息傳播、驗(yàn)證和合同執(zhí)行的計算機(jī)協(xié)議,合同參與者可以參與修改這些協(xié)議。智能合約在區(qū)塊鏈網(wǎng)絡(luò)上具有安全、有序、可驗(yàn)證、去中心化、自動執(zhí)行等特點(diǎn)[20],可用于糧食多式聯(lián)運(yùn)供應(yīng)鏈溯源系統(tǒng),有效改善其溯源時間長、速度慢的缺點(diǎn)。智能合約架構(gòu)如圖5所示。
如果上傳的數(shù)據(jù)不符合標(biāo)準(zhǔn),例如:含水量超標(biāo)、農(nóng)藥重金屬含量超標(biāo)等。將及時通知相關(guān)企業(yè)通過智能合約進(jìn)行整改,整改后再進(jìn)行判斷。如果數(shù)據(jù)符合標(biāo)準(zhǔn),則直接上傳到二級鏈。
智能合約用于數(shù)據(jù)判斷的算法流程如圖6所示。
當(dāng)數(shù)據(jù)上傳到二級鏈時,一級鏈和二級鏈通過哈希時間鎖定相互錨定,并通過數(shù)據(jù)上傳查詢智能合約上傳查詢數(shù)據(jù)。通過哈希鎖定驗(yàn)證數(shù)據(jù)是否符合標(biāo)準(zhǔn),返回需要的數(shù)據(jù),如二級鏈ID、數(shù)據(jù)鍵值、產(chǎn)品批號等。將數(shù)據(jù)信息二級鏈上傳到一級鏈的跨鏈上傳算法流程如圖7所示。在圖7中,Hash(R)=H和時間是哈希時間鎖定的先決條件。
2 試驗(yàn)結(jié)果與分析
2.1 環(huán)境部署
為分析模型的性能,設(shè)計和部署具有5個節(jié)點(diǎn)的一級鏈(采用Ms—Raft共識機(jī)制),5條10節(jié)點(diǎn)的二級鏈(采用R—PBFT共識機(jī)制)的區(qū)塊鏈分級多鏈網(wǎng)絡(luò)結(jié)構(gòu)。區(qū)塊鏈網(wǎng)絡(luò)基于Fabric操作系統(tǒng)構(gòu)建的多個docker容器,構(gòu)建在CentOS Linux 7.9操作系統(tǒng)上。Fabric網(wǎng)絡(luò)中所需的對等體通過docker compose命令部署,智能合約使用go編程語言編寫,使用帶有Fabric框架的couchdb作為存儲數(shù)據(jù)的數(shù)據(jù)庫。將生產(chǎn)、加工、物流、存儲、銷售5個環(huán)節(jié)設(shè)置為組織,并添加到區(qū)塊鏈一級鏈中。各企業(yè)根據(jù)自身需求構(gòu)建二級鏈,并根據(jù)企業(yè)需求設(shè)置兩個相關(guān)部門和一個監(jiān)管部門,如圖8所示。
將糧食多式聯(lián)運(yùn)供應(yīng)鏈的各個環(huán)節(jié)設(shè)為5個組織,每個組織包含兩個節(jié)點(diǎn)。為保證監(jiān)管機(jī)構(gòu)的權(quán)威性,在Fabric網(wǎng)絡(luò)中增加3個排序節(jié)點(diǎn)。排序節(jié)點(diǎn)與普通節(jié)點(diǎn)相同,不同的組織可以通過配置證書來獲得不同的權(quán)限,ca1和ca2是由5個環(huán)節(jié)和監(jiān)管部門生成的證書。系統(tǒng)管理員可以實(shí)時查看區(qū)塊鏈的交易狀態(tài)信息,如節(jié)點(diǎn)數(shù)、合約數(shù)、區(qū)塊數(shù)、交易數(shù)等。
與傳統(tǒng)單鏈模型進(jìn)行對比試驗(yàn),部署兩條具有5個節(jié)點(diǎn)的區(qū)塊鏈單鏈網(wǎng)絡(luò)結(jié)構(gòu)(分別采用Raft共識機(jī)制和PBFT共識機(jī)制)。選擇HyperledgerFabric性能測試工具Caliper作為測試平臺,主要測試指標(biāo)包括數(shù)據(jù)寫入和查詢的吞吐量、共識記賬時延和寫入查詢的效率。
2.2 試驗(yàn)結(jié)果
為測試區(qū)塊鏈模型網(wǎng)絡(luò)性能,設(shè)置不同的發(fā)送速率(50事務(wù)數(shù)/次、100事務(wù)數(shù)/次、200事務(wù)數(shù)/次、500事務(wù)數(shù)/次、1 000事務(wù)數(shù)/次),發(fā)送速率表示每次寫入或查詢操作時發(fā)送的事務(wù)量,單位為事務(wù)數(shù)/次,1個事務(wù)表示客戶機(jī)向服務(wù)器發(fā)送請求,然后服務(wù)器做出響應(yīng)的過程。測試的指標(biāo)為數(shù)據(jù)寫入和查詢的吞吐量,吞吐量表示為每秒完成的事務(wù)量,單位為事務(wù)數(shù)/s,即tps。分別測試本文模型、Raft單鏈模型和PBFT單鏈模型,測試結(jié)果如圖9所示。
由圖9可知,分級多鏈模型寫入和查詢的吞吐量均高于單鏈模型,且當(dāng)發(fā)送速率小于100事務(wù)數(shù)/次時,寫入和查詢的吞吐量均呈線性增加;在發(fā)送速率為100~200事務(wù)數(shù)/次,查詢吞吐量增長趨勢明顯高于單鏈模型;在發(fā)送速率為200~1 000事務(wù)數(shù)/次,兩者皆趨于平穩(wěn),單鏈模型的寫入吞吐量穩(wěn)定于150 tps左右,查詢吞吐量穩(wěn)定于180 tps左右;而本文模型寫入吞吐量穩(wěn)定于170 tps左右,查詢吞吐量穩(wěn)定于280 tps左右。因此,本文模型具有較高的寫入和查詢的吞吐量。
為測試區(qū)塊鏈模型的共識效率,將出塊時間設(shè)置為0.2~2.0s,記錄共識記賬的最大、最小和平均時延,結(jié)果如圖10所示。記賬完成時延與出塊時間正相關(guān),最小時延穩(wěn)定于0.16 s,在1.4s出塊時間前,最大時延均低于0.5s,平均時延為0.25 s左右。
為對比單鏈模型的記賬時延,取平均時延進(jìn)行對比試驗(yàn),出塊時間仍設(shè)置為0.2~2.0s,記錄本文模型和單鏈模型的平均時延,結(jié)果如圖11所示。在0.2~0.6s,三者的平均記賬時延均有一定增長;0.6s后本文模型和Raft單鏈模型均趨于平穩(wěn),PBFT單鏈模型仍有一定增長,且到1.4s后趨于平穩(wěn);整體上,本文模型的記賬時延低于單鏈模型,有更高的共識效率。
為測試分級多鏈模型的運(yùn)行效率,設(shè)置100次試驗(yàn)下數(shù)據(jù)的寫入與查詢的效率,所有結(jié)果為執(zhí)行100次試驗(yàn)的平均值。如圖12所示,本文模型的數(shù)據(jù)的平均寫入時延為0.50s,Raft單鏈模型的寫入時延為0.58s,PBFT單鏈模型的寫入時延為0.81s。相比而言,本文模型的寫入效率更高。
如圖13所示,本文模型公有數(shù)據(jù)的平均查詢時間為0.31 s,私有數(shù)據(jù)的平均查詢時間為0.51 s。由于一級鏈結(jié)構(gòu)更簡單,且通過Ms—Raft算法篩選出的性能更高的領(lǐng)導(dǎo)節(jié)點(diǎn),所以查詢速度更快。
由于單鏈模型僅有一種算法,公有數(shù)據(jù)和私有數(shù)據(jù)使用同一種算法做溯源查詢,因此,僅對比其與分級多鏈模型的平均查詢時間,結(jié)果如圖14所示。從測試結(jié)果來看,Raft單鏈模型平均查詢時間為0.62 s,PBFT單鏈模型平均查詢時間為0.54 s,分級多鏈模型平均查詢時間為0.41 s,具有較高的數(shù)據(jù)查詢效率即溯源效率。
在安全性方面,傳統(tǒng)的單鏈區(qū)塊鏈結(jié)構(gòu),算法單一,數(shù)據(jù)處理效率低。尤其在糧食溯源數(shù)據(jù)量大的情況下,當(dāng)數(shù)據(jù)寫入?yún)^(qū)塊鏈中時,如果有不法分子對其進(jìn)行破壞,就會有大量數(shù)據(jù)被篡改流出,給企業(yè)造成嚴(yán)重?fù)p失。所提出的區(qū)塊鏈分級多鏈模型的存儲結(jié)構(gòu),針對數(shù)據(jù)信息的脆弱性,設(shè)置分級多鏈結(jié)構(gòu),并使用哈希鎖定在一級鏈、二級鏈之間相互錨定。如果要攻擊二級鏈,就必須先攻擊一級鏈,而攻擊一級鏈的成本巨大,降低被攻擊的可能性,從而保證數(shù)據(jù)的安全可靠,防止非法分子破壞。
3 結(jié)論
針對傳統(tǒng)的糧食溯源體系面臨數(shù)據(jù)中心化、信息不透明、數(shù)據(jù)易偽造等問題,提出一種糧食多式聯(lián)運(yùn)區(qū)塊鏈分級多鏈溯源模型。
1)" 一級鏈上設(shè)計Ms—Raft共識機(jī)制,二級鏈上設(shè)計R—PBFT共識機(jī)制,一級鏈和二級鏈通過哈希鎖定進(jìn)行錨定,使鏈上的數(shù)據(jù)更難以被篡改,提高數(shù)據(jù)的安全性和可靠性,保證可追溯系統(tǒng)上數(shù)據(jù)的真實(shí)性。
2)" 與單鏈模型相比,所提模型有更高的網(wǎng)絡(luò)性能、共識效率和運(yùn)行效率,該模型的寫入吞吐量為170 tps、讀取吞吐量為280 tps、平均記賬時延為0.25 s、平均寫入時延為0.50 s、平均查詢時間為0.41 s??梢越鉀Q傳統(tǒng)區(qū)塊鏈單鏈結(jié)構(gòu)下由于信息復(fù)雜導(dǎo)致的操作速度慢、交易吞吐量低的問題。
所提出的模型可用于搭建糧食多式聯(lián)運(yùn)溯源平臺,對糧食進(jìn)行全流程的溯源與監(jiān)管,對于保障糧食質(zhì)量安全,提高人們的整體生活質(zhì)量具有重要意義。
參 考 文 獻(xiàn)
[1] 牟能冶, 程馳堯. 面向突發(fā)事件的糧食鐵水聯(lián)運(yùn)網(wǎng)絡(luò)抗毀性研究[J]. 安全與環(huán)境學(xué)報, 2023, 23(3): 713-723.
Mou Nengye, Cheng Chiyao. Study on the invulnerability of rail-water intermodal transportation network of grain for emergencies [J]. Journal of Safety and Environment, 2023, 23(3): 713-723.
[2]
Han B, Wan M, Zhou Y. Evaluation of multimodal transport in China based on hesitation fuzzy multiattribute decision-making [J]. Mathematical Problems in Engineering, 2020, 2020(1): 1823068.
[3]
Hu B, Xu A, Dong X. Evaluating the comprehensive development level and coordinated relationships of urban multimodal transportation: A case study of China’s major cities [J]. Land, 2022, 11(11): 1949.
[4] Shen J, Zong H. Identification of critical transportation cities in the multimodal transportation network of China [J]. Physica A: Statistical Mechanics and its Applications, 2023, 628: 129174.
[5] Bhutta M N M, Khwaja A A, Nadeem A, et al. A survey on blockchain technology: Evolution, architecture and security [J]. IEEE Access, 2021, 9: 61048-61073.
[6] 范賢麗. 基于區(qū)塊鏈和可定制智能合約的糧食供應(yīng)鏈信息系統(tǒng)的設(shè)計與實(shí)現(xiàn)[D]. 北京: 北京郵電大學(xué), 2019.
Fan Xianli. Design and implementation of a grain supply chain information system based on blockchain and customizable smart contracts [D]. Beijing: Beijing University of Posts and Telecommunications, 2019.
[7] Wang J, Zhang X, Xu J, et al. Blockchain-based information supervision model for rice supply chains [J]. Computational Intelligence and Neuroscience, 2022, 2022(1): 2914571.
[8] Yu C, Zhan Y, Li Z. Using blockchain and smart contract for traceability in agricultural products supply chain [C]. 2020 International Conference on Internet of Things and Intelligent Applications (ITIA). IEEE, 2020: 1-5.
[9] Xu J, Han J, Qi Z, et al. A reliable traceability model for grain and oil quality safety based on blockchain and industrial internet [J]. Sustainability, 2022, 14(22): 15144.
[10] Peng X, Zhang X, Wang X, et al. Research on the cross-chain model of rice supplychain supervision based on parallel blockchain and smart contracts [J]. Foods, 2022, 11(9): 1269.
[11] Xie C, Sun Y, Luo H. Secured data storage scheme based on blockchain for agricultural products tracking [C]. 2017 3rd International Conference on Big Data Computing and Communications(BIGCOM). IEEE, 2017: 45-50.
[12] Xu J P, Han J Q, Zhang X, et al. Research on traceability of grain and oil quality and safety based on trusted blockchain and trusted identification [J]. Food Science, 2022: 1-16.
[13] Dong Y, Zhang X, Xu J, et al. Blockchain-based traceability model for grains and oils whole supply chain [J]. Food Science, 2020, 41(9): 30-36.
[14] 易黎, 盧新宇, 湯鯤, 等. 區(qū)塊鏈共識算法研究綜述[J]. 電子設(shè)計工程, 2024, 32(6): 161-170.
Yi Li, Lu Xinyu, Tang Kun, et al. Overview on consensus algorithms of blockchain [J]. Electronic Design Engineering, 2024, 32 (6): 161-170.
[15] Huang D, Ma X, Zhang S. Performance analysis of the raft consensus algorithm for private blockchains [J]. IEEE Transactions on Systems, Man, and Cybernetics: Systems, 2019, 50(1): 172-181.
[16]
李莉, 杜慧娜, 李濤. 基于群簽名與屬性加密的區(qū)塊鏈可監(jiān)管隱私保護(hù)方案[J]. 計算機(jī)工程, 2022, 48(6): 132-138.
Li Li, Du Huina, Li Tao. Blockchain supervisable privacy protection scheme based on group signature and attribute encryption [J]. Computer Engineering, 2022, 48(6): 132-138.
[17] Lu S, Zhang X, Zhao R, et al. P—Raft: An efficient and robust consensus mechanism for consortium blockchains [J]. Electronics, 2023, 12(10): 2271.
[18] 丁庭琛, 陳世平. 基于信用分級的PBFT共識算法改進(jìn)方案[J]. 計算機(jī)系統(tǒng)應(yīng)用, 2020, 29(9): 255-259.
Ding Tingchen, Chen Shiping. Improved PBFT consensus mechanism based on credit-layered mechanism [J]. Computer System Application, 2020, 29(9): 255-259.
[19] Yu H, Xu D, Luo N, et al. Design of the blockchain multi-chain traceability supervision model for coarse cereal supply chain [J]. Transactions of the Chinese Society of Agricultural Engineering, 2021, 37(20): 323-332.
[20] 于華竟, 徐大明, 羅娜, 等. 雜糧供應(yīng)鏈區(qū)塊鏈多鏈追溯監(jiān)管模型設(shè)計[J]. 農(nóng)業(yè)工程學(xué)報, 2021, 37(20): 323-332.
Yu Huajing, Xu Daming, Luo Na, et al. Design of the blockchain multi-chain traceability supervision model for coarse cereal supply chain [J]. Transactions of the Chinese Society of Agricultural Engineering, 2021, 37(20): 323-332.