Skip to content

Deploy a Private Registry

In this tutorial, we will deploy a private blacklist registry from scratch on CKB testnet. By the end, we will have:

  • Four deployed contract cells (governance-lock, blacklist-registry, proposal-anchor, treasury-lock)
  • A live registry cell with a bootstrapped BLKL v2 payload and governance header
  • A seeded treasury pool that funds governance operations without a private key
  • A completed test governance round: propose → anchor → vote → execute

Prerequisites:

  • Rust with riscv64imac-unknown-none-elf target: rustup target add riscv64imac-unknown-none-elf
  • ckb-cli on PATH (CI pins v1.15.0 — match or document variance)
  • A testnet account with 200,000+ CKB for deployment costs
  • Node.js 20+ and @ckb-firewall/cli installed globally
  • The repository cloned locally: git clone https://github.com/digitaldrreamer/ckb-transaction-firewall
  1. Deploy the contracts
  2. Bootstrap the registry and treasury
  3. Verify the deployment
  4. Run a governance round
  5. Configure a firewall lock