@coinbase/cdp-hooks 0.0.70 → 0.0.71
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 +290 -9
- package/dist/esm/index.js +59 -48
- package/dist/esm/index10.js +1 -1
- package/dist/esm/index100.js +3 -56
- package/dist/esm/index101.js +327 -2
- package/dist/esm/index102.js +13 -7
- package/dist/esm/index103.js +4 -214
- package/dist/esm/index104.js +55 -31
- package/dist/esm/index105.js +2 -22
- package/dist/esm/index106.js +7 -5
- package/dist/esm/index107.js +208 -67
- package/dist/esm/index108.js +32 -6
- package/dist/esm/index109.js +21 -5
- package/dist/esm/index11.js +1 -1
- package/dist/esm/index110.js +5 -35
- package/dist/esm/index111.js +68 -70
- package/dist/esm/index112.js +6 -3
- package/dist/esm/index113.js +5 -23
- package/dist/esm/index114.js +28 -444
- package/dist/esm/index115.js +66 -21
- package/dist/esm/index116.js +3 -27
- package/dist/esm/index117.js +16 -26
- package/dist/esm/index118.js +445 -28
- package/dist/esm/index119.js +21 -184
- package/dist/esm/index12.js +1 -1
- package/dist/esm/index120.js +24 -6
- package/dist/esm/index121.js +34 -2
- package/dist/esm/index122.js +32 -10
- package/dist/esm/index123.js +188 -13
- package/dist/esm/index124.js +6 -25
- package/dist/esm/index125.js +2 -9
- package/dist/esm/index126.js +11 -54
- package/dist/esm/index127.js +15 -42
- package/dist/esm/index128.js +27 -8
- package/dist/esm/index129.js +8 -7
- package/dist/esm/index13.js +1 -1
- package/dist/esm/index130.js +54 -15
- package/dist/esm/index131.js +43 -16
- package/dist/esm/index132.js +8 -24
- package/dist/esm/index133.js +7 -16
- package/dist/esm/index134.js +16 -54
- package/dist/esm/index135.js +18 -11
- package/dist/esm/index136.js +25 -161
- package/dist/esm/index137.js +16 -21
- package/dist/esm/index138.js +53 -126
- package/dist/esm/index139.js +11 -38
- package/dist/esm/index14.js +1 -1
- package/dist/esm/index140.js +160 -6
- package/dist/esm/index141.js +20 -26
- package/dist/esm/index142.js +125 -189
- package/dist/esm/index143.js +39 -4
- package/dist/esm/index144.js +6 -64
- package/dist/esm/index145.js +28 -3
- package/dist/esm/index146.js +185 -14
- package/dist/esm/index147.js +4 -17
- package/dist/esm/index148.js +63 -22
- package/dist/esm/index149.js +3 -12
- package/dist/esm/index15.js +1 -1
- package/dist/esm/index150.js +17 -31
- package/dist/esm/index151.js +17 -3
- package/dist/esm/index152.js +23 -18
- package/dist/esm/index153.js +11 -27
- package/dist/esm/index154.js +33 -34
- package/dist/esm/index155.js +3 -8
- package/dist/esm/index156.js +18 -25
- package/dist/esm/index157.js +26 -27
- package/dist/esm/index158.js +34 -63
- package/dist/esm/index159.js +7 -9
- package/dist/esm/index16.js +1 -1
- package/dist/esm/index160.js +24 -32
- package/dist/esm/index161.js +28 -27
- package/dist/esm/index162.js +63 -23
- package/dist/esm/index163.js +9 -3
- package/dist/esm/index164.js +33 -14
- package/dist/esm/index165.js +26 -102
- package/dist/esm/index166.js +23 -63
- package/dist/esm/index167.js +3 -5
- package/dist/esm/index168.js +14 -6
- package/dist/esm/index169.js +103 -27
- package/dist/esm/index170.js +63 -37
- package/dist/esm/index171.js +5 -13
- package/dist/esm/index172.js +6 -42
- package/dist/esm/index173.js +27 -5
- package/dist/esm/index174.js +38 -11
- package/dist/esm/index175.js +13 -19
- package/dist/esm/index176.js +38 -74
- package/dist/esm/index177.js +6 -2
- package/dist/esm/index178.js +11 -37
- package/dist/esm/index179.js +19 -110
- package/dist/esm/index18.js +7 -8
- package/dist/esm/index180.js +75 -45
- package/dist/esm/index181.js +2 -33
- package/dist/esm/index182.js +37 -8
- package/dist/esm/index183.js +110 -6
- package/dist/esm/index184.js +48 -6
- package/dist/esm/index185.js +32 -11
- package/dist/esm/index186.js +8 -10
- package/dist/esm/index187.js +6 -13
- package/dist/esm/index188.js +6 -32
- package/dist/esm/index189.js +12 -5
- package/dist/esm/index19.js +8 -34
- package/dist/esm/index190.js +10 -8
- package/dist/esm/index191.js +12 -18
- package/dist/esm/index192.js +31 -30
- package/dist/esm/index193.js +5 -21
- package/dist/esm/index194.js +8 -3
- package/dist/esm/index195.js +18 -16
- package/dist/esm/index196.js +31 -10
- package/dist/esm/index197.js +20 -21
- package/dist/esm/index198.js +3 -22
- package/dist/esm/index199.js +17 -5
- package/dist/esm/index2.js +2 -2
- package/dist/esm/index20.js +8 -18
- package/dist/esm/index200.js +10 -5
- package/dist/esm/index201.js +21 -8
- package/dist/esm/index202.js +22 -104
- package/dist/esm/index203.js +6 -3
- package/dist/esm/index204.js +5 -18
- package/dist/esm/index205.js +8 -171
- package/dist/esm/index206.js +104 -17
- package/dist/esm/index207.js +3 -10
- package/dist/esm/index208.js +17 -39
- package/dist/esm/index209.js +172 -2
- package/dist/esm/index21.js +7 -11
- package/dist/esm/index210.js +17 -4
- package/dist/esm/index211.js +10 -11
- package/dist/esm/index212.js +38 -19
- package/dist/esm/index213.js +2 -8
- package/dist/esm/index214.js +69 -11
- package/dist/esm/index215.js +34 -66
- package/dist/esm/index216.js +12 -63
- package/dist/esm/index217.js +39 -184
- package/dist/esm/index218.js +2 -23
- package/dist/esm/index219.js +4 -42
- package/dist/esm/index22.js +8 -11
- package/dist/esm/index220.js +9 -75
- package/dist/esm/index221.js +17 -38
- package/dist/esm/index222.js +7 -16
- package/dist/esm/index223.js +10 -12
- package/dist/esm/index224.js +66 -7
- package/dist/esm/index225.js +65 -6
- package/dist/esm/index226.js +183 -34
- package/dist/esm/index227.js +22 -15
- package/dist/esm/index228.js +42 -8
- package/dist/esm/index229.js +77 -13
- package/dist/esm/index23.js +33 -53
- package/dist/esm/index230.js +40 -9
- package/dist/esm/index231.js +15 -15
- package/dist/esm/index232.js +12 -21
- package/dist/esm/index233.js +7 -30
- package/dist/esm/index234.js +7 -2
- package/dist/esm/index235.js +36 -13
- package/dist/esm/index236.js +15 -12
- package/dist/esm/index237.js +8 -47
- package/dist/esm/index238.js +12 -9
- package/dist/esm/index239.js +9 -13
- package/dist/esm/index24.js +16 -56
- package/dist/esm/index240.js +15 -13
- package/dist/esm/index241.js +22 -8
- package/dist/esm/index242.js +28 -13
- package/dist/esm/index243.js +2 -25
- package/dist/esm/index244.js +13 -11
- package/dist/esm/index245.js +12 -24
- package/dist/esm/index246.js +46 -50
- package/dist/esm/index247.js +9 -17
- package/dist/esm/index248.js +13 -14
- package/dist/esm/index249.js +14 -11
- package/dist/esm/index25.js +12 -56
- package/dist/esm/index250.js +8 -103
- package/dist/esm/index251.js +15 -5
- package/dist/esm/index252.js +23 -222
- package/dist/esm/index253.js +11 -6
- package/dist/esm/index254.js +25 -7
- package/dist/esm/index255.js +49 -24
- package/dist/esm/index256.js +17 -19
- package/dist/esm/index257.js +13 -144
- package/dist/esm/index258.js +12 -13
- package/dist/esm/index259.js +102 -34
- package/dist/esm/index26.js +12 -5
- package/dist/esm/index260.js +5 -41
- package/dist/esm/index261.js +223 -38
- package/dist/esm/index262.js +7 -2
- package/dist/esm/index263.js +7 -70
- package/dist/esm/index264.js +23 -31
- package/dist/esm/index265.js +18 -13
- package/dist/esm/index266.js +146 -2
- package/dist/esm/index267.js +13 -69
- package/dist/esm/index268.js +36 -4
- package/dist/esm/index269.js +41 -136
- package/dist/esm/index27.js +54 -48
- package/dist/esm/index270.js +2 -156
- package/dist/esm/index271.js +68 -9
- package/dist/esm/index272.js +3 -16
- package/dist/esm/index273.js +126 -103
- package/dist/esm/index274.js +123 -102
- package/dist/esm/index275.js +9 -78
- package/dist/esm/index276.js +17 -2
- package/dist/esm/index277.js +105 -689
- package/dist/esm/index278.js +126 -130
- package/dist/esm/index279.js +66 -30
- package/dist/esm/index28.js +56 -31
- package/dist/esm/index280.js +2 -201
- package/dist/esm/index281.js +694 -62
- package/dist/esm/index282.js +138 -4
- package/dist/esm/index283.js +42 -40
- package/dist/esm/index284.js +200 -7
- package/dist/esm/index285.js +3 -62
- package/dist/esm/index286.js +55 -67
- package/dist/esm/index287.js +5 -4
- package/dist/esm/index288.js +40 -194
- package/dist/esm/index289.js +7 -3
- package/dist/esm/index29.js +56 -4
- package/dist/esm/index290.js +57 -58
- package/dist/esm/index291.js +72 -39
- package/dist/esm/index292.js +4 -5
- package/dist/esm/index293.js +195 -5
- package/dist/esm/index294.js +64 -2
- package/dist/esm/index295.js +43 -20
- package/dist/esm/index296.js +7 -0
- package/dist/esm/index297.js +7 -0
- package/dist/esm/index298.js +4 -0
- package/dist/esm/index299.js +24 -0
- package/dist/esm/index3.js +1 -1
- package/dist/esm/index30.js +5 -10
- package/dist/esm/index31.js +42 -63
- package/dist/esm/index32.js +31 -8
- package/dist/esm/index33.js +3 -28
- package/dist/esm/index34.js +9 -70
- package/dist/esm/index35.js +68 -19
- package/dist/esm/index36.js +9 -110
- package/dist/esm/index37.js +27 -59
- package/dist/esm/index38.js +70 -24
- package/dist/esm/index39.js +19 -40
- package/dist/esm/index40.js +110 -37
- package/dist/esm/index41.js +43 -41
- package/dist/esm/index42.js +21 -160
- package/dist/esm/index43.js +38 -37
- package/dist/esm/index44.js +36 -8
- package/dist/esm/index45.js +58 -31
- package/dist/esm/index46.js +161 -34
- package/dist/esm/index47.js +39 -9
- package/dist/esm/index48.js +8 -28
- package/dist/esm/index49.js +29 -44
- package/dist/esm/index5.js +87 -66
- package/dist/esm/index50.js +36 -88
- package/dist/esm/index51.js +9 -40
- package/dist/esm/index52.js +28 -7
- package/dist/esm/index53.js +46 -6
- package/dist/esm/index54.js +88 -16
- package/dist/esm/index55.js +40 -8
- package/dist/esm/index56.js +8 -13
- package/dist/esm/index57.js +5 -6
- package/dist/esm/index58.js +16 -9
- package/dist/esm/index59.js +8 -16
- package/dist/esm/index6.js +3 -3
- package/dist/esm/index60.js +13 -46
- package/dist/esm/index61.js +7 -13
- package/dist/esm/index62.js +9 -16
- package/dist/esm/index63.js +16 -13
- package/dist/esm/index64.js +46 -6
- package/dist/esm/index65.js +11 -33
- package/dist/esm/index66.js +15 -8
- package/dist/esm/index67.js +13 -8
- package/dist/esm/index68.js +6 -25
- package/dist/esm/index69.js +35 -10
- package/dist/esm/index7.js +9 -9
- package/dist/esm/index70.js +8 -13
- package/dist/esm/index71.js +8 -11
- package/dist/esm/index72.js +24 -115
- package/dist/esm/index73.js +10 -33
- package/dist/esm/index74.js +14 -79
- package/dist/esm/index75.js +11 -177
- package/dist/esm/index76.js +114 -42
- package/dist/esm/index77.js +32 -5
- package/dist/esm/index78.js +79 -13
- package/dist/esm/index79.js +177 -13
- package/dist/esm/index8.js +5 -5
- package/dist/esm/index80.js +42 -97
- package/dist/esm/index81.js +6 -72
- package/dist/esm/index82.js +13 -87
- package/dist/esm/index83.js +13 -148
- package/dist/esm/index84.js +93 -130
- package/dist/esm/index85.js +65 -61
- package/dist/esm/index86.js +87 -23
- package/dist/esm/index87.js +145 -102
- package/dist/esm/index88.js +136 -6
- package/dist/esm/index89.js +65 -128
- package/dist/esm/index9.js +1 -1
- package/dist/esm/index90.js +24 -276
- package/dist/esm/index91.js +106 -3
- package/dist/esm/index92.js +7 -4
- package/dist/esm/index93.js +132 -9
- package/dist/esm/index94.js +276 -2
- package/dist/esm/index95.js +3 -2
- package/dist/esm/index96.js +4 -3
- package/dist/esm/index97.js +9 -327
- package/dist/esm/index98.js +2 -14
- package/dist/esm/index99.js +2 -5
- package/dist/types/index.d.ts +36 -0
- package/package.json +5 -5
package/dist/esm/index280.js
CHANGED
|
@@ -1,203 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
import { validateField as Z, Field as O, FpInvertBatch as R } from "./index252.js";
|
|
3
|
-
const g = BigInt(0), h = BigInt(1);
|
|
4
|
-
function b(t, r) {
|
|
5
|
-
const e = r.negate();
|
|
6
|
-
return t ? e : r;
|
|
7
|
-
}
|
|
8
|
-
function L(t, r, e) {
|
|
9
|
-
const n = (s) => s.pz, i = R(t.Fp, e.map(n));
|
|
10
|
-
return e.map((s, f) => s.toAffine(i[f])).map(t.fromAffine);
|
|
11
|
-
}
|
|
12
|
-
function I(t, r) {
|
|
13
|
-
if (!Number.isSafeInteger(t) || t <= 0 || t > r)
|
|
14
|
-
throw new Error("invalid window size, expected [1.." + r + "], got W=" + t);
|
|
15
|
-
}
|
|
16
|
-
function E(t, r) {
|
|
17
|
-
I(t, r);
|
|
18
|
-
const e = Math.ceil(r / t) + 1, n = 2 ** (t - 1), i = 2 ** t, o = z(t), s = BigInt(t);
|
|
19
|
-
return { windows: e, windowSize: n, mask: o, maxNumber: i, shiftBy: s };
|
|
20
|
-
}
|
|
21
|
-
function v(t, r, e) {
|
|
22
|
-
const { windowSize: n, mask: i, maxNumber: o, shiftBy: s } = e;
|
|
23
|
-
let f = Number(t & i), a = t >> s;
|
|
24
|
-
f > n && (f -= o, a += h);
|
|
25
|
-
const d = r * n, c = d + Math.abs(f) - 1, p = f === 0, l = f < 0, u = r % 2 !== 0;
|
|
26
|
-
return { nextN: a, offset: c, isZero: p, isNeg: l, isNegF: u, offsetF: d };
|
|
27
|
-
}
|
|
28
|
-
function j(t, r) {
|
|
29
|
-
if (!Array.isArray(t))
|
|
30
|
-
throw new Error("array expected");
|
|
31
|
-
t.forEach((e, n) => {
|
|
32
|
-
if (!(e instanceof r))
|
|
33
|
-
throw new Error("invalid point at index " + n);
|
|
34
|
-
});
|
|
35
|
-
}
|
|
36
|
-
function _(t, r) {
|
|
37
|
-
if (!Array.isArray(t))
|
|
38
|
-
throw new Error("array of scalars expected");
|
|
39
|
-
t.forEach((e, n) => {
|
|
40
|
-
if (!r.isValid(e))
|
|
41
|
-
throw new Error("invalid scalar at index " + n);
|
|
42
|
-
});
|
|
43
|
-
}
|
|
44
|
-
const N = /* @__PURE__ */ new WeakMap(), M = /* @__PURE__ */ new WeakMap();
|
|
45
|
-
function A(t) {
|
|
46
|
-
return M.get(t) || 1;
|
|
47
|
-
}
|
|
48
|
-
function S(t) {
|
|
49
|
-
if (t !== g)
|
|
50
|
-
throw new Error("invalid wNAF");
|
|
51
|
-
}
|
|
52
|
-
function U(t, r) {
|
|
53
|
-
return {
|
|
54
|
-
constTimeNegate: b,
|
|
55
|
-
hasPrecomputes(e) {
|
|
56
|
-
return A(e) !== 1;
|
|
57
|
-
},
|
|
58
|
-
// non-const time multiplication ladder
|
|
59
|
-
unsafeLadder(e, n, i = t.ZERO) {
|
|
60
|
-
let o = e;
|
|
61
|
-
for (; n > g; )
|
|
62
|
-
n & h && (i = i.add(o)), o = o.double(), n >>= h;
|
|
63
|
-
return i;
|
|
64
|
-
},
|
|
65
|
-
/**
|
|
66
|
-
* Creates a wNAF precomputation window. Used for caching.
|
|
67
|
-
* Default window size is set by `utils.precompute()` and is equal to 8.
|
|
68
|
-
* Number of precomputed points depends on the curve size:
|
|
69
|
-
* 2^(𝑊−1) * (Math.ceil(𝑛 / 𝑊) + 1), where:
|
|
70
|
-
* - 𝑊 is the window size
|
|
71
|
-
* - 𝑛 is the bitlength of the curve order.
|
|
72
|
-
* For a 256-bit curve and window size 8, the number of precomputed points is 128 * 33 = 4224.
|
|
73
|
-
* @param elm Point instance
|
|
74
|
-
* @param W window size
|
|
75
|
-
* @returns precomputed point tables flattened to a single array
|
|
76
|
-
*/
|
|
77
|
-
precomputeWindow(e, n) {
|
|
78
|
-
const { windows: i, windowSize: o } = E(n, r), s = [];
|
|
79
|
-
let f = e, a = f;
|
|
80
|
-
for (let d = 0; d < i; d++) {
|
|
81
|
-
a = f, s.push(a);
|
|
82
|
-
for (let c = 1; c < o; c++)
|
|
83
|
-
a = a.add(f), s.push(a);
|
|
84
|
-
f = a.double();
|
|
85
|
-
}
|
|
86
|
-
return s;
|
|
87
|
-
},
|
|
88
|
-
/**
|
|
89
|
-
* Implements ec multiplication using precomputed tables and w-ary non-adjacent form.
|
|
90
|
-
* @param W window size
|
|
91
|
-
* @param precomputes precomputed tables
|
|
92
|
-
* @param n scalar (we don't check here, but should be less than curve order)
|
|
93
|
-
* @returns real and fake (for const-time) points
|
|
94
|
-
*/
|
|
95
|
-
wNAF(e, n, i) {
|
|
96
|
-
let o = t.ZERO, s = t.BASE;
|
|
97
|
-
const f = E(e, r);
|
|
98
|
-
for (let a = 0; a < f.windows; a++) {
|
|
99
|
-
const { nextN: d, offset: c, isZero: p, isNeg: l, isNegF: u, offsetF: m } = v(i, a, f);
|
|
100
|
-
i = d, p ? s = s.add(b(u, n[m])) : o = o.add(b(l, n[c]));
|
|
101
|
-
}
|
|
102
|
-
return S(i), { p: o, f: s };
|
|
103
|
-
},
|
|
104
|
-
/**
|
|
105
|
-
* Implements ec unsafe (non const-time) multiplication using precomputed tables and w-ary non-adjacent form.
|
|
106
|
-
* @param W window size
|
|
107
|
-
* @param precomputes precomputed tables
|
|
108
|
-
* @param n scalar (we don't check here, but should be less than curve order)
|
|
109
|
-
* @param acc accumulator point to add result of multiplication
|
|
110
|
-
* @returns point
|
|
111
|
-
*/
|
|
112
|
-
wNAFUnsafe(e, n, i, o = t.ZERO) {
|
|
113
|
-
const s = E(e, r);
|
|
114
|
-
for (let f = 0; f < s.windows && i !== g; f++) {
|
|
115
|
-
const { nextN: a, offset: d, isZero: c, isNeg: p } = v(i, f, s);
|
|
116
|
-
if (i = a, !c) {
|
|
117
|
-
const l = n[d];
|
|
118
|
-
o = o.add(p ? l.negate() : l);
|
|
119
|
-
}
|
|
120
|
-
}
|
|
121
|
-
return S(i), o;
|
|
122
|
-
},
|
|
123
|
-
getPrecomputes(e, n, i) {
|
|
124
|
-
let o = N.get(n);
|
|
125
|
-
return o || (o = this.precomputeWindow(n, e), e !== 1 && (typeof i == "function" && (o = i(o)), N.set(n, o))), o;
|
|
126
|
-
},
|
|
127
|
-
wNAFCached(e, n, i) {
|
|
128
|
-
const o = A(e);
|
|
129
|
-
return this.wNAF(o, this.getPrecomputes(o, e, i), n);
|
|
130
|
-
},
|
|
131
|
-
wNAFCachedUnsafe(e, n, i, o) {
|
|
132
|
-
const s = A(e);
|
|
133
|
-
return s === 1 ? this.unsafeLadder(e, n, o) : this.wNAFUnsafe(s, this.getPrecomputes(s, e, i), n, o);
|
|
134
|
-
},
|
|
135
|
-
// We calculate precomputes for elliptic curve point multiplication
|
|
136
|
-
// using windowed method. This specifies window size and
|
|
137
|
-
// stores precomputed values. Usually only base point would be precomputed.
|
|
138
|
-
setWindowSize(e, n) {
|
|
139
|
-
I(n, r), M.set(e, n), N.delete(e);
|
|
140
|
-
}
|
|
141
|
-
};
|
|
142
|
-
}
|
|
143
|
-
function $(t, r, e, n) {
|
|
144
|
-
let i = r, o = t.ZERO, s = t.ZERO;
|
|
145
|
-
for (; e > g || n > g; )
|
|
146
|
-
e & h && (o = o.add(i)), n & h && (s = s.add(i)), i = i.double(), e >>= h, n >>= h;
|
|
147
|
-
return { p1: o, p2: s };
|
|
148
|
-
}
|
|
149
|
-
function D(t, r, e, n) {
|
|
150
|
-
j(e, t), _(n, r);
|
|
151
|
-
const i = e.length, o = n.length;
|
|
152
|
-
if (i !== o)
|
|
153
|
-
throw new Error("arrays of points and scalars must have equal length");
|
|
154
|
-
const s = t.ZERO, f = B(BigInt(i));
|
|
155
|
-
let a = 1;
|
|
156
|
-
f > 12 ? a = f - 3 : f > 4 ? a = f - 2 : f > 0 && (a = 2);
|
|
157
|
-
const d = z(a), c = new Array(Number(d) + 1).fill(s), p = Math.floor((r.BITS - 1) / a) * a;
|
|
158
|
-
let l = s;
|
|
159
|
-
for (let u = p; u >= 0; u -= a) {
|
|
160
|
-
c.fill(s);
|
|
161
|
-
for (let w = 0; w < o; w++) {
|
|
162
|
-
const F = n[w], y = Number(F >> BigInt(u) & d);
|
|
163
|
-
c[y] = c[y].add(e[w]);
|
|
164
|
-
}
|
|
165
|
-
let m = s;
|
|
166
|
-
for (let w = c.length - 1, F = s; w > 0; w--)
|
|
167
|
-
F = F.add(c[w]), m = m.add(F);
|
|
168
|
-
if (l = l.add(m), u !== 0)
|
|
169
|
-
for (let w = 0; w < a; w++)
|
|
170
|
-
l = l.double();
|
|
171
|
-
}
|
|
172
|
-
return l;
|
|
173
|
-
}
|
|
174
|
-
function x(t, r) {
|
|
175
|
-
if (r) {
|
|
176
|
-
if (r.ORDER !== t)
|
|
177
|
-
throw new Error("Field.ORDER must match order: Fp == p, Fn == n");
|
|
178
|
-
return Z(r), r;
|
|
179
|
-
} else
|
|
180
|
-
return O(t);
|
|
181
|
-
}
|
|
182
|
-
function G(t, r, e = {}) {
|
|
183
|
-
if (!r || typeof r != "object")
|
|
184
|
-
throw new Error(`expected valid ${t} CURVE object`);
|
|
185
|
-
for (const f of ["p", "n", "h"]) {
|
|
186
|
-
const a = r[f];
|
|
187
|
-
if (!(typeof a == "bigint" && a > g))
|
|
188
|
-
throw new Error(`CURVE.${f} must be positive bigint`);
|
|
189
|
-
}
|
|
190
|
-
const n = x(r.p, e.Fp), i = x(r.n, e.Fn), s = ["Gx", "Gy", "a", "b"];
|
|
191
|
-
for (const f of s)
|
|
192
|
-
if (!n.isValid(r[f]))
|
|
193
|
-
throw new Error(`CURVE.${f} must be valid field element of CURVE.Fp`);
|
|
194
|
-
return { Fp: n, Fn: i };
|
|
195
|
-
}
|
|
1
|
+
const o = typeof globalThis == "object" && "crypto" in globalThis ? globalThis.crypto : void 0;
|
|
196
2
|
export {
|
|
197
|
-
|
|
198
|
-
$ as mulEndoUnsafe,
|
|
199
|
-
b as negateCt,
|
|
200
|
-
L as normalizeZ,
|
|
201
|
-
D as pippenger,
|
|
202
|
-
U as wNAF
|
|
3
|
+
o as crypto
|
|
203
4
|
};
|