小程序md5加密

    var rotateLeft = function(lValue, iShiftBits) {
        return(lValue >> (32 - iShiftBits));
    }
    
    var addUnsigned = function(lX, lY) {
        var lX4, lY4, lX8, lY8, lResult;
        lX8 = (lX & 0x80000000);
        lY8 = (lY & 0x80000000);
        lX4 = (lX & 0x40000000);
        lY4 = (lY & 0x40000000);
        lResult = (lX & 0x3FFFFFFF) + (lY & 0x3FFFFFFF);
        if(lX4 & lY4) return(lResult ^ 0x80000000 ^ lX8 ^ lY8);
        if(lX4 | lY4) {
            if(lResult & 0x40000000) return(lResult ^ 0xC0000000 ^ lX8 ^ lY8);
            else return(lResult ^ 0x40000000 ^ lX8 ^ lY8);
        } else {
            return(lResult ^ lX8 ^ lY8);
        }
    }
    
    var F = function(x, y, z) {
        return(x & y) | ((~x) & z);
    }
    
    var G = function(x, y, z) {
        return(x & z) | (y & (~z));
    }
    
    var H = function(x, y, z) {
        return(x ^ y ^ z);
    }
    
    var I = function(x, y, z) {
        return(y ^ (x | (~z)));
    }
    
    var FF = function(a, b, c, d, x, s, ac) {
        a = addUnsigned(a, addUnsigned(addUnsigned(F(b, c, d), x), ac));
        return addUnsigned(rotateLeft(a, s), b);
    };
    
    var GG = function(a, b, c, d, x, s, ac) {
        a = addUnsigned(a, addUnsigned(addUnsigned(G(b, c, d), x), ac));
        return addUnsigned(rotateLeft(a, s), b);
    };
    
    var HH = function(a, b, c, d, x, s, ac) {
        a = addUnsigned(a, addUnsigned(addUnsigned(H(b, c, d), x), ac));
        return addUnsigned(rotateLeft(a, s), b);
    };
    
    var II = function(a, b, c, d, x, s, ac) {
        a = addUnsigned(a, addUnsigned(addUnsigned(I(b, c, d), x), ac));
        return addUnsigned(rotateLeft(a, s), b);
    };
    
    var cOnvertToWordArray= function(string) {
        var lWordCount;
        var lMessageLength = string.length;
        var lNumberOfWordsTempOne= lMessageLength + 8;
        var lNumberOfWordsTempTwo = (lNumberOfWordsTempOne - (lNumberOfWordsTempOne % 64)) / 64;
        var lNumberOfWords = (lNumberOfWordsTempTwo + 1) * 16;
        var lWordArray = Array(lNumberOfWords - 1);
        var lBytePosition = 0;
        var lByteCount = 0;
        while(lByteCount >> 29;
        return lWordArray;
    };
    
    var wordToHex = function(lValue) {
        var WordToHexValue = "",
            WordToHexValueTemp = "",
            lByte, lCount;
        for(lCount = 0; lCount >> (lCount * 8)) & 255;
            WordToHexValueTemp = "0" + lByte.toString(16);
            WordToHexValue = WordToHexValue + WordToHexValueTemp.substr(WordToHexValueTemp.length - 2, 2);
        }
        return WordToHexValue;
    };
    
    var uTF8Encode = function(string) {
        string = string.replace(/\x0d\x0a/g, "\x0a");
        var output = "";
        for(var n = 0; n  127) && (c > 6) | 192);
                output += String.fromCharCode((c & 63) | 128);
            } else {
                output += String.fromCharCode((c >> 12) | 224);
                output += String.fromCharCode(((c >> 6) & 63) | 128);
                output += String.fromCharCode((c & 63) | 128);
            }
        }
        return output;
    };
    
    function md5(string) {
        var x = Array();
        var k, AA, BB, CC, DD, a, b, c, d;
        var S11 = 7,
            S12 = 12,
            S13 = 17,
            S14 = 22;
        var S21 = 5,
            S22 = 9,
            S23 = 14,
            S24 = 20;
        var S31 = 4,
            S32 = 11,
            S33 = 16,
            S34 = 23;
        var S41 = 6,
            S42 = 10,
            S43 = 15,
            S44 = 21;
        string = uTF8Encode(string);
        x = convertToWordArray(string);
        a = 0x67452301;
        b = 0xEFCDAB89;
        c = 0x98BADCFE;
        d = 0x10325476;
        for(k = 0; k 

    上面的js來(lái)自gittub可以在utils里新建一個(gè)md5.js,放入上面的代碼。愛(ài)掏網(wǎng) - it200.com然后在頁(yè)面里引入。愛(ài)掏網(wǎng) - it200.com

    例如:

    const wxMd5 = require("../../utils/md5.js");
    
    onLoad: function (options) {
        console.log(wxMd5("123456"));
    }

    聲明:所有內(nèi)容來(lái)自互聯(lián)網(wǎng)搜索結(jié)果,不保證100%準(zhǔn)確性,僅供參考。如若本站內(nèi)容侵犯了原著者的合法權(quán)益,可聯(lián)系我們進(jìn)行處理。
    發(fā)表評(píng)論
    更多 網(wǎng)友評(píng)論0 條評(píng)論)
    暫無(wú)評(píng)論

    返回頂部

    主站蜘蛛池模板: 国产精品成人一区二区| 亚洲色偷精品一区二区三区| 国产精品视频一区二区噜噜| 国产一区在线视频| 国偷自产一区二区免费视频| 亚洲福利视频一区| 中文乱码字幕高清一区二区| 天美传媒一区二区三区| 精品视频一区二区三区四区五区| 亚洲AV无码一区二区二三区软件| 国内精品一区二区三区东京| 国产AV国片精品一区二区| 国产成人无码一区二区在线播放| 亚洲AV一区二区三区四区| 一区二区三区电影在线观看| 亚洲电影国产一区| 免费人妻精品一区二区三区| 国产精品无码AV一区二区三区| 亚洲一区二区三区在线| 国产一区二区精品在线观看| 国产一区二区三区91| 免费无码一区二区三区蜜桃大 | 日韩人妻精品无码一区二区三区| 国产精品高清一区二区人妖| 国产成人精品无人区一区| 中文字幕日韩一区二区三区不卡| 亚洲蜜芽在线精品一区| 无码AV动漫精品一区二区免费| 色国产精品一区在线观看| 视频一区二区三区人妻系列 | 亚洲AV成人一区二区三区在线看 | 亚洲一区二区三区在线观看精品中文 | 99久久精品国产一区二区成人| 国产一区二区在线视频播放| 无码一区二区三区| 成人一区二区免费视频| 色婷婷av一区二区三区仙踪林 | 亚洲一区二区三区高清视频| 福利一区国产原创多挂探花| 亚洲av成人一区二区三区在线播放 | 亚洲一区二区视频在线观看|