This library provides datatypes and functions for working with passwords and password hashes in Haskell.
Currently supports the following algorithms:
Also, see the password-instances package for instances for common typeclasses.
Changelog for password
- Switched checking hashes to using
Data.ByteArray.constEq, instead of the default
ByteString. This is to make it more secure against timing attacks. #16 Thanks to maralorn (@maralorn) for bringing this up.
- Fixed README markdown for hackage.
- Complete overhaul of the library to include hashing and checking
passwords with not just
scrypt, but also
cryptoniteis now used as a dependency, instead of the
- Done away with abbreviating “password” (
Password -> Text. (Anyone who needs it to be a
Stringknows where to find
- GHC versions < 8.2 are no longer actively supported. (Tested to work for GHC 8.2.2)
hashPassWithSalthas switched function arguments for better currying. #6 Although be warned that multiple passwords should not be hashed with the same salt.
Showinstance. #6 See #5 for justification of this.
MonadIO minstead of
PassCheckSucchas been renamed to
- Hide data constructor from
Passand add the
mkPassfunction to construct a
- Thanks to Felix Paulusma (@Vlix) for the above changes!
- Small fix to make sure the doctests build with stack. #3
- Initial version.