一、js的MD5加密

在这里给大家介绍一种在前端JS中的MD5加密算法(因为要匹配的后台数据是MD5加密后的字符串,所以可以在JS中也用MD5加密。MD5是不能解密的加密算法

MD5共有6种加密方法:

1,  hex_md5(value)

2,  b64_md5(value)

3,  str_md5(value)

4,  hex_hmac_md5(key, data)

5,  b64_hmac_md5(key, data)

6,  str_hmac_md5(key, data)

(Hex--十六进制,Str--字符串,B64-- 64位)

加密函数支持16位和32位加密,默认为16位加密。

var str = \'测试字符串\';
str.MD5(); // 默认为16位加密

str.MD5(32);  // 32位加密方法

请注意文件编码,如果客户端的md5文件编码和服务器端的md5文件编码不一样,则加密出来的字符串不一样.

 

16位的MD5加密和32位MD5加密的区别

MD5加密后所得到的通常是32位的编码,而在不少地方会用到16位的编码
它们有什么区别呢?
16位加密就是从32位MD5散列中把中间16位提取出来!
其实破解16位MD5散列要比破解32位MD5散列还慢
因为他多了一个步骤,就是使用32位加密后再把中间16位提取出来, 然后再进行对比
而破解32位的则不需要,加密后直接对比就可以了

16位加密:7a57a5a743894a0e
32位加密:21232f297a57a5a743894a0e4a801fc3

 

用法:

1.下载   md5.rar

2.在网页中引用该文件:

< type=\"text/ \" src=\"md5.js\">< / >

< >
        var code = \"123456\";
        var username = \"123456\";
        var password = \"123456\";
        var str1 = hex_md5(\"123456\");
        var str2 = b64_md5(\"123456\");
        var str3 = str_md5(\"123456\");
        var str4 = hex_hmac_md5(code,code);
        var str5 = b64_hmac_md5(username,username);
        var str6 = str_hmac_md5(password,password);
        console.log(str1);            // e10adc3949ba59abbe56e057f20f883e
        console.log(str2);            // 4QrcOUm6Wau+VuBX8g+IPg
        console.log(str3);            // áÜ9IºY«¾VàWò>
        console.log(str4);            // 30ce71a73bdd908c3955a90e8f7429ef
        console.log(str5);            // MM5xpzvdkIw5VakOj3Qp7w
        console.log(str6);            // 0Îq§;Ý9U©t)ï
    </ >

 

二、vue使用MD5

1、安装

npm install --save js-md5

2、需要使用的页面引入

import md5 from \'js-md5\';

3、使用

md5(\'123456\')

 

收藏 打印