@ghostlytools/cli 1.1.3 → 1.1.4

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.
Files changed (29) hide show
  1. package/dist/assets/argon2id-088uQfnH.js.map +1 -1
  2. package/dist/assets/bark_ffi_wasm_bg-EY2uc0Bx.js.map +1 -1
  3. package/dist/assets/bitcoindevkit_bg-B-iLWrmX.js.map +1 -1
  4. package/dist/assets/breez_sdk_spark_wasm_bg.wasm +0 -0
  5. package/dist/assets/fedimint_client_wasm_bg-BtHHlFpp.js.map +1 -1
  6. package/dist/assets/{hyperdhtRelay-CHMS7_KO.js → hyperdhtRelay-BoxPHp7v.js} +3 -3
  7. package/dist/assets/{hyperdhtRelay-CHMS7_KO.js.map → hyperdhtRelay-BoxPHp7v.js.map} +1 -1
  8. package/dist/assets/legacy_ciphers-JJOu0JXL.js.map +1 -1
  9. package/dist/assets/{mainline-B0UTU0-4.js → mainline-dkA94eh2.js} +2 -2
  10. package/dist/assets/{mainline-B0UTU0-4.js.map → mainline-dkA94eh2.js.map} +1 -1
  11. package/dist/assets/nacl-fast-CDhNCYHs.js.map +1 -1
  12. package/dist/assets/noble_curves-DDWn5AH0.js.map +1 -1
  13. package/dist/assets/noble_hashes-B7AZyFyS.js.map +1 -1
  14. package/dist/assets/openpgp-BBFr-zHQ.js.map +1 -1
  15. package/dist/assets/{server-9AM0ta6q.js → server-CXFTDnFI.js} +204 -30
  16. package/dist/assets/server-CXFTDnFI.js.map +1 -0
  17. package/dist/assets/sha512-BYId-G-T.js.map +1 -1
  18. package/dist/assets/{src-C_E99PGx.js → src-K3NijMq-.js} +414 -46
  19. package/dist/assets/src-K3NijMq-.js.map +1 -0
  20. package/dist/assets/storage-Bya5b2Xt.js.map +1 -1
  21. package/dist/assets/tree-store-N362nuzZ.js.map +1 -1
  22. package/dist/assets/unbzip2-stream-B1C-JX9L.js.map +1 -1
  23. package/dist/assets/{web-OUQl4Q7L.js → web-DwgdhfcY.js} +16 -16
  24. package/dist/assets/{web-OUQl4Q7L.js.map → web-DwgdhfcY.js.map} +1 -1
  25. package/dist/ghostly.mjs +28 -13
  26. package/dist/ghostly.mjs.map +1 -1
  27. package/package.json +7 -7
  28. package/dist/assets/server-9AM0ta6q.js.map +0 -1
  29. package/dist/assets/src-C_E99PGx.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"sha512-BYId-G-T.js","names":["globalThis"],"sources":["../../../../node_modules/openpgp/dist/lightweight/sha512.mjs"],"sourcesContent":["/*! OpenPGP.js v6.3.2 - 2026-09-24 - this is LGPL licensed code, see LICENSE/our website https://openpgpjs.org/ for more information. */\nconst globalThis = typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};\n\nconst crypto = typeof globalThis === 'object' && 'crypto' in globalThis ? globalThis.crypto : undefined;\n\n/**\n * Utilities for hex, bytes, CSPRNG.\n * @module\n */\n/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */\n// We use WebCrypto aka globalThis.crypto, which exists in browsers and node.js 16+.\n// node.js versions earlier than v19 don't declare it in global scope.\n// For node.js, package.json#exports field mapping rewrites import\n// from `crypto` to `cryptoNode`, which imports native module.\n// Makes the utils un-importable in browsers without a bundler.\n// Once node.js 18 is deprecated (2025-04-30), we can just drop the import.\n/** Checks if something is Uint8Array. Be careful: nodejs Buffer will return true. */\nfunction isBytes(a) {\n return a instanceof Uint8Array || (ArrayBuffer.isView(a) && a.constructor.name === 'Uint8Array');\n}\n/** Asserts something is positive integer. */\nfunction anumber(n) {\n if (!Number.isSafeInteger(n) || n < 0)\n throw new Error('positive integer expected, got ' + n);\n}\n/** Asserts something is Uint8Array. */\nfunction abytes(b, ...lengths) {\n if (!isBytes(b))\n throw new Error('Uint8Array expected');\n if (lengths.length > 0 && !lengths.includes(b.length))\n throw new Error('Uint8Array expected of length ' + lengths + ', got length=' + b.length);\n}\n/** Asserts something is hash */\nfunction ahash(h) {\n if (typeof h !== 'function' || typeof h.create !== 'function')\n throw new Error('Hash should be wrapped by utils.createHasher');\n anumber(h.outputLen);\n anumber(h.blockLen);\n}\n/** Asserts a hash instance has not been destroyed / finished */\nfunction aexists(instance, checkFinished = true) {\n if (instance.destroyed)\n throw new Error('Hash instance has been destroyed');\n if (checkFinished && instance.finished)\n throw new Error('Hash#digest() has already been called');\n}\n/** Asserts output is properly-sized byte array */\nfunction aoutput(out, instance) {\n abytes(out);\n const min = instance.outputLen;\n if (out.length < min) {\n throw new Error('digestInto() expects output buffer of length at least ' + min);\n }\n}\n/** Cast u8 / u16 / u32 to u32. */\nfunction u32(arr) {\n return new Uint32Array(arr.buffer, arr.byteOffset, Math.floor(arr.byteLength / 4));\n}\n/** Zeroize a byte array. Warning: JS provides no guarantees. */\nfunction clean(...arrays) {\n for (let i = 0; i < arrays.length; i++) {\n arrays[i].fill(0);\n }\n}\n/** Create DataView of an array for easy byte-level manipulation. */\nfunction createView(arr) {\n return new DataView(arr.buffer, arr.byteOffset, arr.byteLength);\n}\n/** The rotate right (circular right shift) operation for uint32 */\nfunction rotr(word, shift) {\n return (word << (32 - shift)) | (word >>> shift);\n}\n/** The rotate left (circular left shift) operation for uint32 */\nfunction rotl(word, shift) {\n return (word << shift) | ((word >>> (32 - shift)) >>> 0);\n}\n/** Is current platform little-endian? Most are. Big-Endian platform: IBM */\nconst isLE = /* @__PURE__ */ (() => new Uint8Array(new Uint32Array([0x11223344]).buffer)[0] === 0x44)();\n/** The byte swap operation for uint32 */\nfunction byteSwap(word) {\n return (((word << 24) & 0xff000000) |\n ((word << 8) & 0xff0000) |\n ((word >>> 8) & 0xff00) |\n ((word >>> 24) & 0xff));\n}\n/** In place byte swap for Uint32Array */\nfunction byteSwap32(arr) {\n for (let i = 0; i < arr.length; i++) {\n arr[i] = byteSwap(arr[i]);\n }\n return arr;\n}\nconst swap32IfBE = isLE\n ? (u) => u\n : byteSwap32;\n// Built-in hex conversion https://caniuse.com/mdn-javascript_builtins_uint8array_fromhex\nconst hasHexBuiltin = /* @__PURE__ */ (() => \n// @ts-ignore\ntypeof Uint8Array.from([]).toHex === 'function' && typeof Uint8Array.fromHex === 'function')();\n// Array where index 0xf0 (240) is mapped to string 'f0'\nconst hexes = /* @__PURE__ */ Array.from({ length: 256 }, (_, i) => i.toString(16).padStart(2, '0'));\n/**\n * Convert byte array to hex string. Uses built-in function, when available.\n * @example bytesToHex(Uint8Array.from([0xca, 0xfe, 0x01, 0x23])) // 'cafe0123'\n */\nfunction bytesToHex(bytes) {\n abytes(bytes);\n // @ts-ignore\n if (hasHexBuiltin)\n return bytes.toHex();\n // pre-caching improves the speed 6x\n let hex = '';\n for (let i = 0; i < bytes.length; i++) {\n hex += hexes[bytes[i]];\n }\n return hex;\n}\n// We use optimized technique to convert hex string to byte array\nconst asciis = { _0: 48, _9: 57, A: 65, F: 70, a: 97, f: 102 };\nfunction asciiToBase16(ch) {\n if (ch >= asciis._0 && ch <= asciis._9)\n return ch - asciis._0; // '2' => 50-48\n if (ch >= asciis.A && ch <= asciis.F)\n return ch - (asciis.A - 10); // 'B' => 66-(65-10)\n if (ch >= asciis.a && ch <= asciis.f)\n return ch - (asciis.a - 10); // 'b' => 98-(97-10)\n return;\n}\n/**\n * Convert hex string to byte array. Uses built-in function, when available.\n * @example hexToBytes('cafe0123') // Uint8Array.from([0xca, 0xfe, 0x01, 0x23])\n */\nfunction hexToBytes(hex) {\n if (typeof hex !== 'string')\n throw new Error('hex string expected, got ' + typeof hex);\n // @ts-ignore\n if (hasHexBuiltin)\n return Uint8Array.fromHex(hex);\n const hl = hex.length;\n const al = hl / 2;\n if (hl % 2)\n throw new Error('hex string expected, got unpadded hex of length ' + hl);\n const array = new Uint8Array(al);\n for (let ai = 0, hi = 0; ai < al; ai++, hi += 2) {\n const n1 = asciiToBase16(hex.charCodeAt(hi));\n const n2 = asciiToBase16(hex.charCodeAt(hi + 1));\n if (n1 === undefined || n2 === undefined) {\n const char = hex[hi] + hex[hi + 1];\n throw new Error('hex string expected, got non-hex character \"' + char + '\" at index ' + hi);\n }\n array[ai] = n1 * 16 + n2; // multiply first octet, e.g. 'a3' => 10*16+3 => 160 + 3 => 163\n }\n return array;\n}\n/**\n * Converts string to bytes using UTF8 encoding.\n * @example utf8ToBytes('abc') // Uint8Array.from([97, 98, 99])\n */\nfunction utf8ToBytes(str) {\n if (typeof str !== 'string')\n throw new Error('string expected');\n return new Uint8Array(new TextEncoder().encode(str)); // https://bugzil.la/1681809\n}\n/**\n * Normalizes (non-hex) string or Uint8Array to Uint8Array.\n * Warning: when Uint8Array is passed, it would NOT get copied.\n * Keep in mind for future mutable operations.\n */\nfunction toBytes(data) {\n if (typeof data === 'string')\n data = utf8ToBytes(data);\n abytes(data);\n return data;\n}\n/** Copies several Uint8Arrays into one. */\nfunction concatBytes(...arrays) {\n let sum = 0;\n for (let i = 0; i < arrays.length; i++) {\n const a = arrays[i];\n abytes(a);\n sum += a.length;\n }\n const res = new Uint8Array(sum);\n for (let i = 0, pad = 0; i < arrays.length; i++) {\n const a = arrays[i];\n res.set(a, pad);\n pad += a.length;\n }\n return res;\n}\n/** For runtime check if class implements interface */\nclass Hash {\n}\n/** Wraps hash function, creating an interface on top of it */\nfunction createHasher(hashCons) {\n const hashC = (msg) => hashCons().update(toBytes(msg)).digest();\n const tmp = hashCons();\n hashC.outputLen = tmp.outputLen;\n hashC.blockLen = tmp.blockLen;\n hashC.create = () => hashCons();\n return hashC;\n}\nfunction createXOFer(hashCons) {\n const hashC = (msg, opts) => hashCons(opts).update(toBytes(msg)).digest();\n const tmp = hashCons({});\n hashC.outputLen = tmp.outputLen;\n hashC.blockLen = tmp.blockLen;\n hashC.create = (opts) => hashCons(opts);\n return hashC;\n}\nconst wrapConstructor = createHasher;\n/** Cryptographically secure PRNG. Uses internal OS-level `crypto.getRandomValues`. */\nfunction randomBytes(bytesLength = 32) {\n if (crypto && typeof crypto.getRandomValues === 'function') {\n return crypto.getRandomValues(new Uint8Array(bytesLength));\n }\n // Legacy Node.js compatibility\n if (crypto && typeof crypto.randomBytes === 'function') {\n return Uint8Array.from(crypto.randomBytes(bytesLength));\n }\n throw new Error('crypto.getRandomValues must be defined');\n}\n\n/**\n * Internal Merkle-Damgard hash utils.\n * @module\n */\n/** Polyfill for Safari 14. https://caniuse.com/mdn-javascript_builtins_dataview_setbiguint64 */\nfunction setBigUint64(view, byteOffset, value, isLE) {\n if (typeof view.setBigUint64 === 'function')\n return view.setBigUint64(byteOffset, value, isLE);\n const _32n = BigInt(32);\n const _u32_max = BigInt(0xffffffff);\n const wh = Number((value >> _32n) & _u32_max);\n const wl = Number(value & _u32_max);\n const h = isLE ? 4 : 0;\n const l = isLE ? 0 : 4;\n view.setUint32(byteOffset + h, wh, isLE);\n view.setUint32(byteOffset + l, wl, isLE);\n}\n/** Choice: a ? b : c */\nfunction Chi(a, b, c) {\n return (a & b) ^ (~a & c);\n}\n/** Majority function, true if any two inputs is true. */\nfunction Maj(a, b, c) {\n return (a & b) ^ (a & c) ^ (b & c);\n}\n/**\n * Merkle-Damgard hash construction base class.\n * Could be used to create MD5, RIPEMD, SHA1, SHA2.\n */\nclass HashMD extends Hash {\n constructor(blockLen, outputLen, padOffset, isLE) {\n super();\n this.finished = false;\n this.length = 0;\n this.pos = 0;\n this.destroyed = false;\n this.blockLen = blockLen;\n this.outputLen = outputLen;\n this.padOffset = padOffset;\n this.isLE = isLE;\n this.buffer = new Uint8Array(blockLen);\n this.view = createView(this.buffer);\n }\n update(data) {\n aexists(this);\n data = toBytes(data);\n abytes(data);\n const { view, buffer, blockLen } = this;\n const len = data.length;\n for (let pos = 0; pos < len;) {\n const take = Math.min(blockLen - this.pos, len - pos);\n // Fast path: we have at least one block in input, cast it to view and process\n if (take === blockLen) {\n const dataView = createView(data);\n for (; blockLen <= len - pos; pos += blockLen)\n this.process(dataView, pos);\n continue;\n }\n buffer.set(data.subarray(pos, pos + take), this.pos);\n this.pos += take;\n pos += take;\n if (this.pos === blockLen) {\n this.process(view, 0);\n this.pos = 0;\n }\n }\n this.length += data.length;\n this.roundClean();\n return this;\n }\n digestInto(out) {\n aexists(this);\n aoutput(out, this);\n this.finished = true;\n // Padding\n // We can avoid allocation of buffer for padding completely if it\n // was previously not allocated here. But it won't change performance.\n const { buffer, view, blockLen, isLE } = this;\n let { pos } = this;\n // append the bit '1' to the message\n buffer[pos++] = 0b10000000;\n clean(this.buffer.subarray(pos));\n // we have less than padOffset left in buffer, so we cannot put length in\n // current block, need process it and pad again\n if (this.padOffset > blockLen - pos) {\n this.process(view, 0);\n pos = 0;\n }\n // Pad until full block byte with zeros\n for (let i = pos; i < blockLen; i++)\n buffer[i] = 0;\n // Note: sha512 requires length to be 128bit integer, but length in JS will overflow before that\n // You need to write around 2 exabytes (u64_max / 8 / (1024**6)) for this to happen.\n // So we just write lowest 64 bits of that value.\n setBigUint64(view, blockLen - 8, BigInt(this.length * 8), isLE);\n this.process(view, 0);\n const oview = createView(out);\n const len = this.outputLen;\n // NOTE: we do division by 4 later, which should be fused in single op with modulo by JIT\n if (len % 4)\n throw new Error('_sha2: outputLen should be aligned to 32bit');\n const outLen = len / 4;\n const state = this.get();\n if (outLen > state.length)\n throw new Error('_sha2: outputLen bigger than state');\n for (let i = 0; i < outLen; i++)\n oview.setUint32(4 * i, state[i], isLE);\n }\n digest() {\n const { buffer, outputLen } = this;\n this.digestInto(buffer);\n const res = buffer.slice(0, outputLen);\n this.destroy();\n return res;\n }\n _cloneInto(to) {\n to || (to = new this.constructor());\n to.set(...this.get());\n const { blockLen, buffer, length, finished, destroyed, pos } = this;\n to.destroyed = destroyed;\n to.finished = finished;\n to.length = length;\n to.pos = pos;\n if (length % blockLen)\n to.buffer.set(buffer);\n return to;\n }\n clone() {\n return this._cloneInto();\n }\n}\n/**\n * Initial SHA-2 state: fractional parts of square roots of first 16 primes 2..53.\n * Check out `test/misc/sha2-gen-iv.js` for recomputation guide.\n */\n/** Initial SHA256 state. Bits 0..32 of frac part of sqrt of primes 2..19 */\nconst SHA256_IV = /* @__PURE__ */ Uint32Array.from([\n 0x6a09e667, 0xbb67ae85, 0x3c6ef372, 0xa54ff53a, 0x510e527f, 0x9b05688c, 0x1f83d9ab, 0x5be0cd19,\n]);\n/** Initial SHA224 state. Bits 32..64 of frac part of sqrt of primes 23..53 */\nconst SHA224_IV = /* @__PURE__ */ Uint32Array.from([\n 0xc1059ed8, 0x367cd507, 0x3070dd17, 0xf70e5939, 0xffc00b31, 0x68581511, 0x64f98fa7, 0xbefa4fa4,\n]);\n/** Initial SHA384 state. Bits 0..64 of frac part of sqrt of primes 23..53 */\nconst SHA384_IV = /* @__PURE__ */ Uint32Array.from([\n 0xcbbb9d5d, 0xc1059ed8, 0x629a292a, 0x367cd507, 0x9159015a, 0x3070dd17, 0x152fecd8, 0xf70e5939,\n 0x67332667, 0xffc00b31, 0x8eb44a87, 0x68581511, 0xdb0c2e0d, 0x64f98fa7, 0x47b5481d, 0xbefa4fa4,\n]);\n/** Initial SHA512 state. Bits 0..64 of frac part of sqrt of primes 2..19 */\nconst SHA512_IV = /* @__PURE__ */ Uint32Array.from([\n 0x6a09e667, 0xf3bcc908, 0xbb67ae85, 0x84caa73b, 0x3c6ef372, 0xfe94f82b, 0xa54ff53a, 0x5f1d36f1,\n 0x510e527f, 0xade682d1, 0x9b05688c, 0x2b3e6c1f, 0x1f83d9ab, 0xfb41bd6b, 0x5be0cd19, 0x137e2179,\n]);\n\n/**\n * Internal helpers for u64. BigUint64Array is too slow as per 2025, so we implement it using Uint32Array.\n * @todo re-check https://issues.chromium.org/issues/42212588\n * @module\n */\nconst U32_MASK64 = /* @__PURE__ */ BigInt(2 ** 32 - 1);\nconst _32n = /* @__PURE__ */ BigInt(32);\nfunction fromBig(n, le = false) {\n if (le)\n return { h: Number(n & U32_MASK64), l: Number((n >> _32n) & U32_MASK64) };\n return { h: Number((n >> _32n) & U32_MASK64) | 0, l: Number(n & U32_MASK64) | 0 };\n}\nfunction split(lst, le = false) {\n const len = lst.length;\n let Ah = new Uint32Array(len);\n let Al = new Uint32Array(len);\n for (let i = 0; i < len; i++) {\n const { h, l } = fromBig(lst[i], le);\n [Ah[i], Al[i]] = [h, l];\n }\n return [Ah, Al];\n}\n// for Shift in [0, 32)\nconst shrSH = (h, _l, s) => h >>> s;\nconst shrSL = (h, l, s) => (h << (32 - s)) | (l >>> s);\n// Right rotate for Shift in [1, 32)\nconst rotrSH = (h, l, s) => (h >>> s) | (l << (32 - s));\nconst rotrSL = (h, l, s) => (h << (32 - s)) | (l >>> s);\n// Right rotate for Shift in (32, 64), NOTE: 32 is special case.\nconst rotrBH = (h, l, s) => (h << (64 - s)) | (l >>> (s - 32));\nconst rotrBL = (h, l, s) => (h >>> (s - 32)) | (l << (64 - s));\n// Left rotate for Shift in [1, 32)\nconst rotlSH = (h, l, s) => (h << s) | (l >>> (32 - s));\nconst rotlSL = (h, l, s) => (l << s) | (h >>> (32 - s));\n// Left rotate for Shift in (32, 64), NOTE: 32 is special case.\nconst rotlBH = (h, l, s) => (l << (s - 32)) | (h >>> (64 - s));\nconst rotlBL = (h, l, s) => (h << (s - 32)) | (l >>> (64 - s));\n// JS uses 32-bit signed integers for bitwise operations which means we cannot\n// simple take carry out of low bit sum by shift, we need to use division.\nfunction add(Ah, Al, Bh, Bl) {\n const l = (Al >>> 0) + (Bl >>> 0);\n return { h: (Ah + Bh + ((l / 2 ** 32) | 0)) | 0, l: l | 0 };\n}\n// Addition with more than 2 elements\nconst add3L = (Al, Bl, Cl) => (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0);\nconst add3H = (low, Ah, Bh, Ch) => (Ah + Bh + Ch + ((low / 2 ** 32) | 0)) | 0;\nconst add4L = (Al, Bl, Cl, Dl) => (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0) + (Dl >>> 0);\nconst add4H = (low, Ah, Bh, Ch, Dh) => (Ah + Bh + Ch + Dh + ((low / 2 ** 32) | 0)) | 0;\nconst add5L = (Al, Bl, Cl, Dl, El) => (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0) + (Dl >>> 0) + (El >>> 0);\nconst add5H = (low, Ah, Bh, Ch, Dh, Eh) => (Ah + Bh + Ch + Dh + Eh + ((low / 2 ** 32) | 0)) | 0;\n\n/**\n * SHA2 hash function. A.k.a. sha256, sha384, sha512, sha512_224, sha512_256.\n * SHA256 is the fastest hash implementable in JS, even faster than Blake3.\n * Check out [RFC 4634](https://datatracker.ietf.org/doc/html/rfc4634) and\n * [FIPS 180-4](https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.180-4.pdf).\n * @module\n */\n/**\n * Round constants:\n * First 32 bits of fractional parts of the cube roots of the first 64 primes 2..311)\n */\n// prettier-ignore\nconst SHA256_K = /* @__PURE__ */ Uint32Array.from([\n 0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5, 0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5,\n 0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3, 0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174,\n 0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc, 0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da,\n 0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7, 0xc6e00bf3, 0xd5a79147, 0x06ca6351, 0x14292967,\n 0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13, 0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85,\n 0xa2bfe8a1, 0xa81a664b, 0xc24b8b70, 0xc76c51a3, 0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070,\n 0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5, 0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3,\n 0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208, 0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2\n]);\n/** Reusable temporary buffer. \"W\" comes straight from spec. */\nconst SHA256_W = /* @__PURE__ */ new Uint32Array(64);\nclass SHA256 extends HashMD {\n constructor(outputLen = 32) {\n super(64, outputLen, 8, false);\n // We cannot use array here since array allows indexing by variable\n // which means optimizer/compiler cannot use registers.\n this.A = SHA256_IV[0] | 0;\n this.B = SHA256_IV[1] | 0;\n this.C = SHA256_IV[2] | 0;\n this.D = SHA256_IV[3] | 0;\n this.E = SHA256_IV[4] | 0;\n this.F = SHA256_IV[5] | 0;\n this.G = SHA256_IV[6] | 0;\n this.H = SHA256_IV[7] | 0;\n }\n get() {\n const { A, B, C, D, E, F, G, H } = this;\n return [A, B, C, D, E, F, G, H];\n }\n // prettier-ignore\n set(A, B, C, D, E, F, G, H) {\n this.A = A | 0;\n this.B = B | 0;\n this.C = C | 0;\n this.D = D | 0;\n this.E = E | 0;\n this.F = F | 0;\n this.G = G | 0;\n this.H = H | 0;\n }\n process(view, offset) {\n // Extend the first 16 words into the remaining 48 words w[16..63] of the message schedule array\n for (let i = 0; i < 16; i++, offset += 4)\n SHA256_W[i] = view.getUint32(offset, false);\n for (let i = 16; i < 64; i++) {\n const W15 = SHA256_W[i - 15];\n const W2 = SHA256_W[i - 2];\n const s0 = rotr(W15, 7) ^ rotr(W15, 18) ^ (W15 >>> 3);\n const s1 = rotr(W2, 17) ^ rotr(W2, 19) ^ (W2 >>> 10);\n SHA256_W[i] = (s1 + SHA256_W[i - 7] + s0 + SHA256_W[i - 16]) | 0;\n }\n // Compression function main loop, 64 rounds\n let { A, B, C, D, E, F, G, H } = this;\n for (let i = 0; i < 64; i++) {\n const sigma1 = rotr(E, 6) ^ rotr(E, 11) ^ rotr(E, 25);\n const T1 = (H + sigma1 + Chi(E, F, G) + SHA256_K[i] + SHA256_W[i]) | 0;\n const sigma0 = rotr(A, 2) ^ rotr(A, 13) ^ rotr(A, 22);\n const T2 = (sigma0 + Maj(A, B, C)) | 0;\n H = G;\n G = F;\n F = E;\n E = (D + T1) | 0;\n D = C;\n C = B;\n B = A;\n A = (T1 + T2) | 0;\n }\n // Add the compressed chunk to the current hash value\n A = (A + this.A) | 0;\n B = (B + this.B) | 0;\n C = (C + this.C) | 0;\n D = (D + this.D) | 0;\n E = (E + this.E) | 0;\n F = (F + this.F) | 0;\n G = (G + this.G) | 0;\n H = (H + this.H) | 0;\n this.set(A, B, C, D, E, F, G, H);\n }\n roundClean() {\n clean(SHA256_W);\n }\n destroy() {\n this.set(0, 0, 0, 0, 0, 0, 0, 0);\n clean(this.buffer);\n }\n}\nclass SHA224 extends SHA256 {\n constructor() {\n super(28);\n this.A = SHA224_IV[0] | 0;\n this.B = SHA224_IV[1] | 0;\n this.C = SHA224_IV[2] | 0;\n this.D = SHA224_IV[3] | 0;\n this.E = SHA224_IV[4] | 0;\n this.F = SHA224_IV[5] | 0;\n this.G = SHA224_IV[6] | 0;\n this.H = SHA224_IV[7] | 0;\n }\n}\n// SHA2-512 is slower than sha256 in js because u64 operations are slow.\n// Round contants\n// First 32 bits of the fractional parts of the cube roots of the first 80 primes 2..409\n// prettier-ignore\nconst K512 = /* @__PURE__ */ (() => split([\n '0x428a2f98d728ae22', '0x7137449123ef65cd', '0xb5c0fbcfec4d3b2f', '0xe9b5dba58189dbbc',\n '0x3956c25bf348b538', '0x59f111f1b605d019', '0x923f82a4af194f9b', '0xab1c5ed5da6d8118',\n '0xd807aa98a3030242', '0x12835b0145706fbe', '0x243185be4ee4b28c', '0x550c7dc3d5ffb4e2',\n '0x72be5d74f27b896f', '0x80deb1fe3b1696b1', '0x9bdc06a725c71235', '0xc19bf174cf692694',\n '0xe49b69c19ef14ad2', '0xefbe4786384f25e3', '0x0fc19dc68b8cd5b5', '0x240ca1cc77ac9c65',\n '0x2de92c6f592b0275', '0x4a7484aa6ea6e483', '0x5cb0a9dcbd41fbd4', '0x76f988da831153b5',\n '0x983e5152ee66dfab', '0xa831c66d2db43210', '0xb00327c898fb213f', '0xbf597fc7beef0ee4',\n '0xc6e00bf33da88fc2', '0xd5a79147930aa725', '0x06ca6351e003826f', '0x142929670a0e6e70',\n '0x27b70a8546d22ffc', '0x2e1b21385c26c926', '0x4d2c6dfc5ac42aed', '0x53380d139d95b3df',\n '0x650a73548baf63de', '0x766a0abb3c77b2a8', '0x81c2c92e47edaee6', '0x92722c851482353b',\n '0xa2bfe8a14cf10364', '0xa81a664bbc423001', '0xc24b8b70d0f89791', '0xc76c51a30654be30',\n '0xd192e819d6ef5218', '0xd69906245565a910', '0xf40e35855771202a', '0x106aa07032bbd1b8',\n '0x19a4c116b8d2d0c8', '0x1e376c085141ab53', '0x2748774cdf8eeb99', '0x34b0bcb5e19b48a8',\n '0x391c0cb3c5c95a63', '0x4ed8aa4ae3418acb', '0x5b9cca4f7763e373', '0x682e6ff3d6b2b8a3',\n '0x748f82ee5defb2fc', '0x78a5636f43172f60', '0x84c87814a1f0ab72', '0x8cc702081a6439ec',\n '0x90befffa23631e28', '0xa4506cebde82bde9', '0xbef9a3f7b2c67915', '0xc67178f2e372532b',\n '0xca273eceea26619c', '0xd186b8c721c0c207', '0xeada7dd6cde0eb1e', '0xf57d4f7fee6ed178',\n '0x06f067aa72176fba', '0x0a637dc5a2c898a6', '0x113f9804bef90dae', '0x1b710b35131c471b',\n '0x28db77f523047d84', '0x32caab7b40c72493', '0x3c9ebe0a15c9bebc', '0x431d67c49c100d4c',\n '0x4cc5d4becb3e42b6', '0x597f299cfc657e2a', '0x5fcb6fab3ad6faec', '0x6c44198c4a475817'\n].map(n => BigInt(n))))();\nconst SHA512_Kh = /* @__PURE__ */ (() => K512[0])();\nconst SHA512_Kl = /* @__PURE__ */ (() => K512[1])();\n// Reusable temporary buffers\nconst SHA512_W_H = /* @__PURE__ */ new Uint32Array(80);\nconst SHA512_W_L = /* @__PURE__ */ new Uint32Array(80);\nclass SHA512 extends HashMD {\n constructor(outputLen = 64) {\n super(128, outputLen, 16, false);\n // We cannot use array here since array allows indexing by variable\n // which means optimizer/compiler cannot use registers.\n // h -- high 32 bits, l -- low 32 bits\n this.Ah = SHA512_IV[0] | 0;\n this.Al = SHA512_IV[1] | 0;\n this.Bh = SHA512_IV[2] | 0;\n this.Bl = SHA512_IV[3] | 0;\n this.Ch = SHA512_IV[4] | 0;\n this.Cl = SHA512_IV[5] | 0;\n this.Dh = SHA512_IV[6] | 0;\n this.Dl = SHA512_IV[7] | 0;\n this.Eh = SHA512_IV[8] | 0;\n this.El = SHA512_IV[9] | 0;\n this.Fh = SHA512_IV[10] | 0;\n this.Fl = SHA512_IV[11] | 0;\n this.Gh = SHA512_IV[12] | 0;\n this.Gl = SHA512_IV[13] | 0;\n this.Hh = SHA512_IV[14] | 0;\n this.Hl = SHA512_IV[15] | 0;\n }\n // prettier-ignore\n get() {\n const { Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl } = this;\n return [Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl];\n }\n // prettier-ignore\n set(Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl) {\n this.Ah = Ah | 0;\n this.Al = Al | 0;\n this.Bh = Bh | 0;\n this.Bl = Bl | 0;\n this.Ch = Ch | 0;\n this.Cl = Cl | 0;\n this.Dh = Dh | 0;\n this.Dl = Dl | 0;\n this.Eh = Eh | 0;\n this.El = El | 0;\n this.Fh = Fh | 0;\n this.Fl = Fl | 0;\n this.Gh = Gh | 0;\n this.Gl = Gl | 0;\n this.Hh = Hh | 0;\n this.Hl = Hl | 0;\n }\n process(view, offset) {\n // Extend the first 16 words into the remaining 64 words w[16..79] of the message schedule array\n for (let i = 0; i < 16; i++, offset += 4) {\n SHA512_W_H[i] = view.getUint32(offset);\n SHA512_W_L[i] = view.getUint32((offset += 4));\n }\n for (let i = 16; i < 80; i++) {\n // s0 := (w[i-15] rightrotate 1) xor (w[i-15] rightrotate 8) xor (w[i-15] rightshift 7)\n const W15h = SHA512_W_H[i - 15] | 0;\n const W15l = SHA512_W_L[i - 15] | 0;\n const s0h = rotrSH(W15h, W15l, 1) ^ rotrSH(W15h, W15l, 8) ^ shrSH(W15h, W15l, 7);\n const s0l = rotrSL(W15h, W15l, 1) ^ rotrSL(W15h, W15l, 8) ^ shrSL(W15h, W15l, 7);\n // s1 := (w[i-2] rightrotate 19) xor (w[i-2] rightrotate 61) xor (w[i-2] rightshift 6)\n const W2h = SHA512_W_H[i - 2] | 0;\n const W2l = SHA512_W_L[i - 2] | 0;\n const s1h = rotrSH(W2h, W2l, 19) ^ rotrBH(W2h, W2l, 61) ^ shrSH(W2h, W2l, 6);\n const s1l = rotrSL(W2h, W2l, 19) ^ rotrBL(W2h, W2l, 61) ^ shrSL(W2h, W2l, 6);\n // SHA256_W[i] = s0 + s1 + SHA256_W[i - 7] + SHA256_W[i - 16];\n const SUMl = add4L(s0l, s1l, SHA512_W_L[i - 7], SHA512_W_L[i - 16]);\n const SUMh = add4H(SUMl, s0h, s1h, SHA512_W_H[i - 7], SHA512_W_H[i - 16]);\n SHA512_W_H[i] = SUMh | 0;\n SHA512_W_L[i] = SUMl | 0;\n }\n let { Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl } = this;\n // Compression function main loop, 80 rounds\n for (let i = 0; i < 80; i++) {\n // S1 := (e rightrotate 14) xor (e rightrotate 18) xor (e rightrotate 41)\n const sigma1h = rotrSH(Eh, El, 14) ^ rotrSH(Eh, El, 18) ^ rotrBH(Eh, El, 41);\n const sigma1l = rotrSL(Eh, El, 14) ^ rotrSL(Eh, El, 18) ^ rotrBL(Eh, El, 41);\n //const T1 = (H + sigma1 + Chi(E, F, G) + SHA256_K[i] + SHA256_W[i]) | 0;\n const CHIh = (Eh & Fh) ^ (~Eh & Gh);\n const CHIl = (El & Fl) ^ (~El & Gl);\n // T1 = H + sigma1 + Chi(E, F, G) + SHA512_K[i] + SHA512_W[i]\n // prettier-ignore\n const T1ll = add5L(Hl, sigma1l, CHIl, SHA512_Kl[i], SHA512_W_L[i]);\n const T1h = add5H(T1ll, Hh, sigma1h, CHIh, SHA512_Kh[i], SHA512_W_H[i]);\n const T1l = T1ll | 0;\n // S0 := (a rightrotate 28) xor (a rightrotate 34) xor (a rightrotate 39)\n const sigma0h = rotrSH(Ah, Al, 28) ^ rotrBH(Ah, Al, 34) ^ rotrBH(Ah, Al, 39);\n const sigma0l = rotrSL(Ah, Al, 28) ^ rotrBL(Ah, Al, 34) ^ rotrBL(Ah, Al, 39);\n const MAJh = (Ah & Bh) ^ (Ah & Ch) ^ (Bh & Ch);\n const MAJl = (Al & Bl) ^ (Al & Cl) ^ (Bl & Cl);\n Hh = Gh | 0;\n Hl = Gl | 0;\n Gh = Fh | 0;\n Gl = Fl | 0;\n Fh = Eh | 0;\n Fl = El | 0;\n ({ h: Eh, l: El } = add(Dh | 0, Dl | 0, T1h | 0, T1l | 0));\n Dh = Ch | 0;\n Dl = Cl | 0;\n Ch = Bh | 0;\n Cl = Bl | 0;\n Bh = Ah | 0;\n Bl = Al | 0;\n const All = add3L(T1l, sigma0l, MAJl);\n Ah = add3H(All, T1h, sigma0h, MAJh);\n Al = All | 0;\n }\n // Add the compressed chunk to the current hash value\n ({ h: Ah, l: Al } = add(this.Ah | 0, this.Al | 0, Ah | 0, Al | 0));\n ({ h: Bh, l: Bl } = add(this.Bh | 0, this.Bl | 0, Bh | 0, Bl | 0));\n ({ h: Ch, l: Cl } = add(this.Ch | 0, this.Cl | 0, Ch | 0, Cl | 0));\n ({ h: Dh, l: Dl } = add(this.Dh | 0, this.Dl | 0, Dh | 0, Dl | 0));\n ({ h: Eh, l: El } = add(this.Eh | 0, this.El | 0, Eh | 0, El | 0));\n ({ h: Fh, l: Fl } = add(this.Fh | 0, this.Fl | 0, Fh | 0, Fl | 0));\n ({ h: Gh, l: Gl } = add(this.Gh | 0, this.Gl | 0, Gh | 0, Gl | 0));\n ({ h: Hh, l: Hl } = add(this.Hh | 0, this.Hl | 0, Hh | 0, Hl | 0));\n this.set(Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl);\n }\n roundClean() {\n clean(SHA512_W_H, SHA512_W_L);\n }\n destroy() {\n clean(this.buffer);\n this.set(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);\n }\n}\nclass SHA384 extends SHA512 {\n constructor() {\n super(48);\n this.Ah = SHA384_IV[0] | 0;\n this.Al = SHA384_IV[1] | 0;\n this.Bh = SHA384_IV[2] | 0;\n this.Bl = SHA384_IV[3] | 0;\n this.Ch = SHA384_IV[4] | 0;\n this.Cl = SHA384_IV[5] | 0;\n this.Dh = SHA384_IV[6] | 0;\n this.Dl = SHA384_IV[7] | 0;\n this.Eh = SHA384_IV[8] | 0;\n this.El = SHA384_IV[9] | 0;\n this.Fh = SHA384_IV[10] | 0;\n this.Fl = SHA384_IV[11] | 0;\n this.Gh = SHA384_IV[12] | 0;\n this.Gl = SHA384_IV[13] | 0;\n this.Hh = SHA384_IV[14] | 0;\n this.Hl = SHA384_IV[15] | 0;\n }\n}\n/**\n * SHA2-256 hash function from RFC 4634.\n *\n * It is the fastest JS hash, even faster than Blake3.\n * To break sha256 using birthday attack, attackers need to try 2^128 hashes.\n * BTC network is doing 2^70 hashes/sec (2^95 hashes/year) as per 2025.\n */\nconst sha256$1 = /* @__PURE__ */ createHasher(() => new SHA256());\n/** SHA2-224 hash function from RFC 4634 */\nconst sha224$1 = /* @__PURE__ */ createHasher(() => new SHA224());\n/** SHA2-512 hash function from RFC 4634. */\nconst sha512$1 = /* @__PURE__ */ createHasher(() => new SHA512());\n/** SHA2-384 hash function from RFC 4634. */\nconst sha384$1 = /* @__PURE__ */ createHasher(() => new SHA384());\n\n/**\n * SHA3 (keccak) hash function, based on a new \"Sponge function\" design.\n * Different from older hashes, the internal state is bigger than output size.\n *\n * Check out [FIPS-202](https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.202.pdf),\n * [Website](https://keccak.team/keccak.html),\n * [the differences between SHA-3 and Keccak](https://crypto.stackexchange.com/questions/15727/what-are-the-key-differences-between-the-draft-sha-3-standard-and-the-keccak-sub).\n *\n * Check out `sha3-addons` module for cSHAKE, k12, and others.\n * @module\n */\n// No __PURE__ annotations in sha3 header:\n// EVERYTHING is in fact used on every export.\n// Various per round constants calculations\nconst _0n = BigInt(0);\nconst _1n = BigInt(1);\nconst _2n = BigInt(2);\nconst _7n = BigInt(7);\nconst _256n = BigInt(256);\nconst _0x71n = BigInt(0x71);\nconst SHA3_PI = [];\nconst SHA3_ROTL = [];\nconst _SHA3_IOTA = [];\nfor (let round = 0, R = _1n, x = 1, y = 0; round < 24; round++) {\n // Pi\n [x, y] = [y, (2 * x + 3 * y) % 5];\n SHA3_PI.push(2 * (5 * y + x));\n // Rotational\n SHA3_ROTL.push((((round + 1) * (round + 2)) / 2) % 64);\n // Iota\n let t = _0n;\n for (let j = 0; j < 7; j++) {\n R = ((R << _1n) ^ ((R >> _7n) * _0x71n)) % _256n;\n if (R & _2n)\n t ^= _1n << ((_1n << /* @__PURE__ */ BigInt(j)) - _1n);\n }\n _SHA3_IOTA.push(t);\n}\nconst IOTAS = split(_SHA3_IOTA, true);\nconst SHA3_IOTA_H = IOTAS[0];\nconst SHA3_IOTA_L = IOTAS[1];\n// Left rotation (without 0, 32, 64)\nconst rotlH = (h, l, s) => (s > 32 ? rotlBH(h, l, s) : rotlSH(h, l, s));\nconst rotlL = (h, l, s) => (s > 32 ? rotlBL(h, l, s) : rotlSL(h, l, s));\n/** `keccakf1600` internal function, additionally allows to adjust round count. */\nfunction keccakP(s, rounds = 24) {\n const B = new Uint32Array(5 * 2);\n // NOTE: all indices are x2 since we store state as u32 instead of u64 (bigints to slow in js)\n for (let round = 24 - rounds; round < 24; round++) {\n // Theta θ\n for (let x = 0; x < 10; x++)\n B[x] = s[x] ^ s[x + 10] ^ s[x + 20] ^ s[x + 30] ^ s[x + 40];\n for (let x = 0; x < 10; x += 2) {\n const idx1 = (x + 8) % 10;\n const idx0 = (x + 2) % 10;\n const B0 = B[idx0];\n const B1 = B[idx0 + 1];\n const Th = rotlH(B0, B1, 1) ^ B[idx1];\n const Tl = rotlL(B0, B1, 1) ^ B[idx1 + 1];\n for (let y = 0; y < 50; y += 10) {\n s[x + y] ^= Th;\n s[x + y + 1] ^= Tl;\n }\n }\n // Rho (ρ) and Pi (π)\n let curH = s[2];\n let curL = s[3];\n for (let t = 0; t < 24; t++) {\n const shift = SHA3_ROTL[t];\n const Th = rotlH(curH, curL, shift);\n const Tl = rotlL(curH, curL, shift);\n const PI = SHA3_PI[t];\n curH = s[PI];\n curL = s[PI + 1];\n s[PI] = Th;\n s[PI + 1] = Tl;\n }\n // Chi (χ)\n for (let y = 0; y < 50; y += 10) {\n for (let x = 0; x < 10; x++)\n B[x] = s[y + x];\n for (let x = 0; x < 10; x++)\n s[y + x] ^= ~B[(x + 2) % 10] & B[(x + 4) % 10];\n }\n // Iota (ι)\n s[0] ^= SHA3_IOTA_H[round];\n s[1] ^= SHA3_IOTA_L[round];\n }\n clean(B);\n}\n/** Keccak sponge function. */\nclass Keccak extends Hash {\n // NOTE: we accept arguments in bytes instead of bits here.\n constructor(blockLen, suffix, outputLen, enableXOF = false, rounds = 24) {\n super();\n this.pos = 0;\n this.posOut = 0;\n this.finished = false;\n this.destroyed = false;\n this.enableXOF = false;\n this.blockLen = blockLen;\n this.suffix = suffix;\n this.outputLen = outputLen;\n this.enableXOF = enableXOF;\n this.rounds = rounds;\n // Can be passed from user as dkLen\n anumber(outputLen);\n // 1600 = 5x5 matrix of 64bit. 1600 bits === 200 bytes\n // 0 < blockLen < 200\n if (!(0 < blockLen && blockLen < 200))\n throw new Error('only keccak-f1600 function is supported');\n this.state = new Uint8Array(200);\n this.state32 = u32(this.state);\n }\n clone() {\n return this._cloneInto();\n }\n keccak() {\n swap32IfBE(this.state32);\n keccakP(this.state32, this.rounds);\n swap32IfBE(this.state32);\n this.posOut = 0;\n this.pos = 0;\n }\n update(data) {\n aexists(this);\n data = toBytes(data);\n abytes(data);\n const { blockLen, state } = this;\n const len = data.length;\n for (let pos = 0; pos < len;) {\n const take = Math.min(blockLen - this.pos, len - pos);\n for (let i = 0; i < take; i++)\n state[this.pos++] ^= data[pos++];\n if (this.pos === blockLen)\n this.keccak();\n }\n return this;\n }\n finish() {\n if (this.finished)\n return;\n this.finished = true;\n const { state, suffix, pos, blockLen } = this;\n // Do the padding\n state[pos] ^= suffix;\n if ((suffix & 0x80) !== 0 && pos === blockLen - 1)\n this.keccak();\n state[blockLen - 1] ^= 0x80;\n this.keccak();\n }\n writeInto(out) {\n aexists(this, false);\n abytes(out);\n this.finish();\n const bufferOut = this.state;\n const { blockLen } = this;\n for (let pos = 0, len = out.length; pos < len;) {\n if (this.posOut >= blockLen)\n this.keccak();\n const take = Math.min(blockLen - this.posOut, len - pos);\n out.set(bufferOut.subarray(this.posOut, this.posOut + take), pos);\n this.posOut += take;\n pos += take;\n }\n return out;\n }\n xofInto(out) {\n // Sha3/Keccak usage with XOF is probably mistake, only SHAKE instances can do XOF\n if (!this.enableXOF)\n throw new Error('XOF is not possible for this instance');\n return this.writeInto(out);\n }\n xof(bytes) {\n anumber(bytes);\n return this.xofInto(new Uint8Array(bytes));\n }\n digestInto(out) {\n aoutput(out, this);\n if (this.finished)\n throw new Error('digest() was already called');\n this.writeInto(out);\n this.destroy();\n return out;\n }\n digest() {\n return this.digestInto(new Uint8Array(this.outputLen));\n }\n destroy() {\n this.destroyed = true;\n clean(this.state);\n }\n _cloneInto(to) {\n const { blockLen, suffix, outputLen, rounds, enableXOF } = this;\n to || (to = new Keccak(blockLen, suffix, outputLen, enableXOF, rounds));\n to.state32.set(this.state32);\n to.pos = this.pos;\n to.posOut = this.posOut;\n to.finished = this.finished;\n to.rounds = rounds;\n // Suffix can change in cSHAKE\n to.suffix = suffix;\n to.outputLen = outputLen;\n to.enableXOF = enableXOF;\n to.destroyed = this.destroyed;\n return to;\n }\n}\nconst gen = (suffix, blockLen, outputLen) => createHasher(() => new Keccak(blockLen, suffix, outputLen));\n/** SHA3-256 hash function. Different from keccak-256. */\nconst sha3_256 = /* @__PURE__ */ (() => gen(0x06, 136, 256 / 8))();\n/** SHA3-512 hash function. */\nconst sha3_512 = /* @__PURE__ */ (() => gen(0x06, 72, 512 / 8))();\nconst genShake = (suffix, blockLen, outputLen) => createXOFer((opts = {}) => new Keccak(blockLen, suffix, opts.dkLen === undefined ? outputLen : opts.dkLen, true));\n/** SHAKE256 XOF with 256-bit security. */\nconst shake256 = /* @__PURE__ */ (() => genShake(0x1f, 136, 256 / 8))();\n\n/**\n * SHA2-256 a.k.a. sha256. In JS, it is the fastest hash, even faster than Blake3.\n *\n * To break sha256 using birthday attack, attackers need to try 2^128 hashes.\n * BTC network is doing 2^70 hashes/sec (2^95 hashes/year) as per 2025.\n *\n * Check out [FIPS 180-4](https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.180-4.pdf).\n * @module\n * @deprecated\n */\n/** @deprecated Use import from `noble/hashes/sha2` module */\nconst sha256 = sha256$1;\n/** @deprecated Use import from `noble/hashes/sha2` module */\nconst sha224 = sha224$1;\n\n/**\n * SHA2-512 a.k.a. sha512 and sha384. It is slower than sha256 in js because u64 operations are slow.\n *\n * Check out [RFC 4634](https://datatracker.ietf.org/doc/html/rfc4634) and\n * [the paper on truncated SHA512/256](https://eprint.iacr.org/2010/548.pdf).\n * @module\n * @deprecated\n */\n/** @deprecated Use import from `noble/hashes/sha2` module */\nconst sha512 = sha512$1;\n/** @deprecated Use import from `noble/hashes/sha2` module */\nconst sha384 = sha384$1;\n\nexport { Chi as C, Hash as H, Maj as M, HashMD as a, abytes as b, aexists as c, ahash as d, anumber as e, bytesToHex as f, clean as g, concatBytes as h, createHasher as i, hexToBytes as j, isBytes as k, rotl as l, sha256$1 as m, sha256 as n, sha384$1 as o, sha384 as p, sha3_256 as q, randomBytes as r, sha224 as s, sha3_512 as t, sha512$1 as u, sha512 as v, shake256 as w, toBytes as x, wrapConstructor as y };\n"],"x_google_ignoreList":[0],"mappings":"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"}
1
+ {"version":3,"file":"sha512-BYId-G-T.js","names":["globalThis"],"sources":["../../../../node_modules/openpgp/dist/lightweight/sha512.mjs"],"sourcesContent":["/*! OpenPGP.js v6.3.2 - 2026-09-24 - this is LGPL licensed code, see LICENSE/our website https://openpgpjs.org/ for more information. */\nconst globalThis = typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};\n\nconst crypto = typeof globalThis === 'object' && 'crypto' in globalThis ? globalThis.crypto : undefined;\n\n/**\n * Utilities for hex, bytes, CSPRNG.\n * @module\n */\n/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */\n// We use WebCrypto aka globalThis.crypto, which exists in browsers and node.js 16+.\n// node.js versions earlier than v19 don't declare it in global scope.\n// For node.js, package.json#exports field mapping rewrites import\n// from `crypto` to `cryptoNode`, which imports native module.\n// Makes the utils un-importable in browsers without a bundler.\n// Once node.js 18 is deprecated (2025-04-30), we can just drop the import.\n/** Checks if something is Uint8Array. Be careful: nodejs Buffer will return true. */\nfunction isBytes(a) {\n return a instanceof Uint8Array || (ArrayBuffer.isView(a) && a.constructor.name === 'Uint8Array');\n}\n/** Asserts something is positive integer. */\nfunction anumber(n) {\n if (!Number.isSafeInteger(n) || n < 0)\n throw new Error('positive integer expected, got ' + n);\n}\n/** Asserts something is Uint8Array. */\nfunction abytes(b, ...lengths) {\n if (!isBytes(b))\n throw new Error('Uint8Array expected');\n if (lengths.length > 0 && !lengths.includes(b.length))\n throw new Error('Uint8Array expected of length ' + lengths + ', got length=' + b.length);\n}\n/** Asserts something is hash */\nfunction ahash(h) {\n if (typeof h !== 'function' || typeof h.create !== 'function')\n throw new Error('Hash should be wrapped by utils.createHasher');\n anumber(h.outputLen);\n anumber(h.blockLen);\n}\n/** Asserts a hash instance has not been destroyed / finished */\nfunction aexists(instance, checkFinished = true) {\n if (instance.destroyed)\n throw new Error('Hash instance has been destroyed');\n if (checkFinished && instance.finished)\n throw new Error('Hash#digest() has already been called');\n}\n/** Asserts output is properly-sized byte array */\nfunction aoutput(out, instance) {\n abytes(out);\n const min = instance.outputLen;\n if (out.length < min) {\n throw new Error('digestInto() expects output buffer of length at least ' + min);\n }\n}\n/** Cast u8 / u16 / u32 to u32. */\nfunction u32(arr) {\n return new Uint32Array(arr.buffer, arr.byteOffset, Math.floor(arr.byteLength / 4));\n}\n/** Zeroize a byte array. Warning: JS provides no guarantees. */\nfunction clean(...arrays) {\n for (let i = 0; i < arrays.length; i++) {\n arrays[i].fill(0);\n }\n}\n/** Create DataView of an array for easy byte-level manipulation. */\nfunction createView(arr) {\n return new DataView(arr.buffer, arr.byteOffset, arr.byteLength);\n}\n/** The rotate right (circular right shift) operation for uint32 */\nfunction rotr(word, shift) {\n return (word << (32 - shift)) | (word >>> shift);\n}\n/** The rotate left (circular left shift) operation for uint32 */\nfunction rotl(word, shift) {\n return (word << shift) | ((word >>> (32 - shift)) >>> 0);\n}\n/** Is current platform little-endian? Most are. Big-Endian platform: IBM */\nconst isLE = /* @__PURE__ */ (() => new Uint8Array(new Uint32Array([0x11223344]).buffer)[0] === 0x44)();\n/** The byte swap operation for uint32 */\nfunction byteSwap(word) {\n return (((word << 24) & 0xff000000) |\n ((word << 8) & 0xff0000) |\n ((word >>> 8) & 0xff00) |\n ((word >>> 24) & 0xff));\n}\n/** In place byte swap for Uint32Array */\nfunction byteSwap32(arr) {\n for (let i = 0; i < arr.length; i++) {\n arr[i] = byteSwap(arr[i]);\n }\n return arr;\n}\nconst swap32IfBE = isLE\n ? (u) => u\n : byteSwap32;\n// Built-in hex conversion https://caniuse.com/mdn-javascript_builtins_uint8array_fromhex\nconst hasHexBuiltin = /* @__PURE__ */ (() => \n// @ts-ignore\ntypeof Uint8Array.from([]).toHex === 'function' && typeof Uint8Array.fromHex === 'function')();\n// Array where index 0xf0 (240) is mapped to string 'f0'\nconst hexes = /* @__PURE__ */ Array.from({ length: 256 }, (_, i) => i.toString(16).padStart(2, '0'));\n/**\n * Convert byte array to hex string. Uses built-in function, when available.\n * @example bytesToHex(Uint8Array.from([0xca, 0xfe, 0x01, 0x23])) // 'cafe0123'\n */\nfunction bytesToHex(bytes) {\n abytes(bytes);\n // @ts-ignore\n if (hasHexBuiltin)\n return bytes.toHex();\n // pre-caching improves the speed 6x\n let hex = '';\n for (let i = 0; i < bytes.length; i++) {\n hex += hexes[bytes[i]];\n }\n return hex;\n}\n// We use optimized technique to convert hex string to byte array\nconst asciis = { _0: 48, _9: 57, A: 65, F: 70, a: 97, f: 102 };\nfunction asciiToBase16(ch) {\n if (ch >= asciis._0 && ch <= asciis._9)\n return ch - asciis._0; // '2' => 50-48\n if (ch >= asciis.A && ch <= asciis.F)\n return ch - (asciis.A - 10); // 'B' => 66-(65-10)\n if (ch >= asciis.a && ch <= asciis.f)\n return ch - (asciis.a - 10); // 'b' => 98-(97-10)\n return;\n}\n/**\n * Convert hex string to byte array. Uses built-in function, when available.\n * @example hexToBytes('cafe0123') // Uint8Array.from([0xca, 0xfe, 0x01, 0x23])\n */\nfunction hexToBytes(hex) {\n if (typeof hex !== 'string')\n throw new Error('hex string expected, got ' + typeof hex);\n // @ts-ignore\n if (hasHexBuiltin)\n return Uint8Array.fromHex(hex);\n const hl = hex.length;\n const al = hl / 2;\n if (hl % 2)\n throw new Error('hex string expected, got unpadded hex of length ' + hl);\n const array = new Uint8Array(al);\n for (let ai = 0, hi = 0; ai < al; ai++, hi += 2) {\n const n1 = asciiToBase16(hex.charCodeAt(hi));\n const n2 = asciiToBase16(hex.charCodeAt(hi + 1));\n if (n1 === undefined || n2 === undefined) {\n const char = hex[hi] + hex[hi + 1];\n throw new Error('hex string expected, got non-hex character \"' + char + '\" at index ' + hi);\n }\n array[ai] = n1 * 16 + n2; // multiply first octet, e.g. 'a3' => 10*16+3 => 160 + 3 => 163\n }\n return array;\n}\n/**\n * Converts string to bytes using UTF8 encoding.\n * @example utf8ToBytes('abc') // Uint8Array.from([97, 98, 99])\n */\nfunction utf8ToBytes(str) {\n if (typeof str !== 'string')\n throw new Error('string expected');\n return new Uint8Array(new TextEncoder().encode(str)); // https://bugzil.la/1681809\n}\n/**\n * Normalizes (non-hex) string or Uint8Array to Uint8Array.\n * Warning: when Uint8Array is passed, it would NOT get copied.\n * Keep in mind for future mutable operations.\n */\nfunction toBytes(data) {\n if (typeof data === 'string')\n data = utf8ToBytes(data);\n abytes(data);\n return data;\n}\n/** Copies several Uint8Arrays into one. */\nfunction concatBytes(...arrays) {\n let sum = 0;\n for (let i = 0; i < arrays.length; i++) {\n const a = arrays[i];\n abytes(a);\n sum += a.length;\n }\n const res = new Uint8Array(sum);\n for (let i = 0, pad = 0; i < arrays.length; i++) {\n const a = arrays[i];\n res.set(a, pad);\n pad += a.length;\n }\n return res;\n}\n/** For runtime check if class implements interface */\nclass Hash {\n}\n/** Wraps hash function, creating an interface on top of it */\nfunction createHasher(hashCons) {\n const hashC = (msg) => hashCons().update(toBytes(msg)).digest();\n const tmp = hashCons();\n hashC.outputLen = tmp.outputLen;\n hashC.blockLen = tmp.blockLen;\n hashC.create = () => hashCons();\n return hashC;\n}\nfunction createXOFer(hashCons) {\n const hashC = (msg, opts) => hashCons(opts).update(toBytes(msg)).digest();\n const tmp = hashCons({});\n hashC.outputLen = tmp.outputLen;\n hashC.blockLen = tmp.blockLen;\n hashC.create = (opts) => hashCons(opts);\n return hashC;\n}\nconst wrapConstructor = createHasher;\n/** Cryptographically secure PRNG. Uses internal OS-level `crypto.getRandomValues`. */\nfunction randomBytes(bytesLength = 32) {\n if (crypto && typeof crypto.getRandomValues === 'function') {\n return crypto.getRandomValues(new Uint8Array(bytesLength));\n }\n // Legacy Node.js compatibility\n if (crypto && typeof crypto.randomBytes === 'function') {\n return Uint8Array.from(crypto.randomBytes(bytesLength));\n }\n throw new Error('crypto.getRandomValues must be defined');\n}\n\n/**\n * Internal Merkle-Damgard hash utils.\n * @module\n */\n/** Polyfill for Safari 14. https://caniuse.com/mdn-javascript_builtins_dataview_setbiguint64 */\nfunction setBigUint64(view, byteOffset, value, isLE) {\n if (typeof view.setBigUint64 === 'function')\n return view.setBigUint64(byteOffset, value, isLE);\n const _32n = BigInt(32);\n const _u32_max = BigInt(0xffffffff);\n const wh = Number((value >> _32n) & _u32_max);\n const wl = Number(value & _u32_max);\n const h = isLE ? 4 : 0;\n const l = isLE ? 0 : 4;\n view.setUint32(byteOffset + h, wh, isLE);\n view.setUint32(byteOffset + l, wl, isLE);\n}\n/** Choice: a ? b : c */\nfunction Chi(a, b, c) {\n return (a & b) ^ (~a & c);\n}\n/** Majority function, true if any two inputs is true. */\nfunction Maj(a, b, c) {\n return (a & b) ^ (a & c) ^ (b & c);\n}\n/**\n * Merkle-Damgard hash construction base class.\n * Could be used to create MD5, RIPEMD, SHA1, SHA2.\n */\nclass HashMD extends Hash {\n constructor(blockLen, outputLen, padOffset, isLE) {\n super();\n this.finished = false;\n this.length = 0;\n this.pos = 0;\n this.destroyed = false;\n this.blockLen = blockLen;\n this.outputLen = outputLen;\n this.padOffset = padOffset;\n this.isLE = isLE;\n this.buffer = new Uint8Array(blockLen);\n this.view = createView(this.buffer);\n }\n update(data) {\n aexists(this);\n data = toBytes(data);\n abytes(data);\n const { view, buffer, blockLen } = this;\n const len = data.length;\n for (let pos = 0; pos < len;) {\n const take = Math.min(blockLen - this.pos, len - pos);\n // Fast path: we have at least one block in input, cast it to view and process\n if (take === blockLen) {\n const dataView = createView(data);\n for (; blockLen <= len - pos; pos += blockLen)\n this.process(dataView, pos);\n continue;\n }\n buffer.set(data.subarray(pos, pos + take), this.pos);\n this.pos += take;\n pos += take;\n if (this.pos === blockLen) {\n this.process(view, 0);\n this.pos = 0;\n }\n }\n this.length += data.length;\n this.roundClean();\n return this;\n }\n digestInto(out) {\n aexists(this);\n aoutput(out, this);\n this.finished = true;\n // Padding\n // We can avoid allocation of buffer for padding completely if it\n // was previously not allocated here. But it won't change performance.\n const { buffer, view, blockLen, isLE } = this;\n let { pos } = this;\n // append the bit '1' to the message\n buffer[pos++] = 0b10000000;\n clean(this.buffer.subarray(pos));\n // we have less than padOffset left in buffer, so we cannot put length in\n // current block, need process it and pad again\n if (this.padOffset > blockLen - pos) {\n this.process(view, 0);\n pos = 0;\n }\n // Pad until full block byte with zeros\n for (let i = pos; i < blockLen; i++)\n buffer[i] = 0;\n // Note: sha512 requires length to be 128bit integer, but length in JS will overflow before that\n // You need to write around 2 exabytes (u64_max / 8 / (1024**6)) for this to happen.\n // So we just write lowest 64 bits of that value.\n setBigUint64(view, blockLen - 8, BigInt(this.length * 8), isLE);\n this.process(view, 0);\n const oview = createView(out);\n const len = this.outputLen;\n // NOTE: we do division by 4 later, which should be fused in single op with modulo by JIT\n if (len % 4)\n throw new Error('_sha2: outputLen should be aligned to 32bit');\n const outLen = len / 4;\n const state = this.get();\n if (outLen > state.length)\n throw new Error('_sha2: outputLen bigger than state');\n for (let i = 0; i < outLen; i++)\n oview.setUint32(4 * i, state[i], isLE);\n }\n digest() {\n const { buffer, outputLen } = this;\n this.digestInto(buffer);\n const res = buffer.slice(0, outputLen);\n this.destroy();\n return res;\n }\n _cloneInto(to) {\n to || (to = new this.constructor());\n to.set(...this.get());\n const { blockLen, buffer, length, finished, destroyed, pos } = this;\n to.destroyed = destroyed;\n to.finished = finished;\n to.length = length;\n to.pos = pos;\n if (length % blockLen)\n to.buffer.set(buffer);\n return to;\n }\n clone() {\n return this._cloneInto();\n }\n}\n/**\n * Initial SHA-2 state: fractional parts of square roots of first 16 primes 2..53.\n * Check out `test/misc/sha2-gen-iv.js` for recomputation guide.\n */\n/** Initial SHA256 state. Bits 0..32 of frac part of sqrt of primes 2..19 */\nconst SHA256_IV = /* @__PURE__ */ Uint32Array.from([\n 0x6a09e667, 0xbb67ae85, 0x3c6ef372, 0xa54ff53a, 0x510e527f, 0x9b05688c, 0x1f83d9ab, 0x5be0cd19,\n]);\n/** Initial SHA224 state. Bits 32..64 of frac part of sqrt of primes 23..53 */\nconst SHA224_IV = /* @__PURE__ */ Uint32Array.from([\n 0xc1059ed8, 0x367cd507, 0x3070dd17, 0xf70e5939, 0xffc00b31, 0x68581511, 0x64f98fa7, 0xbefa4fa4,\n]);\n/** Initial SHA384 state. Bits 0..64 of frac part of sqrt of primes 23..53 */\nconst SHA384_IV = /* @__PURE__ */ Uint32Array.from([\n 0xcbbb9d5d, 0xc1059ed8, 0x629a292a, 0x367cd507, 0x9159015a, 0x3070dd17, 0x152fecd8, 0xf70e5939,\n 0x67332667, 0xffc00b31, 0x8eb44a87, 0x68581511, 0xdb0c2e0d, 0x64f98fa7, 0x47b5481d, 0xbefa4fa4,\n]);\n/** Initial SHA512 state. Bits 0..64 of frac part of sqrt of primes 2..19 */\nconst SHA512_IV = /* @__PURE__ */ Uint32Array.from([\n 0x6a09e667, 0xf3bcc908, 0xbb67ae85, 0x84caa73b, 0x3c6ef372, 0xfe94f82b, 0xa54ff53a, 0x5f1d36f1,\n 0x510e527f, 0xade682d1, 0x9b05688c, 0x2b3e6c1f, 0x1f83d9ab, 0xfb41bd6b, 0x5be0cd19, 0x137e2179,\n]);\n\n/**\n * Internal helpers for u64. BigUint64Array is too slow as per 2025, so we implement it using Uint32Array.\n * @todo re-check https://issues.chromium.org/issues/42212588\n * @module\n */\nconst U32_MASK64 = /* @__PURE__ */ BigInt(2 ** 32 - 1);\nconst _32n = /* @__PURE__ */ BigInt(32);\nfunction fromBig(n, le = false) {\n if (le)\n return { h: Number(n & U32_MASK64), l: Number((n >> _32n) & U32_MASK64) };\n return { h: Number((n >> _32n) & U32_MASK64) | 0, l: Number(n & U32_MASK64) | 0 };\n}\nfunction split(lst, le = false) {\n const len = lst.length;\n let Ah = new Uint32Array(len);\n let Al = new Uint32Array(len);\n for (let i = 0; i < len; i++) {\n const { h, l } = fromBig(lst[i], le);\n [Ah[i], Al[i]] = [h, l];\n }\n return [Ah, Al];\n}\n// for Shift in [0, 32)\nconst shrSH = (h, _l, s) => h >>> s;\nconst shrSL = (h, l, s) => (h << (32 - s)) | (l >>> s);\n// Right rotate for Shift in [1, 32)\nconst rotrSH = (h, l, s) => (h >>> s) | (l << (32 - s));\nconst rotrSL = (h, l, s) => (h << (32 - s)) | (l >>> s);\n// Right rotate for Shift in (32, 64), NOTE: 32 is special case.\nconst rotrBH = (h, l, s) => (h << (64 - s)) | (l >>> (s - 32));\nconst rotrBL = (h, l, s) => (h >>> (s - 32)) | (l << (64 - s));\n// Left rotate for Shift in [1, 32)\nconst rotlSH = (h, l, s) => (h << s) | (l >>> (32 - s));\nconst rotlSL = (h, l, s) => (l << s) | (h >>> (32 - s));\n// Left rotate for Shift in (32, 64), NOTE: 32 is special case.\nconst rotlBH = (h, l, s) => (l << (s - 32)) | (h >>> (64 - s));\nconst rotlBL = (h, l, s) => (h << (s - 32)) | (l >>> (64 - s));\n// JS uses 32-bit signed integers for bitwise operations which means we cannot\n// simple take carry out of low bit sum by shift, we need to use division.\nfunction add(Ah, Al, Bh, Bl) {\n const l = (Al >>> 0) + (Bl >>> 0);\n return { h: (Ah + Bh + ((l / 2 ** 32) | 0)) | 0, l: l | 0 };\n}\n// Addition with more than 2 elements\nconst add3L = (Al, Bl, Cl) => (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0);\nconst add3H = (low, Ah, Bh, Ch) => (Ah + Bh + Ch + ((low / 2 ** 32) | 0)) | 0;\nconst add4L = (Al, Bl, Cl, Dl) => (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0) + (Dl >>> 0);\nconst add4H = (low, Ah, Bh, Ch, Dh) => (Ah + Bh + Ch + Dh + ((low / 2 ** 32) | 0)) | 0;\nconst add5L = (Al, Bl, Cl, Dl, El) => (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0) + (Dl >>> 0) + (El >>> 0);\nconst add5H = (low, Ah, Bh, Ch, Dh, Eh) => (Ah + Bh + Ch + Dh + Eh + ((low / 2 ** 32) | 0)) | 0;\n\n/**\n * SHA2 hash function. A.k.a. sha256, sha384, sha512, sha512_224, sha512_256.\n * SHA256 is the fastest hash implementable in JS, even faster than Blake3.\n * Check out [RFC 4634](https://datatracker.ietf.org/doc/html/rfc4634) and\n * [FIPS 180-4](https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.180-4.pdf).\n * @module\n */\n/**\n * Round constants:\n * First 32 bits of fractional parts of the cube roots of the first 64 primes 2..311)\n */\n// prettier-ignore\nconst SHA256_K = /* @__PURE__ */ Uint32Array.from([\n 0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5, 0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5,\n 0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3, 0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174,\n 0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc, 0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da,\n 0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7, 0xc6e00bf3, 0xd5a79147, 0x06ca6351, 0x14292967,\n 0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13, 0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85,\n 0xa2bfe8a1, 0xa81a664b, 0xc24b8b70, 0xc76c51a3, 0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070,\n 0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5, 0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3,\n 0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208, 0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2\n]);\n/** Reusable temporary buffer. \"W\" comes straight from spec. */\nconst SHA256_W = /* @__PURE__ */ new Uint32Array(64);\nclass SHA256 extends HashMD {\n constructor(outputLen = 32) {\n super(64, outputLen, 8, false);\n // We cannot use array here since array allows indexing by variable\n // which means optimizer/compiler cannot use registers.\n this.A = SHA256_IV[0] | 0;\n this.B = SHA256_IV[1] | 0;\n this.C = SHA256_IV[2] | 0;\n this.D = SHA256_IV[3] | 0;\n this.E = SHA256_IV[4] | 0;\n this.F = SHA256_IV[5] | 0;\n this.G = SHA256_IV[6] | 0;\n this.H = SHA256_IV[7] | 0;\n }\n get() {\n const { A, B, C, D, E, F, G, H } = this;\n return [A, B, C, D, E, F, G, H];\n }\n // prettier-ignore\n set(A, B, C, D, E, F, G, H) {\n this.A = A | 0;\n this.B = B | 0;\n this.C = C | 0;\n this.D = D | 0;\n this.E = E | 0;\n this.F = F | 0;\n this.G = G | 0;\n this.H = H | 0;\n }\n process(view, offset) {\n // Extend the first 16 words into the remaining 48 words w[16..63] of the message schedule array\n for (let i = 0; i < 16; i++, offset += 4)\n SHA256_W[i] = view.getUint32(offset, false);\n for (let i = 16; i < 64; i++) {\n const W15 = SHA256_W[i - 15];\n const W2 = SHA256_W[i - 2];\n const s0 = rotr(W15, 7) ^ rotr(W15, 18) ^ (W15 >>> 3);\n const s1 = rotr(W2, 17) ^ rotr(W2, 19) ^ (W2 >>> 10);\n SHA256_W[i] = (s1 + SHA256_W[i - 7] + s0 + SHA256_W[i - 16]) | 0;\n }\n // Compression function main loop, 64 rounds\n let { A, B, C, D, E, F, G, H } = this;\n for (let i = 0; i < 64; i++) {\n const sigma1 = rotr(E, 6) ^ rotr(E, 11) ^ rotr(E, 25);\n const T1 = (H + sigma1 + Chi(E, F, G) + SHA256_K[i] + SHA256_W[i]) | 0;\n const sigma0 = rotr(A, 2) ^ rotr(A, 13) ^ rotr(A, 22);\n const T2 = (sigma0 + Maj(A, B, C)) | 0;\n H = G;\n G = F;\n F = E;\n E = (D + T1) | 0;\n D = C;\n C = B;\n B = A;\n A = (T1 + T2) | 0;\n }\n // Add the compressed chunk to the current hash value\n A = (A + this.A) | 0;\n B = (B + this.B) | 0;\n C = (C + this.C) | 0;\n D = (D + this.D) | 0;\n E = (E + this.E) | 0;\n F = (F + this.F) | 0;\n G = (G + this.G) | 0;\n H = (H + this.H) | 0;\n this.set(A, B, C, D, E, F, G, H);\n }\n roundClean() {\n clean(SHA256_W);\n }\n destroy() {\n this.set(0, 0, 0, 0, 0, 0, 0, 0);\n clean(this.buffer);\n }\n}\nclass SHA224 extends SHA256 {\n constructor() {\n super(28);\n this.A = SHA224_IV[0] | 0;\n this.B = SHA224_IV[1] | 0;\n this.C = SHA224_IV[2] | 0;\n this.D = SHA224_IV[3] | 0;\n this.E = SHA224_IV[4] | 0;\n this.F = SHA224_IV[5] | 0;\n this.G = SHA224_IV[6] | 0;\n this.H = SHA224_IV[7] | 0;\n }\n}\n// SHA2-512 is slower than sha256 in js because u64 operations are slow.\n// Round contants\n// First 32 bits of the fractional parts of the cube roots of the first 80 primes 2..409\n// prettier-ignore\nconst K512 = /* @__PURE__ */ (() => split([\n '0x428a2f98d728ae22', '0x7137449123ef65cd', '0xb5c0fbcfec4d3b2f', '0xe9b5dba58189dbbc',\n '0x3956c25bf348b538', '0x59f111f1b605d019', '0x923f82a4af194f9b', '0xab1c5ed5da6d8118',\n '0xd807aa98a3030242', '0x12835b0145706fbe', '0x243185be4ee4b28c', '0x550c7dc3d5ffb4e2',\n '0x72be5d74f27b896f', '0x80deb1fe3b1696b1', '0x9bdc06a725c71235', '0xc19bf174cf692694',\n '0xe49b69c19ef14ad2', '0xefbe4786384f25e3', '0x0fc19dc68b8cd5b5', '0x240ca1cc77ac9c65',\n '0x2de92c6f592b0275', '0x4a7484aa6ea6e483', '0x5cb0a9dcbd41fbd4', '0x76f988da831153b5',\n '0x983e5152ee66dfab', '0xa831c66d2db43210', '0xb00327c898fb213f', '0xbf597fc7beef0ee4',\n '0xc6e00bf33da88fc2', '0xd5a79147930aa725', '0x06ca6351e003826f', '0x142929670a0e6e70',\n '0x27b70a8546d22ffc', '0x2e1b21385c26c926', '0x4d2c6dfc5ac42aed', '0x53380d139d95b3df',\n '0x650a73548baf63de', '0x766a0abb3c77b2a8', '0x81c2c92e47edaee6', '0x92722c851482353b',\n '0xa2bfe8a14cf10364', '0xa81a664bbc423001', '0xc24b8b70d0f89791', '0xc76c51a30654be30',\n '0xd192e819d6ef5218', '0xd69906245565a910', '0xf40e35855771202a', '0x106aa07032bbd1b8',\n '0x19a4c116b8d2d0c8', '0x1e376c085141ab53', '0x2748774cdf8eeb99', '0x34b0bcb5e19b48a8',\n '0x391c0cb3c5c95a63', '0x4ed8aa4ae3418acb', '0x5b9cca4f7763e373', '0x682e6ff3d6b2b8a3',\n '0x748f82ee5defb2fc', '0x78a5636f43172f60', '0x84c87814a1f0ab72', '0x8cc702081a6439ec',\n '0x90befffa23631e28', '0xa4506cebde82bde9', '0xbef9a3f7b2c67915', '0xc67178f2e372532b',\n '0xca273eceea26619c', '0xd186b8c721c0c207', '0xeada7dd6cde0eb1e', '0xf57d4f7fee6ed178',\n '0x06f067aa72176fba', '0x0a637dc5a2c898a6', '0x113f9804bef90dae', '0x1b710b35131c471b',\n '0x28db77f523047d84', '0x32caab7b40c72493', '0x3c9ebe0a15c9bebc', '0x431d67c49c100d4c',\n '0x4cc5d4becb3e42b6', '0x597f299cfc657e2a', '0x5fcb6fab3ad6faec', '0x6c44198c4a475817'\n].map(n => BigInt(n))))();\nconst SHA512_Kh = /* @__PURE__ */ (() => K512[0])();\nconst SHA512_Kl = /* @__PURE__ */ (() => K512[1])();\n// Reusable temporary buffers\nconst SHA512_W_H = /* @__PURE__ */ new Uint32Array(80);\nconst SHA512_W_L = /* @__PURE__ */ new Uint32Array(80);\nclass SHA512 extends HashMD {\n constructor(outputLen = 64) {\n super(128, outputLen, 16, false);\n // We cannot use array here since array allows indexing by variable\n // which means optimizer/compiler cannot use registers.\n // h -- high 32 bits, l -- low 32 bits\n this.Ah = SHA512_IV[0] | 0;\n this.Al = SHA512_IV[1] | 0;\n this.Bh = SHA512_IV[2] | 0;\n this.Bl = SHA512_IV[3] | 0;\n this.Ch = SHA512_IV[4] | 0;\n this.Cl = SHA512_IV[5] | 0;\n this.Dh = SHA512_IV[6] | 0;\n this.Dl = SHA512_IV[7] | 0;\n this.Eh = SHA512_IV[8] | 0;\n this.El = SHA512_IV[9] | 0;\n this.Fh = SHA512_IV[10] | 0;\n this.Fl = SHA512_IV[11] | 0;\n this.Gh = SHA512_IV[12] | 0;\n this.Gl = SHA512_IV[13] | 0;\n this.Hh = SHA512_IV[14] | 0;\n this.Hl = SHA512_IV[15] | 0;\n }\n // prettier-ignore\n get() {\n const { Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl } = this;\n return [Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl];\n }\n // prettier-ignore\n set(Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl) {\n this.Ah = Ah | 0;\n this.Al = Al | 0;\n this.Bh = Bh | 0;\n this.Bl = Bl | 0;\n this.Ch = Ch | 0;\n this.Cl = Cl | 0;\n this.Dh = Dh | 0;\n this.Dl = Dl | 0;\n this.Eh = Eh | 0;\n this.El = El | 0;\n this.Fh = Fh | 0;\n this.Fl = Fl | 0;\n this.Gh = Gh | 0;\n this.Gl = Gl | 0;\n this.Hh = Hh | 0;\n this.Hl = Hl | 0;\n }\n process(view, offset) {\n // Extend the first 16 words into the remaining 64 words w[16..79] of the message schedule array\n for (let i = 0; i < 16; i++, offset += 4) {\n SHA512_W_H[i] = view.getUint32(offset);\n SHA512_W_L[i] = view.getUint32((offset += 4));\n }\n for (let i = 16; i < 80; i++) {\n // s0 := (w[i-15] rightrotate 1) xor (w[i-15] rightrotate 8) xor (w[i-15] rightshift 7)\n const W15h = SHA512_W_H[i - 15] | 0;\n const W15l = SHA512_W_L[i - 15] | 0;\n const s0h = rotrSH(W15h, W15l, 1) ^ rotrSH(W15h, W15l, 8) ^ shrSH(W15h, W15l, 7);\n const s0l = rotrSL(W15h, W15l, 1) ^ rotrSL(W15h, W15l, 8) ^ shrSL(W15h, W15l, 7);\n // s1 := (w[i-2] rightrotate 19) xor (w[i-2] rightrotate 61) xor (w[i-2] rightshift 6)\n const W2h = SHA512_W_H[i - 2] | 0;\n const W2l = SHA512_W_L[i - 2] | 0;\n const s1h = rotrSH(W2h, W2l, 19) ^ rotrBH(W2h, W2l, 61) ^ shrSH(W2h, W2l, 6);\n const s1l = rotrSL(W2h, W2l, 19) ^ rotrBL(W2h, W2l, 61) ^ shrSL(W2h, W2l, 6);\n // SHA256_W[i] = s0 + s1 + SHA256_W[i - 7] + SHA256_W[i - 16];\n const SUMl = add4L(s0l, s1l, SHA512_W_L[i - 7], SHA512_W_L[i - 16]);\n const SUMh = add4H(SUMl, s0h, s1h, SHA512_W_H[i - 7], SHA512_W_H[i - 16]);\n SHA512_W_H[i] = SUMh | 0;\n SHA512_W_L[i] = SUMl | 0;\n }\n let { Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl } = this;\n // Compression function main loop, 80 rounds\n for (let i = 0; i < 80; i++) {\n // S1 := (e rightrotate 14) xor (e rightrotate 18) xor (e rightrotate 41)\n const sigma1h = rotrSH(Eh, El, 14) ^ rotrSH(Eh, El, 18) ^ rotrBH(Eh, El, 41);\n const sigma1l = rotrSL(Eh, El, 14) ^ rotrSL(Eh, El, 18) ^ rotrBL(Eh, El, 41);\n //const T1 = (H + sigma1 + Chi(E, F, G) + SHA256_K[i] + SHA256_W[i]) | 0;\n const CHIh = (Eh & Fh) ^ (~Eh & Gh);\n const CHIl = (El & Fl) ^ (~El & Gl);\n // T1 = H + sigma1 + Chi(E, F, G) + SHA512_K[i] + SHA512_W[i]\n // prettier-ignore\n const T1ll = add5L(Hl, sigma1l, CHIl, SHA512_Kl[i], SHA512_W_L[i]);\n const T1h = add5H(T1ll, Hh, sigma1h, CHIh, SHA512_Kh[i], SHA512_W_H[i]);\n const T1l = T1ll | 0;\n // S0 := (a rightrotate 28) xor (a rightrotate 34) xor (a rightrotate 39)\n const sigma0h = rotrSH(Ah, Al, 28) ^ rotrBH(Ah, Al, 34) ^ rotrBH(Ah, Al, 39);\n const sigma0l = rotrSL(Ah, Al, 28) ^ rotrBL(Ah, Al, 34) ^ rotrBL(Ah, Al, 39);\n const MAJh = (Ah & Bh) ^ (Ah & Ch) ^ (Bh & Ch);\n const MAJl = (Al & Bl) ^ (Al & Cl) ^ (Bl & Cl);\n Hh = Gh | 0;\n Hl = Gl | 0;\n Gh = Fh | 0;\n Gl = Fl | 0;\n Fh = Eh | 0;\n Fl = El | 0;\n ({ h: Eh, l: El } = add(Dh | 0, Dl | 0, T1h | 0, T1l | 0));\n Dh = Ch | 0;\n Dl = Cl | 0;\n Ch = Bh | 0;\n Cl = Bl | 0;\n Bh = Ah | 0;\n Bl = Al | 0;\n const All = add3L(T1l, sigma0l, MAJl);\n Ah = add3H(All, T1h, sigma0h, MAJh);\n Al = All | 0;\n }\n // Add the compressed chunk to the current hash value\n ({ h: Ah, l: Al } = add(this.Ah | 0, this.Al | 0, Ah | 0, Al | 0));\n ({ h: Bh, l: Bl } = add(this.Bh | 0, this.Bl | 0, Bh | 0, Bl | 0));\n ({ h: Ch, l: Cl } = add(this.Ch | 0, this.Cl | 0, Ch | 0, Cl | 0));\n ({ h: Dh, l: Dl } = add(this.Dh | 0, this.Dl | 0, Dh | 0, Dl | 0));\n ({ h: Eh, l: El } = add(this.Eh | 0, this.El | 0, Eh | 0, El | 0));\n ({ h: Fh, l: Fl } = add(this.Fh | 0, this.Fl | 0, Fh | 0, Fl | 0));\n ({ h: Gh, l: Gl } = add(this.Gh | 0, this.Gl | 0, Gh | 0, Gl | 0));\n ({ h: Hh, l: Hl } = add(this.Hh | 0, this.Hl | 0, Hh | 0, Hl | 0));\n this.set(Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl);\n }\n roundClean() {\n clean(SHA512_W_H, SHA512_W_L);\n }\n destroy() {\n clean(this.buffer);\n this.set(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);\n }\n}\nclass SHA384 extends SHA512 {\n constructor() {\n super(48);\n this.Ah = SHA384_IV[0] | 0;\n this.Al = SHA384_IV[1] | 0;\n this.Bh = SHA384_IV[2] | 0;\n this.Bl = SHA384_IV[3] | 0;\n this.Ch = SHA384_IV[4] | 0;\n this.Cl = SHA384_IV[5] | 0;\n this.Dh = SHA384_IV[6] | 0;\n this.Dl = SHA384_IV[7] | 0;\n this.Eh = SHA384_IV[8] | 0;\n this.El = SHA384_IV[9] | 0;\n this.Fh = SHA384_IV[10] | 0;\n this.Fl = SHA384_IV[11] | 0;\n this.Gh = SHA384_IV[12] | 0;\n this.Gl = SHA384_IV[13] | 0;\n this.Hh = SHA384_IV[14] | 0;\n this.Hl = SHA384_IV[15] | 0;\n }\n}\n/**\n * SHA2-256 hash function from RFC 4634.\n *\n * It is the fastest JS hash, even faster than Blake3.\n * To break sha256 using birthday attack, attackers need to try 2^128 hashes.\n * BTC network is doing 2^70 hashes/sec (2^95 hashes/year) as per 2025.\n */\nconst sha256$1 = /* @__PURE__ */ createHasher(() => new SHA256());\n/** SHA2-224 hash function from RFC 4634 */\nconst sha224$1 = /* @__PURE__ */ createHasher(() => new SHA224());\n/** SHA2-512 hash function from RFC 4634. */\nconst sha512$1 = /* @__PURE__ */ createHasher(() => new SHA512());\n/** SHA2-384 hash function from RFC 4634. */\nconst sha384$1 = /* @__PURE__ */ createHasher(() => new SHA384());\n\n/**\n * SHA3 (keccak) hash function, based on a new \"Sponge function\" design.\n * Different from older hashes, the internal state is bigger than output size.\n *\n * Check out [FIPS-202](https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.202.pdf),\n * [Website](https://keccak.team/keccak.html),\n * [the differences between SHA-3 and Keccak](https://crypto.stackexchange.com/questions/15727/what-are-the-key-differences-between-the-draft-sha-3-standard-and-the-keccak-sub).\n *\n * Check out `sha3-addons` module for cSHAKE, k12, and others.\n * @module\n */\n// No __PURE__ annotations in sha3 header:\n// EVERYTHING is in fact used on every export.\n// Various per round constants calculations\nconst _0n = BigInt(0);\nconst _1n = BigInt(1);\nconst _2n = BigInt(2);\nconst _7n = BigInt(7);\nconst _256n = BigInt(256);\nconst _0x71n = BigInt(0x71);\nconst SHA3_PI = [];\nconst SHA3_ROTL = [];\nconst _SHA3_IOTA = [];\nfor (let round = 0, R = _1n, x = 1, y = 0; round < 24; round++) {\n // Pi\n [x, y] = [y, (2 * x + 3 * y) % 5];\n SHA3_PI.push(2 * (5 * y + x));\n // Rotational\n SHA3_ROTL.push((((round + 1) * (round + 2)) / 2) % 64);\n // Iota\n let t = _0n;\n for (let j = 0; j < 7; j++) {\n R = ((R << _1n) ^ ((R >> _7n) * _0x71n)) % _256n;\n if (R & _2n)\n t ^= _1n << ((_1n << /* @__PURE__ */ BigInt(j)) - _1n);\n }\n _SHA3_IOTA.push(t);\n}\nconst IOTAS = split(_SHA3_IOTA, true);\nconst SHA3_IOTA_H = IOTAS[0];\nconst SHA3_IOTA_L = IOTAS[1];\n// Left rotation (without 0, 32, 64)\nconst rotlH = (h, l, s) => (s > 32 ? rotlBH(h, l, s) : rotlSH(h, l, s));\nconst rotlL = (h, l, s) => (s > 32 ? rotlBL(h, l, s) : rotlSL(h, l, s));\n/** `keccakf1600` internal function, additionally allows to adjust round count. */\nfunction keccakP(s, rounds = 24) {\n const B = new Uint32Array(5 * 2);\n // NOTE: all indices are x2 since we store state as u32 instead of u64 (bigints to slow in js)\n for (let round = 24 - rounds; round < 24; round++) {\n // Theta θ\n for (let x = 0; x < 10; x++)\n B[x] = s[x] ^ s[x + 10] ^ s[x + 20] ^ s[x + 30] ^ s[x + 40];\n for (let x = 0; x < 10; x += 2) {\n const idx1 = (x + 8) % 10;\n const idx0 = (x + 2) % 10;\n const B0 = B[idx0];\n const B1 = B[idx0 + 1];\n const Th = rotlH(B0, B1, 1) ^ B[idx1];\n const Tl = rotlL(B0, B1, 1) ^ B[idx1 + 1];\n for (let y = 0; y < 50; y += 10) {\n s[x + y] ^= Th;\n s[x + y + 1] ^= Tl;\n }\n }\n // Rho (ρ) and Pi (π)\n let curH = s[2];\n let curL = s[3];\n for (let t = 0; t < 24; t++) {\n const shift = SHA3_ROTL[t];\n const Th = rotlH(curH, curL, shift);\n const Tl = rotlL(curH, curL, shift);\n const PI = SHA3_PI[t];\n curH = s[PI];\n curL = s[PI + 1];\n s[PI] = Th;\n s[PI + 1] = Tl;\n }\n // Chi (χ)\n for (let y = 0; y < 50; y += 10) {\n for (let x = 0; x < 10; x++)\n B[x] = s[y + x];\n for (let x = 0; x < 10; x++)\n s[y + x] ^= ~B[(x + 2) % 10] & B[(x + 4) % 10];\n }\n // Iota (ι)\n s[0] ^= SHA3_IOTA_H[round];\n s[1] ^= SHA3_IOTA_L[round];\n }\n clean(B);\n}\n/** Keccak sponge function. */\nclass Keccak extends Hash {\n // NOTE: we accept arguments in bytes instead of bits here.\n constructor(blockLen, suffix, outputLen, enableXOF = false, rounds = 24) {\n super();\n this.pos = 0;\n this.posOut = 0;\n this.finished = false;\n this.destroyed = false;\n this.enableXOF = false;\n this.blockLen = blockLen;\n this.suffix = suffix;\n this.outputLen = outputLen;\n this.enableXOF = enableXOF;\n this.rounds = rounds;\n // Can be passed from user as dkLen\n anumber(outputLen);\n // 1600 = 5x5 matrix of 64bit. 1600 bits === 200 bytes\n // 0 < blockLen < 200\n if (!(0 < blockLen && blockLen < 200))\n throw new Error('only keccak-f1600 function is supported');\n this.state = new Uint8Array(200);\n this.state32 = u32(this.state);\n }\n clone() {\n return this._cloneInto();\n }\n keccak() {\n swap32IfBE(this.state32);\n keccakP(this.state32, this.rounds);\n swap32IfBE(this.state32);\n this.posOut = 0;\n this.pos = 0;\n }\n update(data) {\n aexists(this);\n data = toBytes(data);\n abytes(data);\n const { blockLen, state } = this;\n const len = data.length;\n for (let pos = 0; pos < len;) {\n const take = Math.min(blockLen - this.pos, len - pos);\n for (let i = 0; i < take; i++)\n state[this.pos++] ^= data[pos++];\n if (this.pos === blockLen)\n this.keccak();\n }\n return this;\n }\n finish() {\n if (this.finished)\n return;\n this.finished = true;\n const { state, suffix, pos, blockLen } = this;\n // Do the padding\n state[pos] ^= suffix;\n if ((suffix & 0x80) !== 0 && pos === blockLen - 1)\n this.keccak();\n state[blockLen - 1] ^= 0x80;\n this.keccak();\n }\n writeInto(out) {\n aexists(this, false);\n abytes(out);\n this.finish();\n const bufferOut = this.state;\n const { blockLen } = this;\n for (let pos = 0, len = out.length; pos < len;) {\n if (this.posOut >= blockLen)\n this.keccak();\n const take = Math.min(blockLen - this.posOut, len - pos);\n out.set(bufferOut.subarray(this.posOut, this.posOut + take), pos);\n this.posOut += take;\n pos += take;\n }\n return out;\n }\n xofInto(out) {\n // Sha3/Keccak usage with XOF is probably mistake, only SHAKE instances can do XOF\n if (!this.enableXOF)\n throw new Error('XOF is not possible for this instance');\n return this.writeInto(out);\n }\n xof(bytes) {\n anumber(bytes);\n return this.xofInto(new Uint8Array(bytes));\n }\n digestInto(out) {\n aoutput(out, this);\n if (this.finished)\n throw new Error('digest() was already called');\n this.writeInto(out);\n this.destroy();\n return out;\n }\n digest() {\n return this.digestInto(new Uint8Array(this.outputLen));\n }\n destroy() {\n this.destroyed = true;\n clean(this.state);\n }\n _cloneInto(to) {\n const { blockLen, suffix, outputLen, rounds, enableXOF } = this;\n to || (to = new Keccak(blockLen, suffix, outputLen, enableXOF, rounds));\n to.state32.set(this.state32);\n to.pos = this.pos;\n to.posOut = this.posOut;\n to.finished = this.finished;\n to.rounds = rounds;\n // Suffix can change in cSHAKE\n to.suffix = suffix;\n to.outputLen = outputLen;\n to.enableXOF = enableXOF;\n to.destroyed = this.destroyed;\n return to;\n }\n}\nconst gen = (suffix, blockLen, outputLen) => createHasher(() => new Keccak(blockLen, suffix, outputLen));\n/** SHA3-256 hash function. Different from keccak-256. */\nconst sha3_256 = /* @__PURE__ */ (() => gen(0x06, 136, 256 / 8))();\n/** SHA3-512 hash function. */\nconst sha3_512 = /* @__PURE__ */ (() => gen(0x06, 72, 512 / 8))();\nconst genShake = (suffix, blockLen, outputLen) => createXOFer((opts = {}) => new Keccak(blockLen, suffix, opts.dkLen === undefined ? outputLen : opts.dkLen, true));\n/** SHAKE256 XOF with 256-bit security. */\nconst shake256 = /* @__PURE__ */ (() => genShake(0x1f, 136, 256 / 8))();\n\n/**\n * SHA2-256 a.k.a. sha256. In JS, it is the fastest hash, even faster than Blake3.\n *\n * To break sha256 using birthday attack, attackers need to try 2^128 hashes.\n * BTC network is doing 2^70 hashes/sec (2^95 hashes/year) as per 2025.\n *\n * Check out [FIPS 180-4](https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.180-4.pdf).\n * @module\n * @deprecated\n */\n/** @deprecated Use import from `noble/hashes/sha2` module */\nconst sha256 = sha256$1;\n/** @deprecated Use import from `noble/hashes/sha2` module */\nconst sha224 = sha224$1;\n\n/**\n * SHA2-512 a.k.a. sha512 and sha384. It is slower than sha256 in js because u64 operations are slow.\n *\n * Check out [RFC 4634](https://datatracker.ietf.org/doc/html/rfc4634) and\n * [the paper on truncated SHA512/256](https://eprint.iacr.org/2010/548.pdf).\n * @module\n * @deprecated\n */\n/** @deprecated Use import from `noble/hashes/sha2` module */\nconst sha512 = sha512$1;\n/** @deprecated Use import from `noble/hashes/sha2` module */\nconst sha384 = sha384$1;\n\nexport { Chi as C, Hash as H, Maj as M, HashMD as a, abytes as b, aexists as c, ahash as d, anumber as e, bytesToHex as f, clean as g, concatBytes as h, createHasher as i, hexToBytes as j, isBytes as k, rotl as l, sha256$1 as m, sha256 as n, sha384$1 as o, sha384 as p, sha3_256 as q, randomBytes as r, sha224 as s, sha3_512 as t, sha512$1 as u, sha512 as v, shake256 as w, toBytes as x, wrapConstructor as y };\n"],"ignoreList":[0],"mappings":"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"}