NAME
Mojolicious::Plugin::Bcrypt - bcrypt your passwords!
VERSION
Version 0.04
SYNOPSIS
Provides a helper for crypting and validating passwords via bcrypt.
sub
startup {
my
$self
=
shift
;
$self
->plugin(
'bcrypt'
, {
cost
=> 4 });
}
...
Optional parameter cost
is a non-negative integer controlling the cost of the hash function. The number of operations is proportional to 2^cost. The current default value is 6.
HELPERS
bcrypt
Crypts a password via the bcrypt algorithm.
$self
->bcrypt(
$password
,
$settings
);
$settings
is an optional string which encodes the algorithm parameters, as described in Crypt::Eksblowfish::Bcrypt.
sub
signup {
my
$self
=
shift
;
my
$crypted_pass
=
$self
->bcrypt(
$self
->param(
'password'
) );
...
}
bcrypt_validate
Validates a password against a crypted copy (for example from your database).
sub
login {
my
$self
=
shift
;
my
$entered_pass
=
$self
->param(
'password'
);
my
$crypted_pass
=
$self
->get_password_from_db();
if
(
$self
->bcrypt_validate(
$entered_pass
,
$crypted_pass
) ) {
# Authenticated
...;
}
else
{
# Wrong password
...;
}
}
DEVELOPMENT AND REPOSITORY
Clone it on GitHub at https://github.com/naturalist/Mojolicious--Plugin--Bcrypt
SEE ALSO
Crypt::Eksblowfish::Bcrypt, Mojolicious, Mojolicious::Plugin
AUTHOR
Stefan G., <minimal at cpan.org>
LICENSE AND COPYRIGHT
This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.
See http://dev.perl.org/licenses/ for more information.