使用多表替换算法对文本进行加密或解密,适用于密码学学习与测试。
工具用的顺手吗?
你的反馈能帮助我们做得更好
点击生成按钮开始
概览
了解工具能解决的问题、计算或处理逻辑,以及数据边界。
输入 Hello, 世界! 123 并使用密钥 KEY,加密结果是 Rijvs, 世界! 123。这个结果直接体现了当前工具的字符范围:只有 ASCII 英文字母 A-Z 与 a-z 参与位移;英文大小写会保留,空格、换行、数字、标点、中文和其他字符按原样输出。
密钥只取其中的英文字母,计算前统一按大写解释。例如 K3E-Y! 实际等同于 KEY。密钥会循环使用,而且只有遇到可转换的英文字母才前进一位;标点或中文不会消耗密钥位置。工具实现的是经典的重复关键词版本,不含自动密钥、扩展字符表或未知密钥破解功能。
把字母按 A=0、B=1 一直到 Z=25 编号,明文字母记作 P_i,密文字母记作 C_i,对应的循环密钥字母记作 K_i。加密做加法,解密做减法,超出字母表后用模 26 回绕。
C_i = (P_i + K_i) mod 26
P_i = (C_i - K_i) mod 26
因此,同一个明文字母在不同位置可能得到不同密文字母。若密钥只有一个有效字母,所有位置都会使用同一移位,效果就退化为固定移位;密钥为 A 时位移量是 0,文本中的英文字母也会保持不变。
LEMON 示例;核验日期:2026-09-14。指南
按步骤完成操作,并通过示例核对输入与结果。
明文转密文选择“加密”;已有密文且知道原密钥时选择“解密”。默认模式是加密。
在“密钥”框输入至少一个英文字母。大小写不影响密钥位移,数字和符号会被忽略;若没有任何有效英文字母,输入文本会原样显示。
在“输入文本”框键入、粘贴或载入示例。内容或密钥变化后,“输出结果”随之重新计算,不需要额外的生成步骤。
先用短字符串确认字符范围、密钥和模式,再复制结果。要验证是否可逆,可保留同一密钥,把刚得到的密文切换到解密模式测试。
第一组用 HELLO 和 KEY。循环密钥是 KEYKE,对应位移为 10、4、24、10、4,输出 RIJVS;切换解密并保持 KEY,可还原为 HELLO。
| 位置 | 明文 | 密钥 | 密文 |
|---|---|---|---|
| 1 | H (7) | K (10) | R (17) |
| 2 | E (4) | E (4) | I (8) |
| 3 | L (11) | Y (24) | J (9) |
| 4 | L (11) | K (10) | V (21) |
| 5 | O (14) | E (4) | S (18) |
第二组用 A-A 和 BC,输出是 B-C:连字符被保留,也不推进密钥,所以第二个 A 使用的是 C 而不是重新使用 B。这组边界例子很适合排查不同程序之间的对齐差异。
场景
查看这项工具在不同工作与生活流程中的用法。
学习多表替换的人可以逐列对照明文、循环密钥和密文,用输出验证模 26 加减是否写对,同时观察相同字母为何会得到不同结果。
题目已经给出密钥和经典重复密钥规则时,可快速加密题面或检查手算答案。若题目采用自动密钥、Beaufort 变体或自定义字母表,则不能直接按这里的结果作答。
开发者可使用 HELLO/KEY、混合大小写和含标点文本作为测试向量,重点核对大小写保留、非字母跳过及密钥位置推进规则。
问答
集中解答高频疑问与容易混淆的问题。
先确认密钥里是否至少有一个英文字母。空密钥、只含数字或符号的密钥不会产生有效位移;密钥全部由 A 组成时位移为 0,也会保持原文。若输入内容本身没有 ASCII 英文字母,同样不会发生变化。
可以输入,但这些字符不会成为密钥的一部分。工具只保留密钥中的 A-Z/a-z,因此 密钥 K-2! 最终只剩 K;为避免误解,建议直接填写纯英文字母密钥。
先比较变体和字符对齐规则。这里采用 A=0 的经典重复关键词公式,只处理 ASCII 英文字母,非字母原样保留且不推进密钥;若对方会删除标点、让标点占用密钥位、合并大小写、扩展到中文,或使用自动密钥与 Beaufort 规则,输出都会不同。
中文可以出现在输入中,但不会被加密,只会原样保留。夹在中文中的英文字母仍会按顺序使用密钥,所以输出可能只改变其中的英文片段。
须知
使用前了解适用范围、结果限制与必要提醒。
维吉尼亚密码适合教学、古典密码练习和已知规则的结果核对,不适合保护账号口令、身份信息、商业文件或通信内容。
推荐
查找相关工具、专题与可用的 API 能力。