鐘節(jié)輝 柳曉龍 黃健
摘? 要:近年來(lái),隨著人民生活水平的提高,人們對(duì)農(nóng)產(chǎn)品的質(zhì)量尤為重視,農(nóng)產(chǎn)品溯源問(wèn)題成為人們格外關(guān)注的問(wèn)題。針對(duì)傳統(tǒng)農(nóng)產(chǎn)品溯源系統(tǒng)數(shù)據(jù)易篡改、中心化嚴(yán)重等系列問(wèn)題,提出了基于一種“區(qū)塊鏈+IPFS”的輕量級(jí)農(nóng)產(chǎn)品大數(shù)據(jù)安全管理模型,來(lái)降低鏈上負(fù)載壓力;其次,文章采用Kafka分布式消息隊(duì)列,解決Solo排序服務(wù)容易造成單點(diǎn)故障的問(wèn)題;同時(shí)比較了該系統(tǒng)架構(gòu)與傳統(tǒng)系統(tǒng)架構(gòu)在數(shù)據(jù)存儲(chǔ)、數(shù)據(jù)管理方面的優(yōu)勢(shì),解決了傳統(tǒng)溯源系統(tǒng)中心化嚴(yán)重、信任危機(jī)等問(wèn)題,保障了農(nóng)產(chǎn)品溯源信息的安全性和真實(shí)性。
關(guān)鍵詞:Hyperledger Fabric;數(shù)據(jù)隱私;IPFS;去中心化;農(nóng)產(chǎn)品溯源
中圖分類號(hào):TP311? ? 文獻(xiàn)標(biāo)識(shí)碼:A? 文章編號(hào):2096-4706(2023)23-0052-06
Framework Optimization Model of Agricultural Products Traceability System
Based on Block Chain
ZHONG Jiehui1, LIU Xiaolong2, HUANG Jian2
(1.College of Mechanical and Electrical Engineering, Fujian Agriculture and Forestry University, Fuzhou? 350002, China; 2.College of Computer and Information, Fujian Agriculture and Forestry University, Fuzhou? 350002, China)
Abstract: In recent years, with the improvement of people's living standards, people have paid special attention to the quality of agricultural products, and the traceability problem of agricultural products has become a problem of special concern. Aiming at a series of problems such as easy data tampering and serious centralization of traditional agricultural products traceability system, a lightweight agricultural products big data security management model based on “Blockchain + IPFS” is proposed to reduce the load pressure on the chain. Secondly, this paper uses Kafka distributed message queues to solve the problem that Solo ordering service is prone to single points of failure. At the same time, the advantages of this system architecture and traditional system architecture in data storage and data management are compared, and it solves the problems of serious centralization and trust crisis of traditional traceability system, and ensures the security and authenticity of agricultural products traceability information.
Keywords: Hyperledger Fabric; data privacy; IPFS; decentralization; traceability of agricultural product
0? 引? 言
農(nóng)產(chǎn)品的安全追溯(Agricultural Products Safty Traceability)是一個(gè)備受世界關(guān)注的話題。
近幾年來(lái),“假貨”“食品安全”問(wèn)題被頻頻爆出,如何切實(shí)保障人們的食品安全、避免上當(dāng)受騙是一個(gè)困擾著我們?cè)S久卻無(wú)法得到根本性解決的難題。自2018年被確立為農(nóng)業(yè)質(zhì)量年以來(lái),農(nóng)產(chǎn)品安全問(wèn)題被提到了一個(gè)新高度。但是,當(dāng)前在農(nóng)產(chǎn)品溯源系統(tǒng)方面的相關(guān)研究,如基于RFID技術(shù)、NFC技術(shù)、二維碼等技術(shù)的溯源系統(tǒng),這些研究仍然不能解決農(nóng)產(chǎn)品追溯系統(tǒng)集中管理、數(shù)據(jù)篡改、信息孤島、賬本臃腫等問(wèn)題。商品在傳統(tǒng)的供應(yīng)鏈中存在的痛點(diǎn)問(wèn)題主要有:
1)商品的生產(chǎn)環(huán)節(jié)以及周圍的環(huán)境無(wú)法溯源,即無(wú)法保證商品的安全性及可靠性,從而導(dǎo)致商品的可信度不高。
2)很多信息都是記錄在單一的系統(tǒng)之中,這個(gè)系統(tǒng)就是中心化系統(tǒng),這樣的信息存儲(chǔ)存在相當(dāng)大的信息安全性問(wèn)題,容易導(dǎo)致單點(diǎn)故障,從而致使中心數(shù)據(jù)庫(kù)信息丟失損壞。同時(shí)也可能存在人為作惡故意修改中心數(shù)據(jù)庫(kù)信息的可能性,進(jìn)而嚴(yán)重影響數(shù)據(jù)信息的真實(shí)性。
3)在當(dāng)前一些主流的系統(tǒng)的供應(yīng)鏈中,仍然存在信息不對(duì)稱、單點(diǎn)故障、信息孤島等一系列問(wèn)題。供應(yīng)鏈信息系統(tǒng)之間交互顯得格外困難,從而導(dǎo)致數(shù)據(jù)交互不均衡、數(shù)據(jù)信息校對(duì)工作量大。
區(qū)塊鏈技術(shù)的誕生似乎為解決農(nóng)產(chǎn)品溯源痛點(diǎn)問(wèn)題帶來(lái)了新的希望。針對(duì)痛點(diǎn)一:區(qū)塊鏈通過(guò)多方共同參與,共同維護(hù)一個(gè)賬本的形式,盡可能讓參與者參與其中,參與者越多,數(shù)據(jù)真實(shí)性和消費(fèi)者信用度就越高。針對(duì)痛點(diǎn)二:區(qū)塊鏈去中心化的本質(zhì)特征,有效避免了因傳統(tǒng)中心化系統(tǒng)帶來(lái)的人為篡改數(shù)據(jù)、數(shù)據(jù)易丟失等問(wèn)題。針對(duì)痛點(diǎn)三:全網(wǎng)共同維護(hù)分布式賬本,有效解決了系統(tǒng)間信息孤島、單點(diǎn)故障問(wèn)題。
基于上述原因,本研究在傳統(tǒng)溯源系統(tǒng)框架模型的基礎(chǔ)上,利用區(qū)塊鏈技術(shù),對(duì)溯源架構(gòu)進(jìn)行優(yōu)化,提出基于區(qū)塊鏈的溯源架構(gòu)模型,并設(shè)計(jì)了一種“hyperledger+IPFS”的輕量級(jí)農(nóng)產(chǎn)品安全管理模型,著力解決農(nóng)產(chǎn)品追溯系統(tǒng)因集中化管理,導(dǎo)致賬本臃腫、數(shù)據(jù)可搜索性差、難以溯源等問(wèn)題。
1? 國(guó)內(nèi)外研究現(xiàn)狀
目前,農(nóng)產(chǎn)品溯源研究方面,Qian等人[1]將二維條形碼和RFID技術(shù)相結(jié)合,通過(guò)在小麥包裝上粘貼二維碼標(biāo)簽以鏈接其加工信息,并將RFID標(biāo)簽粘貼到存儲(chǔ)箱以記錄物流信息,設(shè)計(jì)并實(shí)現(xiàn)了小麥面粉加工可追溯系統(tǒng);劉一健等[2]對(duì)基于NFC技術(shù)的生鮮農(nóng)產(chǎn)品追溯系統(tǒng)進(jìn)行了深入探討;隨著區(qū)塊鏈系統(tǒng)網(wǎng)絡(luò)參信息量的增加,參與方較多,區(qū)塊鏈網(wǎng)絡(luò)存儲(chǔ)將面臨巨大的壓力,張斌[3]對(duì)區(qū)塊鏈溯源系統(tǒng)進(jìn)行了性能的優(yōu)化,提出了一種權(quán)益共識(shí)算法。龐承杰[4]針對(duì)溯源系統(tǒng)中數(shù)據(jù)訪問(wèn)和安全共享問(wèn)題,設(shè)計(jì)了一種數(shù)據(jù)分級(jí)訪問(wèn)控制機(jī)制,實(shí)現(xiàn)了供應(yīng)鏈數(shù)據(jù)信息與訪問(wèn)數(shù)據(jù)信息的隔離;姜方桃等[5]就農(nóng)產(chǎn)品溯源系統(tǒng)關(guān)鍵的技術(shù)做了詳細(xì)的說(shuō)明;然而以上系列研究仍不能從根本上解決農(nóng)產(chǎn)品溯源系統(tǒng)中信息孤島、數(shù)據(jù)可信度低且難溯源、數(shù)據(jù)共享程度低等問(wèn)題。區(qū)塊鏈?zhǔn)敲艽a學(xué)、P2P網(wǎng)絡(luò)、共識(shí)機(jī)制、共識(shí)賬本等多種技術(shù)的整合,區(qū)塊鏈技術(shù)具有不可篡改、去中心化等本質(zhì)特征,與農(nóng)產(chǎn)品溯源系統(tǒng)天然結(jié)合,可以有效解決以上傳統(tǒng)農(nóng)產(chǎn)品溯源系統(tǒng)的系列問(wèn)題。因此,本研究在農(nóng)產(chǎn)品溯源系統(tǒng)技術(shù)的基礎(chǔ)上融入hyperledger fabric框架,提出了一種“區(qū)塊鏈+IPFS”的輕量級(jí)農(nóng)產(chǎn)品大數(shù)據(jù)安全管理模型,研究并有效解決了傳統(tǒng)追溯系統(tǒng)中數(shù)據(jù)集中和賬本臃腫的問(wèn)題,以提高系統(tǒng)的健壯性和數(shù)據(jù)的安全可靠性。
近年來(lái),伴隨著區(qū)塊鏈技術(shù)發(fā)展突飛猛進(jìn),區(qū)塊鏈技術(shù)已經(jīng)被應(yīng)用到各行各業(yè)之中,為農(nóng)產(chǎn)品信息溯源應(yīng)用落地以及產(chǎn)品質(zhì)量安全的保障奠定了堅(jiān)實(shí)有效的基礎(chǔ)[6]。我國(guó)作為一個(gè)消費(fèi)大國(guó),農(nóng)產(chǎn)品的流通主體廣,確保農(nóng)產(chǎn)品質(zhì)量安全,讓廣大消費(fèi)者買得放心、吃得安心,成為當(dāng)前至關(guān)重要的問(wèn)題[7]。在基于區(qū)塊鏈技術(shù)的農(nóng)產(chǎn)品溯源系統(tǒng)之中,農(nóng)產(chǎn)品的安全溯源涉及的環(huán)節(jié),例如:種植、加工、營(yíng)銷和物流等環(huán)節(jié),在每一個(gè)環(huán)節(jié)之中都可能存在著安全問(wèn)題,從而對(duì)農(nóng)產(chǎn)品相應(yīng)環(huán)節(jié)的數(shù)據(jù)資料信息進(jìn)行層層溯源,是確保農(nóng)產(chǎn)品質(zhì)量安全的有效方法,同時(shí)也最大程度上符合消費(fèi)者對(duì)此的需求,有助于提高農(nóng)戶的信任度。
目前,農(nóng)產(chǎn)品溯源方面的應(yīng)用主要以射頻識(shí)別、傳感以及數(shù)據(jù)庫(kù)等技術(shù)為主。在國(guó)外,RFID和物聯(lián)網(wǎng)傳感器[8]和系統(tǒng)開(kāi)發(fā)生命周期[9]等技術(shù)已被用于建立易腐食品、大米和水產(chǎn)品的可追溯性應(yīng)用。我國(guó)在溯源系統(tǒng)方面的研究相對(duì)于較晚,但是發(fā)展十分迅速,已經(jīng)被應(yīng)用到各行各業(yè),其中所涉及的技術(shù)大致和國(guó)外一致[10]。主要有基于區(qū)塊鏈+物聯(lián)網(wǎng)的溯源系統(tǒng)[11],基于二維碼技術(shù)的溯源系統(tǒng)[12]和基于RFID技術(shù)的溯源系統(tǒng)[13],Zheng等提出了一種基于IPFS的區(qū)塊鏈數(shù)據(jù)存儲(chǔ)模型[14],Mukne[15]等設(shè)計(jì)了一種基于hyperledger+IPFS的土地記錄管理系統(tǒng),用以解決區(qū)塊鏈賬本臃腫問(wèn)題,這一系列技術(shù)成為目前國(guó)內(nèi)農(nóng)產(chǎn)品溯源的有效手段。一方面,這些溯源系統(tǒng)過(guò)分依賴中心化數(shù)據(jù)庫(kù),安全性能低下,信息交互能力有限,及其容易導(dǎo)致信息孤島問(wèn)題。其次,當(dāng)農(nóng)產(chǎn)品出現(xiàn)安全問(wèn)題時(shí),很難快速找出問(wèn)題的源頭,即責(zé)任主體難確定,且追溯成本高,消費(fèi)者參與度低。最后,我國(guó)農(nóng)產(chǎn)品經(jīng)營(yíng)具有典型的“長(zhǎng)距離、多環(huán)節(jié)、廣流通”的特點(diǎn),農(nóng)產(chǎn)品的流通主體廣,從而導(dǎo)致管理難度極大。
傳統(tǒng)區(qū)塊鏈系統(tǒng)為了“安全”而犧牲“效率”,隨著區(qū)塊鏈網(wǎng)絡(luò)交易的不斷產(chǎn)生,區(qū)塊數(shù)量也隨之日益增加,當(dāng)數(shù)量達(dá)到一定程度時(shí),極其容易導(dǎo)致區(qū)塊鏈網(wǎng)絡(luò)的堵塞,數(shù)據(jù)查詢效率低下,區(qū)塊的數(shù)據(jù)賬本的臃腫,區(qū)塊數(shù)據(jù)存儲(chǔ)局勢(shì)嚴(yán)峻,因此不能存放大規(guī)模數(shù)據(jù)。
基于這種考慮,可以利用區(qū)塊鏈+分布式存儲(chǔ)的方式來(lái)解決數(shù)據(jù)大規(guī)模上鏈難的問(wèn)題,其中,區(qū)塊鏈用來(lái)保證數(shù)據(jù)的可信度,分布式存儲(chǔ)用來(lái)提高數(shù)據(jù)存儲(chǔ)和查詢效率。該溯源系統(tǒng)數(shù)據(jù)存儲(chǔ)方式首先將原始數(shù)據(jù)存于IPFS分布式系統(tǒng)中,而將文件的指紋存入?yún)^(qū)塊鏈中,這樣既保證了IPFS上數(shù)據(jù)的不被篡改,又解決了鏈上賬本擁堵問(wèn)題。用戶可以通過(guò)區(qū)塊鏈上文件的地址信息隨時(shí)去獲取這些數(shù)據(jù),并對(duì)這些鏈上數(shù)據(jù)進(jìn)行驗(yàn)證,以確保數(shù)據(jù)的完整性和可靠性。
2? 溯源系統(tǒng)架構(gòu)
2.1? 架構(gòu)設(shè)計(jì)
本研究提出的農(nóng)產(chǎn)品溯源系統(tǒng)框架主要分為以下四大層次模塊,如圖1所示。
1)數(shù)據(jù)層:該層負(fù)責(zé)將收集到的農(nóng)產(chǎn)品數(shù)據(jù)信息進(jìn)行分布式存儲(chǔ)。存儲(chǔ)層包括MySQL,系統(tǒng)的本地?cái)?shù)據(jù)庫(kù),區(qū)塊鏈系統(tǒng)自帶的CouchDB數(shù)據(jù)庫(kù),以及用來(lái)存儲(chǔ)公共信息和音頻、視頻等大數(shù)據(jù)塊文件的IPFS星際文件系統(tǒng)。
2)網(wǎng)絡(luò)層:農(nóng)產(chǎn)品整個(gè)溯源系統(tǒng)中各廠商生產(chǎn)環(huán)節(jié)中涉及的數(shù)據(jù)信息均以產(chǎn)品ID相關(guān)聯(lián)。區(qū)塊鏈節(jié)點(diǎn)收到各廠商傳輸過(guò)來(lái)的數(shù)據(jù)信息之后,通過(guò)P2P網(wǎng)絡(luò)向全網(wǎng)廣播。數(shù)據(jù)在各廠商之間的流轉(zhuǎn)過(guò)程之中,廠商之間形成協(xié)議,使用數(shù)字簽名再加上相應(yīng)時(shí)間戳,來(lái)保障數(shù)據(jù)的不可抵賴性。
3)合約層:該層是Fabric的核心,向上可以為企業(yè)級(jí)用戶應(yīng)用程序提供API接口,向下可對(duì)賬本數(shù)據(jù)進(jìn)行操作,有效避免了人為操作賬本帶來(lái)的影響,該層主要由智能合約(鏈碼)組成,通過(guò)鏈碼來(lái)操作賬本數(shù)據(jù),主要是實(shí)現(xiàn)數(shù)據(jù)上傳區(qū)塊鏈系統(tǒng)和數(shù)據(jù)查詢功能。
4)應(yīng)用層:該層為不同用戶主體提供相應(yīng)的權(quán)限和接口。生產(chǎn)商、加工商、銷售商等廠商用戶將農(nóng)產(chǎn)品數(shù)據(jù)信息錄入到區(qū)塊鏈賬本中。消費(fèi)者、企業(yè)等普通用戶能通過(guò)相應(yīng)平臺(tái)對(duì)農(nóng)產(chǎn)品數(shù)據(jù)信息進(jìn)行查詢、追溯和驗(yàn)證;相關(guān)政府和權(quán)威機(jī)構(gòu)等組織用戶對(duì)用戶進(jìn)行監(jiān)督、審查。
2.2? 輕量級(jí)安全管理架構(gòu)模型
目前基于區(qū)塊鏈的農(nóng)產(chǎn)品溯源系統(tǒng)數(shù)據(jù)存儲(chǔ)模型,基本上都是利用區(qū)塊鏈賬本來(lái)存儲(chǔ)農(nóng)產(chǎn)品數(shù)據(jù)信息,即在供應(yīng)鏈的各大廠商節(jié)點(diǎn)均將農(nóng)產(chǎn)品信息存儲(chǔ)在區(qū)塊鏈之中。區(qū)塊鏈究其本質(zhì)而言,就是一個(gè)數(shù)據(jù)庫(kù)賬本,其本質(zhì)特性就是保證數(shù)據(jù)信息的可靠性,但是其數(shù)據(jù)存儲(chǔ)能力有限,隨著節(jié)點(diǎn)數(shù)量的增加,區(qū)塊鏈賬本存儲(chǔ)壓力隨之增加,如果數(shù)據(jù)量達(dá)到一定程度,很容易導(dǎo)致區(qū)塊鏈賬本臃腫,再次區(qū)塊鏈的鏈?zhǔn)浇Y(jié)構(gòu),數(shù)據(jù)查詢順序執(zhí)行,這就意味著數(shù)據(jù)可搜索性不高。
針對(duì)這些不足,本研究針對(duì)現(xiàn)有的區(qū)塊鏈溯系統(tǒng)存儲(chǔ)模型進(jìn)行適量改進(jìn),設(shè)計(jì)了“區(qū)塊鏈+數(shù)據(jù)庫(kù)+IPFS”鏈下溯源信息雙重存儲(chǔ)的存儲(chǔ)模型,如圖2所示,來(lái)構(gòu)建一個(gè)輕量級(jí)的區(qū)塊鏈分布式賬本,節(jié)省區(qū)塊鏈賬本存儲(chǔ)空間,設(shè)計(jì)智能合約避免人為直接操作農(nóng)產(chǎn)品數(shù)據(jù),有效保障數(shù)據(jù)信息安全,提高數(shù)據(jù)信息可信度。
在農(nóng)產(chǎn)品溯源系統(tǒng)中,包含農(nóng)產(chǎn)品數(shù)據(jù)記錄的哈希值上傳到鏈上賬本中,而真實(shí)的數(shù)據(jù)信息則存儲(chǔ)在IPFS服務(wù)器上。
2.2.1? 鏈上賬本-鏈下存儲(chǔ)模型
1)鏈上賬本:鏈上賬本只記錄輕量級(jí)的數(shù)據(jù)信息,如數(shù)據(jù)的存儲(chǔ)、驗(yàn)證、操作和農(nóng)產(chǎn)品數(shù)據(jù)哈希等記錄。原始農(nóng)產(chǎn)品數(shù)據(jù)生成之后,對(duì)原始農(nóng)產(chǎn)品數(shù)據(jù)信息進(jìn)行SHA256哈希運(yùn)算,從而得到一個(gè)包含農(nóng)產(chǎn)品數(shù)據(jù)信息的哈希值,最后將此哈希上傳到鏈上。
2)鏈下存儲(chǔ):由于農(nóng)產(chǎn)品數(shù)據(jù)信息量巨大,倘若所有廠商的數(shù)據(jù)信息都存儲(chǔ)在一個(gè)服務(wù)器上,容易導(dǎo)致單點(diǎn)故障。利用IPFS星際文件系統(tǒng)是解決這一數(shù)據(jù)存儲(chǔ)問(wèn)題的一種節(jié)約資源的方法。首先,涉及追溯過(guò)程的個(gè)人或者企業(yè)必須經(jīng)過(guò)權(quán)威機(jī)構(gòu)的認(rèn)證、審計(jì)機(jī)構(gòu)的審查核實(shí)后,參與者在基于區(qū)塊鏈農(nóng)產(chǎn)品追溯系統(tǒng)上注冊(cè)登記身份賬戶,系統(tǒng)將自動(dòng)匹配對(duì)應(yīng)的一對(duì)密鑰,密鑰決定了參與者身份的權(quán)限。這里,將農(nóng)產(chǎn)品記錄數(shù)據(jù)的屬性引入到加密密鑰之中,可以幫助不同主體對(duì)農(nóng)產(chǎn)品數(shù)據(jù)信息進(jìn)行細(xì)粒度控制訪問(wèn)。
2.2.2? 存儲(chǔ)流程
首先,供應(yīng)鏈各廠商通過(guò)互聯(lián)網(wǎng)自動(dòng)控制終端、傳感器、攝像頭等多種傳感設(shè)備,收集農(nóng)產(chǎn)品各種數(shù)據(jù)信息;其次,各廠商調(diào)用鏈碼將收集到的數(shù)據(jù)信息上傳到區(qū)塊鏈溯源數(shù)據(jù)處理系統(tǒng)中,系統(tǒng)會(huì)將傳輸過(guò)來(lái)的數(shù)據(jù)信息進(jìn)行數(shù)據(jù)分類。整個(gè)供應(yīng)鏈涉及的數(shù)據(jù)不僅是產(chǎn)品溯源信息,還包含只有相關(guān)企業(yè)才能查看的隱私數(shù)據(jù),比如交易信息。
如果是私有數(shù)據(jù)信息,溯源數(shù)據(jù)系統(tǒng)會(huì)自動(dòng)調(diào)用鏈碼,將私有數(shù)據(jù)先進(jìn)行SHA256哈希運(yùn)算,得到數(shù)據(jù)摘要,為了保障數(shù)據(jù)的真實(shí)性,這里我們采用雙向存儲(chǔ)——一是將得到的數(shù)據(jù)摘要和原始數(shù)據(jù)打包一并保存在各商場(chǎng)各自的MySQL服務(wù)器之中;二是將做哈希運(yùn)算之后數(shù)據(jù)摘要也同時(shí)通過(guò)智能合約上傳到Fabric網(wǎng)絡(luò)的區(qū)塊鏈分布式賬本之中。
如果是公有數(shù)據(jù)信息,溯源數(shù)據(jù)系統(tǒng)同樣會(huì)調(diào)用鏈碼,先將公有數(shù)據(jù)信息上傳到IPFS分布式文件系統(tǒng)之中,此時(shí)會(huì)返回一個(gè)IPFS文件存儲(chǔ)地址以及文件指紋,我們將它返回的文件地址和指紋通過(guò)智能合約一并上傳到區(qū)塊鏈賬本中。
該鏈上賬本-鏈下存儲(chǔ)模型可以建立一個(gè)輕量級(jí)的區(qū)塊鏈賬本,節(jié)省區(qū)塊鏈賬本存儲(chǔ)空間,提高數(shù)據(jù)查詢效率。同時(shí),也能避免對(duì)真實(shí)農(nóng)產(chǎn)品數(shù)據(jù)的直接操作,間接保護(hù)了數(shù)據(jù)安全。
2.3? 溯源防偽流程
農(nóng)產(chǎn)品區(qū)塊鏈溯源系統(tǒng)流程圖如圖3所示。供應(yīng)鏈各廠商通過(guò)互聯(lián)網(wǎng)自動(dòng)控制終端、傳感器、攝像頭等多種傳感設(shè)備,收集農(nóng)產(chǎn)品各種數(shù)據(jù)信息。按系統(tǒng)分類后,溯源信息分為私人信息和公共信息。私有信息經(jīng)過(guò)SHA256哈希加密后一份上傳到區(qū)塊鏈并返回區(qū)塊號(hào)。另一份將加密摘要和原始數(shù)據(jù)信息打包一并存儲(chǔ)到各廠商的MySQL服務(wù)器中。公開(kāi)信息則存儲(chǔ)在IPFS文件系統(tǒng)之中,文件系統(tǒng)返回的哈希指紋和地址則保存在區(qū)塊鏈中并返回區(qū)塊號(hào)。
消費(fèi)者通過(guò)掃描二維碼調(diào)用鏈碼來(lái)查詢IPFS網(wǎng)絡(luò),并從IPFS中得到原始數(shù)據(jù)文件H2,并通過(guò)區(qū)塊號(hào)查詢到存儲(chǔ)在區(qū)塊鏈上的哈希值H1進(jìn)行一致性比對(duì),從而判斷產(chǎn)品溯源信息是否被篡改。
2.4? Fabric網(wǎng)絡(luò)與IPFS交互
2.4.1? 數(shù)據(jù)存儲(chǔ)
農(nóng)產(chǎn)品溯源數(shù)據(jù)存儲(chǔ)功能實(shí)現(xiàn)如圖4所示,具體步驟如下:
1)首先,供應(yīng)鏈各廠商通過(guò)互聯(lián)網(wǎng)自動(dòng)控制終端、傳感器、攝像頭等多種傳感設(shè)備,收集農(nóng)產(chǎn)品各種數(shù)據(jù)信息,并向后臺(tái)服務(wù)器發(fā)送數(shù)據(jù)信息。當(dāng)數(shù)據(jù)信息量達(dá)到一定的閾值時(shí),后臺(tái)服務(wù)會(huì)進(jìn)行數(shù)據(jù)塊的打包。
2)打包好的數(shù)據(jù)塊以數(shù)據(jù)流的方式向IPFS網(wǎng)絡(luò)傳輸數(shù)據(jù)。
3)數(shù)據(jù)上傳成功后,會(huì)返回一個(gè)IPFS文件地址給后臺(tái)服務(wù)器。
4)此時(shí),后臺(tái)服務(wù)器會(huì)繼續(xù)調(diào)用鏈上代碼,將IPFS返回的文件存儲(chǔ)地址以及文件哈希指紋上傳到Fabric區(qū)塊鏈網(wǎng)絡(luò)的Peers節(jié)點(diǎn)賬本中。
5)最后Fabric網(wǎng)絡(luò)會(huì)上服務(wù)器返回本次存儲(chǔ)數(shù)據(jù)交易的Hash以及交易區(qū)塊號(hào)。
2.4.2? 數(shù)據(jù)查詢
數(shù)據(jù)查詢功能具體步驟如下:
1)首先,消費(fèi)者掃描二維碼,向后臺(tái)服務(wù)器發(fā)起數(shù)據(jù)查詢請(qǐng)求。
2)后臺(tái)服務(wù)器會(huì)自動(dòng)啟動(dòng)Fabric鏈碼,調(diào)用相應(yīng)的鏈碼執(zhí)行數(shù)據(jù)查詢Invoke方法。
3)Fabric會(huì)根據(jù)調(diào)用方法的請(qǐng)求,查詢到相應(yīng)的區(qū)塊號(hào),并且將匹配正確的數(shù)據(jù)信息,即IPFS文件地址以及哈希指紋返回給后臺(tái)服務(wù)器。
4)后臺(tái)服務(wù)器通過(guò)Fabric返回的IPFS存儲(chǔ)地址以及哈希指紋去IPFS網(wǎng)絡(luò)查詢。
5)最后IPFS網(wǎng)絡(luò)將查詢到的數(shù)據(jù)文件塊返回服務(wù)端,并且服務(wù)端對(duì)返回的數(shù)據(jù)塊文件進(jìn)行比對(duì),檢驗(yàn)數(shù)據(jù)是否被篡改。
3? 架構(gòu)比較
將傳統(tǒng)的農(nóng)產(chǎn)品追溯系統(tǒng)與基于區(qū)塊鏈的農(nóng)產(chǎn)品追溯系統(tǒng)進(jìn)行架構(gòu)比較如圖5所示,大多數(shù)基于傳統(tǒng)的農(nóng)產(chǎn)品追溯系統(tǒng)大都采用B/S(Browser/Server)網(wǎng)絡(luò)架構(gòu),數(shù)據(jù)信息都存儲(chǔ)在一個(gè)個(gè)中心化數(shù)據(jù)庫(kù)信息系統(tǒng)之中,在權(quán)威機(jī)構(gòu)的監(jiān)督之下對(duì)溯源數(shù)據(jù)進(jìn)行集中式管理。而在基于區(qū)塊鏈的農(nóng)產(chǎn)品追溯架構(gòu)中,整個(gè)區(qū)塊鏈基于P2P網(wǎng)絡(luò),每一個(gè)計(jì)算機(jī)節(jié)點(diǎn)可以作為服務(wù)器,即將傳統(tǒng)“一個(gè)中心”變?yōu)椤岸嘀行摹钡南到y(tǒng)架構(gòu),解決了傳統(tǒng)溯源系統(tǒng)中心化問(wèn)題。在這個(gè)系統(tǒng)中,每一個(gè)用戶在登錄系統(tǒng)注冊(cè)頁(yè)面時(shí),系統(tǒng)會(huì)對(duì)其信息進(jìn)行身份認(rèn)證,然后會(huì)自動(dòng)為每位用戶匹配一對(duì)密鑰(公鑰、私鑰),不同身份的主體用戶的密鑰對(duì)決定了其對(duì)訪問(wèn)權(quán)限。例如:消費(fèi)者用戶只可以對(duì)農(nóng)產(chǎn)品數(shù)據(jù)信息進(jìn)行查詢操作,農(nóng)產(chǎn)品生產(chǎn)商、經(jīng)銷商、供應(yīng)商等用戶人員可以對(duì)農(nóng)產(chǎn)品數(shù)據(jù)信息進(jìn)行錄入和查詢操作,權(quán)威機(jī)構(gòu)對(duì)不同身份的人員信息進(jìn)行監(jiān)督、驗(yàn)證。
傳統(tǒng)的農(nóng)產(chǎn)品溯源系統(tǒng)采用中心化存儲(chǔ),數(shù)據(jù)信息均存儲(chǔ)在一個(gè)中心服務(wù)器中,一旦服務(wù)器節(jié)點(diǎn)故障,數(shù)據(jù)網(wǎng)絡(luò)系統(tǒng)將癱瘓。其次,其采用集中式人為管理,用戶個(gè)人數(shù)據(jù)信息隱私存在泄露、篡改的風(fēng)險(xiǎn)。
基于區(qū)塊鏈的分布式的存儲(chǔ)模型能有效削弱中心化組織的惡意行為,避免單點(diǎn)故障問(wèn)題,有效保障了用戶的隱私安全,提高了數(shù)據(jù)的可信度。其次區(qū)塊鏈獨(dú)特的鏈?zhǔn)浇Y(jié)構(gòu),以及其可追溯性、可驗(yàn)證性,切實(shí)保證農(nóng)產(chǎn)品數(shù)據(jù)的真實(shí)性,防止人為惡意篡改數(shù)據(jù)。
4? 結(jié)? 論
本研究在農(nóng)產(chǎn)品溯源系統(tǒng)技術(shù)的基礎(chǔ)上融入
Hyperledger Fabric框架,提出了一種“區(qū)塊鏈+IPFS”的輕量級(jí)農(nóng)產(chǎn)品大數(shù)據(jù)安全管理模型,研究解決了傳統(tǒng)溯源系統(tǒng)之中因數(shù)據(jù)中心化、賬本臃腫等問(wèn)題,提高了系統(tǒng)和數(shù)據(jù)的安全可靠性。同時(shí),本研究還存在一些不足之處,雖然保證了數(shù)據(jù)在錄入系統(tǒng)之后不被篡改,但對(duì)于錄入之前的數(shù)據(jù)未能設(shè)計(jì)出保障機(jī)制。因此,在后續(xù)的研究之中我們將著重研究數(shù)據(jù)錄入之前數(shù)據(jù)的一致性,實(shí)現(xiàn)該系統(tǒng)的安全可靠。
參考文獻(xiàn):
[1] QIAN J,YANG T,WU X,et al. A traceability system incorporating 2D barcode and RFID technology for wheat flour mills [J].Computers and Electronics in Agriculture,2012,89:76-85.
[2] 劉一健,陳業(yè)華.基于RFID的生鮮農(nóng)產(chǎn)品追溯系統(tǒng)探討 [J].食品工業(yè),2019,40(7):175-179.
[3] 張斌.基于區(qū)塊鏈的供應(yīng)鏈溯源系統(tǒng)關(guān)鍵技術(shù)研究 [D].南京:南京郵電大學(xué),2022.
[4] 龐承杰.基于區(qū)塊鏈的供應(yīng)鏈溯源系統(tǒng)及其訪問(wèn)控制機(jī)制研究 [D].南寧:廣西大學(xué),2022.
[5] 姜方桃,胡擎宇,劉丹丹,等.基于供應(yīng)鏈視角的水果質(zhì)量安全追溯系統(tǒng)研究 [J].山西農(nóng)經(jīng),2021(15):33-35.
[6] 劉敖迪,杜學(xué)繪,王娜,等.區(qū)塊鏈技術(shù)及其在信息安全領(lǐng)域的研究進(jìn)展 [J].軟件學(xué)報(bào),2018,29(7):2092-2115.
[7] 洪濤.我國(guó)農(nóng)產(chǎn)品流通70年發(fā)展報(bào)告 [J].商業(yè)經(jīng)濟(jì)研究,2019(21):2+193.
[8] CORALLO A,LATINO M E,MENEGOLI M,et al. What factors impact on technological traceability systems diffusion in the agrifood industry? An Italian survey [J].Journal of Rural Studies,2020,75:30-47.
[9] 鐘德福,艾紅,張良國(guó),等.區(qū)塊鏈技術(shù)及其在農(nóng)產(chǎn)品質(zhì)量安全追溯應(yīng)用的研究進(jìn)展 [J].中國(guó)農(nóng)學(xué)通報(bào),2021,37(19):143-150.
[10] STEWART W G. Food authentication and traceability:An Asian and Australian perspective [J].Food Control,2017,72(2):168-172.
[11] 劉丹,竇津津,胡建斌.基于“區(qū)塊鏈+物聯(lián)網(wǎng)”融合的農(nóng)產(chǎn)品溯源系統(tǒng) [J].軟件工程,2021,24(7):39-42.
[12] 章海榮.基于物聯(lián)網(wǎng)和二維碼加密的農(nóng)產(chǎn)品溯源系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) [D].武漢:武漢郵電科學(xué)研究院,2019.
[13] 王祖良,郭建新,張婷,等.農(nóng)產(chǎn)品質(zhì)量溯源RFID標(biāo)簽批量識(shí)別 [J].農(nóng)業(yè)工程學(xué)報(bào),2020,36(10):150-157.
[14] ZHENG Q,LI Y,CHEN P,et al. An Innovative IPFS-Based Storage Model for Blockchain [C]//2018 IEEE/WIC/ACM International Conference on Web Intelligence (WI).Santiago:IEEE,2018:704-708.
[15] MUKNE H,PAI P,RAUT S,et al. Land Record Management using Hyperledger Fabric and IPFS [C]//2019 10th International Conference on Computing,Communication and Networking Technologies(ICCCNT).Kanpur:IEEE,2019:1-8.
作者簡(jiǎn)介:鐘節(jié)輝(1997—),男,漢族,江西贛州人,碩士在讀,研究方向:區(qū)塊鏈農(nóng)產(chǎn)品溯源;柳曉龍(1989—),男,漢族,福建寧德人,副教授,博士,研究方向:區(qū)塊鏈農(nóng)產(chǎn)品溯源、密碼學(xué);通訊作者:黃?。?975—),男,漢族,福建南平人,高級(jí)實(shí)驗(yàn)師,碩士,研究方向:區(qū)塊鏈農(nóng)產(chǎn)品溯源。