@honeybbq/teamspeak-client 0.2.3 → 0.3.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 -0
- package/dist/address-BR-5unVo.cjs +2 -0
- package/dist/address-BR-5unVo.cjs.map +1 -0
- package/dist/address-BfmovVpp.js +65 -0
- package/dist/address-BfmovVpp.js.map +1 -0
- package/dist/address.d.ts +9 -0
- package/dist/address.d.ts.map +1 -0
- package/dist/address.test.d.ts +2 -0
- package/dist/address.test.d.ts.map +1 -0
- package/dist/api.d.ts.map +1 -1
- package/dist/api.test.d.ts +2 -0
- package/dist/api.test.d.ts.map +1 -0
- package/dist/client.d.ts +2 -0
- package/dist/client.d.ts.map +1 -1
- package/dist/command/index.cjs +1 -1
- package/dist/command/index.mjs +2 -2
- package/dist/{command-CTDmBXd_.js → command-BLe-C2L2.js} +2 -4
- package/dist/{command-CTDmBXd_.js.map → command-BLe-C2L2.js.map} +1 -1
- package/dist/command-DAK4pUBP.cjs +4 -0
- package/dist/{command-CUPNiKRl.cjs.map → command-DAK4pUBP.cjs.map} +1 -1
- package/dist/{crypt-handshake-D2Rsi2e3.cjs → crypt-handshake-CQkQreLx.cjs} +2 -2
- package/dist/{crypt-handshake-D2Rsi2e3.cjs.map → crypt-handshake-CQkQreLx.cjs.map} +1 -1
- package/dist/{crypt-handshake-DIj51kno.js → crypt-handshake-DziOY4Lq.js} +2 -2
- package/dist/{crypt-handshake-DIj51kno.js.map → crypt-handshake-DziOY4Lq.js.map} +1 -1
- package/dist/{crypt-init2-C2X9oK4i.js → crypt-init2-D70ha4LB.js} +6 -6
- package/dist/{crypt-init2-C2X9oK4i.js.map → crypt-init2-D70ha4LB.js.map} +1 -1
- package/dist/{crypt-init2-CazdFwqF.cjs → crypt-init2-DparLekm.cjs} +2 -2
- package/dist/{crypt-init2-CazdFwqF.cjs.map → crypt-init2-DparLekm.cjs.map} +1 -1
- package/dist/crypto/identity.d.ts.map +1 -1
- package/dist/crypto/index.cjs +1 -1
- package/dist/crypto/index.mjs +2 -2
- package/dist/{crypto-CwIMggQG.js → crypto-Bg02m4ZE.js} +7 -7
- package/dist/crypto-Bg02m4ZE.js.map +1 -0
- package/dist/crypto-CDlweUL3.cjs +2 -0
- package/dist/crypto-CDlweUL3.cjs.map +1 -0
- package/dist/discovery/index.cjs +1 -1
- package/dist/discovery/index.mjs +1 -1
- package/dist/discovery/resolver.d.ts.map +1 -1
- package/dist/{handler-BP38rMNl.js → handler-DI_abe9c.js} +153 -125
- package/dist/handler-DI_abe9c.js.map +1 -0
- package/dist/handler-DuwoO5RC.cjs +2 -0
- package/dist/handler-DuwoO5RC.cjs.map +1 -0
- package/dist/handshake/index.cjs +1 -1
- package/dist/handshake/index.mjs +2 -2
- package/dist/helpers.d.ts.map +1 -1
- package/dist/index.cjs +2 -2
- package/dist/index.cjs.map +1 -1
- package/dist/index.mjs +154 -140
- package/dist/index.mjs.map +1 -1
- package/dist/{parser-B6cGUByG.cjs → parser-CL33R9tr.cjs} +2 -2
- package/dist/{parser-B6cGUByG.cjs.map → parser-CL33R9tr.cjs.map} +1 -1
- package/dist/{parser-BPzO8py_.js → parser-DZMv3Jm-.js} +2 -2
- package/dist/{parser-BPzO8py_.js.map → parser-DZMv3Jm-.js.map} +1 -1
- package/dist/primitives-cNNAeFCo.cjs +2 -0
- package/dist/primitives-cNNAeFCo.cjs.map +1 -0
- package/dist/primitives-xIr6Tjk4.js +1457 -0
- package/dist/primitives-xIr6Tjk4.js.map +1 -0
- package/dist/resolver-6B8dI9gr.js +141 -0
- package/dist/resolver-6B8dI9gr.js.map +1 -0
- package/dist/resolver-DCcmyWSK.cjs +4 -0
- package/dist/resolver-DCcmyWSK.cjs.map +1 -0
- package/dist/transport/handler.d.ts +2 -0
- package/dist/transport/handler.d.ts.map +1 -1
- package/dist/transport/index.cjs +1 -1
- package/dist/transport/index.mjs +1 -1
- package/dist/transport/whisper.test.d.ts +2 -0
- package/dist/transport/whisper.test.d.ts.map +1 -0
- package/dist/types.d.ts +2 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +4 -4
- package/dist/command-CUPNiKRl.cjs +0 -4
- package/dist/crypto-CwIMggQG.js.map +0 -1
- package/dist/crypto-IbzNNTgO.cjs +0 -2
- package/dist/crypto-IbzNNTgO.cjs.map +0 -1
- package/dist/handler-BJdwhtkp.cjs +0 -2
- package/dist/handler-BJdwhtkp.cjs.map +0 -1
- package/dist/handler-BP38rMNl.js.map +0 -1
- package/dist/primitives-Bt-L4BZa.js +0 -1483
- package/dist/primitives-Bt-L4BZa.js.map +0 -1
- package/dist/primitives-ClIhDdNZ.cjs +0 -2
- package/dist/primitives-ClIhDdNZ.cjs.map +0 -1
- package/dist/resolver-B7jho9CP.cjs +0 -4
- package/dist/resolver-B7jho9CP.cjs.map +0 -1
- package/dist/resolver-BDCF2KbM.js +0 -162
- package/dist/resolver-BDCF2KbM.js.map +0 -1
- package/dist/types-ANvuLFWH.cjs +0 -2
- package/dist/types-ANvuLFWH.cjs.map +0 -1
- package/dist/types-Xm1vrW4s.js +0 -18
- package/dist/types-Xm1vrW4s.js.map +0 -1
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
let e=require("node:crypto");var t=class extends Error{constructor(e,t){super(e,t),this.name=`TeamspeakError`}},n=class extends t{id;serverMessage;constructor(e,t){super(`TeamSpeak server error: ${t} (id=${e})`),this.name=`ServerError`,this.id=e,this.serverMessage=t}},r=class extends t{command;constructor(e){super(`command timeout: ${e}`),this.name=`CommandTimeoutError`,this.command=e}},i=class extends t{constructor(){super(`already connecting or connected`),this.name=`AlreadyConnectedError`}},a=class extends t{constructor(){super(`EAX tag mismatch`),this.name=`EAXTagMismatchError`}},o=class extends t{constructor(){super(`fake signature mismatch`),this.name=`FakeSignatureMismatchError`}},s=class extends t{constructor(e,t){super(e,t),this.name=`FileTransferError`}},c=class extends t{constructor(){super(`timeout waiting for file transfer notification`),this.name=`FileTransferTimeoutError`}},l=class extends t{constructor(e,t){super(e,t),this.name=`CryptoInitError`}},u=class extends t{constructor(e=`invalid identity format`){super(e),this.name=`InvalidIdentityError`}},d=32,f=65,p=4,m=class{privateKey;offset;constructor(e,t){this.privateKey=e,this.offset=t}publicKeyBase64(){let t=(0,e.createPublicKey)(this.privateKey).export({format:`jwk`});return t.x===void 0||t.y===void 0||typeof t.x!=`string`||typeof t.y!=`string`?``:y(ne(t.x,d),ne(t.y,d))}toString(){let e=this.privateKey.export({format:`jwk`});if(!e.d)return`:${this.offset}`;let t=ne(e.d,d);return`${Buffer.from(t).toString(`base64`)}:${this.offset}`}securityLevel(){let t=(0,e.createHash)(`sha1`);return t.update(this.publicKeyBase64()),t.update(this.offset.toString(10)),re(t.digest())}async upgradeToLevel(t,n){let r=this.publicKeyBase64();for(;;){if(n?.aborted)throw n.reason;let i=(0,e.createHash)(`sha1`);if(i.update(r),i.update(this.offset.toString(10)),re(i.digest())>=t)return;this.offset++,this.offset%10000n==0n&&await new Promise(e=>setImmediate(e))}}};function h(t){let n=t.lastIndexOf(`:`);if(n<0)throw new u;let r=t.slice(0,n),i=t.slice(n+1),a=Buffer.from(r,`base64`),o=BigInt(i);if(a.length>d)throw new u(`private key scalar too large`);let s=Buffer.alloc(d);a.copy(s,d-a.length);let c=(0,e.createECDH)(`prime256v1`);c.setPrivateKey(s);let l=c.getPublicKey(null,`uncompressed`),f=Buffer.from(l.slice(1,33)).toString(`base64url`),p=Buffer.from(l.slice(33,65)).toString(`base64url`);return new m((0,e.createPrivateKey)({key:{kty:`EC`,crv:`P-256`,d:s.toString(`base64url`),x:f,y:p},format:`jwk`}),o)}function g(t){let{privateKey:n}=(0,e.generateKeyPairSync)(`ec`,{namedCurve:`prime256v1`}),r=new m(n,0n),i=r.publicKeyBase64();for(;;){let n=(0,e.createHash)(`sha1`);if(n.update(i),n.update(r.offset.toString(10)),re(n.digest())>=t)return r;r.offset++}}function _(t){let n=(0,e.createHash)(`sha1`).update(t).digest();return Buffer.from(n).toString(`base64`)}function v(t){return(0,e.createHash)(`sha512`).update(t).digest()}function y(e,t){let n=T(3,Buffer.from([7,0])),r=T(2,E(32)),i=T(2,E(e)),a=T(2,E(t));return T(48,Buffer.concat([n,r,i,a])).toString(`base64`)}function b(t){let n=x(t);return(0,e.createPublicKey)({key:{kty:`EC`,crv:`P-256`,x:Buffer.from(n.slice(1,33)).toString(`base64url`),y:Buffer.from(n.slice(33,65)).toString(`base64url`)},format:`jwk`})}function x(e){try{return S(e)}catch{}return C(e)}function S(e){let t=D(e,48).value,n=0,r=D(t,3,n);n+=r.consumed;let i=D(t,2,n);n+=i.consumed;let a=D(t,2,n);n+=a.consumed;let o=D(t,2,n);return w(te(a.value,d),te(o.value,d))}function C(e){let t=D(e,48).value,n=0,r=D(t,2,n);n+=r.consumed;let i=D(t,2,n);return w(te(r.value,d),te(i.value,d))}function w(e,t){if(e.length>d||t.length>d)throw Error(`invalid public key point encoding`);let n=new Uint8Array(f);return n[0]=p,n.set(e,33-e.length),n.set(t,65-t.length),n}function T(e,t){let n=ee(t.length);return Buffer.concat([Buffer.from([e]),n,t])}function ee(e){return e<128?Buffer.from([e]):e<256?Buffer.from([129,e]):Buffer.from([130,e>>8&255,e&255])}function E(e){if(typeof e==`number`){let t=[],n=e;do t.unshift(n&255),n>>=8;while(n>0);return t[0]&128&&t.unshift(0),Buffer.from(t)}let t=0;for(;t<e.length-1&&e[t]===0;)t++;let n=e.slice(t);return n[0]&128?Buffer.concat([Buffer.from([0]),n]):Buffer.from(n)}function D(e,t,n=0){if(e[n]!==t)throw Error(`expected DER tag 0x${t.toString(16)}, got 0x${(e[n]??0).toString(16)}`);let r=n+1,i,a=e[r++];if(a<128)i=a;else if(a===129)i=e[r++];else if(a===130)i=(e[r]<<8|e[r+1])>>>0,r+=2;else throw Error(`unsupported DER length encoding`);return{value:e.slice(r,r+i),consumed:r-n+i}}function te(e,t){let n=0;for(;n<e.length-1&&e[n]===0;)n++;let r=e.slice(n);if(r.length>t)throw Error(`integer too large`);if(r.length===t)return r;let i=new Uint8Array(t);return i.set(r,t-r.length),i}function ne(e,t){let n=Buffer.from(e,`base64url`);if(n.length===t)return n;let r=Buffer.alloc(t);return n.copy(r,t-n.length),r}function re(e){let t=0;for(let n of e)if(n===0)t+=8;else for(let e=0;e<8;e++)if(!(n&1<<e))t++;else return t;return t}function ie(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`&&`BYTES_PER_ELEMENT`in e&&e.BYTES_PER_ELEMENT===1}function ae(e,t=``){if(typeof e!=`number`){let n=t&&`"${t}" `;throw TypeError(`${n}expected number, got ${typeof e}`)}if(!Number.isSafeInteger(e)||e<0){let n=t&&`"${t}" `;throw RangeError(`${n}expected integer >= 0, got ${e}`)}}function O(e,t,n=``){let r=ie(e),i=e?.length,a=t!==void 0;if(!r||a&&i!==t){let o=n&&`"${n}" `,s=a?` of length ${t}`:``,c=r?`length=${i}`:`type=${typeof e}`,l=o+`expected Uint8Array`+s+`, got `+c;throw r?RangeError(l):TypeError(l)}return e}function oe(e,t=!0){if(e.destroyed)throw Error(`Hash instance has been destroyed`);if(t&&e.finished)throw Error(`Hash#digest() has already been called`)}function se(e,t){O(e,void 0,`digestInto() output`);let n=t.outputLen;if(e.length<n)throw RangeError(`"digestInto() output" expected to be of length >=`+n)}function ce(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function le(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}var ue=typeof Uint8Array.from([]).toHex==`function`&&typeof Uint8Array.fromHex==`function`,de=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`));function fe(e){if(O(e),ue)return e.toHex();let t=``;for(let n=0;n<e.length;n++)t+=de[e[n]];return t}var k={_0:48,_9:57,A:65,F:70,a:97,f:102};function pe(e){if(e>=k._0&&e<=k._9)return e-k._0;if(e>=k.A&&e<=k.F)return e-(k.A-10);if(e>=k.a&&e<=k.f)return e-(k.a-10)}function me(e){if(typeof e!=`string`)throw TypeError(`hex string expected, got `+typeof e);if(ue)try{return Uint8Array.fromHex(e)}catch(e){throw e instanceof SyntaxError?RangeError(e.message):e}let t=e.length,n=t/2;if(t%2)throw RangeError(`hex string expected, got unpadded hex of length `+t);let r=new Uint8Array(n);for(let t=0,i=0;t<n;t++,i+=2){let n=pe(e.charCodeAt(i)),a=pe(e.charCodeAt(i+1));if(n===void 0||a===void 0){let t=e[i]+e[i+1];throw RangeError(`hex string expected, got non-hex character "`+t+`" at index `+i)}r[t]=n*16+a}return r}function he(...e){let t=0;for(let n=0;n<e.length;n++){let r=e[n];O(r),t+=r.length}let n=new Uint8Array(t);for(let t=0,r=0;t<e.length;t++){let i=e[t];n.set(i,r),r+=i.length}return n}function ge(e,t={}){let n=(t,n)=>e(n).update(t).digest(),r=e(void 0);return n.outputLen=r.outputLen,n.blockLen=r.blockLen,n.canXOF=r.canXOF,n.create=t=>e(t),Object.assign(n,t),Object.freeze(n)}function _e(e=32){ae(e,`bytesLength`);let t=typeof globalThis==`object`?globalThis.crypto:null;if(typeof t?.getRandomValues!=`function`)throw Error(`crypto.getRandomValues must be defined`);if(e>65536)throw RangeError(`"bytesLength" expected <= 65536, got ${e}`);return t.getRandomValues(new Uint8Array(e))}var ve=e=>({oid:Uint8Array.from([6,9,96,134,72,1,101,3,4,2,e])}),ye=class{blockLen;outputLen;canXOF=!1;padOffset;isLE;buffer;view;finished=!1;length=0;pos=0;destroyed=!1;constructor(e,t,n,r){this.blockLen=e,this.outputLen=t,this.padOffset=n,this.isLE=r,this.buffer=new Uint8Array(e),this.view=le(this.buffer)}update(e){oe(this),O(e);let{view:t,buffer:n,blockLen:r}=this,i=e.length;for(let a=0;a<i;){let o=Math.min(r-this.pos,i-a);if(o===r){let t=le(e);for(;r<=i-a;a+=r)this.process(t,a);continue}n.set(e.subarray(a,a+o),this.pos),this.pos+=o,a+=o,this.pos===r&&(this.process(t,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){oe(this),se(e,this),this.finished=!0;let{buffer:t,view:n,blockLen:r,isLE:i}=this,{pos:a}=this;t[a++]=128,ce(this.buffer.subarray(a)),this.padOffset>r-a&&(this.process(n,0),a=0);for(let e=a;e<r;e++)t[e]=0;n.setBigUint64(r-8,BigInt(this.length*8),i),this.process(n,0);let o=le(e),s=this.outputLen;if(s%4)throw Error(`_sha2: outputLen must be aligned to 32bit`);let c=s/4,l=this.get();if(c>l.length)throw Error(`_sha2: outputLen bigger than state`);for(let e=0;e<c;e++)o.setUint32(4*e,l[e],i)}digest(){let{buffer:e,outputLen:t}=this;this.digestInto(e);let n=e.slice(0,t);return this.destroy(),n}_cloneInto(e){e||=new this.constructor,e.set(...this.get());let{blockLen:t,buffer:n,length:r,finished:i,destroyed:a,pos:o}=this;return e.destroyed=a,e.finished=i,e.length=r,e.pos=o,r%t&&e.buffer.set(n),e}clone(){return this._cloneInto()}},A=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209]),be=BigInt(2**32-1),xe=BigInt(32);function Se(e,t=!1){return t?{h:Number(e&be),l:Number(e>>xe&be)}:{h:Number(e>>xe&be)|0,l:Number(e&be)|0}}function Ce(e,t=!1){let n=e.length,r=new Uint32Array(n),i=new Uint32Array(n);for(let a=0;a<n;a++){let{h:n,l:o}=Se(e[a],t);[r[a],i[a]]=[n,o]}return[r,i]}var we=(e,t,n)=>e>>>n,Te=(e,t,n)=>e<<32-n|t>>>n,j=(e,t,n)=>e>>>n|t<<32-n,M=(e,t,n)=>e<<32-n|t>>>n,Ee=(e,t,n)=>e<<64-n|t>>>n-32,De=(e,t,n)=>e>>>n-32|t<<64-n;function N(e,t,n,r){let i=(t>>>0)+(r>>>0);return{h:e+n+(i/2**32|0)|0,l:i|0}}var Oe=(e,t,n)=>(e>>>0)+(t>>>0)+(n>>>0),ke=(e,t,n,r)=>t+n+r+(e/2**32|0)|0,Ae=(e,t,n,r)=>(e>>>0)+(t>>>0)+(n>>>0)+(r>>>0),je=(e,t,n,r,i)=>t+n+r+i+(e/2**32|0)|0,Me=(e,t,n,r,i)=>(e>>>0)+(t>>>0)+(n>>>0)+(r>>>0)+(i>>>0),Ne=(e,t,n,r,i,a)=>t+n+r+i+a+(e/2**32|0)|0,Pe=Ce(`0x428a2f98d728ae22.0x7137449123ef65cd.0xb5c0fbcfec4d3b2f.0xe9b5dba58189dbbc.0x3956c25bf348b538.0x59f111f1b605d019.0x923f82a4af194f9b.0xab1c5ed5da6d8118.0xd807aa98a3030242.0x12835b0145706fbe.0x243185be4ee4b28c.0x550c7dc3d5ffb4e2.0x72be5d74f27b896f.0x80deb1fe3b1696b1.0x9bdc06a725c71235.0xc19bf174cf692694.0xe49b69c19ef14ad2.0xefbe4786384f25e3.0x0fc19dc68b8cd5b5.0x240ca1cc77ac9c65.0x2de92c6f592b0275.0x4a7484aa6ea6e483.0x5cb0a9dcbd41fbd4.0x76f988da831153b5.0x983e5152ee66dfab.0xa831c66d2db43210.0xb00327c898fb213f.0xbf597fc7beef0ee4.0xc6e00bf33da88fc2.0xd5a79147930aa725.0x06ca6351e003826f.0x142929670a0e6e70.0x27b70a8546d22ffc.0x2e1b21385c26c926.0x4d2c6dfc5ac42aed.0x53380d139d95b3df.0x650a73548baf63de.0x766a0abb3c77b2a8.0x81c2c92e47edaee6.0x92722c851482353b.0xa2bfe8a14cf10364.0xa81a664bbc423001.0xc24b8b70d0f89791.0xc76c51a30654be30.0xd192e819d6ef5218.0xd69906245565a910.0xf40e35855771202a.0x106aa07032bbd1b8.0x19a4c116b8d2d0c8.0x1e376c085141ab53.0x2748774cdf8eeb99.0x34b0bcb5e19b48a8.0x391c0cb3c5c95a63.0x4ed8aa4ae3418acb.0x5b9cca4f7763e373.0x682e6ff3d6b2b8a3.0x748f82ee5defb2fc.0x78a5636f43172f60.0x84c87814a1f0ab72.0x8cc702081a6439ec.0x90befffa23631e28.0xa4506cebde82bde9.0xbef9a3f7b2c67915.0xc67178f2e372532b.0xca273eceea26619c.0xd186b8c721c0c207.0xeada7dd6cde0eb1e.0xf57d4f7fee6ed178.0x06f067aa72176fba.0x0a637dc5a2c898a6.0x113f9804bef90dae.0x1b710b35131c471b.0x28db77f523047d84.0x32caab7b40c72493.0x3c9ebe0a15c9bebc.0x431d67c49c100d4c.0x4cc5d4becb3e42b6.0x597f299cfc657e2a.0x5fcb6fab3ad6faec.0x6c44198c4a475817`.split(`.`).map(e=>BigInt(e))),Fe=Pe[0],Ie=Pe[1],P=new Uint32Array(80),F=new Uint32Array(80),Le=class extends ye{constructor(e){super(128,e,16,!1)}get(){let{Ah:e,Al:t,Bh:n,Bl:r,Ch:i,Cl:a,Dh:o,Dl:s,Eh:c,El:l,Fh:u,Fl:d,Gh:f,Gl:p,Hh:m,Hl:h}=this;return[e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h]}set(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h){this.Ah=e|0,this.Al=t|0,this.Bh=n|0,this.Bl=r|0,this.Ch=i|0,this.Cl=a|0,this.Dh=o|0,this.Dl=s|0,this.Eh=c|0,this.El=l|0,this.Fh=u|0,this.Fl=d|0,this.Gh=f|0,this.Gl=p|0,this.Hh=m|0,this.Hl=h|0}process(e,t){for(let n=0;n<16;n++,t+=4)P[n]=e.getUint32(t),F[n]=e.getUint32(t+=4);for(let e=16;e<80;e++){let t=P[e-15]|0,n=F[e-15]|0,r=j(t,n,1)^j(t,n,8)^we(t,n,7),i=M(t,n,1)^M(t,n,8)^Te(t,n,7),a=P[e-2]|0,o=F[e-2]|0,s=j(a,o,19)^Ee(a,o,61)^we(a,o,6),c=Ae(i,M(a,o,19)^De(a,o,61)^Te(a,o,6),F[e-7],F[e-16]);P[e]=je(c,r,s,P[e-7],P[e-16])|0,F[e]=c|0}let{Ah:n,Al:r,Bh:i,Bl:a,Ch:o,Cl:s,Dh:c,Dl:l,Eh:u,El:d,Fh:f,Fl:p,Gh:m,Gl:h,Hh:g,Hl:_}=this;for(let e=0;e<80;e++){let t=j(u,d,14)^j(u,d,18)^Ee(u,d,41),v=M(u,d,14)^M(u,d,18)^De(u,d,41),y=u&f^~u&m,b=d&p^~d&h,x=Me(_,v,b,Ie[e],F[e]),S=Ne(x,g,t,y,Fe[e],P[e]),C=x|0,w=j(n,r,28)^Ee(n,r,34)^Ee(n,r,39),T=M(n,r,28)^De(n,r,34)^De(n,r,39),ee=n&i^n&o^i&o,E=r&a^r&s^a&s;g=m|0,_=h|0,m=f|0,h=p|0,f=u|0,p=d|0,{h:u,l:d}=N(c|0,l|0,S|0,C|0),c=o|0,l=s|0,o=i|0,s=a|0,i=n|0,a=r|0;let D=Oe(C,T,E);n=ke(D,S,w,ee),r=D|0}({h:n,l:r}=N(this.Ah|0,this.Al|0,n|0,r|0)),{h:i,l:a}=N(this.Bh|0,this.Bl|0,i|0,a|0),{h:o,l:s}=N(this.Ch|0,this.Cl|0,o|0,s|0),{h:c,l}=N(this.Dh|0,this.Dl|0,c|0,l|0),{h:u,l:d}=N(this.Eh|0,this.El|0,u|0,d|0),{h:f,l:p}=N(this.Fh|0,this.Fl|0,f|0,p|0),{h:m,l:h}=N(this.Gh|0,this.Gl|0,m|0,h|0),{h:g,l:_}=N(this.Hh|0,this.Hl|0,g|0,_|0),this.set(n,r,i,a,o,s,c,l,u,d,f,p,m,h,g,_)}roundClean(){ce(P,F)}destroy(){this.destroyed=!0,ce(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}},Re=class extends Le{Ah=A[0]|0;Al=A[1]|0;Bh=A[2]|0;Bl=A[3]|0;Ch=A[4]|0;Cl=A[5]|0;Dh=A[6]|0;Dl=A[7]|0;Eh=A[8]|0;El=A[9]|0;Fh=A[10]|0;Fl=A[11]|0;Gh=A[12]|0;Gl=A[13]|0;Hh=A[14]|0;Hl=A[15]|0;constructor(){super(64)}},ze=ge(()=>new Re,ve(3)),I=(e,t,n)=>O(e,t,n),Be=ae,Ve=fe,L=(...e)=>he(...e),He=e=>me(e),Ue=ie,We=e=>_e(e),Ge=BigInt(0),Ke=BigInt(1);function qe(e,t=``){if(typeof e!=`boolean`){let n=t&&`"${t}" `;throw TypeError(n+`expected boolean, got type=`+typeof e)}return e}function Je(e){if(typeof e==`bigint`){if(!nt(e))throw RangeError(`positive bigint expected, got `+e)}else Be(e);return e}function R(e,t=``){if(typeof e!=`number`){let n=t&&`"${t}" `;throw TypeError(n+`expected number, got type=`+typeof e)}if(!Number.isSafeInteger(e)){let n=t&&`"${t}" `;throw RangeError(n+`expected safe integer, got `+e)}}function Ye(e){if(typeof e!=`string`)throw TypeError(`hex string expected, got `+typeof e);return e===``?Ge:BigInt(`0x`+e)}function Xe(e){return Ye(fe(e))}function z(e){return Ye(fe(et(O(e)).reverse()))}function Ze(e,t){if(ae(t),t===0)throw RangeError(`zero length`);e=Je(e);let n=e.toString(16);if(n.length>t*2)throw RangeError(`number too large`);return me(n.padStart(t*2,`0`))}function Qe(e,t){return Ze(e,t).reverse()}function $e(e,t){if(e=I(e),t=I(t),e.length!==t.length)return!1;let n=0;for(let r=0;r<e.length;r++)n|=e[r]^t[r];return n===0}function et(e){return Uint8Array.from(I(e))}function tt(e){if(typeof e!=`string`)throw TypeError(`ascii string expected, got `+typeof e);return Uint8Array.from(e,(t,n)=>{let r=t.charCodeAt(0);if(t.length!==1||r>127)throw RangeError(`string contains non-ASCII character "${e[n]}" with code ${r} at position ${n}`);return r})}var nt=e=>typeof e==`bigint`&&Ge<=e;function rt(e,t,n){return nt(e)&&nt(t)&&nt(n)&&t<=e&&e<n}function it(e,t,n,r){if(!rt(t,n,r))throw RangeError(`expected valid `+e+`: `+n+` <= n < `+r+`, got `+t)}function at(e){if(e<Ge)throw Error(`expected non-negative bigint, got `+e);let t;for(t=0;e>Ge;e>>=Ke,t+=1);return t}var ot=e=>(Ke<<BigInt(e))-Ke;function st(e,t={},n={}){if(Object.prototype.toString.call(e)!==`[object Object]`)throw TypeError(`expected valid options object`);function r(t,n,r){if(!r&&n!==`function`&&!Object.hasOwn(e,t))throw TypeError(`param "${t}" is invalid: expected own property`);let i=e[t];if(r&&i===void 0)return;let a=typeof i;if(a!==n||i===null)throw TypeError(`param "${t}" is invalid: expected ${n}, got ${a}`)}let i=(e,t)=>Object.entries(e).forEach(([e,n])=>r(e,n,t));i(t,!1),i(n,!0)}var ct=()=>{throw Error(`not implemented`)},B=BigInt(0),V=BigInt(1),H=BigInt(2),lt=BigInt(3),ut=BigInt(4),dt=BigInt(5),ft=BigInt(7),pt=BigInt(8),mt=BigInt(9),ht=BigInt(16);function U(e,t){if(t<=B)throw Error(`mod: expected positive modulus, got `+t);let n=e%t;return n>=B?n:t+n}function W(e,t,n){if(t<B)throw Error(`pow2: expected non-negative exponent, got `+t);let r=e;for(;t-->B;)r*=r,r%=n;return r}function gt(e,t){if(e===B)throw Error(`invert: expected non-zero number`);if(t<=B)throw Error(`invert: expected positive modulus, got `+t);let n=U(e,t),r=t,i=B,a=V,o=V,s=B;for(;n!==B;){let e=r/n,t=r-n*e,c=i-o*e,l=a-s*e;r=n,n=t,i=o,a=s,o=c,s=l}if(r!==V)throw Error(`invert: does not exist`);return U(i,t)}function _t(e,t,n){let r=e;if(!r.eql(r.sqr(t),n))throw Error(`Cannot find square root`)}function vt(e,t){let n=e,r=(n.ORDER+V)/ut,i=n.pow(t,r);return _t(n,i,t),i}function yt(e,t){let n=e,r=(n.ORDER-dt)/pt,i=n.mul(t,H),a=n.pow(i,r),o=n.mul(t,a),s=n.mul(n.mul(o,H),a),c=n.mul(o,n.sub(s,n.ONE));return _t(n,c,t),c}function bt(e){let t=jt(e),n=xt(e),r=n(t,t.neg(t.ONE)),i=n(t,r),a=n(t,t.neg(r)),o=(e+ft)/ht;return((e,t)=>{let n=e,s=n.pow(t,o),c=n.mul(s,r),l=n.mul(s,i),u=n.mul(s,a),d=n.eql(n.sqr(c),t),f=n.eql(n.sqr(l),t);s=n.cmov(s,c,d),c=n.cmov(u,l,f);let p=n.eql(n.sqr(c),t),m=n.cmov(s,c,p);return _t(n,m,t),m})}function xt(e){if(e<lt)throw Error(`sqrt is not defined for small field`);let t=e-V,n=0;for(;t%H===B;)t/=H,n++;let r=H,i=jt(e);for(;Dt(i,r)===1;)if(r++>1e3)throw Error(`Cannot find square root: probably non-prime P`);if(n===1)return vt;let a=i.pow(r,t),o=(t+V)/H;return function(e,r){let i=e;if(i.is0(r))return r;if(Dt(i,r)!==1)throw Error(`Cannot find square root`);let s=n,c=i.mul(i.ONE,a),l=i.pow(r,t),u=i.pow(r,o);for(;!i.eql(l,i.ONE);){if(i.is0(l))return i.ZERO;let e=1,t=i.sqr(l);for(;!i.eql(t,i.ONE);)if(e++,t=i.sqr(t),e===s)throw Error(`Cannot find square root`);let n=V<<BigInt(s-e-1),r=i.pow(c,n);s=e,c=i.sqr(r),l=i.mul(l,c),u=i.mul(u,r)}return u}}function St(e){return e%ut===lt?vt:e%pt===dt?yt:e%ht===mt?bt(e):xt(e)}var G=(e,t)=>(U(e,t)&V)===V,Ct=[`create`,`isValid`,`is0`,`neg`,`inv`,`sqrt`,`sqr`,`eql`,`add`,`sub`,`mul`,`pow`,`div`,`addN`,`subN`,`mulN`,`sqrN`];function wt(e){if(st(e,Ct.reduce((e,t)=>(e[t]=`function`,e),{ORDER:`bigint`,BYTES:`number`,BITS:`number`})),R(e.BYTES,`BYTES`),R(e.BITS,`BITS`),e.BYTES<1||e.BITS<1)throw Error(`invalid field: expected BYTES/BITS > 0`);if(e.ORDER<=V)throw Error(`invalid field: expected ORDER > 1, got `+e.ORDER);return e}function Tt(e,t,n){let r=e;if(n<B)throw Error(`invalid exponent, negatives unsupported`);if(n===B)return r.ONE;if(n===V)return t;let i=r.ONE,a=t;for(;n>B;)n&V&&(i=r.mul(i,a)),a=r.sqr(a),n>>=V;return i}function Et(e,t,n=!1){let r=e,i=Array(t.length).fill(n?r.ZERO:void 0),a=t.reduce((e,t,n)=>r.is0(t)?e:(i[n]=e,r.mul(e,t)),r.ONE),o=r.inv(a);return t.reduceRight((e,t,n)=>r.is0(t)?e:(i[n]=r.mul(e,i[n]),r.mul(e,t)),o),i}function Dt(e,t){let n=e,r=(n.ORDER-V)/H,i=n.pow(t,r),a=n.eql(i,n.ONE),o=n.eql(i,n.ZERO),s=n.eql(i,n.neg(n.ONE));if(!a&&!o&&!s)throw Error(`invalid Legendre symbol result`);return a?1:o?0:-1}function Ot(e,t){if(t!==void 0&&Be(t),e<=B)throw Error(`invalid n length: expected positive n, got `+e);if(t!==void 0&&t<1)throw Error(`invalid n length: expected positive bit length, got `+t);let n=at(e);if(t!==void 0&&t<n)throw Error(`invalid n length: expected bit length (${n}) >= n.length (${t})`);let r=t===void 0?n:t;return{nBitLength:r,nByteLength:Math.ceil(r/8)}}var kt=new WeakMap,At=class{ORDER;BITS;BYTES;isLE;ZERO=B;ONE=V;_lengths;_mod;constructor(e,t={}){if(e<=V)throw Error(`invalid field: expected ORDER > 1, got `+e);let n;this.isLE=!1,typeof t==`object`&&t&&(typeof t.BITS==`number`&&(n=t.BITS),typeof t.sqrt==`function`&&Object.defineProperty(this,"sqrt",{value:t.sqrt,enumerable:!0}),typeof t.isLE==`boolean`&&(this.isLE=t.isLE),t.allowedLengths&&(this._lengths=Object.freeze(t.allowedLengths.slice())),typeof t.modFromBytes==`boolean`&&(this._mod=t.modFromBytes));let{nBitLength:r,nByteLength:i}=Ot(e,n);if(i>2048)throw Error(`invalid field: expected ORDER of <= 2048 bytes`);this.ORDER=e,this.BITS=r,this.BYTES=i,Object.freeze(this)}create(e){return U(e,this.ORDER)}isValid(e){if(typeof e!=`bigint`)throw TypeError(`invalid field element: expected bigint, got `+typeof e);return B<=e&&e<this.ORDER}is0(e){return e===B}isValidNot0(e){return!this.is0(e)&&this.isValid(e)}isOdd(e){return(e&V)===V}neg(e){return U(-e,this.ORDER)}eql(e,t){return e===t}sqr(e){return U(e*e,this.ORDER)}add(e,t){return U(e+t,this.ORDER)}sub(e,t){return U(e-t,this.ORDER)}mul(e,t){return U(e*t,this.ORDER)}pow(e,t){return Tt(this,e,t)}div(e,t){return U(e*gt(t,this.ORDER),this.ORDER)}sqrN(e){return e*e}addN(e,t){return e+t}subN(e,t){return e-t}mulN(e,t){return e*t}inv(e){return gt(e,this.ORDER)}sqrt(e){let t=kt.get(this);return t||kt.set(this,t=St(this.ORDER)),t(this,e)}toBytes(e){return this.isLE?Qe(e,this.BYTES):Ze(e,this.BYTES)}fromBytes(e,t=!1){I(e);let{_lengths:n,BYTES:r,isLE:i,ORDER:a,_mod:o}=this;if(n){if(e.length<1||!n.includes(e.length)||e.length>r)throw Error(`Field.fromBytes: expected `+n+` bytes, got `+e.length);let t=new Uint8Array(r);t.set(e,i?0:t.length-e.length),e=t}if(e.length!==r)throw Error(`Field.fromBytes: expected `+r+` bytes, got `+e.length);let s=i?z(e):Xe(e);if(o&&(s=U(s,a)),!t&&!this.isValid(s))throw Error(`invalid field element: outside of range 0..ORDER`);return s}invertBatch(e){return Et(this,e)}cmov(e,t,n){return qe(n,`condition`),n?t:e}};Object.freeze(At.prototype);function jt(e,t={}){return new At(e,t)}var Mt=BigInt(0),Nt=BigInt(1);function Pt(e,t){let n=t.negate();return e?n:t}function Ft(e,t){let n=Et(e.Fp,t.map(e=>e.Z));return t.map((t,r)=>e.fromAffine(t.toAffine(n[r])))}function It(e,t){if(!Number.isSafeInteger(e)||e<=0||e>t)throw Error(`invalid window size, expected [1..`+t+`], got W=`+e)}function Lt(e,t){It(e,t);let n=Math.ceil(t/e)+1,r=2**(e-1),i=2**e;return{windows:n,windowSize:r,mask:ot(e),maxNumber:i,shiftBy:BigInt(e)}}function Rt(e,t,n){let{windowSize:r,mask:i,maxNumber:a,shiftBy:o}=n,s=Number(e&i),c=e>>o;s>r&&(s-=a,c+=Nt);let l=t*r,u=l+Math.abs(s)-1,d=s===0,f=s<0,p=t%2!=0;return{nextN:c,offset:u,isZero:d,isNeg:f,isNegF:p,offsetF:l}}var zt=new WeakMap,Bt=new WeakMap;function Vt(e){return Bt.get(e)||1}function Ht(e){if(e!==Mt)throw Error(`invalid wNAF`)}var Ut=class{BASE;ZERO;Fn;bits;constructor(e,t){this.BASE=e.BASE,this.ZERO=e.ZERO,this.Fn=e.Fn,this.bits=t}_unsafeLadder(e,t,n=this.ZERO){let r=e;for(;t>Mt;)t&Nt&&(n=n.add(r)),r=r.double(),t>>=Nt;return n}precomputeWindow(e,t){let{windows:n,windowSize:r}=Lt(t,this.bits),i=[],a=e,o=a;for(let e=0;e<n;e++){o=a,i.push(o);for(let e=1;e<r;e++)o=o.add(a),i.push(o);a=o.double()}return i}wNAF(e,t,n){if(!this.Fn.isValid(n))throw Error(`invalid scalar`);let r=this.ZERO,i=this.BASE,a=Lt(e,this.bits);for(let e=0;e<a.windows;e++){let{nextN:o,offset:s,isZero:c,isNeg:l,isNegF:u,offsetF:d}=Rt(n,e,a);n=o,c?i=i.add(Pt(u,t[d])):r=r.add(Pt(l,t[s]))}return Ht(n),{p:r,f:i}}wNAFUnsafe(e,t,n,r=this.ZERO){let i=Lt(e,this.bits);for(let e=0;e<i.windows&&n!==Mt;e++){let{nextN:a,offset:o,isZero:s,isNeg:c}=Rt(n,e,i);if(n=a,!s){let e=t[o];r=r.add(c?e.negate():e)}}return Ht(n),r}getPrecomputes(e,t,n){let r=zt.get(t);return r||(r=this.precomputeWindow(t,e),e!==1&&(typeof n==`function`&&(r=n(r)),zt.set(t,r))),r}cached(e,t,n){let r=Vt(e);return this.wNAF(r,this.getPrecomputes(r,e,n),t)}unsafe(e,t,n,r){let i=Vt(e);return i===1?this._unsafeLadder(e,t,r):this.wNAFUnsafe(i,this.getPrecomputes(i,e,n),t,r)}createCache(e,t){It(t,this.bits),Bt.set(e,t),zt.delete(e)}hasCache(e){return Vt(e)!==1}};function Wt(e,t,n){if(t){if(t.ORDER!==e)throw Error(`Field.ORDER must match order: Fp == p, Fn == n`);return wt(t),t}else return jt(e,{isLE:n})}function Gt(e,t,n={},r){if(r===void 0&&(r=e===`edwards`),!t||typeof t!=`object`)throw Error(`expected valid ${e} CURVE object`);for(let e of[`p`,`n`,`h`]){let n=t[e];if(!(typeof n==`bigint`&&n>Mt))throw Error(`CURVE.${e} must be positive bigint`)}let i=Wt(t.p,n.Fp,r),a=Wt(t.n,n.Fn,r),o=[`Gx`,`Gy`,`a`,e===`weierstrass`?`b`:`d`];for(let e of o)if(!i.isValid(t[e]))throw Error(`CURVE.${e} must be valid field element of CURVE.Fp`);return t=Object.freeze(Object.assign({},t)),{CURVE:t,Fp:i,Fn:a}}function Kt(e,t){return function(n){let r=e(n);return{secretKey:r,publicKey:t(r)}}}var K=BigInt(0),q=BigInt(1),qt=BigInt(2),Jt=BigInt(8);function Yt(e,t,n,r){let i=e.sqr(n),a=e.sqr(r),o=e.add(e.mul(t.a,i),a),s=e.add(e.ONE,e.mul(t.d,e.mul(i,a)));return e.eql(o,s)}function Xt(e,t={}){let n=t,r=Gt(`edwards`,e,n,n.FpFnLE),{Fp:i,Fn:a}=r,o=r.CURVE,{h:s}=o;st(n,{},{uvRatio:`function`});let c=qt<<BigInt(a.BYTES*8)-q,l=e=>i.create(e),u=n.uvRatio===void 0?(e,t)=>{try{return{isValid:!0,value:i.sqrt(i.div(e,t))}}catch{return{isValid:!1,value:K}}}:n.uvRatio;if(!Yt(i,o,o.Gx,o.Gy))throw Error(`bad curve params: generator point`);function d(e,t,n=!1){let r=n?q:K;return it(`coordinate `+e,t,r,c),t}function f(e){if(!(e instanceof p))throw Error(`EdwardsPoint expected`)}class p{static BASE=new p(o.Gx,o.Gy,q,l(o.Gx*o.Gy));static ZERO=new p(K,q,q,K);static Fp=i;static Fn=a;X;Y;Z;T;constructor(e,t,n,r){this.X=d(`x`,e),this.Y=d(`y`,t),this.Z=d(`z`,n,!0),this.T=d(`t`,r),Object.freeze(this)}static CURVE(){return o}static fromAffine(e){if(e instanceof p)throw Error(`extended point not allowed`);let{x:t,y:n}=e||{};return d(`x`,t),d(`y`,n),new p(t,n,q,l(t*n))}static fromBytes(e,t=!1){let n=i.BYTES,{a:r,d:a}=o;e=et(I(e,n,`point`)),qe(t,`zip215`);let s=et(e),d=e[n-1];s[n-1]=d&-129;let f=z(s);it(`point.y`,f,K,t?c:i.ORDER);let m=l(f*f),h=l(m-q),g=l(a*m-r),{isValid:_,value:v}=u(h,g);if(!_)throw Error(`bad point: invalid y coordinate`);let y=(v&q)===q,b=(d&128)!=0;if(!t&&v===K&&b)throw Error(`bad point: x=0 and x_0=1`);return b!==y&&(v=l(-v)),p.fromAffine({x:v,y:f})}static fromHex(e,t=!1){return p.fromBytes(He(e),t)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}precompute(e=8,t=!0){return m.createCache(this,e),t||this.multiply(qt),this}assertValidity(){let e=this,{a:t,d:n}=o;if(e.is0())throw Error(`bad point: ZERO`);let{X:r,Y:i,Z:a,T:s}=e,c=l(r*r),u=l(i*i),d=l(a*a),f=l(d*d),p=l(c*t);if(l(d*l(p+u))!==l(f+l(n*l(c*u))))throw Error(`bad point: equation left != right (1)`);if(l(r*i)!==l(a*s))throw Error(`bad point: equation left != right (2)`)}equals(e){f(e);let{X:t,Y:n,Z:r}=this,{X:i,Y:a,Z:o}=e,s=l(t*o),c=l(i*r),u=l(n*o),d=l(a*r);return s===c&&u===d}is0(){return this.equals(p.ZERO)}negate(){return new p(l(-this.X),this.Y,this.Z,l(-this.T))}double(){let{a:e}=o,{X:t,Y:n,Z:r}=this,i=l(t*t),a=l(n*n),s=l(qt*l(r*r)),c=l(e*i),u=t+n,d=l(l(u*u)-i-a),f=c+a,m=f-s,h=c-a,g=l(d*m),_=l(f*h),v=l(d*h),y=l(m*f);return new p(g,_,y,v)}add(e){f(e);let{a:t,d:n}=o,{X:r,Y:i,Z:a,T:s}=this,{X:c,Y:u,Z:d,T:m}=e,h=l(r*c),g=l(i*u),_=l(s*n*m),v=l(a*d),y=l((r+i)*(c+u)-h-g),b=v-_,x=v+_,S=l(g-t*h),C=l(y*b),w=l(x*S),T=l(y*S),ee=l(b*x);return new p(C,w,ee,T)}subtract(e){return f(e),this.add(e.negate())}multiply(e){if(!a.isValidNot0(e))throw RangeError(`invalid scalar: expected 1 <= sc < curve.n`);let{p:t,f:n}=m.cached(this,e,e=>Ft(p,e));return Ft(p,[t,n])[0]}multiplyUnsafe(e){if(!a.isValid(e))throw RangeError(`invalid scalar: expected 0 <= sc < curve.n`);return e===K?p.ZERO:this.is0()||e===q?this:m.unsafe(this,e,e=>Ft(p,e))}isSmallOrder(){return this.clearCofactor().is0()}isTorsionFree(){return m.unsafe(this,o.n).is0()}toAffine(e){let t=this,n=e,{X:r,Y:a,Z:o}=t,s=t.is0();n??=s?Jt:i.inv(o);let c=l(r*n),u=l(a*n),d=i.mul(o,n);if(s)return{x:K,y:q};if(d!==q)throw Error(`invZ was invalid`);return{x:c,y:u}}clearCofactor(){return s===q?this:this.multiplyUnsafe(s)}toBytes(){let{x:e,y:t}=this.toAffine(),n=i.toBytes(t);return n[n.length-1]|=e&q?128:0,n}toHex(){return Ve(this.toBytes())}toString(){return`<Point ${this.is0()?`ZERO`:this.toHex()}>`}}let m=new Ut(p,a.BITS);return a.BITS>=8&&p.BASE.precompute(8),Object.freeze(p.prototype),Object.freeze(p),p}var Zt=class{static BASE;static ZERO;static Fp;static Fn;ep;constructor(e){this.ep=e}static fromBytes(e){ct()}static fromHex(e){ct()}get x(){return this.toAffine().x}get y(){return this.toAffine().y}clearCofactor(){return this}assertValidity(){this.ep.assertValidity()}toAffine(e){return this.ep.toAffine(e)}toHex(){return Ve(this.toBytes())}toString(){return this.toHex()}isTorsionFree(){return!0}isSmallOrder(){return!1}add(e){return this.assertSame(e),this.init(this.ep.add(e.ep))}subtract(e){return this.assertSame(e),this.init(this.ep.subtract(e.ep))}multiply(e){return this.init(this.ep.multiply(e))}multiplyUnsafe(e){return this.init(this.ep.multiplyUnsafe(e))}double(){return this.init(this.ep.double())}negate(){return this.init(this.ep.negate())}precompute(e,t){return this.ep.precompute(e,t),this}};function Qt(e,t,n={}){if(typeof t!=`function`)throw Error(`"hash" function param is required`);let r=t,i=n;st(i,{},{adjustScalarBytes:`function`,randomBytes:`function`,domain:`function`,prehash:`function`,zip215:`boolean`,mapToCurve:`function`});let{prehash:a}=i,{BASE:o,Fp:s,Fn:c}=e,l=r.outputLen,u=2*s.BYTES;if(l!==void 0&&(R(l,`hash.outputLen`),l!==u))throw Error(`hash.outputLen must be ${u}, got ${l}`);let d=i.randomBytes===void 0?We:i.randomBytes,f=i.adjustScalarBytes===void 0?e=>e:i.adjustScalarBytes,p=i.domain===void 0?(e,t,n)=>{if(qe(n,`phflag`),t.length||n)throw Error(`Contexts/pre-hash are not supported`);return e}:i.domain;function m(e){return c.create(z(e))}function h(e){let t=C.secretKey;I(e,C.secretKey,`secretKey`);let n=I(r(e),2*t,`hashedSecretKey`),i=f(n.slice(0,t));return{head:i,prefix:n.slice(t,2*t),scalar:m(i)}}function g(e){let{head:t,prefix:n,scalar:r}=h(e),i=o.multiply(r);return{head:t,prefix:n,scalar:r,point:i,pointBytes:i.toBytes()}}function _(e){return g(e).pointBytes}function v(e=Uint8Array.of(),...t){let n=L(...t);return m(r(p(n,I(e,void 0,`context`),!!a)))}function y(e,t,n={}){e=I(e,void 0,`message`),a&&(e=a(e));let{prefix:r,scalar:i,pointBytes:s}=g(t),l=v(n.context,r,e),u=o.multiply(l).toBytes(),d=v(n.context,u,s,e),f=c.create(l+d*i);if(!c.isValid(f))throw Error(`sign failed: invalid s`);return I(L(u,c.toBytes(f)),C.signature,`result`)}let b={zip215:i.zip215};function x(t,n,r,i=b){let{context:s}=i,c=i.zip215===void 0?!!b.zip215:i.zip215,l=C.signature;t=I(t,l,`signature`),n=I(n,void 0,`message`),r=I(r,C.publicKey,`publicKey`),c!==void 0&&qe(c,`zip215`),a&&(n=a(n));let u=l/2,d=t.subarray(0,u),f=z(t.subarray(u,l)),p,m,h;try{p=e.fromBytes(r,c),m=e.fromBytes(d,c),h=o.multiplyUnsafe(f)}catch{return!1}if(!c&&p.isSmallOrder())return!1;let g=v(s,d,r,n);return m.add(p.multiplyUnsafe(g)).subtract(h).clearCofactor().is0()}let S=s.BYTES,C={secretKey:S,publicKey:S,signature:2*S,seed:S};function w(e){return e=e===void 0?d(C.seed):e,I(e,C.seed,`seed`)}function T(e){return Ue(e)&&e.length===C.secretKey}function ee(t,n){try{return!!e.fromBytes(t,n===void 0?b.zip215:n)}catch{return!1}}let E={getExtendedPublicKey:g,randomSecretKey:w,isValidSecretKey:T,isValidPublicKey:ee,toMontgomery(t){let{y:n}=e.fromBytes(t),r=C.publicKey,i=r===32;if(!i&&r!==57)throw Error(`only defined for 25519 and 448`);let a=i?s.div(q+n,q-n):s.div(n-q,n+q);return s.toBytes(a)},toMontgomerySecret(e){let t=C.secretKey;I(e,t);let n=r(e.subarray(0,t));return f(n).subarray(0,t)}};return Object.freeze(C),Object.freeze(E),Object.freeze({keygen:Kt(w,_),getPublicKey:_,sign:y,verify:x,utils:E,Point:e,lengths:C})}function $t(e,t){if(R(e),R(t),t<0||t>4)throw Error(`invalid I2OSP length: `+t);if(e<0||e>2**(8*t)-1)throw Error(`invalid I2OSP input: `+e);let n=Array.from({length:t}).fill(0);for(let r=t-1;r>=0;r--)n[r]=e&255,e>>>=8;return new Uint8Array(n)}function en(e,t){let n=new Uint8Array(e.length);for(let r=0;r<e.length;r++)n[r]=e[r]^t[r];return n}function tn(e){if(!Ue(e)&&typeof e!=`string`)throw Error(`DST must be Uint8Array or ascii string`);let t=typeof e==`string`?tt(e):e;if(t.length===0)throw Error(`DST must be non-empty`);return t}function nn(e,t,n,r){I(e),R(n),t=tn(t),t.length>255&&(t=r(L(tt(`H2C-OVERSIZE-DST-`),t)));let{outputLen:i,blockLen:a}=r,o=Math.ceil(n/i);if(n>65535||o>255)throw Error(`expand_message_xmd: invalid lenInBytes`);let s=L(t,$t(t.length,1)),c=new Uint8Array(a),l=$t(n,2),u=Array(o),d=r(L(c,e,l,$t(0,1),s));u[0]=r(L(d,$t(1,1),s));for(let e=1;e<o;e++)u[e]=r(L(en(d,u[e-1]),$t(e+1,1),s));return L(...u).slice(0,n)}var rn=`HashToScalar-`,an=BigInt(0),J=BigInt(1),on=BigInt(2),sn=BigInt(5),cn=BigInt(8),Y=BigInt(`0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed`),ln={p:Y,n:BigInt(`0x1000000000000000000000000000000014def9dea2f79cd65812631a5cf5d3ed`),h:cn,a:BigInt(`0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec`),d:BigInt(`0x52036cee2b6ffe738cc740797779e89800700a4d4141d8ab75eb4dca135978a3`),Gx:BigInt(`0x216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a`),Gy:BigInt(`0x6666666666666666666666666666666666666666666666666666666666666658`)};function un(e){let t=BigInt(10),n=BigInt(20),r=BigInt(40),i=BigInt(80),a=Y,o=e*e%a*e%a,s=W(W(o,on,a)*o%a,J,a)*e%a,c=W(s,sn,a)*s%a,l=W(c,t,a)*c%a,u=W(l,n,a)*l%a,d=W(u,r,a)*u%a;return{pow_p_5_8:W(W(W(W(d,i,a)*d%a,i,a)*d%a,t,a)*c%a,on,a)*e%a,b2:o}}function dn(e){return e[0]&=248,e[31]&=127,e[31]|=64,e}var fn=BigInt(`19681161376707505956807079304988542015446066515923890162744021073123829784752`);function pn(e,t){let n=Y,r=U(t*t*t,n),i=un(e*U(r*r*t,n)).pow_p_5_8,a=U(e*r*i,n),o=U(t*a*a,n),s=a,c=U(a*fn,n),l=o===e,u=o===U(-e,n),d=o===U(-e*fn,n);return l&&(a=s),(u||d)&&(a=c),G(a,n)&&(a=U(-a,n)),{isValid:l||u,value:a}}var X=Xt(ln,{uvRatio:pn}),Z=X.Fp,mn=X.Fn;function hn(e){return Qt(X,ze,Object.assign({adjustScalarBytes:dn,zip215:!0},e))}var Q=hn({}),gn=fn,_n=BigInt(`25063068953384623474111414158702152701244531502492656460079210482610430750235`),vn=BigInt(`54469307008909316920995813868745141605393597292927456921205312896311721017578`),yn=BigInt(`1159843021668779879193775521855586647937357759715417654439879720876111806838`),bn=BigInt(`40440834346308536858101042469323190826248399146238708352240133220865137265952`),xn=e=>pn(J,e),Sn=BigInt(`0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff`),Cn=e=>Z.create(z(e)&Sn);function wn(e){let{d:t}=ln,n=Y,r=e=>Z.create(e),i=r(gn*e*e),a=r((i+J)*yn),o=BigInt(-1),s=r((o-t*i)*r(i+t)),{isValid:c,value:l}=pn(a,s),u=r(l*e);G(u,n)||(u=r(-u)),c||(l=u),c||(o=i);let d=r(o*(i-J)*bn-s),f=l*l,p=r((l+l)*s),m=r(d*_n),h=r(J-f),g=r(J+f);return new X(r(p*g),r(h*m),r(m*g),r(p*h))}var Tn=class e extends Zt{static BASE=new e(X.BASE);static ZERO=new e(X.ZERO);static Fp=Z;static Fn=mn;constructor(e){super(e)}static fromAffine(t){return new e(X.fromAffine(t))}assertSame(t){if(!(t instanceof e))throw Error(`RistrettoPoint expected`)}init(t){return new e(t)}static fromBytes(t){O(t,32);let{a:n,d:r}=ln,i=Y,a=e=>Z.create(e),o=Cn(t);if(!$e(Z.toBytes(o),t)||G(o,i))throw Error(`invalid ristretto255 encoding 1`);let s=a(o*o),c=a(J+n*s),l=a(J-n*s),u=a(c*c),d=a(l*l),f=a(n*r*u-d),{isValid:p,value:m}=xn(a(f*d)),h=a(m*l),g=a(m*h*f),_=a((o+o)*h);G(_,i)&&(_=a(-_));let v=a(c*g),y=a(_*v);if(!p||G(y,i)||v===an)throw Error(`invalid ristretto255 encoding 2`);return new e(new X(_,v,J,y))}static fromHex(t){return e.fromBytes(me(t))}toBytes(){let{X:e,Y:t,Z:n,T:r}=this.ep,i=Y,a=e=>Z.create(e),o=a(a(n+t)*a(n-t)),s=a(e*t),{value:c}=xn(a(o*a(s*s))),l=a(c*o),u=a(c*s),d=a(l*u*r),f;if(G(r*d,i)){let n=a(t*gn),r=a(e*gn);e=n,t=r,f=a(l*vn)}else f=u;G(e*d,i)&&(t=a(-t));let p=a((n-t)*f);return G(p,i)&&(p=a(-p)),Z.toBytes(p)}equals(e){this.assertSame(e);let{X:t,Y:n}=this.ep,{X:r,Y:i}=e.ep,a=e=>Z.create(e),o=a(t*i)===a(n*r),s=a(n*i)===a(t*r);return o||s}is0(){return this.equals(e.ZERO)}};Object.freeze(Tn.BASE),Object.freeze(Tn.ZERO),Object.freeze(Tn.prototype),Object.freeze(Tn);var En=Object.freeze({Point:Tn,hashToCurve(e,t){let n=nn(e,t?.DST===void 0?`ristretto255_XMD:SHA-512_R255MAP_RO_`:t.DST,64,ze);return En.deriveToCurve(n)},hashToScalar(e,t={DST:rn}){let n=nn(e,t.DST,64,ze);return mn.create(z(n))},deriveToCurve(e){O(e,64);let t=wn(Cn(e.subarray(0,32))),n=wn(Cn(e.subarray(32,64)));return new Tn(t.add(n))}}),$=32,Dn=248,On=127,kn=64,An=128,jn=127;function Mn(e){e.length<$||(e[0]=(e[0]??0)&Dn,e[$-1]=(e[$-1]??0)&On|kn)}function Nn(){let t=new Uint8Array((0,e.randomBytes)($));Mn(t);let n=Rn(t)%Q.Point.CURVE().n;return[Q.Point.BASE.multiply(n).toBytes(),Uint8Array.from(t)]}function Pn(t,n){let r=(0,e.createSign)(`SHA256`);return r.update(n),r.sign(t)}function Fn(t,n,r){try{let i=(0,e.createVerify)(`SHA256`);return i.update(n),i.verify(t,Buffer.from(r))}catch{return!1}}function In(t,n){if(t.length!==$||n.length!==$)throw Error(`invalid key length`);let r=Uint8Array.from(n);r[$-1]=(r[$-1]??0)&jn;let i=Rn(r),a=Ln(Q.Point.fromBytes(t).negate(),i).toBytes();return a[$-1]=(a[$-1]??0)^An,(0,e.createHash)(`sha512`).update(a).digest()}function Ln(e,t){let n=Q.Point.CURVE().n;if(t<n)return t===0n?Q.Point.ZERO:e.multiply(t);let r=t%n,i=t/n,a=r===0n?Q.Point.ZERO:e.multiply(r),o=e.multiply(n-1n).add(e).multiply(i);return a.add(o)}function Rn(e){let t=0n;for(let n=e.length-1;n>=0;n--)t=t<<8n|BigInt(e[n]);return t}Object.defineProperty(exports,"C",{enumerable:!0,get:function(){return n}}),Object.defineProperty(exports,"S",{enumerable:!0,get:function(){return u}}),Object.defineProperty(exports,"_",{enumerable:!0,get:function(){return l}}),Object.defineProperty(exports,"a",{enumerable:!0,get:function(){return Ln}}),Object.defineProperty(exports,"b",{enumerable:!0,get:function(){return s}}),Object.defineProperty(exports,"c",{enumerable:!0,get:function(){return Q}}),Object.defineProperty(exports,"d",{enumerable:!0,get:function(){return _}}),Object.defineProperty(exports,"f",{enumerable:!0,get:function(){return v}}),Object.defineProperty(exports,"g",{enumerable:!0,get:function(){return r}}),Object.defineProperty(exports,"h",{enumerable:!0,get:function(){return i}}),Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return In}}),Object.defineProperty(exports,"l",{enumerable:!0,get:function(){return m}}),Object.defineProperty(exports,"m",{enumerable:!0,get:function(){return b}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return Mn}}),Object.defineProperty(exports,"o",{enumerable:!0,get:function(){return Pn}}),Object.defineProperty(exports,"p",{enumerable:!0,get:function(){return h}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return Nn}}),Object.defineProperty(exports,"s",{enumerable:!0,get:function(){return Fn}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return Rn}}),Object.defineProperty(exports,"u",{enumerable:!0,get:function(){return g}}),Object.defineProperty(exports,"v",{enumerable:!0,get:function(){return a}}),Object.defineProperty(exports,"w",{enumerable:!0,get:function(){return t}}),Object.defineProperty(exports,"x",{enumerable:!0,get:function(){return c}}),Object.defineProperty(exports,"y",{enumerable:!0,get:function(){return o}});
|
|
2
|
-
//# sourceMappingURL=primitives-ClIhDdNZ.cjs.map
|