密碼學2

1.關鍵詞加密法ide

①選擇一個關鍵詞,若該關鍵詞有重複的字母則除去。加密

例:success→sucespa

②將關鍵詞填在字母表的下方,其餘字母的空間順序不變blog

例:對關鍵詞「magicnet」圖片

a b c d e f g h i j k l m n o p q r s t u v w x y zget

m a g i c n e t b d f h j k l o p q r s u v w x y zit


明文:h e l p  i   a m  l o s t
io

密文:t c h o  b  m j   h l r sclass


改進:關鍵字從字母表的任意位置開始bfc


2.關鍵詞加密法的分析法

語言的每一個字母都有其自身的特性

②雙聯字母:「er」「he」「th」


3.仿射加密法

①字母表的字母被賦予一個數字,例a=0,b=1…z=25

②祕鑰爲0~25之間的數字對(a,b),必須知足GCD(a,26)=1,即a=3,5,7,9,11,13,15,17,19,21,23,25

③假設p爲明文字母的數字,c爲密文字母的數字,知足等式:

c=(ap+b)(mod 26)

p=a^-1(c-b)(mod 26)

(mod 26)操做是:除以26,得其他數


例:選取祕鑰爲(7,3),加密"hot"

c(H)=(7*7+3)mod 26=52 mod 26=0,即爲字母'a'

c(O)=(7*14+3)mod 26=101 mod 26=23,即爲字母'x'

c(T)=(7*19+3)mod 26=136 mod 26=6,即爲字母'g'

對於這個祕鑰,"hot"變爲"axg"


4.仿射加密法的分析法

①利用頻率分析,肯定至少兩個字母的替換

例:肯定了明文'e'是由'c'表示,明文't'是由'f'表示

創建仿射加密方程式:

2=a*4+b mod 26 [由於(e-字符4)被(c-字符2)取代]

5=a*19+b mod 26 [由於(t-字符19)被(f-字符5)取代]

看上去功能更強大的加密法每每到頭來證實是更脆弱的


5.多文字加密法

①祕鑰是一個5*5的矩陣

矩陣只有25個位置,字母表有26個字母,所以'i'和'j'佔一個單元,全部'j'變成了'i'

②關鍵詞必須是有且僅有5個不重複字母的詞

例:

wKioL1aox_OwYxJfAAAWjLywSaY109.png

明文「hat」加密後的密文爲「ow pp ee」


6.多文字加密法的分析法

較容易,嘗試5個字母的全部可能排列便可


7.重要術語

①連字:文字中一對向臨近的字母

②頻率分析法:將明文字母的出現頻率和密文字母的頻率相比較的過程

③GCD:最大公約數,即,給定兩個數,GCD就是能整除這兩個數的最大數字

④單碼加密法:明文的每一個字母只能被密文的一個字母替代的加密法

相關文章
相關標籤/搜索