Wat is het PFX-bestandsformaat?
.pfx-bestanden zijn gekoppeld aan de PKCS #12 cryptografiestandaard, oorspronkelijk ontwikkeld door RSA Laboratories en nu beheerd door RFC 7292.
Bestanden met de extensie .pfx slaan versleutelde en digitaal ondertekende cryptografische objecten op in een binaire DER-gecodeerde container. Elk .pfx-bestand is onderverdeeld in zogenaamde SafeBags, die ook onafhankelijk kunnen worden versleuteld en ondertekend. De PKCS #12-standaard verdeelt SafeBags verder in typen die geschikt zijn voor het opslaan van privésleutels, X.509-certificaten, certificaatketens en andere beveiligingsgegevens.
.pfx wordt het meest gebruikt om een privésleutel samen met de bijbehorende certificaatketen te bundelen in één met een wachtwoord beveiligd bestand. Typische toepassingen zijn het exporteren van TLS/SSL-certificaten tussen servers, het distribueren van identiteiten voor code-ondertekening en het overdragen van S/MIME-gegevens tussen apparaten.
.pfx en .p12 zijn functioneel identiek - Windows-tools gebruiken .pfx terwijl macOS en Linux de voorkeur geven aan .p12. Beide kunnen worden geconverteerd naar het .pem-tekstformaat met het commando openssl pkcs12. In tegenstelling tot zelfstandige .cer-certificaten bevat een .pfx-bestand de privésleutel naast het certificaat, waardoor het het voorkeursformaat is wanneer de sleutel met het certificaat moet meereizen.
Beveiliging & veiligheid
RISICO: HIGHEen PFX bevat een PRIVÉSLEUTEL, dus het is een van de meest gevoelige bestandstypen die een gebruiker hanteert: iedereen met het bestand en het bijbehorende wachtwoord kan zich voordoen als de eigenaar van het certificaat - code of documenten ondertekenen in hun naam, of een server opzetten met hun TLS-identiteit. Verzend een PFX nooit onbeveiligd per e-mail, plaats hem nooit in bronbeheer, gebruik een sterk exportwachtwoord en bewaar hem veilig (verwijder het bestand bij voorkeur na het importeren). Behandel een onverwachte .pfx-bijlage als verdacht. Genereer/behandel PFX-bestanden alleen met vertrouwde tools (OS-wizards, OpenSSL) - niet met willekeurige „certificaatviewer”-websites, die uw sleutel en wachtwoord kunnen stelen.
Formaatdetails
in een notendopProgramma's die PFX-bestanden openen
Technische details
diepe specificaties| Containercodering | Binaire DER (Distinguished Encoding Rules) over ASN.1; het bestand is niet leesbaar voor mensen zonder een speciale parser |
| MIME-type | application/x-pkcs12 |
| Magic bytes | 30 82 op offset 0 (ASN.1 DER SEQUENCE met een lengte van 2 bytes); gedeeld met andere DER-gecodeerde formaten - identificeer op basis van extensie of MIME-type, niet op basis van bytes alleen |
| Interne structuur | Geneste lagen: PFX → AuthenticatedSafe → SafeContents → SafeBags; elke SafeBag bevat één getypeerd cryptografisch object |
| SafeBag-typen | KeyBag, PKCS8ShroudedKeyBag, CertBag, CRLBag, SecretBag, SafeContents - de zes officiële SafeBag-typen gedefinieerd in RFC 7292 |
| Wachtwoordbeveiliging | Het totale archief en de individuele SafeBags kunnen elk onafhankelijk worden versleuteld met een door de gebruiker gekozen wachtwoordzin via wachtwoordgebaseerde versleuteling |
| Versleutelingsalgoritmen | AES-256-CBC en 3DES-CBC voor moderne stacks; RC2 en RC4 komen voor in verouderde bestanden (afgeraden - vermijd deze bij het genereren van nieuwe archieven) |
| MAC-integriteit | Een HMAC (SHA-1 in verouderde; SHA-256 of SHA-384 in moderne implementaties) beslaat de AuthenticatedSafe-structuur om knoeien te detecteren |
| Sleutelafleiding | PBKDF1 (RFC 7292 Appendix B) of PBKDF2 met een configureerbaar aantal iteraties verhardt wachtwoordgebaseerde versleuteling tegen brute-force aanvallen |
| Windows vs. IETF-naam | .pfx is het oorspronkelijke door Microsoft bedachte achtervoegsel; .p12 is de IETF-standaardnaam; de twee zijn byte-voor-byte identiek en volledig uitwisselbaar |
| Opslag van meerdere objecten | Een enkele .pfx kan meerdere certificaten en sleutels bevatten - bijvoorbeeld een volledige keten van leaf-, intermediate- en root CA-certificaten plus de privésleutel |
| Veelvoorkomende CLI-conversie | openssl pkcs12 -in file.pfx -out file.pem -nodes extraheert naar PEM-tekst; openssl pkcs12 -export -out file.pfx bundelt PEM-inputs in een nieuw archief |
| Platformondersteuning | Systeemeigen op Windows (Wizard Certificaat importeren, certutil, PowerShell), macOS (Sleutelhangertoegang), iOS, Android, Java (keytool) en de meeste TLS-bibliotheken |
| Typische gebruiksscenario's | Implementeren van TLS/SSL-servercertificaten, identiteiten voor code-ondertekening, S/MIME-e-mailsleutels, VPN-clientgegevens en smartcard-provisioning |
| Uitgebracht | PKCS #12 v1.0 published 1999 by RSA; Microsoft .pfx predates and feeds into it |
| Open standaard | Ja · royaltyvrij |
| Specificatie | www.rfc-editor.org |