BlockchainEngineer 00cfade84d security(genesis): add Terraform module for validated IBFT 2.0 genesis access control
- Enforces Separation of Duties: validator/admin/pause addresses must be distinct
- Validates chainId does not collide with mainnet/testnet IDs
- Requires minimum 4 validators for IBFT 2.0 safety
- Alloc map distinguishes roles with different balances
- extraData placeholder to be injected by key-ceremony tooling

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-05-07 11:38:24 +00:00

JCC Home-Grown Blockchain — Local Devnet & Infrastructure

Monorepo for JCC blockchain infrastructure, including validator devnet, CI/CD, monitoring, and treasury UI scaffolding.

Quick Start

# Start the 3-node IBFT 2.0 devnet
./scripts/devnet-up.sh

# Stop it
./scripts/devnet-down.sh

# Reset chain data
./scripts/devnet-reset.sh

Structure

Directory Purpose
devnet/ Docker Compose, Besu config, genesis, validator keys
contracts/ Solidity sources, Foundry/Forge config, tests
monitoring/ Prometheus, Grafana dashboards, Loki config
load-test/ (TBD) Chaos / load scripts
rpc-gateway/ (TBD) API gateway / rate-limit proxy
.github/workflows/ CI/CD definitions

Devnet Spec

  • Consensus: IBFT 2.0 (3 validators)
  • Block time: ≤ 5 s
  • Chain ID: 1337
  • Genesis: reproducible, version-controlled in devnet/besu-config/genesis.json
  • Metrics: Prometheus exporter on each validator, scraped by local Prometheus

Tooling Prerequisites

  • Docker Engine ≥ 24.0
  • Docker Compose ≥ 2.20
  • Foundry (Forge + Cast + Anvil)
  • Node.js ≥ 18 (for treasury UI)

Security Notes

  • Validator node keys in this repo are devnet-only.
  • Production keys live in HSM / AWS KMS / HashiCorp Vault (see infra runbooks).
  • Never commit production credentials.

Next Actions

  • See JCC-81 for Sprint 0 acceptance criteria.
S
Description
JC Capital blockchain infrastructure – Solidity, Besu genesis, devnet tooling, monitoring
Readme 79 KiB
Languages
Python 49.2%
JavaScript 22.5%
Shell 15.1%
HCL 10.1%
Makefile 1.8%
Other 1.3%