跳转至

Baconian 培根

转换方式

培根密码先将所有的明文字符先分为两种:a 类和 b 类,然后按五个字符一组进行分组。 分组的依据不定,最经典的一种方法是按粗体字区分,亦有用字体区分。

每五个字符将会按照类似二进制的方法进行转换,转成一个字符,可以参考下方表格。

标准的培根代码转换表中,I 与 J 共用一个代码,类似的,U 与 V 共用一个代码。

(因为培根密码有时用二进制表示会更加直观,本表在培根代码旁边增添了其二进制表示)

字母 代码 二进制对应 字母 代码 二进制对应
A aaaaa 00000 N abbaa 01100
B aaaab 00001 O abbab 01101
C aaaba 00010 P abbba 01110
D aaabb 00011 Q abbbb 01111
E aabaa 00100 R baaaa 10000
F aabab 00101 S baaab 10001
G aabba 00110 T baaba 10010
H aabbb 00111 U/V baabb 10011
I/J abaaa 01000 W babaa 10100
K abaab 01001 X babab 10101
L ababa 01010 Y babba 10110
M ababb 01011 Z babbb 10111

除了上面较为常见的转换表外,还有一种 I, J, U, V 各自独立的转换表。

字母 代码 二进制对应 字母 代码 二进制对应
A aaaaa 00000 N abbab 01101
B aaaab 00001 O abbba 01110
C aaaba 00010 P abbbb 01111
D aaabb 00011 Q baaaa 10000
E aabaa 00100 R baaab 10001
F aabab 00101 S baaba 10010
G aabba 00110 T baabb 10011
H aabbb 00111 U babaa 10100
I abaaa 01000 V babab 10101
J abaab 01001 W babba 10110
K ababa 01010 X babbb 10111
L ababb 01011 Y bbaaa 11000
M abbaa 01100 Z bbaab 11001

加密举例

明文: PUZZLE

对应培根代码: abbba baabb babbb babbb ababa aabaa

类别区分方式:粗体( a 为正常, b 为粗体)

找一个30个字母的句子: This message is using baconian code

加密: Thism essag eisus ingba conia ncode

恢复正常空白:This message is using baconian code

识别方式

主要的线索主要是二进制,特别是两种不同的文字。有时“培根”这种肉食也会被刻意凸显来说明培根密码的存在。

历史

培根密码通常认为出自英国哲学家弗朗西斯·培根之手。培根密码很多时候并不是直接使用,而是作为一种隐写术 (Steganography) 的方法存在。

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

解码工具