新增回合金钥的正向转换称为.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第章高加密的起源只用在系新系改用第六章但的作效能低落了要取代在年徵求新的要求新的安全度要等同或而且也要大幅加效能是在年月完成整估且表最的最作演算法的建格最取代但程需要好年在可的未期仍是美政府公的演算法安全性的安全性以相同度的金及和其他送交的演算法相互比性重排入而演算法的出法辨的程度固性健全性演算法安全性的基其他安全因素在程公接受挑包括任何能明演算法的安全性不如提交者所宣成本授要求全世界都能非免利金的使用所指定的演算法算效率算效率的估果同用於硬和的作需求程也考以硬和作演算法所需要的需求的考量因素包

第5章 高階加密標準 Advanced Encryption Standard AES的起源 DES應只用在舊系統,新系統應改用3DES (第六章),但3DES的軟體實作效能低落 為了要取代DES/3DES,NIST在1997年徵求新的AES計畫書,並要求新標準的安全強度要等同或強過3DES,而且也要大幅加強效能 NIST是在2001年11月完成整個評估,並且發表最終的標準(FIPS PUB 197) NIST最終選擇Rijndael作為AES演算法的建議規格 AES最終會取代3DES,但這個過程需要好幾年。在可預見的未來,NIST預期3DES仍會是美國政府公認的演算法標準 評選AES 安全性 實際的安全性:以相同長度的金鑰及區塊,和其他送交的演算法相互比較 隨機性(randomness):隨機重排輸入區塊而讓演算法的輸出無法辨識的程度 強固性健全性(soundness):演算法安全性的數學基礎 其他安全因素:在評選過程公開接受挑戰,包括任何能證明演算法實際的安全性並不如提交者所宣稱 評選AES 成本 授權要求:讓全世界都能非獨佔、免權利金的使用AES所指定的演算法 計算效率:計算效率的評估結果將同時適用於硬體和軟體的實作 記憶體需求:評選過程也會考慮以硬體和軟體實作演算法所需要的記憶體 記憶體需求的考量因素包含硬體實作所需要的邏輯閘數量,以及軟體實作所需要的RAM 評選AES 演算法和實作特性 彈性:演算法越彈性,就越能符合更多人的需求,但有些極端的功能並不實用 硬體和軟體適用性:不應將演算法實作限制在硬體,如果可以有效的以韌體實作,就是演算法彈性的一大優點 簡易性:演算法應該以設計的簡易程度而評斷其優劣 AES加密法 - Rijndael 由比利時的 Rijmen-Daemen 所設計 金鑰長度 128/192/256 位元,區塊長度 128 位元 不採用菲仕托架構,而是在每回合以取代和重排來平行處理整個資料區塊 每回合的回合金鑰由4個不同的字組(一字組為4bytes,共128位元)組成 有4種不同的階段,其一是重排,其他則是取代 特性: 能抵抗所有已知的攻擊 能在各種平台上快速執行,且程式碼小巧緊湊 ?簡明易懂的設計 圖解AES的加密與解密過程 AES的資料結構 第一階段:位元組的替代 位元組的正向取代方式稱為SubBytes 位元組的反向取代稱為InvSubBytes 稱為S-boxes的16 × 16 位元組矩陣,包含了所有8 位元數值(256個) 每個位元組最左邊的4 個位元所形成的數值,會當成列編號,而最右邊的4 個位元所形成的數值,則當成行編號 例如16進位數值{95}參照到S-boxes第9列、第5行的值{2A} 因此{95}就對映到{2A} S-box 位元組的取代 第二階段:列的移位 列的正向移位稱為ShiftRows 第1列並未改變 第2列的每個元素向左循環位移1個位元組 第3列向左循環位移2個位元組 第4列向左循環位移3個位元組 列的反向移位稱為InvShiftRows 讓後三列以反方向循環位移 也就是第2列向右循環位移l個位元 完整移位之後,一行裡的4位元組會分散到不同的四行 第二階段:列的移位 第三階段:行的混合 行的正向混合稱為MixColumns,是在每一行個別運作 每行裡的每個位元組會對映到新的數值,而此數值是行內所有4個位元組的函數 乘積矩陣是以質數多項式 m(x) =x8+x4+x3+x+1 在GF(28)執行 行的混合 行的混合 行的反向混合稱為InvMixColumns,是以下列的矩陣乘法定義: 第四階段:新增回合金鑰 新增回合金鑰的正向轉換稱為AddRoundKey 狀態裡的128個位元會和回合金鑰的128個位元進行逐一位元的XOR運算 此運算能視為狀態裡某一行的4個位元組,和回合金鑰裡一個字元組的交互運算 也能視為位元組層級的運算 新增回合金鑰的反向轉換,與新增回合金鑰的正向轉換相同 因為XOR運算是其本身的反向運算 新增回合金鑰 AES的加密回合 AES的金鑰擴充 將128位元 (4字組) 金鑰擴充成 44/52/60 字組的陣列 金鑰擴充演算法的虛擬程式碼如下: AES的金鑰擴充 RotWord:左移旋轉1byte SubWord:使用S-box替代 Rcon:回合常數 Rcon[j] = (RC[j], 0, 0, 0) RC[1] = 1 RC[j] = 2?? RC[j??1] (乘法定義在GF(28)中,m(x)=x8+x4+x3+x+1) 若Round key of Round 8為: EA D2 73 21 B5 8D BA D2 31 2B F5 60 7F 8D 29 2F 請求出round 9 的KEY之前8個byte。 AES

文档评论(0)

zhaohuifei + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档