PPK ↔ PEM Converter

Convert SSH private keys between PuTTY .ppk and OpenSSH/PEM (RSA & Ed25519) — locally in your browser.

转换完全在你的浏览器中使用 Web Crypto API 运行——你粘贴的私钥绝不会离开你的设备,也不会上传任何内容。请将该密钥视为机密并妥善保存。

需要一对全新的密钥对?试用 SSH 密钥生成器。

关于 PPK ↔ PEM Converter

这款 PPK 转 PEM 转换器可在 PuTTY 的 .ppk 格式与 OpenSSH/PKCS#8 PEM 之间双向转换 SSH 私钥,全部在你的浏览器中完成。粘贴一个密钥,方向会被自动检测:PuTTY .ppk 会变成可与 ssh -i 配合使用的 PEM,而 PEM(BEGIN OPENSSH/RSA/PRIVATE KEY)会被重新打包成可用于 PuTTY、WinSCP 或 FileZilla 的 PuTTY .ppk v2。它处理 RSA 和 Ed25519 密钥,并让你选择 OpenSSH 或 PKCS#8 输出。它面向在 Windows 与 Linux/macOS 工具链之间切换、需要正确密钥格式而又不想安装 PuTTYgen 的开发者和系统管理员。其构建使用 Web Crypto API 在本地运行,因此你的私钥保留在你的设备上。

功能特性

如何使用 PPK ↔ PEM Converter

  1. 将你的 PuTTY .ppk 或 PEM 私钥粘贴到字段中。
  2. 如果转换的是 .ppk,请选择 OpenSSH 或 PKCS#8 输出格式。
  3. 让工具自动检测方向并转换。
  4. 复制结果或以建议的文件名下载。
  5. 对于 PEM 输出,在使用 ssh -i 之前运行 chmod 600。

示例

输入

PuTTY-User-Key-File-2: ssh-ed25519
Encryption: none
Comment: me@laptop
Public-Lines: 2
…

输出

-----BEGIN OPENSSH PRIVATE KEY-----
b3BlbnNzaC1rZXktdjEAAAAABG5vbmU…
-----END OPENSSH PRIVATE KEY-----

一个 PuTTY Ed25519 .ppk 被转换为 OpenSSH PEM 私钥。

常见错误与故障排除

常见问题

什么是 PPK 转 PEM 转换器?
它在 PuTTY 的 .ppk 格式与 ssh、scp 及大多数 Linux/macOS 工具使用的 OpenSSH/PKCS#8 PEM 格式之间双向转换 SSH 私钥——并可反向转换——使同一个密钥能在两套工具链中通用。
支持哪些密钥类型?
RSA 和 Ed25519 私钥,双向均支持。ECDSA 或 DSA 等其他算法这里不支持;对于这些请使用 PuTTYgen 或 ssh-keygen。
OpenSSH 和 PKCS#8 输出有什么区别?
OpenSSH 是用于 ~/.ssh 和 ssh -i 的现代格式。PKCS#8 是一种较旧、广泛兼容的 PEM,许多库和工具都接受。除非有东西明确需要 PKCS#8,否则请选择 OpenSSH。
它能将 PEM 转换回用于 WinSCP 的 .ppk 吗?
可以。粘贴一个 PEM 私钥,它便会生成一个可在 PuTTY、WinSCP 或 FileZilla 中加载的 PuTTY .ppk v2。
我的私钥会被上传到任何地方吗?
不会。转换完全在你的浏览器中使用 Web Crypto API 运行。你的私钥绝不会离开你的设备,也不会发送任何内容到 ArrayKit。
为什么我的加密密钥无法转换?
暂不支持受密码短语保护的密钥。请先移除密码短语并转换,然后用 PuTTYgen 或 ssh-keygen 为输出重新添加密码短语。

相关工具

全部 ArrayKit 工具