第十七講 分組密碼的基本概念

2021-10-08 17:02:37 字數 1091 閱讀 3492

分組密碼是許多系統安全的乙個重要組成部分。可用於構造

分組密碼的設計問題在於找到一種演算法,能在金鑰控制下從乙個足夠大且足夠好的置換子集中,簡單而迅速地選出乙個置換,用來對當前輸入的明文的數字組進行加密變換。

1. 混淆原則(confusion)

混淆原則就是將密文、明文、金鑰三者之間的統計關係和代數關係變 得盡可能複雜,使得敵手即使獲得了密文和明文,也無法求出金鑰的任何 資訊;即使獲得了密文和明文的統計規律,也無法求出明文的新的資訊。

可進一步理解為:

(1)明文不能由已知的明文,密文及少許金鑰位元代數地或統計地表示出來。

(2)金鑰不能由已知的明文,密文及少許金鑰位元代數地或統計地表示出來。

2. 擴散原則(diffusion)

擴散原則就是應將明文的統計規律和結構規律散射到相當長的一段統計中去(shannon的原話)。

也就是說讓明文中的每一位影響密文中的盡可能多的位,或者說讓密文中的每一位都受到明文中的盡可能多位的影響。

如果當明文變化乙個位元時,密文有某些位元不可能發生變化,則這個明文就與那些密文無關,因而在攻擊這個明文比位元時就可不利用那些密文位元.

分組長度n要足夠大: 防止明文窮舉攻擊法奏效。

金鑰量要足夠大:盡可能消除弱金鑰並使所有金鑰同等地好,以防止金鑰窮舉攻擊奏效。

由金鑰確定置換的演算法要足夠複雜:充分實現明文與金鑰的擴散和混淆,沒有簡單的關係可循,要能抗擊各種已知的攻擊。

加密和解密運算簡單:易於軟體和硬體高速實現。

資料擴充套件:一般無資料擴充套件,在採用同態置換和隨機化加密技術時可引入資料擴充套件。

差錯傳播盡可能地小: 乙個密文分組的錯誤盡可能少的影響其他密文分組的解密

軟體實現的原則:

使用子塊和簡單的運算。如將分組n化分為子段,每段長為8、16或32。 在以軟體實現時,應選用簡單的運算,使作用於子段上的密碼運算易於以標準處理器的基本運算,如加、乘、移位等實現,避免用以軟體難於實現的逐位元置換。

硬體實現的原則: 加密解密可用同樣的器件來實現。

C語言入門(十七)之指標的基本概念

普通變數 資料型別 變數名稱 指標變數 資料型別 變數名稱 資料型別 說明將來指標變數能夠儲存什麼型別的變數的位址 注意 指標變數是什麼型別,那麼將來就只能儲存什麼型別變數的位址,例如 指標變數是int型別,那麼將來就只能儲存int型別變數的位址 沒有任何特殊含義,僅僅是為了標示這是乙個指標變數 變...

資料結構(三十七)查詢的基本概念

一 查詢的基本概念 1.查詢 searching 就是在由一組記錄組成的集合中尋找關鍵字值等於給定值的某個記錄,或是尋找屬性值符合特定條件的某些記錄。若表中存在這樣乙個記錄,則稱查詢是成功的,此時查詢的結果給出整個記錄的資訊,或指示該記錄在查詢表中的位置。若表中不存在關鍵字等於給定值的記錄,則稱查詢...

密碼學的起源與基本概念

一 一些古老的加密方法 1.隱寫術 將秘密的訊息隱藏在其他訊息中 最常見的是 墨水 傳送者用洋蔥或牛奶在紙上書寫秘密訊息,接收者在紙的背面稍稍加熱,看到密文。2.希臘的波利比阿的方格12 3451 abcd e2fg hijk3 lmno p4qr stu5 vwxy z明文ap ple密文 113...