纯前端 SSH 密钥工具箱 — 浏览器本地运算,数据零上传
| 功能 | 描述 |
|---|---|
| 🔑 密钥生成 | 支持 RSA 2048/4096、ECDSA P-256/P-384/P-521、Ed25519;可选密码短语加密私钥 |
| 🔍 密钥解析 | 解析任意 SSH 公钥,显示类型、长度、指纹等详细信息,严格校验格式 |
| 🧮 指纹计算 | 计算 SHA256 和 MD5 指纹,支持完整公钥或纯 Base64 blob 输入 |
| 🔄 格式转换 | OpenSSH 公钥 ↔ PEM(SPKI)格式互转,支持 RSA / ECDSA / Ed25519 |
| 📤 提取公钥 | 从 OpenSSH/RSA PEM 私钥中提取对应公钥 |
- 纯前端运算:所有操作在浏览器本地完成,私钥永远不离开你的设备
- 数据零上传:无后端服务,无日志,无追踪
- 可离线使用:构建后无需网络即可运行
- 开源可审计:代码完全公开,可自行部署
支持 6 种算法,可选密码短语加密私钥(bcrypt-pbkdf + AES-256-CTR),实时强度评估
严格校验 Blob 边界与字段,解析类型、长度、安全级别、SHA256/MD5 指纹
支持粘贴完整公钥或纯 Base64 blob,同时输出 SHA256(现代)和 MD5(旧版兼容)指纹
OpenSSH 公钥 ↔ PEM SPKI 互转,覆盖 RSA、ECDSA P-256/P-384/P-521、Ed25519
从私钥(OpenSSH / RSA PEM / PKCS#8)中提取 authorized_keys 格式公钥
# 安装依赖
npm install
# 本地开发
npm run dev
# 构建生产版本
npm run build- 框架:Vue 3 + TypeScript + Vite
- UI:Element Plus + Tailwind CSS v4
- 密码库:
node-forge— RSA 密钥生成与 PEM 格式处理@noble/ed25519— Ed25519 密钥生成(RFC 8032)- Web Crypto API — ECDSA 密钥生成与 SHA256 指纹计算
bcrypt-pbkdf— OpenSSHbcryptKDF(私钥加密)
生成私钥时可设置密码短语(Passphrase):
- 不设置:输出明文 OpenSSH 私钥(不推荐,文件泄露即意味着访问权限暴露)
- 设置后:使用 OpenSSH 标准加密格式,与
ssh-add、ssh-keygen等工具完全兼容
KDF: bcrypt-pbkdf(rounds=16)
Cipher: aes256-ctr
私钥(输入)
-----BEGIN OPENSSH PRIVATE KEY----- # OpenSSH 新格式(RSA/ECDSA/Ed25519)
-----BEGIN RSA PRIVATE KEY----- # RSA PKCS#1 PEM
-----BEGIN PRIVATE KEY----- # PKCS#8 PEM
公钥(输出/输入)
ssh-rsa AAAA... # RSA 公钥(authorized_keys 格式)
ssh-ed25519 AAAA... # Ed25519 公钥
ecdsa-sha2-nistp256 AAAA... # ECDSA P-256 公钥
-----BEGIN PUBLIC KEY----- # PEM SPKI 格式
| 功能 | 要求 |
|---|---|
| 密钥生成 / 指纹计算 | Chrome 90+ / Firefox 90+ / Safari 15+ |
| Ed25519 PEM 导出 | Chrome 130+ / Firefox 130+ / Safari 17+ |
| ECDSA 操作 | 需 HTTPS 或 localhost 环境 |
npm run build
# 将 dist/ 目录部署到任意静态托管:
# GitHub Pages / Vercel / Netlify / Cloudflare PagesMIT © nanjingya




