The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Password::OWASP::AbstractBaseX - Abstract base class to implement OWASP password recommendations

VERSION

version 0.002

SYNOPSIS

    package Password::OWASP::MyThing;
    use Moose;

    with 'Password::OWASP::AbstractBaseX';

    # You need to implement this method
    sub crypt_password {
        ...;
    }

    sub check_password {
        ...;
    }

DESCRIPTION

An abstract base class for modules that want to implement OWASP recommendations for password storage.

This class implements the following methods and attributes.

ATTRIBUTES

hashing

An enumeration of sha1, sha256, sha512. The latter is the default. This is used for the "hash_password" in Password::OWASP::AbstractBaseX function.

update_method

A code ref to update the password in your given store. The first argument is the password that needs to be stored. Setting this value will also enable you to update the password via "update_password" in Password::OWASP::AbstractBaseX.

METHODS

check_legacy_password

Check the password against the former password scheme, assuming it isn't a password scheme that is understood by Authen::Passphrase and the password isn't hashed before it was stored.

In case the "update_method" in Password::OWASP::AbstractBaseX was provided, the password is updated in place.

update_password

Update the password if "update_method" in Password::OWASP::AbstractBaseX was provided.

hash_password

Hash the password with the given sha.

SEE ALSO

OWASP

AUTHOR

Wesley Schwengle <waterkip@cpan.org>

COPYRIGHT AND LICENSE

This software is Copyright (c) 2019 by Wesley Schwengle.

This is free software, licensed under:

  The (three-clause) BSD License