TP done
This commit is contained in:
@@ -97,7 +97,12 @@ router.post('/register-good', async (req, res) => {
|
||||
// le thread principal de Node.js est libéré et peut traiter
|
||||
// d'autres requêtes.
|
||||
|
||||
const hash = ''; // TODO
|
||||
const hash = await argon2.hash(password, {
|
||||
type: argon2.argon2id, // La variante la plus robuste
|
||||
memoryCost: 2 ** 16, // 64Mo de RAM (65536 KiB)
|
||||
timeCost: 3, // 3 itérations
|
||||
parallelism: 1 // Utilise 1 cœur
|
||||
});
|
||||
|
||||
// 2. Le hash contient le sel (salt) et les paramètres de coût.
|
||||
// Il est auto-suffisant.
|
||||
@@ -134,7 +139,7 @@ router.post('/login-good', async (req, res) => {
|
||||
// 3. On utilise 'argon2.verify'
|
||||
// Cette fonction lit le hash, extrait le sel et les paramètres,
|
||||
// re-hache la tentative (password) et compare en temps constant.
|
||||
const isMatch = false; // TODO
|
||||
const isMatch = await argon2.verify(user.hash, password);
|
||||
|
||||
if (isMatch) {
|
||||
res.json({ msg: 'Connexion Argon2id réussie ! (Vous êtes en sécurité)' });
|
||||
|
||||
Reference in New Issue
Block a user