.\" Automatically generated by Pod::Man 2.28 (Pod::Simple 3.29) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{ . if \nF \{ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" ======================================================================== .\" .IX Title "ENC 1SSL" .TH ENC 1SSL "2015-12-31" "1.0.2a 1.0.2c" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NOM" .IX Header "NOM" enc \- Routines de chiffrement symétrique .SH "SYNOPSIS" .IX Header "SYNOPSIS" \&\fBopenssl enc \-\fR\fInom_algorithme\fR [\fB\-in\fR \fInom_fichier\fR] [\fB\-out\fR \&\fInom_fichier\fR] [\fB\-pass\fR \fIparam\fR] [\fB\-e\fR] [\fB\-d\fR] [\fB\-a\fR|\fB\-base64\fR] [\fB\-A\fR] [\fB\-k\fR \fImot_de_passe\fR] [\fB\-kfile\fR \fInom_fichier\fR] [\fB\-K\fR \fIclef\fR] [\fB\-iv\fR \fI\s-1VI\s0\fR] [\fB\-S\fR \fIsel\fR] [\fB\-salt\fR] [\fB\-nosalt\fR] [\fB\-z\fR] [\fB\-md\fR][\fB\-p\fR] [\fB\-P\fR] [\fB\-bufsize\fR \fInombre\fR] [\fB\-nopad\fR] [\fB\-debug\fR] [\fB\-none\fR] [\fB\-engine\fR \fIid\fR] .SH "DESCRIPTION" .IX Header "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. .SH "OPTIONS" .IX Header "OPTIONS" .IP "\fB\-in\fR \fInom_fichier\fR" 4 .IX Item "-in nom_fichier" Le fichier d'entrée. Par défaut c'est l'entrée standard. .IP "\fB\-out\fR \fInom_fichier\fR" 4 .IX Item "-out nom_fichier" Le fichier de sortie. Par défaut c'est la sortie standard. .IP "\fB\-pass\fR \fIparam\fR" 4 .IX Item "-pass param" Le fichier des mots de passe d'entrée. Pour plus de renseignements sur le format de \fIparam\fR, consultez la section \fBPARAMÈTRES \s-1DE PHRASE\s0 SECRÈTE\fR d'\fIopenssl\fR\|(1). .IP "\fB\-salt\fR" 4 .IX Item "-salt" Utiliser du sel dans les routines de dérivation de clef. C'est la valeur par défaut. .IP "\fB\-nosalt\fR" 4 .IX Item "-nosalt" Ne pas utiliser de sel dans les routines de dérivation de clef. Cette option ne \fBdevrait pas\fR être utilisé à part pour faire des test ou pour assurer la compatibilité avec des versions précédentes d'OpenSSL et SSLeay. .IP "\fB\-e\fR" 4 .IX Item "-e" Chiffrer les données en entrée : c'est effectué par défaut. .IP "\fB\-d\fR" 4 .IX Item "-d" Déchiffrer les données en entrée. .IP "\fB\-a\fR" 4 .IX Item "-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. .IP "\fB\-base64\fR" 4 .IX Item "-base64" Identique à \fB\-a\fR. .IP "\fB\-A\fR" 4 .IX Item "-A" Avec l'option \fB\-a\fR, le traitement en base64 est effectué sur une ligne. .IP "\fB\-k\fR \fImot_de_passe\fR" 4 .IX Item "-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 \fB\-pass\fR. .IP "\fB\-kfile\fR \fInom_fichier\fR" 4 .IX Item "-kfile nom_fichier" Lire le mot de passe pour la dérivation de la clef à partir de la première ligne de \fInom_fichier\fR. C'est pour assurer la compatibilité avec d'anciennes versions d'OpenSSL, mais c'est remplacé par le paramètre \&\fB\-pass\fR. .IP "\fB\-nosalt\fR" 4 .IX Item "-nosalt" Ne pas utiliser de sel. .IP "\fB\-salt\fR" 4 .IX Item "-salt" Utiliser du sel (généré aléatoirement ou fourni avec l'option \fB\-S\fR) lors du chiffrement (par défaut). .IP "\fB\-S\fR \fIsel\fR" 4 .IX Item "-S sel" Le grain de \fIsel\fR à utiliser. Sous forme de chaîne de caractères hexadécimaux. .IP "\fB\-K\fR \fIclef\fR" 4 .IX Item "-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 (« \s-1VI\s0 ») doit en plus être indiqué avec l'option \fB\-iv\fR. Si une clef et un mot de passe sont indiqués, la clef donnée avec l'option \&\fB\-K\fR est prise et le \s-1VI\s0 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. .IP "\fB\-iv\fR \fI\s-1VI\s0\fR" 4 .IX Item "-iv VI" Le \s-1VI\s0 à 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 \fB\-K\fR, le \s-1VI\s0 doit être défini explicitement. Si un mot de passe est indiqué, le \s-1VI\s0 est généré à partir de ce mot de passe. .IP "\fB\-p\fR" 4 .IX Item "-p" Afficher la clef et le \s-1VI\s0 utilisés. .IP "\fB\-P\fR" 4 .IX Item "-P" Afficher la clef et le \s-1VI\s0 utilisés puis sortir immédiatement : aucun chiffrement ou déchiffrement n'est effectué. .IP "\fB\-bufsize\fR \fInombre\fR" 4 .IX Item "-bufsize nombre" Définir la taille du tampon d'entrée et sortie. .IP "\fB\-nopad\fR" 4 .IX Item "-nopad" Désactiver le remplissage (« padding ») de blocs standard. .IP "\fB\-debug\fR" 4 .IX Item "-debug" Déboguer les \s-1BIO\s0 utilisés pour l'entrée et la sortie. .IP "\fB\-z\fR" 4 .IX Item "-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. .IP "\fB\-none\fR" 4 .IX Item "-none" Utiliser le chiffrement \s-1NULL \s0(pas de chiffrement ou de déchiffrement de l'entrée). .SH "NOTES" .IX Header "NOTES" Le programme peut être appelé soit comme \fBopenssl\fR \fInom_algorithme\fR soit comme \fBopenssl enc \-\fR\fInom_algorithme\fR, 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 (« \s-1ENGINE\s0 »). .PP 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 \fB\-engine\fR 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. .PP Quand la commande \fBenc\fR affiche les algorithmes disponibles, les algorithmes fournis par les moteurs indiqués dans le fichier de configuration sont aussi affichés. .PP Un mot de passe sera demandé, si besoin est, pour obtenir la clef et le \s-1VI.\s0 .PP L'option \fB\-salt\fR devrait \fBtoujours\fR ê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. .PP Sans l'option \fB\-salt\fR, 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. .PP 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 \s-1CBC\s0 comme bf ou des3. .PP 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. .PP 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. .PP Tous les algorithmes \s-1RC2\s0 ont la même longueur de clef et longueur de clef effective. .PP Les algorithmes Blowfish et \s-1RC5\s0 utilisent une clef de 128 bits. .SH "ALGORITHMES PRIS EN CHARGE" .IX Header "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 \fBenc\fR exécutée avec des fonctions non prises en charge (par exemple \fBopenssl enc \-help\fR) contient une liste d'algorithmes, pris en charge par votre version d'OpenSSL, y compris ceux fournis par les moteurs configurés. .PP Le programme \fBenc\fR ne permet pas les modes de chiffrement authentifié comme \&\s-1CCM\s0 ou \s-1GCM.\s0 L’utilitaire ne garde ni ne récupère l’étiquette d’authentification. .PP .Vb 1 \& 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 .Ve .SH "EXEMPLES" .IX Header "EXEMPLES" Encoder simplement en base64 un fichier binaire : .PP .Vb 1 \& openssl base64 \-in fichier.bin \-out fichier.b64 .Ve .PP Décoder le même fichier : .PP .Vb 1 \& openssl base64 \-d \-in fichier.b64 \-out fichier.bin .Ve .PP Chiffrer un fichier en utilisant le triple \s-1DES\s0 en mode \s-1CBC\s0 et en demandant le mot de passe sur le terminal : .PP .Vb 1 \& openssl des3 \-salt \-in fichier.txt \-out fichier.des3 .Ve .PP Déchiffrer un fichier avec le mot de passe fourni : .PP .Vb 1 \& openssl des3 \-d \-salt \-in fichier.des3 \-out fichier.txt \-k motdepasse .Ve .PP Chiffrer un fichier, puis l'encoder en base64 (pour pouvoir l'envoyer par mail par exemple), en utilisant l'algorithme Blowfish en mode \s-1CBC :\s0 .PP .Vb 1 \& openssl bf \-a \-salt \-in fichier.txt \-out fichier.bf .Ve .PP Décoder un fichier en base64, puis le déchiffrer : .PP .Vb 1 \& openssl bf \-d \-salt \-a \-in fichier.bf \-out fichier.txt .Ve .PP Déchiffrer des données en utilisant une clef \s-1RC4\s0 de 40 bits fournie : .PP .Vb 1 \& openssl rc4\-40 \-in fichier.rc4 \-out fichier.txt \-K 0102030405 .Ve .SH "BOGUES" .IX Header "BOGUES" L'option \fB\-A\fR ne fonctionne pas correctement avec les très gros fichiers. .PP Il devrait y avoir une option permettant d'inclure un compteur d'itérations. .PP Le programme \fBenc\fR gère seulement un nombre fixe d'algorithmes avec certains paramètres. Ainsi, par exemple, pour utiliser \s-1RC2\s0 avec une clef de 76 bits ou \s-1RC4\s0 avec 84 bits, vous ne pourrez pas utiliser ce programme. .SH "TRADUCTION" .IX Header "TRADUCTION" Cette page de manuel a été traduite par arne en 2002 et est maintenue par la liste . Veuillez signaler toute erreur de traduction par un rapport de bogue sur le paquet manpages-fr-extra.