@cloudcome/utils-core 1.19.1 → 1.20.0
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/README.md +1 -1
- package/dist/array.cjs +181 -125
- package/dist/array.cjs.map +1 -1
- package/dist/array.mjs +181 -133
- package/dist/array.mjs.map +1 -1
- package/dist/async.cjs +181 -171
- package/dist/async.cjs.map +1 -1
- package/dist/async.mjs +181 -174
- package/dist/async.mjs.map +1 -1
- package/dist/base64.cjs +16 -12
- package/dist/base64.cjs.map +1 -1
- package/dist/base64.mjs +17 -14
- package/dist/base64.mjs.map +1 -1
- package/dist/cache.cjs +79 -67
- package/dist/cache.cjs.map +1 -1
- package/dist/cache.d.ts +3 -3
- package/dist/cache.mjs +80 -71
- package/dist/cache.mjs.map +1 -1
- package/dist/color.cjs +478 -167
- package/dist/color.cjs.map +1 -1
- package/dist/color.d.ts +3 -3
- package/dist/color.mjs +480 -197
- package/dist/color.mjs.map +1 -1
- package/dist/crypto.cjs +474 -687
- package/dist/crypto.cjs.map +1 -1
- package/dist/crypto.mjs +476 -693
- package/dist/crypto.mjs.map +1 -1
- package/dist/date.cjs +972 -161
- package/dist/date.cjs.map +1 -1
- package/dist/date.d.ts +2 -2
- package/dist/date.mjs +962 -191
- package/dist/date.mjs.map +1 -1
- package/dist/dict.cjs +90 -52
- package/dist/dict.cjs.map +1 -1
- package/dist/dict.d.ts +1 -1
- package/dist/dict.mjs +91 -54
- package/dist/dict.mjs.map +1 -1
- package/dist/easing.cjs +105 -103
- package/dist/easing.cjs.map +1 -1
- package/dist/easing.mjs +106 -133
- package/dist/easing.mjs.map +1 -1
- package/dist/emitter.cjs +101 -96
- package/dist/emitter.cjs.map +1 -1
- package/dist/emitter.mjs +101 -97
- package/dist/emitter.mjs.map +1 -1
- package/dist/env.cjs +43 -9
- package/dist/env.cjs.map +1 -1
- package/dist/env.d.ts +1 -1
- package/dist/env.mjs +43 -15
- package/dist/env.mjs.map +1 -1
- package/dist/error.cjs +26 -5
- package/dist/error.cjs.map +1 -1
- package/dist/error.mjs +26 -7
- package/dist/error.mjs.map +1 -1
- package/dist/exception.cjs +38 -20
- package/dist/exception.cjs.map +1 -1
- package/dist/exception.d.ts +5 -5
- package/dist/exception.mjs +38 -21
- package/dist/exception.mjs.map +1 -1
- package/dist/function.cjs +128 -68
- package/dist/function.cjs.map +1 -1
- package/dist/function.mjs +128 -72
- package/dist/function.mjs.map +1 -1
- package/dist/index.cjs +8 -3
- package/dist/index.cjs.map +1 -1
- package/dist/index.mjs +9 -5
- package/dist/index.mjs.map +1 -1
- package/dist/number.cjs +10 -14
- package/dist/number.mjs +2 -15
- package/dist/object/get-set.d.ts +27 -3
- package/dist/object/merge.d.ts +2 -2
- package/dist/object.cjs +369 -106
- package/dist/object.cjs.map +1 -1
- package/dist/object.mjs +366 -115
- package/dist/object.mjs.map +1 -1
- package/dist/path.cjs +144 -55
- package/dist/path.cjs.map +1 -1
- package/dist/path.mjs +144 -62
- package/dist/path.mjs.map +1 -1
- package/dist/promise.cjs +84 -43
- package/dist/promise.cjs.map +1 -1
- package/dist/promise.mjs +85 -50
- package/dist/promise.mjs.map +1 -1
- package/dist/qs.cjs +63 -39
- package/dist/qs.cjs.map +1 -1
- package/dist/qs.mjs +64 -42
- package/dist/qs.mjs.map +1 -1
- package/dist/regexp.cjs +118 -35
- package/dist/regexp.cjs.map +1 -1
- package/dist/regexp.mjs +119 -46
- package/dist/regexp.mjs.map +1 -1
- package/dist/string.cjs +12 -15
- package/dist/string.mjs +2 -16
- package/dist/string2.cjs +378 -142
- package/dist/string2.cjs.map +1 -1
- package/dist/string2.mjs +259 -143
- package/dist/string2.mjs.map +1 -1
- package/dist/time.cjs +136 -59
- package/dist/time.cjs.map +1 -1
- package/dist/time.mjs +136 -65
- package/dist/time.mjs.map +1 -1
- package/dist/timer.cjs +122 -112
- package/dist/timer.cjs.map +1 -1
- package/dist/timer.mjs +123 -115
- package/dist/timer.mjs.map +1 -1
- package/dist/tree.cjs +207 -112
- package/dist/tree.cjs.map +1 -1
- package/dist/tree.mjs +207 -116
- package/dist/tree.mjs.map +1 -1
- package/dist/try/curry.d.ts +1 -1
- package/dist/try.cjs +36 -37
- package/dist/try.cjs.map +1 -1
- package/dist/try.mjs +35 -37
- package/dist/try.mjs.map +1 -1
- package/dist/type.cjs +126 -24
- package/dist/type.cjs.map +1 -1
- package/dist/type.d.ts +2 -2
- package/dist/type.mjs +128 -45
- package/dist/type.mjs.map +1 -1
- package/dist/types.cjs +0 -2
- package/dist/types.d.ts +2 -2
- package/dist/types.mjs +0 -2
- package/dist/unique.cjs +41 -38
- package/dist/unique.cjs.map +1 -1
- package/dist/unique.mjs +42 -41
- package/dist/unique.mjs.map +1 -1
- package/dist/url.cjs +39 -30
- package/dist/url.cjs.map +1 -1
- package/dist/url.mjs +40 -33
- package/dist/url.mjs.map +1 -1
- package/dist/version.cjs +51 -33
- package/dist/version.cjs.map +1 -1
- package/dist/version.mjs +51 -35
- package/dist/version.mjs.map +1 -1
- package/package.json +104 -105
- package/dist/const.cjs +0 -14
- package/dist/const.cjs.map +0 -1
- package/dist/const.mjs +0 -15
- package/dist/const.mjs.map +0 -1
- package/dist/core.cjs +0 -362
- package/dist/core.cjs.map +0 -1
- package/dist/core.mjs +0 -363
- package/dist/core.mjs.map +0 -1
- package/dist/crypto/md5.d.mts +0 -1
- package/dist/crypto/sha1.d.mts +0 -1
- package/dist/crypto/sha256.d.mts +0 -1
- package/dist/crypto/sha512.d.mts +0 -1
- package/dist/each.cjs +0 -18
- package/dist/each.cjs.map +0 -1
- package/dist/each.mjs +0 -19
- package/dist/each.mjs.map +0 -1
- package/dist/merge.cjs +0 -87
- package/dist/merge.cjs.map +0 -1
- package/dist/merge.mjs +0 -88
- package/dist/merge.mjs.map +0 -1
- package/dist/number.cjs.map +0 -1
- package/dist/number.mjs.map +0 -1
- package/dist/string.cjs.map +0 -1
- package/dist/string.mjs.map +0 -1
- package/dist/types.cjs.map +0 -1
- package/dist/types.mjs.map +0 -1
package/dist/crypto.cjs
CHANGED
|
@@ -1,812 +1,599 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
+
//#region src/crypto/md5.mjs
|
|
3
3
|
var hexcase$3 = 0;
|
|
4
4
|
function hex_md5(s) {
|
|
5
|
-
|
|
5
|
+
return rstr2hex$3(rstr_md5(str2rstr_utf8$3(s)));
|
|
6
6
|
}
|
|
7
7
|
function rstr_md5(s) {
|
|
8
|
-
|
|
8
|
+
return binl2rstr(binl_md5(rstr2binl(s), s.length * 8));
|
|
9
9
|
}
|
|
10
10
|
function rstr2hex$3(input) {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
for (var i = 0; i < input.length; i++) {
|
|
20
|
-
x = input.charCodeAt(i);
|
|
21
|
-
output += hex_tab.charAt(x >>> 4 & 15) + hex_tab.charAt(x & 15);
|
|
22
|
-
}
|
|
23
|
-
return output;
|
|
11
|
+
var hex_tab = hexcase$3 ? "0123456789ABCDEF" : "0123456789abcdef";
|
|
12
|
+
var output = "";
|
|
13
|
+
var x;
|
|
14
|
+
for (var i = 0; i < input.length; i++) {
|
|
15
|
+
x = input.charCodeAt(i);
|
|
16
|
+
output += hex_tab.charAt(x >>> 4 & 15) + hex_tab.charAt(x & 15);
|
|
17
|
+
}
|
|
18
|
+
return output;
|
|
24
19
|
}
|
|
25
20
|
function str2rstr_utf8$3(input) {
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
240 | x >>> 18 & 7,
|
|
43
|
-
128 | x >>> 12 & 63,
|
|
44
|
-
128 | x >>> 6 & 63,
|
|
45
|
-
128 | x & 63
|
|
46
|
-
);
|
|
47
|
-
}
|
|
48
|
-
return output;
|
|
21
|
+
var output = "";
|
|
22
|
+
var i = -1;
|
|
23
|
+
var x, y;
|
|
24
|
+
while (++i < input.length) {
|
|
25
|
+
x = input.charCodeAt(i);
|
|
26
|
+
y = i + 1 < input.length ? input.charCodeAt(i + 1) : 0;
|
|
27
|
+
if (55296 <= x && x <= 56319 && 56320 <= y && y <= 57343) {
|
|
28
|
+
x = 65536 + ((x & 1023) << 10) + (y & 1023);
|
|
29
|
+
i++;
|
|
30
|
+
}
|
|
31
|
+
if (x <= 127) output += String.fromCharCode(x);
|
|
32
|
+
else if (x <= 2047) output += String.fromCharCode(192 | x >>> 6 & 31, 128 | x & 63);
|
|
33
|
+
else if (x <= 65535) output += String.fromCharCode(224 | x >>> 12 & 15, 128 | x >>> 6 & 63, 128 | x & 63);
|
|
34
|
+
else if (x <= 2097151) output += String.fromCharCode(240 | x >>> 18 & 7, 128 | x >>> 12 & 63, 128 | x >>> 6 & 63, 128 | x & 63);
|
|
35
|
+
}
|
|
36
|
+
return output;
|
|
49
37
|
}
|
|
50
38
|
function rstr2binl(input) {
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
39
|
+
var output = Array(input.length >> 2);
|
|
40
|
+
for (var i = 0; i < output.length; i++) output[i] = 0;
|
|
41
|
+
for (var i = 0; i < input.length * 8; i += 8) output[i >> 5] |= (input.charCodeAt(i / 8) & 255) << i % 32;
|
|
42
|
+
return output;
|
|
55
43
|
}
|
|
56
44
|
function binl2rstr(input) {
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
45
|
+
var output = "";
|
|
46
|
+
for (var i = 0; i < input.length * 32; i += 8) output += String.fromCharCode(input[i >> 5] >>> i % 32 & 255);
|
|
47
|
+
return output;
|
|
60
48
|
}
|
|
61
49
|
function binl_md5(x, len) {
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
50
|
+
x[len >> 5] |= 128 << len % 32;
|
|
51
|
+
x[(len + 64 >>> 9 << 4) + 14] = len;
|
|
52
|
+
var a = 1732584193;
|
|
53
|
+
var b = -271733879;
|
|
54
|
+
var c = -1732584194;
|
|
55
|
+
var d = 271733878;
|
|
56
|
+
for (var i = 0; i < x.length; i += 16) {
|
|
57
|
+
var olda = a;
|
|
58
|
+
var oldb = b;
|
|
59
|
+
var oldc = c;
|
|
60
|
+
var oldd = d;
|
|
61
|
+
a = md5_ff(a, b, c, d, x[i + 0], 7, -680876936);
|
|
62
|
+
d = md5_ff(d, a, b, c, x[i + 1], 12, -389564586);
|
|
63
|
+
c = md5_ff(c, d, a, b, x[i + 2], 17, 606105819);
|
|
64
|
+
b = md5_ff(b, c, d, a, x[i + 3], 22, -1044525330);
|
|
65
|
+
a = md5_ff(a, b, c, d, x[i + 4], 7, -176418897);
|
|
66
|
+
d = md5_ff(d, a, b, c, x[i + 5], 12, 1200080426);
|
|
67
|
+
c = md5_ff(c, d, a, b, x[i + 6], 17, -1473231341);
|
|
68
|
+
b = md5_ff(b, c, d, a, x[i + 7], 22, -45705983);
|
|
69
|
+
a = md5_ff(a, b, c, d, x[i + 8], 7, 1770035416);
|
|
70
|
+
d = md5_ff(d, a, b, c, x[i + 9], 12, -1958414417);
|
|
71
|
+
c = md5_ff(c, d, a, b, x[i + 10], 17, -42063);
|
|
72
|
+
b = md5_ff(b, c, d, a, x[i + 11], 22, -1990404162);
|
|
73
|
+
a = md5_ff(a, b, c, d, x[i + 12], 7, 1804603682);
|
|
74
|
+
d = md5_ff(d, a, b, c, x[i + 13], 12, -40341101);
|
|
75
|
+
c = md5_ff(c, d, a, b, x[i + 14], 17, -1502002290);
|
|
76
|
+
b = md5_ff(b, c, d, a, x[i + 15], 22, 1236535329);
|
|
77
|
+
a = md5_gg(a, b, c, d, x[i + 1], 5, -165796510);
|
|
78
|
+
d = md5_gg(d, a, b, c, x[i + 6], 9, -1069501632);
|
|
79
|
+
c = md5_gg(c, d, a, b, x[i + 11], 14, 643717713);
|
|
80
|
+
b = md5_gg(b, c, d, a, x[i + 0], 20, -373897302);
|
|
81
|
+
a = md5_gg(a, b, c, d, x[i + 5], 5, -701558691);
|
|
82
|
+
d = md5_gg(d, a, b, c, x[i + 10], 9, 38016083);
|
|
83
|
+
c = md5_gg(c, d, a, b, x[i + 15], 14, -660478335);
|
|
84
|
+
b = md5_gg(b, c, d, a, x[i + 4], 20, -405537848);
|
|
85
|
+
a = md5_gg(a, b, c, d, x[i + 9], 5, 568446438);
|
|
86
|
+
d = md5_gg(d, a, b, c, x[i + 14], 9, -1019803690);
|
|
87
|
+
c = md5_gg(c, d, a, b, x[i + 3], 14, -187363961);
|
|
88
|
+
b = md5_gg(b, c, d, a, x[i + 8], 20, 1163531501);
|
|
89
|
+
a = md5_gg(a, b, c, d, x[i + 13], 5, -1444681467);
|
|
90
|
+
d = md5_gg(d, a, b, c, x[i + 2], 9, -51403784);
|
|
91
|
+
c = md5_gg(c, d, a, b, x[i + 7], 14, 1735328473);
|
|
92
|
+
b = md5_gg(b, c, d, a, x[i + 12], 20, -1926607734);
|
|
93
|
+
a = md5_hh(a, b, c, d, x[i + 5], 4, -378558);
|
|
94
|
+
d = md5_hh(d, a, b, c, x[i + 8], 11, -2022574463);
|
|
95
|
+
c = md5_hh(c, d, a, b, x[i + 11], 16, 1839030562);
|
|
96
|
+
b = md5_hh(b, c, d, a, x[i + 14], 23, -35309556);
|
|
97
|
+
a = md5_hh(a, b, c, d, x[i + 1], 4, -1530992060);
|
|
98
|
+
d = md5_hh(d, a, b, c, x[i + 4], 11, 1272893353);
|
|
99
|
+
c = md5_hh(c, d, a, b, x[i + 7], 16, -155497632);
|
|
100
|
+
b = md5_hh(b, c, d, a, x[i + 10], 23, -1094730640);
|
|
101
|
+
a = md5_hh(a, b, c, d, x[i + 13], 4, 681279174);
|
|
102
|
+
d = md5_hh(d, a, b, c, x[i + 0], 11, -358537222);
|
|
103
|
+
c = md5_hh(c, d, a, b, x[i + 3], 16, -722521979);
|
|
104
|
+
b = md5_hh(b, c, d, a, x[i + 6], 23, 76029189);
|
|
105
|
+
a = md5_hh(a, b, c, d, x[i + 9], 4, -640364487);
|
|
106
|
+
d = md5_hh(d, a, b, c, x[i + 12], 11, -421815835);
|
|
107
|
+
c = md5_hh(c, d, a, b, x[i + 15], 16, 530742520);
|
|
108
|
+
b = md5_hh(b, c, d, a, x[i + 2], 23, -995338651);
|
|
109
|
+
a = md5_ii(a, b, c, d, x[i + 0], 6, -198630844);
|
|
110
|
+
d = md5_ii(d, a, b, c, x[i + 7], 10, 1126891415);
|
|
111
|
+
c = md5_ii(c, d, a, b, x[i + 14], 15, -1416354905);
|
|
112
|
+
b = md5_ii(b, c, d, a, x[i + 5], 21, -57434055);
|
|
113
|
+
a = md5_ii(a, b, c, d, x[i + 12], 6, 1700485571);
|
|
114
|
+
d = md5_ii(d, a, b, c, x[i + 3], 10, -1894986606);
|
|
115
|
+
c = md5_ii(c, d, a, b, x[i + 10], 15, -1051523);
|
|
116
|
+
b = md5_ii(b, c, d, a, x[i + 1], 21, -2054922799);
|
|
117
|
+
a = md5_ii(a, b, c, d, x[i + 8], 6, 1873313359);
|
|
118
|
+
d = md5_ii(d, a, b, c, x[i + 15], 10, -30611744);
|
|
119
|
+
c = md5_ii(c, d, a, b, x[i + 6], 15, -1560198380);
|
|
120
|
+
b = md5_ii(b, c, d, a, x[i + 13], 21, 1309151649);
|
|
121
|
+
a = md5_ii(a, b, c, d, x[i + 4], 6, -145523070);
|
|
122
|
+
d = md5_ii(d, a, b, c, x[i + 11], 10, -1120210379);
|
|
123
|
+
c = md5_ii(c, d, a, b, x[i + 2], 15, 718787259);
|
|
124
|
+
b = md5_ii(b, c, d, a, x[i + 9], 21, -343485551);
|
|
125
|
+
a = safe_add$2(a, olda);
|
|
126
|
+
b = safe_add$2(b, oldb);
|
|
127
|
+
c = safe_add$2(c, oldc);
|
|
128
|
+
d = safe_add$2(d, oldd);
|
|
129
|
+
}
|
|
130
|
+
return Array(a, b, c, d);
|
|
143
131
|
}
|
|
144
132
|
function md5_cmn(q, a, b, x, s, t) {
|
|
145
|
-
|
|
133
|
+
return safe_add$2(bit_rol$1(safe_add$2(safe_add$2(a, q), safe_add$2(x, t)), s), b);
|
|
146
134
|
}
|
|
147
135
|
function md5_ff(a, b, c, d, x, s, t) {
|
|
148
|
-
|
|
136
|
+
return md5_cmn(b & c | ~b & d, a, b, x, s, t);
|
|
149
137
|
}
|
|
150
138
|
function md5_gg(a, b, c, d, x, s, t) {
|
|
151
|
-
|
|
139
|
+
return md5_cmn(b & d | c & ~d, a, b, x, s, t);
|
|
152
140
|
}
|
|
153
141
|
function md5_hh(a, b, c, d, x, s, t) {
|
|
154
|
-
|
|
142
|
+
return md5_cmn(b ^ c ^ d, a, b, x, s, t);
|
|
155
143
|
}
|
|
156
144
|
function md5_ii(a, b, c, d, x, s, t) {
|
|
157
|
-
|
|
145
|
+
return md5_cmn(c ^ (b | ~d), a, b, x, s, t);
|
|
158
146
|
}
|
|
159
147
|
function safe_add$2(x, y) {
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
return msw << 16 | lsw & 65535;
|
|
148
|
+
var lsw = (x & 65535) + (y & 65535);
|
|
149
|
+
return (x >> 16) + (y >> 16) + (lsw >> 16) << 16 | lsw & 65535;
|
|
163
150
|
}
|
|
164
151
|
function bit_rol$1(num, cnt) {
|
|
165
|
-
|
|
152
|
+
return num << cnt | num >>> 32 - cnt;
|
|
166
153
|
}
|
|
154
|
+
//#endregion
|
|
155
|
+
//#region src/crypto/sha1.mjs
|
|
167
156
|
var hexcase$2 = 0;
|
|
168
157
|
function hex_sha1(s) {
|
|
169
|
-
|
|
158
|
+
return rstr2hex$2(rstr_sha1(str2rstr_utf8$2(s)));
|
|
170
159
|
}
|
|
171
160
|
function rstr_sha1(s) {
|
|
172
|
-
|
|
161
|
+
return binb2rstr$2(binb_sha1(rstr2binb$2(s), s.length * 8));
|
|
173
162
|
}
|
|
174
163
|
function rstr2hex$2(input) {
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
for (var i = 0; i < input.length; i++) {
|
|
184
|
-
x = input.charCodeAt(i);
|
|
185
|
-
output += hex_tab.charAt(x >>> 4 & 15) + hex_tab.charAt(x & 15);
|
|
186
|
-
}
|
|
187
|
-
return output;
|
|
164
|
+
var hex_tab = hexcase$2 ? "0123456789ABCDEF" : "0123456789abcdef";
|
|
165
|
+
var output = "";
|
|
166
|
+
var x;
|
|
167
|
+
for (var i = 0; i < input.length; i++) {
|
|
168
|
+
x = input.charCodeAt(i);
|
|
169
|
+
output += hex_tab.charAt(x >>> 4 & 15) + hex_tab.charAt(x & 15);
|
|
170
|
+
}
|
|
171
|
+
return output;
|
|
188
172
|
}
|
|
189
173
|
function str2rstr_utf8$2(input) {
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
);
|
|
207
|
-
else if (x <= 65535)
|
|
208
|
-
output += String.fromCharCode(
|
|
209
|
-
224 | x >>> 12 & 15,
|
|
210
|
-
128 | x >>> 6 & 63,
|
|
211
|
-
128 | x & 63
|
|
212
|
-
);
|
|
213
|
-
else if (x <= 2097151)
|
|
214
|
-
output += String.fromCharCode(
|
|
215
|
-
240 | x >>> 18 & 7,
|
|
216
|
-
128 | x >>> 12 & 63,
|
|
217
|
-
128 | x >>> 6 & 63,
|
|
218
|
-
128 | x & 63
|
|
219
|
-
);
|
|
220
|
-
}
|
|
221
|
-
return output;
|
|
174
|
+
var output = "";
|
|
175
|
+
var i = -1;
|
|
176
|
+
var x, y;
|
|
177
|
+
while (++i < input.length) {
|
|
178
|
+
x = input.charCodeAt(i);
|
|
179
|
+
y = i + 1 < input.length ? input.charCodeAt(i + 1) : 0;
|
|
180
|
+
if (55296 <= x && x <= 56319 && 56320 <= y && y <= 57343) {
|
|
181
|
+
x = 65536 + ((x & 1023) << 10) + (y & 1023);
|
|
182
|
+
i++;
|
|
183
|
+
}
|
|
184
|
+
if (x <= 127) output += String.fromCharCode(x);
|
|
185
|
+
else if (x <= 2047) output += String.fromCharCode(192 | x >>> 6 & 31, 128 | x & 63);
|
|
186
|
+
else if (x <= 65535) output += String.fromCharCode(224 | x >>> 12 & 15, 128 | x >>> 6 & 63, 128 | x & 63);
|
|
187
|
+
else if (x <= 2097151) output += String.fromCharCode(240 | x >>> 18 & 7, 128 | x >>> 12 & 63, 128 | x >>> 6 & 63, 128 | x & 63);
|
|
188
|
+
}
|
|
189
|
+
return output;
|
|
222
190
|
}
|
|
223
191
|
function rstr2binb$2(input) {
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
output[i >> 5] |= (input.charCodeAt(i / 8) & 255) << 24 - i % 32;
|
|
229
|
-
return output;
|
|
192
|
+
var output = Array(input.length >> 2);
|
|
193
|
+
for (var i = 0; i < output.length; i++) output[i] = 0;
|
|
194
|
+
for (var i = 0; i < input.length * 8; i += 8) output[i >> 5] |= (input.charCodeAt(i / 8) & 255) << 24 - i % 32;
|
|
195
|
+
return output;
|
|
230
196
|
}
|
|
231
197
|
function binb2rstr$2(input) {
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
return output;
|
|
198
|
+
var output = "";
|
|
199
|
+
for (var i = 0; i < input.length * 32; i += 8) output += String.fromCharCode(input[i >> 5] >>> 24 - i % 32 & 255);
|
|
200
|
+
return output;
|
|
236
201
|
}
|
|
237
202
|
function binb_sha1(x, len) {
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
e = safe_add$1(e, olde);
|
|
270
|
-
}
|
|
271
|
-
return Array(a, b, c, d, e);
|
|
203
|
+
x[len >> 5] |= 128 << 24 - len % 32;
|
|
204
|
+
x[(len + 64 >> 9 << 4) + 15] = len;
|
|
205
|
+
var w = Array(80);
|
|
206
|
+
var a = 1732584193;
|
|
207
|
+
var b = -271733879;
|
|
208
|
+
var c = -1732584194;
|
|
209
|
+
var d = 271733878;
|
|
210
|
+
var e = -1009589776;
|
|
211
|
+
for (var i = 0; i < x.length; i += 16) {
|
|
212
|
+
var olda = a;
|
|
213
|
+
var oldb = b;
|
|
214
|
+
var oldc = c;
|
|
215
|
+
var oldd = d;
|
|
216
|
+
var olde = e;
|
|
217
|
+
for (var j = 0; j < 80; j++) {
|
|
218
|
+
if (j < 16) w[j] = x[i + j];
|
|
219
|
+
else w[j] = bit_rol(w[j - 3] ^ w[j - 8] ^ w[j - 14] ^ w[j - 16], 1);
|
|
220
|
+
var t = safe_add$1(safe_add$1(bit_rol(a, 5), sha1_ft(j, b, c, d)), safe_add$1(safe_add$1(e, w[j]), sha1_kt(j)));
|
|
221
|
+
e = d;
|
|
222
|
+
d = c;
|
|
223
|
+
c = bit_rol(b, 30);
|
|
224
|
+
b = a;
|
|
225
|
+
a = t;
|
|
226
|
+
}
|
|
227
|
+
a = safe_add$1(a, olda);
|
|
228
|
+
b = safe_add$1(b, oldb);
|
|
229
|
+
c = safe_add$1(c, oldc);
|
|
230
|
+
d = safe_add$1(d, oldd);
|
|
231
|
+
e = safe_add$1(e, olde);
|
|
232
|
+
}
|
|
233
|
+
return Array(a, b, c, d, e);
|
|
272
234
|
}
|
|
273
235
|
function sha1_ft(t, b, c, d) {
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
236
|
+
if (t < 20) return b & c | ~b & d;
|
|
237
|
+
if (t < 40) return b ^ c ^ d;
|
|
238
|
+
if (t < 60) return b & c | b & d | c & d;
|
|
239
|
+
return b ^ c ^ d;
|
|
278
240
|
}
|
|
279
241
|
function sha1_kt(t) {
|
|
280
|
-
|
|
242
|
+
return t < 20 ? 1518500249 : t < 40 ? 1859775393 : t < 60 ? -1894007588 : -899497514;
|
|
281
243
|
}
|
|
282
244
|
function safe_add$1(x, y) {
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
return msw << 16 | lsw & 65535;
|
|
245
|
+
var lsw = (x & 65535) + (y & 65535);
|
|
246
|
+
return (x >> 16) + (y >> 16) + (lsw >> 16) << 16 | lsw & 65535;
|
|
286
247
|
}
|
|
287
248
|
function bit_rol(num, cnt) {
|
|
288
|
-
|
|
249
|
+
return num << cnt | num >>> 32 - cnt;
|
|
289
250
|
}
|
|
251
|
+
//#endregion
|
|
252
|
+
//#region src/crypto/sha256.mjs
|
|
290
253
|
var hexcase$1 = 0;
|
|
291
254
|
function hex_sha256(s) {
|
|
292
|
-
|
|
255
|
+
return rstr2hex$1(rstr_sha256(str2rstr_utf8$1(s)));
|
|
293
256
|
}
|
|
294
257
|
function rstr_sha256(s) {
|
|
295
|
-
|
|
258
|
+
return binb2rstr$1(binb_sha256(rstr2binb$1(s), s.length * 8));
|
|
296
259
|
}
|
|
297
260
|
function rstr2hex$1(input) {
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
for (var i = 0; i < input.length; i++) {
|
|
307
|
-
x = input.charCodeAt(i);
|
|
308
|
-
output += hex_tab.charAt(x >>> 4 & 15) + hex_tab.charAt(x & 15);
|
|
309
|
-
}
|
|
310
|
-
return output;
|
|
261
|
+
var hex_tab = hexcase$1 ? "0123456789ABCDEF" : "0123456789abcdef";
|
|
262
|
+
var output = "";
|
|
263
|
+
var x;
|
|
264
|
+
for (var i = 0; i < input.length; i++) {
|
|
265
|
+
x = input.charCodeAt(i);
|
|
266
|
+
output += hex_tab.charAt(x >>> 4 & 15) + hex_tab.charAt(x & 15);
|
|
267
|
+
}
|
|
268
|
+
return output;
|
|
311
269
|
}
|
|
312
270
|
function str2rstr_utf8$1(input) {
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
);
|
|
330
|
-
else if (x <= 65535)
|
|
331
|
-
output += String.fromCharCode(
|
|
332
|
-
224 | x >>> 12 & 15,
|
|
333
|
-
128 | x >>> 6 & 63,
|
|
334
|
-
128 | x & 63
|
|
335
|
-
);
|
|
336
|
-
else if (x <= 2097151)
|
|
337
|
-
output += String.fromCharCode(
|
|
338
|
-
240 | x >>> 18 & 7,
|
|
339
|
-
128 | x >>> 12 & 63,
|
|
340
|
-
128 | x >>> 6 & 63,
|
|
341
|
-
128 | x & 63
|
|
342
|
-
);
|
|
343
|
-
}
|
|
344
|
-
return output;
|
|
271
|
+
var output = "";
|
|
272
|
+
var i = -1;
|
|
273
|
+
var x, y;
|
|
274
|
+
while (++i < input.length) {
|
|
275
|
+
x = input.charCodeAt(i);
|
|
276
|
+
y = i + 1 < input.length ? input.charCodeAt(i + 1) : 0;
|
|
277
|
+
if (55296 <= x && x <= 56319 && 56320 <= y && y <= 57343) {
|
|
278
|
+
x = 65536 + ((x & 1023) << 10) + (y & 1023);
|
|
279
|
+
i++;
|
|
280
|
+
}
|
|
281
|
+
if (x <= 127) output += String.fromCharCode(x);
|
|
282
|
+
else if (x <= 2047) output += String.fromCharCode(192 | x >>> 6 & 31, 128 | x & 63);
|
|
283
|
+
else if (x <= 65535) output += String.fromCharCode(224 | x >>> 12 & 15, 128 | x >>> 6 & 63, 128 | x & 63);
|
|
284
|
+
else if (x <= 2097151) output += String.fromCharCode(240 | x >>> 18 & 7, 128 | x >>> 12 & 63, 128 | x >>> 6 & 63, 128 | x & 63);
|
|
285
|
+
}
|
|
286
|
+
return output;
|
|
345
287
|
}
|
|
346
288
|
function rstr2binb$1(input) {
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
output[i >> 5] |= (input.charCodeAt(i / 8) & 255) << 24 - i % 32;
|
|
352
|
-
return output;
|
|
289
|
+
var output = Array(input.length >> 2);
|
|
290
|
+
for (var i = 0; i < output.length; i++) output[i] = 0;
|
|
291
|
+
for (var i = 0; i < input.length * 8; i += 8) output[i >> 5] |= (input.charCodeAt(i / 8) & 255) << 24 - i % 32;
|
|
292
|
+
return output;
|
|
353
293
|
}
|
|
354
294
|
function binb2rstr$1(input) {
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
return output;
|
|
295
|
+
var output = "";
|
|
296
|
+
for (var i = 0; i < input.length * 32; i += 8) output += String.fromCharCode(input[i >> 5] >>> 24 - i % 32 & 255);
|
|
297
|
+
return output;
|
|
359
298
|
}
|
|
360
299
|
function sha256_S(X, n) {
|
|
361
|
-
|
|
300
|
+
return X >>> n | X << 32 - n;
|
|
362
301
|
}
|
|
363
302
|
function sha256_R(X, n) {
|
|
364
|
-
|
|
303
|
+
return X >>> n;
|
|
365
304
|
}
|
|
366
305
|
function sha256_Ch(x, y, z) {
|
|
367
|
-
|
|
306
|
+
return x & y ^ ~x & z;
|
|
368
307
|
}
|
|
369
308
|
function sha256_Maj(x, y, z) {
|
|
370
|
-
|
|
309
|
+
return x & y ^ x & z ^ y & z;
|
|
371
310
|
}
|
|
372
311
|
function sha256_Sigma0256(x) {
|
|
373
|
-
|
|
312
|
+
return sha256_S(x, 2) ^ sha256_S(x, 13) ^ sha256_S(x, 22);
|
|
374
313
|
}
|
|
375
314
|
function sha256_Sigma1256(x) {
|
|
376
|
-
|
|
315
|
+
return sha256_S(x, 6) ^ sha256_S(x, 11) ^ sha256_S(x, 25);
|
|
377
316
|
}
|
|
378
317
|
function sha256_Gamma0256(x) {
|
|
379
|
-
|
|
318
|
+
return sha256_S(x, 7) ^ sha256_S(x, 18) ^ sha256_R(x, 3);
|
|
380
319
|
}
|
|
381
320
|
function sha256_Gamma1256(x) {
|
|
382
|
-
|
|
383
|
-
}
|
|
384
|
-
var sha256_K = new Array(
|
|
385
|
-
1116352408,
|
|
386
|
-
1899447441,
|
|
387
|
-
-1245643825,
|
|
388
|
-
-373957723,
|
|
389
|
-
961987163,
|
|
390
|
-
1508970993,
|
|
391
|
-
-1841331548,
|
|
392
|
-
-1424204075,
|
|
393
|
-
-670586216,
|
|
394
|
-
310598401,
|
|
395
|
-
607225278,
|
|
396
|
-
1426881987,
|
|
397
|
-
1925078388,
|
|
398
|
-
-2132889090,
|
|
399
|
-
-1680079193,
|
|
400
|
-
-1046744716,
|
|
401
|
-
-459576895,
|
|
402
|
-
-272742522,
|
|
403
|
-
264347078,
|
|
404
|
-
604807628,
|
|
405
|
-
770255983,
|
|
406
|
-
1249150122,
|
|
407
|
-
1555081692,
|
|
408
|
-
1996064986,
|
|
409
|
-
-1740746414,
|
|
410
|
-
-1473132947,
|
|
411
|
-
-1341970488,
|
|
412
|
-
-1084653625,
|
|
413
|
-
-958395405,
|
|
414
|
-
-710438585,
|
|
415
|
-
113926993,
|
|
416
|
-
338241895,
|
|
417
|
-
666307205,
|
|
418
|
-
773529912,
|
|
419
|
-
1294757372,
|
|
420
|
-
1396182291,
|
|
421
|
-
1695183700,
|
|
422
|
-
1986661051,
|
|
423
|
-
-2117940946,
|
|
424
|
-
-1838011259,
|
|
425
|
-
-1564481375,
|
|
426
|
-
-1474664885,
|
|
427
|
-
-1035236496,
|
|
428
|
-
-949202525,
|
|
429
|
-
-778901479,
|
|
430
|
-
-694614492,
|
|
431
|
-
-200395387,
|
|
432
|
-
275423344,
|
|
433
|
-
430227734,
|
|
434
|
-
506948616,
|
|
435
|
-
659060556,
|
|
436
|
-
883997877,
|
|
437
|
-
958139571,
|
|
438
|
-
1322822218,
|
|
439
|
-
1537002063,
|
|
440
|
-
1747873779,
|
|
441
|
-
1955562222,
|
|
442
|
-
2024104815,
|
|
443
|
-
-2067236844,
|
|
444
|
-
-1933114872,
|
|
445
|
-
-1866530822,
|
|
446
|
-
-1538233109,
|
|
447
|
-
-1090935817,
|
|
448
|
-
-965641998
|
|
449
|
-
);
|
|
321
|
+
return sha256_S(x, 17) ^ sha256_S(x, 19) ^ sha256_R(x, 10);
|
|
322
|
+
}
|
|
323
|
+
var sha256_K = new Array(1116352408, 1899447441, -1245643825, -373957723, 961987163, 1508970993, -1841331548, -1424204075, -670586216, 310598401, 607225278, 1426881987, 1925078388, -2132889090, -1680079193, -1046744716, -459576895, -272742522, 264347078, 604807628, 770255983, 1249150122, 1555081692, 1996064986, -1740746414, -1473132947, -1341970488, -1084653625, -958395405, -710438585, 113926993, 338241895, 666307205, 773529912, 1294757372, 1396182291, 1695183700, 1986661051, -2117940946, -1838011259, -1564481375, -1474664885, -1035236496, -949202525, -778901479, -694614492, -200395387, 275423344, 430227734, 506948616, 659060556, 883997877, 958139571, 1322822218, 1537002063, 1747873779, 1955562222, 2024104815, -2067236844, -1933114872, -1866530822, -1538233109, -1090935817, -965641998);
|
|
450
324
|
function binb_sha256(m, l) {
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
d = c;
|
|
491
|
-
c = b;
|
|
492
|
-
b = a;
|
|
493
|
-
a = safe_add(T1, T2);
|
|
494
|
-
}
|
|
495
|
-
HASH[0] = safe_add(a, HASH[0]);
|
|
496
|
-
HASH[1] = safe_add(b, HASH[1]);
|
|
497
|
-
HASH[2] = safe_add(c, HASH[2]);
|
|
498
|
-
HASH[3] = safe_add(d, HASH[3]);
|
|
499
|
-
HASH[4] = safe_add(e, HASH[4]);
|
|
500
|
-
HASH[5] = safe_add(f, HASH[5]);
|
|
501
|
-
HASH[6] = safe_add(g, HASH[6]);
|
|
502
|
-
HASH[7] = safe_add(h, HASH[7]);
|
|
503
|
-
}
|
|
504
|
-
return HASH;
|
|
325
|
+
var HASH = new Array(1779033703, -1150833019, 1013904242, -1521486534, 1359893119, -1694144372, 528734635, 1541459225);
|
|
326
|
+
var W = new Array(64);
|
|
327
|
+
var a, b, c, d, e, f, g, h;
|
|
328
|
+
var i, j, T1, T2;
|
|
329
|
+
m[l >> 5] |= 128 << 24 - l % 32;
|
|
330
|
+
m[(l + 64 >> 9 << 4) + 15] = l;
|
|
331
|
+
for (i = 0; i < m.length; i += 16) {
|
|
332
|
+
a = HASH[0];
|
|
333
|
+
b = HASH[1];
|
|
334
|
+
c = HASH[2];
|
|
335
|
+
d = HASH[3];
|
|
336
|
+
e = HASH[4];
|
|
337
|
+
f = HASH[5];
|
|
338
|
+
g = HASH[6];
|
|
339
|
+
h = HASH[7];
|
|
340
|
+
for (j = 0; j < 64; j++) {
|
|
341
|
+
if (j < 16) W[j] = m[j + i];
|
|
342
|
+
else W[j] = safe_add(safe_add(safe_add(sha256_Gamma1256(W[j - 2]), W[j - 7]), sha256_Gamma0256(W[j - 15])), W[j - 16]);
|
|
343
|
+
T1 = safe_add(safe_add(safe_add(safe_add(h, sha256_Sigma1256(e)), sha256_Ch(e, f, g)), sha256_K[j]), W[j]);
|
|
344
|
+
T2 = safe_add(sha256_Sigma0256(a), sha256_Maj(a, b, c));
|
|
345
|
+
h = g;
|
|
346
|
+
g = f;
|
|
347
|
+
f = e;
|
|
348
|
+
e = safe_add(d, T1);
|
|
349
|
+
d = c;
|
|
350
|
+
c = b;
|
|
351
|
+
b = a;
|
|
352
|
+
a = safe_add(T1, T2);
|
|
353
|
+
}
|
|
354
|
+
HASH[0] = safe_add(a, HASH[0]);
|
|
355
|
+
HASH[1] = safe_add(b, HASH[1]);
|
|
356
|
+
HASH[2] = safe_add(c, HASH[2]);
|
|
357
|
+
HASH[3] = safe_add(d, HASH[3]);
|
|
358
|
+
HASH[4] = safe_add(e, HASH[4]);
|
|
359
|
+
HASH[5] = safe_add(f, HASH[5]);
|
|
360
|
+
HASH[6] = safe_add(g, HASH[6]);
|
|
361
|
+
HASH[7] = safe_add(h, HASH[7]);
|
|
362
|
+
}
|
|
363
|
+
return HASH;
|
|
505
364
|
}
|
|
506
365
|
function safe_add(x, y) {
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
return msw << 16 | lsw & 65535;
|
|
366
|
+
var lsw = (x & 65535) + (y & 65535);
|
|
367
|
+
return (x >> 16) + (y >> 16) + (lsw >> 16) << 16 | lsw & 65535;
|
|
510
368
|
}
|
|
369
|
+
//#endregion
|
|
370
|
+
//#region src/crypto/sha512.mjs
|
|
511
371
|
var hexcase = 0;
|
|
512
372
|
function hex_sha512(s) {
|
|
513
|
-
|
|
373
|
+
return rstr2hex(rstr_sha512(str2rstr_utf8(s)));
|
|
514
374
|
}
|
|
515
375
|
function rstr_sha512(s) {
|
|
516
|
-
|
|
376
|
+
return binb2rstr(binb_sha512(rstr2binb(s), s.length * 8));
|
|
517
377
|
}
|
|
518
378
|
function rstr2hex(input) {
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
for (var i = 0; i < input.length; i++) {
|
|
528
|
-
x = input.charCodeAt(i);
|
|
529
|
-
output += hex_tab.charAt(x >>> 4 & 15) + hex_tab.charAt(x & 15);
|
|
530
|
-
}
|
|
531
|
-
return output;
|
|
379
|
+
var hex_tab = hexcase ? "0123456789ABCDEF" : "0123456789abcdef";
|
|
380
|
+
var output = "";
|
|
381
|
+
var x;
|
|
382
|
+
for (var i = 0; i < input.length; i++) {
|
|
383
|
+
x = input.charCodeAt(i);
|
|
384
|
+
output += hex_tab.charAt(x >>> 4 & 15) + hex_tab.charAt(x & 15);
|
|
385
|
+
}
|
|
386
|
+
return output;
|
|
532
387
|
}
|
|
533
388
|
function str2rstr_utf8(input) {
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
);
|
|
551
|
-
else if (x <= 65535)
|
|
552
|
-
output += String.fromCharCode(
|
|
553
|
-
224 | x >>> 12 & 15,
|
|
554
|
-
128 | x >>> 6 & 63,
|
|
555
|
-
128 | x & 63
|
|
556
|
-
);
|
|
557
|
-
else if (x <= 2097151)
|
|
558
|
-
output += String.fromCharCode(
|
|
559
|
-
240 | x >>> 18 & 7,
|
|
560
|
-
128 | x >>> 12 & 63,
|
|
561
|
-
128 | x >>> 6 & 63,
|
|
562
|
-
128 | x & 63
|
|
563
|
-
);
|
|
564
|
-
}
|
|
565
|
-
return output;
|
|
389
|
+
var output = "";
|
|
390
|
+
var i = -1;
|
|
391
|
+
var x, y;
|
|
392
|
+
while (++i < input.length) {
|
|
393
|
+
x = input.charCodeAt(i);
|
|
394
|
+
y = i + 1 < input.length ? input.charCodeAt(i + 1) : 0;
|
|
395
|
+
if (55296 <= x && x <= 56319 && 56320 <= y && y <= 57343) {
|
|
396
|
+
x = 65536 + ((x & 1023) << 10) + (y & 1023);
|
|
397
|
+
i++;
|
|
398
|
+
}
|
|
399
|
+
if (x <= 127) output += String.fromCharCode(x);
|
|
400
|
+
else if (x <= 2047) output += String.fromCharCode(192 | x >>> 6 & 31, 128 | x & 63);
|
|
401
|
+
else if (x <= 65535) output += String.fromCharCode(224 | x >>> 12 & 15, 128 | x >>> 6 & 63, 128 | x & 63);
|
|
402
|
+
else if (x <= 2097151) output += String.fromCharCode(240 | x >>> 18 & 7, 128 | x >>> 12 & 63, 128 | x >>> 6 & 63, 128 | x & 63);
|
|
403
|
+
}
|
|
404
|
+
return output;
|
|
566
405
|
}
|
|
567
406
|
function rstr2binb(input) {
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
output[i >> 5] |= (input.charCodeAt(i / 8) & 255) << 24 - i % 32;
|
|
573
|
-
return output;
|
|
407
|
+
var output = Array(input.length >> 2);
|
|
408
|
+
for (var i = 0; i < output.length; i++) output[i] = 0;
|
|
409
|
+
for (var i = 0; i < input.length * 8; i += 8) output[i >> 5] |= (input.charCodeAt(i / 8) & 255) << 24 - i % 32;
|
|
410
|
+
return output;
|
|
574
411
|
}
|
|
575
412
|
function binb2rstr(input) {
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
return output;
|
|
413
|
+
var output = "";
|
|
414
|
+
for (var i = 0; i < input.length * 32; i += 8) output += String.fromCharCode(input[i >> 5] >>> 24 - i % 32 & 255);
|
|
415
|
+
return output;
|
|
580
416
|
}
|
|
581
417
|
var sha512_k;
|
|
582
418
|
function binb_sha512(x, len) {
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
new int64(852142971, 1086792851),
|
|
659
|
-
new int64(1017036298, 365543100),
|
|
660
|
-
new int64(1126000580, -1676669620),
|
|
661
|
-
new int64(1288033470, -885112138),
|
|
662
|
-
new int64(1501505948, -60457430),
|
|
663
|
-
new int64(1607167915, 987167468),
|
|
664
|
-
new int64(1816402316, 1246189591)
|
|
665
|
-
);
|
|
666
|
-
}
|
|
667
|
-
var H = new Array(
|
|
668
|
-
new int64(1779033703, -205731576),
|
|
669
|
-
new int64(-1150833019, -2067093701),
|
|
670
|
-
new int64(1013904242, -23791573),
|
|
671
|
-
new int64(-1521486534, 1595750129),
|
|
672
|
-
new int64(1359893119, -1377402159),
|
|
673
|
-
new int64(-1694144372, 725511199),
|
|
674
|
-
new int64(528734635, -79577749),
|
|
675
|
-
new int64(1541459225, 327033209)
|
|
676
|
-
);
|
|
677
|
-
var T1 = new int64(0, 0), T2 = new int64(0, 0), a = new int64(0, 0), b = new int64(0, 0), c = new int64(0, 0), d = new int64(0, 0), e = new int64(0, 0), f = new int64(0, 0), g = new int64(0, 0), h = new int64(0, 0), s0 = new int64(0, 0), s1 = new int64(0, 0), Ch = new int64(0, 0), Maj = new int64(0, 0), r1 = new int64(0, 0), r2 = new int64(0, 0), r3 = new int64(0, 0);
|
|
678
|
-
var j, i;
|
|
679
|
-
var W = new Array(80);
|
|
680
|
-
for (i = 0; i < 80; i++)
|
|
681
|
-
W[i] = new int64(0, 0);
|
|
682
|
-
x[len >> 5] |= 128 << 24 - (len & 31);
|
|
683
|
-
x[(len + 128 >> 10 << 5) + 31] = len;
|
|
684
|
-
for (i = 0; i < x.length; i += 32) {
|
|
685
|
-
int64copy(a, H[0]);
|
|
686
|
-
int64copy(b, H[1]);
|
|
687
|
-
int64copy(c, H[2]);
|
|
688
|
-
int64copy(d, H[3]);
|
|
689
|
-
int64copy(e, H[4]);
|
|
690
|
-
int64copy(f, H[5]);
|
|
691
|
-
int64copy(g, H[6]);
|
|
692
|
-
int64copy(h, H[7]);
|
|
693
|
-
for (j = 0; j < 16; j++) {
|
|
694
|
-
W[j].h = x[i + 2 * j];
|
|
695
|
-
W[j].l = x[i + 2 * j + 1];
|
|
696
|
-
}
|
|
697
|
-
for (j = 16; j < 80; j++) {
|
|
698
|
-
int64rrot(r1, W[j - 2], 19);
|
|
699
|
-
int64revrrot(r2, W[j - 2], 29);
|
|
700
|
-
int64shr(r3, W[j - 2], 6);
|
|
701
|
-
s1.l = r1.l ^ r2.l ^ r3.l;
|
|
702
|
-
s1.h = r1.h ^ r2.h ^ r3.h;
|
|
703
|
-
int64rrot(r1, W[j - 15], 1);
|
|
704
|
-
int64rrot(r2, W[j - 15], 8);
|
|
705
|
-
int64shr(r3, W[j - 15], 7);
|
|
706
|
-
s0.l = r1.l ^ r2.l ^ r3.l;
|
|
707
|
-
s0.h = r1.h ^ r2.h ^ r3.h;
|
|
708
|
-
int64add4(W[j], s1, W[j - 7], s0, W[j - 16]);
|
|
709
|
-
}
|
|
710
|
-
for (j = 0; j < 80; j++) {
|
|
711
|
-
Ch.l = e.l & f.l ^ ~e.l & g.l;
|
|
712
|
-
Ch.h = e.h & f.h ^ ~e.h & g.h;
|
|
713
|
-
int64rrot(r1, e, 14);
|
|
714
|
-
int64rrot(r2, e, 18);
|
|
715
|
-
int64revrrot(r3, e, 9);
|
|
716
|
-
s1.l = r1.l ^ r2.l ^ r3.l;
|
|
717
|
-
s1.h = r1.h ^ r2.h ^ r3.h;
|
|
718
|
-
int64rrot(r1, a, 28);
|
|
719
|
-
int64revrrot(r2, a, 2);
|
|
720
|
-
int64revrrot(r3, a, 7);
|
|
721
|
-
s0.l = r1.l ^ r2.l ^ r3.l;
|
|
722
|
-
s0.h = r1.h ^ r2.h ^ r3.h;
|
|
723
|
-
Maj.l = a.l & b.l ^ a.l & c.l ^ b.l & c.l;
|
|
724
|
-
Maj.h = a.h & b.h ^ a.h & c.h ^ b.h & c.h;
|
|
725
|
-
int64add5(T1, h, s1, Ch, sha512_k[j], W[j]);
|
|
726
|
-
int64add(T2, s0, Maj);
|
|
727
|
-
int64copy(h, g);
|
|
728
|
-
int64copy(g, f);
|
|
729
|
-
int64copy(f, e);
|
|
730
|
-
int64add(e, d, T1);
|
|
731
|
-
int64copy(d, c);
|
|
732
|
-
int64copy(c, b);
|
|
733
|
-
int64copy(b, a);
|
|
734
|
-
int64add(a, T1, T2);
|
|
735
|
-
}
|
|
736
|
-
int64add(H[0], H[0], a);
|
|
737
|
-
int64add(H[1], H[1], b);
|
|
738
|
-
int64add(H[2], H[2], c);
|
|
739
|
-
int64add(H[3], H[3], d);
|
|
740
|
-
int64add(H[4], H[4], e);
|
|
741
|
-
int64add(H[5], H[5], f);
|
|
742
|
-
int64add(H[6], H[6], g);
|
|
743
|
-
int64add(H[7], H[7], h);
|
|
744
|
-
}
|
|
745
|
-
var hash = new Array(16);
|
|
746
|
-
for (i = 0; i < 8; i++) {
|
|
747
|
-
hash[2 * i] = H[i].h;
|
|
748
|
-
hash[2 * i + 1] = H[i].l;
|
|
749
|
-
}
|
|
750
|
-
return hash;
|
|
419
|
+
if (sha512_k == void 0) sha512_k = new Array(new int64(1116352408, -685199838), new int64(1899447441, 602891725), new int64(-1245643825, -330482897), new int64(-373957723, -2121671748), new int64(961987163, -213338824), new int64(1508970993, -1241133031), new int64(-1841331548, -1357295717), new int64(-1424204075, -630357736), new int64(-670586216, -1560083902), new int64(310598401, 1164996542), new int64(607225278, 1323610764), new int64(1426881987, -704662302), new int64(1925078388, -226784913), new int64(-2132889090, 991336113), new int64(-1680079193, 633803317), new int64(-1046744716, -815192428), new int64(-459576895, -1628353838), new int64(-272742522, 944711139), new int64(264347078, -1953704523), new int64(604807628, 2007800933), new int64(770255983, 1495990901), new int64(1249150122, 1856431235), new int64(1555081692, -1119749164), new int64(1996064986, -2096016459), new int64(-1740746414, -295247957), new int64(-1473132947, 766784016), new int64(-1341970488, -1728372417), new int64(-1084653625, -1091629340), new int64(-958395405, 1034457026), new int64(-710438585, -1828018395), new int64(113926993, -536640913), new int64(338241895, 168717936), new int64(666307205, 1188179964), new int64(773529912, 1546045734), new int64(1294757372, 1522805485), new int64(1396182291, -1651133473), new int64(1695183700, -1951439906), new int64(1986661051, 1014477480), new int64(-2117940946, 1206759142), new int64(-1838011259, 344077627), new int64(-1564481375, 1290863460), new int64(-1474664885, -1136513023), new int64(-1035236496, -789014639), new int64(-949202525, 106217008), new int64(-778901479, -688958952), new int64(-694614492, 1432725776), new int64(-200395387, 1467031594), new int64(275423344, 851169720), new int64(430227734, -1194143544), new int64(506948616, 1363258195), new int64(659060556, -544281703), new int64(883997877, -509917016), new int64(958139571, -976659869), new int64(1322822218, -482243893), new int64(1537002063, 2003034995), new int64(1747873779, -692930397), new int64(1955562222, 1575990012), new int64(2024104815, 1125592928), new int64(-2067236844, -1578062990), new int64(-1933114872, 442776044), new int64(-1866530822, 593698344), new int64(-1538233109, -561857047), new int64(-1090935817, -1295615723), new int64(-965641998, -479046869), new int64(-903397682, -366583396), new int64(-779700025, 566280711), new int64(-354779690, -840897762), new int64(-176337025, -294727304), new int64(116418474, 1914138554), new int64(174292421, -1563912026), new int64(289380356, -1090974290), new int64(460393269, 320620315), new int64(685471733, 587496836), new int64(852142971, 1086792851), new int64(1017036298, 365543100), new int64(1126000580, -1676669620), new int64(1288033470, -885112138), new int64(1501505948, -60457430), new int64(1607167915, 987167468), new int64(1816402316, 1246189591));
|
|
420
|
+
var H = new Array(new int64(1779033703, -205731576), new int64(-1150833019, -2067093701), new int64(1013904242, -23791573), new int64(-1521486534, 1595750129), new int64(1359893119, -1377402159), new int64(-1694144372, 725511199), new int64(528734635, -79577749), new int64(1541459225, 327033209));
|
|
421
|
+
var T1 = new int64(0, 0), T2 = new int64(0, 0), a = new int64(0, 0), b = new int64(0, 0), c = new int64(0, 0), d = new int64(0, 0), e = new int64(0, 0), f = new int64(0, 0), g = new int64(0, 0), h = new int64(0, 0), s0 = new int64(0, 0), s1 = new int64(0, 0), Ch = new int64(0, 0), Maj = new int64(0, 0), r1 = new int64(0, 0), r2 = new int64(0, 0), r3 = new int64(0, 0);
|
|
422
|
+
var j, i;
|
|
423
|
+
var W = new Array(80);
|
|
424
|
+
for (i = 0; i < 80; i++) W[i] = new int64(0, 0);
|
|
425
|
+
x[len >> 5] |= 128 << 24 - (len & 31);
|
|
426
|
+
x[(len + 128 >> 10 << 5) + 31] = len;
|
|
427
|
+
for (i = 0; i < x.length; i += 32) {
|
|
428
|
+
int64copy(a, H[0]);
|
|
429
|
+
int64copy(b, H[1]);
|
|
430
|
+
int64copy(c, H[2]);
|
|
431
|
+
int64copy(d, H[3]);
|
|
432
|
+
int64copy(e, H[4]);
|
|
433
|
+
int64copy(f, H[5]);
|
|
434
|
+
int64copy(g, H[6]);
|
|
435
|
+
int64copy(h, H[7]);
|
|
436
|
+
for (j = 0; j < 16; j++) {
|
|
437
|
+
W[j].h = x[i + 2 * j];
|
|
438
|
+
W[j].l = x[i + 2 * j + 1];
|
|
439
|
+
}
|
|
440
|
+
for (j = 16; j < 80; j++) {
|
|
441
|
+
int64rrot(r1, W[j - 2], 19);
|
|
442
|
+
int64revrrot(r2, W[j - 2], 29);
|
|
443
|
+
int64shr(r3, W[j - 2], 6);
|
|
444
|
+
s1.l = r1.l ^ r2.l ^ r3.l;
|
|
445
|
+
s1.h = r1.h ^ r2.h ^ r3.h;
|
|
446
|
+
int64rrot(r1, W[j - 15], 1);
|
|
447
|
+
int64rrot(r2, W[j - 15], 8);
|
|
448
|
+
int64shr(r3, W[j - 15], 7);
|
|
449
|
+
s0.l = r1.l ^ r2.l ^ r3.l;
|
|
450
|
+
s0.h = r1.h ^ r2.h ^ r3.h;
|
|
451
|
+
int64add4(W[j], s1, W[j - 7], s0, W[j - 16]);
|
|
452
|
+
}
|
|
453
|
+
for (j = 0; j < 80; j++) {
|
|
454
|
+
Ch.l = e.l & f.l ^ ~e.l & g.l;
|
|
455
|
+
Ch.h = e.h & f.h ^ ~e.h & g.h;
|
|
456
|
+
int64rrot(r1, e, 14);
|
|
457
|
+
int64rrot(r2, e, 18);
|
|
458
|
+
int64revrrot(r3, e, 9);
|
|
459
|
+
s1.l = r1.l ^ r2.l ^ r3.l;
|
|
460
|
+
s1.h = r1.h ^ r2.h ^ r3.h;
|
|
461
|
+
int64rrot(r1, a, 28);
|
|
462
|
+
int64revrrot(r2, a, 2);
|
|
463
|
+
int64revrrot(r3, a, 7);
|
|
464
|
+
s0.l = r1.l ^ r2.l ^ r3.l;
|
|
465
|
+
s0.h = r1.h ^ r2.h ^ r3.h;
|
|
466
|
+
Maj.l = a.l & b.l ^ a.l & c.l ^ b.l & c.l;
|
|
467
|
+
Maj.h = a.h & b.h ^ a.h & c.h ^ b.h & c.h;
|
|
468
|
+
int64add5(T1, h, s1, Ch, sha512_k[j], W[j]);
|
|
469
|
+
int64add(T2, s0, Maj);
|
|
470
|
+
int64copy(h, g);
|
|
471
|
+
int64copy(g, f);
|
|
472
|
+
int64copy(f, e);
|
|
473
|
+
int64add(e, d, T1);
|
|
474
|
+
int64copy(d, c);
|
|
475
|
+
int64copy(c, b);
|
|
476
|
+
int64copy(b, a);
|
|
477
|
+
int64add(a, T1, T2);
|
|
478
|
+
}
|
|
479
|
+
int64add(H[0], H[0], a);
|
|
480
|
+
int64add(H[1], H[1], b);
|
|
481
|
+
int64add(H[2], H[2], c);
|
|
482
|
+
int64add(H[3], H[3], d);
|
|
483
|
+
int64add(H[4], H[4], e);
|
|
484
|
+
int64add(H[5], H[5], f);
|
|
485
|
+
int64add(H[6], H[6], g);
|
|
486
|
+
int64add(H[7], H[7], h);
|
|
487
|
+
}
|
|
488
|
+
var hash = new Array(16);
|
|
489
|
+
for (i = 0; i < 8; i++) {
|
|
490
|
+
hash[2 * i] = H[i].h;
|
|
491
|
+
hash[2 * i + 1] = H[i].l;
|
|
492
|
+
}
|
|
493
|
+
return hash;
|
|
751
494
|
}
|
|
752
495
|
function int64(h, l) {
|
|
753
|
-
|
|
754
|
-
|
|
496
|
+
this.h = h;
|
|
497
|
+
this.l = l;
|
|
755
498
|
}
|
|
756
499
|
function int64copy(dst, src) {
|
|
757
|
-
|
|
758
|
-
|
|
500
|
+
dst.h = src.h;
|
|
501
|
+
dst.l = src.l;
|
|
759
502
|
}
|
|
760
503
|
function int64rrot(dst, x, shift) {
|
|
761
|
-
|
|
762
|
-
|
|
504
|
+
dst.l = x.l >>> shift | x.h << 32 - shift;
|
|
505
|
+
dst.h = x.h >>> shift | x.l << 32 - shift;
|
|
763
506
|
}
|
|
764
507
|
function int64revrrot(dst, x, shift) {
|
|
765
|
-
|
|
766
|
-
|
|
508
|
+
dst.l = x.h >>> shift | x.l << 32 - shift;
|
|
509
|
+
dst.h = x.l >>> shift | x.h << 32 - shift;
|
|
767
510
|
}
|
|
768
511
|
function int64shr(dst, x, shift) {
|
|
769
|
-
|
|
770
|
-
|
|
512
|
+
dst.l = x.l >>> shift | x.h << 32 - shift;
|
|
513
|
+
dst.h = x.h >>> shift;
|
|
771
514
|
}
|
|
772
515
|
function int64add(dst, x, y) {
|
|
773
|
-
|
|
774
|
-
|
|
775
|
-
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
|
|
516
|
+
var w0 = (x.l & 65535) + (y.l & 65535);
|
|
517
|
+
var w1 = (x.l >>> 16) + (y.l >>> 16) + (w0 >>> 16);
|
|
518
|
+
var w2 = (x.h & 65535) + (y.h & 65535) + (w1 >>> 16);
|
|
519
|
+
var w3 = (x.h >>> 16) + (y.h >>> 16) + (w2 >>> 16);
|
|
520
|
+
dst.l = w0 & 65535 | w1 << 16;
|
|
521
|
+
dst.h = w2 & 65535 | w3 << 16;
|
|
779
522
|
}
|
|
780
523
|
function int64add4(dst, a, b, c, d) {
|
|
781
|
-
|
|
782
|
-
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
|
|
786
|
-
|
|
524
|
+
var w0 = (a.l & 65535) + (b.l & 65535) + (c.l & 65535) + (d.l & 65535);
|
|
525
|
+
var w1 = (a.l >>> 16) + (b.l >>> 16) + (c.l >>> 16) + (d.l >>> 16) + (w0 >>> 16);
|
|
526
|
+
var w2 = (a.h & 65535) + (b.h & 65535) + (c.h & 65535) + (d.h & 65535) + (w1 >>> 16);
|
|
527
|
+
var w3 = (a.h >>> 16) + (b.h >>> 16) + (c.h >>> 16) + (d.h >>> 16) + (w2 >>> 16);
|
|
528
|
+
dst.l = w0 & 65535 | w1 << 16;
|
|
529
|
+
dst.h = w2 & 65535 | w3 << 16;
|
|
787
530
|
}
|
|
788
531
|
function int64add5(dst, a, b, c, d, e) {
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
}
|
|
532
|
+
var w0 = (a.l & 65535) + (b.l & 65535) + (c.l & 65535) + (d.l & 65535) + (e.l & 65535);
|
|
533
|
+
var w1 = (a.l >>> 16) + (b.l >>> 16) + (c.l >>> 16) + (d.l >>> 16) + (e.l >>> 16) + (w0 >>> 16);
|
|
534
|
+
var w2 = (a.h & 65535) + (b.h & 65535) + (c.h & 65535) + (d.h & 65535) + (e.h & 65535) + (w1 >>> 16);
|
|
535
|
+
var w3 = (a.h >>> 16) + (b.h >>> 16) + (c.h >>> 16) + (d.h >>> 16) + (e.h >>> 16) + (w2 >>> 16);
|
|
536
|
+
dst.l = w0 & 65535 | w1 << 16;
|
|
537
|
+
dst.h = w2 & 65535 | w3 << 16;
|
|
538
|
+
}
|
|
539
|
+
//#endregion
|
|
540
|
+
//#region src/crypto.ts
|
|
541
|
+
/**
|
|
542
|
+
* 计算字符串的 MD5 哈希值
|
|
543
|
+
* @param input - 需要计算哈希值的字符串
|
|
544
|
+
* @returns 返回 32 个字符的十六进制 MD5 哈希值
|
|
545
|
+
* @example
|
|
546
|
+
* ```typescript
|
|
547
|
+
* const hash = md5String('hello world');
|
|
548
|
+
* console.log(hash); // '5eb63bbbe01eeed093cb22bb8f5acdc3'
|
|
549
|
+
* ```
|
|
550
|
+
*/
|
|
796
551
|
function md5String(input) {
|
|
797
|
-
|
|
798
|
-
}
|
|
552
|
+
return hex_md5(input);
|
|
553
|
+
}
|
|
554
|
+
/**
|
|
555
|
+
* 计算字符串的 SHA1 哈希值
|
|
556
|
+
* @param input - 需要计算哈希值的字符串
|
|
557
|
+
* @returns 返回 40 个字符的十六进制 SHA1 哈希值
|
|
558
|
+
* @example
|
|
559
|
+
* ```typescript
|
|
560
|
+
* const hash = sha1String('hello world');
|
|
561
|
+
* console.log(hash); // '2aae6c35c94fcfb415dbe95f408b9ce91ee846ed'
|
|
562
|
+
* ```
|
|
563
|
+
*/
|
|
799
564
|
function sha1String(input) {
|
|
800
|
-
|
|
801
|
-
}
|
|
565
|
+
return hex_sha1(input);
|
|
566
|
+
}
|
|
567
|
+
/**
|
|
568
|
+
* 计算字符串的 SHA256 哈希值
|
|
569
|
+
* @param input - 需要计算哈希值的字符串
|
|
570
|
+
* @returns 返回 64 个字符的十六进制 SHA256 哈希值
|
|
571
|
+
* @example
|
|
572
|
+
* ```typescript
|
|
573
|
+
* const hash = sha256String('hello world');
|
|
574
|
+
* console.log(hash); // 'b94d27b9934d3e08a52e52d7da7dabfac484efe37a5380ee9088f7ace2efcde9'
|
|
575
|
+
* ```
|
|
576
|
+
*/
|
|
802
577
|
function sha256String(input) {
|
|
803
|
-
|
|
804
|
-
}
|
|
578
|
+
return hex_sha256(input);
|
|
579
|
+
}
|
|
580
|
+
/**
|
|
581
|
+
* 计算字符串的 SHA512 哈希值
|
|
582
|
+
* @param input - 需要计算哈希值的字符串
|
|
583
|
+
* @returns 返回 128 个字符的十六进制 SHA512 哈希值
|
|
584
|
+
* @example
|
|
585
|
+
* ```typescript
|
|
586
|
+
* const hash = sha512String('hello world');
|
|
587
|
+
* console.log(hash); // '309ecc489c12d6eb4cc40f50c902f2b4d0ed77ee511a7c7a9bcd3ca86d4cd86f989dd35bc5ff499670da34255b45b0cfd830e81f605dcf7dc5542e93ae9cd76f'
|
|
588
|
+
* ```
|
|
589
|
+
*/
|
|
805
590
|
function sha512String(input) {
|
|
806
|
-
|
|
591
|
+
return hex_sha512(input);
|
|
807
592
|
}
|
|
593
|
+
//#endregion
|
|
808
594
|
exports.md5String = md5String;
|
|
809
595
|
exports.sha1String = sha1String;
|
|
810
596
|
exports.sha256String = sha256String;
|
|
811
597
|
exports.sha512String = sha512String;
|
|
812
|
-
|
|
598
|
+
|
|
599
|
+
//# sourceMappingURL=crypto.cjs.map
|