Available in

(1) (1)/fr

Contents

NOM

pkcs12 − Utilitaire pour les fichiers PKCS#12

SYNOPSIS

openssl pkcs12 [−export] [−chain] [−inkey nom_fichier] [−certfile nom_fichier] [−name nom] [−caname nom] [−in nom_fichier] [−out nom_fichier] [−noout] [−nomacver] [−nocerts] [−clcerts] [−cacerts] [−nokeys] [−info] [−des] [−des3] [−idea] [−nodes] [−noiter] [−maciter] [−twopass] [−descert] [−certpbe] [−keypbe] [−keyex] [−keysig] [−password param] [−passin param] [−passout param] [−rand fichier(s)]

DESCRIPTION

La commande pkcs12 permet la création et l’interprétation de fichiers PKCS#12 (parfois également appellés PFX ). Les fichiers PKCS#12 sont utilisés par plusieurs programmes, entre autres Netscape, MSIE et MS  Outlook.

OPTIONS DE LA COMMANDE

Il y a de nombreuses options dont certaines diffèrent selon que l’on génère ou interprète un fichier. L’opération par défaut est l’interprétation, pour la création d’un fichier PKCS#12, il faut utiliser l’option −export.

OPTIONS D’INTERPRÉTATION

−in nom_fichier

Ceci spécifie le nom du fichier PKCS#12 à interpréter. Par défaut, l’entrée standard est lue.

−out nom_fichier

Le nom de fichier où seront écrits les certificats et les clés privées. Par défaut ce sera la sortie standard. Ils sont tous écrits au format PEM .

−pass param, −passin param

Le fichier PKCS#12 source des mots de passe (c’est−à−dire le fichier d’entrée). Pour plus d’informations sur le format de param, voir la section PHRASE DE PASSE EN PARAMÈTRE d’openssl(1).

−passout param

La source de mot de passe à utiliser pour le chiffrement des clés privées sorties. Pour plus d’informations sur le format de param, voir la section PHRASE DE PASSE EN PARAMÈTRE d’openssl(1).

−noout

Cette option empêche l’ajout des clés et des certificats vers la version de sortie du fichier PKCS#12.

−clcerts

Sortie uniquement des certificats clients (et non des certificats CA ).

−cacerts

Sortie uniquement des certificats CA (et non des certificats clients).

−nocerts

Aucun certificat ne sera sorti.

−nokeys

Aucune clé privée ne sera sortie.

−info

Sortie d’informations supplémentaires sur la structure du fichier PKCS#12, sur les agorithmes employés et sur les nombres d’itérations.

−des

Utilisation du chiffrement DES pour les clés privées avant la sortie.

−des3

Utilisation du chiffrement triple DES pour les clés privées avant la sortie, c’est l’algorithme utilisé par défaut.

−idea

Utilisation du chiffrement IDEA pour les clés privées avant la sortie.

−nodes

Ne pas chiffrer les clés privées du tout.

−nomacver

Ne pas vérifier l’intégrité MAC avant la lecture du fichier.

−twopass

Demande des mots de passe distincts pour l’intégrité et le chiffrement ; la plupart des logiciels supposent toujours l’égalité, ainsi cette option rendra le fichier PKCS#12 illisible pour ces logiciels.

OPTIONS DE CRÉATION DE FICHIER

−export

Cette option spécifie qu’un fichier PKCS#12 sera généré plutôt que lu.

−out nom_fichier

Ceci spécifie le nom du fichier PKCS#12 de sortie. La sortie standard est utilisée par défaut.

−in nom_fichier

Le nom de fichier à partir duquel les certificats et les clés privées sont lues. Par défaut, ce sera l’entrée standard. Ils doivent tous être au format PEM . L’ordre n’est pas important, mais une clé privée et le certificat correspondant devrait être présent. Si des certificats supplémentaires sont présents, ils seront également inclus dans le fichier PKCS#12.

−inkey nom_fichier

Le fichier à partir duquel sera lue la clé privée. Si cette option n’est pas présente, la clé doit faire partie du fichier d’entrée.

−name nomconvivial

Ceci spécifie le nom convivial du certificat et de la clé privée. Ce nom est typiquement affiché dans les contrôles de liste par les logiciels qui utilisent ce fichier.

−certfile nom_fichier

Un nom de fichier à partir duquel des certificats supplémentaires seront lus.

−caname nomconvivial

Ceci spécifie le nom convivial pour d’autres certificats. Cette option peut être utilisée plusieurs fois et correspondre alors aux certificats dans l’ordre d’apparition. Netscape ignore les noms conviviaux des autres certificats alors que MSIE les affiche.

−pass param, −passout param

Le fichier PKCS#12 source des mots de passe (c’est−à−dire le fichier d’entrée). Pour plus d’informations sur le format de param, voir la section PHRASE DE PASSE EN PARAMÈTRE d’openssl(1).

−passin motdepasse

La source de mot de passe à utiliser pour l’encodage des clés privées de sortie. Pour plus d’informations sur le format de param, voir la section PHRASE DE PASSE EN PARAMÈTRE d’openssl(1).

−chain

Avec cette option, le programme tente d’inclure toute la chaîne de certification dans le certificat utilisateur. Le répertoire standard CA est utilisé pour cette recherche. Un échec de cette recherche est considérée comme une erreur fatale.

−descert

Chiffrer le certificat avec DES , ceci peut rendre le certificat inutilisable avec certains logiciels « export grade ». Par défaut, la clé privée est chiffrée en triple DES et le certificat en utilisant un RC2 à 40 bits.

−keypbe alg, −certpbe alg

Ces options permettent le choix de l’algorithme de chiffrement pour la clé privée et les certificats. Même si tous les algorithmes PKCS#5 v1.5 ou PKCS#12 sont pris en compte, il est conseillé d’utiliser uniquement PKCS#12. Référez−vous à la liste dans la section NOTES pour plus de détails.

−keyex|−keysig

Spécifie que la clé privée est utilisée uniquement pour l’échange de clé ou la signature. Cette option est uniquement interprétée par MSIE et des produits similaires MS . Normalement, des logiciels « export grade » permettent seulement l’échange de clés RSA à 512 bits pour le chiffrement, et une clé de longueur arbitraire pour la signature. L’option −keysig marque la clé pour une utilisation exclusivement pour des signatures. Une telle clé peut alors être utilisée pour la signature S/MIME, authenticode (signature par contrôles ActiveX) et l’identification de clients SSL , toutefois, uniquement MSIE 5.0 et supérieur supportent l’utilisation de clés de signature pour l’identification de clients SSL .

−nomaciter, −noiter

Ces options déterminent le nombre d’itérations pour les algorithmes MAC et certains algorithmes de clés. À moins de vouloir produire des fichiers compatibles avec MSIE 4.0, ces options peuvent être omises.

Pour décourager des attaques utilisant des dictionnaires importants de mot de passe communs, l’algorithme dérivant les clés des mots de passe peut se voir appliqué un nombre d’itérations : ceci a pour effet de répéter une certaine partie de l’algorithme et ralentit l’opération. Le MAC est employé pour s’assurer l’intégrité du fichier, mais comme il aura normalement le même mot de passe que les clés et les certificats, il peut aussi se voir attaqué. Par défaut, le nombre d’itérations du MAC et du chiffrement sont de 2048, en utilisant ces options, le nombre d’itérations MAC et du chiffrement peuvent être mises à 1. Comme ceci réduit la sécurité des informations, elles ne devraient être utilisées qu’en cas de nécessité. La plupart des logiciels supportent un nombre arbitraire d’itération et pour MAC et pour l’encodage. MSIE 4.0 ne le supporte pas pour MAC et nécessite alors l’option −nomaciter.

−maciter

Cette option est incluse pour assurer la compatibilité avec d’anciennes versions pour forcer le nombre d’itérations pour MAC . C’est actuellement le comportement par défaut.

−rand fichier(s)

Un ou plusieurs fichiers contenant des données aléatoires utilisées pour initialiser le générateur de nombres pseudo−aléatoires, ou une socket EGD (consultez RAND_egd(3)). Plusieurs fichiers peuvent être spécifiés en les séparant par le séparateur du système d’exploitation : « ; » pour MS-Windows, « , » pour OpenVMS et « : » pour tous les autres.

NOTES

Malgré le nombre important d’options, la plupart de celles-ci ne sont utilisées que très rarement. Pour l’interprétation de fichiers PKCS#12, seules −in et −out sont nécessaires, pour la création, −export et −name sont utilisées également.

Si aucune des options −clcerts, −cacerts ou −nocerts n’est présente, alors tous les certificats seront générés dans l’ordre d’apparence dans les fichiers source PKCS#12. De plus, il n’y a aucune garantie que le premier certificat trouvé est celui correspondant à la clé privée. Certains logiciels nécessitant une clé privée supposent que le premier certificat du fichier correspond à la clé privée : ceci n’est pas forcément toujours le cas. En utilisant l’option l’option −clcerts le problème est résolu en incluant uniquement le certificat correspondant à la clé privée. Si besoin est, les certificats CA peuvent être générées à part avec les options −nokeys −cacerts.

Les options −keypbe et −certpbe permettent de préciser l’algorithme de chiffrement pour la clé privée et pour les certificats. Normalement, les valeurs par défauts devraient convenir, mais certains logiciels ne gèrent pas les clés privées encodées avec triple DES , alors l’option −keypbe PBE−SHA1−RC2−40 réduit le chiffrement de la clé privée à un RC2 de 40 bits. Une description complète de tous les algorithmes est contenue dans la page de manuel de pkcs8.

EXEMPLES

Interprétation d’un fichier PKCS#12 et sortie vers un fichier :

 openssl pkcs12 −in file.p12 −out file.pem

Sortie des certificats clients uniquement :

 openssl pkcs12 −in file.p12 −clcerts −out file.pem

Ne pas chiffrer la clé privée :

 openssl pkcs12 −in file.p12 −out file.pem −nodes

Afficher les informations sur un fichier PKCS#12 :

 openssl pkcs12 −in file.p12 −info −noout

Créer un fichier PKCS#12 :

 openssl pkcs12 −export −in file.pem −out file.p12 −name "My Certificate"

Inclure des certificats supplémentaires :

 openssl pkcs12 −export −in file.pem −out file.p12 −name "My Certificate" \
  −certfile othercerts.pem

BOGUES

Certains disent que tout le standard PKCS#12 est un seul grand bogue :−)

Les versions d’OpenSSL avant 0.9.6a avaient un bogue dans les routines de génération de clé PKCS#12. Sous certaines circonstances rares, ceci pouvait conduire à un fichier PKCS#12 chiffré avec une clé non valable. Ainsi certains fichiers PKCS#12 d’autres implémentations ( MSIE ou Netscape) et qui déclenchaient ce bogues ne pouvaient être déchiffrés par OpenSSL et inversement OpenSSL produisait des fichier non déchiffrable par d’autres implémentations. La probabilité de produire un tels fichiers est relativement faible : inférieure à 1 sur 256.

Une conséquence de la correction de ce bogue est que de tels fichiers PKCS#12 ne peuvent être interprétés avec une version corrigée. L’utilitaire pkcs12 signale alors que le MAC est valide, mais le déchiffrement des clés privées extraites est voué à l’échec.

Ce problème peut être contourné en extrayant les clés privées et les certificats avec une version ancienne d’OpenSSL puis en régénérant le fichier PKCS#12 avec une version plus récente à partir des clés et des certificats. Par exemple :

 old−openssl −in bad.p12 −out keycerts.pem
 openssl −in keycerts.pem −export −name "My PKCS#12 file" −out fixed.p12

VOIR AUSSI

pkcs8(1)

TRADUCTION

Cette page de manuel a été traduite par Eltrai en 2002 et est maintenue par la liste <debian−l10n−french AT lists DOT debian DOT org>. Veuillez signaler toute erreur de traduction par un rapport de bogue sur le paquet manpages-fr-extra.

COMMENTS

blog comments powered by Disqus