SSH 公钥指纹计算器

粘贴 id_rsa.pub、authorized_keys、 known_hosts 或 SSH 证书,立刻得到与 ssh-keygen -l 完全一致的 SHA256 / MD5 指纹、randomart 图形、密钥位宽与注释。 支持多行批量、RFC 4716 格式与 AWS EC2 风格指纹,全部在浏览器本地计算,密钥不会上传。

示例:
指纹比对(可选)
识别结果Ed25519256 bit

SHA256 指纹

SHA256:Eb8RkxK/6gcBFZQn+2O6AJur6jxNyW/f4RzaEye+LXw

MD5 指纹

fd:ab:58:4e:2c:0c:3e:f4:74:8a:aa:20:3f:3f:4e:00

ssh-keygen -l -E md5

算法

ssh-ed25519

注释

deploy@ci

主机名 / 前缀

ssh-ed25519

randomart

+--[ED25519 256]--+
|                 |
|                 |
|E                |
| .       .       |
|  .   o S o      |
|   . o * + .     |
|o   . + = + .    |
|.o.... . *   .   |
|  o=+.  . o..    |
+----[SHA256]-----+

等价命令

ssh-keygen -l -E sha256 -f ~/.ssh/id_xxx.pub
怎么用
  1. 在本机执行 cat ~/.ssh/id_ed25519.pub,或直接从 authorized_keys / known_hosts 里复制一行。
  2. 粘进上面的输入框,工具会立刻算出 SHA256 指纹、MD5 指纹、randomart 与密钥位宽。
  3. 首次登录服务器时如果终端弹出「主机指纹确认」,把服务器显示的指纹填进「指纹比对」,一致再输入 yes。
常见问题

为什么和 ssh-keygen -l 的结果一样?

指纹就是对公钥原始字节做哈希:SHA256 指纹是 base64(sha256(公钥)) 去掉尾部等号,MD5 指纹是摘要的冒号十六进制,randomart 由 MD5 摘要在 17×9 网格上行走画出, 与 OpenSSH 的实现逐字节对齐。证书按 OpenSSH 口径取「内嵌公钥」计算。

粘贴私钥行不行?

不行,也不建议。指纹针对的是公钥;想从私钥得到指纹,先在本机跑 ssh-keygen -y -f ~/.ssh/id_rsa > id_rsa.pub 再粘贴导出的公钥。私钥一旦贴进网页就有泄露风险。

AWS EC2 的指纹为什么和 SHA256 对不上?

AWS 控制台对 RSA 密钥用的是另一套口径:对 X.509 编码的公钥做 SHA-1,再写成冒号十六进制。 本工具单独列了一行「AWS EC2 风格指纹」方便和控制台核对,仅支持 RSA。

我的密钥会被上传吗?

不会。解析、哈希、画图全部在你的浏览器里完成,公钥不会发送到任何服务器。 不过公钥虽然可以公开,建议分享前还是确认注释里没有内网账号或主机名等敏感信息。