微信小程序默认的md5加密不支持中文和特殊符号,如果需要支持,需要引入md5加密。也是npm包,可在js和nodejs引入
或者使用cdn(https://cdn.bootcss.com/blueimp-md5/2.6.0/js/md5.js)
https://github.com/blueimp/JavaScript-MD5
支持中文和特殊符号的md5加密如下:
!function (n) {
"use strict";
function d(n, t) {
var r = (65535 & n) + (65535 & t);
return (n >> 16) + (t >> 16) + (r >> 16) << 16 | 65535 & r
}
function f(n, t, r, e, o, u) {
return d((c = d(d(t, n), d(e, u))) << (f = o) | c >>> 32 - f, r);
var c, f
}
function l(n, t, r, e, o, u, c) {
return f(t & r | ~t & e, n, t, o, u, c)
}
function v(n, t, r, e, o, u, c) {
return f(t & e | r & ~e, n, t, o, u, c)
}
function g(n, t, r, e, o, u, c) {
return f(t ^ r ^ e, n, t, o, u, c)
}
function m(n, t, r, e, o, u, c) {
return f(r ^ (t | ~e), n, t, o, u, c)
}
function i(n, t) {
var r, e, o, u;
n[t >> 5] |= 128 << t % 32, n[14 + (t + 64 >>> 9 << 4)] = t;
for (var c = 1732584193, f = -271733879, i = -1732584194, a = 27173