青青草国产成人av片免费/香港三级日本韩国三级专线/国内自拍在钱/天堂国产女人av

回復

詳解維熱納爾密碼

樓主: 4679 | 查看: 6萬 | 回復: 105

發表于 2009-7-23 22:08:13
本帖最后由 偵銘の印 于 2009-7-24 11:52 編輯

寫在前面:本文所有的密碼資料不是原創,但為了更加簡潔的介紹此密碼,本人用自己的語言對密碼進行了解釋,這樣能讓大家更好的掌握。以下內容全部為本人親手輸入。

本文介紹的是維熱納爾密碼,這是由意大利佛羅倫薩的里昂巴蒂斯特•阿爾伯特提出的一種多字母的替換式密碼,關鍵是,用兩個或兩個以上的密碼表交替使用來進行加密,經過后人的努力,最終維熱納爾密碼成型。其主要構成是維熱納爾方陣:


它的明碼表后有26個密碼表,每個表相對前一個發生一次移動。簡單說,如果只用其中一個密碼表進行加密,那就是凱撒密碼!但是,如果用方陣中不用的幾個字母同時加密,它就變得很強大了。本人來舉個例子,用關鍵詞FOREST來加密Better to do well than to say well.


(看維熱納爾方陣第5行,是F開頭,明文是b,所以用G來加密;同理,第14行,O開頭,明文是e,所以用S來加密,如此類推……)


大家會想,維熱納爾密碼既客服了頻率分析,又具有數目眾多的密鑰,發送者和接受者可以使用字典任何一個單詞,或詞組,甚至是虛構的單詞作為關鍵詞來加密,那如此復雜的密碼,我們怎么去破解呢?此密碼流行于19世紀,不過,也正是在19世紀,查爾斯•巴比奇,一個性格古怪的天才將其破解了。

讓我們來看看解密的過程。

首先,看看剛才那段被加密的文字。


認真觀察可以看到,to兩次被加密為YC,因為它兩次都是用FO來進行加密的,關鍵詞正好輪回了2此,而這種重復,就是解開維熱納爾密碼的突破點。

導致這種重復,有兩種可能。

1、明文中的相同字母序列(如上面的to),被相同的關鍵詞加密(如FO);
2、明文中不同的字母序列,剛好被不同的關鍵詞加密成同樣的密文,純屬巧合。
但是,假如我們限制在長序列的范圍內考慮的話,那第二種可能性就大大的降低了,這種情況下,我們多數考慮4個字母或者4個以上的重復序列。如下面的密文:

I S W Z P N Q C K M Y Y Y J K A Y Y E Z F F S W E E S S P G Z X Q A H F
I S W Z P N Q C K M T V Y J O A C V E H A E S A Z R L T P Q I Z M X O T
Q S W M C V U D S I J G G D E U W A Z R S F X W I L K U E J Q L D A C B
G D L Y J X M Y L M D Q K Z M P L D I L Q E M W F S W D P A Z E Z Q N W
D Y W D Z X F S A E E A Z J D U E L V P T M C E K W S E E F U R Z F S W
D P X A C Q A F K M X W A W V E Z F S D B G D L A Y U Q X G D P E K W S
E E F U R Z F S W D P O U E Z K Z M Y L Q N P Q Q D E M J T Q Y G U V A
Z O G R W A W P V U E Q A F J Q J G G C O M J Z A H Q A F K T J D K A D
M N W P J G G C W K P K A Y E Q Z Z P T V K Z M Q G W D V F A H L T L L
U S S P X A Z P G Z J G G O S D W A Z R K A E Z Q C W K Z M M C W I T L
T E Z M E D A Z C A Y Q A F J R L U Q L K U Q Q A F J Q Y W H P J T F J
F L K U Q Q A F J Q Y W H P J P Z O Z D Z M W D U M W F S W A Y W R Z J
K Z M I S G B T F O S E E J G G D G R E D K M M F D M D P A R Q J A H F
U D K T Z O Z E Z Q Y A I T D X V F A H L T L L K Z M M C W Z Z V D P S Y P J

在這里面,重復的長序列有ISWZPNQCKM,BGDL,SEEFURZFSWDP,JGGC,LKUQQAFJQYWHPJ,VFAHLTLL等。

破譯的第二個關鍵在于,確定關鍵詞的長度。說到這,讓我們先看看最開始那個短的加密文字:


第一個YC出現后到第二個YC的結尾一共有12個字母(U S O X Q Z K L S G Y C),那么密鑰的長度就是12的約數!即1、2、3、4、6、12之中的一個(其中1可以排除,因為如果關鍵詞的長度是1個字母的話,那就成了簡單的凱撒密碼了)。

OK,讓我們再次回到長的這段文字。ISWZPNQCKM間隔是36個字母,BGDL間隔是93個字母,SEEFURZFSWDP間隔是45個字母,JGGC間隔是24個字母,LKUQQAFJQYWHPJ間隔是18個字母等。

很顯然,每個重復的間隔都能被3整除,所以關鍵詞應該有3個字母。

下一步,頻率分析,但是因為關鍵詞有3個字母,所以我們把整個長的密文分成3組。把第1、4、7、10、13……個字母分為一組,暫且稱之為L1,把第2、5、8、11、14……個字母分為第二組,稱之為L2,余下的自然就是第三組,稱之為L3。數數每組的字母個數,每組169個字母。

接下來,需要先做一個標準頻率的分布表,我們用169乘以每個字母的標準百分比,如字母A,169*8.2%=14(結果四舍五入)。

那么由各個字母的標準頻率(單位:%):

A:8.2   B:1.5   C:2.8   D:4.3   E:12.7   F:2.2
G:2.0   H:6.1   I:7.0   J:0.2   K:0.8    L:4.0
M:2.4   N:6.7   O:7.5   P:1.9   Q:0.1    R:6.0
S:6.3   T:9.1   U:2.8   V:1.0   W:2.4    X:0.2
Y:2.0   Z:0.1
計算得到標準字母個數(單位:個):

A:14   B:3   C:5   D:7   E:21   F:4
G:3    H:10  I:12  J:0   K:1    L:7
M:4    N:11  O:13  P:3   Q:0    R:10
S:11   T:15  U:5   V:2   W:4    X:0
Y:3    Z:0
根據上面得到的數據,用26字母作橫坐標,個數作為縱坐標,做散點圖。見下圖:


然后,讓我們先統計L1中169個字母出現的次數:

A:22   B:1   C:0   D:10  E:10   F:9
G:7    H:2   I:9   J:0   K:11   L:0
M:14   N:1   O:1   P:5   Q:16   R:5
S:2    T:7   U:14  V:1   W:1    X:2
Y:5    Z:14
同理,做出L1的散點圖:


與標準圖對比一下:


我們發現,標準頻率和L1的頻率都有峰值、平穩期和低谷。他們之間的區別在于相互錯開了一些位置,比較兩者應該可以找到最顯著地特征。

例如,L1圖表中A-F這一段,A的峰值過后是低谷,特別是C沒有出現,然后是一段平穩期,這與標準頻率中的O-T段比較吻合。

再看,標準頻率中,O的前面I-N這段和L1中U-Z的這段也大致吻合。(說的是大致,不是非得一模一樣,請注意。)

又看看,L1曲線中,J和L得缺失,可以與標準曲線中X和Z得缺失相對應,L1曲線中M-O這段應該就是標準曲線中A-E這段。

這就暗示著L1的密碼表是有M、N、O、P……開始的,把L1的圖形向左平移12個單位再去標準頻率曲線對比:

位移后的L1曲線。
標準字母曲線。
由此而知,關鍵詞的第一個字母是M!(備注:一些誤差是在所難免的,比如說K替換Y,兩者在圖標上比較起來好像很不符合,但整體趨勢差不多,所以我們要懂得忽略。)


繼續,我們來統計L2中的169個字母出現的次數:

A:1    B:0   C:12  D:11  E:14   F:7
G:1    H:6   I:0   J:12  K:0    L:10
M:3    N:2   O:3   P:18  Q:3    R:5
S:13   T:5   U:1   V:2   W:7    X:5
Y:12   Z:16
畫出L2的曲線:


大家應該留意到F-K,L-P,Z-A-E這些連續段的特助,考慮把圖標左移11位,得:

位移后的L2曲線。
我們再次貼出標準頻率圖,讓大家對照下。

標準字母曲線。
所以,我們可以確定關鍵詞的第二個字母是L!

最后,我們用同樣的方法可以確定關鍵詞的第三個字母是S,至此,我們得到整個關鍵詞——MLS。

得到關鍵詞就一切都解開了,反向套用維熱納爾方陣,得到明文,如下:


Whenever sang my songs
On the stage on my own
Whenever said my words
Wishing they would be heard
I saw you smiling at me
Was it real or just my fantasy
You'd always be there in the corner
Of this tiny little bar
My last night here for you
Same old songs just once more
My last night here with you
Maybe yes maybe no
I kind of liked it you're your way
How you shyly placed your eyes on me
Oh did you ever know
That I had mine on you
Darling so there you are
With that look on your face
As if you're never hurt
As if you're never down
Shall I be the one for you
Who pinches you softly but sure
If frown is shown then
I will know that you are no dreamer
本帖子中包含更多圖片或附件資源

您需要 登錄 才可以下載或查看,沒有帳號?加入學院

8

248

分享

| 發表于 2009-7-23 22:10:18
... - -#  崇拜下~

看見密碼就頭大....

不過既然有詳解,值得學習一下
166
| 發表于 2009-7-23 22:15:39
占板凳

頻率分析對于長篇密文的確非常好用
| 發表于 2009-7-23 23:03:50
理論知識對于一名偵探來說也很重要。
| 發表于 2009-7-24 08:33:06
..LZ辛苦了
| 發表于 2009-7-24 10:01:24
世界上沒有最安全的密碼~
| 樓主| 發表于 2009-7-24 14:24:01
想當年,我寫過一篇全是密碼的小說,里面有一段長的文字,就是用維熱納爾密碼來加密的,加密花了我幾個小時,然后自己去破譯又花了幾個小時。
| 發表于 2009-7-24 16:49:24
厲害,只是這種理論知識我真的犯暈,而且,本人接觸密碼還沒幾天,看樣子要走的路還很長啊!
| 發表于 2009-7-25 18:35:50
最慘的就是密鑰我學來學去也不明白。
| 樓主| 發表于 2009-7-25 21:01:09
  9#  冷月夕靜


你哪里看不明白?
我可以詳細解釋下。
尚未登錄
您需要登錄后才可以回帖 登錄 | 加入學院