Name

xencrypt, xdecrypt, passwd2des — RFS password encryption

Synopsis

#include <rpc/des_crypt.h>
void passwd2des( char *passwd,
  char *key);
 
int xencrypt( char *secret,
  char *passwd);
 
int xdecrypt( char *secret,
  char *passwd);
 

DESCRIPTION

The function passwd2des() takes a character string passwd of arbitrary length and fills a character array key of length 8. The array key is suitable for use as DES key. It has odd parity set in bit 0 of each byte. Both other functions described here use this function to turn their argument passwd into a DES key.

The xencrypt() function takes the ASCII character string secret given in hex, which must have a length that is a multiple of 16, encrypts it using the DES key derived from passwd by passwd2des(), and outputs the result again in secret as a hex string of the same length.

The xdecrypt() function performs the converse operation.

RETURN VALUE

The functions xencrypt() and xdecrypt() return 1 on success and 0 on error.

VERSIONS

These routines are present in libc 4.6.27 and later, and in glibc 2.1 and later.

BUGS

The prototypes are missing from the abovementioned include file.

SEE ALSO

cbc_crypt(3)

COLOPHON

This page is part of release 3.24 of the Linux man-pages project. A description of the project, and information about reporting bugs, can be found at http://www.kernel.org/doc/man-pages/.


   Copyright 2003 walter harms (walter.harmsinformatik.uni-oldenburg.de)
 Distributed under GPL
 this is the 3rd type of interface for cryptographic routines
 1. encrypt() expects a bit field
 2. cbc_crypt() byte values
 3. xencrypt() a hexstring
 to bad to be true :(