crypt(3) minix man page | unix.com

Man Page: crypt

Operating Environment: minix

Section: 3

CRYPT(3)						     Library Functions Manual							  CRYPT(3)

NAME
crypt - one-way password encryption function
SYNOPSIS
#define _MINIX_SOURCE 1 #include <unistd.h> char *crypt(const char *key, const char *salt)
DESCRIPTION
The first use of crypt() is to encrypt a password. Its second use is to authenticate a shadow password. In both cases crypt() calls pwdauth(8) to do the real work. Crypt() encrypts a password if called with a user typed key, and a salt whose first two characters are in the set [./0-9A-Za-z]. The result is a character string in the [./0-9A-Za-z] alphabet of which the first two characters are equal to the salt, and the rest is the result of encrypting the key and the salt. If crypt() is called with a salt that has the form ##user then the key is encrypted and compared to the encrypted password of user in the shadow password file. If they are equal then crypt() returns the ##user argument, if not then some other string is returned. This trick assures that the normal way to authenticate a password still works: if (strcmp(pw->pw_passwd, crypt(key, pw->pw_passwd))) ... If key is a null string, and the shadow password is a null string or the salt is a null string then the result equals salt. (This is because the caller can't tell if a password field is empty in the shadow password file.) The key and salt are limited to 1024 bytes total including the null bytes.
FILES
/usr/lib/pwdauth The password authentication program
SEE ALSO
getpass(3), getpwent(3), passwd(5), pwdauth(8).
NOTES
The result of an encryption is returned in a static array that is overwritten by each call. The return value should not be modified.
AUTHOR
Kees J. Bot (kjb@cs.vu.nl) CRYPT(3)
Related Man Pages
crypt(3) - bsd
crypt(3) - redhat
crypt(3c) - hpux
encrypt(3c) - hpux
setkey(3c) - hpux
Similar Topics in the Unix Linux Community
Interpreting the encrypted shadow password?
Help in find and replace.
Blank space cause error when use perl
Perl and encryption
How to pass password as a variable for sshpass authentication?