Перейти к содержимому
ecdsa.com

PFX / PKCS #12 Inspector — инспектор PFX / PKCS #12

Выберите или перетащите файл .pfx / .p12 и введите пароль. Файл расшифровывается прямо на этой странице: вы увидите результат проверки целостности, каждый пакет (SafeBag), сертификат и ключ, шифрование каждого из них и сможете экспортировать в PEM сертификаты — а по запросу и ключ.

Файл открывается в браузере: сам файл, его пароль и ключи никогда не покидают эту страницу, а PFX-файлы никогда не попадают в ссылки для общего доступа.

В PFX-файле обычно хранится закрытый ключ. Файл открывается только в браузере, и ссылки для общего доступа к нему эта страница не предлагает.

файл .pfx · .p12 · base64

Перетащите файл сюда или

Файлы читаются в браузере и никуда не отправляются.

Оставьте пустым, если у файла нет пароля

Пароль используется только на этой странице: он нигде не сохраняется и никуда не отправляется.

What a .pfx or .p12 file is

PKCS #12, published as RFC 7292, is the container format behind .pfx and .p12 files: a certificate together with its private key and, usually, the chain of CA certificates above it, protected by a password. Windows, macOS keychains, Java keystores, IIS, Azure and most mail clients import and export it, which is why it is the format you receive when a certificate is bought for a Windows server or a code-signing token is backed up.

Inside, the file is a set of nested envelopes. The outer structure holds an "authenticated safe" — a sequence of containers, each either plain or encrypted with a password-based scheme. Containers hold "safe bags": a certificate bag, a private key bag (encrypted again on its own, as a PKCS #8 EncryptedPrivateKeyInfo, or rarely in the clear), CRL and secret bags, or further nested bags. Bags carry attributes such as a friendly name and a local key ID that pairs a key with its certificate. Over all of it sits an integrity check: a password-based MAC, or in rare files a signature.

What the inspector checks

Drop the file or choose it, type the password and open it. The inspector then:

  • checks the integrity MAC. It is computed with the PKCS #12 key derivation of RFC 7292 Appendix B, or with PBMAC1 from RFC 9579 in newer files. A matching MAC proves both the password and that the file is unchanged. Writers disagree about the empty password — some encode it as a two-byte terminator, some as nothing at all — so both forms are tried. When the contents decrypt but the MAC does not match, the file was modified or written with a different MAC password.
  • decrypts every container and key. Modern files use PBES2 with PBKDF2 and AES-256 (RFC 8018), decrypted with your browser's WebCrypto. Older files — OpenSSL 1.x defaults, openssl pkcs12 -legacy, many Windows exports — use the PKCS #12 schemes with 3DES or 40-bit RC2; those are decrypted with a small cipher module that loads only when such content is present. Each container and bag shows its scheme, cipher, key-derivation hash and iteration count, rated modern, legacy or broken: 40-bit RC2 can be brute-forced in minutes, so whatever it protects is effectively unprotected.
  • pairs keys with certificates. Each private key's public half is derived and compared with the public key of every certificate, so you see which certificate the key belongs to — or that a key has no certificate, which is the usual cause of "key values mismatch" when the file is imported. Mismatched local key IDs, expired certificates, low iteration counts and SHA-1 MACs are reported too.

Exporting PEM

Every certificate can be copied or downloaded as PEM, one by one or as a single bundle in file order — the equivalent of openssl pkcs12 -nokeys. The private key is not displayed by default; if you need it as an unencrypted PKCS #8 PEM file for a server that cannot read PKCS #12, reveal it explicitly. It is created from the decrypted bytes in this page and stays in this page.

What runs where

The file, the password and the decrypted keys exist only in your browser tab. The page makes no request with any of them, and it offers no share link: a PKCS #12 file is too large for a URL and almost always contains a private key. If you have pasted a key or a password into another website before, treat them as compromised and reissue the certificate. To split a PEM bundle you exported, use the PEM bundle splitter; to inspect one of the certificates in depth, the certificate decoder.