MD5加密(Javascript实现,可在前端使用)

本文提供了一个 Java 实现的 MD5 加密功能模板。通过该模板,只需将待加密的字符串作为输入参数,即可轻松完成 MD5 加密过程。

javas实现md5加密功能模板,仅需将需要加密的字符串传入函数即可

md5(string) {
   
   
      function md5_RotateLeft(lValue, iShiftBits) {
   
   
        return (lValue << iShiftBits) | (lValue >>> (32 - iShiftBits));
      }
      function md5_AddUnsigned(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;
        }
      }
      function md5_F(x, y, z) {
   
   
        return (x & y) | (~x & z);
      }
      function md5_G(x, y, z) {
   
   
        return (x & z) | (y & ~z);
      }
      function md5_H(x, y, z) {
   
   
        return x ^ y ^ z;
      }
      function md5_I(x, y, z) {
   
   
        return y ^ (x | ~z);
      }
      function md5_FF(a, b, c, d, x, s, ac) {
   
   
        a = md5_AddUnsigned(
          a,
          md5_AddUnsigned(md5_AddUnsigned(md5_F(b, c, d), x), ac)
        );
        return md5_AddUnsigned(md5_RotateLeft(a, s), b);
      }
      function md5_GG(a, b, c, d, x, s, ac) {
   
   
        a = md5_AddUnsigned(
          a,
          md5_AddUnsigned(md5_AddUnsigned(md5_G(b, c, d), x), ac)
        );
        return md5_AddUnsigned(md5_RotateLeft(a, s), b);
      }
      function md5_HH(a, b, c, d, x, s, ac) {
   
   
        a = md5_AddUnsigned(
          a,
          md5_AddUnsigned(md5_AddUnsigned(md5_H(b, c, d), x), ac)
        );
        return md5_AddUnsigned(md5_RotateLeft(a, s), b);
      }
      function md5_II(a, b, c, d, x, s, ac) {
   
   
        a = md5_AddUnsigned(
          a,
          md5_AddUnsigned(md5_AddUnsigned(md5_I(b, c, d), x), ac)
        );
        return md5_AddUnsigned(md5_RotateLeft(a, s), b);
      }
      function md5_ConvertToWordArray(string) {
   
   
        var lWordCount;
        var lMessageLength = string.length;
        var lNumberOfWords_temp1 = lMessageLength + 8;
        var lNumberOfWords_temp2 =
          (lNumberOfWords_temp1 - (lNumberOfWords_temp1 % 64)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值