piapia123
zh

Cisco Type 7 密码加解密

编码

所有处理都在浏览器本地完成,数据不上传服务器

输入
把文件拖到这里可直接载入
输出

处理 Cisco IOS 配置里的 `password 7 …`。⚠️ 先说清楚:Type 7 不是加密,它是与一个写死在 IOS 镜像里的密钥做异或 —— 拿到这串字符的任何人都能立刻还原出明文。Cisco 自己的文档写明,它的用途只是挡住从背后看屏幕的人。这里做的事情就是把它还原出来:接手一台老设备、或者从备份配置里找一个服务的密码时用得上。整行粘贴也行,`password 7 0822455D0A16`、`username bob password 7 0822455D0A16` 都能直接认出来。

功能

  • 两个方向:配置串 → 明文、明文 → 配置串
  • 整行粘贴可用 —— 自动剥掉 `password 7` 前缀、引号与首尾空白
  • 加密时可指定起始偏移(Cisco 取 0–15 的随机值)
  • 用完整的 53 字节密钥,超过 26 个字符的密码也能正确还原
  • 中文等非 ASCII 明文按 UTF-8 字节处理,往返无损

使用方法

  1. 从设备配置里复制那一串(连同 `password 7` 一起复制也行)
  2. 粘贴进输入框,明文立刻出现在结果里
  3. 要反向生成时,把方向切成「加密」
  4. 点「复制」取走结果

常见问题

Type 7 和 `enable secret` 是一回事吗?
不是,安全性差得远。配置里的 `enable secret`(Type 5)用的是单向哈希(早期是 MD5,现在是 scrypt 或 bcrypt),不可逆;而这里的 `password 7`(Type 7)是可逆的异或,任何人拿到配置就能还原。当年保留这种可逆形式,是因为 CHAP 之类的协议需要拿到明文密码去算摘要 —— 代价就是它形同虚设。看到 `password 7` 就该知道:那台设备的配置里带着明文密码。
为什么有些在线工具解不了长密码?
因为它们只用了密钥的前 26 字节。完整的密钥是 53 字节:`dsfd;kfoA,.iyewrkldJKDHSUBsgvca69834ncxv9873254k;fg87`。26 字节在短密码上照样能跑对(索引走不到 26),于是这个错误藏得很深 —— 直到有人解一条 26 个字符以上的密码,从第 27 个字符起会全部解错。本工具用完整密钥,并有专门的测试盯着这个边界。
加密时的「起始偏移」是什么?
它是密钥的起点,写成密文开头的两位十进制数。Cisco 生成时取 0–15 的随机值,所以同一个密码在每台设备上编出来都不一样 —— 但它不提供任何安全性,只是让同一份配置里的多个密码看起来不同而已。要复现某台设备的输出,就得知道它当时用的偏移,那个值就在密文的前两位。

相关工具