hazync

Contribute

Hazync is a public good, and the chain is long. Every proven block is one fewer that a new node has to take on trust. Pick whichever of these fits what you have.

Prove blocks

You need Linux on x86-64 and an NVIDIA GPU. A 24 GB gaming card is enough; cloud GPUs work well.

You prove blocks on your own machine, sign them with your own key, and submit them. The coordinator checks every proof before it counts, and your name goes on the board next to the blocks you proved.

  1. Download the prover and the contributor tool from the latest release. No build and no CUDA toolkit: the NVIDIA driver is all the prover needs.
    curl -fLO https://github.com/bitcoin-ghost/hazync/releases/latest/download/hazync-host-x86_64-linux-gnu-cuda
    curl -fLO https://github.com/bitcoin-ghost/hazync/releases/latest/download/hazync-worker
    chmod +x hazync-host-x86_64-linux-gnu-cuda hazync-worker
    ln -sf hazync-worker hazync
    sudo apt install -y python3-cryptography
  2. Choose a name. This creates your signing key in ~/.hazync.
    ./hazync id yourname
  3. Back up ~/.hazync now. The key is the only thing that ties your blocks to your name. One prover has already lost theirs with a deleted machine, and the blocks they proved can no longer be signed for.
  4. Check your setup, then start proving.
    ./hazync selftest
    ./hazync run

No GPU? The CPU build proves early blocks too, more slowly. Big modern blocks want 64 GB of RAM or more. The full guide covers running several workers, folding proofs together, and the fixes for common driver errors.

Join the proof party

The shared effort to prove the whole chain, one block at a time.

There is no allocation and nothing to apply for. The board shows which blocks are open; take any of them. The coordinator re-checks every submitted proof, joins accepted ones into the proof from genesis, and credits the prover.

Nobody has to trust the coordinator. Every proof it holds can be downloaded and checked independently, and the explorer lets you do that in your browser.

Try to break it

You know Bitcoin's internals, cryptography, or how build systems go wrong.

The most valuable find is a case where a Hazync proof says valid and Bitcoin Core would say otherwise. There has been no commissioned audit yet, so outside eyes matter more than anything. In order of where an hour is worth most:

  1. Reproduce the build. Rebuild the prover on a clean machine and check you get the published program ID. Nobody outside the project has done this yet.
    docker build -f reproduce/Dockerfile .
  2. The accumulator, the one component that is not Core's code, and the most likely home of any remaining bug.
  3. The bridge that prepares each block's inputs, in particular verify_input.cpp.
  4. The node adoption code that decides what a node skips on the strength of a proof.
  5. The coordinator, assuming the coordinator itself is hostile.

The review guide says where to start on each. File findings as GitHub issues. For anything you would rather not publish first, encrypt it to the maintainer's key:

777F E81F 8CC0 77FD 3D08 055E 852C 2B31 90F5 B928