Skip to content

ZClassic23 fast-sync starter pack (height 3,155,842)

Latest

Choose a tag to compare

@RhettCreighton RhettCreighton released this 26 Jun 06:09
· 36 commits to main since this release

ZClassic23 fast-sync starter pack (height 3,155,842)

Two files that let a freshly built zclassic23 node reach the chain tip in
minutes instead of doing a full multi-hour P2P sync from genesis.

A fresh node seeded with only these two files plus normal P2P was verified
to seed coins_kv at height 3,155,842 (SHA3-self-verified, consensus-bound to
the in-binary PoW header) and fold forward toward the network tip.

Files

File Size SHA-256
block_index.bin 543,021,428 a40b184d0d52f91438762928abdadd151a8011efc0340485c690732988d5d6e0
utxo-seed-3155842.snapshot 104,908,275 46e4f6bd090e51417a4d8b70a1b7c8a218d9c8e3cded1bba812033117f5d9e9f
  • block_index.bin — contiguous block index (genesis → height 3,155,841), the
    height-sorted header graph the node needs to know about the chain.
  • utxo-seed-3155842.snapshot — a v2 UTXO + Sapling-frontier snapshot at seed
    height 3,155,842 (1,344,903 UTXOs). The node recomputes the body SHA-256
    (SHA3) and checks the snapshot's anchor hash against the PoW header compiled
    into the binary, so a tampered or wrong-chain snapshot is refused at boot.

Quickstart

Build the node from origin/main, then:

# 1. Download both assets (into the current dir)
gh release download starterpack-3155842 -R ZclassiC23/zclassic

# 2. Verify integrity (must print "OK" for both)
sha256sum -c <<'EOF'
a40b184d0d52f91438762928abdadd151a8011efc0340485c690732988d5d6e0  block_index.bin
46e4f6bd090e51417a4d8b70a1b7c8a218d9c8e3cded1bba812033117f5d9e9f  utxo-seed-3155842.snapshot
EOF

# 3. Place both files INSIDE a fresh datadir
DATADIR="$HOME/.zclassic-c23"          # or any empty directory
mkdir -p "$DATADIR"
mv block_index.bin           "$DATADIR/"
mv utxo-seed-3155842.snapshot "$DATADIR/"

# 4. Boot, pointing the loader at the snapshot
build/bin/zclassic23 \
  -datadir="$DATADIR" \
  -load-snapshot-at-own-height="$DATADIR/utxo-seed-3155842.snapshot"

Expected result: getblockcount jumps to ~3,155,842 within seconds (not 0),
then climbs to the network tip in minutes as the node folds forward over P2P
block bodies. Boot log shows:

[boot] -load-snapshot-at-own-height: anchor hash MATCHES the in-binary PoW header at h=3155842 — snapshot is consensus-bound to this chain
[boot] -load-snapshot-at-own-height: SELF-verified snapshot ... (body SHA3 OK, height=3155842, count=1344903) — seeded coins_kv

Notes:

  • block_index.bin is read from <DATADIR>/block_index.bin (exact filename).
  • The snapshot path can live anywhere; pass its full path to the flag. The seed
    height comes from the snapshot's verified header, not the filename.
  • Without this bundle a fresh node still works — it just does the long P2P
    header + body sync from genesis.

See docs/BOOTSTRAPPING.md on main for the canonical version of these steps.