跳到正文
Cipherloom密码织机

CIPHER/SUBSTITUTION/ATBASH

阿特巴什(镜像替换)

发布 2026 年 9 月 2 日 · · 5 分钟阅读

阿特巴什把字母表对折,让 A 贴 Z、B 贴 Y、C 贴 X。它根本没有密钥——知道这个方法本身就是全部秘密。它是“替换字母表”最干净的示例,而且自逆,这一性质是后来的密码花大力气去追求的。

时代
古典时代
类型
替换
密钥空间
1 key
难度
入门
密文栅格图版:阿特巴什(镜像替换)
图版 atbash-cipher · 替换

I现象

把 26 个字母排成一行,再在下方倒着排一遍,竖向对读。

A B C D E F G H I J K L M

Z Y X W V U T S R Q P O N

LOOM 变成 OLLN,BRASS 变成 YIZHH。没有任何移位,一切都是对折。

对折有一个明显的副作用:字母表中央的字母只与近邻互换。M 与 N 互换,L 与 O 互换。字母离中央越远,走得越远——A 要走满 25 步到 Z,而 M 只走一步。

明文密文移动距离
AZ25
GT13
MN1
NM1
ZA25

II密钥空间

零。只有一种映射,任何知道方法的人都拥有它。

值得在此停一下,因为“密钥”这个概念刚刚被证明是可选的。一个密码可以定义完备、完全可逆、彻底公开,它唯一的防护就是大多数人从没听说过它。

如果一个密码的秘密是“没人读过说明书”,那它的密钥空间是用“无知”来度量的。

同类错误在现代的等价物:把后台藏在未公开的网址,或依赖一个未公开的 API 端点。阿特巴什的密钥空间和阿特巴什的威胁模型都完整地活到了今天。

III加密步骤

  • 把明文写成大写。
  • 写下 A-Z,再在其下写下倒序字母表。
  • 对每个明文字母,在上行找到它,取正下方的字母。
  • 空格与标点保持不变。
  • 记录结果。由于密码自逆,同一套流程就是解密流程——不需要学第二张表。

IV解密步骤

  • 做同一次对折。由构造可知 Atbash(Atbash(x)) = x。
  • 在采信之前先确认结果读得通——折叠本身没有歧义,所以失败意味着你抄错了字母,而不是密钥错。
  • 若文本很短且歧义大,先检查字母表中央:M/N 与 L/O 的互换肉眼即可验证。

V弱点

它只有一个替换字母表。 所有单表攻击原封不动地适用:数字母、对频率画像、读消息。

对折会泄露结构。 靠近字母表中央的字母几乎不动,所以大量含 M 和 N 的词保留了相当多的形状。MNMN 加密成 NMNM——攻击者不需要知道映射也能认出来。

自逆不是强度。 自己是自己的逆是一个优雅性质(同一把工具既锁又开),但它与安全性无关。ROT13 也有同样的性质,价值也一样。

它极容易被识别。 密文中大量成对出现的 A/Z、B/Y 是“有镜子参与”的强烈信号——这恰恰是真正的密码分析者在找的东西:不是消息,而是方法。

VI实战挑战

密文

ZMWGSVOLLNRHGSVPVB

提示: 没有密钥。把字母表首尾对折,竖向对读。

展开答案

明文

AND THE LOOM IS THE KEY

本条目为历史与教育内容。相关描述不是绕开任何在用系统安全措施的指引,也不构成专业建议。

·史料

名字是希伯来字母名 Aleph、Tav、Bet、Shin 的拼合——即希伯来字母表的首、末、次、倒数第二四个字母,也就是把这次折叠直接写出来。该手法见于《希伯来圣经》(耶利米书 25:26 与 51:41)、塔木德与卡巴拉文献,以及中世纪的注释传统。它也在罗马的速记符号系统和希腊字母表中独立出现,这说明“把字母表对折”是一个会不止一次被人想到的念头。

·继续读

阿特巴什在两处留存下来。第一处是经文:《耶利米书》用 Sheshach(ששך)指巴比伦、用 Lev Kamai(לב קמי)指迦勒底,二者正是由这一次折叠产生的——名字本身来自希伯来字母 Aleph-Tav-Bet-Shin,即首字母、末字母、第二字母和倒数第二字母。

第二处是 ROT13,同一种思路的凯撒版本:一个固定、公开、诚实的变换,用来挡住“不好奇的人”,而不是挡住攻击者。

下一台织机:scytale 完全抛开替换,改为重排消息,而不是给字母改名。

+相关织线