nodejs aes 加解密实例
如下所示:
'usestrict'; constcrypto=require('crypto'); /** *AES加密的配置 *1.密钥 *2.偏移向量 *3.算法模式CBC *4.补全值 */ varAES_conf={ key:getSecretKey(),//密钥 iv:'1012132405963708',//偏移向量 padding:'PKCS7Padding'//补全值 } /** *读取密钥key *更具当前客户端的版本vid、平台platform获取对应的key */ functiongetSecretKey(){ return"abcdabcdabcdabcd"; } /** *AES_128_CBC加密 *128位 *returnbase64 */ functionencryption(data){ letkey=AES_conf.key; letiv=AES_conf.iv; //letpadding=AES_conf.padding; varcipherChunks=[]; varcipher=crypto.createCipheriv('aes-128-cbc',key,iv); cipher.setAutoPadding(true); cipherChunks.push(cipher.update(data,'utf8','base64')); cipherChunks.push(cipher.final('base64')); returncipherChunks.join(''); } /** *解密 *returnutf8 */ functiondecryption(data){ letkey=AES_conf.key; letiv=AES_conf.iv; //letpadding=AES_conf.padding; varcipherChunks=[]; vardecipher=crypto.createDecipheriv('aes-128-cbc',key,iv); decipher.setAutoPadding(true); cipherChunks.push(decipher.update(data,'base64','utf8')); cipherChunks.push(decipher.final('utf8')); returncipherChunks.join(''); } console.log(encryption('aaaaa4')); console.log(decryption('VuoXtyUolFyPrK50JnNUdw=='));
以上这篇nodejsaes加解密实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。