Qu'est-ce que le format de fichier P7C ?
Un fichier .p7c est un ensemble de certificats PKCS#7 - un fichier de certificat numérique encodé comme une structure PKCS#7 SignedData « dégénérée » contenant un ou plusieurs certificats X.509 mais sans contenu signé. Il est utilisé pour distribuer un certificat ou une chaîne de certification complète (entité finale plus autorités de certification intermédiaires) sous la forme d'un seul fichier portable.
Techniquement, .p7c et .p7b sont le même format : les deux enveloppent les certificats dans une structure PKCS#7 SignedData (OID 1.2.840.113549.1.7.2) avec un champ SignerInfos vide. La distinction se fait par convention - .p7c est l'extension que Microsoft associe à la forme « certificats uniquement » pour S/MIME et l'identité de messagerie. L'API Crypto de Windows et le Gestionnaire de certificats (certmgr.msc) gèrent les deux de manière identique.
Les fichiers peuvent être encodés de deux manières : DER (binaire, commençant par les octets 30 82) ou PEM (DER encodé en Base64 enveloppé dans des lignes d'en-tête -----BEGIN PKCS7----- / -----END PKCS7-----).
Les fichiers .p7c ne contiennent que des certificats publics - aucune clé privée n'est incluse. Pour les fichiers qui regroupent un certificat avec sa clé privée, voir .pfx (PKCS#12). La norme sous-jacente a été remplacée par CMS (Cryptographic Message Syntax, RFC 5652), mais les fichiers .p7c restent largement utilisés pour la distribution de certificats S/MIME, les chaînes de signature de code et les flux de travail PKI d'entreprise.
openssl pkcs7 -in file.p7c -print_certs extrait les certificats de l'ensemble.
Sécurité et sûreté
RISQUE : LOWLe fichier .p7c ne contient que des certificats publics - aucune clé privée. Sûr à partager et à distribuer. Aucun contenu exécutable. Risque : vérifiez toujours l'émetteur/l'empreinte du certificat après l'importation pour confirmer qu'il provient d'une AC légitime ; des certificats malveillants pourraient être utilisés dans des attaques MITM s'ils sont importés dans les Autorités de certification racines de confiance.
Détails du format
en bref- Pièce jointe S/MIME signée et enveloppée - application/pkcs7-mime avec smime-type=enveloped-data enveloppe le corps de l'e-mail chiffré ; même extension, type de contenu différent.
Programmes qui ouvrent les fichiers P7C
Détails techniques
spécifications approfondies| Standard | PKCS#7 v1.5 (RFC 2315, 1998) ; fonctionnellement identique à CMS SignedData (RFC 5652, 2009) |
| OID PKCS#7 | 1.2.840.113549.1.7.2 (id-signedData) |
| Octets magiques DER | 30 82 - balise ASN.1 SEQUENCE suivie d'un encodage de longueur sur 2 octets |
| En-tête PEM | -----BEGIN PKCS7----- / -----END PKCS7----- |
| Encodage | Binaire (DER) ou texte (PEM - DER encodé en Base64) |
| Conteneur | ASN.1 BER/DER - même encodage utilisé par tous les formats X.509 et PKCS |
| Certificats inclus | Un ou plusieurs certificats X.509 v3 DER (entité finale plus chaîne) |
| Clés privées | Non incluses - format de certificats uniquement ; utilisez .pfx/.p12 pour les ensembles certificat+clé |
| Champ SignerInfos | Vide (SignedData dégénéré - aucun contenu signé, seulement des certificats) |
| Type MIME | application/pkcs7-mime; smime-type=certs-only |
| Taille de fichier typique | 1 Ko - 20 Ko (varie selon la longueur de la chaîne de certificats) |
| Commande OpenSSL | openssl pkcs7 -in file.p7c -print_certs |
| Systèmes d'exploitation | Windows, macOS, Linux, iOS, Android |
| Publié | 1993 (PKCS#7 v1.5 by RSA Laboratories; RFC 2315 published 1998) |
| Dernière version | CMS (Cryptographic Message Syntax) RFC 5652, 2009 - successor standard |
| Standard ouvert | Oui · libre de droits |
| Spécification | datatracker.ietf.org |
Conversions P7C
Q&R de la communauté
posées par les utilisateursPas encore de questions - soyez le premier à poser une question sur les fichiers P7C.