Provided by: manpages-fr-extra_20151231_all 

NOM
enc - Routines de chiffrement symétrique
SYNOPSIS
openssl enc -nom_algorithme [-in nom_fichier] [-out nom_fichier] [-pass param] [-e] [-d] [-a|-base64]
[-A] [-k mot_de_passe] [-kfile nom_fichier] [-K clef] [-iv VI] [-S sel] [-salt] [-nosalt] [-z] [-md][-p]
[-P] [-bufsize nombre] [-nopad] [-debug] [-none] [-engine id]
DESCRIPTION
Les commandes de chiffrement symétrique permettent de chiffrer ou de déchiffrer des données en utilisant
divers algorithmes par blocs ou par flux avec des clefs basées sur des mots de passe ou fournies
explicitement. L'encodage ou le décodage en base64 peut également être effectué, soit par lui-même, soit
en supplément du chiffrement et du déchiffrement.
OPTIONS
-in nom_fichier
Le fichier d'entrée. Par défaut c'est l'entrée standard.
-out nom_fichier
Le fichier de sortie. Par défaut c'est la sortie standard.
-pass param
Le fichier des mots de passe d'entrée. Pour plus de renseignements sur le format de param, consultez
la section PARAMÈTRES DE PHRASE SECRÈTE d'openssl(1).
-salt
Utiliser du sel dans les routines de dérivation de clef. C'est la valeur par défaut.
-nosalt
Ne pas utiliser de sel dans les routines de dérivation de clef. Cette option ne devrait pas être
utilisé à part pour faire des test ou pour assurer la compatibilité avec des versions précédentes
d'OpenSSL et SSLeay.
-e Chiffrer les données en entrée : c'est effectué par défaut.
-d Déchiffrer les données en entrée.
-a Traitement en base64 des données. Cela signifie que lors d'un chiffrement, les données sont encodées
en base64 après le chiffrement et lors d'un déchiffrement, les données sont décodées en base64 avant
le déchiffrement.
-base64
Identique à -a.
-A Avec l'option -a, le traitement en base64 est effectué sur une ligne.
-k mot_de_passe
Le mot de passe à partir duquel la clef sera dérivée. C'est pour assurer la compatibilité avec
d'anciennes versions d'OpenSSL, mais c'est remplacé par le paramètre -pass.
-kfile nom_fichier
Lire le mot de passe pour la dérivation de la clef à partir de la première ligne de nom_fichier.
C'est pour assurer la compatibilité avec d'anciennes versions d'OpenSSL, mais c'est remplacé par le
paramètre -pass.
-nosalt
Ne pas utiliser de sel.
-salt
Utiliser du sel (généré aléatoirement ou fourni avec l'option -S) lors du chiffrement (par défaut).
-S sel
Le grain de sel à utiliser. Sous forme de chaîne de caractères hexadécimaux.
-K clef
La clef à utiliser : sous forme de chaîne de caractères composée uniquement de caractères
hexadécimaux. Si seule la clef est indiquée, le vecteur d'initialisation (« VI ») doit en plus être
indiqué avec l'option -iv. Si une clef et un mot de passe sont indiqués, la clef donnée avec l'option
-K est prise et le VI est généré à partir du mot de passe. Cela n'a probablement pas de sens
d'indiquer à la fois la clef et le mot de passe.
-iv VI
Le VI à utiliser : sous forme de chaîne de caractères composée uniquement de caractères hexadécimaux.
Si seule la clef est indiquée avec l'option -K, le VI doit être défini explicitement. Si un mot de
passe est indiqué, le VI est généré à partir de ce mot de passe.
-p Afficher la clef et le VI utilisés.
-P Afficher la clef et le VI utilisés puis sortir immédiatement : aucun chiffrement ou déchiffrement
n'est effectué.
-bufsize nombre
Définir la taille du tampon d'entrée et sortie.
-nopad
Désactiver le remplissage (« padding ») de blocs standard.
-debug
Déboguer les BIO utilisés pour l'entrée et la sortie.
-z Compresser ou décompresser le texte en clair avec zlib avant le chiffrement ou après le
déchiffrement. Cette option n'existe que si OpenSSL a été compilé avec les options zlib ou zlib-
dynamic.
-none
Utiliser le chiffrement NULL (pas de chiffrement ou de déchiffrement de l'entrée).
NOTES
Le programme peut être appelé soit comme openssl nom_algorithme soit comme openssl enc -nom_algorithme,
mais la première forme ne fonctionne pas avec les chiffrements fournis par un moteur, parce que cette
forme est traitée avant de lire le fichier de configuration et de charger les moteurs (« ENGINE »).
Les moteurs qui fournissent de nouveaux algorithmes de chiffrement complets (comme le moteur ccgost qui
fournit l'algorithme gost89) devraient être configurés dans le fichier de configuration. Les moteurs
indiqués en ligne de commande avec les options -engine ne peuvent être utilisés que pour des
implémentations d'algorithmes assistées par le matériel, pris en charge par le noyau d'OpenSSL ou un
autre moteur, indiqués dans le fichier de configuration.
Quand la commande enc affiche les algorithmes disponibles, les algorithmes fournis par les moteurs
indiqués dans le fichier de configuration sont aussi affichés.
Un mot de passe sera demandé, si besoin est, pour obtenir la clef et le VI.
L'option -salt devrait toujours être utilisée si la clef est dérivée d'un mot de passe sauf si vous
souhaitez être compatible avec les versions précédentes d'OpenSSL et de SSLeay.
Sans l'option -salt, il est possible d'effectuer des attaques efficaces sur les mots de passe à partir de
dictionnaires et d'attaquer des flux de données chiffrées. Cela vient du fait que sans le grain de sel,
le même mot de passe génère toujours la même clef de chiffrement. Si un grain de sel est utilisé, les
huit premiers octets des données encodées sont réservés pour le sel : ils sont générés aléatoirement lors
du chiffrement d'un fichier et lus lors du déchiffrement.
Certains algorithmes n'ont pas de clef de taille importante et d'autres ont des implications sur la
sécurité en cas de mauvaise utilisation. Un débutant est avisé d'utiliser des encodages en bloc forts en
mode CBC comme bf ou des3.
Tous les algorithmes en mode bloc utilisent la méthode de remplissage PKCS#5, le « standard block
padding » : cela permet d'effectuer une vérification rudimentaire de l'intégrité ou du mot de passe.
Toutefois, comme la probabilité que des données quelconques passent le test est meilleure que 1 sur 256,
ce n'est pas un très bon test.
Si le remplissage est désactivé, les données en entrées doivent avoir une taille multiple de la taille de
bloc de l'algorithme.
Tous les algorithmes RC2 ont la même longueur de clef et longueur de clef effective.
Les algorithmes Blowfish et RC5 utilisent une clef de 128 bits.
ALGORITHMES PRIS EN CHARGE
Remarquez que certains de ces algorithmes peuvent être désactivés au moment de la compilation et que
certains ne sont disponibles que si le moteur approprié est configuré dans le fichier de configuration.
La sortie de la commande enc exécutée avec des fonctions non prises en charge (par exemple openssl enc
-help) contient une liste d'algorithmes, pris en charge par votre version d'OpenSSL, y compris ceux
fournis par les moteurs configurés.
Le programme enc ne permet pas les modes de chiffrement authentifié comme CCM ou GCM. L’utilitaire ne
garde ni ne récupère l’étiquette d’authentification.
base64 Base 64
bf-cbc Blowfish en mode CBC
bf Alias pour bf-cbc
bf-cfb Blowfish en mode CFB
bf-ecb Blowfish en mode ECB
bf-ofb Blowfish en mode OFB
cast-cbc CAST en mode CBC
cast Alias pour cast-cbc
cast5-cbc CAST5 en mode CBC
cast5-cfb CAST5 en mode CFB
cast5-ecb CAST5 en mode ECB
cast5-ofb CAST5 en mode OFB
des-cbc DES en mode CBC
des Alias pour des-cbc
des-cfb DES en mode CBC
des-ofb DES en mode OFB
des-ecb DES en mode ECB
des-ede-cbc Triple DES EDE à 2 clefs en mode CBC
des-ede Triple DES EDE à 2 clefs en mode ECB
des-ede-cfb Triple DES EDE à 2 clefs en mode CFB
des-ede-ofb Triple DES EDE à 2 clefs en mode OFB
des-ede3-cbc Triple DES EDE à 3 clefs en mode CBC
des-ede3 Triple DES EDE à 3 clefs en mode ECB
des3 Alias pour des-ede3-cbc
des-ede3-cfb Triple DES EDE à 3 clefs en mode CFB
des-ede3-ofb Triple DES EDE à 3 clefs en mode OFB
desx Algorithm DESX
gost89 GOST 28147-89 in CFB mode (fourni par moteur ccgost)
gost89-cnt `GOST 28147-89 in CNT mode (fourni par moteur ccgost)
idea-cbc Algorithm IDEA en mode CBC
idea Alias pour idea-cbc
idea-cfb IDEA en mode CFB
idea-ecb IDEA en mode ECB
idea-ofb IDEA en mode OFB
rc2-cbc RC2 128 bits en mode CBC
rc2 Alias pour rc2-cbc
rc2-cfb RC2 128 bits en mode CFB
rc2-ecb RC2 128 bits en mode ECB
rc2-ofb RC2 128 bits en mode OFB
rc2-64-cbc RC2 64 bits en mode CBC
rc2-40-cbc RC2 40 bits en mode CBC
rc4 RC4 128 bits
rc4-64 RC4 64 bits
rc4-40 RC4 40 bits
rc5-cbc Algorithme RC5 en mode CBC
rc5 Alias pour rc5-cbc
rc5-cfb Algorithme RC5 en mode CFB
rc5-ecb Algorithme RC5 en mode ECB
rc5-ofb RC5 cipher in OFB mode
aes-[128|192|256]-cbc AES 128/192/256 bits en mode CBC
aes-[128|192|256] Alias pour aes-[128|192|256]-cbc
aes-[128|192|256]-cfb AES 128/192/256 bits en mode CFB 128 bits
aes-[128|192|256]-cfb1 AES 128/192/256 bits en mode CFB 1 bit
aes-[128|192|256]-cfb8 AES 128/192/256 bits en mode CFB 8 bits
aes-[128|192|256]-ecb AES 128/192/256 bits en mode ECB
aes-[128|192|256]-ofb AES 128/192/256 bits en mode OFB
EXEMPLES
Encoder simplement en base64 un fichier binaire :
openssl base64 -in fichier.bin -out fichier.b64
Décoder le même fichier :
openssl base64 -d -in fichier.b64 -out fichier.bin
Chiffrer un fichier en utilisant le triple DES en mode CBC et en demandant le mot de passe sur le
terminal :
openssl des3 -salt -in fichier.txt -out fichier.des3
Déchiffrer un fichier avec le mot de passe fourni :
openssl des3 -d -salt -in fichier.des3 -out fichier.txt -k motdepasse
Chiffrer un fichier, puis l'encoder en base64 (pour pouvoir l'envoyer par mail par exemple), en utilisant
l'algorithme Blowfish en mode CBC :
openssl bf -a -salt -in fichier.txt -out fichier.bf
Décoder un fichier en base64, puis le déchiffrer :
openssl bf -d -salt -a -in fichier.bf -out fichier.txt
Déchiffrer des données en utilisant une clef RC4 de 40 bits fournie :
openssl rc4-40 -in fichier.rc4 -out fichier.txt -K 0102030405
BOGUES
L'option -A ne fonctionne pas correctement avec les très gros fichiers.
Il devrait y avoir une option permettant d'inclure un compteur d'itérations.
Le programme enc gère seulement un nombre fixe d'algorithmes avec certains paramètres. Ainsi, par
exemple, pour utiliser RC2 avec une clef de 76 bits ou RC4 avec 84 bits, vous ne pourrez pas utiliser ce
programme.
TRADUCTION
Cette page de manuel a été traduite par arne 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.
1.0.2a 1.0.2c 2015-12-31 ENC(1SSL)