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);
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 fixer 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.
CONFORMITÉ
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.23 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
Cette page de manuel a été traduite et mise à jour par Christophe
Blaess <http://www.blaess.fr/christophe/> entre 1996 et 2003, puis par
Alain Portal <aportal AT univ-montp2 DOT fr> jusqu’en 2006, et mise à
disposition sur http://manpagesfr.free.fr/.
Les mises à jour et corrections de la version présente dans Debian sont
directement gérées par Florentin Duneau <fduneau@gmail.com> et l’équipe
francophone de traduction de Debian.
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> ».
18 mai 2007