1CRYPT(3)                   Library Functions Manual                   CRYPT(3)
2
3
4

NAME

6       crypt, setkey, encrypt - DES encryption
7

SYNOPSIS

9       char *crypt(key, salt)
10       char *key, *salt;
11
12       setkey(key)
13       char *key;
14
15       encrypt(block, edflag)
16       char *block;
17

DESCRIPTION

19       Crypt  is the password encryption routine.  It is based on the NBS Data
20       Encryption Standard, with variations intended (among other  things)  to
21       frustrate use of hardware implementations of the DES for key search.
22
23       The  first  argument to crypt is normally a user's typed password.  The
24       second is a 2-character string chosen from the set [a-zA-Z0-9./].   The
25       salt string is used to perturb the DES algorithm in one of 4096 differ‐
26       ent ways, after which the password  is  used  as  the  key  to  encrypt
27       repeatedly  a  constant  string.   The  returned  value  points  to the
28       encrypted password, in the same alphabet as the salt.   The  first  two
29       characters are the salt itself.
30
31       The  other  entries provide (rather primitive) access to the actual DES
32       algorithm.  The argument of setkey is a character array  of  length  64
33       containing  only  the characters with numerical value 0 and 1.  If this
34       string is divided into groups of 8, the low-order bit in each group  is
35       ignored, leading to a 56-bit key which is set into the machine.
36
37       The  argument  to  the  encrypt  entry is likewise a character array of
38       length 64 containing 0's and 1's.  The argument array  is  modified  in
39       place  to  a  similar array representing the bits of the argument after
40       having been subjected to the DES algorithm using the key set by setkey.
41       The edflag flag is ignored; the argument can only be encrypted.
42

SEE ALSO

44       passwd(1), passwd(5), login(1), getpass(3)
45

BUGS

47       The  return value points to static data whose content is overwritten by
48       each call.
49
50
51
527th Edition                     August 12, 1986                       CRYPT(3)
Impressum