File:  [CSRG BSD Unix] / 43BSDReno / foreign / man / crypt.0
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs
Tue Apr 24 16:12:57 2018 UTC (8 years, 1 month ago) by root
Branches: MAIN, BSD
CVS tags: HEAD, BSD43reno
BSD 4.3reno




CRYPT(3)		      1986			 CRYPT(3)



NNAAMMEE
     crypt, setkey, encrypt - DES encryption

SSYYNNOOPPSSIISS
     cchhaarr **ccrryypptt((kkeeyy,, ssaalltt))
     cchhaarr **kkeeyy,, **ssaalltt;;

     sseettkkeeyy((kkeeyy))
     cchhaarr **kkeeyy;;

     eennccrryypptt((bblloocckk,, eeddffllaagg))
     cchhaarr **bblloocckk;;

DDEESSCCRRIIPPTTIIOONN
     _C_r_y_p_t is the password encryption routine.	It is based on
     the NBS Data Encryption Standard, with variations intended
     (among other things) to frustrate use of hardware implemen-
     tations of the DES for key search.

     The first argument to _c_r_y_p_t is normally a user's typed pass-
     word.  The second is a 2-character string chosen from the
     set [a-zA-Z0-9./].  The _s_a_l_t string is used to perturb the
     DES algorithm in one of 4096 different ways, after which the
     password is used as the key to encrypt repeatedly a constant
     string.  The returned value points to the encrypted pass-
     word, in the same alphabet as the salt.  The first two char-
     acters are the salt itself.

     The other entries provide (rather primitive) access to the
     actual DES algorithm.  The argument of _s_e_t_k_e_y is a character
     array of length 64 containing only the characters with
     numerical value 0 and 1.  If this string is divided into
     groups of 8, the low-order bit in each group is ignored,
     leading to a 56-bit key which is set into the machine.

     The argument to the _e_n_c_r_y_p_t entry is likewise a character
     array of length 64 containing 0's and 1's.  The argument
     array is modified in place to a similar array representing
     the bits of the argument after having been subjected to the
     DES algorithm using the key set by _s_e_t_k_e_y. The _e_d_f_l_a_g flag
     is ignored; the argument can only be encrypted.

SSEEEE AALLSSOO
     passwd(1), passwd(5), login(1), getpass(3)

BBUUGGSS
     The return value points to static data whose content is
     overwritten by each call.







Printed 10/21/90	     August				1




unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.