Node.js的DES加解密和MD5加密

it2022-05-07  0

最基本的就是经常用的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加密

最新回复(0)