最基本的就是经常用的md5加密算法
代码如下
var MD5= function (data) { var _encrymd5 = require('crypto').createHash('md5'); var Buffer = require("buffer").Buffer; // 解决中文不一致的BUG var buf = new Buffer(data); var str = buf.toString("binary"); _encrymd5.update( new Buffer(str).toString("binary")); return _encrymd5.digest('hex').toUpperCase();; }因为md5是哈希算法 一般哈希算法都是不可逆的
用CreateHash创建一个对象
用update来加密 digest来输出结果 参数是输出的编码格式
DES加解密
因为DES不是哈希所以加密用createCipheriv解密用createDecipheriv的方法
代码如下
var cipheriv = function (en, code, data) { var buf1 = en.update(data, code), buf2 = en.final(); var r = new Buffer(buf1.length + buf2.length); buf1.copy(r); buf2.copy(r, buf1.length); return r; }; var EncryptDES= function (data, key, vi) { return data = cipheriv(_crypto.createCipheriv('des', key, vi), 'utf8', data).toString('base64'); }; var DecryptDES= function (data, key, vi) { return cipheriv(_crypto.createDecipheriv('des', key, vi), 'base64', data) .toString('utf8'); };data就是加解密的数据 key 就是密钥 vi就是 密钥向量
EncryptDES是加密 DecryptDES是解密
转载于:https://www.cnblogs.com/wuxiang/p/4630781.html
相关资源:前端DES与MD5加密