梁志勇,周顯春
(1.三亞學(xué)院信息與智能工程學(xué)院,三亞 572022;2.三亞學(xué)院陳國良院士團(tuán)隊(duì)創(chuàng)新中心,三亞 572022;3.三亞學(xué)院容淳銘院士工作站,三亞 572022)
農(nóng)產(chǎn)品冷鏈物流建設(shè)是我國農(nóng)業(yè)產(chǎn)業(yè)化發(fā)展重要的組成部分,也是發(fā)展現(xiàn)代農(nóng)業(yè)的有效途徑。目前國內(nèi)絕大多數(shù)農(nóng)產(chǎn)品冷鏈數(shù)據(jù)存儲方案依舊是傳統(tǒng)的中心化管理模式,中心化數(shù)據(jù)庫是企業(yè)私有的,核心關(guān)鍵數(shù)據(jù)存儲于單一數(shù)據(jù)庫節(jié)點(diǎn)中,對外公開程度有限,且容易出現(xiàn)差錯或者有被篡改的風(fēng)險。研究設(shè)計(jì)一種去中心化的農(nóng)產(chǎn)品冷鏈數(shù)據(jù)存儲方案,實(shí)現(xiàn)冷鏈數(shù)據(jù)安全有效存儲,具有重要的意義。
本文針對現(xiàn)有農(nóng)產(chǎn)品冷鏈數(shù)據(jù)在存儲過程中的各種問題。①冷鏈數(shù)據(jù)難以被監(jiān)管部門實(shí)時監(jiān)管。②在新冠疫情背景下冷鏈環(huán)境中的中心化數(shù)據(jù)管理模式存在著認(rèn)證難、維護(hù)成本高等信任危機(jī)問題,研究一種基于聯(lián)盟鏈的可信計(jì)算技術(shù),以此設(shè)計(jì)農(nóng)產(chǎn)品冷鏈數(shù)據(jù)安全存儲方案。該方案以區(qū)塊鏈技術(shù)為底層,聯(lián)盟鏈形式為技術(shù)選型,數(shù)據(jù)提供方作為可信節(jié)點(diǎn),配合分布式身份標(biāo)識技術(shù)進(jìn)行貨物主體識別,從而進(jìn)行現(xiàn)有冷鏈數(shù)據(jù)接入,進(jìn)行溯源信息上鏈,實(shí)現(xiàn)在不存在強(qiáng)信用主體或中間人的情況下的數(shù)據(jù)安全存儲及管理。
聯(lián)盟鏈?zhǔn)且环N將區(qū)塊鏈技術(shù)應(yīng)用于企業(yè)的相對較新的方式。公有鏈向所有人都開放,而私有鏈通常只為一個企業(yè)提供服務(wù),聯(lián)盟鏈相對公有鏈來說有更多限制,通常為多個企業(yè)之間的共同協(xié)作提供服務(wù)。與公有鏈不同,聯(lián)盟鏈?zhǔn)切枰@得事先許可的,因此并不是所有擁有互聯(lián)網(wǎng)連接的任何人都可以訪問聯(lián)盟區(qū)塊鏈的。聯(lián)盟鏈也可以描述為半去中心化的,對聯(lián)盟鏈的控制權(quán)不授予單個實(shí)體,而是多個組織或個人,參加共識的節(jié)點(diǎn)是需要具有一定基礎(chǔ)信任的。并且聯(lián)盟鏈的共識算法比較靈活,可采用PBFT、Raft等算法來適應(yīng)不同的商業(yè)特點(diǎn)。聯(lián)盟鏈的共識參與者可能是網(wǎng)絡(luò)上的一組預(yù)先批準(zhǔn)的節(jié)點(diǎn),而不是任何人都可以參與該過程。同時聯(lián)盟鏈支持跨鏈技術(shù),其上層應(yīng)用具有極強(qiáng)的開放性及拓展性。
可信計(jì)算是一項(xiàng)由TCG(可信計(jì)算組)推動和開發(fā)的技術(shù)??尚诺暮诵哪繕?biāo)之一是保證系統(tǒng)和應(yīng)用的完整性,從而確定系統(tǒng)或軟件運(yùn)行在設(shè)計(jì)目標(biāo)期望的可信狀態(tài)??尚藕桶踩窍噍o相成的,可信是安全的基礎(chǔ),了解可信才能更好地了解安全,才能為構(gòu)建更穩(wěn)固的安全體系固本強(qiáng)基。在可信計(jì)算中,通過信息加密等方式對存儲的文件和數(shù)據(jù)進(jìn)行管理,從而保證了信息存儲的安全性。通過對系統(tǒng)組件進(jìn)行可信度量是保障信息的基礎(chǔ),根據(jù)度量值對系統(tǒng)組件進(jìn)行管理和檢測,可有效管理信息運(yùn)行的環(huán)境變化,從而保障運(yùn)行環(huán)境的安全性;通過消息簽名的方式對目的端進(jìn)行驗(yàn)證,從而保障信息傳輸?shù)陌踩浴?/p>
可信計(jì)算會在用戶的軟硬件上增加一個可信的模塊,并在內(nèi)部運(yùn)行時進(jìn)行檢驗(yàn),但是對于可信計(jì)算來說,其可以保證數(shù)據(jù)和代碼是“可信”。但是依然建立在中心化的獨(dú)立服務(wù)器中,只要權(quán)限夠高,或者物理破壞,便會使得數(shù)據(jù)丟失或者被篡改。而聯(lián)盟鏈具有的代碼開源、智能合約、分布式清結(jié)算等功能特點(diǎn),便可以進(jìn)一步彌補(bǔ)這些不足,將可信網(wǎng)絡(luò)的應(yīng)用范圍推上一個新高度。當(dāng)可信計(jì)算運(yùn)行在區(qū)塊鏈上之后,將會帶來新的特性。
1.3.1 分布式
在可信計(jì)算中建立的“容器”,①在權(quán)限層面對寫入寫出進(jìn)行限制,簡單來說,誰創(chuàng)建了服務(wù)器,那么創(chuàng)建者就擁有服務(wù)器的控制權(quán)。②在容器建立時便將其隔離,不再寫入,但其也面臨著被物理破壞丟失相關(guān)內(nèi)容的可能性,比如實(shí)驗(yàn)室斷電或者存儲介質(zhì)故障帶來的不確定因素。而聯(lián)盟鏈本身是區(qū)塊鏈的一種,是去中心化運(yùn)行的,沒有人可以停止它、控制它,沒人可以作弊,這就提供了非常好的中立環(huán)境。
1.3.2 交互留痕
當(dāng)用戶進(jìn)行數(shù)據(jù)交互時,會將數(shù)據(jù)等相關(guān)信息上傳至鏈上,完成數(shù)據(jù)確權(quán)。即使用戶本身的通信或者交互是在雙方的可信計(jì)算設(shè)備上點(diǎn)對點(diǎn)進(jìn)行,但每一次的交互都會在區(qū)塊鏈上留痕,做到數(shù)據(jù)透明可查詢。
1.3.3 清結(jié)算透明
借助區(qū)塊鏈,我們可以使得清結(jié)算的整個流程都變得透明,從而使得在可信算力或者數(shù)據(jù)交易中,原本依然需要在中心化服務(wù)器中進(jìn)行的清結(jié)算服務(wù),可以在鏈上進(jìn)行,區(qū)塊鏈將保證交易的安全,確保沒有任何一方抵賴。
1.3.4 效率高
雖然可信計(jì)算能做到數(shù)據(jù)和協(xié)作方面的互信,但在實(shí)際應(yīng)用中,商業(yè)合作和利益分配信任問題帶來的效率下降非常明顯,借助區(qū)塊鏈技術(shù),讓支出、收益、分潤透明結(jié)算,賬本公開清晰可查,充分降本增效。
針對新冠疫情背景下農(nóng)產(chǎn)品冷鏈數(shù)據(jù)所出現(xiàn)的信任危機(jī),本文從如下4個方面研究并設(shè)計(jì)了一套在聯(lián)盟鏈環(huán)境下利用可信計(jì)算技術(shù)在農(nóng)產(chǎn)品冷鏈數(shù)據(jù)存儲過程中的解決方案。
在農(nóng)產(chǎn)品冷鏈物流數(shù)據(jù)存儲過程中,冷鏈數(shù)據(jù)安全和可信上鏈存儲是一切數(shù)據(jù)操作的基石。由于區(qū)塊鏈?zhǔn)且粋€確定性的、封閉的系統(tǒng)環(huán)境,也是一個基于共識的網(wǎng)絡(luò),其共識機(jī)制及其確定性虛擬機(jī)的固有局限規(guī)定了智能合約只能被動接收鏈內(nèi)的數(shù)據(jù),既不能主動獲取鏈外真實(shí)世界的數(shù)據(jù),也不能自發(fā)調(diào)用外部網(wǎng)絡(luò)API,但諸如農(nóng)產(chǎn)品冷鏈、金融等大多數(shù)區(qū)塊鏈場景都需要主動實(shí)時獲取現(xiàn)實(shí)世界特別是互聯(lián)網(wǎng)中的數(shù)據(jù)。同時智能合約的執(zhí)行需要觸發(fā)條件,當(dāng)智能合約的觸發(fā)條件是外部信息時(鏈外),就必須需要預(yù)言機(jī)來提供數(shù)據(jù)服務(wù),通過預(yù)言機(jī)將現(xiàn)實(shí)世界的數(shù)據(jù)輸入到區(qū)塊鏈上,該過程稱為可信數(shù)據(jù)上鏈,其工作流程圖如圖1所示。從圖1中用戶的智能合約向預(yù)言機(jī)智能合約發(fā)起數(shù)據(jù)請求,從而通過鏈下的API接口獲得外部數(shù)據(jù)即農(nóng)產(chǎn)品冷鏈數(shù)據(jù),更確切的說是外部數(shù)據(jù)源將冷鏈數(shù)據(jù)發(fā)送給預(yù)言機(jī)智能合約,然后預(yù)言機(jī)智能合約將數(shù)據(jù)反饋給用戶智能合約。
圖1 基于預(yù)言機(jī)的可信數(shù)據(jù)上鏈工作流程
農(nóng)產(chǎn)品冷鏈數(shù)據(jù)平臺通過連接多方數(shù)據(jù)源,將多方數(shù)據(jù)的目錄資源、權(quán)限規(guī)則和使用日志上鏈,實(shí)現(xiàn)跨主體的分布式數(shù)據(jù)安全共享與交換,并具備多方共識、安全可控、不可篡改、使用留痕等技術(shù)特性。利用嚴(yán)格的安全機(jī)制和權(quán)限控制機(jī)制,在基于預(yù)言機(jī)技術(shù)的可信數(shù)據(jù)上鏈的前提下,利用交換前置機(jī)技術(shù)實(shí)現(xiàn)數(shù)據(jù)安全交換,從而達(dá)到本項(xiàng)目中海南農(nóng)產(chǎn)品冷鏈物流數(shù)據(jù)平臺數(shù)據(jù)安全。交換前置機(jī)技術(shù)流程如圖2所示。
圖2 交換前置機(jī)技術(shù)流程
區(qū)塊鏈可信多方安全計(jì)算是將可信執(zhí)行環(huán)境和可信數(shù)據(jù)共享技術(shù)相結(jié)合,實(shí)現(xiàn)本項(xiàng)目中海南農(nóng)產(chǎn)品冷鏈數(shù)據(jù)平臺中各機(jī)構(gòu)之間數(shù)據(jù)合作過程中的數(shù)據(jù)安全和隱私保護(hù)問題,針對一些特殊冷鏈物流信息實(shí)現(xiàn)數(shù)據(jù)可用不可見及閱后即焚的效果。
可信執(zhí)行環(huán)境是硬件設(shè)備CPU上的一塊區(qū)域。該區(qū)域的作用是給數(shù)據(jù)和代碼的執(zhí)行提供一個更安全的空間,并保證它們的機(jī)密性和完整性。在農(nóng)產(chǎn)品冷鏈數(shù)據(jù)管理平臺中,該技術(shù)可與區(qū)塊鏈技術(shù)相結(jié)合,實(shí)現(xiàn)基于區(qū)塊鏈技術(shù)的可信多方安全計(jì)算,其流程如圖3所示。
圖3 可信多方安全計(jì)算流程
通過圖3的流程圖可以看到,存在數(shù)據(jù)需求方X,該需求方可為第三方數(shù)據(jù)監(jiān)管方、商品終端客戶或金融機(jī)構(gòu)。該需求方提出請求,對農(nóng)產(chǎn)品冷鏈數(shù)據(jù)進(jìn)行驗(yàn)證或進(jìn)行其他數(shù)據(jù)處理時,進(jìn)行數(shù)據(jù)獲取。由數(shù)據(jù)需求方X上傳可信計(jì)算模型,該模型僅對單一需求生效。需求方X根據(jù)計(jì)算模型內(nèi)容,向組織A、組織B、…、組織N請求數(shù)據(jù)A′、B′、…、N′。相關(guān)組織在驗(yàn)證該請求的真實(shí)性后同意該請求,并授權(quán)其計(jì)算模型訪問相關(guān)數(shù)據(jù)接口,獲取相應(yīng)數(shù)據(jù)。此時冷鏈物流數(shù)據(jù)平臺創(chuàng)建基于硬件的安全執(zhí)行環(huán)境,加載可信計(jì)算模型,并通過授權(quán)接口調(diào)用相關(guān)數(shù)據(jù),進(jìn)行可信計(jì)算,最終向數(shù)據(jù)需求方X提供可信計(jì)算結(jié)果。
由于不同主體間對相同商品或貨物在其系統(tǒng)內(nèi)的檢索標(biāo)識是不同的,在多方數(shù)據(jù)上鏈、共享過程中對相關(guān)數(shù)據(jù)的關(guān)聯(lián)會造成一定的困難。為了解決這一問題,引入分布式身份標(biāo)識DID,可以通過對其DID的解析,解決相同商品或貨物在不同主體間的識別問題,解決其在不同場景下的識別及使用問題。其信息保存于區(qū)塊鏈網(wǎng)絡(luò)中,可進(jìn)行存儲驗(yàn)證,確保其安全性。DID身份標(biāo)識的流程如圖4所示。
圖4 DID身份標(biāo)識的流程
本文在聯(lián)盟鏈的基礎(chǔ)上,充分利用了區(qū)塊鏈去中心化、數(shù)據(jù)透明可追溯化、防篡改等優(yōu)點(diǎn),同時結(jié)合可信計(jì)算技術(shù),研究并實(shí)現(xiàn)了農(nóng)產(chǎn)品冷鏈數(shù)據(jù)安全有序存儲的解決方案。該方案在去中心化的同時解決了新冠疫情背景下冷鏈物流中的信任危機(jī),既可以有效保證冷鏈數(shù)據(jù)的隱私性,也能實(shí)現(xiàn)整個冷鏈數(shù)據(jù)存儲的可追溯性,為農(nóng)產(chǎn)品冷鏈數(shù)據(jù)存儲過程中所存在的數(shù)據(jù)濫用、應(yīng)用攻擊、降低效能、刪改數(shù)據(jù)等安全問題具有重要的理論和現(xiàn)實(shí)意義。