在JavaScript中实现密码的加密和解密通常涉及到使用特定的加密算法。以下是一些常用的方法和相关的概念:
const CryptoJS = require('crypto-js');
// 加密
function encrypt(text, secretKey) {
const encrypted = CryptoJS.AES.encrypt(text, secretKey);
return encrypted.toString();
}
// 解密
function decrypt(encryptedText, secretKey) {
const decrypted = CryptoJS.AES.decrypt(encryptedText, secretKey);
return decrypted.toString(CryptoJS.enc.Utf8);
}
// 使用示例
const secretKey = 'mySecretKey123';
const originalText = 'Hello, World!';
const encrypted = encrypt(originalText, secretKey);
console.log('Encrypted:', encrypted);
const decrypted = decrypt(encrypted, secretKey);
console.log('Decrypted:', decrypted);
const NodeRSA = require('node-rsa');
// 生成密钥对
const key = new NodeRSA({ b: 512 }); // 512位密钥
// 加密
function encrypt(text) {
return key.encrypt(text, 'base64');
}
// 解密
function decrypt(encryptedText) {
return key.decrypt(encryptedText, 'utf8');
}
// 使用示例
const originalText = 'Hello, World!';
const encrypted = encrypt(originalText);
console.log('Encrypted:', encrypted);
const decrypted = decrypt(encrypted);
console.log('Decrypted:', decrypted);
const CryptoJS = require('crypto-js');
// 哈希
function hashPassword(password) {
const hash = CryptoJS.SHA256(password);
return hash.toString();
}
// 使用示例
const password = 'myPassword123';
const hashedPassword = hashPassword(password);
console.log('Hashed Password:', hashedPassword);
通过上述方法和示例代码,可以在JavaScript中实现基本的密码加密和解密功能。
领取专属 10元无门槛券
手把手带您无忧上云