@loaders.gl/crypto 4.2.0-alpha.3 → 4.2.0-alpha.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. package/dist/dist.dev.js +598 -50
  2. package/dist/dist.min.js +9 -0
  3. package/dist/index.cjs +27 -546
  4. package/dist/index.cjs.map +7 -0
  5. package/dist/index.d.ts +9 -9
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/index.js +28 -16
  8. package/dist/lib/algorithms/crc32.js +31 -17
  9. package/dist/lib/algorithms/crc32c.js +32 -20
  10. package/dist/lib/algorithms/md5-wasm.js +413 -406
  11. package/dist/lib/crc32-hash.d.ts +1 -1
  12. package/dist/lib/crc32-hash.d.ts.map +1 -1
  13. package/dist/lib/crc32-hash.js +29 -36
  14. package/dist/lib/crc32c-hash.d.ts +1 -1
  15. package/dist/lib/crc32c-hash.d.ts.map +1 -1
  16. package/dist/lib/crc32c-hash.js +34 -36
  17. package/dist/lib/crypto-hash.d.ts +1 -1
  18. package/dist/lib/crypto-hash.d.ts.map +1 -1
  19. package/dist/lib/crypto-hash.js +47 -51
  20. package/dist/lib/hash.js +20 -30
  21. package/dist/lib/md5-hash.d.ts +1 -1
  22. package/dist/lib/md5-hash.d.ts.map +1 -1
  23. package/dist/lib/md5-hash.js +23 -13
  24. package/dist/lib/node-hash.d.ts +1 -1
  25. package/dist/lib/node-hash.d.ts.map +1 -1
  26. package/dist/lib/node-hash.js +21 -13
  27. package/dist/lib/sha256-hash.d.ts +1 -1
  28. package/dist/lib/sha256-hash.d.ts.map +1 -1
  29. package/dist/lib/sha256-hash.js +9 -10
  30. package/dist/lib/utils/base64-utils.js +148 -75
  31. package/dist/lib/utils/digest-utils.js +55 -34
  32. package/dist/types.js +3 -1
  33. package/dist/workers/crypto-worker-node.d.ts +1 -1
  34. package/dist/workers/crypto-worker-node.d.ts.map +1 -1
  35. package/dist/workers/crypto-worker-node.js +0 -1
  36. package/dist/workers/crypto-worker.d.ts +2 -2
  37. package/dist/workers/crypto-worker.d.ts.map +1 -1
  38. package/dist/workers/crypto-worker.js +17 -17
  39. package/package.json +10 -7
  40. package/dist/index.js.map +0 -1
  41. package/dist/lib/algorithms/crc32.js.map +0 -1
  42. package/dist/lib/algorithms/crc32c.js.map +0 -1
  43. package/dist/lib/algorithms/md5-wasm.js.map +0 -1
  44. package/dist/lib/crc32-hash.js.map +0 -1
  45. package/dist/lib/crc32c-hash.js.map +0 -1
  46. package/dist/lib/crypto-hash.js.map +0 -1
  47. package/dist/lib/hash.js.map +0 -1
  48. package/dist/lib/md5-hash.js.map +0 -1
  49. package/dist/lib/node-hash.js.map +0 -1
  50. package/dist/lib/sha256-hash.js.map +0 -1
  51. package/dist/lib/utils/base64-utils.js.map +0 -1
  52. package/dist/lib/utils/digest-utils.js.map +0 -1
  53. package/dist/types.js.map +0 -1
  54. package/dist/workers/crypto-worker-node.js.map +0 -1
  55. package/dist/workers/crypto-worker.js.map +0 -1
  56. package/dist/workers/cryptojs-worker.ts.disabled +0 -30
@@ -1,428 +1,435 @@
1
- const atb = typeof atob === 'function' ? atob : typeof Buffer === 'function' ? nodeATOB : identity,
2
- wasmB64 = atb('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'),
3
- wasm = WebAssembly && atb !== identity ? str2AB(wasmB64).buffer : false,
4
- crypt = makeCrypt(),
5
- biteSize = 240 * 16 * 16,
6
- bounder = Math.floor(biteSize * 16 * 1.066666667),
7
- upperLimit = 268435456 - 65536,
8
- parmTypeErrStr = 'Parameter must be Buffer, ArrayBuffer or Uint8Array',
9
- tooBigErrStr = 'Parameter exceeds max size of 255.9 Mbytes';
1
+ // loaders.gl
2
+ // SPDX-License-Identifier: MIT
3
+ // Copyright (c) vis.gl contributors
4
+ /* eslint-disable */
5
+ // @ts-nocheck
6
+ /* !
7
+ * MD5 WebAssembly
8
+ * https://github.com/briantbutton/md5-wasm
9
+ * (c) 2020 Brian Todd Button
10
+ * Released under the MIT license
11
+ */
12
+ // *-*=* *=*-* *-*=* *=*-* *-*=* *=*-* *-*=* *=*-* *-*=* *=*-* *-*=* *=*-*
13
+ // This contains two functions designed to achieve the same thing
14
+ // -> A WebAssembly function for larger files
15
+ // -> A JavaScript function for the others
16
+ //
17
+ const atb = typeof atob === 'function' ? atob : typeof Buffer === 'function' ? nodeATOB : identity, wasmB64 = atb('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'), wasm = WebAssembly && atb !== identity ? str2AB(wasmB64).buffer : false, crypt = makeCrypt(), biteSize = 240 * 16 * 16, bounder = Math.floor(biteSize * 16 * 1.066666667), upperLimit = 268435456 - 65536, parmTypeErrStr = 'Parameter must be Buffer, ArrayBuffer or Uint8Array', tooBigErrStr = 'Parameter exceeds max size of 255.9 Mbytes';
10
18
  if (!wasm) {
11
- console.log('WebAssembly not available or WASM module could not be decoded; md5WASM will fall back to JavaScript');
19
+ console.log('WebAssembly not available or WASM module could not be decoded; md5WASM will fall back to JavaScript');
12
20
  }
21
+ // - - - - - - - - - - - - - - - - - - - - - - - - - - -
22
+ // This returns a Promise-like object (I was farting around, so sue me)
23
+ // which supports '.catch' and '.then'
13
24
  export default function md5WASM(data) {
14
- var mem, memView, importObj, imports, len, buff, thenFun, catchFun, result, endTime;
15
- const md5JS = makeMD5JS(),
16
- md5WA = makeMD5WA(),
17
- returnObj = {},
18
- startTime = new Date().getTime();
19
- returnObj['then'] = function (fun) {
20
- thenFun = fun;
21
- getThen();
22
- return returnObj;
23
- };
24
- returnObj['catch'] = function (fun) {
25
- catchFun = fun;
26
- return returnObj;
27
- };
28
- if (true) {
29
- if (data && typeof data === 'object') {
30
- if (typeof Buffer === 'function' && data.constructor === Buffer) {
31
- buff = data;
32
- } else {
33
- if (data.constructor === Uint8Array || data.constructor === ArrayBuffer) {
34
- buff = data.constructor === ArrayBuffer ? new Uint8Array(data) : data;
35
- } else {
36
- getCatch(new TypeError(parmTypeErrStr));
25
+ var mem, memView, importObj, imports, len, buff, thenFun, catchFun, result, endTime;
26
+ const md5JS = makeMD5JS(), md5WA = makeMD5WA(), returnObj = {}, startTime = new Date().getTime();
27
+ returnObj['then'] = function (fun) {
28
+ thenFun = fun;
29
+ getThen();
30
+ return returnObj;
31
+ };
32
+ returnObj['catch'] = function (fun) {
33
+ catchFun = fun;
34
+ return returnObj;
35
+ };
36
+ // Sift the incoming parameter and the environment
37
+ // If we are good, set buff
38
+ if (true) {
39
+ if (data && typeof data === 'object') {
40
+ if (typeof Buffer === 'function' && data.constructor === Buffer) {
41
+ buff = data;
42
+ }
43
+ else {
44
+ if (data.constructor === Uint8Array || data.constructor === ArrayBuffer) {
45
+ buff = data.constructor === ArrayBuffer ? new Uint8Array(data) : data;
46
+ }
47
+ else {
48
+ getCatch(new TypeError(parmTypeErrStr));
49
+ }
50
+ }
51
+ }
52
+ else {
53
+ getCatch(new TypeError(parmTypeErrStr));
37
54
  }
38
- }
39
- } else {
40
- getCatch(new TypeError(parmTypeErrStr));
41
55
  }
42
- }
43
- if (buff) {
44
- len = buff.length;
45
- if (wasm && len > bounder) {
46
- if (len > upperLimit) {
47
- getCatch(new Error(tooBigErrStr));
48
- } else {
49
- mem = new WebAssembly.Memory({
50
- initial: len > 32000000 ? len > 64000000 ? len > 128000000 ? 4096 : 2048 : 1024 : 512
51
- });
52
- memView = new Uint32Array(mem.buffer);
53
- imports = {
54
- mem: mem,
55
- log: console.log
56
- };
57
- importObj = {
58
- imports
59
- };
60
- WebAssembly.instantiate(wasm, importObj).then(giterdone);
61
- }
62
- } else {
63
- getThen(md5JS(buff));
56
+ // - - - - - - - - - - - - - - - - - - - - - - - - - -
57
+ // Make some choices based on the size of the incoming data
58
+ // ~ Use WebAssembly or just JavaScript
59
+ // ~ If Webassemly, allocate appropriate memory
60
+ //
61
+ if (buff) {
62
+ len = buff.length;
63
+ if (wasm && len > bounder) {
64
+ if (len > upperLimit) {
65
+ getCatch(new Error(tooBigErrStr));
66
+ }
67
+ else {
68
+ mem = new WebAssembly.Memory({
69
+ initial: len > 32000000 ? (len > 64000000 ? (len > 128000000 ? 4096 : 2048) : 1024) : 512
70
+ });
71
+ memView = new Uint32Array(mem.buffer);
72
+ imports = { mem: mem, log: console.log };
73
+ importObj = { imports };
74
+ WebAssembly.instantiate(wasm, importObj).then(giterdone);
75
+ }
76
+ }
77
+ else {
78
+ getThen(md5JS(buff));
79
+ }
64
80
  }
65
- }
66
- return returnObj;
67
- function giterdone(obj) {
68
- getThen(md5WA(buff, obj.instance.exports, memView));
69
- }
70
- function getThen(r) {
71
- var res = Boolean(r) ? r : result;
72
- if (Boolean(r)) {
73
- endTime = new Date().getTime();
81
+ return returnObj;
82
+ function giterdone(obj) {
83
+ getThen(md5WA(buff, obj.instance.exports, memView));
74
84
  }
75
- if (typeof thenFun === 'function') {
76
- if (Boolean(res)) {
77
- thenFun(res, endTime - startTime);
78
- thenFun = catchFun = null;
79
- }
80
- } else {
81
- if (Boolean(r)) {
82
- result = r;
83
- }
85
+ function getThen(r) {
86
+ var res = Boolean(r) ? r : result;
87
+ if (Boolean(r)) {
88
+ endTime = new Date().getTime();
89
+ }
90
+ if (typeof thenFun === 'function') {
91
+ if (Boolean(res)) {
92
+ thenFun(res, endTime - startTime);
93
+ thenFun = catchFun = null;
94
+ }
95
+ }
96
+ else {
97
+ if (Boolean(r)) {
98
+ result = r;
99
+ }
100
+ }
84
101
  }
85
- }
86
- function getCatch(err) {
87
- if (typeof catchFun === 'function') {
88
- catchFun(err);
102
+ function getCatch(err) {
103
+ if (typeof catchFun === 'function') {
104
+ catchFun(err);
105
+ }
89
106
  }
90
- }
91
107
  }
92
108
  function makeMD5WA() {
93
- var loop, loops;
94
- var getA, setA, getB, setB, getC, setC, getD, setD, getX, setX, memView;
95
- var md5WA = function (message) {
96
- var m00, m01, m02, m03, m04, m05, m06, m07, m08, m09, m10, m11, m12, m13, m14, m15, aa, bb, cc, dd, m, k;
97
- var qwerty = new Date().getTime();
98
- var md5Used = 0;
99
- var a = 1732584193,
100
- b = -271733879,
101
- c = -1732584194,
102
- d = 271733878,
103
- i = 0,
104
- l = message.length * 8,
105
- len;
106
- len = bytesToWordsNewer(message, memView);
107
- memView[l >>> 5] |= 0x80 << l % 32;
108
- memView[(l + 64 >>> 9 << 4) + 14] = l;
109
- len = (l + 64 >>> 9 << 4) + 15;
110
- m = memView;
111
- while (i < len) {
112
- if (len > i + bounder) {
113
- setA(a);
114
- setB(b);
115
- setC(c);
116
- setD(d);
117
- loops(biteSize);
118
- i = i + biteSize * 16;
119
- a = getA();
120
- b = getB();
121
- c = getC();
122
- d = getD();
123
- md5Used++;
124
- } else {
125
- aa = a;
126
- bb = b;
127
- cc = c;
128
- dd = d;
129
- m00 = m[i + 0] >>> 0;
130
- m01 = m[i + 1] >>> 0;
131
- m02 = m[i + 2] >>> 0;
132
- m03 = m[i + 3] >>> 0;
133
- m04 = m[i + 4] >>> 0;
134
- m05 = m[i + 5] >>> 0;
135
- m06 = m[i + 6] >>> 0;
136
- m07 = m[i + 7] >>> 0;
137
- m08 = m[i + 8] >>> 0;
138
- m09 = m[i + 9] >>> 0;
139
- m10 = m[i + 10] >>> 0;
140
- m11 = m[i + 11] >>> 0;
141
- m12 = m[i + 12] >>> 0;
142
- m13 = m[i + 13] >>> 0;
143
- m14 = m[i + 14] >>> 0;
144
- m15 = m[i + 15] >>> 0;
145
- a = ____(7, 25, a + (b & c | ~b & d) + m00 - 680876936) + b;
146
- d = ____(12, 20, d + (a & b | ~a & c) + m01 - 389564586) + a;
147
- c = ____(17, 15, c + (d & a | ~d & b) + m02 + 606105819) + d;
148
- b = ____(22, 10, b + (c & d | ~c & a) + m03 - 1044525330) + c;
149
- a = ____(7, 25, a + (b & c | ~b & d) + m04 - 176418897) + b;
150
- d = ____(12, 20, d + (a & b | ~a & c) + m05 + 1200080426) + a;
151
- c = ____(17, 15, c + (d & a | ~d & b) + m06 - 1473231341) + d;
152
- b = ____(22, 10, b + (c & d | ~c & a) + m07 - 45705983) + c;
153
- a = ____(7, 25, a + (b & c | ~b & d) + m08 + 1770035416) + b;
154
- d = ____(12, 20, d + (a & b | ~a & c) + m09 - 1958414417) + a;
155
- c = ____(17, 15, c + (d & a | ~d & b) + m10 - 42063) + d;
156
- b = ____(22, 10, b + (c & d | ~c & a) + m11 - 1990404162) + c;
157
- a = ____(7, 25, a + (b & c | ~b & d) + m12 + 1804603682) + b;
158
- d = ____(12, 20, d + (a & b | ~a & c) + m13 - 40341101) + a;
159
- c = ____(17, 15, c + (d & a | ~d & b) + m14 - 1502002290) + d;
160
- b = ____(22, 10, b + (c & d | ~c & a) + m15 + 1236535329) + c;
161
- a = ____(5, 27, a + (b & d | c & ~d) + m01 - 165796510) + b;
162
- d = ____(9, 23, d + (a & c | b & ~c) + m06 - 1069501632) + a;
163
- c = ____(14, 18, c + (d & b | a & ~b) + m11 + 643717713) + d;
164
- b = ____(20, 12, b + (c & a | d & ~a) + m00 - 373897302) + c;
165
- a = ____(5, 27, a + (b & d | c & ~d) + m05 - 701558691) + b;
166
- d = ____(9, 23, d + (a & c | b & ~c) + m10 + 38016083) + a;
167
- c = ____(14, 18, c + (d & b | a & ~b) + m15 - 660478335) + d;
168
- b = ____(20, 12, b + (c & a | d & ~a) + m04 - 405537848) + c;
169
- a = ____(5, 27, a + (b & d | c & ~d) + m09 + 568446438) + b;
170
- d = ____(9, 23, d + (a & c | b & ~c) + m14 - 1019803690) + a;
171
- c = ____(14, 18, c + (d & b | a & ~b) + m03 - 187363961) + d;
172
- b = ____(20, 12, b + (c & a | d & ~a) + m08 + 1163531501) + c;
173
- a = ____(5, 27, a + (b & d | c & ~d) + m13 - 1444681467) + b;
174
- d = ____(9, 23, d + (a & c | b & ~c) + m02 - 51403784) + a;
175
- c = ____(14, 18, c + (d & b | a & ~b) + m07 + 1735328473) + d;
176
- b = ____(20, 12, b + (c & a | d & ~a) + m12 - 1926607734) + c;
177
- a = ____(4, 28, a + (b ^ c ^ d) + m05 - 378558) + b;
178
- d = ____(11, 21, d + (a ^ b ^ c) + m08 - 2022574463) + a;
179
- c = ____(16, 16, c + (d ^ a ^ b) + m11 + 1839030562) + d;
180
- b = ____(23, 9, b + (c ^ d ^ a) + m14 - 35309556) + c;
181
- a = ____(4, 28, a + (b ^ c ^ d) + m01 - 1530992060) + b;
182
- d = ____(11, 21, d + (a ^ b ^ c) + m04 + 1272893353) + a;
183
- c = ____(16, 16, c + (d ^ a ^ b) + m07 - 155497632) + d;
184
- b = ____(23, 9, b + (c ^ d ^ a) + m10 - 1094730640) + c;
185
- a = ____(4, 28, a + (b ^ c ^ d) + m13 + 681279174) + b;
186
- d = ____(11, 21, d + (a ^ b ^ c) + m00 - 358537222) + a;
187
- c = ____(16, 16, c + (d ^ a ^ b) + m03 - 722521979) + d;
188
- b = ____(23, 9, b + (c ^ d ^ a) + m06 + 76029189) + c;
189
- a = ____(4, 28, a + (b ^ c ^ d) + m09 - 640364487) + b;
190
- d = ____(11, 21, d + (a ^ b ^ c) + m12 - 421815835) + a;
191
- c = ____(16, 16, c + (d ^ a ^ b) + m15 + 530742520) + d;
192
- b = ____(23, 9, b + (c ^ d ^ a) + m02 - 995338651) + c;
193
- a = ____(6, 26, a + (c ^ (b | ~d)) + m00 - 198630844) + b;
194
- d = ____(10, 22, d + (b ^ (a | ~c)) + m07 + 1126891415) + a;
195
- c = ____(15, 17, c + (a ^ (d | ~b)) + m14 - 1416354905) + d;
196
- b = ____(21, 11, b + (d ^ (c | ~a)) + m05 - 57434055) + c;
197
- a = ____(6, 26, a + (c ^ (b | ~d)) + m12 + 1700485571) + b;
198
- d = ____(10, 22, d + (b ^ (a | ~c)) + m03 - 1894986606) + a;
199
- c = ____(15, 17, c + (a ^ (d | ~b)) + m10 - 1051523) + d;
200
- b = ____(21, 11, b + (d ^ (c | ~a)) + m01 - 2054922799) + c;
201
- a = ____(6, 26, a + (c ^ (b | ~d)) + m08 + 1873313359) + b;
202
- d = ____(10, 22, d + (b ^ (a | ~c)) + m15 - 30611744) + a;
203
- c = ____(15, 17, c + (a ^ (d | ~b)) + m06 - 1560198380) + d;
204
- b = ____(21, 11, b + (d ^ (c | ~a)) + m13 + 1309151649) + c;
205
- a = ____(6, 26, a + (c ^ (b | ~d)) + m04 - 145523070) + b;
206
- d = ____(10, 22, d + (b ^ (a | ~c)) + m11 - 1120210379) + a;
207
- c = ____(15, 17, c + (a ^ (d | ~b)) + m02 + 718787259) + d;
208
- b = ____(21, 11, b + (d ^ (c | ~a)) + m09 - 343485551) + c;
209
- i = i + 16;
210
- a = a + aa >>> 0;
211
- b = b + bb >>> 0;
212
- c = c + cc >>> 0;
213
- d = d + dd >>> 0;
214
- }
215
- }
216
- return crypt.endian([a, b, c, d]);
217
- function ____(s, t, n) {
218
- return n << s | n >>> t;
219
- }
220
- function bytesToWordsNewer(bytes, words) {
221
- var i = -1,
222
- l = Math.floor((bytes.length - 1) / 4),
223
- j = 0,
224
- b0,
225
- b1,
226
- b2,
227
- b3;
228
- while (l - 8 > i++) {
229
- j = i << 2;
230
- words[i] = bytes[j + 0] | bytes[j + 1] << 8 | bytes[j + 2] << 16 | bytes[j + 3] << 24;
231
- }
232
- i--;
233
- while (l > i++) {
234
- j = i << 2;
235
- b0 = typeof bytes[j + 0] === 'undefined' ? 0 : bytes[j + 0];
236
- b1 = typeof bytes[j + 1] === 'undefined' ? 0 : bytes[j + 1];
237
- b2 = typeof bytes[j + 2] === 'undefined' ? 0 : bytes[j + 2];
238
- b3 = typeof bytes[j + 3] === 'undefined' ? 0 : bytes[j + 3];
239
- words[i] = b0 | b1 << 8 | b2 << 16 | b3 << 24;
240
- }
241
- return l + 1;
242
- }
243
- };
244
- return function (message, exports, mView, options) {
245
- var digestbytes;
246
- loops = exports.loops;
247
- loop = exports.loop;
248
- getA = exports.getA;
249
- getB = exports.getB;
250
- getC = exports.getC;
251
- getD = exports.getD;
252
- getX = exports.getX;
253
- setA = exports.setA;
254
- setB = exports.setB;
255
- setC = exports.setC;
256
- setD = exports.setD;
257
- setX = exports.setX;
258
- memView = mView;
259
- digestbytes = crypt.wordsToBytes(md5WA(message));
260
- return options && options.asBytes ? digestbytes : crypt.bytesconvertNumberToHex(digestbytes);
261
- };
109
+ var loop, loops;
110
+ var getA, setA, getB, setB, getC, setC, getD, setD, getX, setX, memView;
111
+ var md5WA = function (message) {
112
+ var m00, m01, m02, m03, m04, m05, m06, m07, m08, m09, m10, m11, m12, m13, m14, m15, aa, bb, cc, dd, m, k;
113
+ var qwerty = new Date().getTime();
114
+ var md5Used = 0;
115
+ var a = 1732584193, b = -271733879, c = -1732584194, d = 271733878, i = 0, l = message.length * 8, len;
116
+ len = bytesToWordsNewer(message, memView);
117
+ memView[l >>> 5] |= 0x80 << l % 32;
118
+ memView[(((l + 64) >>> 9) << 4) + 14] = l;
119
+ len = (((l + 64) >>> 9) << 4) + 15;
120
+ m = memView;
121
+ // console.log("first loop took "+((new Date().getTime())-qwerty)+"ms");
122
+ while (i < len) {
123
+ if (len > i + bounder) {
124
+ setA(a);
125
+ setB(b);
126
+ setC(c);
127
+ setD(d);
128
+ loops(biteSize);
129
+ i = i + biteSize * 16;
130
+ a = getA();
131
+ b = getB();
132
+ c = getC();
133
+ d = getD();
134
+ md5Used++;
135
+ }
136
+ else {
137
+ aa = a;
138
+ bb = b;
139
+ cc = c;
140
+ dd = d;
141
+ m00 = m[i + 0] >>> 0;
142
+ m01 = m[i + 1] >>> 0;
143
+ m02 = m[i + 2] >>> 0;
144
+ m03 = m[i + 3] >>> 0;
145
+ m04 = m[i + 4] >>> 0;
146
+ m05 = m[i + 5] >>> 0;
147
+ m06 = m[i + 6] >>> 0;
148
+ m07 = m[i + 7] >>> 0;
149
+ m08 = m[i + 8] >>> 0;
150
+ m09 = m[i + 9] >>> 0;
151
+ m10 = m[i + 10] >>> 0;
152
+ m11 = m[i + 11] >>> 0;
153
+ m12 = m[i + 12] >>> 0;
154
+ m13 = m[i + 13] >>> 0;
155
+ m14 = m[i + 14] >>> 0;
156
+ m15 = m[i + 15] >>> 0;
157
+ a = ____(7, 25, a + ((b & c) | (~b & d)) + m00 - 680876936) + b;
158
+ d = ____(12, 20, d + ((a & b) | (~a & c)) + m01 - 389564586) + a;
159
+ c = ____(17, 15, c + ((d & a) | (~d & b)) + m02 + 606105819) + d;
160
+ b = ____(22, 10, b + ((c & d) | (~c & a)) + m03 - 1044525330) + c;
161
+ a = ____(7, 25, a + ((b & c) | (~b & d)) + m04 - 176418897) + b;
162
+ d = ____(12, 20, d + ((a & b) | (~a & c)) + m05 + 1200080426) + a;
163
+ c = ____(17, 15, c + ((d & a) | (~d & b)) + m06 - 1473231341) + d;
164
+ b = ____(22, 10, b + ((c & d) | (~c & a)) + m07 - 45705983) + c;
165
+ a = ____(7, 25, a + ((b & c) | (~b & d)) + m08 + 1770035416) + b;
166
+ d = ____(12, 20, d + ((a & b) | (~a & c)) + m09 - 1958414417) + a;
167
+ c = ____(17, 15, c + ((d & a) | (~d & b)) + m10 - 42063) + d;
168
+ b = ____(22, 10, b + ((c & d) | (~c & a)) + m11 - 1990404162) + c;
169
+ a = ____(7, 25, a + ((b & c) | (~b & d)) + m12 + 1804603682) + b;
170
+ d = ____(12, 20, d + ((a & b) | (~a & c)) + m13 - 40341101) + a;
171
+ c = ____(17, 15, c + ((d & a) | (~d & b)) + m14 - 1502002290) + d;
172
+ b = ____(22, 10, b + ((c & d) | (~c & a)) + m15 + 1236535329) + c;
173
+ a = ____(5, 27, a + ((b & d) | (c & ~d)) + m01 - 165796510) + b;
174
+ d = ____(9, 23, d + ((a & c) | (b & ~c)) + m06 - 1069501632) + a;
175
+ c = ____(14, 18, c + ((d & b) | (a & ~b)) + m11 + 643717713) + d;
176
+ b = ____(20, 12, b + ((c & a) | (d & ~a)) + m00 - 373897302) + c;
177
+ a = ____(5, 27, a + ((b & d) | (c & ~d)) + m05 - 701558691) + b;
178
+ d = ____(9, 23, d + ((a & c) | (b & ~c)) + m10 + 38016083) + a;
179
+ c = ____(14, 18, c + ((d & b) | (a & ~b)) + m15 - 660478335) + d;
180
+ b = ____(20, 12, b + ((c & a) | (d & ~a)) + m04 - 405537848) + c;
181
+ a = ____(5, 27, a + ((b & d) | (c & ~d)) + m09 + 568446438) + b;
182
+ d = ____(9, 23, d + ((a & c) | (b & ~c)) + m14 - 1019803690) + a;
183
+ c = ____(14, 18, c + ((d & b) | (a & ~b)) + m03 - 187363961) + d;
184
+ b = ____(20, 12, b + ((c & a) | (d & ~a)) + m08 + 1163531501) + c;
185
+ a = ____(5, 27, a + ((b & d) | (c & ~d)) + m13 - 1444681467) + b;
186
+ d = ____(9, 23, d + ((a & c) | (b & ~c)) + m02 - 51403784) + a;
187
+ c = ____(14, 18, c + ((d & b) | (a & ~b)) + m07 + 1735328473) + d;
188
+ b = ____(20, 12, b + ((c & a) | (d & ~a)) + m12 - 1926607734) + c;
189
+ a = ____(4, 28, a + (b ^ c ^ d) + m05 - 378558) + b;
190
+ d = ____(11, 21, d + (a ^ b ^ c) + m08 - 2022574463) + a;
191
+ c = ____(16, 16, c + (d ^ a ^ b) + m11 + 1839030562) + d;
192
+ b = ____(23, 9, b + (c ^ d ^ a) + m14 - 35309556) + c;
193
+ a = ____(4, 28, a + (b ^ c ^ d) + m01 - 1530992060) + b;
194
+ d = ____(11, 21, d + (a ^ b ^ c) + m04 + 1272893353) + a;
195
+ c = ____(16, 16, c + (d ^ a ^ b) + m07 - 155497632) + d;
196
+ b = ____(23, 9, b + (c ^ d ^ a) + m10 - 1094730640) + c;
197
+ a = ____(4, 28, a + (b ^ c ^ d) + m13 + 681279174) + b;
198
+ d = ____(11, 21, d + (a ^ b ^ c) + m00 - 358537222) + a;
199
+ c = ____(16, 16, c + (d ^ a ^ b) + m03 - 722521979) + d;
200
+ b = ____(23, 9, b + (c ^ d ^ a) + m06 + 76029189) + c;
201
+ a = ____(4, 28, a + (b ^ c ^ d) + m09 - 640364487) + b;
202
+ d = ____(11, 21, d + (a ^ b ^ c) + m12 - 421815835) + a;
203
+ c = ____(16, 16, c + (d ^ a ^ b) + m15 + 530742520) + d;
204
+ b = ____(23, 9, b + (c ^ d ^ a) + m02 - 995338651) + c;
205
+ a = ____(6, 26, a + (c ^ (b | ~d)) + m00 - 198630844) + b;
206
+ d = ____(10, 22, d + (b ^ (a | ~c)) + m07 + 1126891415) + a;
207
+ c = ____(15, 17, c + (a ^ (d | ~b)) + m14 - 1416354905) + d;
208
+ b = ____(21, 11, b + (d ^ (c | ~a)) + m05 - 57434055) + c;
209
+ a = ____(6, 26, a + (c ^ (b | ~d)) + m12 + 1700485571) + b;
210
+ d = ____(10, 22, d + (b ^ (a | ~c)) + m03 - 1894986606) + a;
211
+ c = ____(15, 17, c + (a ^ (d | ~b)) + m10 - 1051523) + d;
212
+ b = ____(21, 11, b + (d ^ (c | ~a)) + m01 - 2054922799) + c;
213
+ a = ____(6, 26, a + (c ^ (b | ~d)) + m08 + 1873313359) + b;
214
+ d = ____(10, 22, d + (b ^ (a | ~c)) + m15 - 30611744) + a;
215
+ c = ____(15, 17, c + (a ^ (d | ~b)) + m06 - 1560198380) + d;
216
+ b = ____(21, 11, b + (d ^ (c | ~a)) + m13 + 1309151649) + c;
217
+ a = ____(6, 26, a + (c ^ (b | ~d)) + m04 - 145523070) + b;
218
+ d = ____(10, 22, d + (b ^ (a | ~c)) + m11 - 1120210379) + a;
219
+ c = ____(15, 17, c + (a ^ (d | ~b)) + m02 + 718787259) + d;
220
+ b = ____(21, 11, b + (d ^ (c | ~a)) + m09 - 343485551) + c;
221
+ i = i + 16;
222
+ a = (a + aa) >>> 0;
223
+ b = (b + bb) >>> 0;
224
+ c = (c + cc) >>> 0;
225
+ d = (d + dd) >>> 0;
226
+ }
227
+ }
228
+ // console.log("md5WA, elapsed="+((new Date().getTime())-qwerty)+(md5Used?", WebAssembly called "+md5Used+" times":", WebAssembly not called"));
229
+ return crypt.endian([a, b, c, d]);
230
+ function ____(s, t, n) {
231
+ return (n << s) | (n >>> t);
232
+ }
233
+ // Convert a byte array to big-endian 32-bit words
234
+ function bytesToWordsNewer(bytes, words) {
235
+ var i = -1, l = Math.floor((bytes.length - 1) / 4), j = 0, b0, b1, b2, b3;
236
+ while (l - 8 > i++) {
237
+ j = i << 2;
238
+ words[i] = bytes[j + 0] | (bytes[j + 1] << 8) | (bytes[j + 2] << 16) | (bytes[j + 3] << 24);
239
+ }
240
+ i--;
241
+ while (l > i++) {
242
+ j = i << 2;
243
+ b0 = typeof bytes[j + 0] === 'undefined' ? 0 : bytes[j + 0];
244
+ b1 = typeof bytes[j + 1] === 'undefined' ? 0 : bytes[j + 1];
245
+ b2 = typeof bytes[j + 2] === 'undefined' ? 0 : bytes[j + 2];
246
+ b3 = typeof bytes[j + 3] === 'undefined' ? 0 : bytes[j + 3];
247
+ words[i] = b0 | (b1 << 8) | (b2 << 16) | (b3 << 24);
248
+ }
249
+ return l + 1;
250
+ }
251
+ };
252
+ return function (message, exports, mView, options) {
253
+ var digestbytes;
254
+ loops = exports.loops;
255
+ loop = exports.loop;
256
+ getA = exports.getA;
257
+ getB = exports.getB;
258
+ getC = exports.getC;
259
+ getD = exports.getD;
260
+ getX = exports.getX;
261
+ setA = exports.setA;
262
+ setB = exports.setB;
263
+ setC = exports.setC;
264
+ setD = exports.setD;
265
+ setX = exports.setX;
266
+ memView = mView;
267
+ digestbytes = crypt.wordsToBytes(md5WA(message));
268
+ return options && options.asBytes ? digestbytes : crypt.bytesconvertNumberToHex(digestbytes);
269
+ };
262
270
  }
263
271
  function makeMD5JS() {
264
- var md5JS = function (message, options) {
265
- var m00, m01, m02, m03, m04, m05, m06, m07, m08, m09, m10, m11, m12, m13, m14, m15, aa, bb, cc, dd, m;
266
- var qwerty = new Date().getTime();
267
- var a = 1732584193,
268
- b = -271733879,
269
- c = -1732584194,
270
- d = 271733878,
271
- l = message.length * 8;
272
- m = crypt.bytesToWords(message);
273
- for (var j = 0; j < m.length; j++) {
274
- m[j] = (m[j] << 8 | m[j] >>> 24) & 0x00ff00ff | (m[j] << 24 | m[j] >>> 8) & 0xff00ff00;
275
- }
276
- m[l >>> 5] |= 0x80 << l % 32;
277
- m[(l + 64 >>> 9 << 4) + 14] = l;
278
- for (var i = 0; i < m.length; i += 16) {
279
- aa = a;
280
- bb = b;
281
- cc = c;
282
- dd = d;
283
- m00 = m[i + 0] >>> 0;
284
- m01 = m[i + 1] >>> 0;
285
- m02 = m[i + 2] >>> 0;
286
- m03 = m[i + 3] >>> 0;
287
- m04 = m[i + 4] >>> 0;
288
- m05 = m[i + 5] >>> 0;
289
- m06 = m[i + 6] >>> 0;
290
- m07 = m[i + 7] >>> 0;
291
- m08 = m[i + 8] >>> 0;
292
- m09 = m[i + 9] >>> 0;
293
- m10 = m[i + 10] >>> 0;
294
- m11 = m[i + 11] >>> 0;
295
- m12 = m[i + 12] >>> 0;
296
- m13 = m[i + 13] >>> 0;
297
- m14 = m[i + 14] >>> 0;
298
- m15 = m[i + 15] >>> 0;
299
- a = ____(7, 25, a + (b & c | ~b & d) + m00 - 680876936) + b;
300
- d = ____(12, 20, d + (a & b | ~a & c) + m01 - 389564586) + a;
301
- c = ____(17, 15, c + (d & a | ~d & b) + m02 + 606105819) + d;
302
- b = ____(22, 10, b + (c & d | ~c & a) + m03 - 1044525330) + c;
303
- a = ____(7, 25, a + (b & c | ~b & d) + m04 - 176418897) + b;
304
- d = ____(12, 20, d + (a & b | ~a & c) + m05 + 1200080426) + a;
305
- c = ____(17, 15, c + (d & a | ~d & b) + m06 - 1473231341) + d;
306
- b = ____(22, 10, b + (c & d | ~c & a) + m07 - 45705983) + c;
307
- a = ____(7, 25, a + (b & c | ~b & d) + m08 + 1770035416) + b;
308
- d = ____(12, 20, d + (a & b | ~a & c) + m09 - 1958414417) + a;
309
- c = ____(17, 15, c + (d & a | ~d & b) + m10 - 42063) + d;
310
- b = ____(22, 10, b + (c & d | ~c & a) + m11 - 1990404162) + c;
311
- a = ____(7, 25, a + (b & c | ~b & d) + m12 + 1804603682) + b;
312
- d = ____(12, 20, d + (a & b | ~a & c) + m13 - 40341101) + a;
313
- c = ____(17, 15, c + (d & a | ~d & b) + m14 - 1502002290) + d;
314
- b = ____(22, 10, b + (c & d | ~c & a) + m15 + 1236535329) + c;
315
- a = ____(5, 27, a + (b & d | c & ~d) + m01 - 165796510) + b;
316
- d = ____(9, 23, d + (a & c | b & ~c) + m06 - 1069501632) + a;
317
- c = ____(14, 18, c + (d & b | a & ~b) + m11 + 643717713) + d;
318
- b = ____(20, 12, b + (c & a | d & ~a) + m00 - 373897302) + c;
319
- a = ____(5, 27, a + (b & d | c & ~d) + m05 - 701558691) + b;
320
- d = ____(9, 23, d + (a & c | b & ~c) + m10 + 38016083) + a;
321
- c = ____(14, 18, c + (d & b | a & ~b) + m15 - 660478335) + d;
322
- b = ____(20, 12, b + (c & a | d & ~a) + m04 - 405537848) + c;
323
- a = ____(5, 27, a + (b & d | c & ~d) + m09 + 568446438) + b;
324
- d = ____(9, 23, d + (a & c | b & ~c) + m14 - 1019803690) + a;
325
- c = ____(14, 18, c + (d & b | a & ~b) + m03 - 187363961) + d;
326
- b = ____(20, 12, b + (c & a | d & ~a) + m08 + 1163531501) + c;
327
- a = ____(5, 27, a + (b & d | c & ~d) + m13 - 1444681467) + b;
328
- d = ____(9, 23, d + (a & c | b & ~c) + m02 - 51403784) + a;
329
- c = ____(14, 18, c + (d & b | a & ~b) + m07 + 1735328473) + d;
330
- b = ____(20, 12, b + (c & a | d & ~a) + m12 - 1926607734) + c;
331
- a = ____(4, 28, a + (b ^ c ^ d) + m05 - 378558) + b;
332
- d = ____(11, 21, d + (a ^ b ^ c) + m08 - 2022574463) + a;
333
- c = ____(16, 16, c + (d ^ a ^ b) + m11 + 1839030562) + d;
334
- b = ____(23, 9, b + (c ^ d ^ a) + m14 - 35309556) + c;
335
- a = ____(4, 28, a + (b ^ c ^ d) + m01 - 1530992060) + b;
336
- d = ____(11, 21, d + (a ^ b ^ c) + m04 + 1272893353) + a;
337
- c = ____(16, 16, c + (d ^ a ^ b) + m07 - 155497632) + d;
338
- b = ____(23, 9, b + (c ^ d ^ a) + m10 - 1094730640) + c;
339
- a = ____(4, 28, a + (b ^ c ^ d) + m13 + 681279174) + b;
340
- d = ____(11, 21, d + (a ^ b ^ c) + m00 - 358537222) + a;
341
- c = ____(16, 16, c + (d ^ a ^ b) + m03 - 722521979) + d;
342
- b = ____(23, 9, b + (c ^ d ^ a) + m06 + 76029189) + c;
343
- a = ____(4, 28, a + (b ^ c ^ d) + m09 - 640364487) + b;
344
- d = ____(11, 21, d + (a ^ b ^ c) + m12 - 421815835) + a;
345
- c = ____(16, 16, c + (d ^ a ^ b) + m15 + 530742520) + d;
346
- b = ____(23, 9, b + (c ^ d ^ a) + m02 - 995338651) + c;
347
- a = ____(6, 26, a + (c ^ (b | ~d)) + m00 - 198630844) + b;
348
- d = ____(10, 22, d + (b ^ (a | ~c)) + m07 + 1126891415) + a;
349
- c = ____(15, 17, c + (a ^ (d | ~b)) + m14 - 1416354905) + d;
350
- b = ____(21, 11, b + (d ^ (c | ~a)) + m05 - 57434055) + c;
351
- a = ____(6, 26, a + (c ^ (b | ~d)) + m12 + 1700485571) + b;
352
- d = ____(10, 22, d + (b ^ (a | ~c)) + m03 - 1894986606) + a;
353
- c = ____(15, 17, c + (a ^ (d | ~b)) + m10 - 1051523) + d;
354
- b = ____(21, 11, b + (d ^ (c | ~a)) + m01 - 2054922799) + c;
355
- a = ____(6, 26, a + (c ^ (b | ~d)) + m08 + 1873313359) + b;
356
- d = ____(10, 22, d + (b ^ (a | ~c)) + m15 - 30611744) + a;
357
- c = ____(15, 17, c + (a ^ (d | ~b)) + m06 - 1560198380) + d;
358
- b = ____(21, 11, b + (d ^ (c | ~a)) + m13 + 1309151649) + c;
359
- a = ____(6, 26, a + (c ^ (b | ~d)) + m04 - 145523070) + b;
360
- d = ____(10, 22, d + (b ^ (a | ~c)) + m11 - 1120210379) + a;
361
- c = ____(15, 17, c + (a ^ (d | ~b)) + m02 + 718787259) + d;
362
- b = ____(21, 11, b + (d ^ (c | ~a)) + m09 - 343485551) + c;
363
- a = a + aa >>> 0;
364
- b = b + bb >>> 0;
365
- c = c + cc >>> 0;
366
- d = d + dd >>> 0;
367
- }
368
- return crypt.endian([a, b, c, d]);
369
- function ____(s, t, n) {
370
- return n << s | n >>> t;
371
- }
372
- };
373
- return function (message, options) {
374
- var digestbytes = crypt.wordsToBytes(md5JS(message, options)),
375
- result = options && options.asBytes ? digestbytes : crypt.bytesconvertNumberToHex(digestbytes);
376
- return result;
377
- };
272
+ var md5JS = function (message, options) {
273
+ var m00, m01, m02, m03, m04, m05, m06, m07, m08, m09, m10, m11, m12, m13, m14, m15, aa, bb, cc, dd, m;
274
+ var qwerty = new Date().getTime();
275
+ // console.log("md5 start");
276
+ var a = 1732584193, b = -271733879, c = -1732584194, d = 271733878, l = message.length * 8;
277
+ m = crypt.bytesToWords(message);
278
+ // Swap endian
279
+ for (var j = 0; j < m.length; j++) {
280
+ m[j] =
281
+ (((m[j] << 8) | (m[j] >>> 24)) & 0x00ff00ff) | (((m[j] << 24) | (m[j] >>> 8)) & 0xff00ff00);
282
+ }
283
+ // Padding
284
+ m[l >>> 5] |= 0x80 << l % 32;
285
+ m[(((l + 64) >>> 9) << 4) + 14] = l;
286
+ for (var i = 0; i < m.length; i += 16) {
287
+ aa = a;
288
+ bb = b;
289
+ cc = c;
290
+ dd = d;
291
+ m00 = m[i + 0] >>> 0;
292
+ m01 = m[i + 1] >>> 0;
293
+ m02 = m[i + 2] >>> 0;
294
+ m03 = m[i + 3] >>> 0;
295
+ m04 = m[i + 4] >>> 0;
296
+ m05 = m[i + 5] >>> 0;
297
+ m06 = m[i + 6] >>> 0;
298
+ m07 = m[i + 7] >>> 0;
299
+ m08 = m[i + 8] >>> 0;
300
+ m09 = m[i + 9] >>> 0;
301
+ m10 = m[i + 10] >>> 0;
302
+ m11 = m[i + 11] >>> 0;
303
+ m12 = m[i + 12] >>> 0;
304
+ m13 = m[i + 13] >>> 0;
305
+ m14 = m[i + 14] >>> 0;
306
+ m15 = m[i + 15] >>> 0;
307
+ a = ____(7, 25, a + ((b & c) | (~b & d)) + m00 - 680876936) + b;
308
+ d = ____(12, 20, d + ((a & b) | (~a & c)) + m01 - 389564586) + a;
309
+ c = ____(17, 15, c + ((d & a) | (~d & b)) + m02 + 606105819) + d;
310
+ b = ____(22, 10, b + ((c & d) | (~c & a)) + m03 - 1044525330) + c;
311
+ a = ____(7, 25, a + ((b & c) | (~b & d)) + m04 - 176418897) + b;
312
+ d = ____(12, 20, d + ((a & b) | (~a & c)) + m05 + 1200080426) + a;
313
+ c = ____(17, 15, c + ((d & a) | (~d & b)) + m06 - 1473231341) + d;
314
+ b = ____(22, 10, b + ((c & d) | (~c & a)) + m07 - 45705983) + c;
315
+ a = ____(7, 25, a + ((b & c) | (~b & d)) + m08 + 1770035416) + b;
316
+ d = ____(12, 20, d + ((a & b) | (~a & c)) + m09 - 1958414417) + a;
317
+ c = ____(17, 15, c + ((d & a) | (~d & b)) + m10 - 42063) + d;
318
+ b = ____(22, 10, b + ((c & d) | (~c & a)) + m11 - 1990404162) + c;
319
+ a = ____(7, 25, a + ((b & c) | (~b & d)) + m12 + 1804603682) + b;
320
+ d = ____(12, 20, d + ((a & b) | (~a & c)) + m13 - 40341101) + a;
321
+ c = ____(17, 15, c + ((d & a) | (~d & b)) + m14 - 1502002290) + d;
322
+ b = ____(22, 10, b + ((c & d) | (~c & a)) + m15 + 1236535329) + c;
323
+ a = ____(5, 27, a + ((b & d) | (c & ~d)) + m01 - 165796510) + b;
324
+ d = ____(9, 23, d + ((a & c) | (b & ~c)) + m06 - 1069501632) + a;
325
+ c = ____(14, 18, c + ((d & b) | (a & ~b)) + m11 + 643717713) + d;
326
+ b = ____(20, 12, b + ((c & a) | (d & ~a)) + m00 - 373897302) + c;
327
+ a = ____(5, 27, a + ((b & d) | (c & ~d)) + m05 - 701558691) + b;
328
+ d = ____(9, 23, d + ((a & c) | (b & ~c)) + m10 + 38016083) + a;
329
+ c = ____(14, 18, c + ((d & b) | (a & ~b)) + m15 - 660478335) + d;
330
+ b = ____(20, 12, b + ((c & a) | (d & ~a)) + m04 - 405537848) + c;
331
+ a = ____(5, 27, a + ((b & d) | (c & ~d)) + m09 + 568446438) + b;
332
+ d = ____(9, 23, d + ((a & c) | (b & ~c)) + m14 - 1019803690) + a;
333
+ c = ____(14, 18, c + ((d & b) | (a & ~b)) + m03 - 187363961) + d;
334
+ b = ____(20, 12, b + ((c & a) | (d & ~a)) + m08 + 1163531501) + c;
335
+ a = ____(5, 27, a + ((b & d) | (c & ~d)) + m13 - 1444681467) + b;
336
+ d = ____(9, 23, d + ((a & c) | (b & ~c)) + m02 - 51403784) + a;
337
+ c = ____(14, 18, c + ((d & b) | (a & ~b)) + m07 + 1735328473) + d;
338
+ b = ____(20, 12, b + ((c & a) | (d & ~a)) + m12 - 1926607734) + c;
339
+ a = ____(4, 28, a + (b ^ c ^ d) + m05 - 378558) + b;
340
+ d = ____(11, 21, d + (a ^ b ^ c) + m08 - 2022574463) + a;
341
+ c = ____(16, 16, c + (d ^ a ^ b) + m11 + 1839030562) + d;
342
+ b = ____(23, 9, b + (c ^ d ^ a) + m14 - 35309556) + c;
343
+ a = ____(4, 28, a + (b ^ c ^ d) + m01 - 1530992060) + b;
344
+ d = ____(11, 21, d + (a ^ b ^ c) + m04 + 1272893353) + a;
345
+ c = ____(16, 16, c + (d ^ a ^ b) + m07 - 155497632) + d;
346
+ b = ____(23, 9, b + (c ^ d ^ a) + m10 - 1094730640) + c;
347
+ a = ____(4, 28, a + (b ^ c ^ d) + m13 + 681279174) + b;
348
+ d = ____(11, 21, d + (a ^ b ^ c) + m00 - 358537222) + a;
349
+ c = ____(16, 16, c + (d ^ a ^ b) + m03 - 722521979) + d;
350
+ b = ____(23, 9, b + (c ^ d ^ a) + m06 + 76029189) + c;
351
+ a = ____(4, 28, a + (b ^ c ^ d) + m09 - 640364487) + b;
352
+ d = ____(11, 21, d + (a ^ b ^ c) + m12 - 421815835) + a;
353
+ c = ____(16, 16, c + (d ^ a ^ b) + m15 + 530742520) + d;
354
+ b = ____(23, 9, b + (c ^ d ^ a) + m02 - 995338651) + c;
355
+ a = ____(6, 26, a + (c ^ (b | ~d)) + m00 - 198630844) + b;
356
+ d = ____(10, 22, d + (b ^ (a | ~c)) + m07 + 1126891415) + a;
357
+ c = ____(15, 17, c + (a ^ (d | ~b)) + m14 - 1416354905) + d;
358
+ b = ____(21, 11, b + (d ^ (c | ~a)) + m05 - 57434055) + c;
359
+ a = ____(6, 26, a + (c ^ (b | ~d)) + m12 + 1700485571) + b;
360
+ d = ____(10, 22, d + (b ^ (a | ~c)) + m03 - 1894986606) + a;
361
+ c = ____(15, 17, c + (a ^ (d | ~b)) + m10 - 1051523) + d;
362
+ b = ____(21, 11, b + (d ^ (c | ~a)) + m01 - 2054922799) + c;
363
+ a = ____(6, 26, a + (c ^ (b | ~d)) + m08 + 1873313359) + b;
364
+ d = ____(10, 22, d + (b ^ (a | ~c)) + m15 - 30611744) + a;
365
+ c = ____(15, 17, c + (a ^ (d | ~b)) + m06 - 1560198380) + d;
366
+ b = ____(21, 11, b + (d ^ (c | ~a)) + m13 + 1309151649) + c;
367
+ a = ____(6, 26, a + (c ^ (b | ~d)) + m04 - 145523070) + b;
368
+ d = ____(10, 22, d + (b ^ (a | ~c)) + m11 - 1120210379) + a;
369
+ c = ____(15, 17, c + (a ^ (d | ~b)) + m02 + 718787259) + d;
370
+ b = ____(21, 11, b + (d ^ (c | ~a)) + m09 - 343485551) + c;
371
+ a = (a + aa) >>> 0;
372
+ b = (b + bb) >>> 0;
373
+ c = (c + cc) >>> 0;
374
+ d = (d + dd) >>> 0;
375
+ }
376
+ // console.log("md5JS, elapsed="+((new Date().getTime())-qwerty));
377
+ return crypt.endian([a, b, c, d]);
378
+ function ____(s, t, n) {
379
+ return (n << s) | (n >>> t);
380
+ }
381
+ };
382
+ return function (message, options) {
383
+ var digestbytes = crypt.wordsToBytes(md5JS(message, options)), result = options && options.asBytes ? digestbytes : crypt.bytesconvertNumberToHex(digestbytes);
384
+ return result;
385
+ };
378
386
  }
379
387
  function str2AB(str) {
380
- var l,
381
- buff,
382
- buffView,
383
- i = -1;
384
- l = str.length - 1;
385
- buff = new ArrayBuffer(str.length);
386
- buffView = new Uint8Array(buff);
387
- while (l > i++) {
388
- buffView[i] = str.charCodeAt(i);
389
- }
390
- return buffView;
388
+ var l, buff, buffView, i = -1;
389
+ l = str.length - 1;
390
+ buff = new ArrayBuffer(str.length);
391
+ buffView = new Uint8Array(buff);
392
+ while (l > i++) {
393
+ buffView[i] = str.charCodeAt(i);
394
+ }
395
+ return buffView;
391
396
  }
392
397
  function nodeATOB(str) {
393
- return Buffer.from(str, 'base64').toString('binary');
398
+ return Buffer.from(str, 'base64').toString('binary');
394
399
  }
395
400
  function identity(x) {
396
- return x;
401
+ return x;
397
402
  }
398
403
  function makeCrypt() {
399
- var base64map = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';
400
- return {
401
- rotl: function (n, b) {
402
- return n << b | n >>> 32 - b;
403
- },
404
- endian: function (n) {
405
- if (n.constructor == Number) {
406
- return crypt.rotl(n, 8) & 0x00ff00ff | crypt.rotl(n, 24) & 0xff00ff00;
407
- }
408
- for (var i = 0; i < n.length; i++) n[i] = crypt.endian(n[i]);
409
- return n;
410
- },
411
- bytesToWords: function (bytes) {
412
- for (var words = [], i = 0, b = 0; i < bytes.length; i++, b += 8) words[b >>> 5] |= bytes[i] << 24 - b % 32;
413
- return words;
414
- },
415
- wordsToBytes: function (words) {
416
- for (var bytes = [], b = 0; b < words.length * 32; b += 8) bytes.push(words[b >>> 5] >>> 24 - b % 32 & 0xff);
417
- return bytes;
418
- },
419
- bytesconvertNumberToHex: function (bytes) {
420
- for (var hex = [], i = 0; i < bytes.length; i++) {
421
- hex.push((bytes[i] >>> 4).toString(16));
422
- hex.push((bytes[i] & 0xf).toString(16));
423
- }
424
- return hex.join('');
425
- }
426
- };
404
+ var base64map = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';
405
+ return {
406
+ rotl: function (n, b) {
407
+ return (n << b) | (n >>> (32 - b));
408
+ },
409
+ endian: function (n) {
410
+ if (n.constructor == Number) {
411
+ return (crypt.rotl(n, 8) & 0x00ff00ff) | (crypt.rotl(n, 24) & 0xff00ff00);
412
+ }
413
+ for (var i = 0; i < n.length; i++)
414
+ n[i] = crypt.endian(n[i]);
415
+ return n;
416
+ },
417
+ bytesToWords: function (bytes) {
418
+ for (var words = [], i = 0, b = 0; i < bytes.length; i++, b += 8)
419
+ words[b >>> 5] |= bytes[i] << (24 - (b % 32));
420
+ return words;
421
+ },
422
+ wordsToBytes: function (words) {
423
+ for (var bytes = [], b = 0; b < words.length * 32; b += 8)
424
+ bytes.push((words[b >>> 5] >>> (24 - (b % 32))) & 0xff);
425
+ return bytes;
426
+ },
427
+ bytesconvertNumberToHex: function (bytes) {
428
+ for (var hex = [], i = 0; i < bytes.length; i++) {
429
+ hex.push((bytes[i] >>> 4).toString(16));
430
+ hex.push((bytes[i] & 0xf).toString(16));
431
+ }
432
+ return hex.join('');
433
+ }
434
+ };
427
435
  }
428
- //# sourceMappingURL=md5-wasm.js.map