前言
我是歌谣 微信公众号关注前端小歌谣一起学习前端知识 今天继续给大家讲解node中crypto模块的讲解
案例
const crypto=require("crypto")
const hash=crypto.createHash("md5")
hash.update("hello geyao")
console.log(hash.digest("hex"))
运算结果
案例1
const crypto=require("crypto")
function encrypt(key,iv,data){
let dep=crypto.createCipheriv("aes-128-cbc",key,iv)
return dep.update(data,'binary','hex')+dep.final("hex")
}
let key="abcdef1234567890"
let iv="txlbvc1234567890"
let data="geyao"
let cryted=encrypt(key,iv,data)
console.log(cryted)
运行结果
解密
const crypto=require("crypto")
function encrypt(key,iv,data){
let dep=crypto.createCipheriv("aes-128-cbc",key,iv)
return dep.update(data,'binary','hex')+dep.final("hex")
}
function decrypt(key,iv,crypted){
crypted=Buffer.from(crypted,"hex").toString("binary")
let dep=crypto.createDecipheriv("aes-128-cbc",key,iv)
return dep.update(crypted,"binary","utf8")+dep.final("utf8")
}
let key="abcdef1234567890"
let iv="txlbvc1234567890"
let data="geyao"
let cryted=encrypt(key,iv,data)
console.log(cryted)
let decrypted=decrypt(key,iv,cryted)
console.log(decrypted)