| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596 |
- /**
- * Config source: https://git.io/JfefW
- *
- * Feel free to let us know via PR, if you find something broken in this config
- * file.
- */
- import Env from '@ioc:Adonis/Core/Env'
- import { hashConfig } from '@adonisjs/core/build/config'
- /*
- |--------------------------------------------------------------------------
- | Hash Config
- |--------------------------------------------------------------------------
- |
- | The `HashConfig` relies on the `HashList` interface which is
- | defined inside `contracts` directory.
- |
- */
- export default hashConfig({
- /*
- |--------------------------------------------------------------------------
- | Default hasher
- |--------------------------------------------------------------------------
- |
- | By default we make use of the argon hasher to hash values. However, feel
- | free to change the default value
- |
- */
- default: Env.get('HASH_DRIVER', 'scrypt'),
- list: {
- /*
- |--------------------------------------------------------------------------
- | scrypt
- |--------------------------------------------------------------------------
- |
- | Scrypt mapping uses the Node.js inbuilt crypto module for creating
- | hashes.
- |
- | We are using the default configuration recommended within the Node.js
- | documentation.
- | https://nodejs.org/api/crypto.html#cryptoscryptpassword-salt-keylen-options-callback
- |
- */
- scrypt: {
- driver: 'scrypt',
- cost: 16384,
- blockSize: 8,
- parallelization: 1,
- saltSize: 16,
- keyLength: 64,
- maxMemory: 32 * 1024 * 1024
- },
- /*
- |--------------------------------------------------------------------------
- | Argon
- |--------------------------------------------------------------------------
- |
- | Argon mapping uses the `argon2` driver to hash values.
- |
- | Make sure you install the underlying dependency for this driver to work.
- | https://www.npmjs.com/package/phc-argon2.
- |
- | npm install phc-argon2
- |
- */
- argon: {
- driver: 'argon2',
- variant: 'id',
- iterations: 3,
- memory: 4096,
- parallelism: 1,
- saltSize: 16
- },
- /*
- |--------------------------------------------------------------------------
- | Bcrypt
- |--------------------------------------------------------------------------
- |
- | Bcrypt mapping uses the `bcrypt` driver to hash values.
- |
- | Make sure you install the underlying dependency for this driver to work.
- | https://www.npmjs.com/package/phc-bcrypt.
- |
- | npm install phc-bcrypt
- |
- */
- bcrypt: {
- driver: 'bcrypt',
- rounds: 10
- }
- }
- })
|