SSL Certificate Format Converter
FreeConvert SSL/TLS certificates between PEM and DER encoding, bundle certificates into or extract them from a PKCS#7 (.p7b) file, and package a certificate and private key into a password-protected PKCS#12 (.pfx / .p12) file or extract them back out, all running entirely in your browser.
Runs entirely in your browser using node-forge. Your files and keys are never uploaded anywhere.
Input certificate
Output
Recent Activity
Visible to everyone. Last 20 uses across all visitors, newest first.
Extracted a certificate and key from a .pfx file
2 hours ago
Packaged a certificate and key into a .pfx file
2 hours ago
Extracted 2 certificate(s) from a PKCS#7 bundle
2 hours ago
Bundled 2 certificate(s) into a PKCS#7 file
2 hours ago
Converted a certificate to PEM
2 hours ago
Converted a certificate to DER
2 hours ago
What this tool does
This tool converts SSL/TLS certificates between PEM and DER encoding, bundles certificates into or extracts them from a PKCS#7 (.p7b) file, and packages a certificate and private key into a password-protected PKCS#12 (.pfx / .p12) file or extracts them back out, all without uploading your files anywhere.
How It Works
Every format here, PEM, DER, PKCS#7, and PKCS#12, encodes the same underlying ASN.1 data structures defined by the X.509 and PKCS standards; this tool parses whichever format you provide into that structure using the node-forge library, then re-serializes it into the format you asked for. For PKCS#12, creating the file additionally encrypts the private key and certificate together under the export password you choose, using the same 3DES-based scheme most tools and operating systems expect, while extracting a PKCS#12 file first verifies and decrypts it with the password you supply before pulling out the certificate, key, and any chain certificates it contains.
Problems it solves
- Converting a certificate exported from a Windows or Java system (DER) into the PEM format Linux web servers expect, or the other way around.
- Combining a server certificate with its intermediate CA certificates into a single .p7b file for easier distribution or import.
- Packaging a certificate and private key into a .pfx file to import into IIS, a Java keystore, or a browser.
- Pulling the individual certificate and private key back out of an existing .pfx file when you only have the bundle but need the separate PEM files.
Frequently asked questions
›What is the difference between PEM and DER?
Both encode the exact same certificate data; PEM is a Base64 text format wrapped in -----BEGIN CERTIFICATE----- lines, commonly used by OpenSSL, Apache, and nginx on Linux, while DER is the raw binary encoding of the same ASN.1 structure, more common on Windows and in Java keystores. Converting between them never changes what the certificate says, only how it is packaged as bytes.
›What is a PKCS#7 (.p7b) file for?
A .p7b file bundles one or more certificates, typically a server certificate together with its intermediate CA certificates, without including any private key, which makes it a convenient way to hand a certificate chain to someone or import a chain into a Windows or Java certificate store in one step.
›What is a PKCS#12 (.pfx / .p12) file for?
A .pfx (also called .p12) file is a password-protected container that bundles a private key together with its matching certificate, and optionally the CA chain, in a single encrypted file; it is the format most commonly required when importing a certificate and key together into IIS, a Java keystore, a browser, or a mobile device.
›Is it safe to create or extract a .pfx here?
Yes: the entire process, reading your certificate and key, encrypting or decrypting the PKCS#12 container, runs locally in your browser using the node-forge library, and nothing you paste or upload is ever sent to a server.
›My private key is encrypted, what do I do?
Paste it exactly as it appears in the file, including the ENCRYPTED header, and enter its existing passphrase in the "Private key passphrase" field before creating the .pfx; this is a separate password from the new export password you choose for the .pfx file itself.
›Why does my bundle only show one certificate after I pasted two?
Make sure each certificate block, from -----BEGIN CERTIFICATE----- to -----END CERTIFICATE-----, is complete and that you pasted the full text of both; the tool automatically detects every complete PEM certificate block in the text box, so a truncated or malformed block will simply be skipped.
Related Tools
Text
Self-Signed SSL Certificate Generator
Generate a real, working self-signed TLS certificate and its matching private key right in your browser using node-forge, with Subject Alternative Names, configurable key size and validity period, and ready-to-download .crt and .key files.
FreeText
SSL Certificate & Key Pair Checker
Check whether an SSL/TLS private key, certificate, and optional CSR actually belong to the same key pair, decode and view the certificate's subject, issuer, validity, SANs and fingerprints, all running entirely in your browser.
FreeText
SSL Certificate Viewer
Decode one or more PEM or DER X.509 certificates and view every field in plain language: subject, issuer, validity, fingerprints, public key details, and every standard extension including Key Usage, Subject Alternative Names, and Authority Information Access, all running entirely in your browser.
FreeText
Add Prefix And Suffix
Add the same prefix and/or suffix text to every line of a list, right in your browser.
FreeText
Add Text Each Line
Insert the same text into every line, at the start, end, an exact position, or next to a match, right in your browser.
FreeText
Adler32 Checksum Calculator
Calculate the Adler-32 checksum of text or a file, right in your browser.
FreeText
Anagram Generator
Find English anagrams and shorter words you can make from any word, right in your browser.
FreeText
API Tester
Send HTTP requests to any API endpoint and inspect the response, right in your browser.
Comments (0)
Found this tool useful? Leave a comment, share a tip, or tell us how we can make it better.
No comments yet. Be the first to share your thoughts!