Whitepaper v0.2 (Draft) © 2025 Nova Labs — Proprietary

Nova Chain — The Chain of Time

A lightweight blockchain using Proof-of-History-style timing, fast block production, and a simple account model. $NOVA powers fees and validator rewards.

1. Summary

Nova is a minimal L1 blockchain that uses a sequential hash chain (Proof-of-History, PoH) to timestamp blocks and provide a verifiable ordering of events. A single internal producer confirms new transactions quickly; miners can also submit externally-found PoW blocks at a configurable difficulty. The native asset $NOVA pays fees and funds rewards.

  • 💨 Fast confirms via event-driven internal producer.
  • 🔏 Ed25519-signed transfers with per-address nonces.
  • 🧱 Simple account model, HTML/JSON explorer, and REST APIs.
  • ⛏️ Optional external PoW: submit nonces to earn rewards.
  • 🏷️ Tokens subsystem for fungible assets (symbol/decimals/balances).

2. Design Goals

  • Approachable: readable reference implementation and clear data model.
  • Deterministic: replay from genesis reproduces balances and blocks.
  • Observable: built-in explorers and JSON endpoints.
  • Upgradable: parameters and features evolve via on-chain config.

3. Architecture

3.1 Data Structures

  • Block: { height, prev_hash, merkle_root, poh_index, timestamp, hash, nonce, miner_wallet, reward }
  • Transaction: { txid, kind, from, to, amount, status, block_hash, timestamp }
  • Account: { address(bech32), pubkey_hex(ed25519) }
  • Nonce: per-address, monotonic.
  • PoH Tick: sequential SHA-256(state) checkpoints persisted every N steps.
  • Token/Balance: Token{ symbol,name,decimals } and TokenBalance{ address,symbol,amount_base }

3.2 Execution Flow

Internal producer loop: mempool → build header (prev, merkle, poh, ts) → apply txs → reward split → persist block. The producer wakes on new txs and also at a fixed cadence.

4. Consensus & Timing

The prototype combines a PoH timing chain with two ways to extend the ledger:

  • Internal Producer: a single leader (treasury) seals mempool txs into blocks for fast UX.
  • External PoW: miners fetch a job (/api/mine/job) and submit a valid nonce (/api/mine/submit) meeting a configurable numeric difficulty (NOVA_DIFFICULTY_ZEROS → prefix "0" * n).
  • PoH: deterministic hash ticking with periodic on-chain checkpoints anchors time in block headers.

Future versions introduce validator rotation, block signatures, and fork choice.

5. State & Transactions

  • Addresses are bech32 (nova1…) derived from 32-byte Ed25519 pubkeys.
  • Clients sign a canonical message: nova|transfer|from=…|to=…|amount=…|nonce=N.
  • Server verifies signature & exact next nonce, enqueues tx, producer confirms.
  • Flat gas fee is charged on transfers; mints/burns are admin or programmatic.

6. Tokenomics

6.1 Parameters (current defaults)

ParameterSymbolValueNotes
Block Interval (target)T_b5 sAlso wakes immediately on new tx
Initial Block RewardR_00.5 NOVABLOCK_REWARD
Tx Fee (flat)F0.001 NOVAGAS_FEE
Treasury Skimτ10%TREASURY_PCT of (reward + gas)
Miner Shareμ100%of post-treasury portion (MINER_PCT)
DifficultyDn leading zerosNOVA_DIFFICULTY_ZEROS → prefix "0" * n

6.2 Reward Split (submit path)

Total = BLOCK_REWARD + gas_collected. Treasury first takes τ·Total. Remaining is split by μ to miner; the remainder returns to treasury. Internal producer credits treasury for both roles.

7. Fees & Burns

  • Transfers pay a flat gas fee F = 0.001 NOVA (subject to change).
  • Fee is credited to rewards pool (part to treasury via split). Burning may be introduced later.
  • Roadmap: dynamic fees & priority lanes when mempool grows.

8. Node API (Prototype)

UI / Explorer
GET  /explorer              # New explorer UI
GET  /blocks                # Legacy HTML blocks

Blocks & TX
GET  /api/blocks            # Paged blocks JSON (limit, offset)
GET  /api/block/<hash>       # Block detail
GET  /api/txs               # Recent txs JSON
GET  /api/tx/<txid>          # Tx detail

Wallets & Nonces
POST /api/wallet/register   # Register ed25519 pubkey → nova1… address
GET  /api/nonce/peek/<addr>  # Next nonce preview
GET  /api/balance/<addr>     # NOVA balance

Signed Transfers
POST /api/transfer          # {from,to,amount,nonce,sig} (ed25519)

Mining (external PoW)
GET  /api/mine/job          # {prev, merkle, poh, ts, difficulty, job_id, txids}
POST /api/mine/submit       # {miner, nonce, job_id, txids, timestamp_iso}

Leaderboard
GET  /leaderboard           # HTML page
GET  /api/leaderboard       # Miner aggregates (JSON)

Tokens
POST /api/token/create      # admin (Bearer)
POST /api/token/mint        # admin (Bearer)
GET  /api/wallet/tokens     # header X-Address or /api/wallet/tokens/<addr>

Misc
GET  /api/status            # tip height, mempool, poh index
GET  /api/fee               # gas fee

9. Roadmap

  1. v0.2: (current) Ed25519 tx signatures, nonces, internal producer, optional PoW submit, tokens & leaderboard, explorer v2.
  2. v0.3: Block proposer signatures, validator registry, slot timing; fix pagination responses parity.
  3. v0.4: Fork choice & peer gossip; light client headers.
  4. v0.5: Staking & rewards split for validators; on-chain params & governance; fee market.

10. Risks & Disclosures

  • Prototype: single-leader internal producer centralizes liveness.
  • Security: limits/rate-limits, fee markets, and full BFT are WIP.
  • No investment advice: Nova is experimental software; tokens may have no monetary value.

← Back to Nova Landing