OPENSSL(1ssl) OpenSSL OPENSSL(1ssl) NOM openssl - Programme en ligne de commande d'OpenSSL SYNOPSIS openssl command [ options ... ] [ parametres ... ] openssl no-XXX [ options ] openssl -help | -version DESCRIPTION OpenSSL est une boite a outils cryptographique qui implemente les protocoles reseau Secure Sockets Layer (SSL, couche de sockets securisee) et Transport Layer Security (TLS, securite pour la couche de transport) ainsi que les normes cryptographiques liees dont ils ont besoin. Le programme openssl est un programme en ligne de commande qui permet d'utiliser les differentes fonctions cryptographiques de la bibliotheque crypto d'OpenSSL a partir de l'invite de commande. Il peut etre utilise pour : o la creation et gestion de clefs publiques et privees, de parametres ; o les operations cryptographiques a clef publique ; o la creation de certificats X.509, CSR et CRL ; o le calcul de condenses de messages et de codes d'authentification de message ; o le chiffrement et le dechiffrement ; o le test de clients et serveurs SSL/TLS ; o la gestion de courriers S/MIME signes ou chiffres ; o les requetes, creation et verification d'horodatages. RESUME DES COMMANDES Le programme openssl fournit une variete de commandes (commande dans le << SYNOPSIS >> ci-dessus). Chaque commande possede de multiples options et parametres d'arguments, affiches ci-dessus comme options et parametres. Une documentation detaillee et des exemples d'utilisation des sous-commandes les plus courantes sont disponibles (par exemple, x509(1). La sous-commande openssl-list(1) peut etre utiliser pour lister les sous-commandes. La commande no-XXX evalue si une commande du nom specifie est disponible. Si aucune commande XXX n'existe, elle renvoie 0 (succes) et affiche no-XXX ; sinon, elle renvoie 1 et affiche XXX. Dans les deux cas, la sortie est dirigee vers la sortie standard et rien n'est affiche sur le flux d'erreur standard. Les parametres supplementaires en ligne de commande sont toujours ignores. Dans la mesure ou il y a pour chaque chiffrement une commande du meme nom, cela fournit un moyen facile pour les scripts d'interpreteur de commandes de tester la disponibilite de chiffrements dans le programme openssl (no-XXX ne peut pas detecter les pseudo-commandes telles que quit, list ou no-XXX elle-meme). Option de Configuration De nombreuses commandes utilisent un fichier de configuration externe pour certains ou tous leurs parametres et disposent d'une option -config pour indiquer ce fichier. Le nom par defaut du fichier est openssl.cnf dans la zone de stockage des certificats par defaut, qui peut etre determine par la commande openssl-version(1) avec les options -d ou -a. La variable d'environnement OPENSSL_CONF peut etre utilisee pour indiquer un emplacement different de ce fichier ou pour desactiver le chargement d'une configuration (avec une chaine vide). Entre autres choses, le fichier de configuration peut etre utilise pour charger des modules et pour specifier des parametres pour la generation de certificats et de nombres aleatoires. Consultez config(5) pour plus de details. Commandes standard asn1parse Traitement d'une sequence ASN.1. ca Gestion de l'Autorite de Certification (CA). ciphers Determination de la description des suites de chiffrements. cms Commande CMS (<< Cryptographic Message Syntax >>). crl Gestion des listes de revocations de certificat (CRL). crl2pkcs7 Conversion CRL vers PKCS#7. dgst Calcul de condenses de message. Les calculs MAC ont ete remplaces par openssl-mac(1). dhparam Production et gestion de parametres Diffie-Hellman. Remplace par openssl-genpkey(1) et openssl-pkeyparam(1). dsa Gestion de donnees DSA. dsaparam Production et gestion de parametres DSA. Remplace par openssl-genpkey(1) et openssl-pkeyparam(1). ec Traitement de clefs EC (courbe elliptique). ecparam Manipulation et generation de parametre EC. enc Chiffrement, dechiffrement et encodage. engine Renseignements et manipulation de moteur (module chargeable). errstr Conversion de numero d'erreur vers un descriptif textuel. fipsinstall Installation de la configuration de FIPS gendsa Production de clef privee DSA a partir de parametres. Remplace par openssl-genpkey(1) et openssl-pkey(1). genpkey Production de clef privee ou de parametres. genrsa Production de clef privee RSA. Remplace par openssl-genpkey(1). help Afficher des informations sur des options de commande. info Afficher diverses informations ajoutees dans les bibliotheques d'OpenSSL. kdf Fonctions de derivation de cle. list Liste des algorithmes et des fonctionnalites. mac Calcul du code d'authentification de message. nseq Creer ou examiner une sequence de certificats Netscape. ocsp Commande pour le protocole de verification en ligne de certificats. passwd Production de mots de passe haches. pkcs12 Gestion de donnees PKCS#12. pkcs7 Gestion de donnees PKCS#7. pkcs8 Commande de conversion de clef privee de format PKCS#8. pkey Gestion de clefs publiques et privees. pkeyparam Gestion de parametres d'algorithme a clef publique. pkeyutl Commande d'operations cryptographiques d'algorithme a clef publique. prime Calcul de nombres premiers. rand Production d'octets pseudoaleatoires. rehash Creation de lien symboliques vers les fichiers de certificats et CRL nommes selon les valeurs de hachage. req Gestion des demandes de chiffrement de certificats X.509 PKCS#10 (CSR). rsa Gestion de clefs RSA. rsautl Commande RSA pour signer, verifier, chiffrer et dechiffrer. Remplace par openssl-pkeyutl(1). s_client Cela fournit un client SSL/TLS generique qui peut etablir une connexion transparente avec un serveur distant parlant SSL/TLS. Etant seulement prevu pour du test, il n'offre qu'une interface fonctionnelle rudimentaire tout en utilisant en interne la quasi-totalite des fonctionnalites de la bibliotheque ssl d'OpenSSL. s_server Cela fournit un serveur SSL/TLS generique qui accepte les connexions a partir de clients distants parlant SSL/TLS. Etant seulement prevu pour du test, il n'offre qu'une interface fonctionnelle rudimentaire tout en utilisant en interne la quasi-totalite des fonctionnalites de la bibliotheque ssl d'OpenSSL. Il fournit a la fois son propre protocole oriente ligne de commande pour tester les fonctions SSL et une fonction simple de reponse HTTP pour emuler un serveur web a l'ecoute de SSL/TLS. s_time Minuterie de connexion SSL. sess_id Gestion de donnees de session SSL. smime Traitement de courriers S/MIME. speed Mesure la vitesse de l'algorithme. spkac Commande d'affichage et de generation de SPKAC. srp Entretien du fichier de mot de passe SRP. Cette commande est obsolete. storeutl Commande pour lister et afficher les certificats, clefs, CRL, etc. ts Commande d'autorite de certification d'horodatage. verify Verification de certificat X.509. Consultez aussi la page de manuel openssl-verification-options(1) version Information sur la version d'OpenSSL. x509 Gestion de donnees pour les certificats X.509. Commandes de condense de message blake2b512 Condense BLAKE2b-512 blake2s256 Condense BLAKE2s-256 md2 Condense MD2 md4 Condense MD4 md5 Condense MD5 mdc2 Condense MDC2 rmd160 Condense RMD-160 sha1 Condense SHA-10 sha224 Condense SHA-2 224 sha256 Condense SHA-2 256 sha384 Condense SHA-2 384 sha512 Condense SHA-2 512 sha3-224 Condense SHA-3 224 sha3-256 Condense SHA-3 256 sha3-384 Condense SHA-3 384 sha3-512 Condense SHA-3 512 keccak-224 Condense KECCAK 224 keccak-256 Condense keccak-256 keccak-384 Condense KECCAK 384 keccak-512 Condense KECCAK 512 shake128 Condense SHA-3 SHAKE128 shake256 Condense SHA-3 SHAKE256 sm3 Condense SM3 Commandes de chiffrement, de dechiffrement et d'encodage. Les alias suivant fournissent un acces pratique aux encodages et chiffrements les plus courants. Selon la maniere dont OpenSSL a ete configure et construit, tous les chiffrements listes ici peuvent ne pas etre presents. Consultez openssl-enc(1) pour plus d'informations. aes128, aes-128-cbc, aes-128-cfb, aes-128-ctr, aes-128-ecb, aes-128-ofb Algorithme de chiffrement AES-128 aes192, aes-192-cbc, aes-192-cfb, aes-192-ctr, aes-192-ecb, aes-192-ofb Algorithme de chiffrement AES-192 aes256, aes-256-cbc, aes-256-cfb, aes-256-ctr, aes-256-ecb, aes-256-ofb Algorithme de chiffrement AES-256 aria128, aria-128-cbc, aria-128-cfb, aria-128-ctr, aria-128-ecb, aria-128-ofb Algorithme de chiffrement Aria-128 aria192, aria-192-cbc, aria-192-cfb, aria-192-ctr, aria-192-ecb, aria-192-ofb Algorithme de chiffrement Aria-192 aria256, aria-256-cbc, aria-256-cfb, aria-256-ctr, aria-256-ecb, aria-256-ofb Algorithme de chiffrement Aria-256 base64 Encodage base64 bf, bf-cbc, bf-cfb, bf-ecb, bf-ofb Algorithme de chiffrement Blowfish camellia128, camellia-128-cbc, camellia-128-cfb, camellia-128-ctr, camellia-128-ecb, camellia-128-ofb Algorithme de chiffrement Camellia-128 camellia192, camellia-192-cbc, camellia-192-cfb, camellia-192-ctr, camellia-192-ecb, camellia-192-ofb Algorithme de chiffrement Camellia-192 camellia256, camellia-256-cbc, camellia-256-cfb, camellia-256-ctr, camellia-256-ecb, camellia-256-ofb Algorithme de chiffrement Camellia-256 cast, cast-cbc Algorithme de chiffrement CAST cast5-cbc, cast5-cfb, cast5-ecb, cast5-ofb Algorithme de chiffrement CAST5 chacha20 Algorithme de chiffrement chacha20 des, des-cbc, des-cfb, des-ecb, des-ede, des-ede-cbc, des-ede-cfb, des-ede-ofb, des-ofb Algorithme de chiffrement DES des3, desx, des-ede3, des-ede3-cbc, des-ede3-cfb, des-ede3-ofb Algorithme de chiffrement Triple-DES idea, idea-cbc, idea-cfb, idea-ecb, idea-ofb Algorithme de chiffrement IDEA rc2, rc2-cbc, rc2-cfb, rc2-ecb, rc2-ofb Algorithme de chiffrement RC2 rc4 Algorithme de chiffrement RC4 rc5, rc5-cbc, rc5-cfb, rc5-ecb, rc5-ofb Algorithme de chiffrement RC5 seed, seed-cbc, seed-cfb, seed-ecb, seed-ofb Algorithme de chiffrement SEED sm4, sm4-cbc, sm4-cfb, sm4-ctr, sm4-ecb, sm4-ofb Algorithme de chiffrement SM4 OPTIONS Le detail des options qui sont disponibles depend de chaque commande. Cette section decrit certaines des options courantes avec leur comportement courant. Options du programme Ces options peuvent etre indiquees sans commande specifiee pour obtenir une aide ou des infomations de version -help Fournit un resume succinct de toutes les options. Pour des informations plus detaillees, il existe une option -help pour chaque commande. La forme --help est aussi admise. -version Fournit un resume succinct de la version du programme openssl. Pour des informations plus detaillees, consultez openssl-version(1). La forme --version est aussi admise. Options courantes -help Si une option demande un parametre, le << type >> du parametre est aussi donne. -- Cela cloture la liste des options. C'est surtout utile si des parametres de nom de fichier commencent par un signe moins : openssl verify [attributs...] -- -cert1.pem... Options de format Consultez la page de manuel openssl-format-options(1). Options de phrase secrete Consultez la page de manuel openssl-passphrase-options(1). Options d'etat aleatoire Avant OpenSSL 1.1.1, il etait courant que des applications conservent les informations sur l'etat du generateur de nombres aleatoires dans un fichier qui etait charge au demarrage et reecrit lors de la sortie. Dans les systemes d'exploitation modernes, ce n'est plus necessaire dans la mesure ou OpenSSL genere une amorce lui-meme a partir d'une source d'entropie fournie par le systeme d'exploitation. Ces attributs sont encore pris en charge pour des plateformes ou des circonstances particulieres qui pourraient en avoir besoin. C'est generalement une erreur d'utiliser le meme fichier d'amorce plus d'une fois et chaque utilisation de rand devrait etre associee a celle de -writerand. -rand fichiers Un fichier ou des fichiers contenant des donnees aleatoires utilisees pour amorcer le generateur de nombres aleatoires. Plusieurs fichiers peuvent etre indiques separes par un caractere dependant du systeme d'exploitation. Le separateur est ";" pour MS-Windows, "," pour OpenVMS et ":" pour tous les autres. Une autre maniere d'indiquer plusieurs fichiers est de repeter cet attribut avec plusieurs noms de fichier. -writerand fichier Ecrit les donnees d'amorce dans le fichier specifie lors de la sortie. Ce fichier peut etre utilise lors d'une invocation ulterieure de la commande. Options de verification de certificats Consultez la page de manuel openssl-verification-options(1). Options de format de nom Consultez la page de manuel openssl-namedisplay-options(1). Options de version TLS Plusieurs commandes utilisent SSL, TLS ou DTLS. Par defaut, les commandes utilisent TLS et les clients offriront la version la plus basse et la plus elevee du protocole qu'ils prennent en charge, et les serveurs prendront la valeur la plus elevee que le client offre et qui est aussi prise en charge par le serveur. Les versions ci-dessous peuvent servir a limiter les versions du protocole utilisees, et soit TCP (SSL et TLS) soit UDP (DTLS) est utilise. Notez que les protocoles et les attributs peuvent ne pas etre disponibles, selon la maniere dont OpenSSL a ete construit. -ssl3, -tls1, -tls1_1, -tls1_2, -tls1_3, -no_ssl3, -no_tls1, -no_tls1_1, -no_tls1_2, -no_tls1_3 Ces options requierent ou desactivent l'utilisation des protocoles SSL ou TLS. Quand une version particuliere de TLS est requise, seule cette version sera offerte ou acceptee. Un seul protocole particulier peut etre indique et il ne peut etre combine a aucune des options no_. Les options no_* ne fonctionnent pas avec les commandes s_time et ciphers mais fonctionnent avec les commandes s_client et s_server. -dtls, -dtls1, -dtls1_2 Ces options specifient l'utilisation de DTLS a la place de LTS. Avec -dtls, les clients negocieront avec n'importe quelle version du protocole DTLS prise en charge. Utiliser les options -dtls1 ou -dtls1_2 pour ne prendre en charge que DTLS1.0 ou DTLS1.2, respectivement. Options de moteur -engine id Charger le moteur identifie par id et utiliser toutes les methodes qu'il met en oeuvre (algorithmes, stockage de cles, etc.), a moins qu'il ne soit specifie autre chose dans la documentation specifique a la commande ou s'il est configure pour faire ainsi comme cela est decrit dans << Configuration du moteur >> dans config(5). Le moteur sera utilise pour les identifiants de cle specifies avec -key et les options similaires quand une option telle que -keyform engine est passee. Le moteur "loader_attic" est un cas particulier. Il est destine uniquement aux fins de tests internes d'OpenSSL et gere le chargement de cles, de parametres, de certificats et de CRL a partir de fichiers. Quand ce moteur est utilise, les fichiers avec ce type d'identifiants sont lus avec ce moteur. Utiliser le schema "file:" est facultatif ; un nom de fichier (chemin) fonctionnera. Les options indiquant des cles, telles que -key et d'autres semblables, peuvent utiliser la cle generique du moteur OpenSSL chargeant le schema d'URI "org.openssl.engine:" pour recuperer les cles privees et les cles publiques. La syntaxe de l'URI est comme suit, dans une forme simplifiee : org.openssl.engine:{engineid}:{keyid} Ou "{engineid}" est l'identite ou le nom du moteur et "{keyid}" est un identifiant de cle acceptable pour ce moteur. Par exemple, lors de l'utilisation d'un moteur qui s'interface a une implementation de PKCS#11, l'URI de cle generique peut etre quelque chose comme cela (il se trouve que c'est un exemple pour le moteur PKCS#11 qui fait partie de OpenSC) : -key org.openssl.engine:pkcs11:label_une-cle-privee Une troisieme possibilite, pour les moteurs et les fournisseurs (provider) qui ont implemente leur propre OSSL_STORE_LOADER(3), "org.openssl.engine:" ne devrait pas etre necessaire. Pour une implementation de PKCS#11 qui a mis en oeuvre un chargeur de ce type, il devrait etre possible d'utiliser directement l'URI de PKCS#11 tel que defini dans RFC 7512 : -key pkcs11:object=une-cle-privee;pin-value=1234 Options de fournisseur -provider nom Charger et initialiser le fournisseur identifie par nom. Le nom peut etre aussi un chemin vers le module du fournisseur. Dans ce cas, le nom du fournisseur sera le chemin specifie et pas seulement le nom du module dufournisseur. L'interpretation des chemins relatifs est specifique a la plateforme. Le chemin << MODULESDIR >> configure, la variable d'environnement OPENSSL_MODULES ou le chemin indique par -provider-path est ajoute au debut des chemins relatifs. Consultez provider(7) pour une description plus detaillee. -provider-path chemin Specifie le chemin de recherche qui sera utilise pour rechercher des fournisseurs. De facon equivalente, la variable d'environnement OPENSSL_MODULES peut etre definie. -propquery propq Specifie la clause de requete de propriete a utiliser lors de la recherche d'algorithmes a partir des fournisseurs charges. Consultez property(7) pour une description plus detaillee. ENVIRONNEMENT La bibliotheque OpenSSL peut recuperer certains parametres de configuration a partir de l'environnement. Certaines de ces variables sont listees plus loin. Pour des informations sur des commandes particulieres, voir openssl-engine(1), openssl-rehash(1) et tsget(1). Pour des informations sur l'utilisation de variables d'environnement dans la configuration, consultez << ENVIRONMENT >> dans config(5). Pour des informations sur la requete ou la specification d'attributs d'architecture du CPU, consultez OPENSSL_ia32cap(3) et OPENSSL_s390xcap(3). Pour des informations sur toutes les variables d'environnement utilisees par les bibliotheques d'OpenSSL, consultez openssl-env(7). OPENSSL_TRACE=nom[,...] Activer le suivi de la sortie de la bibliotheque OpenSSL, par nom. Cette sortie n'a de sens que si vous connaissez bien les fonctions internes d'OpenSSL. Aussi, cela pourrait ne vous donner aucune sortie si OpenSSL a ete construit sans prise en charge du suivi. La valeur est une liste de noms separes par des virgules dont les suivants sont disponibles : TRACE Suit l'API de suivi d'OpenSSL elle-meme. INIT Suit l'initialisation et le nettoyage de la bibliotheque OpenSSL. TLS Suit le protocole TLS/SSL. TLS_CIPHER Suit les chiffrements utilises par le protocole TLS/SSL. CONF Montre des details sur la configuration du fournisseur et du moteur. ENGINE_TABLE La fonction qui est utilisee par le code de RSA, DSA, etc., pour selectionner les moteurs (ENGINE) enregistres, les caches par defaut et les references fonctionnelles, etc., generera des resumes de debogage. ENGINE_REF_COUNT Les comptes de reference dans la structure ENGINE seront suivis avec une ligne generee a chaque modification. PKCS5V2 Suit la generation de cles PKCS#5 v2. PKCS12_KEYGEN Suit la generation de cles PKCS#12. PKCS12_DECRYPT Suit le dechiffrement PKCS#12. X509V3_POLICY Generer l'arbre de politiques complet a divers points durant l'evaluation de la politique de X.509 v3. BN_CTX Suit les operations de contexte BIGNUM. CMP Suit l'activite de client et de serveur CMP. STORE Suit les operations STORE. DECODER Suit les operations de decodeur. ENCODER Suit les operations d'encodeur. REF_COUNT Suit la decrementation de certaines references de structure ASN.1. HTTP Suit l'activite du client et du serveur HTTP, comme les messages envoyes et recus VOIR AUSSI openssl-asn1parse(1), openssl-ca(1), openssl-ciphers(1), openssl-cms(1), openssl-crl(1), openssl-crl2pkcs7(1), openssl-dgst(1), openssl-dhparam(1), openssl-dsa(1), openssl-dsaparam(1), openssl-ec(1), openssl-ecparam(1), openssl-enc(1), openssl-engine(1), openssl-errstr(1), openssl-gendsa(1), openssl-genpkey(1), openssl-genrsa(1), openssl-kdf(1), openssl-list(1), openssl-mac(1), openssl-nseq(1), openssl-ocsp(1), openssl-passwd(1), openssl-pkcs12(1), openssl-pkcs7(1), openssl-pkcs8(1), openssl-pkey(1), openssl-pkeyparam(1), openssl-pkeyutl(1), openssl-prime(1), openssl-rand(1), openssl-rehash(1), openssl-req(1), openssl-rsa(1), openssl-rsautl(1), openssl-s_client(1), openssl-s_server(1), openssl-s_time(1), openssl-sess_id(1), openssl-smime(1), openssl-speed(1), openssl-spkac(1), openssl-srp(1), openssl-storeutl(1), openssl-ts(1), openssl-verify(1), openssl-version(1), openssl-x509(1), config(5), crypto(7), openssl-env(7). ssl(7), x509v3_config(5) HISTORIQUE Les options list -XXX-algorithms ont ete ajoutees dans la version 1.0.0 d'OpenSSL. Pour des informations sur la disponibilite des autres commandes, consultez les pages de manuel correspondantes. L'option -issuer_checks est obsolete depuis OpenSSL 1.1.0 et est ignoree silencieusement. Les options -xcertform et -xkeyform sont obsoletes depuis OpenSSL 3.0 et n'ont pas d'effet. Le mode interactif qui pouvait etre invoque en executant la commande "openssl" sans parametre supplementaire a ete retire dans OpenSSL 3.0, et l'execution de ce programme sans parametre est maintenant equivalente a "openssl help". COPYRIGHT Copyright 2000-2023 Les auteurs du projet OpenSSL. Tous droits reserves. Sous licence Apache 2.0 (la << Licence >>). Vous ne pouvez utiliser ce fichier que conformement avec la Licence. Vous trouverez une copie dans le fichier LICENSE de la distribution du source ou a l'adresse . TRADUCTION La traduction francaise de cette page de manuel a ete creee par stolck, Nicolas Francois , David Prevot et Jean-Pierre Giraud Cette traduction est une documentation libre ; veuillez vous reporter a la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITE LEGALE. Si vous decouvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message a . 3.2.1 30 janvier 2024 OPENSSL(1ssl)