Provided by: manpages-fr-extra_20151231_all 

NOM
verify - Utilitaire de vérification de certificats
SYNOPSIS
openssl verify [-CApath répertoire] [-CAfile fichier] [-purpose raison] [-policy param]
[-ignore_critical] [-attime horodatage] [-check_ss_sig] [-crlfile fichier] [-crl_check] [-crl_check_all]
[-policy_check] [-explicit_policy] [-inhibit_any] [-inhibit_map] [-x509_strict] [-extended_crl]
[-use_deltas] [-policy_print][-no_alt_chains] [-untrusted fichier] [-help] [-issuer_checks] [-verbose]
[-] [certificats]
DESCRIPTION
La commande verify vérifie des chaînes de certificats.
OPTIONS DE LA COMMANDE
-CApath répertoire
Un répertoire de certificats de confiance. Les certificats devraient avoir des noms de la forme :
hachage.0 ou avoir des liens symboliques vers eux de cette forme (« hachage » est le nom de sujet du
certificat haché : consultez l'option -hash de l'utilitaire x509). Sous UNIX, le script c_rehash
créera automatiquement les liens symboliques vers un répertoire de certificats.
-CAfile fichier
Un fichier avec des certificats de confiance. Le fichier doit contenir des certificats au format PEM,
concaténés.
-attime horodatage
Réaliser les vérifications de validation en utilisant la date indiquée par horodatage au lieu de la
date système actuelle. horodatage est le nombre de secondes écoulées depuis le 1er janvier 1970 (date
UNIX).
-check_ss_sig
Vérifier la signature du certificat racine autosigné de l'autorité de certification. C'est désactivé
par défaut parce que cela n'ajoute aucune sécurité.
-crlfile fichier
Ficher contenant une ou plusieurs listes de révocations de certificat (au format PEM).
-crl_check
Vérifier la fin de validité d'une entité de certificat en essayant de rechercher une liste valable de
révocations de certificat. Cela produit une erreur si une liste valable de révocations de certificat
ne peut pas être trouvée.
-untrusted fichier
Un fichier avec des certificats qui ne sont pas de confiance. Le fichier doit contenir des
certificats au format PEM, concaténés.
-purpose raison
Le but de ce certificat. Si cette option n'est pas indiquée, verify ne considérera pas la raison du
certificat lors de la vérification de chaîne. Les utilisations actuellement acceptées sont :
sslclient, sslserver, nssslserver, smimesign et smimeencrypt. Consultez la section OPÉRATION DE
VÉRIFICATION pour de plus amples renseignements.
-help
Afficher un message sur l'utilisation.
-verbose
Afficher des informations supplémentaires à propos des opérations effectuées.
-issuer_checks
Afficher les diagnostics relatifs aux recherches du certificat émetteur du certificat actuel. Cela
montre la raison pour laquelle chaque certificat émetteur candidat a été rejeté. La présence de
messages de rejets n'implique pas qu'il y a un problème ; lors du processus de vérification normal,
plusieurs rejets peuvent avoir lieu.
-policy param
Activer le traitement de la politique et ajouter param à user-initial-policy-set (consultez la
RFC 5280). La politique param peut être un nom d'objet ou un OID sous forme numérique. Cet argument
peut être fourni plus d'une fois.
-policy_check
Activer le traitement de la politique de certificat.
-explicit_policy
Définir la variable de politique require-explicit-policy (consultez la RFC 5280).
-inhibit_any
Définir la variable de politique inhibit-any-policy (consultez la RFC 5280).
-inhibit_map
Définir la variable de politique inhibit-policy-mapping (consultez la RFC 5280).
-no_alt_chains
Lors de la construction d’une chaîne de certificats, si le premier certificat trouvé n’est pas de
confiance, alors OpenSSL continuera à chercher si une chaîne alternative de confiance peut être
trouvée. Avec cette option, ce comportement est supprimé, de telle façon que seule la première chaîne
puisse être utilisée. Cette option oblige à un comportement identique aux précédentes versions
d’OpenSSL.
-policy_print
Afficher les diagnostics relatifs au traitement de politique.
-crl_check
Vérifier la fin de validité d'une entité de certificat en essayant de rechercher une liste valable de
révocations de certificat. Cela produit une erreur si une liste valable de révocations de certificat
ne peut pas être trouvée.
-crl_check_all
Vérifier la validité de tous les certificats de la chaîne en essayant de rechercher une liste valable
de révocations de certificat.
-ignore_critical
Normalement, si une extension critique non gérée mais présente n'est pas prise en charge par OpenSSL,
le certificat est rejeté (conformément à la RFC 5280). Si cette option est définie, les extensions
critiques sont ignorées.
-x509_strict
Pour une conformité X.509 stricte, désactiver les contournements non conformes pour les certificats
cassés.
-extended_crl
Activer les fonctionnalités étendues de liste de révocations de certificat, comme les listes
indirectes de révocations de certificat et les clefs de signature alternatives de liste de
révocations de certificat.
-use_deltas
Activer la prise en charge pour les deltas de listes de révocations de certificat.
-check_ss_sig
Vérifier la signature du certificat racine autosigné de l'autorité de certification. C'est désactivé
par défaut parce que cela n'ajoute aucune sécurité.
- Indiquer la dernière option. Tous les arguments suivants sont considérés comme des fichiers de
certificat. C'est pratique si le premier nom de fichier de certificat commence par un -.
certificats
Un ou plusieurs certificats à vérifier. Si aucun certificat n'est donné, verify essayera de lire un
certificat depuis l'entrée standard. Les certificats devraient être au format PEM.
OPÉRATION DE VÉRIFICATION
Le programme verify utilise les mêmes fonctions que les vérifications internes SSL et S/MIME, par
conséquent cette description s'applique aussi à ces opérations de vérification.
Une différence fondamentale existe entre les opérations de vérification réalisées par le programme
verify : à chaque fois que c'est possible, une tentative de continuer est essayée après une erreur, alors
que l'opération de vérification se serait normalement arrêtée après la première erreur. Cela permet de
déterminer tous les problèmes avec une chaîne de certificats.
L'opération de vérification est constituée de plusieurs étapes séparées.
D'abord, une chaîne de certificats est construite à partir du certificat fourni jusqu'au certificat
racine de l'autorité de certification. C'est une erreur si la chaîne complète ne peut pas être
construite. La chaîne est construite en recherchant le certificat émetteur du certificat actuel. Si le
certificat trouvé est son propre émetteur, il est considéré comme le certificat racine de l'autorité de
certification.
Le processus de « recherche du certificat émetteur » lui-même implique un certain nombre d'étapes.
Jusqu'à la version 0.9.5a d'OpenSSL, le premier certificat dont le nom de sujet correspond au nom de
l'émetteur du certificat actuel était considéré comme le certificat émetteur. Dans OpenSSL 0.9.6 et les
versions suivantes, tous les certificats dont le nom de sujet correspond au nom de l'émetteur du
certificat actuel sont sujets à d'autres tests. Les composants identificateurs concernant la clef
d'autorité du certificat actuel (s'ils existent) doivent correspondre au sujet de l'identificateur de
clef (s'il existe), et l'émetteur, le numéro de série de l'émetteur candidat, en plus de l'extension
keyUsage de l'émetteur candidat (s'il existe), doivent permettre la signature de certificat.
La recherche commence par la liste de certificats qui ne sont pas de confiance, et si aucune
correspondance n'est trouvée, la recherche continue avec les certificats de confiance. Le certificat
racine de l'autorité de certification est toujours recherché dans la liste des certificats de confiance :
si le certificat à vérifier est un certificat racine, alors une correspondance exacte doit être trouvée
dans la liste des certificats de confiance.
La deuxième opération est de vérifier toutes les extensions des certificats qui ne sont pas de confiance,
en cohérence avec la raison fournie. Si l'option -purpose n'est pas incluse, aucune vérification n'est
réalisée. Le certificat fourni ou « feuille » (VS racine) doit avoir des extensions compatibles avec la
raison fournie et tous les autres certificats doivent aussi être des certificats d'autorité de
certification valables. Les extensions exactes nécessaires sont décrites plus en détail dans la section
EXTENSIONS DE CERTIFICATS de l'utilitaire x509.
La troisième opération est de vérifier les réglages de confiance du certificat racine de l'autorité de
certification. Le certificat racine de l'autorité de certification devrait être de confiance pour la
raison fournie. Par compatibilité avec les versions précédentes de SSLeay et OpenSSL, un certificat sans
réglages de confiance est considéré valable dans tous les cas.
La dernière opération est de vérifier la validité de la chaîne de certificats. La période de validité est
vérifiée par rapport à l'heure actuelle du système et les dates notBefore et notAfter du certificat. Les
signatures de certificat sont aussi vérifiées à ce moment.
Si toutes les opérations se terminent avec succès, alors le certificat est considéré valable. Si
n'importe quelle opération échoue, alors le certificat est incorrect.
DIAGNOSTIC
Quand une opération de vérification échoue, les messages de sortie peuvent être un peu abscons. La forme
globale du message d'erreur est :
server.pem: /C=AU/ST=Queensland/O=CryptSoft Pty Ltd/CN=Test CA (1024 bit)
error 24 at 1 depth lookup:invalid CA certificate
La première ligne contient le nom du certificat en cours de vérification suivi par le nom de sujet du
certificat. La deuxième ligne contient le numéro d'erreur et la profondeur. La profondeur est le nombre
de certificats ayant été vérifiés quand un problème a été détecté, avec zéro pour le certificat vérifié
lui-même, puis un pour l'autorité de certification qui a signé le certificat et ainsi de suite. Enfin, la
version texte du numéro d'erreur est présentée.
Une liste exhaustive des codes d'erreur et messages est montrée ci-dessous, cela inclut également le nom
du code d'erreur tel qu'il est défini dans le fichier d'en-têtes x509_vfy.h. Certains codes d'erreur sont
définis mais jamais renvoyés : ce sont ceux décrits comme « inutilisés ».
0 X509_V_OK: ok
L'opération a réussi.
2 X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT: unable to get issuer certificate
Le certificat émetteur d'un certificat recherché est introuvable. Cela signifie normalement que la
liste de certificats de confiance n'est pas complète.
3 X509_V_ERR_UNABLE_TO_GET_CRL: unable to get certificate CRL
La liste de révocations de certificat est introuvable.
4 X509_V_ERR_UNABLE_TO_DECRYPT_CERT_SIGNATURE: unable to decrypt certificate's signature
La signature de certificat n'a pas pu être déchiffrée. Cela signifie que la valeur de signature
réelle n'a pas pu être déterminée, plutôt qu'elle ne correspond pas à la valeur attendue, ce n'est
significatif que pour les clefs RSA.
5 X509_V_ERR_UNABLE_TO_DECRYPT_CRL_SIGNATURE: unable to decrypt CRL's signature
La signature de liste de révocations de certificat n'a pas pu être déchiffrée : cela signifie que la
valeur de signature réelle n'a pas pu être déterminée, plutôt qu'elle ne correspond pas à la valeur
attendue. Inutilisé.
6 X509_V_ERR_UNABLE_TO_DECODE_ISSUER_PUBLIC_KEY: unable to decode issuer public key
La clef publique du certificat SubjectPublicKeyInfo n'a pas pu être lue.
7 X509_V_ERR_CERT_SIGNATURE_FAILURE: certificate signature failure
La signature du certificat est incorrecte.
8 X509_V_ERR_CRL_SIGNATURE_FAILURE: CRL signature failure
La signature du certificat est incorrecte.
9 X509_V_ERR_CERT_NOT_YET_VALID: certificate is not yet valid
Le certificat n'est pas encore valable : la date notBefore est après la date actuelle.
10 X509_V_ERR_CERT_HAS_EXPIRED: certificate has expired
Le certificat a expiré : c'est parce que la date notAfter est avant la date actuelle.
11 X509_V_ERR_CRL_NOT_YET_VALID: CRL is not yet valid
La liste de révocations de certificat n'est pas encore valable.
12 X509_V_ERR_CRL_HAS_EXPIRED: CRL has expired
La liste de révocations de certificat a expiré.
13 X509_V_ERR_ERROR_IN_CERT_NOT_BEFORE_FIELD: format error in certificate's notBefore field
Le champ notBefore du certificat contient une date incorrecte.
14 X509_V_ERR_ERROR_IN_CERT_NOT_AFTER_FIELD: format error in certificate's notAfter field
Le champ notAfter du certificat contient une date incorrecte.
15 X509_V_ERR_ERROR_IN_CRL_LAST_UPDATE_FIELD: format error in CRL's lastUpdate field
Le champ lastUpdate de la liste de révocations de certificat contient une date incorrecte.
16 X509_V_ERR_ERROR_IN_CRL_NEXT_UPDATE_FIELD: format error in CRL's nextUpdate field
Le champ nextUpdate de la liste de révocations de certificat contient une date incorrecte.
17 X509_V_ERR_OUT_OF_MEM: out of memory
Une erreur s'est produite en essayant d'allouer de la mémoire. Cela ne devrait jamais arriver.
18 X509_V_ERR_DEPTH_ZERO_SELF_SIGNED_CERT: self signed certificate
Le certificat passé est autosigné et le même certificat est introuvable dans la liste des certificats
de confiance.
19 X509_V_ERR_SELF_SIGNED_CERT_IN_CHAIN: self signed certificate in certificate chain
La chaîne de certificats aurait pu être construite en utilisant des certificats qui ne sont pas de
confiance mais le certificat racine est introuvable localement.
20 X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT_LOCALLY: unable to get local issuer certificate
Le certificat émetteur est introuvable : cela arrive si le certificat émetteur d'un certificat qui
n'est pas de confiance est introuvable.
21 X509_V_ERR_UNABLE_TO_VERIFY_LEAF_SIGNATURE: unable to verify the first certificate
Aucune signature n'a pu être vérifiée car la chaîne ne contient qu'un seul certificat et il n'est pas
autosigné.
22 X509_V_ERR_CERT_CHAIN_TOO_LONG: certificate chain too long
La longueur de la chaîne de certificats est plus grande que la profondeur maximale fournie.
Inutilisé.
23 X509_V_ERR_CERT_REVOKED: certificate revoked
Le certificat a été révoqué.
24 X509_V_ERR_INVALID_CA: invalid CA certificate
Un certificat de l'autorité de certification est incorrect. Soit ce n'est pas une autorité de
certification, soit ses extensions ne sont pas cohérentes avec la raison fournie.
25 X509_V_ERR_PATH_LENGTH_EXCEEDED: path length constraint exceeded
Le paramètre de longueur de chemin basicConstraints a été dépassé.
26 X509_V_ERR_INVALID_PURPOSE: unsupported certificate purpose
Le certificat fourni n'a pas pu être utilisé pour la raison fournie.
27 X509_V_ERR_CERT_UNTRUSTED: certificate not trusted
Le certificat racine de l'autorité de certification n'est pas marqué de confiance pour la raison
fournie.
28 X509_V_ERR_CERT_REJECTED: certificate rejected
Le certificat racine de l'autorité de certification est marqué pour rejeter la raison fournie.
29 X509_V_ERR_SUBJECT_ISSUER_MISMATCH: subject issuer mismatch
Le certificat émetteur candidat actuel a été rejeté car son nom de sujet ne correspondait pas au nom
d'émetteur du certificat actuel. Affiché seulement quand l'option -issuer_checks est activée.
30 X509_V_ERR_AKID_SKID_MISMATCH: authority and subject key identifier mismatch
Le certificat émetteur candidat actuel a été rejeté car son objet d'identificateur de clef était
présent et ne correspondait pas à l'identificateur de clef d'autorité du certificat actuel. Affiché
seulement quand l'option -issuer_checks est activée.
31 X509_V_ERR_AKID_ISSUER_SERIAL_MISMATCH: authority and issuer serial number mismatch
Le certificat émetteur candidat actuel a été rejeté car son nom d'émetteur et son numéro de série
étaient présents et ne correspondaient pas à l'identificateur de clef d'autorité du certificat
actuel. Affiché seulement quand l'option -issuer_checks est activée.
32 X509_V_ERR_KEYUSAGE_NO_CERTSIGN:key usage does not include certificate signing
Le certificat émetteur candidat actuel a été rejeté car son extension keyUsage ne permet pas la
signature de certificat.
50 X509_V_ERR_APPLICATION_VERIFICATION: application verification failure
Une erreur spécifique à l'application. Inutilisé.
BOGUES
Bien que les vérifications d'émetteur constituent une amélioration considérable par rapport à l'ancienne
technique, elles souffrent encore des limites de l'interface de programmation X509_LOOKUP sous-jacente.
Une conséquence de cela est que les certificats de confiance avec un nom de sujet correspondant doivent
soit apparaître dans un fichier (comme indiqué avec l'option -CAfile), soit dans un répertoire (comme
indiqué avec l'option -CApath). S'ils apparaissent dans les deux, alors seuls les certificats du fichier
seront reconnus.
Les versions précédentes d'OpenSSL considèrent que les certificats avec les mêmes noms de sujet sont
identiques et les gèrent mal.
Les versions précédentes de cette documentation inversaient la signification des codes d'erreur
X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT et 20 X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT_LOCALLY.
VOIR AUSSI
x509(1)
HISTORIQUE
L'option -no_alt_chains a été ajoutée dans la version 1.0.2b d'OpenSSL.
TRADUCTION
La traduction de cette page de manuel est maintenue par les membres de 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.
1.0.2a 1.0.2c 2015-12-31 VERIFY(1SSL)