跳转到内容

培根密碼

维基百科,自由的百科全书

培根密碼,又名倍康尼密碼[1](英語:Bacon's cipher)是由法蘭西斯·培根發明的一種隱寫術

原理

加密時,明文中的每個字母都會轉換成一組五個英文字母。其轉換依靠下表:

a   AAAAA   g     AABBA   n    ABBAA   t     BAABA
b   AAAAB   h     AABBB   o    ABBAB   u-v   BAABB
c   AAABA   i-j   ABAAA   p    ABBBA   w     BABAA
d   AAABB   k     ABAAB   q    ABBBB   x     BABAB
e   AABAA   l     ABABA   r    BAAAA   y     BABBA
f   AABAB   m     ABABB   s    BAAAB   z     BABBB

這只是一款最常用的加密表,有另外一款將每種字母配以不同的字母組予以轉換,即I與J、U與V皆有不同編號。

加密者需使用兩種不同字體,分別代表A和B。準備好一篇包含相同AB字數的假信息後,按照密文格式化假信息,即依密文中每个字母是A还是B分别套用兩種字體。[2]

解密時,將上述方法倒轉。所有字體一轉回A,字體二轉回B,以後再按上表拼回字母。

法蘭西斯·培根另外準備了一種方法,其將大小寫分別看作A與B[3],可用于无法使用不同字体的场合(例如只能处理纯文本时)。但这样比起字体不同更容易被看出来,而且和语言对大小写的要求也不太兼容。

培根密码本质上是将二进制信息通过样式的区别,加在了正常书写之上。培根密码所包含的信息可以和用于承载其的文章完全无关。

例子

以下一段包含了'steganography',正常字體是A,粗體是B:

To encode a message each letter of the plaintext is replaced by a group of five of the letters 'A' or 'B'.

按照正常字體是A,粗體是B的规则改变上文:

ba aabbaa b aaabaaa abba aaaaaa bb aaa bbabaabba ba aaaaaaaa ab b baaab bb babb ab baa abbaabb 'b' bb 'b'.

每五个字符一组,对照字母表解密:

baaab(S) baaba(T) aabaa(E) aabba(G) aaaaa(A) abbaa(N) abbab(O) aabba(G) baaaa(R) aaaaa(A) abbba(P) aabbb(H) babba(Y) bbaaa bbaab bbbbb

最后三组由于无法按照字母表解密,故为无效信息。

培根與莎士比亞

有說法指莎士比亞的劇本實際由法蘭西斯·培根所寫,因此劇本中所書的文字有可能包含培根密碼[4]:42-50頁伊格内修斯·L·唐纳利伊麗莎白·韋爾斯·蓋洛普曾試圖從莎士比亞的舊劇本中找出上述密碼。

但是,美國密碼學家威廉·F·傅利曼伊麗莎白·傅利曼證明了莎士比亞劇本中沒有包含培根又或其它密碼[5]

參考資料

  1. ^ 蔡文郎. 參加第八屆亞裔組織犯罪及恐怖主義國際會議報告. 法務部調查局: 19. [2012-02-03] (中文(繁體)). [永久失效連結]
  2. ^ Helen Fouché Gaines, Cryptanalysis: a Study of Ciphers and Their Solutions (1989), page 6]
  3. ^ Biliteral can mean: "written in two different scripts", Oxford English Dictionary
  4. ^ Wadsworth, Frank. The Poacher from Stratford: A Partial Account of the Controversy over the Authorship of Shakespeare's Plays. 加利福尼亞大學出版社. 1958 [28 January 2011]. ISBN 978-0-520-01311-7. (原始内容存档于2016-09-01). 
  5. ^ 威廉·F·傅利曼、伊麗莎白·傅利曼. The Shakespearean Ciphers Examined. 劍橋大學出版社. 1957. 

外部連結