🔑 Autokey 密码
使用 Autokey 密码加密解密文本。密钥以明文自动扩展,避免重复密钥循环。
关于 Autokey 密码
Autokey 密码(也称自耦密码)是一种与 Vigenère 密切相关的多表密码。其决定性特征是密钥不是简单重复的——在初始引子密钥消耗完毕后,明文本身被追加以形成运行密钥。这消除了使 Vigenère 容易受到 Kasiski 分析的短重复循环。本工具完全在浏览器中运行——不会上传任何数据。
工作原理
- 加密 —— Ci = (Pi + Ki) mod 26。前 L 个字母的 Ki 来自引子密钥;之后 Ki 等于 Pi−L(前 L 个位置的明文)。
- 解密 —— Pi = (Ci − Ki) mod 26。随着解密的进行,恢复的明文被反馈到密钥流中。
- 仅转换 A–Z 字母;保留大小写,非字母字符保持不变。
- 由于密钥永不重复,破坏 Vigenère 的周期性模式不会出现。
使用场景
- 研究超越简单 Vigenère 的高级多表密码。
- 展示运行密钥如何抵抗 Kasiski 和 Friedman 分析。
- 构建教育性密码学练习。
- 对比 Autokey 方法与一次性密码本理想。
常见问题
Autokey 密码安全吗? 它比 Vigenère 更强,但仍可破解。由于密钥派生自明文,对明文语言的统计攻击可以恢复引子和消息。
什么是引子? 引子是你提供的短初始密钥。一旦它耗尽,明文就接管作为密钥。
为什么解密必须逐步恢复明文? 因为每个后续密钥字母取决于先前恢复的明文字母,过程必须从左到右顺序进行。
这个工具会上传我的文本吗? 不会。所有加密解密都在本地浏览器中完成。