DagKnight is the evolution of Kaspa’s GHOSTDAG consensus protocol. It introduces a parameterless adaptive consensus model that provides the precise ordering and instant finality guarantees required for vProgs. Without DagKnight, the vProgs architecture cannot function reliably – the two upgrades are technically interdependent.


From GHOSTDAG to DagKnight

Kaspa’s consensus has evolved through distinct phases:

Nakamoto Consensus (Bitcoin)
  Single chain, one block at a time
  Slow, wasteful of miner work
       |
       v
GHOSTDAG (Kaspa current)
  BlockDAG: multiple blocks simultaneously
  Greedy ordering heuristic
  Parameterized (k value must be tuned)
  High throughput (10 BPS post-Crescendo)
       |
       v
DagKnight (upgrade)
  Parameterless adaptive consensus
  Enhanced ordering precision
  Near-instant finality
  vProgs-ready L1 sequencing

The Parameter Problem

GHOSTDAG requires a parameter k that balances security against throughput. This parameter must be chosen based on assumptions about network propagation delay – if the assumption is wrong, security or performance degrades. DagKnight eliminates this tradeoff by adapting automatically to observed network conditions.


Key Properties

Parameterless Adaptive Consensus

DagKnight’s defining innovation is the elimination of fixed consensus parameters:

  • No manual parameter tuning required – the protocol adapts to network conditions
  • Automatically adjusts to changes in propagation delay, hashrate distribution, and network topology
  • Faster convergence in transaction ordering under varying conditions
  • Improved resilience under adversarial conditions – no parameter to exploit

This adaptiveness is critical for a global network where conditions vary across regions and change over time.

Precise Block Ordering

DagKnight provides enhanced ordering precision compared to GHOSTDAG:

  • Tighter ordering guarantees – less ambiguity about which transactions came first
  • Reduced reordering window – blocks reach final ordering faster
  • Deterministic sequencing – essential for vProgs that depend on exact transaction order
  • Prevents sequencing jitter – eliminates the risk of vProgs reading inconsistent states between ordering updates

Instant Finality

DagKnight delivers near-instant finality at scale:

  • Enterprise-grade settlement guarantees – transactions are final within seconds
  • No challenge periods – unlike optimistic rollups, finality is immediate
  • No probabilistic finality – once finalized, a transaction cannot be reversed
  • Reliable state verification – ZK proofs can reference finalized state with certainty

Why DagKnight Is Required for vProgs

The two upgrades are technically interdependent. Each of DagKnight’s properties maps directly to a vProgs requirement:

1. Sequencing Reliability

vProgs need precise, deterministic ordering to compose atomically across programs. When vProg_A reads state from vProg_B, it must know exactly which version of vProg_B’s state corresponds to a given point in the global sequence T.

Without precise ordering:
  Block 1: tx_A writes acct_A     Block 2: tx_B reads acct_A

  If ordering is ambiguous:
    - Did tx_B read before or after tx_A's write?
    - Different nodes might disagree
    - vProg state becomes inconsistent

With DagKnight ordering:
  Precise ordering: tx_A < tx_B (deterministic)
  All nodes agree: tx_B reads the post-tx_A state
  vProg state is consistent across all nodes

2. State Consistency

Without DagKnight’s ordering guarantees, concurrent vProgs could read inconsistent state versions before finalization. This would make ZK proofs invalid – a proof generated against one ordering would be rejected by a node that sees a different ordering.

3. Proof Verification

L1 ZK verification requires reliable, consistent sequencing to validate state commitments. The sequencing commitment proposed in KIP-21 chains through selected-parent ancestry – if the selected-parent chain changes due to reordering, all downstream commitments must be recomputed.

DagKnight’s precise ordering minimizes reordering, making the sequencing commitment chain stable and predictable.

4. Finality Speed

Instant finality enables real-time settlement for enterprise applications. In the vProgs context:

  • Provers can immediately build on finalized state
  • Users receive confirmation in seconds
  • Cross-vProg composability operations complete atomically without waiting
  • State commitments are immediately authoritative

BlockDAG Fundamentals

To understand DagKnight’s contribution, it helps to understand the BlockDAG structure it operates on.

Traditional Blockchain vs. BlockDAG

Traditional Blockchain:
  B1 -> B2 -> B3 -> B4 -> B5
  Linear chain, one block at a time
  Miners compete; only one wins per round
  Losing blocks are wasted (orphaned)

Kaspa BlockDAG:
       +-- B2a --+
  B1 --+         +-- B3a --+
       +-- B2b --+         +-- B4 ...
       +-- B2c --+-- B3b --+

  Multiple blocks created simultaneously
  All valid blocks included (no orphans)
  GHOSTDAG/DagKnight orders parallel blocks
  Miners cooperate implicitly; all work counts

Parallel Block Properties

  • Multiple blocks per second: Kaspa operates at 10 BPS (post-Crescendo), meaning ~10 blocks are created every second across the network
  • All blocks included: Unlike traditional chains, parallel blocks are not orphaned – they are all incorporated into the DAG
  • Ordering is the challenge: With parallel blocks, the consensus protocol must determine a consistent ordering of all included transactions
  • Pure PoW security: The DAG structure preserves Proof-of-Work security guarantees – the longest chain (heaviest DAG) wins

DAG Ordering Process

DAG at time T:

  B1 -----> B3 -----> B5
    \      / \       /
     B2 --/   B4 ---/

DagKnight ordering result:
  B1 < B2 < B3 < B4 < B5

  (precise ordering of parallel blocks
   based on observed network topology)

DagKnight analyzes the structure of the DAG – which blocks reference which other blocks – to determine the most likely chronological ordering. It does this without any fixed parameters, adapting to the actual network behavior.


Combined Scalability: DagKnight + vProgs

The combination of DagKnight’s parallel sequencing and vProgs’ computational offloading produces multiplicative scalability:

                   Sequencing Throughput
                   (DagKnight / BlockDAG)
                          |
                          v
+---------------------------------------------------+
|                                                   |
|   DagKnight orders 10+ blocks/second              |
|   Each block contains multiple transactions       |
|   Parallel blocks = parallel sequencing           |
|   Throughput scales with block rate                |
|                                                   |
+---------------------------------------------------+
                          |
                          +
                          |
+---------------------------------------------------+
|                                                   |
|   vProgs offload ALL execution to ZK provers      |
|   L1 only validates proofs (constant time)        |
|   Prover market scales independently              |
|   No execution bottleneck on L1                   |
|                                                   |
+---------------------------------------------------+
                          |
                          v
              30,000+ TPS with exponential
              scalability potential

Why 30,000+ TPS

The 30,000+ TPS figure comes from two independent scaling vectors:

  1. Sequencing throughput: DagKnight can order thousands of transactions per second across parallel blocks. The block rate can potentially increase beyond 10 BPS in future upgrades.

  2. Execution throughput: Since execution is entirely off-chain, there is no per-node execution bottleneck. Each vProg’s prover market handles its own throughput independently. Adding more provers adds more capacity without affecting L1 node requirements.

These vectors multiply rather than add, because they operate on different dimensions of the system.


DagKnight and the Sequencing Commitment

DagKnight’s ordering directly feeds into the sequencing commitment specified in KIP-21:

DagKnight orders blocks:  B1 < B2 < B3 < B4 < B5

For each ordered chain block B_i:
  1. Identify mergeset (blocks accepted by B_i)
  2. Extract per-lane transactions
  3. Update lane tip hashes
  4. Compute SeqStateRoot(B_i)
  5. Chain: SeqCommit(B_i) = H_seq(SeqCommit(parent(B_i)), SeqStateRoot(B_i))

The precision of DagKnight ordering determines:
  - Which transactions are in which block's mergeset
  - The ordering of transactions within a block
  - The selected-parent chain that SeqCommit follows

More precise ordering means:

  • Fewer reorgs – the selected-parent chain is more stable
  • Predictable mergesets – provers can anticipate which transactions will be grouped
  • Stable sequencing commitments – less churn in the SeqCommit chain
  • Reliable anchoring – ZK proofs anchor to stable commitment points

Finality and Enterprise Applications

DagKnight’s instant finality enables enterprise use cases that require settlement guarantees:

Financial Settlement

  • Real-time settlement without trusted intermediaries
  • Instant finality eliminates counterparty risk during settlement windows
  • ZK proofs provide audit trails via state commitments

Automated Compliance

  • On-chain compliance logic executed off-chain, verified on-chain
  • Deterministic ordering ensures regulatory consistency
  • State commitments provide tamper-proof records

Cross-Program Operations

  • Synchronous composability requires finality to be meaningful
  • Atomic cross-vProg operations depend on DagKnight’s ordering guarantees
  • Enterprise workflows spanning multiple vProgs complete in seconds

Security Properties

PoW Security Preservation

DagKnight preserves Kaspa’s pure Proof-of-Work security model:

  • No staking, no validators, no committees
  • Security comes from computational work, not economic collateral
  • The 51% attack threshold applies to the DAG, not to any subset
  • All miner work contributes to security (no orphaned blocks)

Adversarial Resilience

DagKnight’s adaptiveness provides improved resilience under attack:

  • Withholding attacks: Adaptive consensus detects and responds to unusual DAG patterns
  • Selfish mining: The DAG structure inherently reduces the advantage of block withholding
  • Network partitions: Parameterless consensus adapts to temporary network splits without manual intervention
  • Ordering manipulation: Precise ordering reduces the window for an attacker to influence transaction sequencing

Evolution Path

GHOSTDAG (current production)
  |
  | Parameterized (k value)
  | Good ordering precision
  | Fast finality (seconds)
  |
  v
DagKnight (upgrade)
  |
  | Parameterless (adaptive)
  | Enhanced ordering precision
  | Near-instant finality
  |
  v
vProgs-Ready L1 Sequencing Layer
  |
  | Precise, deterministic ordering
  | Stable sequencing commitments (KIP-21)
  | Reliable ZK proof anchoring
  | Instant finality for atomic operations

DagKnight is not merely an incremental improvement – it is the consensus upgrade that transforms Kaspa from a fast settlement layer into a reliable sequencing layer capable of supporting programmable computation.


Further Reading