@gardenfi/utils 2.4.6-beta.2 → 2.5.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/dist/index130.cjs +1 -1
- package/dist/index130.js +1 -1
- package/dist/index197.cjs +1 -1
- package/dist/index197.js +3 -3
- package/dist/index226.cjs +1 -1
- package/dist/index226.js +2 -2
- package/dist/index229.cjs +1 -1
- package/dist/index229.js +2 -2
- package/dist/index230.cjs +1 -1
- package/dist/index230.js +1 -1
- package/dist/index281.cjs +1 -1
- package/dist/index281.js +103 -6
- package/dist/index282.cjs +1 -1
- package/dist/index282.js +7 -7
- package/dist/index283.cjs +1 -1
- package/dist/index283.js +223 -25
- package/dist/index284.cjs +1 -1
- package/dist/index284.js +6 -19
- package/dist/index285.cjs +1 -1
- package/dist/index285.js +7 -147
- package/dist/index286.cjs +1 -1
- package/dist/index286.js +24 -101
- package/dist/index287.cjs +1 -1
- package/dist/index287.js +19 -6
- package/dist/index288.cjs +1 -1
- package/dist/index288.js +141 -219
- package/dist/index295.cjs +1 -1
- package/dist/index295.js +1 -1
- package/dist/index296.cjs +1 -1
- package/dist/index296.js +1 -1
- package/dist/index301.cjs +1 -1
- package/dist/index301.js +2 -2
- package/dist/index302.cjs +1 -1
- package/dist/index302.js +2 -2
- package/dist/index303.cjs +1 -1
- package/dist/index303.js +1 -1
- package/package.json +1 -1
package/dist/index130.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e="2.33.
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e="2.33.3";exports.version=e;
|
package/dist/index130.js
CHANGED
package/dist/index197.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const C=require("./
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const C=require("./index281.cjs"),F=require("./index282.cjs"),n=require("./index283.cjs");/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const p={p:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),n:BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),h:BigInt(1),a:BigInt(0),b:BigInt(7),Gx:BigInt("0x79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798"),Gy:BigInt("0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8")};BigInt(0);const P=BigInt(1),u=BigInt(2),h=(t,f)=>(t+f/u)/f;function G(t){const f=p.p,e=BigInt(3),a=BigInt(6),B=BigInt(11),r=BigInt(22),s=BigInt(23),i=BigInt(44),d=BigInt(88),o=t*t*t%f,c=o*o*t%f,b=n.pow2(c,e,f)*c%f,g=n.pow2(b,e,f)*c%f,_=n.pow2(g,u,f)*o%f,I=n.pow2(_,B,f)*_%f,w=n.pow2(I,r,f)*I%f,x=n.pow2(w,i,f)*w%f,k=n.pow2(x,d,f)*x%f,m=n.pow2(k,i,f)*w%f,S=n.pow2(m,e,f)*c%f,E=n.pow2(S,s,f)*I%f,v=n.pow2(E,a,f)*o%f,q=n.pow2(v,u,f);if(!l.eql(l.sqr(q),t))throw new Error("Cannot find square root");return q}const l=n.Field(p.p,void 0,void 0,{sqrt:G}),M=F.createCurve({...p,Fp:l,lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:t=>{const f=p.n,e=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),a=-P*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),B=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),r=e,s=BigInt("0x100000000000000000000000000000000"),i=h(r*t,f),d=h(-a*t,f);let o=n.mod(t-i*e-d*B,f),c=n.mod(-i*a-d*r,f);const b=o>s,g=c>s;if(b&&(o=f-o),g&&(c=f-c),o>s||c>s)throw new Error("splitScalar: Endomorphism failed, k="+t);return{k1neg:b,k1:o,k2neg:g,k2:c}}}},C.sha256);exports.secp256k1=M;
|
package/dist/index197.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { sha256 as v } from "./
|
|
2
|
-
import { createCurve as G } from "./
|
|
3
|
-
import { Field as P, mod as h, pow2 as t } from "./
|
|
1
|
+
import { sha256 as v } from "./index281.js";
|
|
2
|
+
import { createCurve as G } from "./index282.js";
|
|
3
|
+
import { Field as P, mod as h, pow2 as t } from "./index283.js";
|
|
4
4
|
/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */
|
|
5
5
|
const B = {
|
|
6
6
|
p: BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),
|
package/dist/index226.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index284.cjs"),r=require("./index285.cjs");function n(t){return e.hashSignature(r.toSignature(t))}exports.toSignatureHash=n;
|
package/dist/index226.js
CHANGED
package/dist/index229.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const f=require("./
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const f=require("./index287.cjs"),c=require("./index288.cjs"),A=BigInt(0),u=BigInt(1),H=BigInt(2),L=BigInt(7),S=BigInt(256),T=BigInt(113),O=[],y=[],w=[];for(let n=0,t=u,s=1,i=0;n<24;n++){[s,i]=[i,(2*s+3*i)%5],O.push(2*(5*i+s)),y.push((n+1)*(n+2)/2%64);let o=A;for(let r=0;r<7;r++)t=(t<<u^(t>>L)*T)%S,t&H&&(o^=u<<(u<<BigInt(r))-u);w.push(o)}const _=f.split(w,!0),F=_[0],X=_[1],I=(n,t,s)=>s>32?f.rotlBH(n,t,s):f.rotlSH(n,t,s),x=(n,t,s)=>s>32?f.rotlBL(n,t,s):f.rotlSL(n,t,s);function b(n,t=24){const s=new Uint32Array(10);for(let i=24-t;i<24;i++){for(let e=0;e<10;e++)s[e]=n[e]^n[e+10]^n[e+20]^n[e+30]^n[e+40];for(let e=0;e<10;e+=2){const h=(e+8)%10,l=(e+2)%10,p=s[l],a=s[l+1],g=I(p,a,1)^s[h],B=x(p,a,1)^s[h+1];for(let d=0;d<50;d+=10)n[e+d]^=g,n[e+d+1]^=B}let o=n[2],r=n[3];for(let e=0;e<24;e++){const h=y[e],l=I(o,r,h),p=x(o,r,h),a=O[e];o=n[a],r=n[a+1],n[a]=l,n[a+1]=p}for(let e=0;e<50;e+=10){for(let h=0;h<10;h++)s[h]=n[e+h];for(let h=0;h<10;h++)n[e+h]^=~s[(h+2)%10]&s[(h+4)%10]}n[0]^=F[i],n[1]^=X[i]}c.clean(s)}class k extends c.Hash{constructor(t,s,i,o=!1,r=24){if(super(),this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,this.enableXOF=!1,this.blockLen=t,this.suffix=s,this.outputLen=i,this.enableXOF=o,this.rounds=r,c.anumber(i),!(0<t&&t<200))throw new Error("only keccak-f1600 function is supported");this.state=new Uint8Array(200),this.state32=c.u32(this.state)}clone(){return this._cloneInto()}keccak(){c.swap32IfBE(this.state32),b(this.state32,this.rounds),c.swap32IfBE(this.state32),this.posOut=0,this.pos=0}update(t){c.aexists(this),t=c.toBytes(t),c.abytes(t);const{blockLen:s,state:i}=this,o=t.length;for(let r=0;r<o;){const e=Math.min(s-this.pos,o-r);for(let h=0;h<e;h++)i[this.pos++]^=t[r++];this.pos===s&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;const{state:t,suffix:s,pos:i,blockLen:o}=this;t[i]^=s,s&128&&i===o-1&&this.keccak(),t[o-1]^=128,this.keccak()}writeInto(t){c.aexists(this,!1),c.abytes(t),this.finish();const s=this.state,{blockLen:i}=this;for(let o=0,r=t.length;o<r;){this.posOut>=i&&this.keccak();const e=Math.min(i-this.posOut,r-o);t.set(s.subarray(this.posOut,this.posOut+e),o),this.posOut+=e,o+=e}return t}xofInto(t){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(t)}xof(t){return c.anumber(t),this.xofInto(new Uint8Array(t))}digestInto(t){if(c.aoutput(t,this),this.finished)throw new Error("digest() was already called");return this.writeInto(t),this.destroy(),t}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,c.clean(this.state)}_cloneInto(t){const{blockLen:s,suffix:i,outputLen:o,rounds:r,enableXOF:e}=this;return t||(t=new k(s,i,o,e,r)),t.state32.set(this.state32),t.pos=this.pos,t.posOut=this.posOut,t.finished=this.finished,t.rounds=r,t.suffix=i,t.outputLen=o,t.enableXOF=e,t.destroyed=this.destroyed,t}}const m=(n,t,s)=>c.createHasher(()=>new k(t,n,s)),E=m(1,136,256/8);exports.Keccak=k;exports.keccakP=b;exports.keccak_256=E;
|
package/dist/index229.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { split as L, rotlSH as T, rotlSL as S, rotlBH as m, rotlBL as F } from "./
|
|
2
|
-
import { createHasher as X, Hash as E, anumber as d, u32 as U, swap32IfBE as I, aexists as x, toBytes as P, abytes as k, aoutput as M, clean as y } from "./
|
|
1
|
+
import { split as L, rotlSH as T, rotlSL as S, rotlBH as m, rotlBL as F } from "./index287.js";
|
|
2
|
+
import { createHasher as X, Hash as E, anumber as d, u32 as U, swap32IfBE as I, aexists as x, toBytes as P, abytes as k, aoutput as M, clean as y } from "./index288.js";
|
|
3
3
|
const R = BigInt(0), f = BigInt(1), j = BigInt(2), q = BigInt(7), v = BigInt(256), z = BigInt(113), _ = [], g = [], B = [];
|
|
4
4
|
for (let n = 0, t = f, s = 1, i = 0; n < 24; n++) {
|
|
5
5
|
[s, i] = [i, (2 * s + 3 * i) % 5], _.push(2 * (5 * i + s)), g.push((n + 1) * (n + 2) / 2 % 64);
|
package/dist/index230.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index281.cjs"),s=e.sha256;exports.sha256=s;
|
package/dist/index230.js
CHANGED
package/dist/index281.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index296.cjs"),x=require("./index288.cjs"),_=Uint32Array.from([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),f=new Uint32Array(64);class u extends e.HashMD{constructor(o=32){super(64,o,8,!1),this.A=e.SHA256_IV[0]|0,this.B=e.SHA256_IV[1]|0,this.C=e.SHA256_IV[2]|0,this.D=e.SHA256_IV[3]|0,this.E=e.SHA256_IV[4]|0,this.F=e.SHA256_IV[5]|0,this.G=e.SHA256_IV[6]|0,this.H=e.SHA256_IV[7]|0}get(){const{A:o,B:h,C:s,D:a,E:r,F:b,G:c,H:i}=this;return[o,h,s,a,r,b,c,i]}set(o,h,s,a,r,b,c,i){this.A=o|0,this.B=h|0,this.C=s|0,this.D=a|0,this.E=r|0,this.F=b|0,this.G=c|0,this.H=i|0}process(o,h){for(let t=0;t<16;t++,h+=4)f[t]=o.getUint32(h,!1);for(let t=16;t<64;t++){const H=f[t-15],d=f[t-2],S=x.rotr(H,7)^x.rotr(H,18)^H>>>3,l=x.rotr(d,17)^x.rotr(d,19)^d>>>10;f[t]=l+f[t-7]+S+f[t-16]|0}let{A:s,B:a,C:r,D:b,E:c,F:i,G:n,H:A}=this;for(let t=0;t<64;t++){const H=x.rotr(c,6)^x.rotr(c,11)^x.rotr(c,25),d=A+H+e.Chi(c,i,n)+_[t]+f[t]|0,l=(x.rotr(s,2)^x.rotr(s,13)^x.rotr(s,22))+e.Maj(s,a,r)|0;A=n,n=i,i=c,c=b+d|0,b=r,r=a,a=s,s=d+l|0}s=s+this.A|0,a=a+this.B|0,r=r+this.C|0,b=b+this.D|0,c=c+this.E|0,i=i+this.F|0,n=n+this.G|0,A=A+this.H|0,this.set(s,a,r,b,c,i,n,A)}roundClean(){x.clean(f)}destroy(){this.set(0,0,0,0,0,0,0,0),x.clean(this.buffer)}}const I=x.createHasher(()=>new u);exports.SHA256=u;exports.sha256=I;
|
package/dist/index281.js
CHANGED
|
@@ -1,9 +1,106 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
const
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
import { HashMD as D, SHA256_IV as b, Chi as g, Maj as p } from "./index296.js";
|
|
2
|
+
import { createHasher as u, clean as C, rotr as i } from "./index288.js";
|
|
3
|
+
const B = /* @__PURE__ */ Uint32Array.from([
|
|
4
|
+
1116352408,
|
|
5
|
+
1899447441,
|
|
6
|
+
3049323471,
|
|
7
|
+
3921009573,
|
|
8
|
+
961987163,
|
|
9
|
+
1508970993,
|
|
10
|
+
2453635748,
|
|
11
|
+
2870763221,
|
|
12
|
+
3624381080,
|
|
13
|
+
310598401,
|
|
14
|
+
607225278,
|
|
15
|
+
1426881987,
|
|
16
|
+
1925078388,
|
|
17
|
+
2162078206,
|
|
18
|
+
2614888103,
|
|
19
|
+
3248222580,
|
|
20
|
+
3835390401,
|
|
21
|
+
4022224774,
|
|
22
|
+
264347078,
|
|
23
|
+
604807628,
|
|
24
|
+
770255983,
|
|
25
|
+
1249150122,
|
|
26
|
+
1555081692,
|
|
27
|
+
1996064986,
|
|
28
|
+
2554220882,
|
|
29
|
+
2821834349,
|
|
30
|
+
2952996808,
|
|
31
|
+
3210313671,
|
|
32
|
+
3336571891,
|
|
33
|
+
3584528711,
|
|
34
|
+
113926993,
|
|
35
|
+
338241895,
|
|
36
|
+
666307205,
|
|
37
|
+
773529912,
|
|
38
|
+
1294757372,
|
|
39
|
+
1396182291,
|
|
40
|
+
1695183700,
|
|
41
|
+
1986661051,
|
|
42
|
+
2177026350,
|
|
43
|
+
2456956037,
|
|
44
|
+
2730485921,
|
|
45
|
+
2820302411,
|
|
46
|
+
3259730800,
|
|
47
|
+
3345764771,
|
|
48
|
+
3516065817,
|
|
49
|
+
3600352804,
|
|
50
|
+
4094571909,
|
|
51
|
+
275423344,
|
|
52
|
+
430227734,
|
|
53
|
+
506948616,
|
|
54
|
+
659060556,
|
|
55
|
+
883997877,
|
|
56
|
+
958139571,
|
|
57
|
+
1322822218,
|
|
58
|
+
1537002063,
|
|
59
|
+
1747873779,
|
|
60
|
+
1955562222,
|
|
61
|
+
2024104815,
|
|
62
|
+
2227730452,
|
|
63
|
+
2361852424,
|
|
64
|
+
2428436474,
|
|
65
|
+
2756734187,
|
|
66
|
+
3204031479,
|
|
67
|
+
3329325298
|
|
68
|
+
]), h = /* @__PURE__ */ new Uint32Array(64);
|
|
69
|
+
class E extends D {
|
|
70
|
+
constructor(o = 32) {
|
|
71
|
+
super(64, o, 8, !1), this.A = b[0] | 0, this.B = b[1] | 0, this.C = b[2] | 0, this.D = b[3] | 0, this.E = b[4] | 0, this.F = b[5] | 0, this.G = b[6] | 0, this.H = b[7] | 0;
|
|
72
|
+
}
|
|
73
|
+
get() {
|
|
74
|
+
const { A: o, B: r, C: t, D: s, E: a, F: f, G: c, H: e } = this;
|
|
75
|
+
return [o, r, t, s, a, f, c, e];
|
|
76
|
+
}
|
|
77
|
+
// prettier-ignore
|
|
78
|
+
set(o, r, t, s, a, f, c, e) {
|
|
79
|
+
this.A = o | 0, this.B = r | 0, this.C = t | 0, this.D = s | 0, this.E = a | 0, this.F = f | 0, this.G = c | 0, this.H = e | 0;
|
|
80
|
+
}
|
|
81
|
+
process(o, r) {
|
|
82
|
+
for (let x = 0; x < 16; x++, r += 4)
|
|
83
|
+
h[x] = o.getUint32(r, !1);
|
|
84
|
+
for (let x = 16; x < 64; x++) {
|
|
85
|
+
const H = h[x - 15], d = h[x - 2], m = i(H, 7) ^ i(H, 18) ^ H >>> 3, l = i(d, 17) ^ i(d, 19) ^ d >>> 10;
|
|
86
|
+
h[x] = l + h[x - 7] + m + h[x - 16] | 0;
|
|
87
|
+
}
|
|
88
|
+
let { A: t, B: s, C: a, D: f, E: c, F: e, G: n, H: A } = this;
|
|
89
|
+
for (let x = 0; x < 64; x++) {
|
|
90
|
+
const H = i(c, 6) ^ i(c, 11) ^ i(c, 25), d = A + H + g(c, e, n) + B[x] + h[x] | 0, l = (i(t, 2) ^ i(t, 13) ^ i(t, 22)) + p(t, s, a) | 0;
|
|
91
|
+
A = n, n = e, e = c, c = f + d | 0, f = a, a = s, s = t, t = d + l | 0;
|
|
92
|
+
}
|
|
93
|
+
t = t + this.A | 0, s = s + this.B | 0, a = a + this.C | 0, f = f + this.D | 0, c = c + this.E | 0, e = e + this.F | 0, n = n + this.G | 0, A = A + this.H | 0, this.set(t, s, a, f, c, e, n, A);
|
|
94
|
+
}
|
|
95
|
+
roundClean() {
|
|
96
|
+
C(h);
|
|
97
|
+
}
|
|
98
|
+
destroy() {
|
|
99
|
+
this.set(0, 0, 0, 0, 0, 0, 0, 0), C(this.buffer);
|
|
100
|
+
}
|
|
6
101
|
}
|
|
102
|
+
const y = /* @__PURE__ */ u(() => new E());
|
|
7
103
|
export {
|
|
8
|
-
|
|
104
|
+
E as SHA256,
|
|
105
|
+
y as sha256
|
|
9
106
|
};
|
package/dist/index282.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("./index301.cjs");/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */function c(r,t){const e=s=>a.weierstrass({...r,hash:s});return{...e(t),create:e}}exports.createCurve=c;
|
package/dist/index282.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const
|
|
5
|
-
return
|
|
6
|
-
}
|
|
1
|
+
import { weierstrass as s } from "./index301.js";
|
|
2
|
+
/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */
|
|
3
|
+
function c(e, t) {
|
|
4
|
+
const r = (o) => s({ ...e, hash: o });
|
|
5
|
+
return { ...r(t), create: r };
|
|
6
|
+
}
|
|
7
7
|
export {
|
|
8
|
-
|
|
8
|
+
c as createCurve
|
|
9
9
|
};
|
package/dist/index283.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const w=require("./index302.cjs"),V=require("./index288.cjs");/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const g=BigInt(0),d=BigInt(1),b=BigInt(2),K=BigInt(3),I=BigInt(4),T=BigInt(5),_=BigInt(8);function h(t,n){const o=t%n;return o>=g?o:n+o}function Q(t,n,o){let r=t;for(;n-- >g;)r*=r,r%=o;return r}function v(t,n){if(t===g)throw new Error("invert: expected non-zero number");if(n<=g)throw new Error("invert: expected positive modulus, got "+n);let o=h(t,n),r=n,s=g,c=d;for(;o!==g;){const u=r/o,i=r%o,a=s-c*u;r=o,o=i,s=c,c=a}if(r!==d)throw new Error("invert: does not exist");return h(s,n)}function L(t,n){const o=(t.ORDER+d)/I,r=t.pow(n,o);if(!t.eql(t.sqr(r),n))throw new Error("Cannot find square root");return r}function Y(t,n){const o=(t.ORDER-T)/_,r=t.mul(n,b),s=t.pow(r,o),c=t.mul(n,s),f=t.mul(t.mul(c,b),s),u=t.mul(c,t.sub(f,t.ONE));if(!t.eql(t.sqr(u),n))throw new Error("Cannot find square root");return u}function x(t){if(t<BigInt(3))throw new Error("sqrt is not defined for small field");let n=t-d,o=0;for(;n%b===g;)n/=b,o++;let r=b;const s=Z(t);for(;y(s,r)===1;)if(r++>1e3)throw new Error("Cannot find square root: probably non-prime P");if(o===1)return L;let c=s.pow(r,n);const f=(n+d)/b;return function(i,a){if(i.is0(a))return a;if(y(i,a)!==1)throw new Error("Cannot find square root");let e=o,l=i.mul(i.ONE,c),q=i.pow(a,n),B=i.pow(a,f);for(;!i.eql(q,i.ONE);){if(i.is0(q))return i.ZERO;let m=1,E=i.sqr(q);for(;!i.eql(E,i.ONE);)if(m++,E=i.sqr(E),m===e)throw new Error("Cannot find square root");const H=d<<BigInt(e-m-1),S=i.pow(l,H);e=m,l=i.sqr(S),q=i.mul(q,l),B=i.mul(B,S)}return B}}function M(t){return t%I===K?L:t%_===T?Y:x(t)}const k=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function P(t){const n={ORDER:"bigint",MASK:"bigint",BYTES:"number",BITS:"number"},o=k.reduce((r,s)=>(r[s]="function",r),n);return w._validateObject(t,o),t}function j(t,n,o){if(o<g)throw new Error("invalid exponent, negatives unsupported");if(o===g)return t.ONE;if(o===d)return n;let r=t.ONE,s=n;for(;o>g;)o&d&&(r=t.mul(r,s)),s=t.sqr(s),o>>=d;return r}function A(t,n,o=!1){const r=new Array(n.length).fill(o?t.ZERO:void 0),s=n.reduce((f,u,i)=>t.is0(u)?f:(r[i]=f,t.mul(f,u)),t.ONE),c=t.inv(s);return n.reduceRight((f,u,i)=>t.is0(u)?f:(r[i]=t.mul(f,r[i]),t.mul(f,u)),c),r}function y(t,n){const o=(t.ORDER-d)/b,r=t.pow(n,o),s=t.eql(r,t.ONE),c=t.eql(r,t.ZERO),f=t.eql(r,t.neg(t.ONE));if(!s&&!c&&!f)throw new Error("invalid Legendre symbol result");return s?1:c?0:-1}function C(t,n){n!==void 0&&V.anumber(n);const o=n!==void 0?n:t.toString(2).length,r=Math.ceil(o/8);return{nBitLength:o,nByteLength:r}}function Z(t,n,o=!1,r={}){if(t<=g)throw new Error("invalid field: expected ORDER > 0, got "+t);let s,c;if(typeof n=="object"&&n!=null){if(r.sqrt||o)throw new Error("cannot specify opts in two arguments");const e=n;e.BITS&&(s=e.BITS),e.sqrt&&(c=e.sqrt),typeof e.isLE=="boolean"&&(o=e.isLE)}else typeof n=="number"&&(s=n),r.sqrt&&(c=r.sqrt);const{nBitLength:f,nByteLength:u}=C(t,s);if(u>2048)throw new Error("invalid field: expected ORDER of <= 2048 bytes");let i;const a=Object.freeze({ORDER:t,isLE:o,BITS:f,BYTES:u,MASK:w.bitMask(f),ZERO:g,ONE:d,create:e=>h(e,t),isValid:e=>{if(typeof e!="bigint")throw new Error("invalid field element: expected bigint, got "+typeof e);return g<=e&&e<t},is0:e=>e===g,isValidNot0:e=>!a.is0(e)&&a.isValid(e),isOdd:e=>(e&d)===d,neg:e=>h(-e,t),eql:(e,l)=>e===l,sqr:e=>h(e*e,t),add:(e,l)=>h(e+l,t),sub:(e,l)=>h(e-l,t),mul:(e,l)=>h(e*l,t),pow:(e,l)=>j(a,e,l),div:(e,l)=>h(e*v(l,t),t),sqrN:e=>e*e,addN:(e,l)=>e+l,subN:(e,l)=>e-l,mulN:(e,l)=>e*l,inv:e=>v(e,t),sqrt:c||(e=>(i||(i=M(t)),i(a,e))),toBytes:e=>o?w.numberToBytesLE(e,u):w.numberToBytesBE(e,u),fromBytes:e=>{if(e.length!==u)throw new Error("Field.fromBytes: expected "+u+" bytes, got "+e.length);return o?w.bytesToNumberLE(e):w.bytesToNumberBE(e)},invertBatch:e=>A(a,e),cmov:(e,l,q)=>q?l:e});return Object.freeze(a)}function N(t){if(typeof t!="bigint")throw new Error("field order must be bigint");const n=t.toString(2).length;return Math.ceil(n/8)}function z(t){const n=N(t);return n+Math.ceil(n/2)}function $(t,n,o=!1){const r=t.length,s=N(n),c=z(n);if(r<16||r<c||r>1024)throw new Error("expected "+c+"-1024 bytes of input, got "+r);const f=o?w.bytesToNumberLE(t):w.bytesToNumberBE(t),u=h(f,n-d)+d;return o?w.numberToBytesLE(u,s):w.numberToBytesBE(u,s)}exports.Field=Z;exports.FpInvertBatch=A;exports.FpLegendre=y;exports.FpPow=j;exports.FpSqrt=M;exports.getFieldBytesLength=N;exports.getMinHashLength=z;exports.invert=v;exports.mapHashToField=$;exports.mod=h;exports.nLength=C;exports.pow2=Q;exports.tonelliShanks=x;exports.validateField=P;
|
package/dist/index283.js
CHANGED
|
@@ -1,29 +1,227 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
1
|
+
import { numberToBytesLE as y, numberToBytesBE as I, bitMask as Z, bytesToNumberLE as S, bytesToNumberBE as _, _validateObject as j } from "./index302.js";
|
|
2
|
+
import { anumber as z } from "./index288.js";
|
|
3
|
+
/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */
|
|
4
|
+
const g = BigInt(0), d = BigInt(1), q = /* @__PURE__ */ BigInt(2), V = /* @__PURE__ */ BigInt(3), x = /* @__PURE__ */ BigInt(4), T = /* @__PURE__ */ BigInt(5), L = /* @__PURE__ */ BigInt(8);
|
|
5
|
+
function h(t, n) {
|
|
6
|
+
const o = t % n;
|
|
7
|
+
return o >= g ? o : n + o;
|
|
8
|
+
}
|
|
9
|
+
function O(t, n, o) {
|
|
10
|
+
let r = t;
|
|
11
|
+
for (; n-- > g; )
|
|
12
|
+
r *= r, r %= o;
|
|
13
|
+
return r;
|
|
14
|
+
}
|
|
15
|
+
function B(t, n) {
|
|
16
|
+
if (t === g)
|
|
17
|
+
throw new Error("invert: expected non-zero number");
|
|
18
|
+
if (n <= g)
|
|
19
|
+
throw new Error("invert: expected positive modulus, got " + n);
|
|
20
|
+
let o = h(t, n), r = n, s = g, f = d;
|
|
21
|
+
for (; o !== g; ) {
|
|
22
|
+
const u = r / o, i = r % o, w = s - f * u;
|
|
23
|
+
r = o, o = i, s = f, f = w;
|
|
22
24
|
}
|
|
23
|
-
if (
|
|
24
|
-
throw new
|
|
25
|
-
return
|
|
25
|
+
if (r !== d)
|
|
26
|
+
throw new Error("invert: does not exist");
|
|
27
|
+
return h(s, n);
|
|
28
|
+
}
|
|
29
|
+
function M(t, n) {
|
|
30
|
+
const o = (t.ORDER + d) / x, r = t.pow(n, o);
|
|
31
|
+
if (!t.eql(t.sqr(r), n))
|
|
32
|
+
throw new Error("Cannot find square root");
|
|
33
|
+
return r;
|
|
34
|
+
}
|
|
35
|
+
function H(t, n) {
|
|
36
|
+
const o = (t.ORDER - T) / L, r = t.mul(n, q), s = t.pow(r, o), f = t.mul(n, s), c = t.mul(t.mul(f, q), s), u = t.mul(f, t.sub(c, t.ONE));
|
|
37
|
+
if (!t.eql(t.sqr(u), n))
|
|
38
|
+
throw new Error("Cannot find square root");
|
|
39
|
+
return u;
|
|
40
|
+
}
|
|
41
|
+
function K(t) {
|
|
42
|
+
if (t < BigInt(3))
|
|
43
|
+
throw new Error("sqrt is not defined for small field");
|
|
44
|
+
let n = t - d, o = 0;
|
|
45
|
+
for (; n % q === g; )
|
|
46
|
+
n /= q, o++;
|
|
47
|
+
let r = q;
|
|
48
|
+
const s = U(t);
|
|
49
|
+
for (; N(s, r) === 1; )
|
|
50
|
+
if (r++ > 1e3)
|
|
51
|
+
throw new Error("Cannot find square root: probably non-prime P");
|
|
52
|
+
if (o === 1)
|
|
53
|
+
return M;
|
|
54
|
+
let f = s.pow(r, n);
|
|
55
|
+
const c = (n + d) / q;
|
|
56
|
+
return function(i, w) {
|
|
57
|
+
if (i.is0(w))
|
|
58
|
+
return w;
|
|
59
|
+
if (N(i, w) !== 1)
|
|
60
|
+
throw new Error("Cannot find square root");
|
|
61
|
+
let e = o, l = i.mul(i.ONE, f), a = i.pow(w, n), b = i.pow(w, c);
|
|
62
|
+
for (; !i.eql(a, i.ONE); ) {
|
|
63
|
+
if (i.is0(a))
|
|
64
|
+
return i.ZERO;
|
|
65
|
+
let m = 1, E = i.sqr(a);
|
|
66
|
+
for (; !i.eql(E, i.ONE); )
|
|
67
|
+
if (m++, E = i.sqr(E), m === e)
|
|
68
|
+
throw new Error("Cannot find square root");
|
|
69
|
+
const C = d << BigInt(e - m - 1), v = i.pow(l, C);
|
|
70
|
+
e = m, l = i.sqr(v), a = i.mul(a, l), b = i.mul(b, v);
|
|
71
|
+
}
|
|
72
|
+
return b;
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
function Q(t) {
|
|
76
|
+
return t % x === V ? M : t % L === T ? H : K(t);
|
|
77
|
+
}
|
|
78
|
+
const Y = [
|
|
79
|
+
"create",
|
|
80
|
+
"isValid",
|
|
81
|
+
"is0",
|
|
82
|
+
"neg",
|
|
83
|
+
"inv",
|
|
84
|
+
"sqrt",
|
|
85
|
+
"sqr",
|
|
86
|
+
"eql",
|
|
87
|
+
"add",
|
|
88
|
+
"sub",
|
|
89
|
+
"mul",
|
|
90
|
+
"pow",
|
|
91
|
+
"div",
|
|
92
|
+
"addN",
|
|
93
|
+
"subN",
|
|
94
|
+
"mulN",
|
|
95
|
+
"sqrN"
|
|
96
|
+
];
|
|
97
|
+
function P(t) {
|
|
98
|
+
const n = {
|
|
99
|
+
ORDER: "bigint",
|
|
100
|
+
MASK: "bigint",
|
|
101
|
+
BYTES: "number",
|
|
102
|
+
BITS: "number"
|
|
103
|
+
}, o = Y.reduce((r, s) => (r[s] = "function", r), n);
|
|
104
|
+
return j(t, o), t;
|
|
105
|
+
}
|
|
106
|
+
function k(t, n, o) {
|
|
107
|
+
if (o < g)
|
|
108
|
+
throw new Error("invalid exponent, negatives unsupported");
|
|
109
|
+
if (o === g)
|
|
110
|
+
return t.ONE;
|
|
111
|
+
if (o === d)
|
|
112
|
+
return n;
|
|
113
|
+
let r = t.ONE, s = n;
|
|
114
|
+
for (; o > g; )
|
|
115
|
+
o & d && (r = t.mul(r, s)), s = t.sqr(s), o >>= d;
|
|
116
|
+
return r;
|
|
117
|
+
}
|
|
118
|
+
function G(t, n, o = !1) {
|
|
119
|
+
const r = new Array(n.length).fill(o ? t.ZERO : void 0), s = n.reduce((c, u, i) => t.is0(u) ? c : (r[i] = c, t.mul(c, u)), t.ONE), f = t.inv(s);
|
|
120
|
+
return n.reduceRight((c, u, i) => t.is0(u) ? c : (r[i] = t.mul(c, r[i]), t.mul(c, u)), f), r;
|
|
121
|
+
}
|
|
122
|
+
function N(t, n) {
|
|
123
|
+
const o = (t.ORDER - d) / q, r = t.pow(n, o), s = t.eql(r, t.ONE), f = t.eql(r, t.ZERO), c = t.eql(r, t.neg(t.ONE));
|
|
124
|
+
if (!s && !f && !c)
|
|
125
|
+
throw new Error("invalid Legendre symbol result");
|
|
126
|
+
return s ? 1 : f ? 0 : -1;
|
|
127
|
+
}
|
|
128
|
+
function J(t, n) {
|
|
129
|
+
n !== void 0 && z(n);
|
|
130
|
+
const o = n !== void 0 ? n : t.toString(2).length, r = Math.ceil(o / 8);
|
|
131
|
+
return { nBitLength: o, nByteLength: r };
|
|
132
|
+
}
|
|
133
|
+
function U(t, n, o = !1, r = {}) {
|
|
134
|
+
if (t <= g)
|
|
135
|
+
throw new Error("invalid field: expected ORDER > 0, got " + t);
|
|
136
|
+
let s, f;
|
|
137
|
+
if (typeof n == "object" && n != null) {
|
|
138
|
+
if (r.sqrt || o)
|
|
139
|
+
throw new Error("cannot specify opts in two arguments");
|
|
140
|
+
const e = n;
|
|
141
|
+
e.BITS && (s = e.BITS), e.sqrt && (f = e.sqrt), typeof e.isLE == "boolean" && (o = e.isLE);
|
|
142
|
+
} else
|
|
143
|
+
typeof n == "number" && (s = n), r.sqrt && (f = r.sqrt);
|
|
144
|
+
const { nBitLength: c, nByteLength: u } = J(t, s);
|
|
145
|
+
if (u > 2048)
|
|
146
|
+
throw new Error("invalid field: expected ORDER of <= 2048 bytes");
|
|
147
|
+
let i;
|
|
148
|
+
const w = Object.freeze({
|
|
149
|
+
ORDER: t,
|
|
150
|
+
isLE: o,
|
|
151
|
+
BITS: c,
|
|
152
|
+
BYTES: u,
|
|
153
|
+
MASK: Z(c),
|
|
154
|
+
ZERO: g,
|
|
155
|
+
ONE: d,
|
|
156
|
+
create: (e) => h(e, t),
|
|
157
|
+
isValid: (e) => {
|
|
158
|
+
if (typeof e != "bigint")
|
|
159
|
+
throw new Error("invalid field element: expected bigint, got " + typeof e);
|
|
160
|
+
return g <= e && e < t;
|
|
161
|
+
},
|
|
162
|
+
is0: (e) => e === g,
|
|
163
|
+
// is valid and invertible
|
|
164
|
+
isValidNot0: (e) => !w.is0(e) && w.isValid(e),
|
|
165
|
+
isOdd: (e) => (e & d) === d,
|
|
166
|
+
neg: (e) => h(-e, t),
|
|
167
|
+
eql: (e, l) => e === l,
|
|
168
|
+
sqr: (e) => h(e * e, t),
|
|
169
|
+
add: (e, l) => h(e + l, t),
|
|
170
|
+
sub: (e, l) => h(e - l, t),
|
|
171
|
+
mul: (e, l) => h(e * l, t),
|
|
172
|
+
pow: (e, l) => k(w, e, l),
|
|
173
|
+
div: (e, l) => h(e * B(l, t), t),
|
|
174
|
+
// Same as above, but doesn't normalize
|
|
175
|
+
sqrN: (e) => e * e,
|
|
176
|
+
addN: (e, l) => e + l,
|
|
177
|
+
subN: (e, l) => e - l,
|
|
178
|
+
mulN: (e, l) => e * l,
|
|
179
|
+
inv: (e) => B(e, t),
|
|
180
|
+
sqrt: f || ((e) => (i || (i = Q(t)), i(w, e))),
|
|
181
|
+
toBytes: (e) => o ? y(e, u) : I(e, u),
|
|
182
|
+
fromBytes: (e) => {
|
|
183
|
+
if (e.length !== u)
|
|
184
|
+
throw new Error("Field.fromBytes: expected " + u + " bytes, got " + e.length);
|
|
185
|
+
return o ? S(e) : _(e);
|
|
186
|
+
},
|
|
187
|
+
// TODO: we don't need it here, move out to separate fn
|
|
188
|
+
invertBatch: (e) => G(w, e),
|
|
189
|
+
// We can't move this out because Fp6, Fp12 implement it
|
|
190
|
+
// and it's unclear what to return in there.
|
|
191
|
+
cmov: (e, l, a) => a ? l : e
|
|
192
|
+
});
|
|
193
|
+
return Object.freeze(w);
|
|
194
|
+
}
|
|
195
|
+
function A(t) {
|
|
196
|
+
if (typeof t != "bigint")
|
|
197
|
+
throw new Error("field order must be bigint");
|
|
198
|
+
const n = t.toString(2).length;
|
|
199
|
+
return Math.ceil(n / 8);
|
|
200
|
+
}
|
|
201
|
+
function W(t) {
|
|
202
|
+
const n = A(t);
|
|
203
|
+
return n + Math.ceil(n / 2);
|
|
204
|
+
}
|
|
205
|
+
function D(t, n, o = !1) {
|
|
206
|
+
const r = t.length, s = A(n), f = W(n);
|
|
207
|
+
if (r < 16 || r < f || r > 1024)
|
|
208
|
+
throw new Error("expected " + f + "-1024 bytes of input, got " + r);
|
|
209
|
+
const c = o ? S(t) : _(t), u = h(c, n - d) + d;
|
|
210
|
+
return o ? y(u, s) : I(u, s);
|
|
26
211
|
}
|
|
27
212
|
export {
|
|
28
|
-
|
|
213
|
+
U as Field,
|
|
214
|
+
G as FpInvertBatch,
|
|
215
|
+
N as FpLegendre,
|
|
216
|
+
k as FpPow,
|
|
217
|
+
Q as FpSqrt,
|
|
218
|
+
A as getFieldBytesLength,
|
|
219
|
+
W as getMinHashLength,
|
|
220
|
+
B as invert,
|
|
221
|
+
D as mapHashToField,
|
|
222
|
+
h as mod,
|
|
223
|
+
J as nLength,
|
|
224
|
+
O as pow2,
|
|
225
|
+
K as tonelliShanks,
|
|
226
|
+
P as validateField
|
|
29
227
|
};
|
package/dist/index284.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./index154.cjs"),r=require("./index156.cjs"),c=e=>r.keccak256(t.toBytes(e));function n(e){return c(e)}exports.hashSignature=n;
|
package/dist/index284.js
CHANGED
|
@@ -1,22 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { toBytes as o } from "./index154.js";
|
|
2
|
+
import { keccak256 as r } from "./index156.js";
|
|
3
|
+
const e = (t) => r(o(t));
|
|
4
|
+
function c(t) {
|
|
5
|
+
return e(t);
|
|
4
6
|
}
|
|
5
|
-
function h(t, r = !1) {
|
|
6
|
-
const n = t.length;
|
|
7
|
-
let l = new Uint32Array(n), c = new Uint32Array(n);
|
|
8
|
-
for (let e = 0; e < n; e++) {
|
|
9
|
-
const { h: u, l: f } = s(t[e], r);
|
|
10
|
-
[l[e], c[e]] = [u, f];
|
|
11
|
-
}
|
|
12
|
-
return [l, c];
|
|
13
|
-
}
|
|
14
|
-
const m = (t, r, n) => t << n | r >>> 32 - n, A = (t, r, n) => r << n | t >>> 32 - n, B = (t, r, n) => r << n - 32 | t >>> 64 - n, a = (t, r, n) => t << n - 32 | r >>> 64 - n;
|
|
15
7
|
export {
|
|
16
|
-
|
|
17
|
-
B as rotlBH,
|
|
18
|
-
a as rotlBL,
|
|
19
|
-
m as rotlSH,
|
|
20
|
-
A as rotlSL,
|
|
21
|
-
h as split
|
|
8
|
+
c as hashSignature
|
|
22
9
|
};
|
package/dist/index285.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index286.cjs"),n=require("./index264.cjs"),i=t=>{const r=typeof t=="string"?t:n.formatAbiItem(t);return e.normalizeSignature(r)};exports.toSignature=i;
|