• 
    

    
    

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

      ?

      TrustZone架構(gòu)下基于優(yōu)化RSA的食品追溯可信采集方法

      2022-08-10 08:22:26王朝陽(yáng)汪顥懿張青川
      關(guān)鍵詞:加密算法密文非對(duì)稱

      王朝陽(yáng) 汪顥懿 左 敏 張青川

      (北京工商大學(xué)農(nóng)產(chǎn)品質(zhì)量安全追溯技術(shù)及應(yīng)用國(guó)家工程實(shí)驗(yàn)室 北京 100048)

      0 引 言

      隨著人民生活水平的不斷提高,消費(fèi)者對(duì)食品品質(zhì)以及安全的要求也越來越高,大眾對(duì)食品的關(guān)注點(diǎn)已經(jīng)轉(zhuǎn)變?yōu)槭巢牡脑搭^,食品加工過程、倉(cāng)儲(chǔ)、運(yùn)輸?shù)?。同時(shí)近年來食品安全問題頻發(fā),從最早的三聚氰胺、地溝油到現(xiàn)如今的臺(tái)灣“塑化劑”風(fēng)波、湖南大米鎘元素超標(biāo)、天津獨(dú)流調(diào)料造假等事件,當(dāng)前食品安全隱患愈發(fā)嚴(yán)重。另一方面,大多數(shù)食品對(duì)于加工、運(yùn)輸、倉(cāng)儲(chǔ)等環(huán)節(jié)中的溫度、濕度、光強(qiáng)等環(huán)境因素有較高要求,一旦這些因素未達(dá)標(biāo),食品變質(zhì)的可能性增大,若這樣的食品流向市場(chǎng),將會(huì)嚴(yán)重危害公眾的健康。因此,亟需采用安全、可信、透明的食品安全溯源系統(tǒng)來加強(qiáng)對(duì)食品產(chǎn)業(yè)鏈的監(jiān)管與效率,提高食品安全水平,保障國(guó)民飲食健康。隨著信息科學(xué)的飛速發(fā)展,在食品安全溯源系統(tǒng)中融入智能技術(shù)、物聯(lián)網(wǎng)技術(shù),極大地促進(jìn)了我國(guó)食品安全溯源體系的發(fā)展,使得公眾能參與到食品安全監(jiān)管中。在服務(wù)器端,以去中心化的分布式結(jié)構(gòu)應(yīng)用、不可篡改的時(shí)間戳、安全信任機(jī)制為核心的區(qū)塊鏈技術(shù)成為了信息技術(shù)的研究熱點(diǎn)。區(qū)塊鏈具有去中心化、唯一性、自治性、不可篡改性、匿名性等特性[1],是目前搭建食品安全追溯系統(tǒng)的不二之選,在實(shí)現(xiàn)追溯透明化的同時(shí)可以有效地保證服務(wù)器端的數(shù)據(jù)安全性。

      但是,區(qū)塊鏈等技術(shù)并不能保證追溯信息在上“鏈”前的數(shù)據(jù)安全,若追溯信息在上傳至服務(wù)器端前就遭到篡改,后續(xù)的追溯過程將毫無(wú)意義。為此,如何杜絕企業(yè)上傳虛假或被篡改的追溯信息已經(jīng)是目前亟需解決的問題。針對(duì)這一問題,本文設(shè)計(jì)實(shí)現(xiàn)了一種TrustZone[2-3]架構(gòu)下基于優(yōu)化RSA的食品追溯可信采集方法,利用可信執(zhí)行環(huán)境、時(shí)間戳、非對(duì)稱加密算法等技術(shù),并設(shè)計(jì)加密機(jī)制,可部署在養(yǎng)殖場(chǎng)、運(yùn)輸車輛、銷售貨柜等嵌入式環(huán)境,對(duì)上傳至服務(wù)器端前的追溯數(shù)據(jù)提供安全保障。此外,由于食品安全追溯數(shù)據(jù)量極大,且嵌入式環(huán)境硬件計(jì)算能力有限,運(yùn)算速度較慢,為了防止出現(xiàn)數(shù)據(jù)堆積的問題,本文對(duì)RSA算法進(jìn)行優(yōu)化,在保證安全性的同時(shí)提高運(yùn)算速度。

      1 相關(guān)工作

      1.1 國(guó)內(nèi)外研究現(xiàn)狀

      針對(duì)攻擊者在數(shù)據(jù)采集端的竊取、篡改、破壞等惡意行為,國(guó)內(nèi)外已有研究者基于國(guó)產(chǎn)密碼算法、ARMA的無(wú)線傳感器網(wǎng)絡(luò)、數(shù)字水印等技術(shù),展開研究并提出了可行的防護(hù)方案。馮云等[4]提出了基于國(guó)產(chǎn)密碼算法的可信計(jì)算體系,將基于國(guó)產(chǎn)密碼算法的可信技術(shù)應(yīng)用于采集終端的安全加固。王海元等[5]提出了基于ARMA的無(wú)線傳感器網(wǎng)絡(luò)可信數(shù)據(jù)采集方法,在保證采集數(shù)據(jù)的高度可信的同時(shí)顯著提高了網(wǎng)絡(luò)的整體性能。李紅濤等[6]提出了一種全新的數(shù)字水印嵌入方法,保障涉密圖像在傳輸過程中的安全性、可靠性和完整性。Zhao等[7]利用靜態(tài)隨機(jī)存取存儲(chǔ)器在不添加安全硬件的前提下生成可信根,來得到加密數(shù)據(jù)的安全密鑰,通過將加密后的數(shù)據(jù)存儲(chǔ)在系統(tǒng)硬件上來保證數(shù)據(jù)安全。Hein等[8]設(shè)計(jì)實(shí)現(xiàn)了一種基于安全密鑰和Merkle-Tree認(rèn)證加密的安全設(shè)備,可有效防止攻擊者對(duì)數(shù)據(jù)的篡改、竊取、破壞。

      1.2 非對(duì)稱加密算法

      非對(duì)稱加密算法中包含公開密鑰(Public Key,PK)和私有密鑰(Private Key,SK)。公鑰與私鑰是一對(duì),如果用公鑰對(duì)數(shù)據(jù)進(jìn)行加密,只有用對(duì)應(yīng)的私鑰才能解密,非對(duì)稱加密算法強(qiáng)度復(fù)雜,安全性主要由算法和密鑰管理決定。對(duì)稱密碼體制則是單一密鑰,并且是非公開的,所以保證其安全性就是保證密鑰的安全,但在解密時(shí)必須將密鑰向?qū)Ψ焦_,而非對(duì)稱密鑰體制有兩種密鑰,其中一個(gè)是公開的,這樣就可以不需要像對(duì)稱密碼那樣將密鑰傳輸給對(duì)方,確保了密鑰對(duì)的安全性,因此非對(duì)稱加密算法安全性更好。本文列出了RSA、DSA、ECC、RABIN這4種目前應(yīng)用最多的非對(duì)稱加密算法[9-13],并從成熟度、安全性、運(yùn)算速度、資源消耗等特點(diǎn)進(jìn)行對(duì)比,對(duì)比結(jié)果如表1所示。

      表1 算法對(duì)比結(jié)果

      2 TrustZone架構(gòu)下的食品追溯可信采集方法

      本文設(shè)計(jì)的TrustZone架構(gòu)下的食品追溯可信采集方法主要包括數(shù)據(jù)采集層、加密層、存儲(chǔ)三部分。通過設(shè)計(jì)基于非對(duì)稱加密算法和時(shí)間戳的加密機(jī)制,在可信執(zhí)行環(huán)境中對(duì)追溯信息進(jìn)行加密,以確保追溯信息的可信性。

      2.1 數(shù)據(jù)采集類型

      追溯數(shù)據(jù)采集,是指從傳感器和其他待測(cè)設(shè)備等模擬和數(shù)字被測(cè)單元中自動(dòng)采集追溯信息(非電量或者電信號(hào)),送到上位機(jī)中進(jìn)行分析、處理。由于傳統(tǒng)的采集系統(tǒng)存在響應(yīng)慢、精度低、可靠性差、效率低、操作繁瑣等弊端,已經(jīng)不能完全適應(yīng)當(dāng)前追溯領(lǐng)域的需求。如今嵌入式技術(shù)已經(jīng)相對(duì)成熟,因此,基于嵌入式的追溯信息采集設(shè)備是目前最優(yōu)的選擇方案。經(jīng)過對(duì)現(xiàn)有的食品安全追溯領(lǐng)域的調(diào)研,本文對(duì)追溯環(huán)節(jié)以及數(shù)據(jù)類型進(jìn)行了總結(jié),并確定了本文方法所采集的數(shù)據(jù)類型;食品安全追溯可以分為生產(chǎn)環(huán)節(jié)、倉(cāng)儲(chǔ)環(huán)節(jié)、運(yùn)輸環(huán)節(jié)三部分,具體追溯對(duì)象以及追溯信息如表2所示。

      表2 追溯對(duì)象與追溯信息

      2.2 方法與加密機(jī)制設(shè)計(jì)

      本文方法所需的硬件設(shè)備主要包括:電源、ARM核心控制模塊、傳感器、存儲(chǔ)設(shè)備等模塊,系統(tǒng)框架如圖1所示。通過調(diào)用溫度傳感器、濕度傳感器、位置傳感器、光強(qiáng)傳感器、氣壓傳感器等傳感器對(duì)食品追溯環(huán)境中的環(huán)境信息進(jìn)行數(shù)據(jù)采集。采集到的追溯數(shù)據(jù)在ARM核心控制模塊中由CA端傳入TA端,在TrustZone技術(shù)構(gòu)建的可信執(zhí)行環(huán)境中,通過基于時(shí)間戳和優(yōu)化后的非對(duì)稱加密算法的加密機(jī)制,對(duì)數(shù)據(jù)加密,最后將追溯信息與密文共同存儲(chǔ)。在上傳至服務(wù)器前,可通過公鑰對(duì)數(shù)據(jù)進(jìn)行解密驗(yàn)證,進(jìn)一步確保數(shù)據(jù)的可信性。由于全部加密過程均在可信執(zhí)行環(huán)境中進(jìn)行,不僅可以確保私鑰的可信性,由于私鑰存放在安全的永久存儲(chǔ)器中,還可以防止遭受來自外界攻擊者的竊取與篡改。

      在追溯過程中,追溯信息通常由數(shù)據(jù)、采集時(shí)間兩部分構(gòu)成。對(duì)于傳統(tǒng)的追溯系統(tǒng),不法分子可以在數(shù)據(jù)上傳服務(wù)器或區(qū)塊鏈之前,在本地對(duì)追溯數(shù)據(jù)以及采集時(shí)間進(jìn)行篡改,以此來欺騙公眾及監(jiān)管部門,對(duì)此文章將通過加密機(jī)制來保證追溯信息的可信性以及時(shí)效性(時(shí)間的遞推)。加密機(jī)制如圖2所示。

      圖2 加密機(jī)制設(shè)計(jì)

      (1) 在可信執(zhí)行環(huán)境內(nèi)生成公鑰私鑰對(duì)(PK,SK),私鑰將永久存儲(chǔ)在可信執(zhí)行環(huán)境中。

      (2) 將傳感器采集到的追溯信息(m)傳輸至可信執(zhí)行環(huán)境。

      (3) 在可信執(zhí)行環(huán)境內(nèi)對(duì)追溯信息加蓋時(shí)間戳(time),以確保追溯信息中時(shí)間參數(shù)的單一性。

      (4) 加蓋時(shí)間戳的若干條追溯信息將在內(nèi)存中組成數(shù)據(jù)塊,等待處理。

      (5) 使用非對(duì)稱加密算法,通過私鑰對(duì)追溯信息進(jìn)行加密。

      (6) 將原始追溯信息、時(shí)間戳、密文組成新的追溯信息(M),并進(jìn)行存儲(chǔ)。

      (7) 在上傳至區(qū)塊鏈或服務(wù)器前,需要用公鑰(PK)對(duì)密文(C)進(jìn)行驗(yàn)證,以確保追溯信息上鏈前的可信性。

      2.3 基于TrustZone技術(shù)的方法實(shí)現(xiàn)

      TrustZone是ARM提出的一種提供基于硬件的隔離機(jī)制,為需要高安全性的代碼構(gòu)建安全可靠的環(huán)境[14-15]。它將系統(tǒng)的硬件和軟件資源分為兩部分,一個(gè)是可信執(zhí)行環(huán)境,另一個(gè)是普通環(huán)境。所有的敏感操作都應(yīng)該在可信執(zhí)行環(huán)境中被保護(hù),其余安全性要求較低的操作在普通執(zhí)行環(huán)境中執(zhí)行,例如Rich OS和大多數(shù)應(yīng)用程序。核心狀態(tài)由安全配置寄存器(SCR)中的NS位區(qū)分,NS位只能由安全核心修改。通過安全監(jiān)控呼叫(SMC),無(wú)論在何種環(huán)境中,它都可以進(jìn)入監(jiān)控模式并切換到其他環(huán)境。

      2.3.1可信執(zhí)行環(huán)境

      可信執(zhí)行環(huán)境(Trusted Execution Environment,TEE)[16-17]首先由Global Platform(GP)提出,并制定技術(shù)規(guī)范,它是與設(shè)備上的Rich OS(通常是Android等)并存的運(yùn)行環(huán)境,并且給Rich OS提供安全服務(wù)??尚艌?zhí)行環(huán)境可分為硬件層與軟件層兩部分,其中軟件層包括系統(tǒng)層、接口層、應(yīng)用層,如圖3所示。TEE所需的軟硬件資源通過TrustZone技術(shù)與Rich OS分離,為了保護(hù)TA的資源和數(shù)據(jù)的保密性,完整性和訪問權(quán)限,安全性需求較高的應(yīng)用(可信應(yīng)用,TA)需要在TEE中得到授權(quán)后才能通過客戶端應(yīng)用(CA)端進(jìn)行調(diào)用,每個(gè)TA是相互獨(dú)立的,而且不能在未授權(quán)的情況下互相訪問。為了保證TEE本身的可信根,TEE在安全啟動(dòng)過程中是要通過驗(yàn)證并且與Rich OS隔離[18]。

      圖3 可信執(zhí)行環(huán)境框架

      TEE內(nèi)部API主要包含了密鑰管理、密碼算法、安全存儲(chǔ)、安全時(shí)鐘資源和服務(wù),還有擴(kuò)展的可信UI等API。可信UI是指當(dāng)有關(guān)涉密或關(guān)鍵信息需要顯示或輸入時(shí),顯示器和鍵盤等硬件資源將全部由TEE接管,Rich OS中的應(yīng)用不能對(duì)其進(jìn)行訪問。在進(jìn)行TA程序開發(fā)時(shí),TEE內(nèi)部API是提供給TA的編程接口,而TEE外部API則是讓運(yùn)行在Rich OS中的CA訪問TA服務(wù)和數(shù)據(jù)的底層通信接口。

      2.3.2時(shí)間戳認(rèn)證

      在傳統(tǒng)的食品安全追溯領(lǐng)域中存在這樣一種現(xiàn)象,有一些不法分子在篡改食品安全追溯信息時(shí),通過偽造數(shù)據(jù)中的時(shí)間信息等方法,使用篡改后的數(shù)據(jù)對(duì)真實(shí)信息進(jìn)行覆蓋,來欺騙數(shù)據(jù)庫(kù)以及數(shù)據(jù)認(rèn)證。針對(duì)這一問題,本文將根據(jù)TrustZone的內(nèi)置時(shí)鐘,對(duì)追溯信息加蓋無(wú)法篡改的時(shí)間戳,進(jìn)一步確保追溯信息的可信性。

      時(shí)間戳是指一個(gè)能表示一份數(shù)據(jù)在某個(gè)特定時(shí)間之前已經(jīng)存在的、完整的、可驗(yàn)證的數(shù)據(jù),通常是一個(gè)字符序列,唯一地標(biāo)識(shí)某一刻的時(shí)間。基于TrustZone技術(shù)的可信執(zhí)行環(huán)境具有自己獨(dú)特的時(shí)間機(jī)制,該時(shí)鐘具有唯一且連貫性。在可信執(zhí)行環(huán)境中,當(dāng)可信時(shí)鐘源產(chǎn)生中斷或某些受監(jiān)控的系統(tǒng)行為發(fā)生時(shí)都將會(huì)觸發(fā)安全指令,任何對(duì)時(shí)間信息的篡改、插入或刪除都將被系統(tǒng)拒絕,以保證系統(tǒng)內(nèi)全部數(shù)據(jù)時(shí)間的真實(shí)性以及時(shí)序單一性,因此即使攻擊者侵入可信執(zhí)行環(huán)境或破解了密鑰對(duì),也無(wú)法對(duì)已經(jīng)加蓋時(shí)間戳的追溯數(shù)據(jù)進(jìn)行篡改。本文將使用絕對(duì)時(shí)間戳,以便用戶以及監(jiān)管部門在服務(wù)器端的食品安全追溯系統(tǒng)中通過時(shí)間信息對(duì)系統(tǒng)中的數(shù)據(jù)進(jìn)行檢索。

      2.3.3加密機(jī)制的實(shí)現(xiàn)

      在OP-TEE中進(jìn)行TA程序的編寫,實(shí)現(xiàn)追溯信息加密。

      (1) 在TA中使用Privkey Generator生成密鑰對(duì),并將私鑰永久存儲(chǔ)在TA中。

      (2) 創(chuàng)建CA-TA通話,將追溯信息傳入TA端,并使用command ID調(diào)用TA端的加密程序。

      (3) 應(yīng)用TrustZone技術(shù)中可信執(zhí)行環(huán)境時(shí)間不可篡改這一特點(diǎn),為追溯信息加蓋時(shí)間戳。

      (4) 加蓋時(shí)間戳的追溯信息將在內(nèi)存中暫時(shí)存儲(chǔ),每當(dāng)數(shù)據(jù)累計(jì)至256 KB時(shí)將組成一個(gè)數(shù)據(jù)塊。

      (5) 使用優(yōu)化后的加密算法對(duì)追溯信息進(jìn)行加密。

      (6) 將原始追溯信息、時(shí)間戳、密文組成新的追溯信息,并傳回CA端進(jìn)行存儲(chǔ)。

      (7) 將公鑰存入數(shù)據(jù)庫(kù)或區(qū)塊鏈的智能合約中,在數(shù)據(jù)傳入服務(wù)器前進(jìn)行驗(yàn)證。

      3 非對(duì)稱加密算法的選取與優(yōu)化

      3.1 加密算法的選取

      在嵌入式環(huán)境下,開發(fā)難度較高,因此需要選擇安全性高且更加成熟的非對(duì)稱加密算法,便于根據(jù)具體的應(yīng)用需求做進(jìn)一步優(yōu)化。另一方面,嵌入式環(huán)境下硬件水平較低,而且由于非對(duì)稱加密算法較為復(fù)雜,使得其運(yùn)算速度較慢,系統(tǒng)負(fù)載過大,資源消耗問題比較嚴(yán)重。因此需要針運(yùn)算效率、密文大小、資源需求等方面對(duì)算法進(jìn)行優(yōu)化。通過對(duì)比表1中RSA、DSA、ECC、RABIN四種算法,根據(jù)成熟度、安全性、運(yùn)算速度、資源消耗等特點(diǎn),最終選擇RSA算法。

      3.2 算法優(yōu)化

      針對(duì)嵌入式環(huán)境下運(yùn)算能力較差,食品安全追溯信息量較大,追溯平臺(tái)負(fù)載較重等問題,本文中將引入Rabin算法、霍夫曼編碼和隨機(jī)分量s,對(duì)RSA算法進(jìn)行優(yōu)化。

      3.2.1霍夫曼編碼

      為了提高加密速度,可以使用霍夫曼編碼[19]來對(duì)數(shù)據(jù)進(jìn)行壓縮,它是一種用于無(wú)損數(shù)據(jù)壓縮的算法,可以從壓縮數(shù)據(jù)中精確恢復(fù)原始數(shù)據(jù)。該算法用于壓縮數(shù)據(jù)(符號(hào)或字母)以生成可變長(zhǎng)度代碼而不是每個(gè)符號(hào)的固定長(zhǎng)度代碼。該算法通過對(duì)內(nèi)容中符號(hào)或字母的統(tǒng)計(jì)分析以構(gòu)造頻率表,并通過頻率表來構(gòu)建霍夫曼樹,用于每個(gè)符號(hào)分配其適當(dāng)?shù)拇a長(zhǎng)度。在數(shù)據(jù)文件上應(yīng)用霍夫曼編碼將生成兩個(gè)文件:二進(jìn)制文件(B)和頭文件(H)。二進(jìn)制文件取決于用于檢索原始數(shù)據(jù)的頭文件,因此,如果頭文件丟失,則無(wú)法檢索真實(shí)數(shù)據(jù)。頭文件包含原始數(shù)據(jù)文件的所有符號(hào)或其相應(yīng)的ASCII代碼。頭文件包含為其出現(xiàn)分配的唯一符號(hào),其中沒有符號(hào)重復(fù)兩次,二進(jìn)制文件包含每個(gè)符號(hào)的代碼。例如原文:Beijing Technology and Business University,e表示為110,t表示為010等。

      頭文件為:

      u00bdu00b4u00d1u00e7u00efu00e0u00e2u00b2u00a9u0082u00d1u0088u0094u00d3u0091u00c48

      二進(jìn)制文件為:

      0000100110111101101101000000001011010001111

      00111000010111110111111100000111000101011001010

      10100100000110100000101101000110001000100101001

      101001110010001110001000101110000111000

      要解壓縮消息,通過頭文件來構(gòu)建霍夫曼樹,從樹的根開始逐位讀取二進(jìn)制文件,找到0位時(shí),向左移動(dòng)到樹上;找到1位時(shí),在樹上向右移動(dòng),直到找到葉節(jié)點(diǎn),然后對(duì)所有剩余位重復(fù)該過程,直到檢索到所有消息字符。

      3.2.2隨機(jī)分量s

      通過引入隨機(jī)分量s,每次加密消息時(shí)都會(huì)獲得不同的密文,因此攻擊者很難從關(guān)于原始消息的密文中進(jìn)行破解。本文使用字母s來表示隨機(jī)分量,其中s是通過使用加密安全偽隨機(jī)數(shù)生成器生成的隨機(jī)數(shù),并且對(duì)于每個(gè)消息(隨機(jī)數(shù))使用一次。本文使用s來隱藏頭文件的密文并使二進(jìn)制文件失效。在s小于密文的情況下,多s進(jìn)行多次疊加來作為密文的長(zhǎng)度,如果s大于密文,則把s的個(gè)位數(shù)除去后為密文的相同長(zhǎng)度,在使二進(jìn)制文件失效時(shí)應(yīng)用相同的方法。為了使加密過程在語(yǔ)義上安全,本文選擇隨機(jī)分量s并計(jì)算新的密文C′=C×s。同樣,為了使二進(jìn)制文件B在語(yǔ)義上安全,使用s對(duì)B進(jìn)行盲化,例如B′=B×s。另一方面,隨機(jī)分量s應(yīng)該受到保護(hù),本次本文將使用Rabin加密算法對(duì)s進(jìn)行加密。

      3.2.3優(yōu)化實(shí)現(xiàn)

      要解壓縮消息,通過頭文件來構(gòu)建霍夫曼樹,從樹的根開始逐位讀取二進(jìn)制文件,找到0位時(shí),向左移動(dòng)到樹上;找到1位時(shí),在樹上向右移動(dòng),直到找到葉節(jié)點(diǎn),然后對(duì)所有剩余位重復(fù)該過程,直到檢索到所有消息字符。

      優(yōu)化后的RSA算法依靠霍夫曼編碼來增強(qiáng)安全性并加速加密和解密過程。為了增強(qiáng)執(zhí)行速度,加密算法僅加密頭文件并使二進(jìn)制文件保密,而不是加密整個(gè)消息。通過s參數(shù)對(duì)二進(jìn)制文件進(jìn)行盲化使得加密消息在語(yǔ)義上是安全的,具體優(yōu)化算法如下:

      步驟1在接收端生成公鑰/私鑰對(duì)。

      1) 計(jì)算RSA算法公鑰/私鑰對(duì)。

      2) 計(jì)算Rabin算法公鑰/私鑰對(duì)。

      步驟2發(fā)送端的加密準(zhǔn)備。

      1) 為每一條加密信息生成隨機(jī)分量s。

      2) 使用霍夫曼代碼壓縮信息。輸出:二進(jìn)制文件(B)和頭文件(H)。

      步驟3發(fā)送端加密過程。

      1) 使用RSA算法對(duì)H進(jìn)行加密,任取大整數(shù)N和e,加密結(jié)果為:C=HemodN,0

      2) 使用s對(duì)C進(jìn)行盲化,生成C′=C×s。

      3) 使用s對(duì)B進(jìn)行盲化,生成B′=B×s。

      4) 使用Rabin算法對(duì)s進(jìn)行加密,得到s′=s2modN。

      步驟4接收端的解密過程。

      1) 使用Rabin算法對(duì)s解密。

      2) 計(jì)算C=C′×s。

      3) 計(jì)算B′=B×s。

      4) 使用RSA算法對(duì)C進(jìn)行解密,任取大整數(shù)d,生成H=CdmodN。

      步驟5在接收端解壓縮信息。

      1) 將H、B傳入霍夫曼代碼獲得解密結(jié)果。

      4 方法的實(shí)現(xiàn)與分析

      4.1 原型系統(tǒng)部署

      原型系統(tǒng)試點(diǎn)部署在北京市農(nóng)業(yè)農(nóng)村局與北京市畜牧總站合作建立的智能禽舍中,位于北京市順義區(qū)。禽舍環(huán)境監(jiān)測(cè)系統(tǒng)將數(shù)據(jù)監(jiān)測(cè)節(jié)點(diǎn)分為前部節(jié)點(diǎn)、中部節(jié)點(diǎn)和尾部節(jié)點(diǎn)三個(gè)區(qū)域,每個(gè)區(qū)域獨(dú)立采集、傳輸數(shù)據(jù),實(shí)現(xiàn)了不同分區(qū)不同情況的差異化處理,可以針對(duì)性地對(duì)禽舍中環(huán)境信息進(jìn)行監(jiān)控,為后續(xù)的追溯提供數(shù)據(jù)支持。

      實(shí)驗(yàn)環(huán)境主要分為硬件與軟件兩部分。

      (1) 硬件部分:系統(tǒng)硬件部分采用基于ARM的樹莓派3B作為主控板,數(shù)據(jù)采集端使用XL51智能溫濕度傳感器,該設(shè)備支持溫濕度、TVOC、大氣壓力,以及二氧化碳、氨氣、硫化氫、甲醛等氣體濃度的數(shù)據(jù)采集。

      (2) 系統(tǒng)部分:樹莓派使用Linux操作系統(tǒng), 基于此環(huán)境搭建Python語(yǔ)言、C語(yǔ)言、OP-TEE的軟件環(huán)境,數(shù)據(jù)采集中使用Python語(yǔ)言操作GPIO。使用OP-TEE作為trust OS,C語(yǔ)言作為開發(fā)語(yǔ)言,進(jìn)行CA-TA程序的開發(fā),并部署在樹莓派3B上,安全操作系統(tǒng)以及開發(fā)環(huán)境均遵循GP TEE系統(tǒng)開發(fā)架構(gòu)規(guī)范,追溯系統(tǒng)使用基于Truffle框架和Ganache可視化應(yīng)用的北京市畜牧總站智能雞舍監(jiān)控管理平臺(tái)。

      4.2 數(shù)據(jù)采集與加密

      實(shí)驗(yàn)數(shù)據(jù)通過在四個(gè)禽舍部署的各不同分區(qū)的傳感器設(shè)備采集,傳感器均安置在雞舍中的百葉窗中,實(shí)驗(yàn)環(huán)境如圖4所示。每個(gè)雞舍安裝6個(gè)傳感器,傳感器數(shù)據(jù)采集頻率為每30 s一次,每個(gè)雞舍單日產(chǎn)生約1.7萬(wàn)條數(shù)據(jù)樣本。實(shí)驗(yàn)數(shù)據(jù)通過CA端傳入TA端,加蓋時(shí)間戳后進(jìn)行加密操作,隨后由實(shí)驗(yàn)數(shù)據(jù)、時(shí)間戳(Time)、密文(Ciphertext)組成追溯信息,由TA端傳回CA端并進(jìn)行存儲(chǔ)。嵌入式環(huán)境最終輸出的追溯信息如表3所示。

      圖4 實(shí)驗(yàn)環(huán)境

      表3 數(shù)據(jù)加密結(jié)果

      4.3 數(shù)據(jù)追溯

      加密后的數(shù)據(jù)將上傳至基于聯(lián)盟區(qū)塊鏈的北京市畜牧總站智能雞舍監(jiān)控管理平臺(tái),通過智能合約中的公鑰對(duì)密文進(jìn)行檢驗(yàn),由于數(shù)據(jù)量巨大,系統(tǒng)將對(duì)一小時(shí)內(nèi)采集到的驗(yàn)證無(wú)誤的數(shù)據(jù)取平均值上傳至聯(lián)盟區(qū)塊鏈追溯系統(tǒng)供應(yīng)用查詢使用,通過Ganache可視化應(yīng)用觀察到追溯數(shù)據(jù)成功上傳到系統(tǒng)后,區(qū)塊數(shù)正常增加且交易記錄增長(zhǎng)。在該系統(tǒng)中輸入追溯目標(biāo)的追溯ID,即可對(duì)數(shù)據(jù)進(jìn)行查詢,如圖5所示。

      圖5 追溯數(shù)據(jù)查詢結(jié)果

      4.4 RSA算法優(yōu)化性能測(cè)試

      在測(cè)試中,本文將分別使用RSA算法以及優(yōu)化后的RSA算法對(duì)10個(gè)不同尺寸的文件進(jìn)行加密,每個(gè)文件加密三次,并對(duì)單位時(shí)間運(yùn)算次數(shù)取均值,測(cè)試文件大小從1 MB到10 MB。圖6顯示了RSA算法優(yōu)化前后對(duì)不同尺寸的文件的加密過程。此外,由圖7可以看出,對(duì)于相同的明文,優(yōu)化后的RSA算法所生成的密文大小明顯小于優(yōu)化前。

      圖6 運(yùn)算效率對(duì)比

      圖7 密文大小對(duì)比

      4.5 結(jié)果分析

      由原型系統(tǒng)的試點(diǎn)效果可知,TrustZone架構(gòu)下基于優(yōu)化RSA的食品追溯可信采集方法可以有效地確保智能禽舍所采集的追溯信息在上傳服務(wù)器前的信息安全,實(shí)現(xiàn)追溯數(shù)據(jù)可信采集同時(shí)在嵌入式環(huán)境下也可以高效工作,并部署在更多的工作環(huán)境中。加密后的追溯數(shù)據(jù)可以通過北京市畜牧總站智能雞舍監(jiān)控管理平臺(tái)進(jìn)行數(shù)據(jù)驗(yàn)證,從而確保追溯數(shù)據(jù)從采集端到存儲(chǔ)端的全過程數(shù)據(jù)安全。在優(yōu)化后的算法中使用隨機(jī)分量s可以保證加密過程中的語(yǔ)義安全,每次加密消息時(shí)都會(huì)獲得不同的密文,同時(shí)二進(jìn)制文件也通過隨機(jī)分量s進(jìn)行了盲化,攻擊者無(wú)法逆向破解密鑰對(duì)于密文,進(jìn)一步提了RSA算法的安全性。圖6顯示加密速度與兩個(gè)密碼系統(tǒng)加密的文件大小成正比,但優(yōu)化后的RSA算法明顯更快,較優(yōu)化前平均提高了94.9%,這是由于優(yōu)化后的RSA算法并不加密全部信息,而是通過霍夫曼編碼對(duì)數(shù)據(jù)進(jìn)行壓縮后再運(yùn)行加密算法,這在確保信息安全的同時(shí)提高了運(yùn)算速度。另一方面,在追溯過程中信息量極大,由圖7可以看出改進(jìn)后的RSA算法生成的密文的大小較優(yōu)化前平均減少55.5%,這將有利于減輕本地以及服務(wù)器端的存儲(chǔ)壓力,降低追溯成本。

      5 結(jié) 語(yǔ)

      本文提出并實(shí)現(xiàn)一種TrustZone架構(gòu)下基于優(yōu)化RSA的食品追溯可信采集方法,對(duì)TrustZone技術(shù)進(jìn)行研究并首次將其應(yīng)用在食品安全追溯領(lǐng)域,有效地解決了追溯數(shù)據(jù)在上傳至服務(wù)器端之前的數(shù)據(jù)安全隱患,填補(bǔ)了當(dāng)前的行業(yè)空白。本文根據(jù)嵌入式環(huán)境以及應(yīng)用需求設(shè)計(jì)了基于優(yōu)化RSA算法的追溯信息加密機(jī)制,在可信執(zhí)行環(huán)境中對(duì)追溯數(shù)據(jù)進(jìn)行加蓋時(shí)間戳和加密保護(hù),加密后的追溯數(shù)據(jù)可以在服務(wù)器端通過公鑰進(jìn)行驗(yàn)證。通過原型系統(tǒng)試點(diǎn)測(cè)試以及分析可以看出,本文方法可以高效、安全地對(duì)食品追溯數(shù)據(jù)進(jìn)行加密,防止攻擊者對(duì)數(shù)據(jù)進(jìn)行篡改,并適合應(yīng)用在數(shù)據(jù)量大且硬件計(jì)算能力有限的嵌入式環(huán)境中,同時(shí)該方法可以與區(qū)塊鏈等新興技術(shù)相結(jié)合,實(shí)現(xiàn)食品生產(chǎn)全流程數(shù)據(jù)的可信追溯,未來可根據(jù)不同種類食品的生產(chǎn)業(yè)務(wù)邏輯,進(jìn)一步豐富食品的可信追溯種類。

      猜你喜歡
      加密算法密文非對(duì)稱
      一種針對(duì)格基后量子密碼的能量側(cè)信道分析框架
      一種支持動(dòng)態(tài)更新的可排名密文搜索方案
      基于模糊數(shù)學(xué)的通信網(wǎng)絡(luò)密文信息差錯(cuò)恢復(fù)
      非對(duì)稱Orlicz差體
      點(diǎn)數(shù)不超過20的旗傳遞非對(duì)稱2-設(shè)計(jì)
      基于小波變換和混沌映射的圖像加密算法
      非對(duì)稱負(fù)載下矩陣變換器改進(jìn)型PI重復(fù)控制
      云存儲(chǔ)中支持詞頻和用戶喜好的密文模糊檢索
      Hill加密算法的改進(jìn)
      對(duì)稱加密算法RC5的架構(gòu)設(shè)計(jì)與電路實(shí)現(xiàn)
      昌乐县| 兰坪| 台山市| 远安县| 余江县| 浦东新区| 武川县| 蓝田县| 西安市| 蚌埠市| 炎陵县| 怀柔区| 若尔盖县| 札达县| 平舆县| 周宁县| 凤城市| 蒙城县| 梅州市| 元谋县| 汝州市| 大城县| 兴文县| 珲春市| 米脂县| 竹溪县| 清苑县| 大石桥市| 安多县| 惠安县| 岳阳县| 西吉县| 绥棱县| 搜索| 凤城市| 大宁县| 拜泉县| 那曲县| 西乌| 盐城市| 百色市|