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.
42 lines
1.2 KiB
JSON
42 lines
1.2 KiB
JSON
{
|
|
"name": "@dgb-wallet/p2p",
|
|
"version": "0.0.1",
|
|
"description": "DigiByte P2P client \u00e2\u20ac\u201d direct peer connections, BIP157/158 compact block filters, client-side address matching. The Maximum Privacy backend for @dgb-wallet.",
|
|
"type": "module",
|
|
"main": "./dist/index.js",
|
|
"types": "./dist/index.d.ts",
|
|
"exports": {
|
|
".": {
|
|
"types": "./dist/index.d.ts",
|
|
"import": "./dist/index.js"
|
|
}
|
|
},
|
|
"files": [
|
|
"dist",
|
|
"src"
|
|
],
|
|
"scripts": {
|
|
"build": "tsc",
|
|
"handshake": "tsx scripts/handshake-demo.ts",
|
|
"pool": "tsx scripts/pool-demo.ts",
|
|
"headers": "tsx scripts/header-sync-demo.ts",
|
|
"filters": "tsx scripts/filter-sync-demo.ts",
|
|
"blocks": "tsx scripts/block-fetch-demo.ts",
|
|
"cache": "tsx scripts/cache-demo.ts",
|
|
"daemon": "tsx bin/dgb-daemon.ts",
|
|
"pow:test": "tsx scripts/pow-vectors.ts",
|
|
"gcs:test": "tsx scripts/gcs-check.ts"
|
|
},
|
|
"dependencies": {
|
|
"@bitcoinerlab/secp256k1": "^1.1.1",
|
|
"@dgb-wallet/core": "*",
|
|
"@noble/hashes": "^1.8.0",
|
|
"bip32": "^4.0.0",
|
|
"bitcoinjs-lib": "^6.1.7"
|
|
},
|
|
"devDependencies": {
|
|
"@types/node": "^20.11.0",
|
|
"tsx": "^4.7.0",
|
|
"typescript": "^5.3.0"
|
|
}
|
|
}
|