{
  "_comment": "Vendored dependencies — no npm runtime packages. Use scripts/vendor-update.sh to update.",
  "packages": {
    "@noble/ciphers": {
      "version": "2.3.0",
      "license": "MIT",
      "author": "Paul Miller",
      "source": "https://github.com/paulmillr/noble-ciphers",
      "_about": "The server and browser bundles are built from ONE npm install in a single vendor-update run, so the two halves of a hybrid exchange cannot be different versions of the same cipher. One `version` field covers both files.",
      "exports": [
        "xchacha20poly1305"
      ],
      "files": {
        "server": "lib/vendor/noble-ciphers.cjs",
        "browser": "lib/vendor/browser/noble-ciphers.mjs"
      },
      "bundler": "esbuild --format=cjs --platform=node (server), esbuild --format=esm --platform=browser (browser)",
      "bundledAt": "2026-08-10T00:00:00Z",
      "cpe": "cpe:2.3:a:paulmillr:noble-ciphers:2.3.0:*:*:*:*:node.js:*:*",
      "hashes": {
        "server": "sha256:f3325f480cb8eb814fcb0baaa19336cbbf2b993f48624c6aa9600ffd69d0be5e",
        "browser": "sha256:0ffd91540bcb586a29b56e52ee1c29df69097b50776beb4036a07558f7a4e12e"
      },
      "refreshedAt": "2026-08-11T05:20:51.853Z"
    },
    "@noble/hashes": {
      "version": "2.3.0",
      "license": "MIT",
      "author": "Paul Miller",
      "source": "https://github.com/paulmillr/noble-hashes",
      "_about": "Browser build only. The server side reaches SHAKE256, SHA3-512, HMAC and HKDF through node:crypto, which has carried all four since the Node floor — a .cjs here would be a bundle nothing requires. A browser has no node:crypto, so the client half of a hybrid exchange needs its own copy, and this is the one blamejs owns, hashes, currency-checks and lists in its SBOM rather than a second vendoring path maintained consumer-side. The version matches the copy that @noble/curves and @noble/post-quantum already inline, so the browser hash and the hash inside the server's PQC bundle are the same code.",
      "exports": [
        "shake128",
        "shake256",
        "sha3_256",
        "sha3_512",
        "sha256",
        "sha512",
        "hmac",
        "hkdf"
      ],
      "files": {
        "browser": "lib/vendor/browser/noble-hashes.mjs"
      },
      "bundler": "esbuild --format=esm --platform=browser (browser only)",
      "bundledAt": "2026-08-10T00:00:00Z",
      "cpe": "cpe:2.3:a:paulmillr:noble-hashes:2.3.0:*:*:*:*:node.js:*:*",
      "hashes": {
        "browser": "sha256:dfe4b7ae3c9880e388c8da4b68f44742b229b53afacd1e674179527e33da62b0"
      },
      "refreshedAt": "2026-08-11T05:20:51.853Z"
    },
    "@noble/curves": {
      "version": "2.3.0",
      "license": "MIT",
      "author": "Paul Miller",
      "source": "https://github.com/paulmillr/noble-curves",
      "exports": [
        "ristretto255_oprf",
        "p256_oprf",
        "p384_oprf",
        "p521_oprf"
      ],
      "files": {
        "server": "lib/vendor/noble-curves.cjs"
      },
      "bundler": "esbuild --format=cjs --platform=node",
      "bundledAt": "2026-08-06T00:00:00Z",
      "cpe": "cpe:2.3:a:paulmillr:noble-curves:2.3.0:*:*:*:*:node.js:*:*",
      "hashes": {
        "server": "sha256:b5fe88d1ea780d0581dee6145d666f89d46fc9531b5db35db2e5b16627840890"
      },
      "refreshedAt": "2026-08-11T05:20:51.853Z",
      "components": {
        "@noble/hashes": {
          "url": "https://github.com/paulmillr/noble-hashes",
          "version": "2.3.0"
        }
      }
    },
    "@noble/post-quantum": {
      "version": "0.7.0",
      "license": "MIT",
      "author": "Paul Miller",
      "source": "https://github.com/paulmillr/noble-post-quantum",
      "_about": "FIPS 203 / 204 / 205 PQC algorithms in pure JS. First-class on both server-side and client-side — interoperable with Node's built-in WebCrypto ML-KEM (a ciphertext encapsulated with Node ML-KEM-1024 decapsulates correctly with b.pqcSoftware.ml_kem_1024 and vice versa). Operators wire it server-side via `b.pqcSoftware.{ml_kem_1024,ml_dsa_87,slh_dsa_shake_256f,...}` (security-first defaults are the highest cat-5 levels), or re-bundle for browser / mobile clients shipping b.middleware.apiEncrypt.client. Older Node versions without the experimental WebCrypto ML-KEM extension can use the vendored bundle as the primary PQC path.",
      "exports": [
        "ml_kem512",
        "ml_kem768",
        "ml_kem1024",
        "ml_dsa44",
        "ml_dsa65",
        "ml_dsa87",
        "slh_dsa_sha2_128f",
        "slh_dsa_sha2_192f",
        "slh_dsa_sha2_256f",
        "slh_dsa_shake_128f",
        "slh_dsa_shake_192f",
        "slh_dsa_shake_256f"
      ],
      "browser_exports": [
        "ml_kem512",
        "ml_kem768",
        "ml_kem1024"
      ],
      "files": {
        "server": "lib/vendor/noble-post-quantum.cjs",
        "browser": "lib/vendor/browser/noble-post-quantum.mjs"
      },
      "bundler": "esbuild --format=cjs --platform=node (server), esbuild --format=esm --platform=browser (browser)",
      "bundledAt": "2026-08-10T00:00:00Z",
      "cpe": "cpe:2.3:a:paulmillr:noble-post-quantum:0.7.0:*:*:*:*:node.js:*:*",
      "hashes": {
        "server": "sha256:fab7ebe5737793862c473444f4ee5912f79dd1edec86683acbb4eecbca0f5892",
        "browser": "sha256:cae1d5bbdc7184b202b6ca68df6e1db7b0d0f668c77809ded189ca7f271accc9"
      },
      "refreshedAt": "2026-08-11T05:20:51.853Z",
      "components": {
        "@noble/hashes": {
          "url": "https://github.com/paulmillr/noble-hashes",
          "version": "2.3.0"
        },
        "@noble/curves": {
          "url": "https://github.com/paulmillr/noble-curves",
          "version": "2.3.0"
        },
        "@noble/ciphers": {
          "url": "https://github.com/paulmillr/noble-ciphers",
          "version": "2.3.0"
        }
      }
    },
    "@simplewebauthn/server": {
      "version": "13.3.2",
      "license": "MIT",
      "author": "Matthew Miller",
      "source": "https://github.com/MasterKale/SimpleWebAuthn",
      "exports": [
        "generateRegistrationOptions",
        "verifyRegistrationResponse",
        "generateAuthenticationOptions",
        "verifyAuthenticationResponse",
        "MetadataService"
      ],
      "files": {
        "server": "lib/vendor/simplewebauthn-server.cjs"
      },
      "bundler": "esbuild --format=cjs --platform=node --alias:reflect-metadata=reflect-metadata/lite --external:crypto --external:node:crypto",
      "bundledAt": "2026-07-13T00:00:00Z",
      "cpe": "cpe:2.3:a:simplewebauthn:server:13.3.2:*:*:*:*:node.js:*:*",
      "hashes": {
        "server": "sha256:e83195dc9f189385da9c856ef38843f4466f93ea8f3d7fc2efcb1e1b18da6f20"
      },
      "refreshedAt": "2026-08-11T05:20:51.853Z"
    },
    "SecLists-common-passwords-top-10000": {
      "version": "10k-most-common (master)",
      "license": "CC-BY-3.0",
      "author": "Daniel Miessler / SecLists contributors",
      "source": "https://github.com/danielmiessler/SecLists",
      "_about": "Top 10,000 most-common passwords (breach-derived). Loaded by b.auth.password.policy() to satisfy NIST 800-63B §5.1.1.2 'previously breached' check. Operators with deeper enforcement (HIBP downloads, NCSC 100k) layer on top via opts.forbidCommon — the bundled set is additive.",
      "files": {
        "server": "lib/vendor/common-passwords-top-10000.txt",
        "data_js": "lib/vendor/common-passwords-top-10000.data.js"
      },
      "bundler": "curl https://raw.githubusercontent.com/danielmiessler/SecLists/master/Passwords/Common-Credentials/10k-most-common.txt",
      "bundledAt": "2026-05-13T00:00:00Z",
      "hashes": {
        "server": "sha256:3c04e3cec775a7d0e21e544d33810dd434cccdb02e98903ba12e506dd9cd01bd",
        "data_js": "sha256:87b223beca89f33d2c2c32a2cfda0bc187e58061de40e7127bb5ffc4258c6e2a"
      },
      "runtime_artifact": "lib/vendor/common-passwords-top-10000.data.js",
      "integrity_layers": "sha256 + sha3-512 + SLH-DSA-SHAKE-256f signature + in-payload canary (where applicable)",
      "refreshedAt": "2026-08-11T05:20:51.853Z"
    },
    "bimi-trust-anchors": {
      "version": "operator-managed",
      "license": "BIMI Group / per-issuer",
      "license_is_spdx": false,
      "author": "BIMI Group / DigiCert / Entrust",
      "source": "https://bimigroup.org/",
      "_about": "RFC 9091 BIMI Group Verified Mark trust-anchor bundle (PEM, concatenated). Loaded by lib/mail-bimi.js for VMC + CMC chain validation. Source-tree default is empty-of-PEM — operators populate via the documented refresh procedure in the file header below; call-site overrides via b.mail.bimi.fetchAndVerifyMark({ trustAnchorsPem }) are supported. Refresh procedure pulls https://www.digicert.com/CACerts/DigiCertVerifiedMarkRootCA.pem + https://web.entrust.com/root-certificates/entrust_verified_mark_root_g3.cer and concatenates them into the file. The empty default ships with a runtime warning when b.mail.bimi loads it absent any operator-supplied trustAnchorsPem call-site override — the canary skip is intentional (the dual-hash + SLH-DSA signature cover the threat for a non-empty bundle; an empty bundle has no canary to verify).",
      "_warning": "Empty PEM default — populate before invoking b.mail.bimi.fetchAndVerifyMark in production. b.mail.bimi emits a `bimi.trust-anchors.empty` runtime warning when this default is used without an operator-supplied trustAnchorsPem call-site override.",
      "exports": [
        "bimi-vmc-trust-anchors"
      ],
      "files": {
        "server": "lib/vendor/bimi-trust-anchors.pem",
        "data_js": "lib/vendor/bimi-trust-anchors.data.js"
      },
      "bundler": "operator-managed (see file header for refresh procedure)",
      "bundledAt": "2026-05-13T00:00:00Z",
      "hashes": {
        "server": "sha256:81ff9f5ab3c9774132c845684e783be95cf73146f8b670d964105f0a3765b4b4",
        "data_js": "sha256:aa7a4d33b65a68422a2a2c1670177689f66fdcaa08bd2514d78798b827bd1608"
      },
      "runtime_artifact": "lib/vendor/bimi-trust-anchors.data.js",
      "integrity_layers": "sha256 + sha3-512 + SLH-DSA-SHAKE-256f signature + in-payload canary (where applicable)",
      "refreshedAt": "2026-08-11T05:20:51.853Z"
    },
    "publicsuffix-list": {
      "version": "master",
      "license": "MPL-2.0",
      "author": "Mozilla Foundation",
      "source": "https://publicsuffix.org/list/public_suffix_list.dat",
      "_about": "Mozilla Public Suffix List — canonical catalog of effective top-level domains used by b.publicSuffix to derive organizational domains for DMARCbis (psd= / np=), BIMI, cookie-scope checks, and same-site policies. Loaded at module-init from lib/vendor/public-suffix-list.dat; the file is the data, not a code bundle.",
      "files": {
        "server": "lib/vendor/public-suffix-list.dat",
        "data_js": "lib/vendor/public-suffix-list.data.js"
      },
      "bundler": "curl https://publicsuffix.org/list/public_suffix_list.dat",
      "bundledAt": "2026-07-25T00:00:00Z",
      "hashes": {
        "server": "sha256:0240b3f1e8c90ecd4af5b94597afb5ba89997ad395f292f87318caefb7e10413",
        "data_js": "sha256:7994e24e1865f197540a988783de567fe20fb29e7f6c3a5c142766bb0cfd9bfd"
      },
      "runtime_artifact": "lib/vendor/public-suffix-list.data.js",
      "integrity_layers": "sha256 + sha3-512 + SLH-DSA-SHAKE-256f signature + in-payload canary (where applicable)",
      "refreshedAt": "2026-08-11T05:20:51.853Z"
    },
    "@blamejs/pki": {
      "version": "0.4.15",
      "license": "Apache-2.0",
      "author": "blamejs",
      "source": "https://github.com/blamejs/pki",
      "exports": [
        "x509",
        "crl",
        "pkcs12",
        "key",
        "webcrypto",
        "schema",
        "csr",
        "cms",
        "ocsp",
        "tsp"
      ],
      "files": {
        "server": "lib/vendor/blamejs-pki.cjs"
      },
      "bundler": "esbuild --format=cjs --platform=node --external:crypto --external:node:crypto",
      "bundledAt": "2026-08-10T00:00:00Z",
      "cpe": "cpe:2.3:a:blamejs:pki:0.4.15:*:*:*:*:node.js:*:*",
      "hashes": {
        "server": "sha256:7b933e02ba3cf884385369e140808dfcaf114a402306c46183059dc1c86bb9c2"
      },
      "refreshedAt": "2026-08-11T05:20:51.853Z"
    }
  }
}
