• evo真人(中国)

    文章橫幅PC版
    文章橫幅iPad版
    文章橫幅手機版

    簡述分組密碼的設計原則

    TIME:2019-03-06 15:49  click: 286 次 來源: 未知

    分組密碼設計就是找到一種算法,可在密鑰的控制下在一個夠大又好的置換子集中快捷地選取一個置換,用來加密變換當前輸入的明文。通常,分組密碼的設計原則有安全性與實現兩種原則。前者主要研究如何設計安全強度高的分組密碼算法,後者主要討論怎樣提升分組密碼算法的執行速度與實現效益。

    混亂原則:設計的密碼應該使明文、密文和密鑰依賴性非常複雜。

    擴散原則:為了防止逐段破譯密鑰和掩蓋明文數字的統計特性,設計的密碼密鑰應符合擴散原則。

    混沌可以很好地隱藏明文和密文之間的關係,並且可以顺利获得研究密文來攻擊取得明文冗餘和統計模式的想法。非線性變換可以給出更好的混沌,分組密碼設計中的非線性變換通常叫做S盒。擴散性可以有很多種理解,“雪崩性”是指改變明文的任意一個比特時,對應密文比特改變至少一半線性變換可给予較好的擴散,分組密碼設計中的線性變換通常稱為P置換。需注意的是,S盒除了给予混亂作用外,同時也有一定的擴散作用,同理,P置換除了给予擴散作用外,也具有一定的混亂作用。只不過在分組密碼設計時,認為S盒主要起混亂作用,而P置換起擴散作用。有意思的是,大多數分組密碼算法,這些密碼組件的作用也非常明確。但有些分組密碼算法,如Lai- Massey型的密碼通常混合用源於不同群中的運算,密碼組件的混沌效應和擴散效果難以區分。

    安全性原則除了混亂與擴散外,還需注意一點,是人們設計密碼應該抵抗所有已知的攻擊。

    根據不同的應用環境,分組密碼不僅可用軟件實現,還能用硬件實現。軟件實現的好處為靈活性強、代價低。硬件實現的好處是可得到很大的實現速率。因此,分組密碼的實現原則包括軟件和硬件兩方面。

    軟件實現的設計原則:密碼算法應盡力用字塊與簡單的運算,字塊的長度可符合軟件編程。如用8,16或32位的字進行模加運算、移位運算或異或運算等。

    密碼算法一般用標準處理器的基本指令,比如加法、乘法、移位和基本的邏輯運算。

    硬件實現的設計原則:為降低成本,減少硬件邏輯門的數量,通常把算法設計為加解密相似的,即同樣的器件不僅可用於加密,也能進行解密。

    一個簡單的輪函數可以很快實現,且一個合適選取的輪函數經多次疊代後可給出必要的混亂與擴散。现在已知的分組密碼算法大都用疊代分組密碼的方式。

    上一篇:側信道攻擊實現 下一篇:密碼體制的分類和特點