实现 JavaScript 哈希算法 包含 md5, sha1 sha256

在解ob混淆时 发现其中作者实现的几种哈希算法,觉得写的不错,遂拿来分享给大家

  • MD5算法
function hash_md5(_0x5be8e2) {
  function _0x3cf213(_0x5cf6ec, _0x3082d4) {
    return _0x5cf6ec << _0x3082d4 | _0x5cf6ec >>> 32 - _0x3082d4;
  }

  function _0xddae70(_0x4b1946, _0x17d389) {
    var _0x76617c, _0x352aac, _0x40ca4a, _0x1a2ac6, _0x2dec5e;

    _0x40ca4a = _0x4b1946 & 2147483648;
    _0x1a2ac6 = _0x17d389 & 2147483648;
    _0x76617c = _0x4b1946 & 1073741824;
    _0x352aac = _0x17d389 & 1073741824;
    _0x2dec5e = (_0x4b1946 & 1073741823) + (_0x17d389 & 1073741823);

    if (_0x76617c & _0x352aac) {
      return _0x2dec5e ^ 2147483648 ^ _0x40ca4a ^ _0x1a2ac6;
    }

    if (_0x76617c | _0x352aac) {
      if (_0x2dec5e & 1073741824) {
        return _0x2dec5e ^ 3221225472 ^ _0x40ca4a ^ _0x1a2ac6;
      } else {
        return _0x2dec5e ^ 1073741824 ^ _0x40ca4a ^ _0x1a2ac6;
      }
    } else {
      return _0x2dec5e ^ _0x40ca4a ^ _0x1a2ac6;
    }
  }

  function _0x372249(_0x17b477, _0x20dd3a, _0x4dfa35) {
    return _0x17b477 & _0x20dd3a | ~_0x17b477 & _0x4dfa35;
  }

  function _0x3dc6d8(_0xa646f1, _0x4f2fd7, _0x334ce6) {
    return _0xa646f1 & _0x334ce6 | _0x4f2fd7 & ~_0x334ce6;
  }

  function _0x24f9c0(_0x3ca345, _0xd8d8c, _0x94d61) {
    return _0x3ca345 ^ _0xd8d8c ^ _0x94d61;
  }

  function _0x25eadf(_0x2d3318, _0xb5857f, _0x1b78c5) {
    return _0xb5857f ^ (_0x2d3318 | ~_0x1b78c5);
  }

  function _0x5cae5b(_0x2fbeea, _0x1a7a0e, _0x1e5a2f, _0x4e87ae, _0x223501, _0x249dbe, _0x4ec635) {
    _0x2fbeea = _0xddae70(_0x2fbeea, _0xddae70(_0xddae70(_0x372249(_0x1a7a0e, _0x1e5a2f, _0x4e87ae), _0x223501), _0x4ec635));
    return _0xddae70(_0x3cf213(_0x2fbeea, _0x249dbe), _0x1a7a0e);
  }

  function _0x4f0089(_0x14d937, _0x50c518, _0x2514a7, _0x57fc4b, _0x1a65bb, _0x5b1767, _0x20bd1c) {
    _0x14d937 = _0xddae70(_0x14d937, _0xddae70(_0xddae70(_0x3dc6d8(_0x50c518, _0x2514a7, _0x57fc4b), _0x1a65bb), _0x20bd1c));
    return _0xddae70(_0x3cf213(_0x14d937, _0x5b1767), _0x50c518);
  }

  function _0x5de9ac(_0x1deb68, _0x507e39, _0x47c88e, _0x3bddb3, _0x356ea4, _0x1d353d, _0x500c58) {
    _0x1deb68 = _0xddae70(_0x1deb68, _0xddae70(_0xddae70(_0x24f9c0(_0x507e39, _0x47c88e, _0x3bddb3), _0x356ea4), _0x500c58));
    return _0xddae70(_0x3cf213(_0x1deb68, _0x1d353d), _0x507e39);
  }

  function _0x2a491e(_0x123286, _0x486d82, _0x2a9abe, _0x46e42a, _0x5eaf7b, _0x218304, _0x280dc5) {
    _0x123286 = _0xddae70(_0x123286, _0xddae70(_0xddae70(_0x25eadf(_0x486d82, _0x2a9abe, _0x46e42a), _0x5eaf7b), _0x280dc5));
    return _0xddae70(_0x3cf213(_0x123286, _0x218304), _0x486d82);
  }

  function _0x287e25(_0x48c126) {
    var _0x54922c;

    var _0x4279c6 = _0x48c126["length"];

    var _0x259ab1 = _0x4279c6 + 8;

    var _0x406afa = (_0x259ab1 - _0x259ab1 % 64) / 64;

    var _0x9f7ec5 = (_0x406afa + 1) * 16;

    var _0x342f97 = Array(_0x9f7ec5 - 1);

    var _0x38b512 = 0;
    var _0x40f4d5 = 0;

    while (_0x40f4d5 < _0x4279c6) {
      _0x54922c = (_0x40f4d5 - _0x40f4d5 % 4) / 4;
      _0x38b512 = _0x40f4d5 % 4 * 8;
      _0x342f97[_0x54922c] = _0x342f97[_0x54922c] | _0x48c126["charCodeAt"](_0x40f4d5) << _0x38b512;
      _0x40f4d5++;
    }

    _0x54922c = (_0x40f4d5 - _0x40f4d5 % 4) / 4;
    _0x38b512 = _0x40f4d5 % 4 * 8;
    _0x342f97[_0x54922c] = _0x342f97[_0x54922c] | 128 << _0x38b512;
    _0x342f97[_0x9f7ec5 - 2] = _0x4279c6 << 3;
    _0x342f97[_0x9f7ec5 - 1] = _0x4279c6 >>> 29;
    return _0x342f97;
  }

  function _0x4bb8aa(_0x40ee87) {
    var _0x3378db = "",
        _0x55812f = "",
        _0x17394a,
        _0x2fa3a0;

    for (_0x2fa3a0 = 0; _0x2fa3a0 <= 3; _0x2fa3a0++) {
      _0x17394a = _0x40ee87 >>> _0x2fa3a0 * 8 & 255;
      _0x55812f = "0" + _0x17394a["toString"](16);
      _0x3378db = _0x3378db + _0x55812f["substr"](_0x55812f["length"] - 2, 2);
    }

    return _0x3378db;
  }

  var _0x1c6a47 = Array();

  var _0x3f8a56, _0x3b159c, _0x361533, _0x230872, _0x66dec0, _0x28d15f, _0x9837f3, _0x58b681, _0x4da13c;

  var _0x2e0305 = 7,
      _0x1dcbf5 = 12,
      _0x44081a = 17,
      _0x216b87 = 22;
  var _0x1fa910 = 5,
      _0x554a21 = 9,
      _0x5002a0 = 14,
      _0x2d4422 = 20;
  var _0x51a028 = 4,
      _0x5a3a98 = 11,
      _0xc55ee0 = 16,
      _0x271aee = 23;
  var _0x463955 = 6,
      _0x25de8d = 10,
      _0x2a5661 = 15,
      _0x343fe8 = 21;
  _0x1c6a47 = _0x287e25(_0x5be8e2);
  _0x28d15f = 1732584193;
  _0x9837f3 = 4023233417;
  _0x58b681 = 2562383102;
  _0x4da13c = 271733878;

  for (_0x3f8a56 = 0; _0x3f8a56 < _0x1c6a47["length"]; _0x3f8a56 += 16) {
    _0x3b159c = _0x28d15f;
    _0x361533 = _0x9837f3;
    _0x230872 = _0x58b681;
    _0x66dec0 = _0x4da13c;
    _0x28d15f = _0x5cae5b(_0x28d15f, _0x9837f3, _0x58b681, _0x4da13c, _0x1c6a47[_0x3f8a56 + 0], _0x2e0305, 3614090360);
    _0x4da13c = _0x5cae5b(_0x4da13c, _0x28d15f, _0x9837f3, _0x58b681, _0x1c6a47[_0x3f8a56 + 1], _0x1dcbf5, 3905402710);
    _0x58b681 = _0x5cae5b(_0x58b681, _0x4da13c, _0x28d15f, _0x9837f3, _0x1c6a47[_0x3f8a56 + 2], _0x44081a, 606105819);
    _0x9837f3 = _0x5cae5b(_0x9837f3, _0x58b681, _0x4da13c, _0x28d15f, _0x1c6a47[_0x3f8a56 + 3], _0x216b87, 3250441966);
    _0x28d15f = _0x5cae5b(_0x28d15f, _0x9837f3, _0x58b681, _0x4da13c, _0x1c6a47[_0x3f8a56 + 4], _0x2e0305, 4118548399);
    _0x4da13c = _0x5cae5b(_0x4da13c, _0x28d15f, _0x9837f3, _0x58b681, _0x1c6a47[_0x3f8a56 + 5], _0x1dcbf5, 1200080426);
    _0x58b681 = _0x5cae5b(_0x58b681, _0x4da13c, _0x28d15f, _0x9837f3, _0x1c6a47[_0x3f8a56 + 6], _0x44081a, 2821735955);
    _0x9837f3 = _0x5cae5b(_0x9837f3, _0x58b681, _0x4da13c, _0x28d15f, _0x1c6a47[_0x3f8a56 + 7], _0x216b87, 4249261313);
    _0x28d15f = _0x5cae5b(_0x28d15f, _0x9837f3, _0x58b681, _0x4da13c, _0x1c6a47[_0x3f8a56 + 8], _0x2e0305, 1770035416);
    _0x4da13c = _0x5cae5b(_0x4da13c, _0x28d15f, _0x9837f3, _0x58b681, _0x1c6a47[_0x3f8a56 + 9], _0x1dcbf5, 2336552879);
    _0x58b681 = _0x5cae5b(_0x58b681, _0x4da13c, _0x28d15f, _0x9837f3, _0x1c6a47[_0x3f8a56 + 10], _0x44081a, 4294925233);
    _0x9837f3 = _0x5cae5b(_0x9837f3, _0x58b681, _0x4da13c, _0x28d15f, _0x1c6a47[_0x3f8a56 + 11], _0x216b87, 2304563134);
    _0x28d15f = _0x5cae5b(_0x28d15f, _0x9837f3, _0x58b681, _0x4da13c, _0x1c6a47[_0x3f8a56 + 12], _0x2e0305, 1804603682);
    _0x4da13c = _0x5cae5b(_0x4da13c, _0x28d15f, _0x9837f3, _0x58b681, _0x1c6a47[_0x3f8a56 + 13], _0x1dcbf5, 4254626195);
    _0x58b681 = _0x5cae5b(_0x58b681, _0x4da13c, _0x28d15f, _0x9837f3, _0x1c6a47[_0x3f8a56 + 14], _0x44081a, 2792965006);
    _0x9837f3 = _0x5cae5b(_0x9837f3, _0x58b681, _0x4da13c, _0x28d15f, _0x1c6a47[_0x3f8a56 + 15], _0x216b87, 1236535329);
    _0x28d15f = _0x4f0089(_0x28d15f, _0x9837f3, _0x58b681, _0x4da13c, _0x1c6a47[_0x3f8a56 + 1], _0x1fa910, 4129170786);
    _0x4da13c = _0x4f0089(_0x4da13c, _0x28d15f, _0x9837f3, _0x58b681, _0x1c6a47[_0x3f8a56 + 6], _0x554a21, 3225465664);
    _0x58b681 = _0x4f0089(_0x58b681, _0x4da13c, _0x28d15f, _0x9837f3, _0x1c6a47[_0x3f8a56 + 11], _0x5002a0, 643717713);
    _0x9837f3 = _0x4f0089(_0x9837f3, _0x58b681, _0x4da13c, _0x28d15f, _0x1c6a47[_0x3f8a56 + 0], _0x2d4422, 3921069994);
    _0x28d15f = _0x4f0089(_0x28d15f, _0x9837f3, _0x58b681, _0x4da13c, _0x1c6a47[_0x3f8a56 + 5], _0x1fa910, 3593408605);
    _0x4da13c = _0x4f0089(_0x4da13c, _0x28d15f, _0x9837f3, _0x58b681, _0x1c6a47[_0x3f8a56 + 10], _0x554a21, 38016083);
    _0x58b681 = _0x4f0089(_0x58b681, _0x4da13c, _0x28d15f, _0x9837f3, _0x1c6a47[_0x3f8a56 + 15], _0x5002a0, 3634488961);
    _0x9837f3 = _0x4f0089(_0x9837f3, _0x58b681, _0x4da13c, _0x28d15f, _0x1c6a47[_0x3f8a56 + 4], _0x2d4422, 3889429448);
    _0x28d15f = _0x4f0089(_0x28d15f, _0x9837f3, _0x58b681, _0x4da13c, _0x1c6a47[_0x3f8a56 + 9], _0x1fa910, 568446438);
    _0x4da13c = _0x4f0089(_0x4da13c, _0x28d15f, _0x9837f3, _0x58b681, _0x1c6a47[_0x3f8a56 + 14], _0x554a21, 3275163606);
    _0x58b681 = _0x4f0089(_0x58b681, _0x4da13c, _0x28d15f, _0x9837f3, _0x1c6a47[_0x3f8a56 + 3], _0x5002a0, 4107603335);
    _0x9837f3 = _0x4f0089(_0x9837f3, _0x58b681, _0x4da13c, _0x28d15f, _0x1c6a47[_0x3f8a56 + 8], _0x2d4422, 1163531501);
    _0x28d15f = _0x4f0089(_0x28d15f, _0x9837f3, _0x58b681, _0x4da13c, _0x1c6a47[_0x3f8a56 + 13], _0x1fa910, 2850285829);
    _0x4da13c = _0x4f0089(_0x4da13c, _0x28d15f, _0x9837f3, _0x58b681, _0x1c6a47[_0x3f8a56 + 2], _0x554a21, 4243563512);
    _0x58b681 = _0x4f0089(_0x58b681, _0x4da13c, _0x28d15f, _0x9837f3, _0x1c6a47[_0x3f8a56 + 7], _0x5002a0, 1735328473);
    _0x9837f3 = _0x4f0089(_0x9837f3, _0x58b681, _0x4da13c, _0x28d15f, _0x1c6a47[_0x3f8a56 + 12], _0x2d4422, 2368359562);
    _0x28d15f = _0x5de9ac(_0x28d15f, _0x9837f3, _0x58b681, _0x4da13c, _0x1c6a47[_0x3f8a56 + 5], _0x51a028, 4294588738);
    _0x4da13c = _0x5de9ac(_0x4da13c, _0x28d15f, _0x9837f3, _0x58b681, _0x1c6a47[_0x3f8a56 + 8], _0x5a3a98, 2272392833);
    _0x58b681 = _0x5de9ac(_0x58b681, _0x4da13c, _0x28d15f, _0x9837f3, _0x1c6a47[_0x3f8a56 + 11], _0xc55ee0, 1839030562);
    _0x9837f3 = _0x5de9ac(_0x9837f3, _0x58b681, _0x4da13c, _0x28d15f, _0x1c6a47[_0x3f8a56 + 14], _0x271aee, 4259657740);
    _0x28d15f = _0x5de9ac(_0x28d15f, _0x9837f3, _0x58b681, _0x4da13c, _0x1c6a47[_0x3f8a56 + 1], _0x51a028, 2763975236);
    _0x4da13c = _0x5de9ac(_0x4da13c, _0x28d15f, _0x9837f3, _0x58b681, _0x1c6a47[_0x3f8a56 + 4], _0x5a3a98, 1272893353);
    _0x58b681 = _0x5de9ac(_0x58b681, _0x4da13c, _0x28d15f, _0x9837f3, _0x1c6a47[_0x3f8a56 + 7], _0xc55ee0, 4139469664);
    _0x9837f3 = _0x5de9ac(_0x9837f3, _0x58b681, _0x4da13c, _0x28d15f, _0x1c6a47[_0x3f8a56 + 10], _0x271aee, 3200236656);
    _0x28d15f = _0x5de9ac(_0x28d15f, _0x9837f3, _0x58b681, _0x4da13c, _0x1c6a47[_0x3f8a56 + 13], _0x51a028, 681279174);
    _0x4da13c = _0x5de9ac(_0x4da13c, _0x28d15f, _0x9837f3, _0x58b681, _0x1c6a47[_0x3f8a56 + 0], _0x5a3a98, 3936430074);
    _0x58b681 = _0x5de9ac(_0x58b681, _0x4da13c, _0x28d15f, _0x9837f3, _0x1c6a47[_0x3f8a56 + 3], _0xc55ee0, 3572445317);
    _0x9837f3 = _0x5de9ac(_0x9837f3, _0x58b681, _0x4da13c, _0x28d15f, _0x1c6a47[_0x3f8a56 + 6], _0x271aee, 76029189);
    _0x28d15f = _0x5de9ac(_0x28d15f, _0x9837f3, _0x58b681, _0x4da13c, _0x1c6a47[_0x3f8a56 + 9], _0x51a028, 3654602809);
    _0x4da13c = _0x5de9ac(_0x4da13c, _0x28d15f, _0x9837f3, _0x58b681, _0x1c6a47[_0x3f8a56 + 12], _0x5a3a98, 3873151461);
    _0x58b681 = _0x5de9ac(_0x58b681, _0x4da13c, _0x28d15f, _0x9837f3, _0x1c6a47[_0x3f8a56 + 15], _0xc55ee0, 530742520);
    _0x9837f3 = _0x5de9ac(_0x9837f3, _0x58b681, _0x4da13c, _0x28d15f, _0x1c6a47[_0x3f8a56 + 2], _0x271aee, 3299628645);
    _0x28d15f = _0x2a491e(_0x28d15f, _0x9837f3, _0x58b681, _0x4da13c, _0x1c6a47[_0x3f8a56 + 0], _0x463955, 4096336452);
    _0x4da13c = _0x2a491e(_0x4da13c, _0x28d15f, _0x9837f3, _0x58b681, _0x1c6a47[_0x3f8a56 + 7], _0x25de8d, 1126891415);
    _0x58b681 = _0x2a491e(_0x58b681, _0x4da13c, _0x28d15f, _0x9837f3, _0x1c6a47[_0x3f8a56 + 14], _0x2a5661, 2878612391);
    _0x9837f3 = _0x2a491e(_0x9837f3, _0x58b681, _0x4da13c, _0x28d15f, _0x1c6a47[_0x3f8a56 + 5], _0x343fe8, 4237533241);
    _0x28d15f = _0x2a491e(_0x28d15f, _0x9837f3, _0x58b681, _0x4da13c, _0x1c6a47[_0x3f8a56 + 12], _0x463955, 1700485571);
    _0x4da13c = _0x2a491e(_0x4da13c, _0x28d15f, _0x9837f3, _0x58b681, _0x1c6a47[_0x3f8a56 + 3], _0x25de8d, 2399980690);
    _0x58b681 = _0x2a491e(_0x58b681, _0x4da13c, _0x28d15f, _0x9837f3, _0x1c6a47[_0x3f8a56 + 10], _0x2a5661, 4293915773);
    _0x9837f3 = _0x2a491e(_0x9837f3, _0x58b681, _0x4da13c, _0x28d15f, _0x1c6a47[_0x3f8a56 + 1], _0x343fe8, 2240044497);
    _0x28d15f = _0x2a491e(_0x28d15f, _0x9837f3, _0x58b681, _0x4da13c, _0x1c6a47[_0x3f8a56 + 8], _0x463955, 1873313359);
    _0x4da13c = _0x2a491e(_0x4da13c, _0x28d15f, _0x9837f3, _0x58b681, _0x1c6a47[_0x3f8a56 + 15], _0x25de8d, 4264355552);
    _0x58b681 = _0x2a491e(_0x58b681, _0x4da13c, _0x28d15f, _0x9837f3, _0x1c6a47[_0x3f8a56 + 6], _0x2a5661, 2734768916);
    _0x9837f3 = _0x2a491e(_0x9837f3, _0x58b681, _0x4da13c, _0x28d15f, _0x1c6a47[_0x3f8a56 + 13], _0x343fe8, 1309151649);
    _0x28d15f = _0x2a491e(_0x28d15f, _0x9837f3, _0x58b681, _0x4da13c, _0x1c6a47[_0x3f8a56 + 4], _0x463955, 4149444226);
    _0x4da13c = _0x2a491e(_0x4da13c, _0x28d15f, _0x9837f3, _0x58b681, _0x1c6a47[_0x3f8a56 + 11], _0x25de8d, 3174756917);
    _0x58b681 = _0x2a491e(_0x58b681, _0x4da13c, _0x28d15f, _0x9837f3, _0x1c6a47[_0x3f8a56 + 2], _0x2a5661, 718787259);
    _0x9837f3 = _0x2a491e(_0x9837f3, _0x58b681, _0x4da13c, _0x28d15f, _0x1c6a47[_0x3f8a56 + 9], _0x343fe8, 3951481745);
    _0x28d15f = _0xddae70(_0x28d15f, _0x3b159c);
    _0x9837f3 = _0xddae70(_0x9837f3, _0x361533);
    _0x58b681 = _0xddae70(_0x58b681, _0x230872);
    _0x4da13c = _0xddae70(_0x4da13c, _0x66dec0);
  }

  var _0x524009 = _0x4bb8aa(_0x28d15f) + _0x4bb8aa(_0x9837f3) + _0x4bb8aa(_0x58b681) + _0x4bb8aa(_0x4da13c);

  return _0x524009["toLowerCase"]();
}
  • sha1算法
function hash_sha1(_0x11b55e) {
  function _0x2e2b38(_0x166f33, _0x9f71ff) {
    return _0x166f33 << _0x9f71ff | _0x166f33 >>> 32 - _0x9f71ff;
  }

  function _0x3cb804(_0x292c2c, _0x26d151) {
    var _0x8bf55a, _0x574cd8, _0x1c1ab1, _0x67386a, _0x359bbe;

    _0x1c1ab1 = _0x292c2c & 2147483648;
    _0x67386a = _0x26d151 & 2147483648;
    _0x8bf55a = _0x292c2c & 1073741824;
    _0x574cd8 = _0x26d151 & 1073741824;
    _0x359bbe = (_0x292c2c & 1073741823) + (_0x26d151 & 1073741823);

    if (_0x8bf55a & _0x574cd8) {
      return _0x359bbe ^ 2147483648 ^ _0x1c1ab1 ^ _0x67386a;
    }

    if (_0x8bf55a | _0x574cd8) {
      if (_0x359bbe & 1073741824) {
        return _0x359bbe ^ 3221225472 ^ _0x1c1ab1 ^ _0x67386a;
      } else {
        return _0x359bbe ^ 1073741824 ^ _0x1c1ab1 ^ _0x67386a;
      }
    } else {
      return _0x359bbe ^ _0x1c1ab1 ^ _0x67386a;
    }
  }

  function _0x299b45(_0x5eebb8, _0x11553a, _0x16bc00) {
    return _0x5eebb8 & _0x11553a | ~_0x5eebb8 & _0x16bc00;
  }

  function _0x52d4f9(_0x58d533, _0x281884, _0x1bbef4) {
    return _0x58d533 & _0x1bbef4 | _0x281884 & ~_0x1bbef4;
  }

  function _0x246e04(_0x412347, _0x4902cb, _0x341620) {
    return _0x412347 ^ _0x4902cb ^ _0x341620;
  }

  function _0x1ad3ac(_0x5b8f14, _0x165351, _0x25326c) {
    return _0x165351 ^ (_0x5b8f14 | ~_0x25326c);
  }

  function _0x5ae777(_0x42e289, _0x4ee3d9, _0x53a7b6, _0x181ecf, _0x2bb51c, _0x5422c4, _0x3aa42a) {
    _0x42e289 = _0x3cb804(_0x42e289, _0x3cb804(_0x3cb804(_0x299b45(_0x4ee3d9, _0x53a7b6, _0x181ecf), _0x2bb51c), _0x3aa42a));
    return _0x3cb804(_0x2e2b38(_0x42e289, _0x5422c4), _0x4ee3d9);
  }

  function _0x3b5642(_0x175e1d, _0x446c49, _0x3f2fac, _0x425623, _0x5dbbf6, _0x573e9e, _0x85b5cd) {
    _0x175e1d = _0x3cb804(_0x175e1d, _0x3cb804(_0x3cb804(_0x52d4f9(_0x446c49, _0x3f2fac, _0x425623), _0x5dbbf6), _0x85b5cd));
    return _0x3cb804(_0x2e2b38(_0x175e1d, _0x573e9e), _0x446c49);
  }

  function _0x1d6f99(_0x23a84b, _0x25432d, _0x4c9fa7, _0x17f6b0, _0x51728d, _0x4271ae, _0x554492) {
    _0x23a84b = _0x3cb804(_0x23a84b, _0x3cb804(_0x3cb804(_0x246e04(_0x25432d, _0x4c9fa7, _0x17f6b0), _0x51728d), _0x554492));
    return _0x3cb804(_0x2e2b38(_0x23a84b, _0x4271ae), _0x25432d);
  }

  function _0x3b97dd(_0x4b703f, _0x1b08d8, _0x3327c7, _0x2060ee, _0x6d7a5d, _0x1f8f0d, _0x46cdf5) {
    _0x4b703f = _0x3cb804(_0x4b703f, _0x3cb804(_0x3cb804(_0x1ad3ac(_0x1b08d8, _0x3327c7, _0x2060ee), _0x6d7a5d), _0x46cdf5));
    return _0x3cb804(_0x2e2b38(_0x4b703f, _0x1f8f0d), _0x1b08d8);
  }

  function _0x47d7ca(_0x397f23) {
    var _0x4d508a;

    var _0x276e76 = _0x397f23["length"];

    var _0x4d5ad5 = _0x276e76 + 8;

    var _0x363021 = (_0x4d5ad5 - _0x4d5ad5 % 64) / 64;

    var _0x3013e4 = (_0x363021 + 1) * 16;

    var _0x2aaaf9 = Array(_0x3013e4 - 1);

    var _0x22588f = 0;
    var _0x5dd24d = 0;

    while (_0x5dd24d < _0x276e76) {
      _0x4d508a = (_0x5dd24d - _0x5dd24d % 4) / 4;
      _0x22588f = _0x5dd24d % 4 * 8;
      _0x2aaaf9[_0x4d508a] = _0x2aaaf9[_0x4d508a] | _0x397f23["charCodeAt"](_0x5dd24d) << _0x22588f;
      _0x5dd24d++;
    }

    _0x4d508a = (_0x5dd24d - _0x5dd24d % 4) / 4;
    _0x22588f = _0x5dd24d % 4 * 8;
    _0x2aaaf9[_0x4d508a] = _0x2aaaf9[_0x4d508a] | 128 << _0x22588f;
    _0x2aaaf9[_0x3013e4 - 2] = _0x276e76 << 3;
    _0x2aaaf9[_0x3013e4 - 1] = _0x276e76 >>> 29;
    return _0x2aaaf9;
  }

  function _0x6d9aa1(_0x59a303) {
    var _0x588197 = "",
        _0x135d6c = "",
        _0x15c5f8,
        _0x30a029;

    for (_0x30a029 = 0; _0x30a029 <= 3; _0x30a029++) {
      _0x15c5f8 = _0x59a303 >>> _0x30a029 * 8 & 255;
      _0x135d6c = "0" + _0x15c5f8["toString"](16);
      _0x588197 = _0x588197 + _0x135d6c["substr"](_0x135d6c["length"] - 2, 2);
    }

    return _0x588197;
  }

  var _0x2d92b5 = Array();

  var _0x45f091, _0x137c42, _0x41e7c8, _0x2fa0fd, _0x5f58cc, _0x5f1652, _0x4c8b8e, _0x45dce7, _0x2670e7;

  var _0x1baebb = 7,
      _0x3a8230 = 12,
      _0x20359e = 17,
      _0x48ae2f = 22;
  var _0x4ef5b7 = 5,
      _0x2ca5c0 = 9,
      _0x29a99e = 14,
      _0x39ce6a = 20;
  var _0x466053 = 4,
      _0x5717f7 = 11,
      _0x39eeff = 16,
      _0x3d74e6 = 23;
  var _0x23caec = 6,
      _0x19186b = 10,
      _0x30dd15 = 15,
      _0x1f4715 = 21;
  _0x2d92b5 = _0x47d7ca(_0x11b55e);
  _0x5f1652 = 1732584193;
  _0x4c8b8e = 4023233417;
  _0x45dce7 = 2562383102;
  _0x2670e7 = 271733878;

  for (_0x45f091 = 0; _0x45f091 < _0x2d92b5["length"]; _0x45f091 += 16) {
    _0x137c42 = _0x5f1652;
    _0x41e7c8 = _0x4c8b8e;
    _0x2fa0fd = _0x45dce7;
    _0x5f58cc = _0x2670e7;
    _0x5f1652 = _0x5ae777(_0x5f1652, _0x4c8b8e, _0x45dce7, _0x2670e7, _0x2d92b5[_0x45f091 + 0], _0x1baebb, 3614090360);
    _0x2670e7 = _0x5ae777(_0x2670e7, _0x5f1652, _0x4c8b8e, _0x45dce7, _0x2d92b5[_0x45f091 + 1], _0x3a8230, 3905402710);
    _0x45dce7 = _0x5ae777(_0x45dce7, _0x2670e7, _0x5f1652, _0x4c8b8e, _0x2d92b5[_0x45f091 + 2], _0x20359e, 606105819);
    _0x4c8b8e = _0x5ae777(_0x4c8b8e, _0x45dce7, _0x2670e7, _0x5f1652, _0x2d92b5[_0x45f091 + 3], _0x48ae2f, 3250441966);
    _0x5f1652 = _0x5ae777(_0x5f1652, _0x4c8b8e, _0x45dce7, _0x2670e7, _0x2d92b5[_0x45f091 + 4], _0x1baebb, 4118548399);
    _0x2670e7 = _0x5ae777(_0x2670e7, _0x5f1652, _0x4c8b8e, _0x45dce7, _0x2d92b5[_0x45f091 + 5], _0x3a8230, 1200080426);
    _0x45dce7 = _0x5ae777(_0x45dce7, _0x2670e7, _0x5f1652, _0x4c8b8e, _0x2d92b5[_0x45f091 + 6], _0x20359e, 2821735955);
    _0x4c8b8e = _0x5ae777(_0x4c8b8e, _0x45dce7, _0x2670e7, _0x5f1652, _0x2d92b5[_0x45f091 + 7], _0x48ae2f, 4249261313);
    _0x5f1652 = _0x5ae777(_0x5f1652, _0x4c8b8e, _0x45dce7, _0x2670e7, _0x2d92b5[_0x45f091 + 8], _0x1baebb, 1770035416);
    _0x2670e7 = _0x5ae777(_0x2670e7, _0x5f1652, _0x4c8b8e, _0x45dce7, _0x2d92b5[_0x45f091 + 9], _0x3a8230, 2336552879);
    _0x45dce7 = _0x5ae777(_0x45dce7, _0x2670e7, _0x5f1652, _0x4c8b8e, _0x2d92b5[_0x45f091 + 10], _0x20359e, 4294925233);
    _0x4c8b8e = _0x5ae777(_0x4c8b8e, _0x45dce7, _0x2670e7, _0x5f1652, _0x2d92b5[_0x45f091 + 11], _0x48ae2f, 2304563134);
    _0x5f1652 = _0x5ae777(_0x5f1652, _0x4c8b8e, _0x45dce7, _0x2670e7, _0x2d92b5[_0x45f091 + 12], _0x1baebb, 1804603682);
    _0x2670e7 = _0x5ae777(_0x2670e7, _0x5f1652, _0x4c8b8e, _0x45dce7, _0x2d92b5[_0x45f091 + 13], _0x3a8230, 4254626195);
    _0x45dce7 = _0x5ae777(_0x45dce7, _0x2670e7, _0x5f1652, _0x4c8b8e, _0x2d92b5[_0x45f091 + 14], _0x20359e, 2792965006);
    _0x4c8b8e = _0x5ae777(_0x4c8b8e, _0x45dce7, _0x2670e7, _0x5f1652, _0x2d92b5[_0x45f091 + 15], _0x48ae2f, 1236535329);
    _0x5f1652 = _0x3b5642(_0x5f1652, _0x4c8b8e, _0x45dce7, _0x2670e7, _0x2d92b5[_0x45f091 + 1], _0x4ef5b7, 4129170786);
    _0x2670e7 = _0x3b5642(_0x2670e7, _0x5f1652, _0x4c8b8e, _0x45dce7, _0x2d92b5[_0x45f091 + 6], _0x2ca5c0, 3225465664);
    _0x45dce7 = _0x3b5642(_0x45dce7, _0x2670e7, _0x5f1652, _0x4c8b8e, _0x2d92b5[_0x45f091 + 11], _0x29a99e, 643717713);
    _0x4c8b8e = _0x3b5642(_0x4c8b8e, _0x45dce7, _0x2670e7, _0x5f1652, _0x2d92b5[_0x45f091 + 0], _0x39ce6a, 3921069994);
    _0x5f1652 = _0x3b5642(_0x5f1652, _0x4c8b8e, _0x45dce7, _0x2670e7, _0x2d92b5[_0x45f091 + 5], _0x4ef5b7, 3593408605);
    _0x2670e7 = _0x3b5642(_0x2670e7, _0x5f1652, _0x4c8b8e, _0x45dce7, _0x2d92b5[_0x45f091 + 10], _0x2ca5c0, 38016083);
    _0x45dce7 = _0x3b5642(_0x45dce7, _0x2670e7, _0x5f1652, _0x4c8b8e, _0x2d92b5[_0x45f091 + 15], _0x29a99e, 3634488961);
    _0x4c8b8e = _0x3b5642(_0x4c8b8e, _0x45dce7, _0x2670e7, _0x5f1652, _0x2d92b5[_0x45f091 + 4], _0x39ce6a, 3889429448);
    _0x5f1652 = _0x3b5642(_0x5f1652, _0x4c8b8e, _0x45dce7, _0x2670e7, _0x2d92b5[_0x45f091 + 9], _0x4ef5b7, 568446438);
    _0x2670e7 = _0x3b5642(_0x2670e7, _0x5f1652, _0x4c8b8e, _0x45dce7, _0x2d92b5[_0x45f091 + 14], _0x2ca5c0, 3275163606);
    _0x45dce7 = _0x3b5642(_0x45dce7, _0x2670e7, _0x5f1652, _0x4c8b8e, _0x2d92b5[_0x45f091 + 3], _0x29a99e, 4107603335);
    _0x4c8b8e = _0x3b5642(_0x4c8b8e, _0x45dce7, _0x2670e7, _0x5f1652, _0x2d92b5[_0x45f091 + 8], _0x39ce6a, 1163531501);
    _0x5f1652 = _0x3b5642(_0x5f1652, _0x4c8b8e, _0x45dce7, _0x2670e7, _0x2d92b5[_0x45f091 + 13], _0x4ef5b7, 2850285829);
    _0x2670e7 = _0x3b5642(_0x2670e7, _0x5f1652, _0x4c8b8e, _0x45dce7, _0x2d92b5[_0x45f091 + 2], _0x2ca5c0, 4243563512);
    _0x45dce7 = _0x3b5642(_0x45dce7, _0x2670e7, _0x5f1652, _0x4c8b8e, _0x2d92b5[_0x45f091 + 7], _0x29a99e, 1735328473);
    _0x4c8b8e = _0x3b5642(_0x4c8b8e, _0x45dce7, _0x2670e7, _0x5f1652, _0x2d92b5[_0x45f091 + 12], _0x39ce6a, 2368359562);
    _0x5f1652 = _0x1d6f99(_0x5f1652, _0x4c8b8e, _0x45dce7, _0x2670e7, _0x2d92b5[_0x45f091 + 5], _0x466053, 4294588738);
    _0x2670e7 = _0x1d6f99(_0x2670e7, _0x5f1652, _0x4c8b8e, _0x45dce7, _0x2d92b5[_0x45f091 + 8], _0x5717f7, 2272392833);
    _0x45dce7 = _0x1d6f99(_0x45dce7, _0x2670e7, _0x5f1652, _0x4c8b8e, _0x2d92b5[_0x45f091 + 11], _0x39eeff, 1839030562);
    _0x4c8b8e = _0x1d6f99(_0x4c8b8e, _0x45dce7, _0x2670e7, _0x5f1652, _0x2d92b5[_0x45f091 + 14], _0x3d74e6, 4259657740);
    _0x5f1652 = _0x1d6f99(_0x5f1652, _0x4c8b8e, _0x45dce7, _0x2670e7, _0x2d92b5[_0x45f091 + 1], _0x466053, 2763975236);
    _0x2670e7 = _0x1d6f99(_0x2670e7, _0x5f1652, _0x4c8b8e, _0x45dce7, _0x2d92b5[_0x45f091 + 4], _0x5717f7, 1272893353);
    _0x45dce7 = _0x1d6f99(_0x45dce7, _0x2670e7, _0x5f1652, _0x4c8b8e, _0x2d92b5[_0x45f091 + 7], _0x39eeff, 4139469664);
    _0x4c8b8e = _0x1d6f99(_0x4c8b8e, _0x45dce7, _0x2670e7, _0x5f1652, _0x2d92b5[_0x45f091 + 10], _0x3d74e6, 3200236656);
    _0x5f1652 = _0x1d6f99(_0x5f1652, _0x4c8b8e, _0x45dce7, _0x2670e7, _0x2d92b5[_0x45f091 + 13], _0x466053, 681279174);
    _0x2670e7 = _0x1d6f99(_0x2670e7, _0x5f1652, _0x4c8b8e, _0x45dce7, _0x2d92b5[_0x45f091 + 0], _0x5717f7, 3936430074);
    _0x45dce7 = _0x1d6f99(_0x45dce7, _0x2670e7, _0x5f1652, _0x4c8b8e, _0x2d92b5[_0x45f091 + 3], _0x39eeff, 3572445317);
    _0x4c8b8e = _0x1d6f99(_0x4c8b8e, _0x45dce7, _0x2670e7, _0x5f1652, _0x2d92b5[_0x45f091 + 6], _0x3d74e6, 76029189);
    _0x5f1652 = _0x1d6f99(_0x5f1652, _0x4c8b8e, _0x45dce7, _0x2670e7, _0x2d92b5[_0x45f091 + 9], _0x466053, 3654602809);
    _0x2670e7 = _0x1d6f99(_0x2670e7, _0x5f1652, _0x4c8b8e, _0x45dce7, _0x2d92b5[_0x45f091 + 12], _0x5717f7, 3873151461);
    _0x45dce7 = _0x1d6f99(_0x45dce7, _0x2670e7, _0x5f1652, _0x4c8b8e, _0x2d92b5[_0x45f091 + 15], _0x39eeff, 530742520);
    _0x4c8b8e = _0x1d6f99(_0x4c8b8e, _0x45dce7, _0x2670e7, _0x5f1652, _0x2d92b5[_0x45f091 + 2], _0x3d74e6, 3299628645);
    _0x5f1652 = _0x3b97dd(_0x5f1652, _0x4c8b8e, _0x45dce7, _0x2670e7, _0x2d92b5[_0x45f091 + 0], _0x23caec, 4096336452);
    _0x2670e7 = _0x3b97dd(_0x2670e7, _0x5f1652, _0x4c8b8e, _0x45dce7, _0x2d92b5[_0x45f091 + 7], _0x19186b, 1126891415);
    _0x45dce7 = _0x3b97dd(_0x45dce7, _0x2670e7, _0x5f1652, _0x4c8b8e, _0x2d92b5[_0x45f091 + 14], _0x30dd15, 2878612391);
    _0x4c8b8e = _0x3b97dd(_0x4c8b8e, _0x45dce7, _0x2670e7, _0x5f1652, _0x2d92b5[_0x45f091 + 5], _0x1f4715, 4237533241);
    _0x5f1652 = _0x3b97dd(_0x5f1652, _0x4c8b8e, _0x45dce7, _0x2670e7, _0x2d92b5[_0x45f091 + 12], _0x23caec, 1700485571);
    _0x2670e7 = _0x3b97dd(_0x2670e7, _0x5f1652, _0x4c8b8e, _0x45dce7, _0x2d92b5[_0x45f091 + 3], _0x19186b, 2399980690);
    _0x45dce7 = _0x3b97dd(_0x45dce7, _0x2670e7, _0x5f1652, _0x4c8b8e, _0x2d92b5[_0x45f091 + 10], _0x30dd15, 4293915773);
    _0x4c8b8e = _0x3b97dd(_0x4c8b8e, _0x45dce7, _0x2670e7, _0x5f1652, _0x2d92b5[_0x45f091 + 1], _0x1f4715, 2240044497);
    _0x5f1652 = _0x3b97dd(_0x5f1652, _0x4c8b8e, _0x45dce7, _0x2670e7, _0x2d92b5[_0x45f091 + 8], _0x23caec, 1873313359);
    _0x2670e7 = _0x3b97dd(_0x2670e7, _0x5f1652, _0x4c8b8e, _0x45dce7, _0x2d92b5[_0x45f091 + 15], _0x19186b, 4264355552);
    _0x45dce7 = _0x3b97dd(_0x45dce7, _0x2670e7, _0x5f1652, _0x4c8b8e, _0x2d92b5[_0x45f091 + 6], _0x30dd15, 2734768916);
    _0x4c8b8e = _0x3b97dd(_0x4c8b8e, _0x45dce7, _0x2670e7, _0x5f1652, _0x2d92b5[_0x45f091 + 13], _0x1f4715, 1309151649);
    _0x5f1652 = _0x3b97dd(_0x5f1652, _0x4c8b8e, _0x45dce7, _0x2670e7, _0x2d92b5[_0x45f091 + 4], _0x23caec, 4149444226);
    _0x2670e7 = _0x3b97dd(_0x2670e7, _0x5f1652, _0x4c8b8e, _0x45dce7, _0x2d92b5[_0x45f091 + 11], _0x19186b, 3174756917);
    _0x45dce7 = _0x3b97dd(_0x45dce7, _0x2670e7, _0x5f1652, _0x4c8b8e, _0x2d92b5[_0x45f091 + 2], _0x30dd15, 718787259);
    _0x4c8b8e = _0x3b97dd(_0x4c8b8e, _0x45dce7, _0x2670e7, _0x5f1652, _0x2d92b5[_0x45f091 + 9], _0x1f4715, 3951481745);
    _0x5f1652 = _0x3cb804(_0x5f1652, _0x137c42);
    _0x4c8b8e = _0x3cb804(_0x4c8b8e, _0x41e7c8);
    _0x45dce7 = _0x3cb804(_0x45dce7, _0x2fa0fd);
    _0x2670e7 = _0x3cb804(_0x2670e7, _0x5f58cc);
  }

  var _0x468846 = _0x6d9aa1(_0x5f1652) + _0x6d9aa1(_0x4c8b8e) + _0x6d9aa1(_0x45dce7) + _0x6d9aa1(_0x2670e7);

  return _0x468846["toLowerCase"]();
}
  • sha256算法
function hash_256(_0x1f7d0f) {
  var _0x41a224 = 8;
  var _0x3a2f19 = 0;

  function _0x172424(_0x53379d, _0x73556d) {
    var _0x531653 = (_0x53379d & 65535) + (_0x73556d & 65535);

    var _0x17051f = (_0x53379d >> 16) + (_0x73556d >> 16) + (_0x531653 >> 16);

    return _0x17051f << 16 | _0x531653 & 65535;
  }

  function _0x8bb3da(_0x2630ec, _0x42a2d3) {
    return _0x2630ec >>> _0x42a2d3 | _0x2630ec << 32 - _0x42a2d3;
  }

  function _0x18dca1(_0x499cdd, _0x44a4ef) {
    return _0x499cdd >>> _0x44a4ef;
  }

  function _0x392a31(_0x1b3aa5, _0x35fe4e, _0x548184) {
    return _0x1b3aa5 & _0x35fe4e ^ ~_0x1b3aa5 & _0x548184;
  }

  function _0x3738c6(_0x3e576e, _0x1cab9a, _0x303a9f) {
    return _0x3e576e & _0x1cab9a ^ _0x3e576e & _0x303a9f ^ _0x1cab9a & _0x303a9f;
  }

  function _0xbfaf1a(_0x59e241) {
    return _0x8bb3da(_0x59e241, 2) ^ _0x8bb3da(_0x59e241, 13) ^ _0x8bb3da(_0x59e241, 22);
  }

  function _0x39b66b(_0x1b4c34) {
    return _0x8bb3da(_0x1b4c34, 6) ^ _0x8bb3da(_0x1b4c34, 11) ^ _0x8bb3da(_0x1b4c34, 25);
  }

  function _0x31e46a(_0x2469bd) {
    return _0x8bb3da(_0x2469bd, 7) ^ _0x8bb3da(_0x2469bd, 18) ^ _0x18dca1(_0x2469bd, 3);
  }

  function _0x1edb96(_0xdc651c) {
    return _0x8bb3da(_0xdc651c, 17) ^ _0x8bb3da(_0xdc651c, 19) ^ _0x18dca1(_0xdc651c, 10);
  }

  function _0x35b41f(_0x5c91ab, _0x10ee6b) {
    var _0x2e9a48 = new Array(1116352408, 1899447441, 3049323471, 3921009573, 961987163, 1508970993, 2453635748, 2870763221, 3624381080, 310598401, 607225278, 1426881987, 1925078388, 2162078206, 2614888103, 3248222580, 3835390401, 4022224774, 264347078, 604807628, 770255983, 1249150122, 1555081692, 1996064986, 2554220882, 2821834349, 2952996808, 3210313671, 3336571891, 3584528711, 113926993, 338241895, 666307205, 773529912, 1294757372, 1396182291, 1695183700, 1986661051, 2177026350, 2456956037, 2730485921, 2820302411, 3259730800, 3345764771, 3516065817, 3600352804, 4094571909, 275423344, 430227734, 506948616, 659060556, 883997877, 958139571, 1322822218, 1537002063, 1747873779, 1955562222, 2024104815, 2227730452, 2361852424, 2428436474, 2756734187, 3204031479, 3329325298);

    var _0x454c3d = new Array(1779033703, 3144134277, 1013904242, 2773480762, 1359893119, 2600822924, 528734635, 1541459225);

    var _0x7191b8 = new Array(64);

    var _0x8f72c6, _0x3506c5, _0x52ddd1, _0x423bc0, _0x53bd8b, _0x2aadf4, _0x28525d, _0x2d49d4, _0x1cf2bb, _0x21fba5;

    var _0xbf2241, _0x2dea17;

    _0x5c91ab[_0x10ee6b >> 5] |= 128 << 24 - _0x10ee6b % 32;
    _0x5c91ab[(_0x10ee6b + 64 >> 9 << 4) + 15] = _0x10ee6b;

    for (var _0x1cf2bb = 0; _0x1cf2bb < _0x5c91ab["length"]; _0x1cf2bb += 16) {
      _0x8f72c6 = _0x454c3d[0];
      _0x3506c5 = _0x454c3d[1];
      _0x52ddd1 = _0x454c3d[2];
      _0x423bc0 = _0x454c3d[3];
      _0x53bd8b = _0x454c3d[4];
      _0x2aadf4 = _0x454c3d[5];
      _0x28525d = _0x454c3d[6];
      _0x2d49d4 = _0x454c3d[7];

      for (var _0x21fba5 = 0; _0x21fba5 < 64; _0x21fba5++) {
        if (_0x21fba5 < 16) {
          _0x7191b8[_0x21fba5] = _0x5c91ab[_0x21fba5 + _0x1cf2bb];
        } else {
          _0x7191b8[_0x21fba5] = _0x172424(_0x172424(_0x172424(_0x1edb96(_0x7191b8[_0x21fba5 - 2]), _0x7191b8[_0x21fba5 - 7]), _0x31e46a(_0x7191b8[_0x21fba5 - 15])), _0x7191b8[_0x21fba5 - 16]);
        }

        _0xbf2241 = _0x172424(_0x172424(_0x172424(_0x172424(_0x2d49d4, _0x39b66b(_0x53bd8b)), _0x392a31(_0x53bd8b, _0x2aadf4, _0x28525d)), _0x2e9a48[_0x21fba5]), _0x7191b8[_0x21fba5]);
        _0x2dea17 = _0x172424(_0xbfaf1a(_0x8f72c6), _0x3738c6(_0x8f72c6, _0x3506c5, _0x52ddd1));
        _0x2d49d4 = _0x28525d;
        _0x28525d = _0x2aadf4;
        _0x2aadf4 = _0x53bd8b;
        _0x53bd8b = _0x172424(_0x423bc0, _0xbf2241);
        _0x423bc0 = _0x52ddd1;
        _0x52ddd1 = _0x3506c5;
        _0x3506c5 = _0x8f72c6;
        _0x8f72c6 = _0x172424(_0xbf2241, _0x2dea17);
      }

      _0x454c3d[0] = _0x172424(_0x8f72c6, _0x454c3d[0]);
      _0x454c3d[1] = _0x172424(_0x3506c5, _0x454c3d[1]);
      _0x454c3d[2] = _0x172424(_0x52ddd1, _0x454c3d[2]);
      _0x454c3d[3] = _0x172424(_0x423bc0, _0x454c3d[3]);
      _0x454c3d[4] = _0x172424(_0x53bd8b, _0x454c3d[4]);
      _0x454c3d[5] = _0x172424(_0x2aadf4, _0x454c3d[5]);
      _0x454c3d[6] = _0x172424(_0x28525d, _0x454c3d[6]);
      _0x454c3d[7] = _0x172424(_0x2d49d4, _0x454c3d[7]);
    }

    return _0x454c3d;
  }

  function _0x5bb8d8(_0x19fb8d) {
    var _0x227201 = Array();

    var _0x1e9ef1 = 255;

    for (var _0x3bf7ca = 0; _0x3bf7ca < _0x19fb8d["length"] * _0x41a224; _0x3bf7ca += _0x41a224) {
      _0x227201[_0x3bf7ca >> 5] |= (_0x19fb8d["charCodeAt"](_0x3bf7ca / _0x41a224) & _0x1e9ef1) << 24 - _0x3bf7ca % 32;
    }

    return _0x227201;
  }

  function _0x5563cf(_0x306361) {
    var _0x5b448a = new RegExp("\n", "g");

    _0x306361 = _0x306361["replace"](_0x5b448a, "\n");
    var _0x16692b = "";

    for (var _0x53d980 = 0; _0x53d980 < _0x306361["length"]; _0x53d980++) {
      var _0x3cc0a1 = _0x306361["charCodeAt"](_0x53d980);

      if (_0x3cc0a1 < 128) {
        _0x16692b += String["fromCharCode"](_0x3cc0a1);
      } else {
        if (_0x3cc0a1 > 127 && _0x3cc0a1 < 2048) {
          _0x16692b += String["fromCharCode"](_0x3cc0a1 >> 6 | 192);
          _0x16692b += String["fromCharCode"](_0x3cc0a1 & 63 | 128);
        } else {
          _0x16692b += String["fromCharCode"](_0x3cc0a1 >> 12 | 224);
          _0x16692b += String["fromCharCode"](_0x3cc0a1 >> 6 & 63 | 128);
          _0x16692b += String["fromCharCode"](_0x3cc0a1 & 63 | 128);
        }
      }
    }

    return _0x16692b;
  }

  function _0x46dbf7(_0x55ec53) {
    var _0x54c759 = _0x3a2f19 ? "0123456789ABCDEF" : "0123456789abcdef";

    var _0xe6437a = "";

    for (var _0x11be01 = 0; _0x11be01 < _0x55ec53["length"] * 4; _0x11be01++) {
      _0xe6437a += _0x54c759["charAt"](_0x55ec53[_0x11be01 >> 2] >> (3 - _0x11be01 % 4) * 8 + 4 & 15) + _0x54c759["charAt"](_0x55ec53[_0x11be01 >> 2] >> (3 - _0x11be01 % 4) * 8 & 15);
    }

    return _0xe6437a;
  }

  _0x1f7d0f = _0x5563cf(_0x1f7d0f);
  return _0x46dbf7(_0x35b41f(_0x5bb8d8(_0x1f7d0f), _0x1f7d0f["length"] * _0x41a224));
};

你可能感兴趣的:(哈希表,javascript,node.js)