-
Notifications
You must be signed in to change notification settings - Fork 44
/
ripemd128.min.js
1 lines (1 loc) · 1.79 KB
/
ripemd128.min.js
1
!function(t,r){function n(t){return new Uint32Array(t)}function e(t,r){var n=new t.constructor(t.length+r.length);return n.set(t),n.set(r,t.length),n}function u(t,r){return t>>>32-r|t<<r}function o(t){var r,n,o,a,s,l,m,d,A,p,C,y,v,w,g,x=new Uint32Array([1732584193,4023233417,2562383102,271733878]),U=t.length,b=new Uint8Array((56>U%64?56:120)-U%64);for(b[0]=[128],t=new Uint32Array(e(t,b).buffer),U<<=3,g=e(t,[U,U>>31>>1]),A=0,v=0,p=g.length;p>A;A+=16,v=0){for(r=s=x[0],n=l=x[1],o=m=x[2],a=d=x[3];64>v;++v)C=~~(v/16),r=u(r+h[C](n,o,a)+g[A+c[C][v%16]]+f[C],i[C][v%16]),w=a,a=o,o=n,n=r,r=w;for(;128>v;++v)C=~~(v/16),y=~~((63-v%64)/16),s=u(s+h[y](l,m,d)+g[A+c[C][v%16]]+f[C],i[C][v%16]),w=d,d=m,m=l,l=s,s=w;d=x[1]+o+d,x[1]=x[2]+a+s,x[2]=x[3]+r+l,x[3]=x[0]+n+m,x[0]=d}return new Uint8Array(x.buffer)}r(function(){return o});var i=[[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8],[7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12],[11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5],[11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12],[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6],[9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11],[9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5],[15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8]].map(n),c=[[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15],[7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8],[3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12],[1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2],[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12],[6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2],[15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13],[8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14]].map(n),f=n([0,1518500249,1859775393,2400959708,1352829926,1548603684,1836072691,0]),h=[function(t,r,n){return t^r^n},function(t,r,n){return t&r|~t&n},function(t,r,n){return(t|~r)^n},function(t,r,n){return t&n|r&~n}]}(this,"object"==typeof module&&"function"!=typeof define?function(t){module.exports=t(require,exports,module)}:define);