_ff = function(e, t, r, n, i, o, a) {<br> var s = e + (t & r | ~t & n) + (i >>> 0) + a;<br> return (s << o | s >>> 32 - o) + t<br>}<br>_gg = function(e, t, r, n, i, o, a) {<br> var s = e + (t & n | r & ~n) + (i >>> 0) + a;<br> return (s << o | s >>> 32 - o) + t<br>}<br>_hh = function(e, t, r, n, i, o, a) {<br> var s = e + (t ^ r ^ n) + (i >>> 0) + a;<br> return (s << o | s >>> 32 - o) + t<br>}<br>_ii = function(e, t, r, n, i, o, a) {<br> var s = e + (r ^ (t | ~n)) + (i >>> 0) + a;<br> return (s << o | s >>> 32 - o) + t<br>}
复制代码
完整的a方法
// a<br>a123 = function(e, r) {<br> e.constructor == String ? e = r && "binary" === r.encoding ? o.stringToBytes(e) : n123.utf8.stringToBytes(e) : i(e) ? e = Array.prototype.slice.call(e, 0) : Array.isArray(e) || e.constructor === Uint8Array || (e = e.toString());<br> for (var s = r123.bytesToWords(e), u = 8 * e.length, c = 1732584193, f = -271733879, d = -1732584194, l = 271733878, h = 0; h < s.length; h++)<br> s[h] = 16711935 & (s[h] << 8 | s[h] >>> 24) | 4278255360 & (s[h] << 24 | s[h] >>> 8);<br> s[u >>> 5] |= 128 << u % 32,<br> s[14 + (u + 64 >>> 9 << 4)] = u;<br> var p = _ff<br> , b = _gg<br> , y = _hh<br> , m = _ii;<br> for (h = 0; h < s.length; h += 16) {<br> var g = c<br> , v = f<br> , _ = d<br> , w = l;<br> c = p(c, f, d, l, s[h + 0], 7, -680876936),<br> l = p(l, c, f, d, s[h + 1], 12, -389564586),<br> d = p(d, l, c, f, s[h + 2], 17, 606105819),<br> f = p(f, d, l, c, s[h + 3], 22, -1044525330),<br> c = p(c, f, d, l, s[h + 4], 7, -176418897),<br> l = p(l, c, f, d, s[h + 5], 12, 1200080426),<br> d = p(d, l, c, f, s[h + 6], 17, -1473231341),<br> f = p(f, d, l, c, s[h + 7], 22, -45705983),<br> c = p(c, f, d, l, s[h + 8], 7, 1770035416),<br> l = p(l, c, f, d, s[h + 9], 12, -1958414417),<br> d = p(d, l, c, f, s[h + 10], 17, -42063),<br> f = p(f, d, l, c, s[h + 11], 22, -1990404162),<br> c = p(c, f, d, l, s[h + 12], 7, 1804603682),<br> l = p(l, c, f, d, s[h + 13], 12, -40341101),<br> d = p(d, l, c, f, s[h + 14], 17, -1502002290),<br> c = b(c, f = p(f, d, l, c, s[h + 15], 22, 1236535329), d, l, s[h + 1], 5, -165796510),<br> l = b(l, c, f, d, s[h + 6], 9, -1069501632),<br> d = b(d, l, c, f, s[h + 11], 14, 643717713),<br> f = b(f, d, l, c, s[h + 0], 20, -373897302),<br> c = b(c, f, d, l, s[h + 5], 5, -701558691),<br> l = b(l, c, f, d, s[h + 10], 9, 38016083),<br> d = b(d, l, c, f, s[h + 15], 14, -660478335),<br> f = b(f, d, l, c, s[h + 4], 20, -405537848),<br> c = b(c, f, d, l, s[h + 9], 5, 568446438),<br> l = b(l, c, f, d, s[h + 14], 9, -1019803690),<br> d = b(d, l, c, f, s[h + 3], 14, -187363961),<br> f = b(f, d, l, c, s[h + 8], 20, 1163531501),<br> c = b(c, f, d, l, s[h + 13], 5, -1444681467),<br> l = b(l, c, f, d, s[h + 2], 9, -51403784),<br> d = b(d, l, c, f, s[h + 7], 14, 1735328473),<br> c = y(c, f = b(f, d, l, c, s[h + 12], 20, -1926607734), d, l, s[h + 5], 4, -378558),<br> l = y(l, c, f, d, s[h + 8], 11, -2022574463),<br> d = y(d, l, c, f, s[h + 11], 16, 1839030562),<br> f = y(f, d, l, c, s[h + 14], 23, -35309556),<br> c = y(c, f, d, l, s[h + 1], 4, -1530992060),<br> l = y(l, c, f, d, s[h + 4], 11, 1272893353),<br> d = y(d, l, c, f, s[h + 7], 16, -155497632),<br> f = y(f, d, l, c, s[h + 10], 23, -1094730640),<br> c = y(c, f, d, l, s[h + 13], 4, 681279174),<br> l = y(l, c, f, d, s[h + 0], 11, -358537222),<br> d = y(d, l, c, f, s[h + 3], 16, -722521979),<br> f = y(f, d, l, c, s[h + 6], 23, 76029189),<br> c = y(c, f, d, l, s[h + 9], 4, -640364487),<br> l = y(l, c, f, d, s[h + 12], 11, -421815835),<br> d = y(d, l, c, f, s[h + 15], 16, 530742520),<br> c = m(c, f = y(f, d, l, c, s[h + 2], 23, -995338651), d, l, s[h + 0], 6, -198630844),<br> l = m(l, c, f, d, s[h + 7], 10, 1126891415),<br> d = m(d, l, c, f, s[h + 14], 15, -1416354905),<br> f = m(f, d, l, c, s[h + 5], 21, -57434055),<br> c = m(c, f, d, l, s[h + 12], 6, 1700485571),<br> l = m(l, c, f, d, s[h + 3], 10, -1894986606),<br> d = m(d, l, c, f, s[h + 10], 15, -1051523),<br> f = m(f, d, l, c, s[h + 1], 21, -2054922799),<br> c = m(c, f, d, l, s[h + 8], 6, 1873313359),<br> l = m(l, c, f, d, s[h + 15], 10, -30611744),<br> d = m(d, l, c, f, s[h + 6], 15, -1560198380),<br> f = m(f, d, l, c, s[h + 13], 21, 1309151649),<br> c = m(c, f, d, l, s[h + 4], 6, -145523070),<br> l = m(l, c, f, d, s[h + 11], 10, -1120210379),<br> d = m(d, l, c, f, s[h + 2], 15, 718787259),<br> f = m(f, d, l, c, s[h + 9], 21, -343485551),<br> c = c + g >>> 0,<br> f = f + v >>> 0,<br> d = d + _ >>> 0,<br> l = l + w >>> 0<br> }<br> return r123.endian([c, f, d, l])<br>}<br>_ff = function(e, t, r, n, i, o, a) {<br> var s = e + (t & r | ~t & n) + (i >>> 0) + a;<br> return (s << o | s >>> 32 - o) + t<br>}<br>_gg = function(e, t, r, n, i, o, a) {<br> var s = e + (t & n | r & ~n) + (i >>> 0) + a;<br> return (s << o | s >>> 32 - o) + t<br> }<br>_hh = function(e, t, r, n, i, o, a) {<br> var s = e + (t ^ r ^ n) + (i >>> 0) + a;<br> return (s << o | s >>> 32 - o) + t<br> }<br>_ii = function(e, t, r, n, i, o, a) {<br> var s = e + (r ^ (t | ~n)) + (i >>> 0) + a;<br> return (s << o | s >>> 32 - o) + t<br> }