Provided by: manpages-fr-extra_20151231_all bug

NOM

       ts - Outil d’autorité d’horodatage (client et serveur)

SYNOPSIS

       openssl ts -query [-rand fichier:fichier...] [-config fichier_conf] [-data
       fichier_à_hacher] [-digest octets_sign] [-md2|-md4|-md5|-sha|-sha1|-mdc2|-ripemd160|...]
       [-policy id_objet] [-no_nonce] [-cert] [-in demande.tsq] [-out demande.tsq] [-text]

       openssl ts -reply [-config fichier_conf] [section section_tsa] [-queryfile demande.tsq]
       [-passin src_mot_de_passe] [-signer tsa_cert.pem] [-inkey privée.pem] [-chain
       fichier_certs.pem] [-policy id_objet] [-in réponse.tsr] [-token_in] [-out response.tsr]
       [-token_out] [-text] [-engine id]

       openssl ts -verify [-data fichier_à_hacher] [-digest octets_sign] [-queryfile demande.tsq]
       [-in réponse.tsr] [-token_in] [-CApath chemin_cert_confiance] [-CAfile
       certs_confiance.pem] [-untrusted fichier_cert.pem]

DESCRIPTION

       La commande ts est une application client et serveur d’autorité d’horodatage (« Time
       Stamping Authority », TSA) conforme à la RFC 3161 (protocole d'horodatage, « Time-Stamp
       Protocol » TSP). Une TSA peut faire partie d'un déploiement de PKI et son rôle est de
       fournir des preuves à long terme de l'existence d'une certaine donnée avant un moment
       donné. Voici une brève description du protocole.

       1.  Le client TSA calcule une valeur de hachage à sens unique pour un fichier de données
           et envoie le hachage à la TSA.

       2.  La TSA attache la date et l'heure à la valeur de hachage reçue, les signe et envoie le
           jeton d’horodatage au client. En créant ce jeton, la TSA certifie l'existence du
           fichier original de données au moment où la réponse est créée.

       3.  Le client TSA reçoit le jeton d'horodatage et en vérifie la signature. Il vérifie
           également si le jeton contient la même valeur de hachage qu'il avait envoyé à la TSA.

       Une unité de données de protocole encodée DER est définie pour le transport d'une demande
       d'horodatage à la TSA et une autre pour l'envoi de la réponse d'horodatage au client. La
       commande ts a trois fonctions principales : créer une demande d'horodatage à partir d'un
       fichier de données, créer une réponse d'horodatage à partir d'une demande et vérifier si
       une réponse correspond à une demande particulière ou à un fichier de données.

       Aucune prise en charge n’existe encore pour l’envoi de demandes et réponses
       automatiquement par HTTP ou TCP comme suggéré dans la RFC 3161. Les utilisateurs doivent
       envoyer les demandes par FTP ou courrier électronique.

OPTIONS

   Création de demande d’horodatage
       L’option -query peut être utilisée pour créer et afficher une demande d'horodatage avec
       les options suivantes :

       -rand fichier:fichier...
           Les fichiers contenant des données aléatoires utilisées pour initialiser le générateur
           de nombres pseudoaléatoires. Plusieurs fichiers peuvent être indiqués en utilisant le
           séparateur du système d'exploitation : « ; » pour Windows, « , » pour OpenVMS et « : »
           pour tous les autres. (Facultatif)

       -config fichier_conf
           Le fichier de configuration à utiliser, cette option remplace la variable
           d'environnement OPENSSL_CONF. Seule la section OID du fichier de configuration est
           utilisée avec la commande -query. (Facultatif)

       -data fichier_à_hacher
           Le fichier de données pour lequel la demande d'horodatage doit être créée. L’entrée
           standard est la valeur par défaut si aucune des options -data ou -digest n’est
           indiquée. (Facultatif)

       -digest octets_sign
           Indiquer explicitement l’empreinte du message est possible sans le fichier de données.
           L’empreinte doit être indiquée au format hexadécimal, deux caractères par octet, les
           octets éventuellement séparés par des deux-points (par exemple 1A:F6:01:... ou
           1AF601...). Le nombre d’octets doit correspondre à l’algorithme de signature de
           message utilisé. (Facultatif)

       -md2|-md4|-md5|-sha|-sha1|-mdc2|-ripemd160|...
           La signature de message à appliquer au fichier de données, tous les algorithmes de
           signature de message pris en charge par la commande openssl dgst sont utilisables. La
           valeur par défaut est SHA-1. (Facultatif)

       policy id_objet
           La politique attendue par le client de la TSA à utiliser pour créer le jeton
           d'horodatage. Soit la notation OID avec points, soit les noms d’OID définis dans le
           fichier de configuration peuvent être utilisés. Si aucune politique n’est demandée, la
           TSA utilisera sa propre politique par défaut. (Facultatif)

       -no_nonce
           Aucun nonce n’est indiqué dans la demande si cette option est donnée. Sinon, un nonce
           pseudoaléatoire de 64 bits est inclus dans la demande. Utiliser nonce est recommandé
           pour se protéger contre les attaques par rejeu. (Facultatif)

       -cert
           La TSA devrait inclure son certificat de signature dans la réponse. (Facultatif)

       -in demande.tsq
           Cette option indique une demande d'horodatage précédemment créée au format DER qui
           sera envoyée dans le fichier de sortie. Utile pour examiner le contenu d'une demande
           au format lisible. (Facultatif)

       -out demande.tsq
           Nom du fichier de sortie où la demande doit être écrite. La sortie standard par
           défaut. (Facultatif)

       -text
           Si cette option est indiquée, la sortie est au format texte lisible au lieu de DER.
           (Facultatif)

   Création de réponse d’horodatage
       Une réponse d’horodatage (TimeStampResp) se compose d'un état de réponse et du jeton
       d'horodatage lui-même (ContentInfo), si la création du jeton a réussi. La commande -reply
       permet de créer une réponse d'horodatage ou un jeton d'horodatage suivant la demande et
       l’affichage de la réponse ou du jeton dans un format lisible. Si -token_out n'est pas
       indiqué, la sortie est toujours une réponse d'horodatage (TimeStampResp), sinon c'est un
       jeton d'horodatage (ContentInfo).

       -config fichier_conf
           Le fichier de configuration à utiliser, cette option remplace la variable
           d'environnement OPENSSL_CONF. Consultez OPTIONS DU FICHIER DE CONFIGURATION pour les
           variables configurables. (Facultatif)

       -spksect section
           Le nom de la section du fichier de configuration contenant les paramètres pour la
           création de la réponse. S'il n'est pas indiqué, la section TSA par défaut est
           utilisée, consultez OPTIONS DU FICHIER DE CONFIGURATION pour plus de précisions.
           (Facultatif)

       -queryfile demande.tsq
           Le nom du fichier contenant une demande d’horodatage encodée en DER. (Facultatif)

       -passin src_mot_de_passe
           Indiquer la source pour la clef privée de la TSA. Consultez la section PARAMÈTRES DE
           PHRASE SECRÈTE d'openssl(1).

       -signer tsa_cert.pem
           Le certificat de signataire de la TSA au format PEM. Le certificat de signature TSA
           doit avoir exactement une utilisation de clef étendue attribuée : timeStamping.
           L'utilisation de la clef étendue doit aussi être critique, sinon le certificat sera
           refusé. Cela remplace la variable signer_cert du fichier de configuration.
           (Facultatif)

       -inkey privée.pem
           La clef privée du signataire de la TSA au format PEM. Cela remplace l'option
           signer_key du fichier de configuration. (Facultatif)

       -chain fichier_certs.pem
           L’ensemble des certificats au format PEM qui seront tous inclus dans la réponse en
           plus du certificat de signataire si l'option -cert a été utilisée pour la demande. Ce
           fichier est censé contenir la chaîne de certificats pour le certificat de signataire à
           partir de ses émetteurs. La commande -reply ne construit pas de chaîne de certificats
           automatiquement. (Facultatif)

       policy id_objet
           La politique par défaut à utiliser pour la réponse à moins que le client ne demande
           explicitement une politique TSA particulière. L'OID peut être indiqué en utilisant une
           notation avec points ou par son nom. Cela remplace l'option default_policy du fichier
           de configuration. (Facultatif)

       -in réponse.tsr
           Indiquer une réponse d'horodatage créée précédemment ou un jeton d'horodatage (si
           -token_in est également indiquée) au format DER qui sera écrit dans le fichier de
           sortie. Cette option ne nécessite pas de demande, elle est par exemple utile pour
           examiner le contenu d'une réponse ou d'un jeton ou pour extraire le jeton d'horodatage
           d'une réponse. Si l'entrée est un jeton et la sortie une réponse d'horodatage, une
           information d’état accordée (« granted ») par défaut est ajoutée au jeton.
           (Facultatif)

       -token_in
           Cet indicateur peut être utilisé avec l'option -in et indique que l'entrée est un
           jeton d'horodatage encodé DER (ContentInfo) au lieu d'une réponse d'horodatage
           (TimeStampResp). (Facultatif)

       -out réponse.tsr
           La réponse est écrite dans ce fichier. Le format et le contenu du fichier dépendent
           d'autres options (consultez -text, -token_out). La valeur par défaut est la sortie
           standard. (Facultatif)

       -token_out
           La sortie est un jeton d'horodatage (ContentInfo) au lieu d’une réponse d’horodatage
           (TimeStampResp). (Facultatif)

       -text
           Si cette option est indiquée, la sortie est au format texte lisible au lieu de DER.
           (Facultatif)

       -engine id
           Indiquer un moteur (en utilisant son identifiant unique id) forcera ts à essayer
           d'obtenir une référence fonctionnelle pour le moteur indiqué et l'initialiser si
           nécessaire. Le moteur sera ensuite utilisé par défaut pour tous les algorithmes
           disponibles. La valeur par défaut est « builtin ». (Faclutatif)

   Vérification de réponse d’horodatage
       La commande -verify sert à vérifier si une réponse d'horodatage ou un jeton d'horodatage
       est valable et correspond à une demande d'horodatage ou un fichier de données
       particuliers. La commande -verify n'utilise pas le fichier de configuration.

       -data fichier_à_hacher
           La réponse ou le jeton doivent être vérifiés par rapport à fichier_à_hacher. Le
           fichier est haché avec l’algorithme de signature de message indiqué dans le jeton. Les
           options -digest et -queryfile ne doivent pas être indiquées avec cette option.
           (Facultatif)

       -digest octets_sign
           La réponse ou le jeton doivent être vérifiés par rapport à la signature de message
           indiquée par cette option. Le nombre d'octets doit correspondre à l’algorithme de
           signature de message indiqué dans le jeton. Les options -data et -queryfile ne doivent
           pas être indiquées avec cette option. (Facultatif)

       -queryfile demande.tsq
           La demande originale d’horodatage au format DER. Les options -data et -queryfile ne
           doivent pas être indiquées avec cette option. (Facultatif)

       -in réponse.tsr
           La réponse d'horodatage à vérifier au format DER. (Obligatoire)

       -token_in
           Cet indicateur peut être utilisé avec l'option -in et indique que l'entrée est un
           jeton d'horodatage encodé DER (ContentInfo) au lieu d'une réponse d'horodatage
           (TimeStampResp). (Facultatif)

       -CApath chemin_cert_confiance
           Le nom du répertoire contenant les certificats de l’autorité de confiance du client.
           Consultez l'option similaire de verify(1) pour plus de précisions. Soit cette option,
           soit -CAfile doit être indiquée. (Facultatif)

       -CAfile certs_confiance.pem
           Le nom du fichier contenant un ensemble de certificats autosignés de l’autorité de
           confiance au format PEM. Consultez l'option similaire de verify(1) pour plus de
           précisions. Soit cette option, soit -CApath doit être indiquée. (Facultatif)

       -untrusted fichier_cert.pem
           Ensemble de certificats supplémentaires qui ne sont pas de confiance au format PEM
           pouvant être nécessaires lors de la construction de la chaîne de certificats d'un
           certificat de signature de la TSA. Ce fichier doit contenir le certificat de signature
           TSA et tous les certificats d’autorité intermédiaires sauf si la réponse les inclut.
           (Facultatif)

OPTIONS DU FICHIER DE CONFIGURATION

       Les commandes -query et -reply utilisent un fichier de configuration défini par la
       variable d'environnement OPENSSL_CONF. Consultez config(5) pour une description générale
       de la syntaxe du fichier de configuration. La commande -query n’utilise que la section des
       noms symboliques d’OID et peut fonctionner sans elle. Cependant, la commande -reply a
       besoin du fichier de configuration pour fonctionner.

       Quand une option de ligne de commande est équivalente à une variable, l'option est
       toujours prioritaire sur les paramètres du fichier de configuration.

       Section tsa, default_tsa
           C’est la section principale, qui indique le nom d’une autre section contenant toutes
           les options pour la commande -reply. Cette section par défaut peut être remplacée par
           l’option -section en ligne de commande. (Facultatif)

       oid_file
           Consultez ca(1) pour la description. (Facultatif)

       oid_section
           Consultez ca(1) pour la description. (Facultatif)

       RANDFILE
           Consultez ca(1) pour la description. (Facultatif)

       serial
           Le nom du fichier contenant le numéro de série hexadécimal de la dernière réponse
           d’horodatage créée. Ce nombre est incrémenté de 1 pour chaque réponse. Si le fichier
           n'existe pas au moment de la création de réponse d'un nouveau fichier, un nouveau est
           créé avec le numéro de série 1. (Obligatoire)

       crypto_device
           Indiquer le moteur OpenSSL qui sera défini par défaut pour tous les algorithmes
           disponibles. La valeur par défaut est « builtin », vous pouvez indiquer d'autres
           moteurs pris en charge par OpenSSL (par exemple, utiliser chil pour le HSM nCipher).
           (Facultatif)

       signer_cert
           Certificat de signature TSA au format PEM. Identique à l'option -signer en ligne de
           commande. (Facultatif)

       certs
           Un fichier contenant un ensemble de certificats encodés PEM qui doivent être inclus
           dans la réponse. Identique à l'option -chain en ligne de commande. (Facultatif)

       signer_key
           La clef privée de la TSA au format PEM. Identique à l'option -inkey en ligne de
           commande. (Facultatif)

       default_policy
           La politique par défaut à utiliser quand la demande n'exige pas de politique.
           Identique à -policy en ligne de commande. (Facultatif)

       other_policies
           Liste des politiques, séparées par des virgules, qui sont aussi acceptables par la TSA
           et utilisées seulement si la demande indique explicitement l'une d’entre elles.
           (Facultatif)

       digests
           La liste des algorithmes de signature de message que la TSA accepte. Au moins un
           algorithme doit être indiqué. (Obligatoire)

       accuracy
           La précision de la source de temps de la TSA en seconde, milliseconde et microseconde.
           Par exemple secs:1, millisecs:500, microsecs:100. Si l'un des composants est manquant,
           ce champ est supposé nul. (Facultatif)

       clock_precision_digits
           Indiquer le nombre maximal de chiffres pour représenter la fraction de seconde qui
           doit être incluse dans champ temporel. Les zéros finaux doivent être supprimés, donc
           moins de chiffres pourraient être présents ou aucune fraction de seconde du tout. Pris
           en charge uniquement sur les plate-formes UNIX. La valeur maximale est 6, la valeur
           par défaut est 0. (Facultatif)

       ordering
           Si cette option est « yes », les réponses créées par cette TSA peuvent toujours être
           ordonnées, même si la différence de temps entre deux réponses est inférieure à la
           somme de leurs précisions. « no » par défaut. (Facultatif)

       tsa_name
           Si cette option est « yes », le nom d'objet de la TSA doit être inclus dans le champ
           de noms TSA de la réponse. « no » par défaut. (Facultatif)

       ess_cert_id_chain
           Les objets SignedData créés par la TSA contiennent toujours l'identifiant de
           certificat du certificat de signature dans un attribut signé (consultez la RFC 2634,
           « Enhanced Security Services »). Si cette option est « yes » et que soit la variable
           certs, soit l'option -chain est indiquée, les identifiants de certificat de la chaîne
           seront également inclus dans l’attribut SigningCertificate signé. Si cette variable
           est « no », seul l'identifiant de certificat de signature est inclus. « no » par
           défaut. (Facultatif)

VARIABLES D'ENVIRONNEMENT

       OPENSSL_CONF contient l'emplacement du fichier de configuration et peut être modifiée par
       l'option -config en ligne de commande.

EXEMPLES

       Tous les exemples ci-dessous supposent que OPENSSL_CONF est défini vers un fichier de
       configuration approprié, comme dans le fichier d'exemple de configuration
       openssl/apps/openssl.cnf.

   Demande d’horodatage
       Pour créer une demande d'horodatage pour design1.txt avec SHA-1 sans nonce, avec la
       politique et sans certificat nécessaire dans la réponse :

         openssl ts -query -data design1.txt -no_nonce \
               -out design1.tsq

       Pour créer une demande d'horodatage similaire en indiquant explicitement l’empreinte du
       message :

         openssl ts -query -digest b7e5d3f93198b38379852f2c04e78d73abdd0f4b \
                -no_nonce -out design1.tsq

       Pour afficher le contenu de la requête précédente en format lisible :

         openssl ts -query -in design1.tsq -text

       Pour créer une demande d'horodatage qui comprend la signature MD-5 de design2.txt, demande
       le certificat du signataire et nonce, indique un identifiant de politique (en supposant
       que le nom tsa_policy1 est défini dans la section OID du fichier de configuration) :

         openssl ts -query -data design2.txt -md5 \
               -policy tsa_policy1 -cert -out design2.tsq

   Réponse d’horodatage
       Avant de créer une réponse, un certificat de signature doit être créé pour la TSA qui
       contient l'extension d’utilisation de clef étendue critique timeStamping sans aucune autre
       extension d'utilisation de clef. Vous pouvez ajouter la ligne « extendedKeyUsage =
       critical,timeStamping » à la section de certificat utilisateur du fichier de configuration
       pour créer un certificat approprié. Consultez req(1), ca(1) et x509(1) pour les
       instructions. Les exemples ci-dessous supposent que cacert.pem contient le certificat de
       l’autorité de certification, tsacert.pem est le certificat de signature émis par
       cacert.pem et tsakey.pem est la clef privée de la TSA.

       Pour créer une réponse d'horodatage pour une requête :

         openssl ts -reply -queryfile design1.tsq -inkey tsakey.pem \
               -signer tsacert.pem -out design1.tsr

       Pour utiliser les paramètres du fichier de configuration :

         openssl ts -reply -queryfile design1.tsq -out design1.tsr

       Pour afficher une réponse d’horodatage sur la sortie standard sous forme lisible :

         openssl ts -reply -in design1.tsr -text

       Pour créer un jeton d'horodatage au lieu d’une réponse d'horodatage :

         openssl ts -reply -queryfile design1.tsq -out design1_token.der \
               -token_out

       Pour afficher un jeton d’horodatage sur la sortie standard sous forme lisible :

         openssl ts -reply -in design1_token.der -token_in -text -token_out

       Pour extraire le jeton d'horodatage d'une réponse :

         openssl ts -reply -in design1.tsr -out design1_token.der -token_out

       Pour ajouter l’information d’état « granted » (accordé) à un jeton d'horodatage créant
       ainsi une réponse valable :

         openssl ts -reply -in design1_token.der -token_in -out design1.tsr

   Vérification d’horodatage
       Pour vérifier une réponse d’horodatage par rapport à une demande :

         openssl ts -verify -queryfile design1.tsq -in design1.tsr \
               -CAfile cacert.pem -untrusted tsacert.pem

       Pour vérifier une réponse d’horodatage qui comprend la chaîne de certificats :

         openssl ts -verify -queryfile design2.tsq -in design2.tsr \
               -CAfile cacert.pem

       Pour vérifier un jeton d'horodatage par rapport au fichier de données d'origine :

         openssl ts -verify -data design2.txt -in design2.tsr \
               -CAfile cacert.pem

       Pour vérifier un jeton d'horodatage par rapport à une empreinte de message :

         openssl ts -verify -digest b7e5d3f93198b38379852f2c04e78d73abdd0f4b \
                -in design2.tsr -CAfile cacert.pem

       D’autres exemples sont aussi disponibles dans le répertoire test.

BOGUES

       Les bogues et suggestions peuvent être envoyés à Zoltan Glozik <zglozik@opentsa.org>. Une
       liste des problèmes connus suit.

       — Pas de prise en charge d’horodatages par SMTP, mais c’est assez facile de mettre en
       œuvre une TSA automatique à base de courriers électroniques avec procmail(1) et perl(1).
       La prise en charge du serveur HTTP est fournie sous forme d'un module Apache séparé. La
       prise en charge de client HTTP est assurée par tsget(1). Le protocole TCP/IP pur n'est pas
       pris en charge.
       — Le fichier contenant le dernier numéro de série de la TSA n'est pas verrouillé lorsqu'il
       est lu ou écrit. C’est un problème si plusieurs instances d’openssl(1) tentent de créer
       une réponse d'horodatage en même temps. Ce n'est pas un problème si le module de serveur
       Apache est utilisé : il fait un verrouillage correct.
       — Recherchez le mot « FIXME » dans les fichiers source.
       — Le code source devrait vraiment être examiné par quelqu'un d'autre.
       — Plus de tests sont nécessaires, seuls quelques tests de base ont été effectués
       (consultez test/testtsa).

AUTEUR

       Zoltan Glozik <zglozik@opentsa.org>, projet OpenTSA (<http://www.opentsa.org>)

VOIR AUSSI

       tsget(1), openssl(1), req(1), x509(1), ca(1), genrsa(1), config(5)

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.