dgb-wallet/packages/p2p/scripts
Digibyte.X 690959a983 p2p: BIP158 matching in WebAssembly (gcs.c), Number-based JS fallback; Blockbook upstream → Atomic
The daemon's wallet scan hashed every watched script against every block
filter with a BigInt SipHash: ~3 filters/s on the VPS once the gap limits
went to 200/100 (~3,300 scripts), i.e. days for a one-year window. The
matcher now lives in dgbpow.wasm next to the PoW hashes — scripts are
uploaded once per scan, each filter is one call, the set is decoded once
and each target binary-searched — ~5,500 filters/s locally, ~2,000/s on
the VPS with block fetches. The JS path was rewritten with uint32 lanes
and exact 32×32 partial products as a fallback (module missing or filter
beyond its buffers). scripts/gcs-check.ts cross-checks both against a
BigInt reference on random filters; `npm run gcs:test -w @dgb-wallet/p2p`.

NOWNodes stopped accepting the proxy's API key ("Unknown API_key" on every
endpoint), which is why the wallet showed "Blockbook HTTP 401" for every
path. The vhost mirror now proxies /blockbook/ to Atomic Wallet's public
Blockbook; ops/blockbook-upstream.sh switches the live vhost either way.
2026-10-11 23:37:28 +02:00
..
block-fetch-demo.ts DigiByte.X Wallet — recovery-first web wallet monorepo 2026-09-20 20:16:52 +02:00
cache-demo.ts DigiByte.X Wallet — recovery-first web wallet monorepo 2026-09-20 20:16:52 +02:00
filter-sync-demo.ts DigiByte.X Wallet — recovery-first web wallet monorepo 2026-09-20 20:16:52 +02:00
gcs-check.ts p2p: BIP158 matching in WebAssembly (gcs.c), Number-based JS fallback; Blockbook upstream → Atomic 2026-10-11 23:37:28 +02:00
handshake-demo.ts DigiByte.X Wallet — recovery-first web wallet monorepo 2026-09-20 20:16:52 +02:00
header-sync-demo.ts DigiByte.X Wallet — recovery-first web wallet monorepo 2026-09-20 20:16:52 +02:00
pool-demo.ts DigiByte.X Wallet — recovery-first web wallet monorepo 2026-09-20 20:16:52 +02:00
pow-vectors.ts daemon: verify proof-of-work on every synced header; fork choice by work 2026-10-02 18:37:31 +02:00