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個不重複字母的詞
例:
明文「hat」加密後的密文爲「ow pp ee」
6.多文字加密法的分析法
較容易,嘗試5個字母的全部可能排列便可
7.重要術語
①連字:文字中一對向臨近的字母
②頻率分析法:將明文字母的出現頻率和密文字母的頻率相比較的過程
③GCD:最大公約數,即,給定兩個數,GCD就是能整除這兩個數的最大數字
④單碼加密法:明文的每一個字母只能被密文的一個字母替代的加密法