Scroll to navigation

CIPHERS(1) OpenSSL CIPHERS(1)

NOM

ciphers - Outil d'affichage et de listage des chiffrements SSL

SYNOPSIS

openssl ciphers [-v] [-ssl2] [-ssl3] [-tls1] [listechiffrementlist]

DESCRIPTION

La commande cipherlist convertit les listes de chiffrement OpenSSL en des listes de chiffrement SSL triées par préférence. Elle peut être employée comme test afin de déterminer la liste de chiffrement appropriée.

OPTIONS DE LA COMMANDE

option bavard. Affichage des clés de chiffrement avec une description complète du protocole (SSLv2 ou SSLv3 ; TLS inclus), échange de clé, authentification, encodage et algorithmes mac utilisés ainsi que les restrictions sur la longueur des clés et si l'algorithme est classé en tant que chiffrement d'"export". Remarquons que sans l'option -v, les chiffrements peuvent sembler apparaître en double dans une liste ; c'est le cas lorsque des chiffrements similaires sont disponibles pour SSL v2 et SSL v3/TLS v1.
affiche seulement les chiffrements SSL v3.
affiche seulement les chiffrements SSL v2.
affiche seulement les chiffrements TLS.
bref descriptif d'utilisation.
une liste de chiffrement à convertir en une liste de préférences de chiffrement. Si cette option est omise, la liste de chiffrement par défaut sera prise. Le format est décrit ci-dessous.

FORMAT DES LISTES DE CHIFFREMENT

La liste de chiffrement comprend une ou plusieurs chaînes de chiffrement, séparées par des double-points. Les virgules et point-virgules sont également des séparateurs valides, mais d'habitude, les double-points sont utilisés.

La chaîne de chiffrement se présente sous différentes formes.

Elle peut être une suite simple de chiffrements comme pour le RC4-SHA.

Elle peut être une liste de suites de chiffrement, contenant un certain algorithme, ou des suites de chiffrements d'un type précis. Par exemple, SHA1 représente toutes les suites utilisant l'algorithme de signature SHA1 et SSLv3 tous les algorithmes SSL v3.

Les listes de suites de chiffrements peuvent être combinées en une seule chaîne de chiffrement en utilisant le caractère +. Ceci correspond à une opération logique et (and). Par exemple, SHA1+DES représente toutes les suites de chiffrement contenant à la fois les algorithmes SHA1 et DES.

Toute chaîne de chiffrement peut être précédée par les caractères !, - ou +.

Si ! est utilisé, alors les chiffrements sont définitivement supprimés de la liste. Les chiffrements supprimés ne peuvent réapparaître dans la liste même s'ils sont nommés explicitement.

Si - est utilisé, les chiffrements sont également supprimés de la liste, mais certains ou tous les chiffrements peuvent être rajoutés par la suite par des options supplémentaires.

Si + est utilisé, les chiffrements sont déplacés en fin de liste. Cette option n'ajoute aucun nouveau chiffrement, seuls les chiffrements existants sont déplacés.

Si aucun de ces caractères n'est présent, la chaîne est uniquement interprétée en tant que liste de chiffrements à ajouter à la liste de préférences actuelle. Tous les chiffrements qui sont déjà présent sont ignorés ; ils ne seront pas déplacés à la fin de la liste.

De plus, la chaîne de chiffrement @STRENGTH peut être employée à n'importe quel endroit afin de trier la liste de chiffrement actuelle en fonction de la longueur de la clé de l'algorithme de codage.

CHAÎNES DE CHIFFREMENT

Ci-dessous est une liste de toutes les chaînes de chiffrement permises et de leur sens.

La liste de chiffrement par défaut. Elle est déterminée lors de la compilation et vaut normalement ALL:!ADH:RC4+RSA:+SSLv2:@STRENGTH. Si présente, elle doit être la première chaîne de chiffrement spécifiée.
Toutes les suites de chiffrement à part les chiffrements eNULL qui doivent être activés explicitement.
Les suites à "haut" chiffrement. Ceci signifie actuellement que la clé de chiffrement doit avoir une longueur supérieure à 128 octets.
Les suites à "moyen" chiffrement. Ceci signifie actuellement que la clé de chiffrement doit avoir une longueur égale à 128 octets.
Les suites à "bas" chiffrement. Ceci signifie actuellement que la clé de chiffrement doit avoir une longueur de 56 ou 64 octets, mais les suites dites d'export sont traitées à part.
Les algorithmes de chiffrement d'export, 40 et 56 octets.
Les algorithmes de chiffrement d'export, 40 octets.
Les algorithmes de chiffrement d'export, 56 octets.
le chiffrement "NULL" ne correspond à aucun chiffrement, représente ainsi un risque de sécurité important et est déactivé sauf si explicitement cité.
les suites de chiffrements sans authentification. Ceux-ci sont actuellement les algorithmes anonymes DH. Ces suites de chiffrement sont vulnérables à des attaques dites "homme au milieu" ("man in the middle") et leur usage est déconseillé.
suites de chiffrement utilisant l'échange de clé RSA.
suites de chiffrement utilisant l'accord de clé éphémère DH.
suites de chiffrement utilisant l'accord de clé DH ainsi que des certificats DH signés par des CAs utilisant des clés RSA et DSS respectivement. Non implémenté
suites de chiffrement utilisant l'authentification RSA, c'est-à-dire que les certificats portent une clé RSA.
suites de chiffrement utilisant l'authentification DSS, c'est-à-dire que les certificats portent une clé DSS.
suites de chiffrement utilisant l'authentification DH effectivement, c'est-à-dire que les certificats portent une clé DH. Non implémenté.
suites de chiffrement utilisant l'échange de clé, l'authentification, le chiffrement ou tous les algorithmes FORTEZZA. Non implémenté.
suites de chiffrements TLS v1.0, SSL v3.0 ou SSL v2.0 respectivement.
suites de chiffrement utilisant DH, incluant DH anonyme.
suites de chiffrement DH anonymes.
3DES
suites de chiffrement utilisant le triple DES.
suites de chiffrement utilisant DES simple (sauf triple DES).
suites de chiffrement utilisant RC4.
suites de chiffrement utilisant RC2.
suites de chiffrement utilisant IDEA.
suites de chiffrement utilisant MD5.
suites de chiffrement utilisant SHA1.

NOMS DES SUITES DE CHIFFREMENT

La liste suivante donne les noms des suites de chiffrement SSL ou TLS partant de la spécification correspondante et leurs équivalents OpenSSL.

Suites de chiffrement SSL v3.0.

 SSL_RSA_WITH_NULL_MD5                   NULL-MD5
 SSL_RSA_WITH_NULL_SHA                   NULL-SHA
 SSL_RSA_EXPORT_WITH_RC4_40_MD5          EXP-RC4-MD5
 SSL_RSA_WITH_RC4_128_MD5                RC4-MD5
 SSL_RSA_WITH_RC4_128_SHA                RC4-SHA
 SSL_RSA_EXPORT_WITH_RC2_CBC_40_MD5      EXP-RC2-CBC-MD5
 SSL_RSA_WITH_IDEA_CBC_SHA               IDEA-CBC-SHA
 SSL_RSA_EXPORT_WITH_DES40_CBC_SHA       EXP-DES-CBC-SHA
 SSL_RSA_WITH_DES_CBC_SHA                DES-CBC-SHA
 SSL_RSA_WITH_3DES_EDE_CBC_SHA           DES-CBC3-SHA
 SSL_DH_DSS_EXPORT_WITH_DES40_CBC_SHA    Not implemented.
 SSL_DH_DSS_WITH_DES_CBC_SHA             Not implemented.
 SSL_DH_DSS_WITH_3DES_EDE_CBC_SHA        Not implemented.
 SSL_DH_RSA_EXPORT_WITH_DES40_CBC_SHA    Not implemented.
 SSL_DH_RSA_WITH_DES_CBC_SHA             Not implemented.
 SSL_DH_RSA_WITH_3DES_EDE_CBC_SHA        Not implemented.
 SSL_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA   EXP-EDH-DSS-DES-CBC-SHA
 SSL_DHE_DSS_WITH_DES_CBC_SHA            EDH-DSS-CBC-SHA
 SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA       EDH-DSS-DES-CBC3-SHA
 SSL_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA   EXP-EDH-RSA-DES-CBC-SHA
 SSL_DHE_RSA_WITH_DES_CBC_SHA            EDH-RSA-DES-CBC-SHA
 SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA       EDH-RSA-DES-CBC3-SHA
 SSL_DH_anon_EXPORT_WITH_RC4_40_MD5      EXP-ADH-RC4-MD5
 SSL_DH_anon_WITH_RC4_128_MD5            ADH-RC4-MD5
 SSL_DH_anon_EXPORT_WITH_DES40_CBC_SHA   EXP-ADH-DES-CBC-SHA
 SSL_DH_anon_WITH_DES_CBC_SHA            ADH-DES-CBC-SHA
 SSL_DH_anon_WITH_3DES_EDE_CBC_SHA       ADH-DES-CBC3-SHA
 SSL_FORTEZZA_KEA_WITH_NULL_SHA          Not implemented.
 SSL_FORTEZZA_KEA_WITH_FORTEZZA_CBC_SHA  Not implemented.
 SSL_FORTEZZA_KEA_WITH_RC4_128_SHA       Not implemented.

Suites de chiffrement TLS v1.0.

 TLS_RSA_WITH_NULL_MD5                   NULL-MD5
 TLS_RSA_WITH_NULL_SHA                   NULL-SHA
 TLS_RSA_EXPORT_WITH_RC4_40_MD5          EXP-RC4-MD5
 TLS_RSA_WITH_RC4_128_MD5                RC4-MD5
 TLS_RSA_WITH_RC4_128_SHA                RC4-SHA
 TLS_RSA_EXPORT_WITH_RC2_CBC_40_MD5      EXP-RC2-CBC-MD5
 TLS_RSA_WITH_IDEA_CBC_SHA               IDEA-CBC-SHA
 TLS_RSA_EXPORT_WITH_DES40_CBC_SHA       EXP-DES-CBC-SHA
 TLS_RSA_WITH_DES_CBC_SHA                DES-CBC-SHA
 TLS_RSA_WITH_3DES_EDE_CBC_SHA           DES-CBC3-SHA
 TLS_DH_DSS_EXPORT_WITH_DES40_CBC_SHA    Not implemented.
 TLS_DH_DSS_WITH_DES_CBC_SHA             Not implemented.
 TLS_DH_DSS_WITH_3DES_EDE_CBC_SHA        Not implemented.
 TLS_DH_RSA_EXPORT_WITH_DES40_CBC_SHA    Not implemented.
 TLS_DH_RSA_WITH_DES_CBC_SHA             Not implemented.
 TLS_DH_RSA_WITH_3DES_EDE_CBC_SHA        Not implemented.
 TLS_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA   EXP-EDH-DSS-DES-CBC-SHA
 TLS_DHE_DSS_WITH_DES_CBC_SHA            EDH-DSS-CBC-SHA
 TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA       EDH-DSS-DES-CBC3-SHA
 TLS_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA   EXP-EDH-RSA-DES-CBC-SHA
 TLS_DHE_RSA_WITH_DES_CBC_SHA            EDH-RSA-DES-CBC-SHA
 TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA       EDH-RSA-DES-CBC3-SHA
 TLS_DH_anon_EXPORT_WITH_RC4_40_MD5      EXP-ADH-RC4-MD5
 TLS_DH_anon_WITH_RC4_128_MD5            ADH-RC4-MD5
 TLS_DH_anon_EXPORT_WITH_DES40_CBC_SHA   EXP-ADH-DES-CBC-SHA
 TLS_DH_anon_WITH_DES_CBC_SHA            ADH-DES-CBC-SHA
 TLS_DH_anon_WITH_3DES_EDE_CBC_SHA       ADH-DES-CBC3-SHA

Suites de chiffrements additionelles Export 1024 et autres

Note: ces chiffrements peuvent aussi être utilisés pour SSL v3.

 TLS_RSA_EXPORT1024_WITH_DES_CBC_SHA     EXP1024-DES-CBC-SHA
 TLS_RSA_EXPORT1024_WITH_RC4_56_SHA      EXP1024-RC4-SHA
 TLS_DHE_DSS_EXPORT1024_WITH_DES_CBC_SHA EXP1024-DHE-DSS-DES-CBC-SHA
 TLS_DHE_DSS_EXPORT1024_WITH_RC4_56_SHA  EXP1024-DHE-DSS-RC4-SHA
 TLS_DHE_DSS_WITH_RC4_128_SHA            DHE-DSS-RC4-SHA

Suites de chiffrement SSL v2.0.

 SSL_CK_RC4_128_WITH_MD5                 RC4-MD5
 SSL_CK_RC4_128_EXPORT40_WITH_MD5        EXP-RC4-MD5
 SSL_CK_RC2_128_CBC_WITH_MD5             RC2-MD5
 SSL_CK_RC2_128_CBC_EXPORT40_WITH_MD5    EXP-RC2-MD5
 SSL_CK_IDEA_128_CBC_WITH_MD5            IDEA-CBC-MD5
 SSL_CK_DES_64_CBC_WITH_MD5              DES-CBC-MD5
 SSL_CK_DES_192_EDE3_CBC_WITH_MD5        DES-CBC3-MD5

NOTES

Les modes non éphémères de DH ne sont pas implémentés actuellement en OpenSSL car il n'y a pas de support pour les certificats DH.

Certaines versions compilées d'OpenSSL peuvent ne pas inclure tous les chiffrements listés ici en raison du paramétrage lors de la compilation.

EXEMPLES

Liste bavarde de tous les chiffrements OpenSSL incluant les chiffrements NULL :

 openssl ciphers -v 'ALL:eNULL'
Inclure tous les chiffrements sauf NULL et anonymes, puis tri par force :

 openssl ciphers -v 'ALL:!ADH:@STRENGTH'
Inclure seulement les chiffrement 3DES puis déplacer les chiffres RSA à la fin :

 openssl ciphers -v '3DES:+RSA'

VOIR AUSSI

s_client(1), s_server(1), ssl(3)

0.9.6c 3rd Berkeley Distribution