1. 程式人生 > >密碼學複習

密碼學複習

為準備期末考試,現開始複習,重點分為四部分:古典密碼、分組密碼、序列密碼、公鑰密碼

複習內容:課後題、例題、平時作業、課件

複習思路:先濾清每個知識點、做一個總體概括

總體概括

古典密碼

知識點概括

分類

1、按祕鑰使用數量是單一祕鑰還是多個祕鑰分類

單表密碼:明文字母對應的密文字母在密文中保持不變

多表密碼:明文中不同位置的同一明文在密文中對應的密文不同

2、按明文空間和密文空間是否一致分類

(1)凱撒密碼

(2)Playfair密碼

構造祕鑰字母表:

從左到右,從上到下一次填入祕鑰字母,若有重複,去掉重複,I和J相同,若未填滿,將剩下的字母按字母順序依次填入

加密:

解密:

和加密相似,但右邊改左邊,上面改下面

(3)Vigenere密碼:

加密:

明文字母變數字

祕鑰字母變數字

明文數字和祕鑰數字相加後模26,換成字母,得到密文

解密:

密文字母變數字

祕鑰字母變數字

密文數字和祕鑰數字相減後模26,換成字母,得到明文

(4) 仿射密碼

加密:E(m) = am+b mod 26

解密:D(c) = a-1 ( c - b ) mod 26

統計分析

1、判斷是單表還是多表?——“重合指數法”

2、單表密碼體制用字母統計規律可以破譯

3、 若是多表密碼體制:

  (1)尋找相同字母段,求可能得金鑰長度

  (2)求解重合指數來確定祕鑰長度

  (3)求解互動重合指數確定祕鑰位移

  (4)求解方程確定祕鑰字

重點

1、置換時,求逆置換

2、參考:課後習題

分組密碼

分組密碼和序列密碼的區別:

1、分組密碼以一定大小作為每次處理的基本單元,而序列密碼是以一個元素作為基本處理單元

2、序列密碼使用一個根據時間變化的加密變換,分組密碼不按時間進行變換

知識點概括

重點

1、DES 參考:連結1   連結2  

2、AES 參考:連結1   連結2

3、SM4 參考:連結1 

公鑰密碼

RSA

困難問題:大整數難分解

1、祕鑰對生成

2、加密

3、解密

ElGamal

困難問題:離散對數難解

1、祕鑰產生

2、加密

3、解密

ECC

1、橢圓曲線點集的產生

2、判別平方剩餘

3、求解平方根

4、運算規則

5、選取引數

 

6、加密

7、解密

SM2

是一種ECC演算法,基於ECC的離散對數問題

1、初始化

2、加密

3、解密

考試內容

1、RC4

2、週期密碼

3、AES中手推位元組代換

4、ElGamal,證明解密加密