Express With Users implements
GitHub - node-argon2
for password hashing and verifying.
Results are computed for the password: P@ssw0rd. A page refresh will generate new hashes.
import argon2 from 'argon2';
...
const password = 'P@ssw0rd';
const hashedPassword1 = await argon2.hash(password);
const verified1 = await argon2.verify(hashedPassword1, password);
const hashedPassword2 = await argon2.hash(password);
const verified2 = await argon2.verify(hashedPassword2, password);
const invalidPassword = 'InvalidPassword';
const invalidResult = await argon2.verify(hashedPassword2, invalidPassword);
hashedPassword1:
$argon2id$v=19$m=65536,t=3,p=4$byfZUYlMRqIWRZ2OwS5UPQ$KTwHn7YnrlbvmRnpJ4HpbEFzAUSPfSYmZB2busPSRvM
verified1: true
Same password, different hash.
hashedPassword2:
$argon2id$v=19$m=65536,t=3,p=4$YsLGByXAT6f5IuGWjVeNuA$0P7Rjgm0IKLZn6RyQg06073i0Wyg1lQCVSeKPUQ+yAI
verified2: true
Invalid password fails verification.
invalidResult: false