Skip to content

Latest commit

 

History

History
35 lines (22 loc) · 1.57 KB

16-crypto.md

File metadata and controls

35 lines (22 loc) · 1.57 KB

🐢 Node.js

🌟 Les différents modules core

Crypto

Le module Crypto (ou plus récemment Web crypto qui est la version avec API compatible Web) est un module qui va vous permettre d’effectuer un ensemble d’opérations en lien avec le monde de la cryptographie.

Je ne suis pas spécialement très à l’aise avec tout cela mais en tant que développeur nous avons tout de même des besoins assez fréquents comme générer une chaîne SHA256 ou ce genre de choses (pour la signature d’un fichier par exemple).

crypto.createHash("sha256").update("hello").digest("hex");

Évidemment je ne vous recommande pas de gérer un chiffrage de mot de passe vous même car c’est très souvent le meilleur moyen de faire des bêtises (utilisez plutôt une lib comme Argon2). Si vous voulez savoir pourquoi je vous recommande d’aller lire l’article suivant.

En ce qui me concerne j’utilise aussi souvent le module crypto pour générer des valeurs aléatoires :

import crypto from "node:crypto";

console.log(crypto.randomBytes(16).toString("hex"));
// 1a68967e44d1c1ad187f003ab95f3cd1

console.log(crypto.randomInt(100));
// 94

console.log(crypto.randomUUID());
// 7ea8c00a-cd01-442f-8011-56037e527b5f

⬅️ 🌟 Les différents modules core: async_hooks | ➡️ 🌟 Les différents modules core: v8