Codebase list libcrypt-eksblowfish-perl / HEAD
HEAD

Tree @HEAD (Download .tar.gz)

NAME

Crypt::Eksblowfish - the Eksblowfish block cipher

DESCRIPTION

Eksblowfish is a variant of the Blowfish cipher, modified to make the
key setup very expensive.  ("Eks" stands for "expensive key schedule".)
This doesn't make it significantly cryptographically stronger, but is
intended to hinder brute-force attacks.  It also makes it unsuitable for
any application requiring key agility.  It was designed by Niels Provos
and David Mazieres for password hashing in OpenBSD.

Eksblowfish is a parameterised (family-keyed) cipher.  It takes a cost
parameter that controls how expensive the key scheduling is.  It also
takes a family key, known as the "salt".  Cost and salt parameters
together define a cipher family.  Within each family, a key determines
an encryption function in the usual way.

This distribution also includes an implementation of "bcrypt", the Unix
crypt() password hashing algorithm based on Eksblowfish.

INSTALLATION

	perl Build.PL
	./Build
	./Build test
	./Build install

AUTHOR

Eksblowfish guts originally by Solar Designer (solar at openwall.com).

Modifications and Perl interface by Andrew Main (Zefram)
<zefram@fysh.org>.

COPYRIGHT

Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011
Andrew Main (Zefram) <zefram@fysh.org>

The original Eksblowfish code (in the form of crypt()) from which
this module is derived is in the public domain.  It may be found at
<http://www.openwall.com/crypt/>.

LICENSE

This module is free software; you can redistribute it and/or modify it
under the same terms as Perl itself.