一種新的安全加密標準算法-Camellia算法

    時間:2024-07-24 03:25:54 理工畢業論文 我要投稿
    • 相關推薦

    一種新的實用安全加密標準算法-Camellia算法

    摘要:介紹了NESSIE標準中的分組密碼算法——Camellia算法的加、解密過程,并對其在各種軟、硬件平臺上的性能進行了比較,結果表明Camellia算法在各種平臺上均有著較高的效率。Camellia算法與其它技術相結合將在信息安全領域產生更廣泛的應用。

    繼2000年10月美國推出二十一世紀高級數據加密標準AES后,2003年2月歐洲最新一代的安全標準NESSIE(New European Schemes for Signatures、Integrity and Encryption)出臺。NESSIE是歐洲IST(Information Society Technologies)委員會計劃的一個項目。Camellia算法以其在各種軟件和硬件平臺上的高效率這一顯著特點成為NESSIE標準中兩個128比特分組密碼算法之一(另一個為美國的AES算法)。

    Camellia算法由NTT和Mitsubishi Electric Corporation聯合開發。作為歐洲新一代的加密標準,它具有較強的安全性,能夠抵抗差分和線性密碼分析等已知的攻擊。與AES算法相比,Camellia算法在各種軟硬件平臺上表現出與之相當的加密速度。除了在各種軟件和硬件平臺上的高效性這一顯著特點,它的另外一個特點是針對小規模硬件平臺的設計。整個算法的硬件執行過程包括加密、解密和密鑰擴展三部分,只需占用8.12K 0.18μm COMS工藝ASIC的庫門邏輯。這在現有128比特分組密碼中是最小的。

    1 Camellia算法的組成

    Camellia算法支持128比特的分組長度,128、192和256比特的密鑰與AES的接口相同。本文以128比特密鑰為例對Camellia算法進行詳細介紹。

    Camellia算法128比特密鑰的加、解密過程共有18輪,采用Feistel結構,加、解密過程完全相同,只是子密鑰注入順序相反。而且密鑰擴展過程和加、解密過程使用相同的部件。這使得Camellia算法不論是在軟件平臺還是硬件平臺只需更小的規模和更小的存儲即可。

    (1)Camellia算法所采用的符號列表及其含義

    B 8比特向量 W 32比特向量

    L 64比特向量 Q 128比特向量

    x?n? 比特向量

    xL 向量x的左半部分 xR 向量x的右半部分

    <<< 比特循環左移 || 兩個操作數的連接

    ? 比特的異或操作 x 比特位取補操作

    ∪ 比特位的或操作 ∩ 比特位的與操作

    (2)Camellia算法所采用的變量列表及其含義

    M?128? 128比特明文組 C?128? 128比特密文組

    K 主密鑰 kwt?64?? ku?64?? klv?64?

    子密鑰

    (3)Camellia算法所采用的變換函數

    ·F變換

    F變換(見式(1))是Camellia算法中最主要的部件之一,而且F變換被加、解密過程和密鑰擴展過程所共用(128比特密鑰的加、解密各用18次,密鑰擴展用4次)。Camellia算法的F變換在設計時采用1輪的SPN(Substitution Permutation Network),包括一個P變換(線性)和一個S變換(非線性)。在Feistel型密碼使用一輪SPN作輪函數時,對更高階的差分和線性特性概率的理論評估變得更加復雜,在相同安全水平下的運行速度有所提高。

    ·P變換

    Camellia算法的P變換(見式(2))是一個線性變換。為了通信中軟、硬件實現的高效性,它適合采用異或運算,并且其安全性能足以抵抗差分和線性密碼分析。其在32位處理器、高端智能卡上的應用,跟在8位處理器上一樣。

    ·S變換

    Camellia算法采用的S盒(見式(3))是一個GF(28)上的可逆變換,它加強了算法的安全性并且適用于小硬件設計。眾所周知,GF(28)上函數的最大差分概率的最小值被證明為2-6,最大線性概率的最小值推測為2-6。Camellia算法選擇GF(28)上能夠獲得最好的差分和線性概率的可逆函數作S盒,而且S盒每個輸出比特具有高階布爾多項式,使得對Camellia進行高階差分攻擊是困難的。S盒在GF(28)上輸入、輸出相關函數上的復雜表達式,使得插入攻擊對Camellia無效。

    S:L→L

    (l'1(8),l'1(8),l'1(8),l'1(8),l'1(8),l'1(8),l'1(8),l'1(8)→

    *s1(l'1(8)),s2(l'2(8)),s3(l'3(8)),s4('4(8)),s2(l'5(8)),s3(l'6(8)),

    s4(l'7(8),s1(l'8(l8(8)))

    其中, s2:y(8)=s1(x(8))=h(g(f(0xC5 x(8)))) 0x6E

    s2:Y(8)=s2(x(8))=s1(x(8))<<<1 (3)?

    s3:y(8)=s3(x(8))=s1(x(8))>>>1

    s4:y(8)=s4(x(8))=s1(x(8))<<<1?

    算法中構造了四個不同的S盒,提高了Camellia算法抵抗階段差分攻擊的安全性。為了在小硬件上設計實現,GF(28)上的元素可以表示成系數為GF(24)上的多項式。這樣,在實現S盒時,只需運用子域GF(24)上很少的操作。s1變換中所采用的f、h、g函數分別如(4)、(5)、(6)式所示。

    【一種新的安全加密標準算法-Camellia算法】相關文章:

    高級加密標準Rijndael算法的分析及實現11-23

    非對稱加密算法03-07

    一種基于加權空間平滑的新MUSIC算法03-07

    一種基于KEELOQ的改進加密算法及其在單片機中的實現技術03-18

    一種基于比特表的實時多任務新調度算法03-18

    利用匯編語言實現DES加密算法03-20

    小議基于橢圓曲線密碼體制的遙感圖像加密算法03-03

    一種改進的粒子濾波算法的研究03-07

    一種新的TD-SCDMA上行同步快速算法03-07

    91久久大香伊蕉在人线_国产综合色产在线观看_欧美亚洲人成网站在线观看_亚洲第一无码精品立川理惠

      久久午夜福利视频 | 日本最新二区三区免费不卡区 | 日本欧美亚洲另类 | 亚洲乱亚洲乱少妇 | 制服肉丝袜亚洲中文字幕 | 亚洲有码在线观看 |