压缩后的JS MD5函数

上代码

function md5(a){var b=0;var c="";var d=8;function e(a){return u(k(t(a),a.length*d))}function f(a){return v(k(t(a),a.length*d))}function g(a,b){return u(q(a,b))}function h(a,b){return v(q(a,b))}function i(a){return u(k(t(a),a.length*d))}function j(){return"900150983cd24fb0d6963f7d28e17f72"==e("abc")}function k(a,b){a[b>>5]|=128<<b%32,a[(b+64>>>9<<4)+14]=b;var c=1732584193;var d=-271733879;var e=-1732584194;var f=271733878;for(var g=0;g<a.length;g+=16){var h=c;var i=d;var j=e;var k=f;c=m(c,d,e,f,a[g+0],7,-680876936),f=m(f,c,d,e,a[g+1],12,-389564586),e=m(e,f,c,d,a[g+2],17,606105819),d=m(d,e,f,c,a[g+3],22,-1044525330),c=m(c,d,e,f,a[g+4],7,-176418897),f=m(f,c,d,e,a[g+5],12,1200080426),e=m(e,f,c,d,a[g+6],17,-1473231341),d=m(d,e,f,c,a[g+7],22,-45705983),c=m(c,d,e,f,a[g+8],7,1770035416),f=m(f,c,d,e,a[g+9],12,-1958414417),e=m(e,f,c,d,a[g+10],17,-42063),d=m(d,e,f,c,a[g+11],22,-1990404162),c=m(c,d,e,f,a[g+12],7,1804603682),f=m(f,c,d,e,a[g+13],12,-40341101),e=m(e,f,c,d,a[g+14],17,-1502002290),d=m(d,e,f,c,a[g+15],22,1236535329),c=n(c,d,e,f,a[g+1],5,-165796510),f=n(f,c,d,e,a[g+6],9,-1069501632),e=n(e,f,c,d,a[g+11],14,643717713),d=n(d,e,f,c,a[g+0],20,-373897302),c=n(c,d,e,f,a[g+5],5,-701558691),f=n(f,c,d,e,a[g+10],9,38016083),e=n(e,f,c,d,a[g+15],14,-660478335),d=n(d,e,f,c,a[g+4],20,-405537848),c=n(c,d,e,f,a[g+9],5,568446438),f=n(f,c,d,e,a[g+14],9,-1019803690),e=n(e,f,c,d,a[g+3],14,-187363961),d=n(d,e,f,c,a[g+8],20,1163531501),c=n(c,d,e,f,a[g+13],5,-1444681467),f=n(f,c,d,e,a[g+2],9,-51403784),e=n(e,f,c,d,a[g+7],14,1735328473),d=n(d,e,f,c,a[g+12],20,-1926607734),c=o(c,d,e,f,a[g+5],4,-378558),f=o(f,c,d,e,a[g+8],11,-2022574463),e=o(e,f,c,d,a[g+11],16,1839030562),d=o(d,e,f,c,a[g+14],23,-35309556),c=o(c,d,e,f,a[g+1],4,-1530992060),f=o(f,c,d,e,a[g+4],11,1272893353),e=o(e,f,c,d,a[g+7],16,-155497632),d=o(d,e,f,c,a[g+10],23,-1094730640),c=o(c,d,e,f,a[g+13],4,681279174),f=o(f,c,d,e,a[g+0],11,-358537222),e=o(e,f,c,d,a[g+3],16,-722521979),d=o(d,e,f,c,a[g+6],23,76029189),c=o(c,d,e,f,a[g+9],4,-640364487),f=o(f,c,d,e,a[g+12],11,-421815835),e=o(e,f,c,d,a[g+15],16,530742520),d=o(d,e,f,c,a[g+2],23,-995338651),c=p(c,d,e,f,a[g+0],6,-198630844),f=p(f,c,d,e,a[g+7],10,1126891415),e=p(e,f,c,d,a[g+14],15,-1416354905),d=p(d,e,f,c,a[g+5],21,-57434055),c=p(c,d,e,f,a[g+12],6,1700485571),f=p(f,c,d,e,a[g+3],10,-1894986606),e=p(e,f,c,d,a[g+10],15,-1051523),d=p(d,e,f,c,a[g+1],21,-2054922799),c=p(c,d,e,f,a[g+8],6,1873313359),f=p(f,c,d,e,a[g+15],10,-30611744),e=p(e,f,c,d,a[g+6],15,-1560198380),d=p(d,e,f,c,a[g+13],21,1309151649),c=p(c,d,e,f,a[g+4],6,-145523070),f=p(f,c,d,e,a[g+11],10,-1120210379),e=p(e,f,c,d,a[g+2],15,718787259),d=p(d,e,f,c,a[g+9],21,-343485551),c=r(c,h),d=r(d,i),e=r(e,j),f=r(f,k)}return Array(c,d,e,f)}function l(a,b,c,d,e,f){return r(s(r(r(b,a),r(d,f)),e),c)}function m(a,b,c,d,e,f,g){return l(b&c|~b&d,a,b,e,f,g)}function n(a,b,c,d,e,f,g){return l(b&d|c&~d,a,b,e,f,g)}function o(a,b,c,d,e,f,g){return l(b^c^d,a,b,e,f,g)}function p(a,b,c,d,e,f,g){return l(c^(b|~d),a,b,e,f,g)}function q(a,b){var c=t(a);c.length>16&&(c=k(c,a.length*d));var e=Array(16),f=Array(16);for(var g=0;16>g;g++)e[g]=909522486^c[g],f[g]=1549556828^c[g];var h=k(e.concat(t(b)),512+b.length*d);return k(f.concat(h),640)}function r(a,b){var c=(65535&a)+(65535&b);var d=(a>>16)+(b>>16)+(c>>16);return d<<16|65535&c}function s(a,b){return a<<b|a>>>32-b}function t(a){var b=Array();var c=(1<<d)-1;for(var e=0;e<a.length*d;e+=d)b[e>>5]|=(a.charCodeAt(e/d)&c)<<e%32;return b}function u(a){var c=b?"0123456789ABCDEF":"0123456789abcdef";var d="";for(var e=0;e<4*a.length;e++)d+=c.charAt(15&a[e>>2]>>8*(e%4)+4)+c.charAt(15&a[e>>2]>>8*(e%4));return d}function v(a){var b="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";var d="";for(var e=0;e<4*a.length;e+=3){var f=(255&a[e>>2]>>8*(e%4))<<16|(255&a[e+1>>2]>>8*((e+1)%4))<<8|255&a[e+2>>2]>>8*((e+2)%4);for(var g=0;4>g;g++)d+=8*e+6*g>32*a.length?c:b.charAt(63&f>>6*(3-g))}return d}return e(a)}

 

转载于:https://www.cnblogs.com/jsby/p/3330186.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值