@loaders.gl/crypto 4.0.0-alpha.9 → 4.0.0-beta.1
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.
- package/dist/crypto-worker-node.js +1 -1
- package/dist/crypto-worker-node.js.map +2 -2
- package/dist/crypto-worker.js +1 -1
- package/dist/crypto-worker.js.map +2 -2
- package/dist/dist.min.js +1 -1
- package/dist/dist.min.js.map +2 -2
- package/dist/es5/index.js +24 -5
- package/dist/es5/index.js.map +1 -1
- package/dist/es5/lib/algorithms/md5-wasm.js +3 -3
- package/dist/es5/lib/algorithms/md5-wasm.js.map +1 -1
- package/dist/es5/lib/crc32-hash.js +11 -13
- package/dist/es5/lib/crc32-hash.js.map +1 -1
- package/dist/es5/lib/crc32c-hash.js +11 -13
- package/dist/es5/lib/crc32c-hash.js.map +1 -1
- package/dist/es5/lib/crypto-hash.js +12 -9
- package/dist/es5/lib/crypto-hash.js.map +1 -1
- package/dist/es5/lib/hash.js +2 -1
- package/dist/es5/lib/hash.js.map +1 -1
- package/dist/es5/lib/md5-hash.js +3 -3
- package/dist/es5/lib/md5-hash.js.map +1 -1
- package/dist/es5/lib/node-hash.js +20 -12
- package/dist/es5/lib/node-hash.js.map +1 -1
- package/dist/es5/lib/utils/base64-utils.js +41 -2
- package/dist/es5/lib/utils/base64-utils.js.map +1 -1
- package/dist/es5/lib/utils/digest-utils.js +45 -7
- package/dist/es5/lib/utils/digest-utils.js.map +1 -1
- package/dist/es5/workers/worker.js +6 -4
- package/dist/es5/workers/worker.js.map +1 -1
- package/dist/esm/index.js +3 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/lib/algorithms/md5-wasm.js +3 -3
- package/dist/esm/lib/algorithms/md5-wasm.js.map +1 -1
- package/dist/esm/lib/crc32-hash.js +24 -19
- package/dist/esm/lib/crc32-hash.js.map +1 -1
- package/dist/esm/lib/crc32c-hash.js +24 -19
- package/dist/esm/lib/crc32c-hash.js.map +1 -1
- package/dist/esm/lib/crypto-hash.js +23 -13
- package/dist/esm/lib/crypto-hash.js.map +1 -1
- package/dist/esm/lib/hash.js +19 -11
- package/dist/esm/lib/hash.js.map +1 -1
- package/dist/esm/lib/md5-hash.js +3 -3
- package/dist/esm/lib/md5-hash.js.map +1 -1
- package/dist/esm/lib/node-hash.js +29 -15
- package/dist/esm/lib/node-hash.js.map +1 -1
- package/dist/esm/lib/utils/base64-utils.js +39 -1
- package/dist/esm/lib/utils/base64-utils.js.map +1 -1
- package/dist/esm/lib/utils/digest-utils.js +39 -6
- package/dist/esm/lib/utils/digest-utils.js.map +1 -1
- package/dist/esm/workers/worker.js +5 -4
- package/dist/esm/workers/worker.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/lib/crc32-hash.d.ts +3 -3
- package/dist/lib/crc32-hash.d.ts.map +1 -1
- package/dist/lib/crc32c-hash.d.ts +3 -3
- package/dist/lib/crc32c-hash.d.ts.map +1 -1
- package/dist/lib/crypto-hash.d.ts +2 -2
- package/dist/lib/crypto-hash.d.ts.map +1 -1
- package/dist/lib/hash.d.ts +2 -2
- package/dist/lib/hash.d.ts.map +1 -1
- package/dist/lib/md5-hash.d.ts +1 -1
- package/dist/lib/md5-hash.d.ts.map +1 -1
- package/dist/lib/node-hash.d.ts +2 -2
- package/dist/lib/node-hash.d.ts.map +1 -1
- package/dist/lib/utils/base64-utils.d.ts +8 -1
- package/dist/lib/utils/base64-utils.d.ts.map +1 -1
- package/dist/lib/utils/digest-utils.d.ts +6 -6
- package/dist/lib/utils/digest-utils.d.ts.map +1 -1
- package/package.json +4 -4
- package/src/index.ts +10 -7
- package/src/lib/algorithms/md5-wasm.ts +4 -3
- package/src/lib/crc32-hash.ts +10 -12
- package/src/lib/crc32c-hash.ts +10 -12
- package/src/lib/crypto-hash.ts +10 -5
- package/src/lib/hash.ts +4 -3
- package/src/lib/md5-hash.ts +3 -3
- package/src/lib/node-hash.ts +14 -6
- package/src/lib/utils/base64-utils.ts +97 -1
- package/src/lib/utils/digest-utils.ts +57 -8
- package/src/workers/worker.ts +4 -4
- package/dist/bundle.js +0 -5
- package/dist/index.js +0 -47
- package/dist/lib/algorithms/crc32.js +0 -30
- package/dist/lib/algorithms/crc32c.js +0 -38
- package/dist/lib/algorithms/md5-wasm.js +0 -435
- package/dist/lib/crc32-hash.js +0 -47
- package/dist/lib/crc32c-hash.js +0 -51
- package/dist/lib/crypto-hash.js +0 -61
- package/dist/lib/hash.js +0 -29
- package/dist/lib/md5-hash.js +0 -32
- package/dist/lib/node-hash.js +0 -42
- package/dist/lib/sha256-hash.js +0 -14
- package/dist/lib/utils/base64-utils.js +0 -67
- package/dist/lib/utils/digest-utils.js +0 -27
- package/dist/types.js +0 -2
- package/dist/workers/worker.js +0 -23
|
@@ -1,435 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/* eslint-disable */
|
|
3
|
-
// @ts-nocheck
|
|
4
|
-
/* !
|
|
5
|
-
* MD5 WebAssembly
|
|
6
|
-
* https://github.com/briantbutton/md5-wasm
|
|
7
|
-
* (c) 2020 Brian Todd Button
|
|
8
|
-
* Released under the MIT license
|
|
9
|
-
*/
|
|
10
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
|
-
// *-*=* *=*-* *-*=* *=*-* *-*=* *=*-* *-*=* *=*-* *-*=* *=*-* *-*=* *=*-*
|
|
12
|
-
// This contains two functions designed to achieve the same thing
|
|
13
|
-
// -> A WebAssembly function for larger files
|
|
14
|
-
// -> A JavaScript function for the others
|
|
15
|
-
//
|
|
16
|
-
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';
|
|
17
|
-
if (!wasm) {
|
|
18
|
-
console.log('WebAssembly not available or WASM module could not be decoded; md5WASM will fall back to JavaScript');
|
|
19
|
-
}
|
|
20
|
-
// - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
|
21
|
-
// This returns a Promise-like object (I was farting around, so sue me)
|
|
22
|
-
// which supports '.catch' and '.then'
|
|
23
|
-
function md5WASM(data) {
|
|
24
|
-
var mem, memView, importObj, imports, len, buff, thenFun, catchFun, result, endTime;
|
|
25
|
-
const md5JS = makeMD5JS(), md5WA = makeMD5WA(), returnObj = {}, startTime = new Date().getTime();
|
|
26
|
-
returnObj['then'] = function (fun) {
|
|
27
|
-
thenFun = fun;
|
|
28
|
-
getThen();
|
|
29
|
-
return returnObj;
|
|
30
|
-
};
|
|
31
|
-
returnObj['catch'] = function (fun) {
|
|
32
|
-
catchFun = fun;
|
|
33
|
-
return returnObj;
|
|
34
|
-
};
|
|
35
|
-
// Sift the incoming parameter and the environment
|
|
36
|
-
// If we are good, set buff
|
|
37
|
-
if (true) {
|
|
38
|
-
if (data && typeof data === 'object') {
|
|
39
|
-
if (typeof Buffer === 'function' && data.constructor === Buffer) {
|
|
40
|
-
buff = data;
|
|
41
|
-
}
|
|
42
|
-
else {
|
|
43
|
-
if (data.constructor === Uint8Array || data.constructor === ArrayBuffer) {
|
|
44
|
-
buff = data.constructor === ArrayBuffer ? new Uint8Array(data) : data;
|
|
45
|
-
}
|
|
46
|
-
else {
|
|
47
|
-
getCatch(new TypeError(parmTypeErrStr));
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
else {
|
|
52
|
-
getCatch(new TypeError(parmTypeErrStr));
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
// - - - - - - - - - - - - - - - - - - - - - - - - - -
|
|
56
|
-
// Make some choices based on the size of the incoming data
|
|
57
|
-
// ~ Use WebAssembly or just JavaScript
|
|
58
|
-
// ~ If Webassemly, allocate appropriate memory
|
|
59
|
-
//
|
|
60
|
-
if (buff) {
|
|
61
|
-
len = buff.length;
|
|
62
|
-
if (wasm && len > bounder) {
|
|
63
|
-
if (len > upperLimit) {
|
|
64
|
-
getCatch(new Error(tooBigErrStr));
|
|
65
|
-
}
|
|
66
|
-
else {
|
|
67
|
-
mem = new WebAssembly.Memory({
|
|
68
|
-
initial: len > 32000000 ? (len > 64000000 ? (len > 128000000 ? 4096 : 2048) : 1024) : 512
|
|
69
|
-
});
|
|
70
|
-
memView = new Uint32Array(mem.buffer);
|
|
71
|
-
imports = { mem: mem, log: console.log };
|
|
72
|
-
importObj = { imports };
|
|
73
|
-
WebAssembly.instantiate(wasm, importObj).then(giterdone);
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
else {
|
|
77
|
-
getThen(md5JS(buff));
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
return returnObj;
|
|
81
|
-
function giterdone(obj) {
|
|
82
|
-
getThen(md5WA(buff, obj.instance.exports, memView));
|
|
83
|
-
}
|
|
84
|
-
function getThen(r) {
|
|
85
|
-
var res = Boolean(r) ? r : result;
|
|
86
|
-
if (Boolean(r)) {
|
|
87
|
-
endTime = new Date().getTime();
|
|
88
|
-
}
|
|
89
|
-
if (typeof thenFun === 'function') {
|
|
90
|
-
if (Boolean(res)) {
|
|
91
|
-
thenFun(res, endTime - startTime);
|
|
92
|
-
thenFun = catchFun = null;
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
else {
|
|
96
|
-
if (Boolean(r)) {
|
|
97
|
-
result = r;
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
function getCatch(err) {
|
|
102
|
-
if (typeof catchFun === 'function') {
|
|
103
|
-
catchFun(err);
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
exports.default = md5WASM;
|
|
108
|
-
function makeMD5WA() {
|
|
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.bytesToHex(digestbytes);
|
|
269
|
-
};
|
|
270
|
-
}
|
|
271
|
-
function makeMD5JS() {
|
|
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.bytesToHex(digestbytes);
|
|
384
|
-
return result;
|
|
385
|
-
};
|
|
386
|
-
}
|
|
387
|
-
function str2AB(str) {
|
|
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;
|
|
396
|
-
}
|
|
397
|
-
function nodeATOB(str) {
|
|
398
|
-
return Buffer.from(str, 'base64').toString('binary');
|
|
399
|
-
}
|
|
400
|
-
function identity(x) {
|
|
401
|
-
return x;
|
|
402
|
-
}
|
|
403
|
-
function makeCrypt() {
|
|
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
|
-
bytesToHex: 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
|
-
};
|
|
435
|
-
}
|
package/dist/lib/crc32-hash.js
DELETED
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.CRC32Hash = void 0;
|
|
7
|
-
// CRC32
|
|
8
|
-
const hash_1 = require("./hash");
|
|
9
|
-
const crc32_1 = __importDefault(require("./algorithms/crc32"));
|
|
10
|
-
const digest_utils_1 = require("./utils/digest-utils");
|
|
11
|
-
/**
|
|
12
|
-
* Calculates CRC32 Cryptographic Hash
|
|
13
|
-
*/
|
|
14
|
-
class CRC32Hash extends hash_1.Hash {
|
|
15
|
-
constructor(options = {}) {
|
|
16
|
-
super();
|
|
17
|
-
this.name = 'crc32';
|
|
18
|
-
this.options = { crypto: {}, ...options };
|
|
19
|
-
this._hash = new crc32_1.default();
|
|
20
|
-
this.hashBatches = this.hashBatches.bind(this);
|
|
21
|
-
}
|
|
22
|
-
/**
|
|
23
|
-
* Atomic hash calculation
|
|
24
|
-
* @returns base64 encoded hash
|
|
25
|
-
*/
|
|
26
|
-
async hash(input) {
|
|
27
|
-
return this.hashSync(input);
|
|
28
|
-
}
|
|
29
|
-
hashSync(input) {
|
|
30
|
-
this._hash.update(input);
|
|
31
|
-
const hashValue = this._hash.finalize();
|
|
32
|
-
const hex = (0, digest_utils_1.toHex)(hashValue);
|
|
33
|
-
const hash = (0, digest_utils_1.hexToBase64)(hex);
|
|
34
|
-
return hash;
|
|
35
|
-
}
|
|
36
|
-
async *hashBatches(asyncIterator) {
|
|
37
|
-
for await (const chunk of asyncIterator) {
|
|
38
|
-
this._hash.update(chunk);
|
|
39
|
-
yield chunk;
|
|
40
|
-
}
|
|
41
|
-
const hashValue = this._hash.finalize();
|
|
42
|
-
const hex = (0, digest_utils_1.toHex)(hashValue);
|
|
43
|
-
const hash = (0, digest_utils_1.hexToBase64)(hex);
|
|
44
|
-
this.options.crypto?.onEnd?.({ hash });
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
exports.CRC32Hash = CRC32Hash;
|
package/dist/lib/crc32c-hash.js
DELETED
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.CRC32CHash = void 0;
|
|
7
|
-
// CRC32c
|
|
8
|
-
const hash_1 = require("./hash");
|
|
9
|
-
const crc32c_1 = __importDefault(require("./algorithms/crc32c"));
|
|
10
|
-
const digest_utils_1 = require("./utils/digest-utils");
|
|
11
|
-
/**
|
|
12
|
-
* A transform that calculates CRC32c Hash
|
|
13
|
-
*/
|
|
14
|
-
class CRC32CHash extends hash_1.Hash {
|
|
15
|
-
/**
|
|
16
|
-
* Atomic hash calculation
|
|
17
|
-
* @returns base64 encoded hash
|
|
18
|
-
*/
|
|
19
|
-
constructor(options = {}) {
|
|
20
|
-
super();
|
|
21
|
-
this.name = 'crc32c';
|
|
22
|
-
this.options = { crypto: {}, ...options };
|
|
23
|
-
this._hash = new crc32c_1.default(options);
|
|
24
|
-
}
|
|
25
|
-
/**
|
|
26
|
-
* Atomic hash calculation
|
|
27
|
-
* @returns base64 encoded hash
|
|
28
|
-
*/
|
|
29
|
-
async hash(input) {
|
|
30
|
-
return this.hashSync(input);
|
|
31
|
-
}
|
|
32
|
-
hashSync(input) {
|
|
33
|
-
this._hash.update(input);
|
|
34
|
-
const hashValue = this._hash.finalize();
|
|
35
|
-
const hex = (0, digest_utils_1.toHex)(hashValue);
|
|
36
|
-
const hash = (0, digest_utils_1.hexToBase64)(hex);
|
|
37
|
-
return hash;
|
|
38
|
-
}
|
|
39
|
-
// runInBatches inherited
|
|
40
|
-
async *hashBatches(asyncIterator) {
|
|
41
|
-
for await (const chunk of asyncIterator) {
|
|
42
|
-
this._hash.update(chunk);
|
|
43
|
-
yield chunk;
|
|
44
|
-
}
|
|
45
|
-
const hashValue = this._hash.finalize();
|
|
46
|
-
const hex = (0, digest_utils_1.toHex)(hashValue);
|
|
47
|
-
const hash = (0, digest_utils_1.hexToBase64)(hex);
|
|
48
|
-
this.options.crypto?.onEnd?.({ hash });
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
exports.CRC32CHash = CRC32CHash;
|
package/dist/lib/crypto-hash.js
DELETED
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.CryptoHash = void 0;
|
|
4
|
-
const hash_1 = require("./hash");
|
|
5
|
-
let CryptoJS;
|
|
6
|
-
/**
|
|
7
|
-
* A transform that calculates Cryptographic Hash using Crypto JS library
|
|
8
|
-
* @deprecated Warning, experimental class
|
|
9
|
-
*/
|
|
10
|
-
class CryptoHash extends hash_1.Hash {
|
|
11
|
-
constructor(options) {
|
|
12
|
-
super();
|
|
13
|
-
this.options = options;
|
|
14
|
-
this._algorithm = this.options?.crypto?.algorithm;
|
|
15
|
-
if (!this._algorithm) {
|
|
16
|
-
throw new Error(this.name);
|
|
17
|
-
}
|
|
18
|
-
this.name = this._algorithm.toLowerCase();
|
|
19
|
-
}
|
|
20
|
-
async preload() {
|
|
21
|
-
if (!CryptoJS) {
|
|
22
|
-
CryptoJS = this.options?.modules?.CryptoJS;
|
|
23
|
-
if (!CryptoJS) {
|
|
24
|
-
throw new Error(this.name);
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
if (!this._hash) {
|
|
28
|
-
const algo = CryptoJS.algo[this._algorithm];
|
|
29
|
-
this._hash = algo.create();
|
|
30
|
-
}
|
|
31
|
-
if (!this._hash) {
|
|
32
|
-
throw new Error(this.name);
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
/**
|
|
36
|
-
* Atomic hash calculation
|
|
37
|
-
* @returns base64 encoded hash
|
|
38
|
-
*/
|
|
39
|
-
async hash(input) {
|
|
40
|
-
await this.preload();
|
|
41
|
-
// arrayBuffer is accepted, even though types and docs say no
|
|
42
|
-
// https://stackoverflow.com/questions/25567468/how-to-decrypt-an-arraybuffer
|
|
43
|
-
// @ts-expect-error
|
|
44
|
-
const typedWordArray = CryptoJS.lib.WordArray.create(input);
|
|
45
|
-
return this._hash.update(typedWordArray).finalize().toString(CryptoJS.enc.Base64);
|
|
46
|
-
}
|
|
47
|
-
async *hashBatches(asyncIterator) {
|
|
48
|
-
await this.preload();
|
|
49
|
-
for await (const chunk of asyncIterator) {
|
|
50
|
-
// arrayBuffer is accepted, even though types and docs say no
|
|
51
|
-
// https://stackoverflow.com/questions/25567468/how-to-decrypt-an-arraybuffer
|
|
52
|
-
// @ts-expect-error
|
|
53
|
-
const typedWordArray = CryptoJS.lib.WordArray.create(chunk);
|
|
54
|
-
this._hash.update(typedWordArray);
|
|
55
|
-
yield chunk;
|
|
56
|
-
}
|
|
57
|
-
const hash = this._hash.finalize().toString(CryptoJS.enc.Base64);
|
|
58
|
-
this.options?.crypto?.onEnd?.({ hash });
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
exports.CryptoHash = CryptoHash;
|
package/dist/lib/hash.js
DELETED
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Hash = void 0;
|
|
4
|
-
// Hash
|
|
5
|
-
const loader_utils_1 = require("@loaders.gl/loader-utils");
|
|
6
|
-
/** Abstract hash base class */
|
|
7
|
-
class Hash {
|
|
8
|
-
constructor(options = {}) {
|
|
9
|
-
this.hashBatches = this.hashBatches.bind(this);
|
|
10
|
-
}
|
|
11
|
-
async preload() {
|
|
12
|
-
return;
|
|
13
|
-
}
|
|
14
|
-
async *hashBatches(asyncIterator) {
|
|
15
|
-
const arrayBuffers = [];
|
|
16
|
-
for await (const arrayBuffer of asyncIterator) {
|
|
17
|
-
arrayBuffers.push(arrayBuffer);
|
|
18
|
-
yield arrayBuffer;
|
|
19
|
-
}
|
|
20
|
-
const output = await this.concatenate(arrayBuffers);
|
|
21
|
-
const hash = await this.hash(output);
|
|
22
|
-
this.options.crypto?.onEnd?.({ hash });
|
|
23
|
-
}
|
|
24
|
-
// HELPERS
|
|
25
|
-
async concatenate(asyncIterator) {
|
|
26
|
-
return await (0, loader_utils_1.concatenateArrayBuffersAsync)(asyncIterator);
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
exports.Hash = Hash;
|
package/dist/lib/md5-hash.js
DELETED
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.MD5Hash = void 0;
|
|
7
|
-
// Fork of https://github.com/briantbutton/md5-wasm under MIT license
|
|
8
|
-
const hash_1 = require("./hash");
|
|
9
|
-
const md5_wasm_1 = __importDefault(require("./algorithms/md5-wasm"));
|
|
10
|
-
const digest_utils_1 = require("./utils/digest-utils");
|
|
11
|
-
/**
|
|
12
|
-
* A transform that calculates MD5 hashes, passing data through
|
|
13
|
-
*/
|
|
14
|
-
class MD5Hash extends hash_1.Hash {
|
|
15
|
-
constructor(options = {}) {
|
|
16
|
-
super();
|
|
17
|
-
this.name = 'md5';
|
|
18
|
-
this.options = options;
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
* Atomic hash calculation
|
|
22
|
-
* @returns base64 encoded hash
|
|
23
|
-
*/
|
|
24
|
-
async hash(input) {
|
|
25
|
-
const md5Promise = new Promise((resolve, reject) =>
|
|
26
|
-
// @ts-expect-error
|
|
27
|
-
(0, md5_wasm_1.default)(input).then(resolve).catch(reject));
|
|
28
|
-
const hex = await md5Promise;
|
|
29
|
-
return (0, digest_utils_1.hexToBase64)(hex);
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
exports.MD5Hash = MD5Hash;
|