SSH 密钥生成
SSH Key Generator
生成带注释的 OpenSSH 密钥对,并显示指纹。私钥不带口令导出,需要的话用 ssh-keygen -p 自己加。
同一个密钥生成器,打开在它的 OpenSSH 标签上:一行 `authorized_keys` 和一个配对的 `openssh-key-v1` 私钥,在浏览器里生成。默认 Ed25519,主机需要的话还有 ECDSA 和 RSA。
小、快、现代。2014 年起就是 SSH 的默认值。
会出现在 OpenSSH 公钥那一行的末尾。
crypto.subtle.generateKey)在本标签页里生成,不会离开这里——不传输、不记录、不存储。输出格式在本项目的测试里与 OpenSSH 本身逐一核对过。条件允许的话,请在将要保管私钥的那台机器上生成;在浏览器标签页里存在过的密钥,就是在那个标签页的内存里存在过。怎么用
设置注释
它放在公钥那一行的末尾——习惯上是 `you@machine`。两年后在一个有十几条记录的 `authorized_keys` 里找到对的那一行,靠的就是它。
把公钥复制到服务器
一行,追加到主机上的 `~/.ssh/authorized_keys`。私钥留在你这里。
保存私钥并锁好它
下载为 `id_key`,然后 `chmod 600 id_key`——ssh 拒绝其他账户能读的私钥——再 `ssh-keygen -p -f id_key` 加口令。
常见问题
为什么私钥没有加密?
加密一个 `openssh-key-v1` 密钥需要 bcrypt-pbkdf,在这里做意味着声称一个这个页面无法对每一组参数都对照 OpenSSH 验证的 KDF 实现。在本地用 `ssh-keygen -p` 加口令用的是 OpenSSH 自己的代码,严格来说更好。
我真的该在浏览器里生成 SSH 密钥吗?
对一台临时主机、一个实验环境,或者手边没有终端的时候,这是合理的便利——什么都不传输,格式在这个项目的测试里对照 `ssh-keygen` 本身验证过。打开生产环境的那把密钥,请在将要保管它的机器上用终端生成。
服务器还是在要密码。
通常是权限:主机上 `~/.ssh` 必须是 700、`authorized_keys` 是 600,你这边私钥是 600。`ssh -v` 会说是哪一项检查失败了,而且几乎总是这一个。
一把密钥能用于几台服务器吗?
能,而且这很常见。代价是爆炸半径:一把泄露的私钥打开它装过的所有地方。每个环境一把——笔记本到生产、CI 到预发——每把只多一行,却限制了损失。
可以从这些接进来
接下来
这些工具吃得下当前工具的产出,结果可以直接送过去。
证书解码
Certificate Decoder
解析 PEM 或 DER 格式的证书和 CSR,显示主体、SAN、有效期、密钥用途和证书链线索。
密钥对生成
Key Pair Generator
生成 RSA、ECDSA 或 Ed25519 密钥对,导出为 PEM、JWK 或 OpenSSH。
随机密钥生成
Random Key Generator
按指定长度生成密码学随机字节,输出十六进制、Base64 或 Base64URL,用作应用的 secret。
Base64 编码解码
Base64 Encoder & Decoder
对文本和文件做 Base64 与 Base64URL 编解码,UTF-8 处理正确。
curl 转代码
curl to Code
把一条 curl 命令转成 fetch、axios、Python requests、Go、PHP 或 PowerShell 代码。
文本哈希计算
Text Hash
算出字符串的 MD5、SHA-1、SHA-256、SHA-384、SHA-512 和 CRC-32,输出可选大写或 Base64。