散列板

散列板

散列板在密碼學中是一種將字母式明文替換至純數字的工具。 散列板散列板的第一行提入數字0-9,但亦可胡亂排列,以加強安全性。 加密時,第一行的字母只需轉換成上方數字。

簡介

散列板在密碼學中是一種將字母式明文替換至純數字的工具。其同時實現分餾和資料壓縮。它亦是單-雙體密碼。VIC密碼主要依靠散列板來進行加密。

散列板散列板

原理

散列板的第一行提入數字0-9,但亦可胡亂排列,以加強安全性。第二行通常會寫入高頻字母,並同時留下兩個空白位置,同時,其沒有行編號。最後一行即填入剩餘字母,同時於最左方加上兩個數字行編號。
就如第一行的數字一樣,表格中央的英文字母亦可胡亂排列或加入關鍵字作起行,而上方表格的數字和字母則是按順序排列。由於此排列方法會多出四個空格,此時,通常會在第一行跳過兩格,下方兩個則以「/」和「‧」來用作轉義字元。只要傳送者和接收者皆使用同一散列板,排序便不成問題。
加密時,第一行的字母只需轉換成上方數字。而第二和第三行會轉換至一個十位數,先取行編號,再取列者。常用字母只會映射一個數字,由此減短密文長度,同時亦降低左方兩個數字暴露的機率。以下是一個例子:

A ​ T ​ T ​ A ​ C ​ K ​ A ​ T ​ D ​ A ​ W ​ N
3 ​ 1 ​ 1 ​ 3 ​ 21 ​ 27 ​ 3 ​ 1 ​ 22 ​ 3 ​ 65 ​ 5

轉換後的結果為「3113212731223655」。如果表格本身排列並非順序排列,就可直接釋放信息;若非,則可以進入第二階段再加密,如再置換或替換。以下的例子會利用同餘加密一次:
​ 3 ​ 1 ​ 1 ​ 3 ​ 2 ​ 1 ​ 2 ​ 7 ​ 3 ​ 1 ​ 2 ​ 2 ​ 3 ​ 6 ​ 5 ​ 5
+ 0 ​ 4 ​ 5 ​ 2 ​ 0 ​ 4 ​ 5 ​ 2 ​ 0 ​ 4 ​ 5 ​ 2 ​ 0 ​ 4 ​ 5 ​ 2
= 3 ​ 5 ​ 6 ​ 5 ​ 2 ​ 5 ​ 7 ​ 9 ​ 3 ​ 5 ​ 7 ​ 4 ​ 3 ​ 0 ​ 0 ​ 7

之後,我們便可以使用相同的散列板將密文轉換回去:
3 ​ 5 ​ 65 ​ 25 ​ 7 ​ 9 ​ 3 ​ 5 ​ 7 ​ 4 ​ 3 ​ 0 ​ 0 ​ 7
A ​ N ​ W ​ H ​ R ​ S ​ A ​ N ​ R ​ O ​ A ​ E ​ E ​ R

解密的方法就是將以上動作逆向做一次僅僅是這些過程的反向。雖然明文的數量可以不同,但以上方的表格可見,但凡第一階段解密後發現2或6,即可將其確定為第二或第三行字母。
使用到散列板的加密法包括VIC密碼及SECOM密碼。

相關詞條

熱門詞條

聯絡我們