Qu'est-ce que le format de fichier PFX ?
Les fichiers .pfx sont associés à la norme de cryptographie PKCS #12, initialement développée par RSA Laboratories et désormais régie par la RFC 7292.
Les fichiers avec l'extension .pfx stockent des objets cryptographiques chiffrés et signés numériquement dans un conteneur binaire encodé en DER. Chaque fichier .pfx est divisé en ce qu'on appelle des « SafeBags », qui peuvent également être chiffrés et signés indépendamment. La norme PKCS #12 divise ensuite les SafeBags en types adaptés au stockage de clés privées, de certificats X.509, de chaînes de certificats et d'autres données de sécurité.
Le format .pfx est le plus souvent utilisé pour regrouper une clé privée avec sa chaîne de certificats correspondante dans un seul fichier protégé par mot de passe. Les utilisations typiques incluent l'exportation de certificats TLS/SSL entre serveurs, la distribution d'identités de signature de code et le transfert d'identifiants S/MIME entre appareils.
Les formats .pfx et .p12 sont fonctionnellement identiques - les outils Windows utilisent .pfx tandis que macOS et Linux préfèrent .p12. Les deux peuvent être convertis au format texte .pem avec la commande openssl pkcs12. Contrairement aux certificats autonomes .cer, un fichier .pfx transporte la clé privée aux côtés du certificat, ce qui en fait le format privilégié lorsque la clé doit accompagner le certificat.
Sécurité et sûreté
RISQUE : HIGHUn PFX contient une CLÉ PRIVÉE, c'est donc l'un des types de fichiers les plus sensibles qu'un utilisateur puisse manipuler : toute personne possédant le fichier et son mot de passe peut usurper l'identité du propriétaire du certificat - signer du code ou des documents en son nom, ou mettre en place un serveur avec son identité TLS. N'envoyez jamais un PFX sans protection par e-mail, ne le validez jamais dans un contrôle de source, utilisez un mot de passe d'exportation fort et stockez-le de manière sécurisée (idéalement, supprimez le fichier après l'importation). Traitez toute pièce jointe .pfx inattendue comme suspecte. Ne générez/manipulez des fichiers PFX qu'avec des outils de confiance (assistants du système d'exploitation, OpenSSL) - pas sur des sites web de « visualisation de certificats » aléatoires, qui pourraient exfiltrer votre clé et votre mot de passe.
Détails du format
en brefProgrammes qui ouvrent les fichiers PFX
Détails techniques
spécifications approfondies| Encodage du conteneur | Binaire DER (Distinguished Encoding Rules) sur ASN.1 ; le fichier n'est pas lisible par l'homme sans un analyseur dédié |
| Type MIME | application/x-pkcs12 |
| Octets magiques | 30 82 à l'offset 0 (SEQUENCE ASN.1 DER avec longueur de 2 octets) ; partagé avec d'autres formats encodés en DER - identifier par l'extension ou le type MIME, pas par les octets seuls |
| Structure interne | Couches imbriquées : PFX → AuthenticatedSafe → SafeContents → SafeBags ; chaque SafeBag contient un objet cryptographique typé |
| Types de SafeBag | KeyBag, PKCS8ShroudedKeyBag, CertBag, CRLBag, SecretBag, SafeContents - les six types officiels de SafeBag définis dans la RFC 7292 |
| Protection par mot de passe | L'archive globale et les SafeBags individuels peuvent chacun être chiffrés indépendamment avec une phrase secrète choisie par l'utilisateur via un chiffrement basé sur mot de passe |
| Algorithmes de chiffrement | AES-256-CBC et 3DES-CBC pour les piles modernes ; RC2 et RC4 apparaissent dans les fichiers hérités (obsolètes - à éviter lors de la génération de nouvelles archives) |
| Intégrité MAC | Un HMAC (SHA-1 pour l'héritage ; SHA-256 ou SHA-384 dans les implémentations modernes) couvre la structure AuthenticatedSafe pour détecter les altérations |
| Dérivation de clé | PBKDF1 (RFC 7292 Annexe B) ou PBKDF2 avec un nombre d'itérations configurable renforce le chiffrement basé sur mot de passe contre les attaques par force brute |
| Nom Windows vs IETF | .pfx est le suffixe original créé par Microsoft ; .p12 est le nom standard de l'IETF ; les deux sont identiques octet par octet et totalement interchangeables |
| Stockage multi-objets | Un seul .pfx peut contenir plusieurs certificats et clés - par exemple, une chaîne complète de certificats d'entité finale, intermédiaires et racine de l'AC, plus la clé privée |
| Conversion CLI courante | openssl pkcs12 -in file.pfx -out file.pem -nodes extrait vers du texte PEM ; openssl pkcs12 -export -out file.pfx regroupe les entrées PEM dans une nouvelle archive |
| Prise en charge des plateformes | Natif sur Windows (Assistant d'importation de certificat, certutil, PowerShell), macOS (Trousseau d'accès), iOS, Android, Java (keytool) et la plupart des bibliothèques TLS |
| Cas d'utilisation typiques | Déploiement de certificats de serveur TLS/SSL, identités de signature de code, clés de messagerie S/MIME, identifiants de client VPN et provisionnement de cartes à puce |
| Publié | PKCS #12 v1.0 published 1999 by RSA; Microsoft .pfx predates and feeds into it |
| Standard ouvert | Oui · libre de droits |
| Spécification | www.rfc-editor.org |