资源预览内容
第1页 / 共10页
第2页 / 共10页
第3页 / 共10页
第4页 / 共10页
第5页 / 共10页
第6页 / 共10页
第7页 / 共10页
第8页 / 共10页
第9页 / 共10页
第10页 / 共10页
亲,该文档总共10页全部预览完了,如果喜欢就下载吧!
资源描述
先進平安密碼模組分析報告曾享煥、劉燦雄、單懷靈、歐崇明、王鯨洋中華電信研究所應用科技研究室1. AES介紹及現況1.1 源由 最近美國國家技術標準局(NIST)已經在招攬繼DES演算法之後,有關於先進的加密標準 (AES) 的候選者。他們要求加密區塊的明文長度為128位元,可接受的密鑰長度為128位元、192位元和256位元(含以上)。判定的標準為平安性、效率與適應性三方面。NIST希望在這個世紀結束之前,能夠預備好一個新的加密標準。Advanced Encryption Standard (AES)-二十一世紀的一種加密演算法。在1998年8月20日第一次AES候選者的研討會中,NIST正式宣布十五個加密標準:CAST-256, CRYPTON, DEAL, DFC, E2, FROG, Hasty Pudding Cipher(HPC) , LOKI97, MARS, Magenta, RC6, RIJNDAEL, SAFER+, SERPENT, TWOFISH。 正式官方的評論:如有任何公開的意見可mail至 AESFirstRoundnist.gov ,經採納後於 99/4/15 公布結果,非正式網路線上的評論: 進入 AES 站內的公開討論版上刊載意見,99/3/22-23 NIST在義大利羅馬的奎爾諾飯店召開第二次AES候選者的研討會,根據第一回合的評論及結果選出最後的五個候選者。網站內容包括:(1) AES候選者演算法的介紹;(2) 網路上的資料包括演算法的提出者及作者、摘要、內容及規格、提案等相關文件;(3) 可下載的測試表包括由不同的金鑰長度做加(解)密等各種的中間值及測試值;(4) 註冊名稱;文件;作者的簽名、提出者的版權登記、專利書; 美國聯邦政府的註冊及評論、提案的正式評論、公開的分析及勘誤表。1.2 介紹 AES的需求:經由公開的程序對外徵求; 是對稱性的金鑰加密法; 秘密金鑰的長度是可變的; 可以同時由硬體及軟體來實作; 沒有專利的限制或必須符合ANSI的專利政策,可以自由的使用; AES的評選標準:平安性:必須通過現有的密碼攻擊法;效率:執行必須有效率;記憶體的需求;是否適合硬體及軟體來實作;演算法必須簡單易懂;可變性:金鑰長度必須是可變更的; 專利的問題;網站 中有談到 DEAL, FROG, LOKI97, MARS, Magenta 等五種具有攻擊法訊息更新於98/11/23。目前對各AES演算法的攻擊有以下五種備註1:名稱攻擊法類型參考DEALS. Lucks, On the Security of the 128-bit Block Cipher DEALFROG差分和線性攻擊法(Differential and linear attacks)D. Wagner, N. Ferguson, and B. Schneier, Cryptanalysis of Frog,LOKI97K=56 bits, C=56 bitsV. Rijmen, L.R. Knudsen, Weaknesses in LOKI97 K:56/./., C:56/./.備註2Magenta選擇明文攻擊法(Chosen plaintext attack)E. Biham, A. Biryukov, N. Ferguson, L. Knudsen, B. Schneier, A. Shamir, Cryptanalysis of MAGENTAMARS有weak keysM-J. Saarinen, Equivalent keys in MARS備註:1 參考網站 :/ ii.uib.no/larsr/aes.html.The Block Cipher Lounge AES:The AES Proposals資料更新於1998/9/24。2 K:a/b/c:表示最正确的明文攻擊法需要2a個明文/密文對,有2b個加密的工作量,並且需要。Has a workload of 2b encryptions and requires 2c words of memory.3 C:a/b/c:denotes that the best chosen plaintext attack requires 2a plaintext/ciphertexts,Has a workload of 2b encryptions and requires 2c words of memory.4 A . :表示資料的來源不是很重要或是我們不知道的。5 (r):表示攻擊法運算的回合數,如果是空白,則r = Rounds。6 SA:表示在文章內有描述攻擊法。7 ?:表示沒有的攻擊法。1.3 演算法結構表 由於AES是希望能夠在未來的二十年內能夠完全取代DES成為新的對稱式形加密演算法,因此對於明文大小、金鑰(key)長度、演算法的運算回合數、以及所使用的演算法技巧都被廣泛的加以討論,並針對不同的狀況提出實做的數據加以比較,或針對不同的模組提出有效的攻擊,期望能夠真正找到一個兼顧平安與效能的演算法。我們在下表提供15個入圍的AES候選演算法的相關資料,包括運算回合數、區塊資料大小、金鑰長度以及在每一個演算法所用到的特殊技巧。AES candidates的結構表AlgoRithmSerial numberData size (bits)Block(Sub data) size (bits)Key size (bits)Subkey size (bits)Number of subkeysMemory of subkeys (bytes)On-the-Fly keySpeed of different key lengths.Nonlinearly FunctionFeistel NetworkWhiteningNumber of RoundsMin. Secure RoundsRIJNDAEL12128,192,2568128,192,25632Nb(Nr+1)160(Nb=4,Nr=4)Two-wayIncreasingS-BoxNoYesTable28RC611128320255 bytes3244176Not availableConstantDR,IRYesYes2020TWOFISH1512832128,192,25632(words)40160Two-wayIncreasingS-BoxYesYes1612MARS101283212812483240160Not availableConstantDR,IR,S-BoxYesYes8,8,8,810SERPENT141283225612833528ForwardConstantDR, S-BoxNoNo3217E2512864128,192,2561616256Not availableConstantS-BoxYesYes1210CAST-2561128(24 blocks, 64bits/block)32128256Rotate key:5Mask key:321255.5ForwardConstantDR,S-BoxYesNo32 (Opts:48)10SAFER+131288128,192,2562 bytes2r+1272(r=8)Two-wayIncreasingFunction TableNoYes128:8192:12256:167DFC41286402561288128ForwardConstantS-BoxYesNoKey:4Crypt 89CRYPTON2128324025632452208Two-wayConstantS-BoxNoYes1211DEAL3128322128,192,25664(DES key)128/192:6256:848ForwardIncreasingS-BoxYesYes128/192:6256:86HPC7隨意35,3564, 65128,129512,513隨意256(words)128010240Not availableConstantRotateYesNo88MAGENTA9128Increasing10FROG6128(641024)128(641024)40100028882304Not availableConstantS-BoxNoNo88LOKI97812864128,192,2566448384ForwardDecreasingS-BoxYesNo16361 Data size:表示此一Block cipher可以一次看待資料的的長度,也就是加密資料一次的單位長度,以位元(bits)為單位。2 Block size:表示在內部加密時,以多大的資料段來處理,可以視其為以此大小為導向的cipher,如:Block size=8: Byte-oriented、Block size=32:Word-oriented、Block size=64: Double word-oriented。3 Key size:為秘密鑰匙(Secret key)的長度,以位元(bits)為單位。對單一加密演算法而言,長度越長表示越平安,但相對地也要付出更多的加解密時間。4 Subkey:由秘密鑰匙所算出,在每一個round中真正參予與資料運算的子密鑰,除於後標出長度單位者,其餘皆以位元(bits) 為單位。5 Number of subkeys:全部所需的子密鑰的數量。6 Memory of subkeys (bytes):所有子密鑰所佔用的記憶體,當子密鑰越多、越長就越佔記憶體,假设應用在chip、smart card時,會提高本钱與設計製造的難度。7 On-the-Fly key:所有的子密鑰可以到了加解密時才造出,及每一個Round加解密所需的子密鑰都是到了當時才即時產生出來,如此可以節省已用過/尚未用的子密鑰;又可以分為單向產生(Forward)或雙向/隨意產生(Two-way)。8 Speed of different key lengths:不同鑰匙長度時,加密所需
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号