Blob Blame History Raw
The bcrypt hash module comes from crypt_blowfish, originally written
by Solar Designer <solar at openwall.com> and based on algorithms and
ideas by Niels Provos <provos at citi.umich.edu> and David Mazieres
<dm at lcs.mit.edu>.

The MD5, SHA256, and SHA512 hash modules, and the underlying
secure-hash primitives, were originally written by Ulrich Drepper
<drepper at cygnus.com> as part of the GNU C Library.  Other people
may also have contributed to them; our records are incomplete.

The DES hash module was originally FreeSec, written by David Burren
<davidb at werj.com.au> for the NetBSD project, and since extensively
modified by Geoffrey M. Rehmet, Mark R V Murray, and Zack Weinberg.

The NTHASH module comes from FreeBSD, originally written by Michael
Bretterklieber and based on the password hashing algorithm used by
the Windows NT LAN Manager (NTLM) from Microsoft Corporation to
provide easier compatibility with NT accounts.

The SUNMD5 hash module comes from (Open)Solaris, originally written
by Alec Muffett, Copyright Sun Microsystems, Inc. and was released
under the terms of the Common Development and Distribution License,
Version 1.0 only.  It has been slightly modified for portability
and use inside of libxcrypt by Björn Esser.

The implementation of the public interface (crypt, crypt_r, etc) is a
mashup of code from the GNU C Library with code from crypt_blowfish,
originally put together by Thorsten Kukuk and since completely
rewritten by Björn Esser and Zack Weinberg.

The above components were assembled into this library by Thorsten Kukuk
<kukuk at suse.de>, Björn Esser <besser82 at fedoraproject.org>, and
Zack Weinberg <zackw at panix.com>.