栅栏密码
通过将文本按“栅栏”分组并重新拼接,实现简单的古典加密或解密。
栅栏密码加解密
栅栏密码使用指南
📌 简介
栅栏密码(Rail Fence Cipher)是一款在线古典密码加解密工具。它通过将明文中的字母按“之”字形(W型)交替分配到不同行(栏)中,然后按行读取拼接,从而打乱字母顺序生成密文。本工具支持自定义栏数,并完全在浏览器本地执行运算,是密码学初学者理解古典替换算法的绝佳教具。
📖 栅栏密码的原理
以明文 "WEAREDISCOVEREDFLEEATONCE" 和栏数 3 为例。加密时,系统会画一个 3 行的栅栏,将字母依次从上到下、再从下到上斜着填入各个位置。填完后,按第一行、第二行、第三行的顺序把字母读出来,就得到了密文。解密则是加密的逆过程,先根据密文长度和栏数计算出栅栏的轨迹,再将密文按行填入并还原明文。栏数越大,打乱的程度越高,但通常只需 2-3 栏就能达到非常明显的混淆效果。
💼 常见应用场景
- CTF 夺旗赛:作为最基础的 Crypto 题型,常用于新手入门训练。
- 趣味解谜:用于密室逃脱、桌游或朋友间的密码留言。
- 密码学教学:直观演示“置换密码”与“替换密码”的区别。
⚙️ 使用步骤
- 设置你想使用的栏数(如 2 栏或 3 栏)。
- 选择“加密”或“解密”模式。
- 在左侧输入框输入文本,支持空格和标点符号。
- 右侧会实时显示转换结果,点击“复制结果”即可保存。
⚠️ 注意事项
- 本算法不区分大小写,空格和标点符号也会被视作普通字符一同打乱。
- 解密时必须提供与加密时完全相同的栏数,否则将无法还原明文。
- 栅栏密码的安全性极低,在现代密码分析面前很容易被暴力破解,绝不可用于保护真实敏感数据。
❓ 常见问题 (FAQ)
Q: 为什么解密出来的结果和我原来加密的内容不一样?
A: 请检查栏数是否一致。解密需要的栏数必须和加密时完全相等,多一栏或少一栏都会导致解码出乱码。
Q: 支持中文吗?
A: 支持。工具按字符(Code Point)级别进行运算,中文字符和 emoji 也会被视作独立单元参与栅栏分配。