PEM to PPK Converter

Validate PEM keys and get step-by-step instructions to convert to PuTTY PPK format.

Client-side only — nothing leaves your browser

What is PEM to PPK Conversion?

PEM (Privacy-Enhanced Mail) and PPK (PuTTY Private Key) are two different formats for storing SSH private keys. PEM is the standard format used by OpenSSH on Linux and macOS, while PPK is the proprietary format used by PuTTY and related Windows tools like WinSCP and FileZilla. When you receive a .pem file (common with AWS EC2 instances) and need to use PuTTY on Windows, you must convert the key to PPK format first.

Conversion Methods Compared

MethodPlatformBest For
PuTTYgen GUIWindowsOne-time conversions, visual workflow
puttygen CLIWindows, macOS, LinuxAutomation, scripting, batch conversion
WinSCP built-inWindowsAuto-converts when you load a PEM file

Frequently Asked Questions

What does PPK stand for?
PPK stands for PuTTY Private Key. It's the file format created by Simon Tatham for the PuTTY SSH client on Windows. PPK files (both version 2 and version 3) store the private key, the corresponding public key, and metadata like the key type and encryption method in a single structured text file. PPK version 3 (introduced in PuTTY 0.75) uses stronger key derivation (Argon2) compared to version 2's SHA-1-based approach.
What is the difference between PEM and PPK?
PEM (Privacy-Enhanced Mail) is a base64-encoded format with distinctive '-----BEGIN/END-----' markers, used by OpenSSH and OpenSSL on Linux, macOS, and most cloud platforms. PPK (PuTTY Private Key) is a proprietary format used by PuTTY and Windows-based SSH tools (WinSCP, FileZilla). PEM stores the key in a single encoded block, while PPK stores public and private components separately in a structured text file with additional metadata. The cryptographic key data is the same — only the container format differs.
Can I use a PEM file directly with PuTTY?
No, PuTTY cannot read PEM files directly — it only accepts its own PPK format. When you try to load a PEM file in PuTTY, you'll get an error. However, some newer PuTTY-based tools (like the latest WinSCP) can auto-convert PEM files when you load them. For PuTTY itself, you must convert with PuTTYgen first: open PuTTYgen, go to Conversions > Import key, select your PEM file, then Save private key.
How do I convert PEM to PPK on Mac?
Install PuTTY tools via Homebrew: 'brew install putty'. Then convert with: 'puttygen key.pem -o key.ppk'. If you need the PPK for a Windows machine, transfer the resulting .ppk file. Note that on macOS, you typically don't need PPK at all — the built-in ssh command uses PEM/OpenSSH format natively. PPK is only needed if you specifically use PuTTY on Windows.
How do I convert PEM to PPK without PuTTYgen?
PuTTYgen (the command-line version 'puttygen') is the only reliable tool for creating PPK files, as PPK is PuTTY's proprietary format. On macOS, install it with 'brew install putty', then run 'puttygen key.pem -o key.ppk'. On Linux, install with 'apt install putty-tools' or 'yum install putty'. There is no built-in OpenSSH command to create PPK files — you need the puttygen tool.

Related Tools

Need to manage SSH connections?

SSH Workbench lets you connect, browse files, and manage servers visually.

Try SSH Workbench Free