版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
為防止一些敏感信息被人偷窺,信息加密是一種較好的應(yīng)對(duì)措施。但有些情形并不需要對(duì)大量明文進(jìn)行加密,比如有一些表格,每張表格上只有手機(jī)號(hào)、身份證號(hào)和電子郵箱地址等內(nèi)容是較為敏感的信息,其他內(nèi)容無須加密。為了讓密文可方便地書寫在表格內(nèi),自然希望加密后的密文能夠保持明文的數(shù)據(jù)類型和長(zhǎng)度。這就使得一些保留格式加密(FormatPreserving
Encryption,F(xiàn)PE)算法
應(yīng)運(yùn)而生。此外,近幾年輕量級(jí)密碼學(xué)研究開始活躍,因?yàn)檩p量級(jí)算法具有功率消耗少、內(nèi)存占用少等特點(diǎn),易被用于嵌入式系統(tǒng)中。有些輕量級(jí)分組密碼算法的分組長(zhǎng)度只有32比特,當(dāng)數(shù)據(jù)量較大時(shí),數(shù)據(jù)中容易存在密文組重復(fù)。例如,當(dāng)每一個(gè)密文組的出現(xiàn)概率均為1/232時(shí),按照生日攻擊模型,只要有77164個(gè)密文組,在這些密文組中兩兩比對(duì),存在密文組重復(fù)的概率理論上可以大于0.5。實(shí)際應(yīng)用中,將長(zhǎng)段明文按32比特分組后,各個(gè)明文組的出現(xiàn)機(jī)會(huì)一般是不均勻的,如果使用電子密本(Electronic
CodeBook,ECB)模式會(huì)導(dǎo)致各個(gè)密文組的出現(xiàn)概率也不均勻,更容易存在密文組重復(fù)。分組較小的分組密碼算法和保留格式加密算法可能需要面對(duì)明文組(密文組)空間較小引發(fā)的安全隱患。例如,用ECB模式加密長(zhǎng)段報(bào)文后,由于分組小,也許在密文中可以找到相同的密文組,由此可推測(cè)明文段中相距某長(zhǎng)度有重復(fù)明文,這有助于驗(yàn)證或猜測(cè)某長(zhǎng)段明文是否由某段密文譯出,或者猜測(cè)某段密文的底碼會(huì)不會(huì)是文字、數(shù)字流、某類圖片或文檔等,進(jìn)而攻擊者能夠以一定的概率獲得部分明文組與密文組的對(duì)應(yīng)。同樣,如果攻擊者對(duì)A行密文猜設(shè)了明文,當(dāng)無法為B行密文猜設(shè)明文時(shí),若發(fā)現(xiàn)B行與A行有一個(gè)相同密文組,則有可能以已知B行一個(gè)明文組為線索,綜合場(chǎng)景信息和上下文關(guān)聯(lián),而合理地猜出B行其他密文組的明文。為了規(guī)避因明文組空間較小引發(fā)的這類安全問題,或者彌補(bǔ)分組密碼安全方面的設(shè)計(jì)缺陷,本文提出一種能增強(qiáng)算法安全性的工作模式——分組密碼隱秘密文分組鏈接模式。1隱秘密文分組鏈接模式密文分組鏈接(CipherBlockChaining,CBC)是當(dāng)今廣泛應(yīng)用的分組密碼工作模式,也是最受歡迎的分組密碼工作模式之一。對(duì)于一些較小分組的分組密碼算法或保留格式加密算法,理論上也可以使用CBC模式。不過,若出現(xiàn)了密文組碰撞,有可能會(huì)暴露明文格式特征,甚至導(dǎo)致分明文泄露。因此,當(dāng)明密文空間較小時(shí),尤其選用了保留格式加密算法時(shí),使用CBC或者ECB工作模式可能存在安全缺陷。為了防止攻擊者獲得明密對(duì),沿用CBC模式的設(shè)計(jì)理念和指導(dǎo)思想,設(shè)計(jì)了一種類似于CBC的專用工作模式,因前一個(gè)密文組以被加密形式參與其中,故稱其為分組密碼隱秘密文分組鏈接模式。在介紹具體方法之前,先定義3個(gè)術(shù)語(yǔ)。(1)字符模加:分組密碼的明文組一般由若干個(gè)字符構(gòu)成,例如AES算法的明文組由16個(gè)ASCII字符構(gòu)成。保留格式加密算法的明文可以是若干個(gè)十進(jìn)制符、十六進(jìn)制符或小寫英文字母等。依據(jù)字符集合大小的不同,字符模加的模數(shù)是不一樣的,例如ASCII字符的字符相加是模256加,十進(jìn)制符的字符相加是模10加,小寫英文字母的字符相加是模26加等。下文將這種字符集合有多大就模多少的加法稱為字符模加,用運(yùn)算符表示。例如,明文為十進(jìn)制符,模數(shù)為(無進(jìn)位)。(2)字符模減:字符模加的逆運(yùn)算被稱為字符模減,用表示。例如,模數(shù)為10,(無借位)。(3)隱秘種子:用當(dāng)前密鑰將加解密雙方約定的某特定數(shù)據(jù)組(系統(tǒng)參數(shù))加密,產(chǎn)生的加密結(jié)果記作隱秘種子。它將頻繁地作用于每一個(gè)數(shù)據(jù)組的加密或解密。1.1隱秘密文分組鏈接模式加密方法設(shè)明文字符集大小為m,分組長(zhǎng)度為N個(gè)字符。用Enc(P,K)表示使用密鑰K,將明文組P以ECB模式加密。對(duì)整個(gè)明文段的加密可以有初始向量,也可以不用初始向量。如圖1所示,隱秘密文分組鏈接模式加密方法如下:(1)將明文數(shù)據(jù)按分組長(zhǎng)度分成若干個(gè)組,記作(2)商定參數(shù)f并計(jì)算隱秘種子R,即R=Enc(
f,K),可默認(rèn)
f=1。(3)加密第一個(gè)明文組時(shí),由于未產(chǎn)生過密文組,默認(rèn)前一個(gè)密文組為IV,如果不使用IV,則默認(rèn)前一個(gè)密文組為“0”。先對(duì)加密,即得到中間變量或者明文組與V按位字符模加,得然后將P加密得到第一組密文,即(4)對(duì)于第i個(gè)明文組先計(jì)算中間變量再計(jì)算圖1隱秘密文分組鏈接模式加密注1:圖中表示按位字符模加,“分組加密”是指調(diào)用分組算法的ECB模式。其中的參數(shù)f為加解密雙方事先協(xié)商為某固定常數(shù)(可以默認(rèn)f=1),或者選定某個(gè)類似于Hash算法的函數(shù),雙方以密鑰為輸入?yún)?shù)由函數(shù)算出f值。該f值不是IV,約定了f值還可以照常使用IV。該f值既可以是公開常數(shù),也可以是密鑰的一部分。注2:為什么方案中采用字符模加,而不采用異或呢?這是因?yàn)楸竟ぷ髂J揭槕?yīng)保留格式加密。當(dāng)保留格式加密的字符集大小為10或26等非2的方冪數(shù)值時(shí),不方便做異或運(yùn)算。1.2隱秘密文分組鏈接模式解密過程該工作模式的解密方法與加密方法相似,需要由相同的
f
參數(shù)計(jì)算出相同的隱秘種子
R。解密情形的步驟(1)至步驟(3)與上節(jié)的加密情形相同。步驟(4)相應(yīng)地變?yōu)檫@里表示字符模減,是字符模加的逆運(yùn)算),如圖2所示。圖2隱秘密文分組鏈接模式解密上述圖1和圖2均為明文段長(zhǎng)度恰好是分組長(zhǎng)度的整倍數(shù)情形。當(dāng)明文段長(zhǎng)度不是分組長(zhǎng)度的整倍數(shù)時(shí),會(huì)出現(xiàn)末尾組是一個(gè)不滿組。常見的不滿組加密處理方法包括協(xié)議填充和密文偷壘等多種方法。本工作模式采用弱處理法,即省去末尾組的分組迭代。也就是說,設(shè)分組長(zhǎng)度為N個(gè)字符,末尾明文組的字符個(gè)數(shù)為m,若對(duì)第組密文做加密運(yùn)算,即計(jì)算中間變量取V的左邊(高權(quán)位)m個(gè)字符與做字符模加,產(chǎn)生不滿密文組,即(這里MSC為MostSignificantCharacter的縮寫)。解密時(shí)依據(jù)末尾密文組是否滿組,并選擇合適的解密方式。1.3隱秘密文分組鏈接加密認(rèn)證模式與分組密碼工作模式CBCMAC、XCBC、OCB
等類似,隱秘密文分組鏈接模式也可以用于產(chǎn)生具有完整性校驗(yàn)用途的MAC碼,將上述模式改造成隱秘密文分組鏈接加密認(rèn)證模式,如圖3所示。設(shè)分組長(zhǎng)度為N個(gè)字符,加密方法如下文所述。(1)將明文數(shù)據(jù)按分組長(zhǎng)度分成若干個(gè)組,記作(2)清空一批單元用于存放明文累加和,即令數(shù)據(jù)組
M=0。(3)商定參數(shù)f并計(jì)算隱秘種子R,即R=Enc(
f,K),可默認(rèn)
f=1。(4)約定密文組若是滿組,則對(duì)計(jì)算:圖3隱秘密文分組鏈接加密認(rèn)證模式①將明文組以字符模加形式累加到M中,即②計(jì)算若
不是滿組,設(shè)
只有m個(gè)字符,m<N,則對(duì)計(jì)算:①將明文組Pi以字符模加形式累加到M中,即②計(jì)算對(duì)于第n組,可以形式化地在右邊(低位)補(bǔ)N-m個(gè)“0”,并將補(bǔ)“0”后的以字符模加形式累加到M中,即不滿組密文為(5)將數(shù)據(jù)組M(明文累加和)加密。若是滿組,則計(jì)算Cn+1=Enc(Enc(Cn◎R,K)◎M,K)。若
不是滿組,只有m個(gè)字符,則通過在右邊(低位)補(bǔ)N-m個(gè)“0”,然后計(jì)算除此之外,也可根據(jù)約定的認(rèn)證標(biāo)簽長(zhǎng)度,只輸出的左邊若干個(gè)字符。比如使用AES或者SM4算法時(shí),收發(fā)雙方可約定只輸出第n+1組16個(gè)字節(jié)中的左邊8字節(jié)、10字節(jié)或者12字節(jié)等作為認(rèn)證標(biāo)簽。解密方在解密過程中也要計(jì)算明文累加和M,解密完n組明文后將數(shù)據(jù)組M加密,將加密結(jié)果與認(rèn)證標(biāo)簽(第n+1密文組)進(jìn)行比對(duì),檢驗(yàn)密文是否被篡改。如果輸出整個(gè)第n+1密文組作為認(rèn)證標(biāo)簽,則解密方也可以在解密認(rèn)證標(biāo)簽后,比對(duì)明文累加和與解密出來的累加和是否相同。依據(jù)約定的認(rèn)證標(biāo)簽長(zhǎng)度和接收到的密文長(zhǎng)度,解密之前需要注意密文倒數(shù)第二組是否為不滿組。由此可見,這種簡(jiǎn)單的不滿組處理方法可能不適用于接收方在線同步解譯的場(chǎng)景中。2隱秘密文分組鏈接模式性能分析本文給出的隱秘密文分組鏈接模式與傳統(tǒng)的分組密碼CBC模式有些相似。盡管CBC模式被許多人公認(rèn)為“完美的分組密碼算法工作模式”,但它還是有一個(gè)小小的缺陷。例如,在不變更密鑰的情況下,若密文中出現(xiàn)了相同的密文組,不妨將第一份密文的第i-1個(gè)和第i個(gè)密文組分別記作和設(shè)對(duì)應(yīng)的明文組是第二份密文的第k-1個(gè)和第k個(gè)密文組分別記作設(shè)對(duì)應(yīng)的明文組是那么,若出現(xiàn)了數(shù)據(jù)組相同,則攻擊者可以知其中符號(hào)“⊕”表示兩個(gè)數(shù)據(jù)組做異或。探知了兩明文組間的距差,可能會(huì)有助于攻擊者猜出明文組以及進(jìn)行更為深入的密碼分析和攻擊行為。如果將隱秘種子R看作初始向量,隱秘密文分組鏈接模式可以描述為以R為初始向量將前一個(gè)密文組作類CBC模式加密,得到一組更加難以預(yù)測(cè)的實(shí)用初始向量或稱亂數(shù)(因?yàn)镽原本已經(jīng)難以預(yù)測(cè)),又基于這個(gè)秘密的難以預(yù)測(cè)的實(shí)用初始向量,用類CBC模式將明文組加密為密文組。這里所述的類CBC模式與CBC模式略有不同,CBC模式是前一組密文(或IV)與明文組異或后做分組迭代,而類CBC模式是一組碼符與明文組字符模加后做分組迭代。設(shè)想Eve偷偷地復(fù)制了Alice發(fā)給Bob的一段密文,試圖破解Alice與Bob之間的共享密鑰。正當(dāng)Eve冥思苦想地猜測(cè)報(bào)文內(nèi)容的時(shí)候,Bob公開了全部明文,Eve欣喜若狂,因?yàn)檫@恰好是他想要的明文??墒?,Eve的笑容很快就會(huì)消失,因?yàn)槊魑亩闻c密文段對(duì)準(zhǔn)后,明文組與密文組之間沒有“確定的”對(duì)應(yīng)關(guān)系,也不能用通常的相關(guān)分析方法求取密鑰。隱秘密文分組鏈接模式的分組加密過程也可以描述為“產(chǎn)生亂數(shù)并對(duì)明文組做自同步序列加密,然后對(duì)已加密的數(shù)據(jù)組又做了一次ECB模式分組加密”。破譯復(fù)合加密體制的方法通常是分割分析,各個(gè)擊破。Eve將明文段與密文段對(duì)準(zhǔn)后,如果他想攻擊序列密碼,需要擁有一段亂數(shù)序列,通過研究序列特征取得進(jìn)展??墒?,在實(shí)際中獲取不到亂數(shù)。如果Eve想攻擊分組密碼,需要有若干個(gè)明密對(duì),通過研究分組迭代變換輸入與輸出之間的相關(guān)特性或函數(shù)關(guān)系求取密鑰??墒?,取不到明密對(duì),因?yàn)闆]有辦法去除加在明文上的擾碼。結(jié)論:對(duì)這樣的分組序列混合加密體制不能有效地實(shí)施各個(gè)擊破攻擊。對(duì)于分組密碼的輸出反饋(OutputFeedback
Mode,OFB)和計(jì)數(shù)器CTR等工作模式,IV重用會(huì)導(dǎo)致信息泄露。而隱秘密文分組鏈接模式的IV重用不會(huì)對(duì)安全性產(chǎn)生影響,最壞情形的安全性仍優(yōu)于ECB模式。之所以說隱秘密文分組鏈接模式可以增強(qiáng)分組算法的安全強(qiáng)度,是因?yàn)樗拗屏斯粽哂行У孬@取和形成數(shù)據(jù)條件。數(shù)據(jù)條件是密碼分析及密碼破譯的基本素材,也是攻擊成功的必備基礎(chǔ)。沒有適度的數(shù)據(jù)條件,就不能實(shí)施有效的攻擊。隱秘密文分組鏈接模式能夠彌補(bǔ)分組密碼算法在安全性上存在的不足或缺陷。例如,用戶使用了一種有缺陷的分組密碼算法,比如使用只迭代8輪的DES算法,其中的8個(gè)48比特的輪密鑰是由128比特密鑰派生的(因56比特時(shí)存在密鑰窮盡攻擊,故密鑰加長(zhǎng)到128比特)。因存在可供利用的高概率差分路徑,只要幾萬個(gè)已知明密對(duì)就可用差分攻擊方法求取密鑰??墒?,如果用戶不使用ECB或CBC模式,而是用了本文的隱秘密文分組鏈接模式,攻擊者就不能做差分攻擊。每個(gè)密文組會(huì)與明文組、前一個(gè)密文組和隱秘因子三者相關(guān)。如果將不可見的隱秘因子看作長(zhǎng)期不變的秘密常數(shù)或者密鑰的一部分,那么一個(gè)64比特密文組由明文組和前一個(gè)密文組共同確定。如果研究輸出比特與輸入比特間的相關(guān)關(guān)系,需要尋找一比特密文與128比特輸入狀態(tài)之間的相關(guān)性。因?yàn)榍耙粋€(gè)密文組與隱秘因子模加后被8輪DES加密,所以,相關(guān)程度與16輪DES相近,但相關(guān)關(guān)系利用會(huì)更加困難。如果報(bào)文充分長(zhǎng),在密文中按前一個(gè)密文組狀態(tài)歸類,在同一類內(nèi)密文組完全由明文組確定,若某一類內(nèi)能夠存在上萬個(gè)已知明文,則可用該類數(shù)據(jù)實(shí)施基于8輪DES的差分攻擊。這樣優(yōu)厚的數(shù)據(jù)條件與實(shí)際應(yīng)用相差太遠(yuǎn)。由此可見,如果選對(duì)了工作模式,有缺陷的密碼算法是可以使用的。在信道上傳輸密文時(shí),如果因干擾而發(fā)生了一比特誤碼,那么會(huì)導(dǎo)致當(dāng)前密文組譯出錯(cuò)誤明文組,且影響下一個(gè)密文組的正確解密。這與CBC模式的錯(cuò)誤擴(kuò)散率等同,即密文中的一比特錯(cuò)誤通常會(huì)導(dǎo)致兩個(gè)明文組解譯出錯(cuò)。由于隱秘密文分組鏈接模式分組加密約等于進(jìn)行了兩次普通分組加密迭代,因此,它的加解密效率大約相當(dāng)于通常CBC模式的1/2。對(duì)于許多實(shí)際應(yīng)用情形,不會(huì)帶來較大影響。在分組密碼算法和算法工作模式設(shè)計(jì)方面,算法安全與加解密效率通常是相互制約的兩個(gè)方面。對(duì)于分組長(zhǎng)度較短的分組密碼算法和保留格式加密算法,可能需要彌補(bǔ)算法設(shè)計(jì)和使用上潛在的不足,當(dāng)需要面對(duì)的安全問題比效率問題更為突出時(shí),有必要采用隱秘密文分組鏈接工作模式。3結(jié)語(yǔ)自20世紀(jì)80年代以來,人們的密碼學(xué)認(rèn)知水平有了長(zhǎng)足進(jìn)步。隨著國(guó)際上有關(guān)分組密碼和序列密
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 手機(jī)活動(dòng)協(xié)議書
- 生殖美療合同協(xié)議
- 苗子采購(gòu)協(xié)議書
- 苗木賠償合同范本
- 融資兌付協(xié)議書
- 解除派遣勞務(wù)協(xié)議書
- 設(shè)施捐贈(zèng)協(xié)議書
- 訴中調(diào)解協(xié)議書
- 試駕免責(zé)協(xié)議書
- 山木買賣合同協(xié)議
- 表面摩擦磨損機(jī)理-深度研究
- 2022年9月國(guó)家開放大學(xué)??啤陡叩葦?shù)學(xué)基礎(chǔ)》期末紙質(zhì)考試試題及答案
- 2023-2024學(xué)年廣東省廣州市荔灣區(qū)九年級(jí)(上)期末數(shù)學(xué)試卷(含答案)
- JJF(陜) 042-2020 沖擊試樣缺口投影儀校準(zhǔn)規(guī)范
- T-CFA 030501-2020 鑄造企業(yè)生產(chǎn)能力核算方法
- JBT 8127-2011 內(nèi)燃機(jī) 燃油加熱器
- MOOC 西方園林歷史與藝術(shù)-北京林業(yè)大學(xué) 中國(guó)大學(xué)慕課答案
- 混凝土緩凝劑-標(biāo)準(zhǔn)
- 年生產(chǎn)一億粒阿莫西林膠囊(0.25)
- 危重患者的早期識(shí)別
- 環(huán)泊酚注射液-臨床用藥解讀
評(píng)論
0/150
提交評(píng)論