CRYPT_UNIX(7) Standards, Environments, and Macros CRYPT_UNIX(7)


crypt_unix - traditional UNIX crypt algorithm


The crypt_unix algorithm is the traditional UNIX crypt algorithm. It is
not considered sufficiently secure for current systems and is provided
for backwards compatibility. The crypt_sunmd5(7), crypt_bsdmd5(7), or
crypt_bsdbf(7) algorithm should be used instead.

The algorithm identifier for policy.conf(5) is __unix__. There is no
entry in crypt.conf(5) for this algorithm.

The crypt_unix algorithm is internal to libc and provides the string
encoding function used by crypt(3C) when the first character of the salt
is not a "$".

This algorithm is based on a one-way encryption algorithm with variations
intended (among other things) to frustrate use of hardware
implementations of a key search. Only the first eight characters of the
key passed to crypt() are used with this algorithm; the rest are silently
ignored. The salt is a two-character string chosen from the set [a-zA-
Z0-9./]. This string is used to perturb the hashing algorithm in one of
4096 different ways.

The maximum password length for crypt_unix is 8 characters.


The return value of the crypt_unix algorithm might not be portable among
standard-conforming systems. See standards(7).


See attributes(7) for descriptions of the following attributes:

|MT-Level | Safe |


passwd(1), crypt(3C), crypt_genhash_impl(3C), crypt_gensalt(3C),
crypt_gensalt_impl(3C), getpassphrase(3C), crypt.conf(5), passwd(5),
policy.conf(5), attributes(7), crypt_bsdbf(7), crypt_bsdmd5(7),
crypt_sunmd5(7), standards(7)

illumos August 6, 2003 CRYPT_UNIX(7)