免费维吉尼亚密码

输入文本和密钥以查看维吉尼亚密码结果

维吉尼亚密码:经典的多表加密方法

维吉尼亚密码是一种著名的多表替换密码,它使用一个重复的关键词对消息的每个字母应用不同的凯撒移位。与简单的单表密码不同,该方法不将每个明文字母每次映射到同一个密文字母,因此更能抵抗频率分析。几个世纪以来,它被认为不可破解。今天,免费的在线维吉尼亚密码编码与解码工具使任何人都可以立即使用这一历史技术对文本进行加密或解密。

密码工作原理

核心思想是将字母表中的每个字母分配一个0到25的数字:

A=0, B=1, C=2, …, Z=25A = 0,\ B = 1,\ C = 2,\ \dots,\ Z = 25

加密时,每个明文字母根据对应密钥字母的值进行移位。密钥重复使用,以覆盖整个明文。加密公式为:

Ci=(Pi+Ki) mod 26C_i = (P_i + K_i) \bmod 26

其中CiC_i是密文字母编号,PiP_i是明文字母编号,KiK_i是密钥字母编号。

要逆向过程,解密公式为:

Pi=(Ci−Ki) mod 26P_i = (C_i - K_i) \bmod 26

如果减法结果为负数,只需加上26即可得到0–25范围内的值。

示例:用密钥“KEY”加密“HELLO”

首先,将明文字母与密钥字母对齐(重复密钥):

明文HELLO
密钥KEYKE

现在将每个字母转换为其数字对应值:

  • H = 7, K = 10 → (7 + 10) mod 26 = 17 → R
  • E = 4, E = 4 → (4 + 4) mod 26 = 8 → I
  • L = 11, Y = 24 → (11 + 24) mod 26 = 9 → J
  • L = 11, K = 10 → (11 + 10) mod 26 = 21 → V
  • O = 14, E = 4 → (14 + 4) mod 26 = 18 → S

得到的密文是“RIJVS”。

要解密,取每个密文字母并减去相应的密钥字母(模26)。例如,R (17) 减去 K (10) 得到 7 → H,以此类推。

维吉尼亚密码表(Tabula Recta)

维吉尼亚表是一个26×26的网格,提供了可视化的加密和解密方式。最上方一行列出明文字母,最左侧一列列出密钥字母,行列交叉处给出密文字母。虽然计算器自动完成此过程,但该表有助于说明多表密码背后的移位模式。

使用此免费在线维吉尼亚密码工具

本多表密码工具旨在同时作为维吉尼亚密码编码器和解码器。要用维吉尼亚密码加密文本,只需输入明文字和密钥,然后点击加密。要在线解密密文,输入密文和相同的密钥,然后点击解密。如果密钥短于文本,计算器会自动重复密钥,并立即处理所有取模运算。

该工具支持任何仅包含字母的文本(保留大小写,但算法将大写和小写视为相同)。非字母字符保持不变,因此您可以保留空格、标点符号和数字。

无密钥解密

不知道密钥,无法直接解密维吉尼亚密码。但是,如果密钥较短或遵循可预测的模式,可以使用卡西斯基检验或弗里德曼重合指数等密码分析方法来恢复密钥长度和密钥本身。要实现真正的安全交换,密钥必须长、随机且保密。

历史背景

该密码以布莱斯·德·维吉尼亚命名,但实际上是由吉奥万·巴蒂斯塔·贝拉索于1553年发明。维吉尼亚后来在他1585年的著作《密码论》中描述了一种更复杂的密码,随时间推移,他的名字与这种多表方法联系在一起。尽管年代久远,维吉尼亚密码仍然是密码学中受欢迎的教学工具,也是前计算机时代加密的迷人范例。

现在您可以自己尝试维吉尼亚密码计算器:加密一条秘密消息,发送给知道密钥的朋友,然后让他们解密。这是探索多表密码世界的简单而强大的方式。

常见问题

1. 如何使用维吉尼亚密码计算器加密消息?

在文本输入字段中输入明文字和密钥,然后点击“加密”按钮。计算器会根据需要重复密钥,并应用公式 C_i = (P_i + K_i) mod 26 生成密文。

2. 维吉尼亚密码与简单的凯撒密码有什么区别?

凯撒密码对每个字母应用相同的移位,而维吉尼亚密码使用重复的关键词对每个字母分配不同的移位。这使得维吉尼亚密码更能抵抗频率分析。

3. 我可以对多条消息使用相同的密钥吗?

可以,但出于安全考虑不推荐。如果密钥被知晓或猜测,所有用该密钥加密的消息都可能被解密。为了安全起见,请使用一次长随机密钥。

4. 如果我知道密钥,如何解密维吉尼亚密码?

将密文和密钥输入工具,然后点击“解密”。计算器使用公式 P_i = (C_i - K_i) mod 26(如果结果为负数则加26)来恢复原始明文。

5. 没有密钥是否可能解码维吉尼亚密码?

没有密钥,直接解密是不可能的。但是,如果密钥较短或重复,可以使用卡西斯基检验或弗里德曼重合指数等方法帮助恢复密钥。该工具需要密钥才能工作。

使用方法

  1. 选择“加密”或“解密”模式,然后在源文本字段中输入或粘贴文本。
  2. 输入关键词。密钥会重复使用以匹配文本长度,实现多表加密。
  3. 加密或解密结果立即显示。点击“复制”按钮将其保存到剪贴板。