密码学基础知识(三)古典密码
說完了前面那些,想起個事,本系列依據內容主要來自《現代密碼學》馬春光編著。我就是學這本書的。
好了,古典密碼就是古時候的密碼,哈哈,逗你玩的,shannon的保密系統的通信理論發表前的都是古典密碼,會在密碼學簡史中介紹這位牛人的。
學習古典密碼學的意義:學習設計原理和分析方法
古典密碼也是,倆門派:置換和代換,顧名思義,一個是換了個原來有的,一個是換了個原來沒有的。學術點講就是前者明文和密文空間一樣,后者 不一樣。你要是問我啥是明文空間和密文空間啊,我就呵呵。是M 和 C。m明文的集合,c密文的集合。對了明文有時候用p表示哦,plaintext。
置換密碼就是列置換和周期置換兩兄弟,倒序那個算撿來的吧。
列置換:顧名思義,操作及輸出都是以列為單位。將明文以密鑰長度為列數形成矩陣,按照密鑰的順序進行列選出,然后一列一列的輸出。
列置換密碼(距陣置換密碼)
明文:ming chen jiu dian fa dong fan gong
密鑰:yu lan hua
去掉密鑰重復字母:yulanh,得出距陣列數為6;將明文按行填充距陣。
得到密鑰字母順序: 653142;
按列(依順序)寫出距陣中的字母。
密文:giffg hddn0 njngn cuaa0 inano meiog
解密:加密的逆過程;
周期置換:其實就是在列置換的基礎上,進行行輸出。
周期置換密碼
–??? 明文:mingchen jiu dian fa dong fan gong
–??? 加密密鑰:3421(i=1,2,3,4的一個置換f (i) =3,4,2,1)
–??? 加密:將明文分組(4個字母一組),然后根據規定順序變換
–?????????????????????? ming chen jiud ianf adon gfan gong
–?????????????????????? ngim enhc udij nfai onda anfg ngog
–??? 密文:ngimenhcudijnfaiondaanfgngog
–??? 解密密鑰:4312(3412的逆置換)
沒啥說的,直接來代換密碼:
也是兩個流派,單表替換和多表替換。
單表代換密碼:一個密文字母表。加法密碼(著名的凱撒密碼就是)乘法密碼和仿射密碼。
主要說下仿射密碼
f(mi)=ci=mj,j=k1i+k2 mod n ,i,ki,k2{0,1,...,n-1}
多表代換密碼:多個密文字母表。Vigenere密碼,Playfair密碼和hill密碼
主要說下Vigenere密碼
Vigenere密碼是周期代替密碼
當周期為1時,就是單表代替密碼(加法密碼)。
? 用戶鑰:有限序列k =(k1,k2,…,kd)
工作鑰:無限序列K=(K1,K2,…,Ki,…) ,是用戶鑰的
周期性(周期為d)擴展,即
Ki=ki mod d ,i =1,2,3,…
? 明文:M=m1m2…mi…ml
密文:C=c1c2…ci…cl
工作鑰:K=K1K2…Ki…Kl
加密:ci=mi+Kimodn,其中n為明文字母表的長度
例:用戶鑰為cat,對明文“vigenere cipher”加密
M: ? ? ? ? ?v??????????i???????????g?????????? e?????????? n?????????? e??????????r??????????e??????????c??????????? i?????????? p?????????? h??????????e??????????r
K:????????? c??????????a???????????t?????????? c?????????? a?????????? t???????????c??????????a??????????t??????????? c?????????? a?????????? t???????????c??????????aC: ? ? ? ? ?x? ? ? ? ? ??i???????????z?????????? g?????????? n?????????? x??????????t??????????e??????????v? ? ? ? ? ??k????????? p?????????? a??????????g??????????r
?此例n=26;c:2,a:0,t:19
代數密碼:vernam密碼
模2加運算,為什么提這個密碼呢,因為他有個特點,就是加密和解密變換相同,稱為對合運算。加密時是模2加,解密時也是與密鑰模2加。著名的DES也是對合運算。
古典密碼的統計分析:
單表代換密碼中明文的統計特性在密文中仍然體現,容易被破譯。加法和乘法知道一個密文對應的明文就完了,仿射強點,兩個。
統計字母出現頻率就是一種統計分析方法。依照正常字母頻率表逐個對照。
字母頻率分析法對單表代換算法最有效。原因如上
?hill密碼算法抵抗頻率分析攻擊能力最強,而對已知明文攻擊最弱。hill密碼是廣義仿射密碼,就是變換矩陣。
重合指數法對單表代換密碼算法的破解最有效。
| ? | 單表代換 | 多表代換 |
| 基本思想 | 明文消息中相同的字母,在加密時都是用同一固定的字母代換。 ? | 明文消息中出現的同一個字母,在加密時不是完全被同一個固定的字母代換而是根據其出現的位置次序用不同的字母代換。 |
| 優點 | 破譯難度稍高,密鑰更改便捷,增加了單表代換密碼體制的靈活性。 | 多表代換密碼的破譯則相對復雜,因為明文的統計特性通過多個表的平均作用而而被隱藏起來了,能更好的抵抗明文分析。 |
| 缺點 | 通過統計分析地方法很容易破解。 ? | Hill密碼體制,可能抵抗不了已知明文攻擊。 |
總結
以上是生活随笔為你收集整理的密码学基础知识(三)古典密码的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 密码学基础知识(二)密码体制
- 下一篇: 密码学基础知识(五)序列密码