NOM¶
des_crypt, ecb_crypt, cbc_crypt, des_setparity, DES_FAILED - Cryptage DES rapide
SYNOPSIS¶
#include <rpc/des_crypt.h>
int ecb_crypt(char *key, char *data, unsigned datalen,
unsigned mode);
int cbc_crypt(char *key, char *data, unsigned datalen,
unsigned mode, char *ivec);
void des_setparity(char *key);
int DES_FAILED(int status);
DESCRIPTION¶
ecb_crypt() et
cbc_crypt() implémentent le standard NBS DES
(Data Encryption Standard). Ces routines sont plus rapides et plus
générales que la classique
crypt(3). Elles sont aussi
capables d'utiliser une puce de cryptage DES si elle est disponible.
ecb_crypt() encrypte en mode ECB (Electronic Code Book), ce qui encode
des blocs de données indépendamment les uns des autres.
cbc_crypt() encrypte en mode CBC (Cipher Block Chaining), qui
enchaîne le cryptage des blocs successifs. Le mode CBC protège
contre les insertions, suppressions ou substitutions de blocs. De plus, les
répétitions dans le texte en clair n'apparaîtront pas
dans le texte chiffré.
Voici comment utiliser ces routines. Le premier paramètre,
key,
est la clé de codage de 8 octets avec parité. Pour
définir la parité de la clé, qui pour DES est le bit de
poids faible de chaque octet, utilisez
des_setparity(). Le second
paramètre,
data, contient les données à crypter ou
à décrypter. Le troisième paramètre,
datalen, est la longueur en octets de
data, qui doit être
un multiple de 8. Le quatrième paramètre,
mode, est
formé par un OU binaire entre différents attributs. Pour le sens
de fonctionnement, il faut mettre
DES_ENCRYPT ou
DES_DECRYPT.
Pour l'encryptage matériel ou logiciel, il faut ajouter
DES_HW
ou
DES_SW. Si
DES_HW est indiqué et qu'il n'y a pas de
matériel spécialisé disponible, le cryptage est
réalisé en mode logiciel et la routine renvoie
DESERR_NOHWDEVICE. Pour
cbc_crypt(), le paramètre
ivec est un vecteur d'initialisation de 8 octets pour le
chaînage. Il est mis à jour avec le prochain vecteur
d'initialisation au retour.
VALEUR RENVOYÉE¶
- DESERR_NONE
- Pas d'erreur.
- DESERR_NOHWDEVICE
- Cryptage réussi, mais en mode logiciel plutôt que
matériel.
- DESERR_HWERROR
- Une erreur s'est produite dans le matériel ou le pilote.
- DESERR_BADPARAM
- Mauvais paramètre pour la routine.
Étant donné un résultat
stat, la macro
DES_FAILED( stat) est fausse pour les deux premiers
états.
VERSIONS¶
Ces routines sont présentes dans la libc 4.6.27 et
ultérieures, et dans la glibc 2.1 et ultérieures.
ATTRIBUTS¶
Multithreading (voir pthreads(7))¶
Les fonctions
ecb_crypt() et
cbc_crypt() et
des_setparity()
sont sûres dans un contexte multithread.
BSD 4.3. Absent de POSIX.1-2001.
VOIR AUSSI¶
des(1),
crypt(3),
xcrypt(3)
COLOPHON¶
Cette page fait partie de la publication 3.65 du projet
man-pages Linux.
Une description du projet et des instructions pour signaler des anomalies
peuvent être trouvées à l'adresse
http://www.kernel.org/doc/man-pages/.
TRADUCTION¶
Depuis 2010, cette traduction est maintenue à l'aide de l'outil po4a
<
http://po4a.alioth.debian.org/> par l'équipe de traduction
francophone au sein du projet perkamon
<
http://perkamon.alioth.debian.org/>.
Christophe Blaess <
http://www.blaess.fr/christophe/> (1996-2003), Alain
Portal <
http://manpagesfr.free.fr/> (2003-2006). Florentin Duneau et
l'équipe francophone de traduction de Debian (2006-2009).
Veuillez signaler toute erreur de traduction en écrivant à
<debian-l10n-french@lists.debian.org> ou par un rapport de bogue sur le
paquet
manpages-fr.
Vous pouvez toujours avoir accès à la version anglaise de ce
document en utilisant la commande «
man -L C
<section>
<page_de_man> ».