Cryptage et déchiffrement des chaînes JavaScript

Harshit Jindal 12 octobre 2023
  1. Utiliser CryptoJS pour chiffrer et déchiffrer une chaîne JavaScript
  2. Utiliser NcryptJs pour chiffrer et déchiffrer une chaîne JavaScript
Cryptage et déchiffrement des chaînes JavaScript

Ce tutoriel explique comment chiffrer et déchiffrer une chaîne JavaScript.

Utiliser CryptoJS pour chiffrer et déchiffrer une chaîne JavaScript

CryptoJS est une bibliothèque JavaScript contenant des implémentations d’algorithmes cryptographiques standard et sécurisés. Il est rapide et offre une interface simple. Il prend en charge les hachages, les chiffrements, HMAC, PBKDF2, etc. Les chiffrements sont utilisés pour chiffrer/déchiffrer les chaînes JavaScript. Nous utiliserons l’algorithme AES (Advanced Encryption Standard), l’un des algorithmes de cryptage symétrique les plus populaires et les plus largement adoptés. Il est facile d’utiliser l’algorithme AES via l’interface de CryptoJs. Nous devons appeler CryptoJS.AES.encrypt ou CryptoJS.AES.decrypt selon ce que nous voulons faire et transmettre le message à chiffrer/déchiffrer avec une clé secrète utilisée dans l’algorithme.

var encrypted =
    CryptoJS.AES.encrypt('This is my secret message', 'EncryptionKey');
var decrypted = CryptoJS.AES.decrypt(encrypted, 'EncryptionKey');

Utiliser NcryptJs pour chiffrer et déchiffrer une chaîne JavaScript

NcryptJs est une bibliothèque légère utilisée pour effectuer le cryptage et le décryptage en JavaScript. Il implémente la fonctionnalité de chiffrement de Nodejs en tant que chiffrement à mi-canal. Il a deux fonctions encrypt() et decrypt(). Ils utilisent l’algorithme AES-256-CBC. Nous pouvons crypter/décrypter une chaîne simplement en appelant ncrypt.encrypt()/ncrypt.decrypt(). Il prend également le message et la clé secrète comme arguments. Mais cela a un avantage supplémentaire que nous n’avons pas à fournir cette clé secrète au moment du déchiffrement.

import ncrypt from 'ncrypt-js';
const encrypted = ncrypt.encrypt('This is my secret message', 'Secret key');
console.log(encrypted);
const decrypted = ncrypt.decrypt(encrypted);
console.log(decrypted);
Harshit Jindal avatar Harshit Jindal avatar

Harshit Jindal has done his Bachelors in Computer Science Engineering(2021) from DTU. He has always been a problem solver and now turned that into his profession. Currently working at M365 Cloud Security team(Torus) on Cloud Security Services and Datacenter Buildout Automation.

LinkedIn

Article connexe - JavaScript String