導航:首頁 > 編程大全 > 語言密碼學

語言密碼學

發布時間:2024-03-08 22:42:55

密碼學基礎一

一、 愷撒密碼

1.簡單介紹

凱撒密碼是古時候歐洲常用的一種加密方式:英文一共26個字母,它的加密方式是將這26個字母分別平移固定的位數,

假設位數=3,那麼A=>D,B=>E,如下圖:

如果想加密一個單詞HELLO,根據上面的唯一對比,加密後的結果應該是LHOOR。顛倒字母後的順序,使得常人無法讀懂這些語句或者單詞。如何解密呢,也很簡單,只需要將收到的單詞向前平移3個位置,就可以恢復到加密前的單詞HELLO了。

2.破解

破解凱撒密碼的方法很多,有一種暴力破解的方式,就是「遍歷」。根據凱撒密碼的加密方式,平移固定的位數,26個英文字母總共可以平移的方式是26種,假如位數n=26,其實相當於沒有平移,A=>A,循環了一次。

進行暴力破解:

n=1:LHOOR=>KGNNQ

n=2:LHOOR=>JFMMP

n=3:LHOOR=>HELLO

這樣就破解了,可以推算發位數n=3,其實就是秘鑰=3,

最多嘗試25次即可推算出加密的n值等於多少(當然這里只是討論原理,不排除真實情況,可能湊巧某一個錯誤的n值解密出來的也是一個完整的單詞或一段話的情況)。

二、 替換密碼

1.簡單介紹

替換密碼和愷撒密碼原理有些類似,個人感覺相當於愷撒密碼的變種,替換密碼增加了字母替換的隨機性.

舉個簡單的例子,A=>G,B=>X,C=>K

這里ABC..等26個字母都隨機指向了「密碼」本上的另一個隨機的字母,這下就比較難反向推算出「秘鑰」是多少了,數量級完全不一樣。

簡單的算一下可能存在的情況:

A=>有25種表示方式BCD…

B=>有除A以外24種方式表示CDE..



那麼秘鑰的存在情況是:

N=25!種方式,遠遠大於愷撒密碼的26。

2.破解

面對25!數量級的加密方式,使用暴力破解的方式不再實用了,但是可以使用另一種方法,統計學

通過大量掃描英文書籍,可以得出如下結果(,這里只探究原理,並不追究這個統計的准確性):

26個字母在日常用語中的使用頻率並不一樣,比如字母E的使用頻率遙遙領先,字母Z使用頻率最低,這個相當於語言所殘留在文字中的指紋,很難察覺但是真實存在。

根據這個原理,掃描「隨機密碼」文本,統計出各個字母的使用頻率分布,找出使用頻率最高的那個字母,極可能就是加密後的字母E。

3.隨機加密還有很多變種,雙重加密,擦掉「指紋」使得加密方式更進一步加固,不得不感嘆古人的智慧,數學之美真奇妙。

閱讀全文

與語言密碼學相關的資料

熱點內容
怎麼設置網路快捷開關 瀏覽:61
u盤大於4g文件怎麼復制 瀏覽:390
數控車床極坐標六角怎麼編程 瀏覽:930
三菱編程式控制制伺服用什麼指令 瀏覽:60
酷派手機強制4g代碼 瀏覽:173
java數組轉成list 瀏覽:670
亂斗西遊2什麼版本好 瀏覽:375
網路節目有什麼 瀏覽:550
孩子學編程有什麼前途 瀏覽:36
iphone6更新有什麼壞處 瀏覽:477
數據系統設計課程能力目標有哪些 瀏覽:712
程序員都悶騷嗎 瀏覽:595
靈躍機器人編程怎麼樣 瀏覽:427
win10生活動態打不開 瀏覽:731
日照哪裡有數控編程培訓 瀏覽:49
只讀壓縮文件夾怎麼改 瀏覽:878
賣花姑娘在哪個網站看不收費 瀏覽:970
微信上怎樣看訪客記錄 瀏覽:409
創想切片可以列印什麼文件後綴 瀏覽:749
word怎麼沒文件選項 瀏覽:554

友情鏈接