跳转到正文

自动密钥密码

输入一个简短的引导词和一段消息,工具即可用维吉尼亚自动密钥密码进行编码或解码。这种密钥不会重复,因为它会接续消息本身。您可以看到密钥与文本的对齐方式,以及每个字母背后的求和过程。免费,无需注册,数据也不会离开您的浏览器。

模式

一个简短的关键词,只用来开始密钥。之后密钥会接续消息本身,因此永远不会重复。

接续密钥的内容

明文形式的自动密钥是经典密码,也是谜题网站所说的“自动密钥”。密文形式则是教科书中的另一种版本;收发双方必须选择同一种形式。

保留在结果中

运算过程

密钥,逐字母排列——前 12 个字母

明文ATTACKATDAWN
密钥QUEENLYATTAC
密文QNXEPVYTWTWP

前 7 个密钥字母(底纹标示)为引导词;之后每个密钥字母都是其前 7 位的明文字母。

  • 字母编号为 A = 0、B = 1……Z = 25,每次求和都在 26 处回绕。
  • 编码:密文字母 = 明文字母 + 密钥字母。
  • 密钥为引导词加上明文,因此解码时,您还原出的每个字母都会加入密钥。

维吉尼亚方表

ABCDEFGHIJKLMNOPQRSTUVWXYZ
AABCDEFGHIJKLMNOPQRSTUVWXYZ
BBCDEFGHIJKLMNOPQRSTUVWXYZA
CCDEFGHIJKLMNOPQRSTUVWXYZAB
DDEFGHIJKLMNOPQRSTUVWXYZABC
EEFGHIJKLMNOPQRSTUVWXYZABCD
FFGHIJKLMNOPQRSTUVWXYZABCDE
GGHIJKLMNOPQRSTUVWXYZABCDEF
HHIJKLMNOPQRSTUVWXYZABCDEFG
IIJKLMNOPQRSTUVWXYZABCDEFGH
JJKLMNOPQRSTUVWXYZABCDEFGHI
KKLMNOPQRSTUVWXYZABCDEFGHIJ
LLMNOPQRSTUVWXYZABCDEFGHIJK
MMNOPQRSTUVWXYZABCDEFGHIJKL
NNOPQRSTUVWXYZABCDEFGHIJKLM
OOPQRSTUVWXYZABCDEFGHIJKLMN
PPQRSTUVWXYZABCDEFGHIJKLMNO
QQRSTUVWXYZABCDEFGHIJKLMNOP
RRSTUVWXYZABCDEFGHIJKLMNOPQ
SSTUVWXYZABCDEFGHIJKLMNOPQR
TTUVWXYZABCDEFGHIJKLMNOPQRS
UUVWXYZABCDEFGHIJKLMNOPQRST
VVWXYZABCDEFGHIJKLMNOPQRSTU
WWXYZABCDEFGHIJKLMNOPQRSTUV
XXYZABCDEFGHIJKLMNOPQRSTUVW
YYZABCDEFGHIJKLMNOPQRSTUVWX
ZZABCDEFGHIJKLMNOPQRSTUVWXY

行 = 密钥字母,列 = 明文字母,单元格 = 密文字母。在下方选择一个字母即可将其高亮:它所在的行和列变为蓝色,两者交汇的单元格变为琥珀色。

明文字母密钥字母运算密文字母
Q0 + 16 = 16Q
U19 + 20 = 39 ≡ 13N
E19 + 4 = 23X
E0 + 4 = 4E
N2 + 13 = 15P
L10 + 11 = 21V
Y0 + 24 = 24Y
A19 + 0 = 19T
T3 + 19 = 22W
T0 + 19 = 19T
A22 + 0 = 22W
C13 + 2 = 15P

如何使用自动密钥密码工具

  1. 1. 选择引导词。 它是一个简短的关键词(例如 QUEENLY),用于开始密钥。只有其中的字母会被计入。
  2. 2. 选择接续密钥的内容。 经典自动密钥使用明文;密文形式则供采用该版本的教科书使用。收发双方必须约定一致。
  3. 3. 输入消息,并选择编码或解码。 空格、数字和标点原样通过,且不占用密钥字母。
  4. 4. 观察密钥的生成。 密钥表将明文、密钥和密文对齐排列,引导词以底纹标示;在运算表中选择一个字母,即可在方表中查看它。

自动密钥密码如何工作

自动密钥密码是一种维吉尼亚密码,只有一处改动:密钥不会重复。收发双方约定一个简短的引导词,密钥则为引导词加上消息本身。字母按 A = 0 至 Z = 25 编号,每个密文字母为 C = P + K(mod 26),与维吉尼亚密码相同;解码时再减去密钥:P = C − K。

解码之所以可行,是因为密钥始终领先读者一步。引导词先解码最初几个字母;这些明文字母随后成为新的密钥字母,用来解码后面的字母,直至结束。以引导词 QUEENLY 加密消息 ATTACKATDAWN 为例:

明文密钥求和密文
A (0)Q (16)0 + 16 = 16Q
T (19)U (20)19 + 20 = 39 ≡ 13N
T (19)E (4)19 + 4 = 23X
A (0)E (4)0 + 4 = 4E
C (2)N (13)2 + 13 = 15P

整段消息变为 QNXEPVYTWTWP,与维基百科自动密钥密码条目给出的该例答案相同。密钥为 QUEENLY 加上 ATTACKATDAWN;其第八个字母 A 对应消息的第一个字母。工具会把这一密钥行直接显示在您的文本下方,方便您看到引导词在何处结束、消息在何处接替。

自动密钥密码简史

让消息自身充当密钥的想法,通常归功于意大利博学家吉罗拉莫·卡尔达诺(Girolamo Cardano),他生活在 16 世纪中叶。据大卫·卡恩(David Kahn)的历史著作《破译者》(The Codebreakers)所述,他的版本在每个单词处重新开始密钥,这使读者与敌方密码分析者一样难以恢复第一个单词。1586 年,布莱斯·德·维吉尼亚(Blaise de Vigenère)在《Traicté des chiffres》中描述了一种更简洁的方案:一个单一的引导字母,之后密钥贯穿整段消息而不重新开始。这就是今天教授的自动密钥密码。人们更熟悉、冠以维吉尼亚之名的重复关键词密码,实际上是乔瓦尼·巴蒂斯塔·贝拉索(Giovan Battista Bellaso)更早的发明——这一名称是在 19 世纪被误加上去的。

自动密钥密码如何被破解

不重复的密钥能够抵御摧毁维吉尼亚密码的攻击。卡西斯基检验查找间隔为密钥长度的重复片段,重合指数则寻找周期;自动密钥消息两者皆无。但密钥由普通语言构成,这正是它的弱点所在。密码分析者猜测一个常见词,例如 THE,将其沿密文滑动并做减法;只要结果是可读的英语,该片段很可能也是密钥的一部分,并会在引导词之后再揭示更多明文。每一次正确的猜测都为下一次提供线索,消息很快便会被解开。最初几个字母只用引导词加密,属于普通的短密钥维吉尼亚密码。另一个缺点是错误传播:加密或抄写时的一个错误字母会破坏之后的每一个字母。

适用于谜题与教学,而非保密

自动密钥比重复密钥更进一步,但它已被破解了数代人。请用它来学习运行密钥的原理,切勿用于保护任何私密内容。

常见问题

什么是自动密钥密码?
自动密钥密码是一种多表代换密码,其密钥由一个简短的引导词加上消息本身组成。每个字母都按维吉尼亚规则 C = P + K(mod 26) 加密,因此密钥与消息等长且永不重复。
如何解密自动密钥密码?
写下引导词,将每个密钥字母从对应的密文字母中减去,得到一个明文字母,再把它追加到密钥之后继续。引导词用完后,密钥就只是您已还原出的明文。选择“解码”时,本工具会自动完成这一步。
自动密钥密码与维吉尼亚密码有何不同?
维吉尼亚密码对整段消息重复使用关键词,而自动密钥只使用一次关键词,之后便接续消息本身。这消除了卡西斯基检验和重合指数所依赖的重复规律,这也是自动密钥能够抵御这些攻击的原因。
自动密钥密码安全吗?
不安全。由于密钥由明文构成,猜中一个词就会同时揭示消息的一部分和密钥的一部分,而这些部分会相互串联。用常见词滑动比对的方法即可手工破解,软件则只需几百个字母就能恢复引导词。
引导词应当多长?
从一个字母到任意长度均可。维吉尼亚最初的做法只用一个字母,美国密码学协会的示例则使用六个字母的 PRIMER。较长的引导词会多隐藏开头的几个字母,但它并不能改变根本的弱点:引导词之后,密钥就是明文本身。
什么是密文形式的自动密钥?
在密文形式中,密钥接续的是密文而非明文。它更容易解码,因为整个密钥都可以从密文中看出,但这同样意味着任何人都能读到它,因此相比短密钥的维吉尼亚密码几乎没有额外的保护。收发双方必须选择同一版本。

相关工具

编码与密码中的更多工具