字符串MD5加密工具(计算字符串的md5-16位、32位散列/哈希值)



工具介绍


本工具可以对字符串进行MD5散列/哈希值计算,其会对输出字符串进行MD5大小写两种形式的4种输出。


MD5,即:Message Digest Algorithm MD5(消息摘要算法),是为确保信息传输提供完整性保护的一种散列算法。

MD5做为一种不可逆的加密算法,在很多情况下都会用到。用MD5做为用户密码的HASH,从而可以有效的保护用户密码。用MD5做为文件的HASH,可以判断的文件的完整性,在网络的传输中,文件的MD5HASH是有效的较验文件完整的重要方法。


MD5也被认为是数字指纹,我们都知道,人类的揩纹是独一无二的。而做为文件或字符摘要算法的MD5,可以认为是字符串或文件的数字指纹。当在字符串或文件被意外修改时,其MD5值都会发生变化,我们可以根据其MD5值有效较验字符串或文件合法性。

MD5具有以下特点:

  • 固定性:任意长度的数据,算出的MD5值长度都是固定的。
  • 防修改:对于原数据的任何改动,哪怕是1个字符,所得到的MD5值都有很大区别。
  • 易计算:从原始数据计算得到MD5值很容易,效率较高。
  • 防碰撞:已知原数据计算所得MD5值,具有很强的唯一性。和人类指纹一样,要想找到一个具有相同MD5值的数据是非常困难的,根据这一特性,可以很好防止数据伪造。

MD5在诸如:Unix文件系统、BSD系统登录密码、数字签名等诸多方面有广泛的应用。但做为数字签名格式,其并不是唯一的方式,除MD5外,还有sha-1RIPEMDHaval等算法,本站将在以后陆续推出。


本工具使用Node.jscrypto模块的Hash计算字符串MD5哈希值(HASH)。

本工具的主要算法如下:

var crypto = require('crypto');

//收到的字符串
var string = req.body.string;
// 创建 MD5哈希算法
var strHash = crypto.createHash('md5');
// 更新要计算哈希值的
strHash.update(string);
// 计算哈希值
var md5 = strHash.digest('hex');
console.log(md5);