From 23969121e551de2616870857a33542d04a0b242dd623340be8161fdf72e60fed Mon Sep 17 00:00:00 2001 From: AidarKC Date: Sun, 20 Sep 2026 11:20:32 +0300 Subject: [PATCH] cripto utils --- shine-UI/js/services/crypto-utils.js | 4 ++-- shine-UI/js/services/device-pairing-service.js | 2 +- .../vendor/noble/curves-ed25519-1.5.0.bundle.mjs | 15 +++++++++++++++ .../vendor/noble/curves-ed25519-1.8.1.bundle.mjs | 15 +++++++++++++++ .../vendor/noble/hashes-argon2-1.8.0.bundle.mjs | 7 +++++++ 5 files changed, 40 insertions(+), 3 deletions(-) create mode 100644 shine-UI/js/vendor/noble/curves-ed25519-1.5.0.bundle.mjs create mode 100644 shine-UI/js/vendor/noble/curves-ed25519-1.8.1.bundle.mjs create mode 100644 shine-UI/js/vendor/noble/hashes-argon2-1.8.0.bundle.mjs diff --git a/shine-UI/js/services/crypto-utils.js b/shine-UI/js/services/crypto-utils.js index 00355976..a9a84e25 100644 --- a/shine-UI/js/services/crypto-utils.js +++ b/shine-UI/js/services/crypto-utils.js @@ -1,7 +1,7 @@ const encoder = new TextEncoder(); const WEB_CRYPTO_REQUIRED_MESSAGE = 'Регистрация и подпись блоков требуют WebCrypto (crypto.subtle). Откройте приложение через HTTPS или localhost в современном браузере и повторите попытку.'; -import { argon2idAsync } from 'https://esm.sh/@noble/hashes@1.8.0/argon2.js'; -import { edwardsToMontgomeryPriv, edwardsToMontgomeryPub, x25519 } from 'https://esm.sh/@noble/curves@1.8.1/ed25519'; +import { argon2idAsync } from '../vendor/noble/hashes-argon2-1.8.0.bundle.mjs'; +import { edwardsToMontgomeryPriv, edwardsToMontgomeryPub, x25519 } from '../vendor/noble/curves-ed25519-1.8.1.bundle.mjs'; const SHINE_KEY_DERIVATION_PREFIX = 'SHiNE-key'; function getCryptoApi() { diff --git a/shine-UI/js/services/device-pairing-service.js b/shine-UI/js/services/device-pairing-service.js index fa307ab9..c167d96f 100644 --- a/shine-UI/js/services/device-pairing-service.js +++ b/shine-UI/js/services/device-pairing-service.js @@ -12,7 +12,7 @@ import { edwardsToMontgomeryPriv, edwardsToMontgomeryPub, x25519, -} from 'https://esm.sh/@noble/curves@1.5.0/ed25519'; +} from '../vendor/noble/curves-ed25519-1.5.0.bundle.mjs'; const PAIRING_ENVELOPE_PREFIX = 'shine-esp-pairing-v1:'; const PAIRING_HASH_PREFIX = 'sha256$'; diff --git a/shine-UI/js/vendor/noble/curves-ed25519-1.5.0.bundle.mjs b/shine-UI/js/vendor/noble/curves-ed25519-1.5.0.bundle.mjs new file mode 100644 index 00000000..7a7912bd --- /dev/null +++ b/shine-UI/js/vendor/noble/curves-ed25519-1.5.0.bundle.mjs @@ -0,0 +1,15 @@ +/* esm.sh - @noble/curves@1.5.0/ed25519 */ +function tn(t){return t instanceof Uint8Array||t!=null&&typeof t=="object"&&t.constructor.name==="Uint8Array"}function St(t,...e){if(!tn(t))throw new Error("Uint8Array expected");if(e.length>0&&!e.includes(t.length))throw new Error(`Uint8Array expected of length ${e}, not of length=${t.length}`)}function Mt(t,e=!0){if(t.destroyed)throw new Error("Hash instance has been destroyed");if(e&&t.finished)throw new Error("Hash#digest() has already been called")}function be(t,e){St(t);let n=e.outputLen;if(t.lengthnew DataView(t.buffer,t.byteOffset,t.byteLength);var po=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function vt(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}function $t(t){return typeof t=="string"&&(t=vt(t)),St(t),t}function ge(...t){let e=0;for(let o=0;ot().update($t(o)).digest(),n=t();return e.outputLen=n.outputLen,e.blockLen=n.blockLen,e.create=()=>t(),e}function Vt(t=32){if(At&&typeof At.getRandomValues=="function")return At.getRandomValues(new Uint8Array(t));throw new Error("crypto.getRandomValues must be defined")}function en(t,e,n,o){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,n,o);let s=BigInt(32),r=BigInt(4294967295),i=Number(n>>s&r),f=Number(n&r),c=o?4:0,u=o?0:4;t.setUint32(e+c,i,o),t.setUint32(e+u,f,o)}var Tt=class extends It{constructor(e,n,o,s){super(),this.blockLen=e,this.outputLen=n,this.padOffset=o,this.isLE=s,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=Lt(this.buffer)}update(e){Mt(this);let{view:n,buffer:o,blockLen:s}=this;e=$t(e);let r=e.length;for(let i=0;is-i&&(this.process(o,0),i=0);for(let d=i;da.length)throw new Error("_sha2: outputLen bigger than state");for(let d=0;d>Zt&Ct)}:{h:Number(t>>Zt&Ct)|0,l:Number(t&Ct)|0}}function nn(t,e=!1){let n=new Uint32Array(t.length),o=new Uint32Array(t.length);for(let s=0;sBigInt(t>>>0)<>>0),rn=(t,e,n)=>t>>>n,sn=(t,e,n)=>t<<32-n|e>>>n,cn=(t,e,n)=>t>>>n|e<<32-n,fn=(t,e,n)=>t<<32-n|e>>>n,an=(t,e,n)=>t<<64-n|e>>>n-32,un=(t,e,n)=>t>>>n-32|e<<64-n,ln=(t,e)=>e,dn=(t,e)=>t,hn=(t,e,n)=>t<>>32-n,pn=(t,e,n)=>e<>>32-n,xn=(t,e,n)=>e<>>64-n,bn=(t,e,n)=>t<>>64-n;function gn(t,e,n,o){let s=(e>>>0)+(o>>>0);return{h:t+n+(s/2**32|0)|0,l:s|0}}var wn=(t,e,n)=>(t>>>0)+(e>>>0)+(n>>>0),yn=(t,e,n,o)=>e+n+o+(t/2**32|0)|0,mn=(t,e,n,o)=>(t>>>0)+(e>>>0)+(n>>>0)+(o>>>0),Bn=(t,e,n,o,s)=>e+n+o+s+(t/2**32|0)|0,En=(t,e,n,o,s)=>(t>>>0)+(e>>>0)+(n>>>0)+(o>>>0)+(s>>>0),_n=(t,e,n,o,s,r)=>e+n+o+s+r+(t/2**32|0)|0;var Sn={fromBig:ye,split:nn,toBig:on,shrSH:rn,shrSL:sn,rotrSH:cn,rotrSL:fn,rotrBH:an,rotrBL:un,rotr32H:ln,rotr32L:dn,rotlSH:hn,rotlSL:pn,rotlBH:xn,rotlBL:bn,add:gn,add3L:wn,add3H:yn,add4L:mn,add4H:Bn,add5H:_n,add5L:En},_=Sn;var[An,In]=_.split(["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"].map(t=>BigInt(t))),dt=new Uint32Array(80),ht=new Uint32Array(80),zt=class extends Tt{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){let{Ah:e,Al:n,Bh:o,Bl:s,Ch:r,Cl:i,Dh:f,Dl:c,Eh:u,El:a,Fh:d,Fl:b,Gh:w,Gl:B,Hh:y,Hl:A}=this;return[e,n,o,s,r,i,f,c,u,a,d,b,w,B,y,A]}set(e,n,o,s,r,i,f,c,u,a,d,b,w,B,y,A){this.Ah=e|0,this.Al=n|0,this.Bh=o|0,this.Bl=s|0,this.Ch=r|0,this.Cl=i|0,this.Dh=f|0,this.Dl=c|0,this.Eh=u|0,this.El=a|0,this.Fh=d|0,this.Fl=b|0,this.Gh=w|0,this.Gl=B|0,this.Hh=y|0,this.Hl=A|0}process(e,n){for(let x=0;x<16;x++,n+=4)dt[x]=e.getUint32(n),ht[x]=e.getUint32(n+=4);for(let x=16;x<80;x++){let I=dt[x-15]|0,R=ht[x-15]|0,H=_.rotrSH(I,R,1)^_.rotrSH(I,R,8)^_.shrSH(I,R,7),z=_.rotrSL(I,R,1)^_.rotrSL(I,R,8)^_.shrSL(I,R,7),q=dt[x-2]|0,$=ht[x-2]|0,G=_.rotrSH(q,$,19)^_.rotrBH(q,$,61)^_.shrSH(q,$,6),Z=_.rotrSL(q,$,19)^_.rotrBL(q,$,61)^_.shrSL(q,$,6),ut=_.add4L(z,Z,ht[x-7],ht[x-16]),st=_.add4H(ut,H,G,dt[x-7],dt[x-16]);dt[x]=st|0,ht[x]=ut|0}let{Ah:o,Al:s,Bh:r,Bl:i,Ch:f,Cl:c,Dh:u,Dl:a,Eh:d,El:b,Fh:w,Fl:B,Gh:y,Gl:A,Hh:T,Hl:p}=this;for(let x=0;x<80;x++){let I=_.rotrSH(d,b,14)^_.rotrSH(d,b,18)^_.rotrBH(d,b,41),R=_.rotrSL(d,b,14)^_.rotrSL(d,b,18)^_.rotrBL(d,b,41),H=d&w^~d&y,z=b&B^~b&A,q=_.add5L(p,R,z,In[x],ht[x]),$=_.add5H(q,T,I,H,An[x],dt[x]),G=q|0,Z=_.rotrSH(o,s,28)^_.rotrBH(o,s,34)^_.rotrBH(o,s,39),ut=_.rotrSL(o,s,28)^_.rotrBL(o,s,34)^_.rotrBL(o,s,39),st=o&r^o&f^r&f,yt=s&i^s&c^i&c;T=y|0,p=A|0,y=w|0,A=B|0,w=d|0,B=b|0,{h:d,l:b}=_.add(u|0,a|0,$|0,G|0),u=f|0,a=c|0,f=r|0,c=i|0,r=o|0,i=s|0;let m=_.add3L(G,ut,yt);o=_.add3H(m,$,Z,st),s=m|0}({h:o,l:s}=_.add(this.Ah|0,this.Al|0,o|0,s|0)),{h:r,l:i}=_.add(this.Bh|0,this.Bl|0,r|0,i|0),{h:f,l:c}=_.add(this.Ch|0,this.Cl|0,f|0,c|0),{h:u,l:a}=_.add(this.Dh|0,this.Dl|0,u|0,a|0),{h:d,l:b}=_.add(this.Eh|0,this.El|0,d|0,b|0),{h:w,l:B}=_.add(this.Fh|0,this.Fl|0,w|0,B|0),{h:y,l:A}=_.add(this.Gh|0,this.Gl|0,y|0,A|0),{h:T,l:p}=_.add(this.Hh|0,this.Hl|0,T|0,p|0),this.set(o,s,r,i,f,c,u,a,d,b,w,B,y,A,T,p)}roundClean(){dt.fill(0),ht.fill(0)}destroy(){this.buffer.fill(0),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}};var mt=we(()=>new zt);var Ln=BigInt(0),vn=BigInt(1),Tn=BigInt(2);function kt(t){return t instanceof Uint8Array||t!=null&&typeof t=="object"&&t.constructor.name==="Uint8Array"}function ct(t){if(!kt(t))throw new Error("Uint8Array expected")}function Ut(t,e){if(typeof e!="boolean")throw new Error(`${t} must be valid boolean, got "${e}".`)}var Cn=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function gt(t){ct(t);let e="";for(let n=0;n=it._0&&t<=it._9)return t-it._0;if(t>=it._A&&t<=it._F)return t-(it._A-10);if(t>=it._a&&t<=it._f)return t-(it._a-10)}function Ee(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);let e=t.length,n=e/2;if(e%2)throw new Error("padded hex string expected, got unpadded hex of length "+e);let o=new Uint8Array(n);for(let s=0,r=0;stypeof t=="bigint"&&Ln<=t;function Un(t,e,n){return Ft(t)&&Ft(e)&&Ft(n)&&e<=t&&t(Tn<typeof t=="bigint",function:t=>typeof t=="function",boolean:t=>typeof t=="boolean",string:t=>typeof t=="string",stringOrUint8Array:t=>typeof t=="string"||kt(t),isSafeInteger:t=>Number.isSafeInteger(t),array:t=>Array.isArray(t),field:(t,e)=>e.Fp.isValid(t),hash:t=>typeof t=="function"&&Number.isSafeInteger(t.outputLen)};function ot(t,e,n={}){let o=(s,r,i)=>{let f=On[r];if(typeof f!="function")throw new Error(`Invalid validator "${r}", expected function`);let c=t[s];if(!(i&&c===void 0)&&!f(c,t))throw new Error(`Invalid param ${String(s)}=${c} (${typeof c}), expected ${r}`)};for(let[s,r]of Object.entries(e))o(s,r,!1);for(let[s,r]of Object.entries(n))o(s,r,!0);return t}function jt(t){let e=new WeakMap;return(n,...o)=>{let s=e.get(n);if(s!==void 0)return s;let r=t(n,...o);return e.set(n,r),r}}var V=BigInt(0),D=BigInt(1),bt=BigInt(2),Rn=BigInt(3),Pt=BigInt(4),Ae=BigInt(5),Ie=BigInt(8),Hn=BigInt(9),qn=BigInt(16);function U(t,e){let n=t%e;return n>=V?n:e+n}function Yt(t,e,n){if(n<=V||e 0");if(n===D)return V;let o=D;for(;e>V;)e&D&&(o=o*t%n),t=t*t%n,e>>=D;return o}function X(t,e,n){let o=t;for(;e-- >V;)o*=o,o%=n;return o}function Le(t,e){if(t===V||e<=V)throw new Error(`invert: expected positive integers, got n=${t} mod=${e}`);let n=U(t,e),o=e,s=V,r=D,i=D,f=V;for(;n!==V;){let u=o/n,a=o%n,d=s-i*u,b=r-f*u;o=n,n=a,s=i,r=f,i=d,f=b}if(o!==D)throw new Error("invert: does not exist");return U(s,e)}function Dn(t){let e=(t-D)/bt,n,o,s;for(n=t-D,o=0;n%bt===V;n/=bt,o++);for(s=bt;s(U(t,e)&D)===D,$n=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function ve(t){let e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},n=$n.reduce((o,s)=>(o[s]="function",o),e);return ot(t,n)}function Vn(t,e,n){if(n 0");if(n===V)return t.ONE;if(n===D)return e;let o=t.ONE,s=e;for(;n>V;)n&D&&(o=t.mul(o,s)),s=t.sqr(s),n>>=D;return o}function Zn(t,e){let n=new Array(e.length),o=e.reduce((r,i,f)=>t.is0(i)?r:(n[f]=r,t.mul(r,i)),t.ONE),s=t.inv(o);return e.reduceRight((r,i,f)=>t.is0(i)?r:(n[f]=t.mul(r,n[f]),t.mul(r,i)),s),n}function Xt(t,e){let n=e!==void 0?e:t.toString(2).length,o=Math.ceil(n/8);return{nBitLength:n,nByteLength:o}}function Te(t,e,n=!1,o={}){if(t<=V)throw new Error(`Expected Field ORDER > 0, got ${t}`);let{nBitLength:s,nByteLength:r}=Xt(t,e);if(r>2048)throw new Error("Field lengths over 2048 bytes are not supported");let i=Mn(t),f=Object.freeze({ORDER:t,BITS:s,BYTES:r,MASK:Se(s),ZERO:V,ONE:D,create:c=>U(c,t),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return V<=c&&cc===V,isOdd:c=>(c&D)===D,neg:c=>U(-c,t),eql:(c,u)=>c===u,sqr:c=>U(c*c,t),add:(c,u)=>U(c+u,t),sub:(c,u)=>U(c-u,t),mul:(c,u)=>U(c*u,t),pow:(c,u)=>Vn(f,c,u),div:(c,u)=>U(c*Le(u,t),t),sqrN:c=>c*c,addN:(c,u)=>c+u,subN:(c,u)=>c-u,mulN:(c,u)=>c*u,inv:c=>Le(c,t),sqrt:o.sqrt||(c=>i(f,c)),invertBatch:c=>Zn(f,c),cmov:(c,u,a)=>a?u:c,toBytes:c=>n?et(c,r):Gt(c,r),fromBytes:c=>{if(c.length!==r)throw new Error(`Fp.fromBytes: expected ${r}, got ${c.length}`);return n?W(c):Ot(c)}});return Object.freeze(f)}function Ce(t,e){if(!t.isOdd)throw new Error("Field doesn't have isOdd");let n=t.sqrt(e);return t.isOdd(n)?t.neg(n):n}var zn=BigInt(0),Wt=BigInt(1),Kt=new WeakMap,Ue=new WeakMap;function Oe(t,e){let n=(r,i)=>{let f=i.negate();return r?f:i},o=r=>{if(!Number.isSafeInteger(r)||r<=0||r>e)throw new Error(`Wrong window size=${r}, should be [1..${e}]`)},s=r=>{o(r);let i=Math.ceil(e/r)+1,f=2**(r-1);return{windows:i,windowSize:f}};return{constTimeNegate:n,unsafeLadder(r,i){let f=t.ZERO,c=r;for(;i>zn;)i&Wt&&(f=f.add(c)),c=c.double(),i>>=Wt;return f},precomputeWindow(r,i){let{windows:f,windowSize:c}=s(i),u=[],a=r,d=a;for(let b=0;b>=B,T>u&&(T-=w,f+=Wt);let p=A,x=A+Math.abs(T)-1,I=y%2!==0,R=T<0;T===0?d=d.add(n(I,i[p])):a=a.add(n(R,i[x]))}return{p:a,f:d}},wNAFCached(r,i,f){let c=Ue.get(r)||1,u=Kt.get(r);return u||(u=this.precomputeWindow(r,c),c!==1&&Kt.set(r,f(u))),this.wNAF(c,u,i)},setWindowSize(r,i){o(i),Ue.set(r,i),Kt.delete(r)}}}function Ne(t){return ve(t.Fp),ot(t,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...Xt(t.n,t.nBitLength),...t,p:t.Fp.ORDER})}var K=BigInt(0),P=BigInt(1),Rt=BigInt(2),Fn=BigInt(8),kn={zip215:!0};function Gn(t){let e=Ne(t);return ot(t,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...e})}function Ht(t){let e=Gn(t),{Fp:n,n:o,prehash:s,hash:r,randomBytes:i,nByteLength:f,h:c}=e,u=Rt<{try{return{isValid:!0,value:n.sqrt(m*n.inv(l))}}catch{return{isValid:!1,value:K}}}),b=e.adjustScalarBytes||(m=>m),w=e.domain||((m,l,g)=>{if(Ut("phflag",g),l.length||g)throw new Error("Contexts/pre-hash are not supported");return m});function B(m,l){ft("coordinate "+m,l,K,u)}function y(m){if(!(m instanceof p))throw new Error("ExtendedPoint expected")}let A=jt((m,l)=>{let{ex:g,ey:E,ez:S}=m,L=m.is0();l==null&&(l=L?Fn:n.inv(S));let C=a(g*l),O=a(E*l),v=a(S*l);if(L)return{x:K,y:P};if(v!==P)throw new Error("invZ was invalid");return{x:C,y:O}}),T=jt(m=>{let{a:l,d:g}=e;if(m.is0())throw new Error("bad point: ZERO");let{ex:E,ey:S,ez:L,et:C}=m,O=a(E*E),v=a(S*S),N=a(L*L),M=a(N*N),j=a(O*l),J=a(N*a(j+v)),tt=a(M+a(g*a(O*v)));if(J!==tt)throw new Error("bad point: equation left != right (1)");let Y=a(E*S),lt=a(L*C);if(Y!==lt)throw new Error("bad point: equation left != right (2)");return!0});class p{constructor(l,g,E,S){this.ex=l,this.ey=g,this.ez=E,this.et=S,B("x",l),B("y",g),B("z",E),B("t",S),Object.freeze(this)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(l){if(l instanceof p)throw new Error("extended point not allowed");let{x:g,y:E}=l||{};return B("x",g),B("y",E),new p(g,E,P,a(g*E))}static normalizeZ(l){let g=n.invertBatch(l.map(E=>E.ez));return l.map((E,S)=>E.toAffine(g[S])).map(p.fromAffine)}_setWindowSize(l){R.setWindowSize(this,l)}assertValidity(){T(this)}equals(l){y(l);let{ex:g,ey:E,ez:S}=this,{ex:L,ey:C,ez:O}=l,v=a(g*O),N=a(L*S),M=a(E*O),j=a(C*S);return v===N&&M===j}is0(){return this.equals(p.ZERO)}negate(){return new p(a(-this.ex),this.ey,this.ez,a(-this.et))}double(){let{a:l}=e,{ex:g,ey:E,ez:S}=this,L=a(g*g),C=a(E*E),O=a(Rt*a(S*S)),v=a(l*L),N=g+E,M=a(a(N*N)-L-C),j=v+C,J=j-O,tt=v-C,Y=a(M*J),lt=a(j*tt),xt=a(M*tt),_t=a(J*j);return new p(Y,lt,_t,xt)}add(l){y(l);let{a:g,d:E}=e,{ex:S,ey:L,ez:C,et:O}=this,{ex:v,ey:N,ez:M,et:j}=l;if(g===BigInt(-1)){let ae=a((L-S)*(N+v)),ue=a((L+S)*(N-v)),Dt=a(ue-ae);if(Dt===K)return this.double();let le=a(C*Rt*j),de=a(O*Rt*M),he=de+le,pe=ue+ae,xe=de-le,We=a(he*Dt),Ke=a(pe*xe),Qe=a(he*xe),Je=a(Dt*pe);return new p(We,Ke,Je,Qe)}let J=a(S*v),tt=a(L*N),Y=a(O*E*j),lt=a(C*M),xt=a((S+L)*(v+N)-J-tt),_t=lt-Y,ce=lt+Y,fe=a(tt-g*J),je=a(xt*_t),Pe=a(ce*fe),Ye=a(xt*fe),Xe=a(_t*ce);return new p(je,Pe,Xe,Ye)}subtract(l){return this.add(l.negate())}wNAF(l){return R.wNAFCached(this,l,p.normalizeZ)}multiply(l){let g=l;ft("scalar",g,P,o);let{p:E,f:S}=this.wNAF(g);return p.normalizeZ([E,S])[0]}multiplyUnsafe(l){let g=l;return ft("scalar",g,K,o),g===K?I:this.equals(I)||g===P?this:this.equals(x)?this.wNAF(g).p:R.unsafeLadder(this,g)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return R.unsafeLadder(this,o).is0()}toAffine(l){return A(this,l)}clearCofactor(){let{h:l}=e;return l===P?this:this.multiplyUnsafe(l)}static fromHex(l,g=!1){let{d:E,a:S}=e,L=n.BYTES;l=k("pointHex",l,L),Ut("zip215",g);let C=l.slice(),O=l[L-1];C[L-1]=O&-129;let v=W(C),N=g?u:n.ORDER;ft("pointHex.y",v,K,N);let M=a(v*v),j=a(M-P),J=a(E*M-S),{isValid:tt,value:Y}=d(j,J);if(!tt)throw new Error("Point.fromHex: invalid y coordinate");let lt=(Y&P)===P,xt=(O&128)!==0;if(!g&&Y===K&&xt)throw new Error("Point.fromHex: x=0 and x_0=1");return xt!==lt&&(Y=a(-Y)),p.fromAffine({x:Y,y:v})}static fromPrivateKey(l){return q(l).point}toRawBytes(){let{x:l,y:g}=this.toAffine(),E=et(g,n.BYTES);return E[E.length-1]|=l&P?128:0,E}toHex(){return gt(this.toRawBytes())}}p.BASE=new p(e.Gx,e.Gy,P,a(e.Gx*e.Gy)),p.ZERO=new p(K,P,P,K);let{BASE:x,ZERO:I}=p,R=Oe(p,f*8);function H(m){return U(m,o)}function z(m){return H(W(m))}function q(m){let l=f;m=k("private key",m,l);let g=k("hashed private key",r(m),2*l),E=b(g.slice(0,l)),S=g.slice(l,2*l),L=z(E),C=x.multiply(L),O=C.toRawBytes();return{head:E,prefix:S,scalar:L,point:C,pointBytes:O}}function $(m){return q(m).pointBytes}function G(m=new Uint8Array,...l){let g=nt(...l);return z(r(w(g,k("context",m),!!s)))}function Z(m,l,g={}){m=k("message",m),s&&(m=s(m));let{prefix:E,scalar:S,pointBytes:L}=q(l),C=G(g.context,E,m),O=x.multiply(C).toRawBytes(),v=G(g.context,O,L,m),N=H(C+v*S);ft("signature.s",N,K,o);let M=nt(O,et(N,n.BYTES));return k("result",M,f*2)}let ut=kn;function st(m,l,g,E=ut){let{context:S,zip215:L}=E,C=n.BYTES;m=k("signature",m,2*C),l=k("message",l),L!==void 0&&Ut("zip215",L),s&&(l=s(l));let O=W(m.slice(C,2*C)),v,N,M;try{v=p.fromHex(g,L),N=p.fromHex(m.slice(0,C),L),M=x.multiplyUnsafe(O)}catch{return!1}if(!L&&v.isSmallOrder())return!1;let j=G(S,N.toRawBytes(),v.toRawBytes(),l);return N.add(v.multiplyUnsafe(j)).subtract(M).clearCofactor().equals(p.ZERO)}return x._setWindowSize(8),{CURVE:e,getPublicKey:$,sign:Z,verify:st,ExtendedPoint:p,utils:{getExtendedPublicKey:q,randomPrivateKey:()=>i(n.BYTES),precompute(m=8,l=p.BASE){return l._setWindowSize(m),l.multiply(BigInt(3)),l}}}}var jn=Ot;function pt(t,e){if(t<0||t>=1<<8*e)throw new Error(`bad I2OSP call: value=${t} length=${e}`);let n=Array.from({length:e}).fill(0);for(let o=e-1;o>=0;o--)n[o]=t&255,t>>>=8;return new Uint8Array(n)}function Pn(t,e){let n=new Uint8Array(t.length);for(let o=0;o255&&(e=o(nt(Nt("H2C-OVERSIZE-DST-"),e)));let{outputLen:s,blockLen:r}=o,i=Math.ceil(n/s);if(i>255)throw new Error("Invalid xmd length");let f=nt(e,pt(e.length,1)),c=pt(0,r),u=pt(n,2),a=new Array(i),d=o(nt(c,t,u,pt(0,1),f));a[0]=o(nt(d,pt(1,1),f));for(let w=1;w<=i;w++){let B=[Pn(d,a[w-1]),pt(w+1,1),f];a[w]=o(nt(...B))}return nt(...a).slice(0,n)}function Yn(t,e,n,o,s){if(ct(t),ct(e),Qt(n),e.length>255){let r=Math.ceil(2*o/8);e=s.create({dkLen:r}).update(Nt("H2C-OVERSIZE-DST-")).update(e).digest()}if(n>65535||e.length>255)throw new Error("expand_message_xof: invalid lenInBytes");return s.create({dkLen:n}).update(t).update(pt(n,2)).update(e).update(pt(e.length,1)).digest()}function Re(t,e,n){ot(n,{DST:"stringOrUint8Array",p:"bigint",m:"isSafeInteger",k:"isSafeInteger",hash:"hash"});let{p:o,k:s,m:r,hash:i,expand:f,DST:c}=n;ct(t),Qt(e);let u=typeof c=="string"?Nt(c):c,a=o.toString(2).length,d=Math.ceil((a+s)/8),b=e*r*d,w;if(f==="xmd")w=Jt(t,u,b,i);else if(f==="xof")w=Yn(t,u,b,s,i);else if(f==="_internal_pass")w=t;else throw new Error('expand must be "xmd" or "xof"');let B=new Array(e);for(let y=0;yU(p,n),s=e.montgomeryBits,r=Math.ceil(s/8),i=e.nByteLength,f=e.adjustScalarBytes||(p=>p),c=e.powPminus2||(p=>Yt(p,n-BigInt(2),n));function u(p,x,I){let R=o(p*(x-I));return x=o(x-R),I=o(I+R),[x,I]}let a=(e.a-BigInt(2))/BigInt(4);function d(p,x){ft("u",p,wt,n),ft("scalar",x,wt,n);let I=x,R=p,H=te,z=wt,q=p,$=te,G=wt,Z;for(let st=BigInt(s-1);st>=wt;st--){let yt=I>>st&te;G^=yt,Z=u(G,H,q),H=Z[0],q=Z[1],Z=u(G,z,$),z=Z[0],$=Z[1],G=yt;let m=H+z,l=o(m*m),g=H-z,E=o(g*g),S=l-E,L=q+$,C=q-$,O=o(C*m),v=o(L*g),N=O+v,M=O-v;q=o(N*N),$=o(R*o(M*M)),H=o(l*E),z=o(S*(l+o(a*S)))}Z=u(G,H,q),H=Z[0],q=Z[1],Z=u(G,z,$),z=Z[0],$=Z[1];let ut=c(z);return o(H*ut)}function b(p){return et(o(p),r)}function w(p){let x=k("u coordinate",p,r);return i===32&&(x[31]&=127),W(x)}function B(p){let x=k("scalar",p),I=x.length;if(I!==r&&I!==i)throw new Error(`Expected ${r} or ${i} bytes, got ${I}`);return W(f(x))}function y(p,x){let I=w(x),R=B(p),H=d(I,R);if(H===wt)throw new Error("Invalid private or public key received");return b(H)}let A=b(e.Gu);function T(p){return y(p,A)}return{scalarMult:y,scalarMultBase:T,getSharedSecret:(p,x)=>y(p,x),getPublicKey:p=>T(p),utils:{randomPrivateKey:()=>e.randomBytes(e.nByteLength)},GuBytes:A}}var Bt=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),oe=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),Wn=BigInt(0),rt=BigInt(1),qt=BigInt(2),Ve=BigInt(3),Ze=BigInt(5),se=BigInt(8);function ze(t){let e=BigInt(10),n=BigInt(20),o=BigInt(40),s=BigInt(80),r=Bt,f=t*t%r*t%r,c=X(f,qt,r)*f%r,u=X(c,rt,r)*t%r,a=X(u,Ze,r)*u%r,d=X(a,e,r)*a%r,b=X(d,n,r)*d%r,w=X(b,o,r)*b%r,B=X(w,s,r)*w%r,y=X(B,s,r)*w%r,A=X(y,e,r)*a%r;return{pow_p_5_8:X(A,qt,r)*t%r,b2:f}}function Fe(t){return t[0]&=248,t[31]&=127,t[31]|=64,t}function ie(t,e){let n=Bt,o=U(e*e*e,n),s=U(o*o*e,n),r=ze(t*s).pow_p_5_8,i=U(t*o*r,n),f=U(e*i*i,n),c=i,u=U(i*oe,n),a=f===t,d=f===U(-t,n),b=f===U(-t*oe,n);return a&&(i=c),(d||b)&&(i=u),at(i,n)&&(i=U(-i,n)),{isValid:a||d,value:i}}var Po=["0100000000000000000000000000000000000000000000000000000000000000","c7176a703d4dd84fba3c0b760d10670f2a2053fa2c39ccc64ec7fd7792ac037a","0000000000000000000000000000000000000000000000000000000000000080","26e8958fc2b227b045c3f489f2ef98f0d5dfac05d3c63339b13802886d53fc05","ecffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f","26e8958fc2b227b045c3f489f2ef98f0d5dfac05d3c63339b13802886d53fc85","0000000000000000000000000000000000000000000000000000000000000000","c7176a703d4dd84fba3c0b760d10670f2a2053fa2c39ccc64ec7fd7792ac03fa"],h=Te(Bt,void 0,!0),Et={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:h,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:se,Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:mt,randomBytes:Vt,adjustScalarBytes:Fe,uvRatio:ie},F=Ht(Et);function ke(t,e,n){if(e.length>255)throw new Error("Context is too big");return ge(vt("SigEd25519 no Ed25519 collisions"),new Uint8Array([n?1:0,e.length]),e,t)}var Yo=Ht({...Et,domain:ke}),Xo=Ht(Object.assign({},Et,{domain:ke,prehash:mt})),Wo=qe({P:Bt,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:t=>{let e=Bt,{pow_p_5_8:n,b2:o}=ze(t);return U(X(n,Ve,e)*o,e)},adjustScalarBytes:Fe,randomBytes:Vt});function Kn(t){let{y:e}=F.ExtendedPoint.fromHex(t),n=BigInt(1);return h.toBytes(h.create((n+e)*h.inv(n-e)))}var Ko=Kn;function Qo(t){let e=Et.hash(t.subarray(0,32));return Et.adjustScalarBytes(e).subarray(0,32)}var Qn=(h.ORDER+Ve)/se,Jn=h.pow(qt,Qn),De=h.sqrt(h.neg(h.ONE));function to(t){let e=(h.ORDER-Ze)/se,n=BigInt(486662),o=h.sqr(t);o=h.mul(o,qt);let s=h.add(o,h.ONE),r=h.neg(n),i=h.sqr(s),f=h.mul(i,s),c=h.mul(o,n);c=h.mul(c,r),c=h.add(c,i),c=h.mul(c,r);let u=h.sqr(f);i=h.sqr(u),u=h.mul(u,f),u=h.mul(u,c),i=h.mul(i,u);let a=h.pow(i,e);a=h.mul(a,u);let d=h.mul(a,De);i=h.sqr(a),i=h.mul(i,f);let b=h.eql(i,c),w=h.cmov(d,a,b),B=h.mul(r,o),y=h.mul(a,t);y=h.mul(y,Jn);let A=h.mul(y,De),T=h.mul(c,o);i=h.sqr(y),i=h.mul(i,f);let p=h.eql(i,T),x=h.cmov(A,y,p);i=h.sqr(w),i=h.mul(i,f);let I=h.eql(i,c),R=h.cmov(B,r,I),H=h.cmov(x,w,I),z=h.isOdd(H);return H=h.cmov(H,h.neg(H),I!==z),{xMn:R,xMd:s,yMn:H,yMd:rt}}var eo=Ce(h,h.neg(BigInt(486664)));function no(t){let{xMn:e,xMd:n,yMn:o,yMd:s}=to(t),r=h.mul(e,s);r=h.mul(r,eo);let i=h.mul(n,o),f=h.sub(e,n),c=h.add(e,n),u=h.mul(i,c),a=h.eql(u,h.ZERO);r=h.cmov(r,h.ZERO,a),i=h.cmov(i,h.ONE,a),f=h.cmov(f,h.ONE,a),c=h.cmov(c,h.ONE,a);let d=h.invertBatch([i,c]);return{x:h.mul(r,d[0]),y:h.mul(f,d[1])}}var Ge=He(F.ExtendedPoint,t=>no(t[0]),{DST:"edwards25519_XMD:SHA-512_ELL2_RO_",encodeDST:"edwards25519_XMD:SHA-512_ELL2_NU_",p:h.ORDER,m:1,k:128,expand:"xmd",hash:mt}),Jo=Ge.hashToCurve,tr=Ge.encodeToCurve;function ee(t){if(!(t instanceof Q))throw new Error("RistrettoPoint expected")}var re=oe,oo=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),ro=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),so=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),io=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952"),Me=t=>ie(rt,t),co=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"),ne=t=>F.CURVE.Fp.create(W(t)&co);function $e(t){let{d:e}=F.CURVE,n=F.CURVE.Fp.ORDER,o=F.CURVE.Fp.create,s=o(re*t*t),r=o((s+rt)*so),i=BigInt(-1),f=o((i-e*s)*o(s+e)),{isValid:c,value:u}=ie(r,f),a=o(u*t);at(a,n)||(a=o(-a)),c||(u=a),c||(i=s);let d=o(i*(s-rt)*io-f),b=u*u,w=o((u+u)*f),B=o(d*oo),y=o(rt-b),A=o(rt+b);return new F.ExtendedPoint(o(w*A),o(y*B),o(B*A),o(w*y))}var Q=class t{constructor(e){this.ep=e}static fromAffine(e){return new t(F.ExtendedPoint.fromAffine(e))}static hashToCurve(e){e=k("ristrettoHash",e,64);let n=ne(e.slice(0,32)),o=$e(n),s=ne(e.slice(32,64)),r=$e(s);return new t(o.add(r))}static fromHex(e){e=k("ristrettoHex",e,32);let{a:n,d:o}=F.CURVE,s=F.CURVE.Fp.ORDER,r=F.CURVE.Fp.create,i="RistrettoPoint.fromHex: the hex is not valid encoding of RistrettoPoint",f=ne(e);if(!_e(et(f,32),e)||at(f,s))throw new Error(i);let c=r(f*f),u=r(rt+n*c),a=r(rt-n*c),d=r(u*u),b=r(a*a),w=r(n*o*d-b),{isValid:B,value:y}=Me(r(w*b)),A=r(y*a),T=r(y*A*w),p=r((f+f)*A);at(p,s)&&(p=r(-p));let x=r(u*T),I=r(p*x);if(!B||at(I,s)||x===Wn)throw new Error(i);return new t(new F.ExtendedPoint(p,x,rt,I))}toRawBytes(){let{ex:e,ey:n,ez:o,et:s}=this.ep,r=F.CURVE.Fp.ORDER,i=F.CURVE.Fp.create,f=i(i(o+n)*i(o-n)),c=i(e*n),u=i(c*c),{value:a}=Me(i(f*u)),d=i(a*f),b=i(a*c),w=i(d*b*s),B;if(at(s*w,r)){let A=i(n*re),T=i(e*re);e=A,n=T,B=i(d*ro)}else B=b;at(e*w,r)&&(n=i(-n));let y=i((o-n)*B);return at(y,r)&&(y=i(-y)),et(y,32)}toHex(){return gt(this.toRawBytes())}toString(){return this.toHex()}equals(e){ee(e);let{ex:n,ey:o}=this.ep,{ex:s,ey:r}=e.ep,i=F.CURVE.Fp.create,f=i(n*r)===i(o*s),c=i(o*r)===i(n*s);return f||c}add(e){return ee(e),new t(this.ep.add(e.ep))}subtract(e){return ee(e),new t(this.ep.subtract(e.ep))}multiply(e){return new t(this.ep.multiply(e))}multiplyUnsafe(e){return new t(this.ep.multiplyUnsafe(e))}double(){return new t(this.ep.double())}negate(){return new t(this.ep.negate())}},er=(Q.BASE||(Q.BASE=new Q(F.ExtendedPoint.BASE)),Q.ZERO||(Q.ZERO=new Q(F.ExtendedPoint.ZERO)),Q),fo=(t,e)=>{let n=e.DST,o=typeof n=="string"?vt(n):n,s=Jt(t,o,64,mt);return Q.hashToCurve(s)},nr=fo;export{Po as ED25519_TORSION_SUBGROUP,er as RistrettoPoint,F as ed25519,Yo as ed25519ctx,Xo as ed25519ph,Ko as edwardsToMontgomery,Qo as edwardsToMontgomeryPriv,Kn as edwardsToMontgomeryPub,tr as encodeToCurve,Jo as hashToCurve,fo as hashToRistretto255,nr as hash_to_ristretto255,Wo as x25519}; +/*! Bundled license information: + +@noble/hashes/esm/utils.js: + (*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) *) + +@noble/curves/esm/abstract/utils.js: +@noble/curves/esm/abstract/modular.js: +@noble/curves/esm/abstract/curve.js: +@noble/curves/esm/abstract/edwards.js: +@noble/curves/esm/abstract/montgomery.js: +@noble/curves/esm/ed25519.js: + (*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) *) +*/ diff --git a/shine-UI/js/vendor/noble/curves-ed25519-1.8.1.bundle.mjs b/shine-UI/js/vendor/noble/curves-ed25519-1.8.1.bundle.mjs new file mode 100644 index 00000000..774ce916 --- /dev/null +++ b/shine-UI/js/vendor/noble/curves-ed25519-1.8.1.bundle.mjs @@ -0,0 +1,15 @@ +/* esm.sh - @noble/curves@1.8.1/ed25519 */ +function ln(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function Lt(t,...e){if(!ln(t))throw new Error("Uint8Array expected");if(e.length>0&&!e.includes(t.length))throw new Error("Uint8Array expected of length "+e+", got length="+t.length)}function zt(t,e=!0){if(t.destroyed)throw new Error("Hash instance has been destroyed");if(e&&t.finished)throw new Error("Hash#digest() has already been called")}function _e(t,e){Lt(t);let n=e.outputLen;if(t.lengtht().update(Gt(o)).digest(),n=t();return e.outputLen=n.outputLen,e.blockLen=n.blockLen,e.create=()=>t(),e}function jt(t=32){if(bt&&typeof bt.getRandomValues=="function")return bt.getRandomValues(new Uint8Array(t));if(bt&&typeof bt.randomBytes=="function")return bt.randomBytes(t);throw new Error("crypto.getRandomValues must be defined")}function dn(t,e,n,o){if(typeof t.setBigUint64=="function")return t.setBigUint64(e,n,o);let s=BigInt(32),r=BigInt(4294967295),i=Number(n>>s&r),a=Number(n&r),c=o?4:0,u=o?0:4;t.setUint32(e+c,i,o),t.setUint32(e+u,a,o)}var Ct=class extends Tt{constructor(e,n,o,s){super(),this.blockLen=e,this.outputLen=n,this.padOffset=o,this.isLE=s,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=Ut(this.buffer)}update(e){zt(this);let{view:n,buffer:o,blockLen:s}=this;e=Gt(e);let r=e.length;for(let i=0;is-i&&(this.process(o,0),i=0);for(let h=i;hf.length)throw new Error("_sha2: outputLen bigger than state");for(let h=0;h>Pt&Rt)}:{h:Number(t>>Pt&Rt)|0,l:Number(t&Rt)|0}}function hn(t,e=!1){let n=new Uint32Array(t.length),o=new Uint32Array(t.length);for(let s=0;sBigInt(t>>>0)<>>0),xn=(t,e,n)=>t>>>n,gn=(t,e,n)=>t<<32-n|e>>>n,bn=(t,e,n)=>t>>>n|e<<32-n,mn=(t,e,n)=>t<<32-n|e>>>n,wn=(t,e,n)=>t<<64-n|e>>>n-32,yn=(t,e,n)=>t>>>n-32|e<<64-n,Bn=(t,e)=>e,En=(t,e)=>t,_n=(t,e,n)=>t<>>32-n,An=(t,e,n)=>e<>>32-n,Sn=(t,e,n)=>e<>>64-n,In=(t,e,n)=>t<>>64-n;function vn(t,e,n,o){let s=(e>>>0)+(o>>>0);return{h:t+n+(s/2**32|0)|0,l:s|0}}var Ln=(t,e,n)=>(t>>>0)+(e>>>0)+(n>>>0),Tn=(t,e,n,o)=>e+n+o+(t/2**32|0)|0,Un=(t,e,n,o)=>(t>>>0)+(e>>>0)+(n>>>0)+(o>>>0),On=(t,e,n,o,s)=>e+n+o+s+(t/2**32|0)|0,Cn=(t,e,n,o,s)=>(t>>>0)+(e>>>0)+(n>>>0)+(o>>>0)+(s>>>0),Rn=(t,e,n,o,s,r)=>e+n+o+s+r+(t/2**32|0)|0;var Nn={fromBig:Ie,split:hn,toBig:pn,shrSH:xn,shrSL:gn,rotrSH:bn,rotrSL:mn,rotrBH:wn,rotrBL:yn,rotr32H:Bn,rotr32L:En,rotlSH:_n,rotlSL:An,rotlBH:Sn,rotlBL:In,add:vn,add3L:Ln,add3H:Tn,add4L:Un,add4H:On,add5H:Rn,add5L:Cn},_=Nn;var[Hn,qn]=_.split(["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"].map(t=>BigInt(t))),dt=new Uint32Array(80),ht=new Uint32Array(80),Yt=class extends Ct{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){let{Ah:e,Al:n,Bh:o,Bl:s,Ch:r,Cl:i,Dh:a,Dl:c,Eh:u,El:f,Fh:h,Fl:g,Gh:x,Gl:w,Hh:b,Hl:S}=this;return[e,n,o,s,r,i,a,c,u,f,h,g,x,w,b,S]}set(e,n,o,s,r,i,a,c,u,f,h,g,x,w,b,S){this.Ah=e|0,this.Al=n|0,this.Bh=o|0,this.Bl=s|0,this.Ch=r|0,this.Cl=i|0,this.Dh=a|0,this.Dl=c|0,this.Eh=u|0,this.El=f|0,this.Fh=h|0,this.Fl=g|0,this.Gh=x|0,this.Gl=w|0,this.Hh=b|0,this.Hl=S|0}process(e,n){for(let d=0;d<16;d++,n+=4)dt[d]=e.getUint32(n),ht[d]=e.getUint32(n+=4);for(let d=16;d<80;d++){let I=dt[d-15]|0,M=ht[d-15]|0,U=_.rotrSH(I,M,1)^_.rotrSH(I,M,8)^_.shrSH(I,M,7),k=_.rotrSL(I,M,1)^_.rotrSL(I,M,8)^_.shrSL(I,M,7),D=dt[d-2]|0,H=ht[d-2]|0,Y=_.rotrSH(D,H,19)^_.rotrBH(D,H,61)^_.shrSH(D,H,6),V=_.rotrSL(D,H,19)^_.rotrBL(D,H,61)^_.shrSL(D,H,6),ut=_.add4L(k,V,ht[d-7],ht[d-16]),st=_.add4H(ut,U,Y,dt[d-7],dt[d-16]);dt[d]=st|0,ht[d]=ut|0}let{Ah:o,Al:s,Bh:r,Bl:i,Ch:a,Cl:c,Dh:u,Dl:f,Eh:h,El:g,Fh:x,Fl:w,Gh:b,Gl:S,Hh:N,Hl:B}=this;for(let d=0;d<80;d++){let I=_.rotrSH(h,g,14)^_.rotrSH(h,g,18)^_.rotrBH(h,g,41),M=_.rotrSL(h,g,14)^_.rotrSL(h,g,18)^_.rotrBL(h,g,41),U=h&x^~h&b,k=g&w^~g&S,D=_.add5L(B,M,k,qn[d],ht[d]),H=_.add5H(D,N,I,U,Hn[d],dt[d]),Y=D|0,V=_.rotrSH(o,s,28)^_.rotrBH(o,s,34)^_.rotrBH(o,s,39),ut=_.rotrSL(o,s,28)^_.rotrBL(o,s,34)^_.rotrBL(o,s,39),st=o&r^o&a^r&a,wt=s&i^s&c^i&c;N=b|0,B=S|0,b=x|0,S=w|0,x=h|0,w=g|0,{h,l:g}=_.add(u|0,f|0,H|0,Y|0),u=a|0,f=c|0,a=r|0,c=i|0,r=o|0,i=s|0;let xt=_.add3L(Y,ut,wt);o=_.add3H(xt,H,V,st),s=xt|0}({h:o,l:s}=_.add(this.Ah|0,this.Al|0,o|0,s|0)),{h:r,l:i}=_.add(this.Bh|0,this.Bl|0,r|0,i|0),{h:a,l:c}=_.add(this.Ch|0,this.Cl|0,a|0,c|0),{h:u,l:f}=_.add(this.Dh|0,this.Dl|0,u|0,f|0),{h,l:g}=_.add(this.Eh|0,this.El|0,h|0,g|0),{h:x,l:w}=_.add(this.Fh|0,this.Fl|0,x|0,w|0),{h:b,l:S}=_.add(this.Gh|0,this.Gl|0,b|0,S|0),{h:N,l:B}=_.add(this.Hh|0,this.Hl|0,N|0,B|0),this.set(o,s,r,i,a,c,u,f,h,g,x,w,b,S,N,B)}roundClean(){dt.fill(0),ht.fill(0)}destroy(){this.buffer.fill(0),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}};var Et=Se(()=>new Yt);var Wt=BigInt(0),Le=BigInt(1),Mn=BigInt(2);function Kt(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function ct(t){if(!Kt(t))throw new Error("Uint8Array expected")}function Nt(t,e){if(typeof e!="boolean")throw new Error(t+" boolean expected, got "+e)}var Dn=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function yt(t){ct(t);let e="";for(let n=0;n=it._0&&t<=it._9)return t-it._0;if(t>=it.A&&t<=it.F)return t-(it.A-10);if(t>=it.a&&t<=it.f)return t-(it.a-10)}function Ue(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);let e=t.length,n=e/2;if(e%2)throw new Error("hex string expected, got unpadded hex of length "+e);let o=new Uint8Array(n);for(let s=0,r=0;stypeof t=="bigint"&&Wt<=t;function Vn(t,e,n){return Xt(t)&&Xt(e)&&Xt(n)&&e<=t&&tWt;t>>=Le,e+=1);return e}var Re=t=>(Mn<typeof t=="bigint",function:t=>typeof t=="function",boolean:t=>typeof t=="boolean",string:t=>typeof t=="string",stringOrUint8Array:t=>typeof t=="string"||Kt(t),isSafeInteger:t=>Number.isSafeInteger(t),array:t=>Array.isArray(t),field:(t,e)=>e.Fp.isValid(t),hash:t=>typeof t=="function"&&Number.isSafeInteger(t.outputLen)};function ot(t,e,n={}){let o=(s,r,i)=>{let a=Zn[r];if(typeof a!="function")throw new Error("invalid validator function");let c=t[s];if(!(i&&c===void 0)&&!a(c,t))throw new Error("param "+String(s)+" is invalid. Expected "+r+", got "+c)};for(let[s,r]of Object.entries(e))o(s,r,!1);for(let[s,r]of Object.entries(n))o(s,r,!0);return t}function Jt(t){let e=new WeakMap;return(n,...o)=>{let s=e.get(n);if(s!==void 0)return s;let r=t(n,...o);return e.set(n,r),r}}var Z=BigInt(0),q=BigInt(1),mt=BigInt(2),kn=BigInt(3),$t=BigInt(4),Ne=BigInt(5),He=BigInt(8),zn=BigInt(9),Gn=BigInt(16);function O(t,e){let n=t%e;return n>=Z?n:e+n}function te(t,e,n){if(eZ;)e&q&&(o=o*t%n),t=t*t%n,e>>=q;return o}function W(t,e,n){let o=t;for(;e-- >Z;)o*=o,o%=n;return o}function qe(t,e){if(t===Z)throw new Error("invert: expected non-zero number");if(e<=Z)throw new Error("invert: expected positive modulus, got "+e);let n=O(t,e),o=e,s=Z,r=q,i=q,a=Z;for(;n!==Z;){let u=o/n,f=o%n,h=s-i*u,g=r-a*u;o=n,n=f,s=i,r=a,i=h,a=g}if(o!==q)throw new Error("invert: does not exist");return O(s,e)}function jn(t){let e=(t-q)/mt,n,o,s;for(n=t-q,o=0;n%mt===Z;n/=mt,o++);for(s=mt;s1e3)throw new Error("Cannot find square root: likely non-prime P");if(o===1){let i=(t+q)/$t;return function(c,u){let f=c.pow(u,i);if(!c.eql(c.sqr(f),u))throw new Error("Cannot find square root");return f}}let r=(n+q)/mt;return function(a,c){if(a.pow(c,e)===a.neg(a.ONE))throw new Error("Cannot find square root");let u=o,f=a.pow(a.mul(a.ONE,s),n),h=a.pow(c,r),g=a.pow(c,n);for(;!a.eql(g,a.ONE);){if(a.eql(g,a.ZERO))return a.ZERO;let x=1;for(let b=a.sqr(g);x(O(t,e)&q)===q,Yn=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Me(t){let e={ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"},n=Yn.reduce((o,s)=>(o[s]="function",o),e);return ot(t,n)}function Xn(t,e,n){if(nZ;)n&q&&(o=t.mul(o,s)),s=t.sqr(s),n>>=q;return o}function Wn(t,e){let n=new Array(e.length),o=e.reduce((r,i,a)=>t.is0(i)?r:(n[a]=r,t.mul(r,i)),t.ONE),s=t.inv(o);return e.reduceRight((r,i,a)=>t.is0(i)?r:(n[a]=t.mul(r,n[a]),t.mul(r,i)),s),n}function ee(t,e){let n=e!==void 0?e:t.toString(2).length,o=Math.ceil(n/8);return{nBitLength:n,nByteLength:o}}function _t(t,e,n=!1,o={}){if(t<=Z)throw new Error("invalid field: expected ORDER > 0, got "+t);let{nBitLength:s,nByteLength:r}=ee(t,e);if(r>2048)throw new Error("invalid field: expected ORDER of <= 2048 bytes");let i,a=Object.freeze({ORDER:t,isLE:n,BITS:s,BYTES:r,MASK:Re(s),ZERO:Z,ONE:q,create:c=>O(c,t),isValid:c=>{if(typeof c!="bigint")throw new Error("invalid field element: expected bigint, got "+typeof c);return Z<=c&&cc===Z,isOdd:c=>(c&q)===q,neg:c=>O(-c,t),eql:(c,u)=>c===u,sqr:c=>O(c*c,t),add:(c,u)=>O(c+u,t),sub:(c,u)=>O(c-u,t),mul:(c,u)=>O(c*u,t),pow:(c,u)=>Xn(a,c,u),div:(c,u)=>O(c*qe(u,t),t),sqrN:c=>c*c,addN:(c,u)=>c+u,subN:(c,u)=>c-u,mulN:(c,u)=>c*u,inv:c=>qe(c,t),sqrt:o.sqrt||(c=>(i||(i=Pn(t)),i(a,c))),invertBatch:c=>Wn(a,c),cmov:(c,u,f)=>f?u:c,toBytes:c=>n?et(c,r):Qt(c,r),fromBytes:c=>{if(c.length!==r)throw new Error("Field.fromBytes: expected "+r+" bytes, got "+c.length);return n?K(c):Ht(c)}});return Object.freeze(a)}function De(t,e){if(!t.isOdd)throw new Error("Field doesn't have isOdd");let n=t.sqrt(e);return t.isOdd(n)?t.neg(n):n}var Ve=BigInt(0),Mt=BigInt(1);function ne(t,e){let n=e.negate();return t?n:e}function Ze(t,e){if(!Number.isSafeInteger(t)||t<=0||t>e)throw new Error("invalid window size, expected [1.."+e+"], got W="+t)}function oe(t,e){Ze(t,e);let n=Math.ceil(e/t)+1,o=2**(t-1);return{windows:n,windowSize:o}}function Kn(t,e){if(!Array.isArray(t))throw new Error("array expected");t.forEach((n,o)=>{if(!(n instanceof e))throw new Error("invalid point at index "+o)})}function Qn(t,e){if(!Array.isArray(t))throw new Error("array of scalars expected");t.forEach((n,o)=>{if(!e.isValid(n))throw new Error("invalid scalar at index "+o)})}var re=new WeakMap,Fe=new WeakMap;function se(t){return Fe.get(t)||1}function ke(t,e){return{constTimeNegate:ne,hasPrecomputes(n){return se(n)!==1},unsafeLadder(n,o,s=t.ZERO){let r=n;for(;o>Ve;)o&Mt&&(s=s.add(r)),r=r.double(),o>>=Mt;return s},precomputeWindow(n,o){let{windows:s,windowSize:r}=oe(o,e),i=[],a=n,c=a;for(let u=0;u>=h,w>i&&(w-=f,s+=Mt);let b=x,S=x+Math.abs(w)-1,N=g%2!==0,B=w<0;w===0?c=c.add(ne(N,o[b])):a=a.add(ne(B,o[S]))}return{p:a,f:c}},wNAFUnsafe(n,o,s,r=t.ZERO){let{windows:i,windowSize:a}=oe(n,e),c=BigInt(2**n-1),u=2**n,f=BigInt(n);for(let h=0;h>=f,x>a&&(x-=u,s+=Mt),x===0)continue;let w=o[g+Math.abs(x)-1];x<0&&(w=w.negate()),r=r.add(w)}return r},getPrecomputes(n,o,s){let r=re.get(o);return r||(r=this.precomputeWindow(o,n),n!==1&&re.set(o,s(r))),r},wNAFCached(n,o,s){let r=se(n);return this.wNAF(r,this.getPrecomputes(r,n,s),o)},wNAFCachedUnsafe(n,o,s,r){let i=se(n);return i===1?this.unsafeLadder(n,o,r):this.wNAFUnsafe(i,this.getPrecomputes(i,n,s),o,r)},setWindowSize(n,o){Ze(o,e),Fe.set(n,o),re.delete(n)}}}function Dt(t,e,n,o){if(Kn(n,t),Qn(o,e),n.length!==o.length)throw new Error("arrays of points and scalars must have equal length");let s=t.ZERO,r=Ce(BigInt(n.length)),i=r>12?r-3:r>4?r-2:r?2:1,a=(1<=0;h-=i){c.fill(s);for(let x=0;x>BigInt(h)&BigInt(a));c[b]=c[b].add(n[x])}let g=s;for(let x=c.length-1,w=s;x>0;x--)w=w.add(c[x]),g=g.add(w);if(f=f.add(g),h!==0)for(let x=0;x{try{return{isValid:!0,value:n.sqrt(E*n.inv(l))}}catch{return{isValid:!1,value:Q}}}),x=e.adjustScalarBytes||(E=>E),w=e.domain||((E,l,m)=>{if(Nt("phflag",m),l.length||m)throw new Error("Contexts/pre-hash are not supported");return E});function b(E,l){ft("coordinate "+E,l,Q,u)}function S(E){if(!(E instanceof d))throw new Error("ExtendedPoint expected")}let N=Jt((E,l)=>{let{ex:m,ey:y,ez:A}=E,v=E.is0();l==null&&(l=v?Jn:n.inv(A));let L=f(m*l),C=f(y*l),T=f(A*l);if(v)return{x:Q,y:P};if(T!==P)throw new Error("invZ was invalid");return{x:L,y:C}}),B=Jt(E=>{let{a:l,d:m}=e;if(E.is0())throw new Error("bad point: ZERO");let{ex:y,ey:A,ez:v,et:L}=E,C=f(y*y),T=f(A*A),R=f(v*v),z=f(R*R),j=f(C*l),$=f(R*f(j+T)),tt=f(z+f(m*f(C*T)));if($!==tt)throw new Error("bad point: equation left != right (1)");let X=f(y*A),lt=f(v*L);if(X!==lt)throw new Error("bad point: equation left != right (2)");return!0});class d{constructor(l,m,y,A){this.ex=l,this.ey=m,this.ez=y,this.et=A,b("x",l),b("y",m),b("z",y),b("t",A),Object.freeze(this)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(l){if(l instanceof d)throw new Error("extended point not allowed");let{x:m,y}=l||{};return b("x",m),b("y",y),new d(m,y,P,f(m*y))}static normalizeZ(l){let m=n.invertBatch(l.map(y=>y.ez));return l.map((y,A)=>y.toAffine(m[A])).map(d.fromAffine)}static msm(l,m){return Dt(d,h,l,m)}_setWindowSize(l){U.setWindowSize(this,l)}assertValidity(){B(this)}equals(l){S(l);let{ex:m,ey:y,ez:A}=this,{ex:v,ey:L,ez:C}=l,T=f(m*C),R=f(v*A),z=f(y*C),j=f(L*A);return T===R&&z===j}is0(){return this.equals(d.ZERO)}negate(){return new d(f(-this.ex),this.ey,this.ez,f(-this.et))}double(){let{a:l}=e,{ex:m,ey:y,ez:A}=this,v=f(m*m),L=f(y*y),C=f(Vt*f(A*A)),T=f(l*v),R=m+y,z=f(f(R*R)-v-L),j=T+L,$=j-C,tt=T-L,X=f(z*$),lt=f(j*tt),gt=f(z*tt),vt=f($*j);return new d(X,lt,vt,gt)}add(l){S(l);let{a:m,d:y}=e,{ex:A,ey:v,ez:L,et:C}=this,{ex:T,ey:R,ez:z,et:j}=l;if(m===BigInt(-1)){let ge=f((v-A)*(R+T)),be=f((v+A)*(R-T)),kt=f(be-ge);if(kt===Q)return this.double();let me=f(L*Vt*j),we=f(C*Vt*z),ye=we+me,Be=be+ge,Ee=we-me,cn=f(ye*kt),fn=f(Be*Ee),an=f(ye*Ee),un=f(kt*Be);return new d(cn,fn,un,an)}let $=f(A*T),tt=f(v*R),X=f(C*y*j),lt=f(L*z),gt=f((A+v)*(T+R)-$-tt),vt=lt-X,pe=lt+X,xe=f(tt-m*$),nn=f(gt*vt),on=f(pe*xe),rn=f(gt*xe),sn=f(vt*pe);return new d(nn,on,sn,rn)}subtract(l){return this.add(l.negate())}wNAF(l){return U.wNAFCached(this,l,d.normalizeZ)}multiply(l){let m=l;ft("scalar",m,P,o);let{p:y,f:A}=this.wNAF(m);return d.normalizeZ([y,A])[0]}multiplyUnsafe(l,m=d.ZERO){let y=l;return ft("scalar",y,Q,o),y===Q?M:this.is0()||y===P?this:U.wNAFCachedUnsafe(this,y,d.normalizeZ,m)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return U.unsafeLadder(this,o).is0()}toAffine(l){return N(this,l)}clearCofactor(){let{h:l}=e;return l===P?this:this.multiplyUnsafe(l)}static fromHex(l,m=!1){let{d:y,a:A}=e,v=n.BYTES;l=G("pointHex",l,v),Nt("zip215",m);let L=l.slice(),C=l[v-1];L[v-1]=C&-129;let T=K(L),R=m?u:n.ORDER;ft("pointHex.y",T,Q,R);let z=f(T*T),j=f(z-P),$=f(y*z-A),{isValid:tt,value:X}=g(j,$);if(!tt)throw new Error("Point.fromHex: invalid y coordinate");let lt=(X&P)===P,gt=(C&128)!==0;if(!m&&X===Q&>)throw new Error("Point.fromHex: x=0 and x_0=1");return gt!==lt&&(X=f(-X)),d.fromAffine({x:X,y:T})}static fromPrivateKey(l){return H(l).point}toRawBytes(){let{x:l,y:m}=this.toAffine(),y=et(m,n.BYTES);return y[y.length-1]|=l&P?128:0,y}toHex(){return yt(this.toRawBytes())}}d.BASE=new d(e.Gx,e.Gy,P,f(e.Gx*e.Gy)),d.ZERO=new d(Q,P,P,Q);let{BASE:I,ZERO:M}=d,U=ke(d,a*8);function k(E){return O(E,o)}function D(E){return k(K(E))}function H(E){let l=n.BYTES;E=G("private key",E,l);let m=G("hashed private key",r(E),2*l),y=x(m.slice(0,l)),A=m.slice(l,2*l),v=D(y),L=I.multiply(v),C=L.toRawBytes();return{head:y,prefix:A,scalar:v,point:L,pointBytes:C}}function Y(E){return H(E).pointBytes}function V(E=new Uint8Array,...l){let m=nt(...l);return D(r(w(m,G("context",E),!!s)))}function ut(E,l,m={}){E=G("message",E),s&&(E=s(E));let{prefix:y,scalar:A,pointBytes:v}=H(l),L=V(m.context,y,E),C=I.multiply(L).toRawBytes(),T=V(m.context,C,v,E),R=k(L+T*A);ft("signature.s",R,Q,o);let z=nt(C,et(R,n.BYTES));return G("result",z,n.BYTES*2)}let st=$n;function wt(E,l,m,y=st){let{context:A,zip215:v}=y,L=n.BYTES;E=G("signature",E,2*L),l=G("message",l),m=G("publicKey",m,L),v!==void 0&&Nt("zip215",v),s&&(l=s(l));let C=K(E.slice(L,2*L)),T,R,z;try{T=d.fromHex(m,v),R=d.fromHex(E.slice(0,L),v),z=I.multiplyUnsafe(C)}catch{return!1}if(!v&&T.isSmallOrder())return!1;let j=V(A,R.toRawBytes(),T.toRawBytes(),l);return R.add(T.multiplyUnsafe(j)).subtract(z).clearCofactor().equals(d.ZERO)}return I._setWindowSize(8),{CURVE:e,getPublicKey:Y,sign:ut,verify:wt,ExtendedPoint:d,utils:{getExtendedPublicKey:H,randomPrivateKey:()=>i(n.BYTES),precompute(E=8,l=d.BASE){return l._setWindowSize(E),l.multiply(BigInt(3)),l}}}}var eo=Ht;function pt(t,e){if(At(t),At(e),t<0||t>=1<<8*e)throw new Error("invalid I2OSP input: "+t);let n=Array.from({length:e}).fill(0);for(let o=e-1;o>=0;o--)n[o]=t&255,t>>>=8;return new Uint8Array(n)}function no(t,e){let n=new Uint8Array(t.length);for(let o=0;o255&&(e=o(nt(qt("H2C-OVERSIZE-DST-"),e)));let{outputLen:s,blockLen:r}=o,i=Math.ceil(n/s);if(n>65535||i>255)throw new Error("expand_message_xmd: invalid lenInBytes");let a=nt(e,pt(e.length,1)),c=pt(0,r),u=pt(n,2),f=new Array(i),h=o(nt(c,t,u,pt(0,1),a));f[0]=o(nt(h,pt(1,1),a));for(let x=1;x<=i;x++){let w=[no(h,f[x-1]),pt(x+1,1),a];f[x]=o(nt(...w))}return nt(...f).slice(0,n)}function oo(t,e,n,o,s){if(ct(t),ct(e),At(n),e.length>255){let r=Math.ceil(2*o/8);e=s.create({dkLen:r}).update(qt("H2C-OVERSIZE-DST-")).update(e).digest()}if(n>65535||e.length>255)throw new Error("expand_message_xof: invalid lenInBytes");return s.create({dkLen:n}).update(t).update(pt(n,2)).update(e).update(pt(e.length,1)).digest()}function Ge(t,e,n){ot(n,{DST:"stringOrUint8Array",p:"bigint",m:"isSafeInteger",k:"isSafeInteger",hash:"hash"});let{p:o,k:s,m:r,hash:i,expand:a,DST:c}=n;ct(t),At(e);let u=typeof c=="string"?qt(c):c,f=o.toString(2).length,h=Math.ceil((f+s)/8),g=e*r*h,x;if(a==="xmd")x=ie(t,u,g,i);else if(a==="xof")x=oo(t,u,g,s,i);else if(a==="_internal_pass")x=t;else throw new Error('expand must be "xmd" or "xof"');let w=new Array(e);for(let b=0;bO(B,n),s=e.montgomeryBits,r=Math.ceil(s/8),i=e.nByteLength,a=e.adjustScalarBytes||(B=>B),c=e.powPminus2||(B=>te(B,n-BigInt(2),n));function u(B,d,I){let M=o(B*(d-I));return d=o(d-M),I=o(I+M),[d,I]}let f=(e.a-BigInt(2))/BigInt(4);function h(B,d){ft("u",B,Bt,n),ft("scalar",d,Bt,n);let I=d,M=B,U=ce,k=Bt,D=B,H=ce,Y=Bt,V;for(let st=BigInt(s-1);st>=Bt;st--){let wt=I>>st&ce;Y^=wt,V=u(Y,U,D),U=V[0],D=V[1],V=u(Y,k,H),k=V[0],H=V[1],Y=wt;let xt=U+k,E=o(xt*xt),l=U-k,m=o(l*l),y=E-m,A=D+H,v=D-H,L=o(v*xt),C=o(A*l),T=L+C,R=L-C;D=o(T*T),H=o(M*o(R*R)),U=o(E*m),k=o(y*(E+o(f*y)))}V=u(Y,U,D),U=V[0],D=V[1],V=u(Y,k,H),k=V[0],H=V[1];let ut=c(k);return o(U*ut)}function g(B){return et(o(B),r)}function x(B){let d=G("u coordinate",B,r);return i===32&&(d[31]&=127),K(d)}function w(B){let d=G("scalar",B),I=d.length;if(I!==r&&I!==i){let M=""+r+" or "+i;throw new Error("invalid scalar, expected "+M+" bytes, got "+I)}return K(a(d))}function b(B,d){let I=x(d),M=w(B),U=h(I,M);if(U===Bt)throw new Error("invalid private or public key received");return g(U)}let S=g(e.Gu);function N(B){return b(B,S)}return{scalarMult:b,scalarMultBase:N,getSharedSecret:(B,d)=>b(B,d),getPublicKey:B=>N(B),utils:{randomPrivateKey:()=>e.randomBytes(e.nByteLength)},GuBytes:S}}var St=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),ue=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),so=BigInt(0),rt=BigInt(1),Ft=BigInt(2),Ke=BigInt(3),Qe=BigInt(5),de=BigInt(8);function Je(t){let e=BigInt(10),n=BigInt(20),o=BigInt(40),s=BigInt(80),r=St,a=t*t%r*t%r,c=W(a,Ft,r)*a%r,u=W(c,rt,r)*t%r,f=W(u,Qe,r)*u%r,h=W(f,e,r)*f%r,g=W(h,n,r)*h%r,x=W(g,o,r)*g%r,w=W(x,s,r)*x%r,b=W(w,s,r)*x%r,S=W(b,e,r)*f%r;return{pow_p_5_8:W(S,Ft,r)*t%r,b2:a}}function $e(t){return t[0]&=248,t[31]&=127,t[31]|=64,t}function he(t,e){let n=St,o=O(e*e*e,n),s=O(o*o*e,n),r=Je(t*s).pow_p_5_8,i=O(t*o*r,n),a=O(e*i*i,n),c=i,u=O(i*ue,n),f=a===t,h=a===O(-t,n),g=a===O(-t*ue,n);return f&&(i=c),(h||g)&&(i=u),at(i,n)&&(i=O(-i,n)),{isValid:f||h,value:i}}var er=["0100000000000000000000000000000000000000000000000000000000000000","c7176a703d4dd84fba3c0b760d10670f2a2053fa2c39ccc64ec7fd7792ac037a","0000000000000000000000000000000000000000000000000000000000000080","26e8958fc2b227b045c3f489f2ef98f0d5dfac05d3c63339b13802886d53fc05","ecffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f","26e8958fc2b227b045c3f489f2ef98f0d5dfac05d3c63339b13802886d53fc85","0000000000000000000000000000000000000000000000000000000000000000","c7176a703d4dd84fba3c0b760d10670f2a2053fa2c39ccc64ec7fd7792ac03fa"],p=_t(St,void 0,!0),It={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:p,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:de,Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:Et,randomBytes:jt,adjustScalarBytes:$e,uvRatio:he},F=Zt(It);function tn(t,e,n){if(e.length>255)throw new Error("Context is too big");return Ae(Ot("SigEd25519 no Ed25519 collisions"),new Uint8Array([n?1:0,e.length]),e,t)}var nr=Zt({...It,domain:tn}),or=Zt(Object.assign({},It,{domain:tn,prehash:Et})),rr=Pe({P:St,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:t=>{let e=St,{pow_p_5_8:n,b2:o}=Je(t);return O(W(n,Ke,e)*o,e)},adjustScalarBytes:$e,randomBytes:jt});function io(t){let{y:e}=F.ExtendedPoint.fromHex(t),n=BigInt(1);return p.toBytes(p.create((n+e)*p.inv(n-e)))}var sr=io;function ir(t){let e=It.hash(t.subarray(0,32));return It.adjustScalarBytes(e).subarray(0,32)}var co=(p.ORDER+Ke)/de,fo=p.pow(Ft,co),Ye=p.sqrt(p.neg(p.ONE));function ao(t){let e=(p.ORDER-Qe)/de,n=BigInt(486662),o=p.sqr(t);o=p.mul(o,Ft);let s=p.add(o,p.ONE),r=p.neg(n),i=p.sqr(s),a=p.mul(i,s),c=p.mul(o,n);c=p.mul(c,r),c=p.add(c,i),c=p.mul(c,r);let u=p.sqr(a);i=p.sqr(u),u=p.mul(u,a),u=p.mul(u,c),i=p.mul(i,u);let f=p.pow(i,e);f=p.mul(f,u);let h=p.mul(f,Ye);i=p.sqr(f),i=p.mul(i,a);let g=p.eql(i,c),x=p.cmov(h,f,g),w=p.mul(r,o),b=p.mul(f,t);b=p.mul(b,fo);let S=p.mul(b,Ye),N=p.mul(c,o);i=p.sqr(b),i=p.mul(i,a);let B=p.eql(i,N),d=p.cmov(S,b,B);i=p.sqr(x),i=p.mul(i,a);let I=p.eql(i,c),M=p.cmov(w,r,I),U=p.cmov(d,x,I),k=p.isOdd(U);return U=p.cmov(U,p.neg(U),I!==k),{xMn:M,xMd:s,yMn:U,yMd:rt}}var uo=De(p,p.neg(BigInt(486664)));function lo(t){let{xMn:e,xMd:n,yMn:o,yMd:s}=ao(t),r=p.mul(e,s);r=p.mul(r,uo);let i=p.mul(n,o),a=p.sub(e,n),c=p.add(e,n),u=p.mul(i,c),f=p.eql(u,p.ZERO);r=p.cmov(r,p.ZERO,f),i=p.cmov(i,p.ONE,f),a=p.cmov(a,p.ONE,f),c=p.cmov(c,p.ONE,f);let h=p.invertBatch([i,c]);return{x:p.mul(r,h[0]),y:p.mul(a,h[1])}}var en=je(F.ExtendedPoint,t=>lo(t[0]),{DST:"edwards25519_XMD:SHA-512_ELL2_RO_",encodeDST:"edwards25519_XMD:SHA-512_ELL2_NU_",p:p.ORDER,m:1,k:128,expand:"xmd",hash:Et}),cr=en.hashToCurve,fr=en.encodeToCurve;function fe(t){if(!(t instanceof J))throw new Error("RistrettoPoint expected")}var le=ue,ho=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),po=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),xo=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),go=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952"),Xe=t=>he(rt,t),bo=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"),ae=t=>F.CURVE.Fp.create(K(t)&bo);function We(t){let{d:e}=F.CURVE,n=F.CURVE.Fp.ORDER,o=F.CURVE.Fp.create,s=o(le*t*t),r=o((s+rt)*xo),i=BigInt(-1),a=o((i-e*s)*o(s+e)),{isValid:c,value:u}=he(r,a),f=o(u*t);at(f,n)||(f=o(-f)),c||(u=f),c||(i=s);let h=o(i*(s-rt)*go-a),g=u*u,x=o((u+u)*a),w=o(h*ho),b=o(rt-g),S=o(rt+g);return new F.ExtendedPoint(o(x*S),o(b*w),o(w*S),o(x*b))}var J=class t{constructor(e){this.ep=e}static fromAffine(e){return new t(F.ExtendedPoint.fromAffine(e))}static hashToCurve(e){e=G("ristrettoHash",e,64);let n=ae(e.slice(0,32)),o=We(n),s=ae(e.slice(32,64)),r=We(s);return new t(o.add(r))}static fromHex(e){e=G("ristrettoHex",e,32);let{a:n,d:o}=F.CURVE,s=F.CURVE.Fp.ORDER,r=F.CURVE.Fp.create,i="RistrettoPoint.fromHex: the hex is not valid encoding of RistrettoPoint",a=ae(e);if(!Oe(et(a,32),e)||at(a,s))throw new Error(i);let c=r(a*a),u=r(rt+n*c),f=r(rt-n*c),h=r(u*u),g=r(f*f),x=r(n*o*h-g),{isValid:w,value:b}=Xe(r(x*g)),S=r(b*f),N=r(b*S*x),B=r((a+a)*S);at(B,s)&&(B=r(-B));let d=r(u*N),I=r(B*d);if(!w||at(I,s)||d===so)throw new Error(i);return new t(new F.ExtendedPoint(B,d,rt,I))}static msm(e,n){let o=_t(F.CURVE.n,F.CURVE.nBitLength);return Dt(t,o,e,n)}toRawBytes(){let{ex:e,ey:n,ez:o,et:s}=this.ep,r=F.CURVE.Fp.ORDER,i=F.CURVE.Fp.create,a=i(i(o+n)*i(o-n)),c=i(e*n),u=i(c*c),{value:f}=Xe(i(a*u)),h=i(f*a),g=i(f*c),x=i(h*g*s),w;if(at(s*x,r)){let S=i(n*le),N=i(e*le);e=S,n=N,w=i(h*po)}else w=g;at(e*x,r)&&(n=i(-n));let b=i((o-n)*w);return at(b,r)&&(b=i(-b)),et(b,32)}toHex(){return yt(this.toRawBytes())}toString(){return this.toHex()}equals(e){fe(e);let{ex:n,ey:o}=this.ep,{ex:s,ey:r}=e.ep,i=F.CURVE.Fp.create,a=i(n*r)===i(o*s),c=i(o*r)===i(n*s);return a||c}add(e){return fe(e),new t(this.ep.add(e.ep))}subtract(e){return fe(e),new t(this.ep.subtract(e.ep))}multiply(e){return new t(this.ep.multiply(e))}multiplyUnsafe(e){return new t(this.ep.multiplyUnsafe(e))}double(){return new t(this.ep.double())}negate(){return new t(this.ep.negate())}},ar=(J.BASE||(J.BASE=new J(F.ExtendedPoint.BASE)),J.ZERO||(J.ZERO=new J(F.ExtendedPoint.ZERO)),J),mo=(t,e)=>{let n=e.DST,o=typeof n=="string"?Ot(n):n,s=ie(t,o,64,Et);return J.hashToCurve(s)},ur=mo;export{er as ED25519_TORSION_SUBGROUP,ar as RistrettoPoint,F as ed25519,nr as ed25519ctx,or as ed25519ph,sr as edwardsToMontgomery,ir as edwardsToMontgomeryPriv,io as edwardsToMontgomeryPub,fr as encodeToCurve,cr as hashToCurve,mo as hashToRistretto255,ur as hash_to_ristretto255,rr as x25519}; +/*! Bundled license information: + +@noble/hashes/esm/utils.js: + (*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) *) + +@noble/curves/esm/abstract/utils.js: +@noble/curves/esm/abstract/modular.js: +@noble/curves/esm/abstract/curve.js: +@noble/curves/esm/abstract/edwards.js: +@noble/curves/esm/abstract/montgomery.js: +@noble/curves/esm/ed25519.js: + (*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) *) +*/ diff --git a/shine-UI/js/vendor/noble/hashes-argon2-1.8.0.bundle.mjs b/shine-UI/js/vendor/noble/hashes-argon2-1.8.0.bundle.mjs new file mode 100644 index 00000000..aec42929 --- /dev/null +++ b/shine-UI/js/vendor/noble/hashes-argon2-1.8.0.bundle.mjs @@ -0,0 +1,7 @@ +/* esm.sh - @noble/hashes@1.8.0/argon2 */ +var Q=BigInt(4294967295),pt=BigInt(32);function xt(t,e=!1){return e?{h:Number(t&Q),l:Number(t>>pt&Q)}:{h:Number(t>>pt&Q)|0,l:Number(t&Q)|0}}var X=(t,e,n)=>t>>>n|e<<32-n,P=(t,e,n)=>t<<32-n|e>>>n,$=(t,e,n)=>t<<64-n|e>>>n-32,K=(t,e,n)=>t>>>n-32|e<<64-n,tt=(t,e)=>e,et=(t,e)=>t;function st(t,e,n,s){let h=(e>>>0)+(s>>>0);return{h:t+n+(h/2**32|0)|0,l:h|0}}var Z=(t,e,n)=>(t>>>0)+(e>>>0)+(n>>>0),q=(t,e,n,s)=>e+n+s+(t/2**32|0)|0;function St(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"}function rt(t){if(!Number.isSafeInteger(t)||t<0)throw new Error("positive integer expected, got "+t)}function O(t,...e){if(!St(t))throw new Error("Uint8Array expected");if(e.length>0&&!e.includes(t.length))throw new Error("Uint8Array expected of length "+e+", got length="+t.length)}function ht(t,e=!0){if(t.destroyed)throw new Error("Hash instance has been destroyed");if(e&&t.finished)throw new Error("Hash#digest() has already been called")}function bt(t,e){O(t);let n=e.outputLen;if(t.length>>8&65280|t>>>24&255}var D=wt?t=>t:t=>yt(t);function Ot(t){for(let e=0;et:Ot;var gt=async()=>{};function Bt(t){if(typeof t!="string")throw new Error("string expected");return new Uint8Array(new TextEncoder().encode(t))}function R(t){return typeof t=="string"&&(t=Bt(t)),O(t),t}function ot(t){return typeof t=="string"&&(t=Bt(t)),O(t),t}var nt=class{};function At(t){let e=(s,h)=>t(h).update(R(s)).digest(),n=t({});return e.outputLen=n.outputLen,e.blockLen=n.blockLen,e.create=s=>t(s),e}var mt=Uint8Array.from([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3,11,8,12,0,5,2,15,13,10,14,3,6,7,1,9,4,7,9,3,1,13,12,11,14,2,6,5,10,4,0,15,8,9,0,5,7,2,4,10,15,14,1,11,12,6,8,3,13,2,12,6,10,0,11,8,3,4,13,7,5,15,14,1,9,12,5,1,15,14,13,4,10,0,7,6,3,9,2,8,11,13,11,7,14,12,1,3,9,5,0,15,4,8,6,2,10,6,15,14,9,11,3,0,8,12,2,13,7,1,4,10,5,10,2,8,4,7,6,1,5,15,11,9,14,3,12,13,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3,11,8,12,0,5,2,15,13,10,14,3,6,7,1,9,4,7,9,3,1,13,12,11,14,2,6,5,10,4,0,15,8,9,0,5,7,2,4,10,15,14,1,11,12,6,8,3,13,2,12,6,10,0,11,8,3,4,13,7,5,15,14,1,9]);var B=Uint32Array.from([4089235720,1779033703,2227873595,3144134277,4271175723,1013904242,1595750129,2773480762,2917565137,1359893119,725511199,2600822924,4215389547,528734635,327033209,1541459225]),l=new Uint32Array(32);function _(t,e,n,s,h,r){let i=h[r],o=h[r+1],c=l[2*t],f=l[2*t+1],a=l[2*e],u=l[2*e+1],x=l[2*n],b=l[2*n+1],p=l[2*s],d=l[2*s+1],g=Z(c,a,i);f=q(g,f,u,o),c=g|0,{Dh:d,Dl:p}={Dh:d^f,Dl:p^c},{Dh:d,Dl:p}={Dh:tt(d,p),Dl:et(d,p)},{h:b,l:x}=st(b,x,d,p),{Bh:u,Bl:a}={Bh:u^b,Bl:a^x},{Bh:u,Bl:a}={Bh:X(u,a,24),Bl:P(u,a,24)},l[2*t]=c,l[2*t+1]=f,l[2*e]=a,l[2*e+1]=u,l[2*n]=x,l[2*n+1]=b,l[2*s]=p,l[2*s+1]=d}function T(t,e,n,s,h,r){let i=h[r],o=h[r+1],c=l[2*t],f=l[2*t+1],a=l[2*e],u=l[2*e+1],x=l[2*n],b=l[2*n+1],p=l[2*s],d=l[2*s+1],g=Z(c,a,i);f=q(g,f,u,o),c=g|0,{Dh:d,Dl:p}={Dh:d^f,Dl:p^c},{Dh:d,Dl:p}={Dh:X(d,p,16),Dl:P(d,p,16)},{h:b,l:x}=st(b,x,d,p),{Bh:u,Bl:a}={Bh:u^b,Bl:a^x},{Bh:u,Bl:a}={Bh:$(u,a,63),Bl:K(u,a,63)},l[2*t]=c,l[2*t+1]=f,l[2*e]=a,l[2*e+1]=u,l[2*n]=x,l[2*n+1]=b,l[2*s]=p,l[2*s+1]=d}function _t(t,e={},n,s,h){if(rt(n),t<0||t>n)throw new Error("outputLen bigger than keyLen");let{key:r,salt:i,personalization:o}=e;if(r!==void 0&&(r.length<1||r.length>n))throw new Error("key length must be undefined or 1.."+n);if(i!==void 0&&i.length!==s)throw new Error("salt must be undefined or "+s);if(o!==void 0&&o.length!==h)throw new Error("personalization must be undefined or "+h)}var lt=class extends nt{constructor(e,n){super(),this.finished=!1,this.destroyed=!1,this.length=0,this.pos=0,rt(e),rt(n),this.blockLen=e,this.outputLen=n,this.buffer=new Uint8Array(e),this.buffer32=G(this.buffer)}update(e){ht(this),e=R(e),O(e);let{blockLen:n,buffer:s,buffer32:h}=this,r=e.length,i=e.byteOffset,o=e.buffer;for(let c=0;ch[i]=D(r))}digest(){let{buffer:e,outputLen:n}=this;this.digestInto(e);let s=e.slice(0,n);return this.destroy(),s}_cloneInto(e){let{buffer:n,length:s,finished:h,destroyed:r,outputLen:i,pos:o}=this;return e||(e=new this.constructor({dkLen:i})),e.set(...this.get()),e.buffer.set(n),e.destroyed=r,e.finished=h,e.length=s,e.pos=o,e.outputLen=i,e}clone(){return this._cloneInto()}},ct=class extends lt{constructor(e={}){let n=e.dkLen===void 0?64:e.dkLen;super(128,n),this.v0l=B[0]|0,this.v0h=B[1]|0,this.v1l=B[2]|0,this.v1h=B[3]|0,this.v2l=B[4]|0,this.v2h=B[5]|0,this.v3l=B[6]|0,this.v3h=B[7]|0,this.v4l=B[8]|0,this.v4h=B[9]|0,this.v5l=B[10]|0,this.v5h=B[11]|0,this.v6l=B[12]|0,this.v6h=B[13]|0,this.v7l=B[14]|0,this.v7h=B[15]|0,_t(n,e,64,16,16);let{key:s,personalization:h,salt:r}=e,i=0;if(s!==void 0&&(s=R(s),i=s.length),this.v0l^=this.outputLen|i<<8|65536|1<<24,r!==void 0){r=R(r);let o=G(r);this.v4l^=D(o[0]),this.v4h^=D(o[1]),this.v5l^=D(o[2]),this.v5h^=D(o[3])}if(h!==void 0){h=R(h);let o=G(h);this.v6l^=D(o[0]),this.v6h^=D(o[1]),this.v7l^=D(o[2]),this.v7h^=D(o[3])}if(s!==void 0){let o=new Uint8Array(this.blockLen);o.set(s),this.update(o)}}get(){let{v0l:e,v0h:n,v1l:s,v1h:h,v2l:r,v2h:i,v3l:o,v3h:c,v4l:f,v4h:a,v5l:u,v5h:x,v6l:b,v6h:p,v7l:d,v7h:g}=this;return[e,n,s,h,r,i,o,c,f,a,u,x,b,p,d,g]}set(e,n,s,h,r,i,o,c,f,a,u,x,b,p,d,g){this.v0l=e|0,this.v0h=n|0,this.v1l=s|0,this.v1h=h|0,this.v2l=r|0,this.v2h=i|0,this.v3l=o|0,this.v3h=c|0,this.v4l=f|0,this.v4h=a|0,this.v5l=u|0,this.v5h=x|0,this.v6l=b|0,this.v6h=p|0,this.v7l=d|0,this.v7h=g|0}compress(e,n,s){this.get().forEach((c,f)=>l[f]=c),l.set(B,16);let{h,l:r}=xt(BigInt(this.length));l[24]=B[8]^r,l[25]=B[9]^h,s&&(l[28]=~l[28],l[29]=~l[29]);let i=0,o=mt;for(let c=0;c<12;c++)_(0,4,8,12,e,n+2*o[i++]),T(0,4,8,12,e,n+2*o[i++]),_(1,5,9,13,e,n+2*o[i++]),T(1,5,9,13,e,n+2*o[i++]),_(2,6,10,14,e,n+2*o[i++]),T(2,6,10,14,e,n+2*o[i++]),_(3,7,11,15,e,n+2*o[i++]),T(3,7,11,15,e,n+2*o[i++]),_(0,5,10,15,e,n+2*o[i++]),T(0,5,10,15,e,n+2*o[i++]),_(1,6,11,12,e,n+2*o[i++]),T(1,6,11,12,e,n+2*o[i++]),_(2,7,8,13,e,n+2*o[i++]),T(2,7,8,13,e,n+2*o[i++]),_(3,4,9,14,e,n+2*o[i++]),T(3,4,9,14,e,n+2*o[i++]);this.v0l^=l[0]^l[16],this.v0h^=l[1]^l[17],this.v1l^=l[2]^l[18],this.v1h^=l[3]^l[19],this.v2l^=l[4]^l[20],this.v2h^=l[5]^l[21],this.v3l^=l[6]^l[22],this.v3h^=l[7]^l[23],this.v4l^=l[8]^l[24],this.v4h^=l[9]^l[25],this.v5l^=l[10]^l[26],this.v5h^=l[11]^l[27],this.v6l^=l[12]^l[28],this.v6h^=l[13]^l[29],this.v7l^=l[14]^l[30],this.v7h^=l[15]^l[31],H(l)}destroy(){this.destroyed=!0,H(this.buffer32),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}},W=At(t=>new ct(t));var E={Argond2d:0,Argon2i:1,Argon2id:2},Y=4,kt=t=>t===void 0?Uint8Array.of():ot(t);function ft(t,e){let n=t&65535,s=t>>>16,h=e&65535,r=e>>>16,i=Math.imul(n,h),o=Math.imul(s,h),c=Math.imul(n,r),f=Math.imul(s,r),a=(i>>>16)+(o&65535)+c,u=f+(o>>>16)+(a>>>16)|0,x=a<<16|i&65535;return{h:u,l:x}}function Tt(t,e){let{h:n,l:s}=ft(t,e);return{h:(n<<1|s>>>31)&4294967295,l:s<<1&4294967295}}function it(t,e,n,s){let{h,l:r}=Tt(e,s),i=Z(e,s,r);return{h:q(i,t,n,h),l:i|0}}var y=new Uint32Array(256);function M(t,e,n,s){let h=y[2*t],r=y[2*t+1],i=y[2*e],o=y[2*e+1],c=y[2*n],f=y[2*n+1],a=y[2*s],u=y[2*s+1];({h:r,l:h}=it(r,h,o,i)),{Dh:u,Dl:a}={Dh:u^r,Dl:a^h},{Dh:u,Dl:a}={Dh:tt(u,a),Dl:et(u,a)},{h:f,l:c}=it(f,c,u,a),{Bh:o,Bl:i}={Bh:o^f,Bl:i^c},{Bh:o,Bl:i}={Bh:X(o,i,24),Bl:P(o,i,24)},{h:r,l:h}=it(r,h,o,i),{Dh:u,Dl:a}={Dh:u^r,Dl:a^h},{Dh:u,Dl:a}={Dh:X(u,a,16),Dl:P(u,a,16)},{h:f,l:c}=it(f,c,u,a),{Bh:o,Bl:i}={Bh:o^f,Bl:i^c},{Bh:o,Bl:i}={Bh:$(o,i,63),Bl:K(o,i,63)},y[2*t]=h,y[2*t+1]=r,y[2*e]=i,y[2*e+1]=o,y[2*n]=c,y[2*n+1]=f,y[2*s]=a,y[2*s+1]=u}function Lt(t,e,n,s,h,r,i,o,c,f,a,u,x,b,p,d){M(t,h,c,x),M(e,r,f,b),M(n,i,a,p),M(s,o,u,d),M(t,r,a,d),M(e,i,u,x),M(n,o,c,b),M(s,h,f,p)}function j(t,e,n,s,h){for(let r=0;r<256;r++)y[r]=t[e+r]^t[n+r];for(let r=0;r<128;r+=16)Lt(r,r+1,r+2,r+3,r+4,r+5,r+6,r+7,r+8,r+9,r+10,r+11,r+12,r+13,r+14,r+15);for(let r=0;r<16;r+=2)Lt(r,r+1,r+16,r+17,r+32,r+33,r+48,r+49,r+64,r+65,r+80,r+81,r+96,r+97,r+112,r+113);if(h)for(let r=0;r<256;r++)t[s+r]^=y[r]^t[e+r]^t[n+r];else for(let r=0;r<256;r++)t[s+r]=y[r]^t[e+r]^t[n+r];H(y)}function ut(t,e){let n=z(t),s=new Uint32Array(1),h=z(s);if(s[0]=e,e<=64)return W.create({dkLen:e}).update(h).update(n).digest();let r=new Uint8Array(e),i=W.create({}).update(h).update(n).digest(),o=0;for(r.set(i.subarray(0,32)),o+=32;e-o>64;o+=32){let c=W.create({}).update(i);c.digestInto(i),c.destroy(),r.set(i.subarray(0,32),o)}return r.set(W(i,{dkLen:e-o}),o),H(i,s),G(r)}function Mt(t,e,n,s,h,r,i=!1){let o;t===0?e===0?o=h-1:i?o=e*s+h-1:o=e*s+(h==0?-1:0):i?o=n-s+h-1:o=n-s+(h==0?-1:0);let c=t!==0&&e!==Y-1?(e+1)*s:0,f=o-1-ft(o,ft(r,r).h).h;return(c+f)%n}var Ut=Math.pow(2,32);function C(t){return Number.isSafeInteger(t)&&t>=0&&t=Math.pow(2,24))throw new Error("p should be 1 <= p < 2^24");if(!C(h))throw new Error("m should be 0 <= m < 2^32");if(!C(r)||r<1)throw new Error("t (iterations) should be 1 <= t < 2^32");if(o!==void 0&&typeof o!="function")throw new Error("progressCb should be function");if(!C(h)||h<8*s)throw new Error("memory should be at least 8*p bytes");if(i!==16&&i!==19)throw new Error("unknown version="+i);return e}function Ht(t,e,n,s){if(t=ot(t),e=ot(e),O(t),O(e),!C(t.length))throw new Error("password should be less than 4 GB");if(!C(e.length)||e.length<8)throw new Error("salt should be at least 8 bytes and less than 4 GB");if(!Object.values(E).includes(n))throw new Error("invalid type");let{p:h,dkLen:r,m:i,t:o,version:c,key:f,personalization:a,maxmem:u,onProgress:x,asyncTick:b}=Ct(s);f=kt(f),a=kt(a);let p=W.create({}),d=new Uint32Array(1),g=z(d);for(let A of[h,r,i,o,c,n])d[0]=A,p.update(g);for(let A of[t,e,f,a])d[0]=A.length,p.update(g).update(A);let w=new Uint32Array(18),L=z(w);p.digestInto(L);let m=h,I=4*h*Math.floor(i/(Y*h)),k=Math.floor(I/h),S=Math.floor(k/Y),U=I*256;if(!C(u)||U>u)throw new Error("mem should be less than 2**32, got: maxmem="+u+", memused="+U);let N=new Uint32Array(U);for(let A=0;A{};if(x){let A=o*Y*h*S,v=Math.max(Math.floor(A/1e4),1),J=0;F=()=>{J++,x&&(!(J%v)||J===A)&&x(J/A)}}return H(d,w),{type:n,mP:I,p:h,t:o,version:c,B:N,laneLen:k,lanes:m,segmentLen:S,dkLen:r,perBlock:F,asyncTick:b}}function Et(t,e,n,s){let h=new Uint32Array(256);for(let i=0;iat(E.Argond2d,t,e,n),Zt=(t,e,n)=>at(E.Argon2i,t,e,n),qt=(t,e,n)=>at(E.Argon2id,t,e,n);async function dt(t,e,n,s){let{mP:h,p:r,t:i,version:o,B:c,laneLen:f,lanes:a,segmentLen:u,dkLen:x,perBlock:b,asyncTick:p}=Ht(e,n,t,s),d=new Uint32Array(3*256);d[262]=h,d[264]=i,d[266]=t;let g=Date.now();for(let w=0;w=0&&Adt(E.Argond2d,t,e,n),Jt=(t,e,n)=>dt(E.Argon2i,t,e,n),Qt=(t,e,n)=>dt(E.Argon2id,t,e,n);export{Yt as argon2d,vt as argon2dAsync,Zt as argon2i,Jt as argon2iAsync,qt as argon2id,Qt as argon2idAsync}; +/*! Bundled license information: + +@noble/hashes/esm/utils.js: + (*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) *) +*/