RC6
編輯RC6(Rivest Cipher 6)是 Ronald Rivest 等人于 1998 年設計的對稱分組密碼。 RC6 是 RC5 的進一步發展,使用數據相關的旋轉和數據乘法。 這應該可以防止從一開始就在開發時已知的針對 RC5 的理論攻擊。
描述
編輯RC6 具有可變塊大小、輪數 (0-255) 和密鑰長度(0-2040 位)。 這些參數的具體選擇通常表示為“RC6-w/r/b”——w 是數據字的比特長度,r 是輪數,b 是密鑰的長度。 一個塊總是由四個數據字組成,所以塊大小是 4 w {dISPlaystyle 4w} 位。 AES 候選者是 RC6-32/20,塊大小為 128 位,20 輪,密鑰長度為 128、192 和 256 位。
加密與解密
給定一個小端表示的明文塊,它由數據字 A、B、C、D 和輪密鑰 S0 到 S2r+3 組成。 這里 log ? w表示字長 w 以 2 為底的對數。
按鍵擴展
RC6 的擴展算法,計算輪密鑰 S0 到 S2r+3,從 RC5 中基本不變地采用。 首先,使用常量 P , Q {diSPlaystyle P,Q} 將輪密鑰 Sk 初始化為固定的初始狀態。 與 RC5 一樣,P 和 Q 是使用歐拉數 e 和黃金比例 Φ 生成的奇數,具體取決于所使用的塊大小(表)。
然后密鑰被分成長度為 w 的 c 個字 L 0 到 L c ? 1? ,如果有必要,最后一個字 L c ? 1 用零填充。
內容由匿名用戶提供,本內容不代表www.gelinmeiz.com立場,內容投訴舉報請聯系www.gelinmeiz.com客服。如若轉載,請注明出處:http://www.gelinmeiz.com/373689/