Bcrypt
Bcrypt password hashing library for Elixir.
Bcrypt is a well-tested password-based key derivation function that can be configured to remain slow and resistant to brute-force attacks even as computational power increases.
Compatibility with other Bcrypt libraries
This version is based on the OpenBSD version of Bcrypt and supports
the $2b$
and $2a$
prefixes. For advice on how to use hashes with
the $2y$
prefix, see this issue.
Installation
-
Add
:bcrypt_elixir
to thedeps
section of yourmix.exs
file:If you are using Erlang >20:
def deps do [ {:bcrypt_elixir, "~> 3.0"} ] end
If you are using Erlang 19 or below:
def deps do [ {:bcrypt_elixir, "~> 0.12"} ] end
-
Make sure you have a C compiler installed. See the Comeonin wiki for details.
-
Optional: during tests (and tests only), you may want to reduce the number of rounds so it does not slow down your test suite. If you have a config/test.exs, you should add:
config :bcrypt_elixir, :log_rounds, 4
Comeonin wiki
See the Comeonin wiki for more information on the following topics:
- Algorithms
- Requirements
- Deployment
- Including information about using Docker
- References
Contributing
There are many ways you can contribute to the development of this library, including:
- Reporting issues
- Improving documentation
- Sharing your experiences with others
Documentation
http://hexdocs.pm/bcrypt_elixir
License
BSD. For full details, please read the LICENSE file.