consensus: PQ canonical terminology (FIPS 203/204/205 + Pulsar + Lamport)

This commit is contained in:
2026-05-05 17:52:32 -07:00
parent 50cd33f0b3
commit 5783c0cb41
16 changed files with 57 additions and 57 deletions
+1 -1
View File
@@ -119,7 +119,7 @@ When `engine/dag/engine.go` exceeds 100 LOC and stops returning nil:
#### ✅ Go PQ Gets Real Certificates
When `engine/pq/consensus.go` removes mock certificates:
- Remove mock certificate check
- Add ML-DSA/Kyber integration tests
- Add ML-DSA/ML-KEM integration tests
- Update summary to show PQ as production ready
#### ✅ C SDK Implements Consensus
+2 -2
View File
@@ -171,7 +171,7 @@ ring-call benchmarks currently crash with a pre-existing nil-pointer in
| BLS aggregation | 1 × (21 × 53 us) | 1.11 ms |
| Per-validator ML-DSA sign | 21 × 495 us | 10.4 ms total (parallel: 495 us wall) |
| Z-Chain Groth16 prover | 1 × ~400 ms | 400 ms CPU / 5-15 ms GPU (est) |
| Corona round | 1 × variable | ~ms range |
| Pulsar round | 1 × variable | ~ms range |
| **Total wall-clock** | | **~400-500 ms CPU** (Groth16-dominated) |
**Per-cert verification (light client):**
@@ -180,7 +180,7 @@ ring-call benchmarks currently crash with a pre-existing nil-pointer in
|-----------|------|
| BLS aggregated verify (100 signers) | 875 us (constant) |
| Groth16 verify (3 pairings on BLS12-381) | ~1-3 ms CPU, ~200-500 us GPU |
| Corona verify | variable |
| Pulsar verify | variable |
| **Total** | **~2-5 ms CPU** |
This supersedes the `357 us` claim in older papers. Stale sections to
+4 -4
View File
@@ -27,8 +27,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
#### Quantum-Resistant Integration
- OP Stack quantum finality integration example (`examples/op_stack_quantum_integration.go`)
- Post-quantum cryptographic proofs:
- ML-DSA-65 (Dilithium) digital signatures
- ML-KEM-1024 (Kyber) key encapsulation
- ML-DSA-65 digital signatures
- ML-KEM-1024 key encapsulation
- Quantum-resistant Merkle tree implementation
- Layer 2 rollup integration with quantum-resistant finality guarantees
@@ -103,8 +103,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Security
- Quantum-resistant cryptography integration for Layer 2 rollups
- Post-quantum signature schemes (Dilithium)
- Post-quantum key encapsulation (Kyber)
- Post-quantum signature schemes (ML-DSA)
- Post-quantum key encapsulation (ML-KEM)
---
+15 -15
View File
@@ -25,7 +25,7 @@ post-quantum finality. All sub-protocols live in `protocol/`.
| `nova` | Linear chain mode (wraps ray) | `Nova[T]` |
| `nebula` | DAG mode (wraps field) | `Nebula[V]` |
| `chain` | Block interface primitives | `Block`, `ChainState` |
| `quasar` | BLS + Corona + ML-DSA threshold signing | `signer`, `BLS`, `EpochManager`, `BundleSigner` |
| `quasar` | BLS + Pulsar + ML-DSA threshold signing | `signer`, `BLS`, `EpochManager`, `BundleSigner` |
### Consensus Flow
@@ -40,7 +40,7 @@ post-quantum finality. All sub-protocols live in `protocol/`.
```go
type QuasarCert struct {
BLS []byte // BLS12-381 aggregate, 48 bytes classical fast path
Corona []byte // Ring-LWE threshold (PQ), O(1) after DKG
Pulsar []byte // Ring-LWE threshold (PQ), O(1) after DKG
MLDSAProof []byte // Z-Chain Groth16 rolling up N × ML-DSA identity sigs, ~192 bytes
Epoch uint64
Finality time.Time
@@ -52,12 +52,12 @@ type QuasarCert struct {
|-------|--------|----------|----------|---------|
| BLS | BLS12-381 aggregate | co-CDH | 48 B | 48 B |
| ML-DSA | ML-DSA-65 (FIPS 204) | Module-LWE + MSIS | ~3309 B per validator | 192 B (Groth16) |
| Corona | Ring-LWE threshold | Module-LWE | O(1) after DKG | variable |
| Pulsar | Ring-LWE threshold | Module-LWE | O(1) after DKG | variable |
Modes (each layer independently toggleable):
- BLS-only: classical fast path
- BLS + Corona: dual PQ
- BLS + Corona + ML-DSA: full Quasar (`TripleSignRound1`)
- BLS + Pulsar: dual PQ
- BLS + Pulsar + ML-DSA: full Quasar (`TripleSignRound1`)
- Full Quasar + Z-Chain ZKP: production mode (succinct certificate)
`IsTripleMode()` checks all three signing layers.
@@ -72,13 +72,13 @@ the `LUX_CONSENSUS_PQ_MODE` env var or `Parameters.PQMode` field:
|------|-------|-------------|
| `BLSOnly` | bls | Classical fast path, smallest cert |
| `BLSPlusMLDSA` | bls-mldsa | BLS + per-validator ML-DSA-65 |
| `BLSPlusCorona` | bls-rt | BLS + Corona 2-round threshold |
| `BLSPlusCorona` | bls-rt | BLS + Pulsar 2-round threshold |
| `BLSPlusGroth16` | bls-z | BLS + Z-Chain Groth16 rollup (placeholder) |
| `TripleQuantum` | triple | All three layers active |
`engine/pq.NewConsensus` resolves the mode via `config.PQModeFromEnv` and
exposes `PQMode()` getter. `bench/pq_modes_bench_test.go` covers all modes
with real signing (real BLS aggregate, real ML-DSA-65, real Corona
with real signing (real BLS aggregate, real ML-DSA-65, real Pulsar
2-round threshold).
Bench (Apple M1, n=21):
@@ -89,10 +89,10 @@ Bench (Apple M1, n=21):
| bls-mldsa | 369µs | 8.5ms | 3.4ms | 69 KB | 665 MB |
| bls-rt | 39ms | 3.3s | 1.6ms | 33 KB | 318 MB |
The Corona layer is implemented by **Pulsar** (`github.com/luxfi/pulsar/threshold`)
The Pulsar layer is implemented by **Pulsar** (`github.com/luxfi/pulsar/threshold`)
— Lux's variant with DKG2 (`pulsar/dkg2/`) and Pulsar-SHA3 hash suite
(`pulsar/hash/sp800_185.go`, KMAC over cSHAKE256). Pulsar params are
byte-identical to the original Corona: M=8, N=7, LogN=8 (ring degree
byte-identical to the original Pulsar: M=8, N=7, LogN=8 (ring degree
256), Q=0x1000000004A01 (48-bit NTT-friendly prime), Dbar=48, Kappa=23.
Cert-size honest accounting (production params, classical 2^142 /
@@ -117,8 +117,8 @@ that feed it are split across the primary network chains:
| Chain | Role |
|-------|------|
| **X-Chain** | *Verifies* already-signed UTXOs via Fx plugins (secp256k1fx, mldsafx, slhdsafx, ed25519fx, secp256r1fx...). Does not run MPC ceremonies. |
| **Q-Chain** | Runs the Corona 2-round threshold for *consensus only* (this repo's `protocol/quasar/` emits those rounds). Not a general MPC host. |
| **T-Chain** | Runs *all* MPC ceremonies: CGGMP21, FROST, Corona (general), TFHE. The signing partner for cross-chain custody. |
| **Q-Chain** | Runs the Pulsar 2-round threshold for *consensus only* (this repo's `protocol/quasar/` emits those rounds). Not a general MPC host. |
| **T-Chain** | Runs *all* MPC ceremonies: CGGMP21, FROST, Pulsar (general), TFHE. The signing partner for cross-chain custody. |
| **Z-Chain** | Rolls N per-validator ML-DSA identity sigs into a single 192-byte Groth16 proof per epoch (the `MLDSAProof` field). |
**Why `MLDSAProof` and not `ThresholdMLDSA`**: threshold ML-DSA has no FIPS
@@ -142,7 +142,7 @@ The paper + proof sketch carry the soundness/liveness/PQ-safety arguments:
amortized to ~2^20 via shared-matrix optimization for n=21 validators)
- App C — Static vs adaptive corruption (Fischlin / erasure hybrids)
- App D — Trusted-setup ceremony (Bowe-Gabizon-Miers), PLONK upgrade path
- App E — Corona parameter tightness: classical 2^142, quantum 2^130 via
- App E — Pulsar parameter tightness: classical 2^142, quantum 2^130 via
BDGL sieving + Grover speedup
### Domain separation
@@ -220,12 +220,12 @@ Per-component CPU costs for QuasarCert production and verification:
| ML-DSA-65 verify (via Fx) | 254 us | `utxo/mldsafx BenchmarkMLDSA65Verify` |
| ML-DSA-65 verify (cached) | 3 us | `utxo/mldsafx BenchmarkMLDSA65VerifyCached` |
| SLH-DSA-192f verify | 1.92 ms | `utxo/slhdsafx BenchmarkSLH192fVerify` |
| Quasar full block (BLS+ML-DSA+Corona) | 1.85 ms | `protocol/quasar BenchmarkQuasarBlockProcessing` |
| Quasar full block (BLS+ML-DSA+Pulsar) | 1.85 ms | `protocol/quasar BenchmarkQuasarBlockProcessing` |
**QuasarCert verify (approx CPU, single cert, n=21 validators):**
- BLS aggregate verify: ~875 us (constant in signer count)
- Groth16 proof verify: ~1-3 ms (pairing-dominated, not yet in our bench harness — see App B of proof sketch)
- Corona threshold verify: variable, amortized O(1) after DKG
- Pulsar threshold verify: variable, amortized O(1) after DKG
- Total: ~2-5 ms per cert, GPU batch can amortize 10-100x across certs
**Note on the stale 357 us claim in older papers:** The "357 us epoch finality"
@@ -286,7 +286,7 @@ Run: `GOWORK=off go test -v -run TestLuxVsAvalanche_EndToEnd -bench=. ./bench/`
### Test Status
- All tests pass except `TestQuantumBundle_ChainIntegrity` which is flaky
(Corona threshold signing nondeterminism -- passes on retry)
(Pulsar threshold signing nondeterminism -- passes on retry)
- Build: `GOWORK=off go build ./...`
- Tests: `GOWORK=off go test -count=1 -short -timeout 300s ./...`
+1 -1
View File
@@ -99,7 +99,7 @@ The final cert includes sigs from every validator that appeared in at least one
This is larger than the fixed k=128 cert (310 kB). Trade-off: we save the separate VRF + committee-signing protocol and get consensus + cert in a single pass.
Compression options:
- **Per-epoch Corona** over converging signers (off the hot path)
- **Per-epoch Pulsar** over converging signers (off the hot path)
- **Per-era Z-chain Groth16** proof over epoch certs
## How it extends the existing protocols
+9 -9
View File
@@ -27,7 +27,7 @@ post-quantum finality via three independent cryptographic signing paths.
| **Flare** | DAG certificate/skip detection via 2f+1 quorum | `protocol/flare` |
| **Ray** | Linear chain finality driver: Wave + Focus + Sink | `protocol/ray` |
| **Field** | DAG finality driver: Wave + safe-prefix commit | `protocol/field` |
| **Quasar** | BLS + Corona + ML-DSA threshold signing, epoch management | `protocol/quasar` |
| **Quasar** | BLS + Pulsar + ML-DSA threshold signing, epoch management | `protocol/quasar` |
### Signing Modes
@@ -37,11 +37,11 @@ Each cryptographic layer is independently toggleable:
|------|--------|----------|
| BLS-only | BLS12-381 threshold | Fastest classical consensus |
| BLS + ML-DSA | BLS + FIPS 204 ML-DSA-65 | Dual with PQ identity proof |
| BLS + Corona | BLS + Ring-LWE 2-round threshold | Dual with PQ threshold proof |
| BLS + Corona + ML-DSA | All three in parallel | Full Quasar (triple mode) |
| BLS + Pulsar | BLS + Ring-LWE 2-round threshold | Dual with PQ threshold proof |
| BLS + Pulsar + ML-DSA | All three in parallel | Full Quasar (triple mode) |
`IsTripleMode()` returns true when all three paths are configured.
`TripleSignRound1` runs BLS + Corona + ML-DSA signing in parallel goroutines.
`TripleSignRound1` runs BLS + Pulsar + ML-DSA signing in parallel goroutines.
### PQ Mode Selection (Configurable)
@@ -67,7 +67,7 @@ trade-offs:
| bls-rt | 39 ms | 3.3 s | 1.6 ms | 33 KB | 318 MB |
| triple | 40 ms | 3.3 s | 4.3 ms | 102 KB | 981 MB |
Corona / triple include the full 2-round Pulsar threshold protocol
Pulsar / triple include the full 2-round Pulsar threshold protocol
(`github.com/luxfi/pulsar/threshold` — Pulsar is Lux's variant with
DKG2 and Pulsar-SHA3 hash suite). Production parameters M=8, N=7,
LogN=8 (ring degree 256), Q=2^48-ish: classical 2^142, quantum 2^130.
@@ -91,7 +91,7 @@ consensus/
nova/ Linear chain consensus mode
nebula/ DAG consensus mode
chain/ Block interface primitives
quasar/ BLS + Corona + ML-DSA threshold signing
quasar/ BLS + Pulsar + ML-DSA threshold signing
engine/ Consensus engine (Chain, DAG, PQ wrappers)
core/ Core types, DAG structures
types/ Block, Vote, Config, Bag
@@ -122,7 +122,7 @@ Photon (select committee) -> Wave (threshold vote per frontier vertex)
After consensus decision, the Quasar signing layer produces threshold certificates:
1. BLS: single-round threshold share via `crypto/threshold`
2. Corona: 2-round Ring-LWE threshold via `luxfi/corona/threshold`
2. Pulsar: 2-round Ring-LWE threshold via `luxfi/corona/threshold`
3. ML-DSA-65: single-round FIPS 204 identity signature
All three run in parallel. A block is quantum-final when all configured certificate
@@ -134,7 +134,7 @@ layers are valid.
|-------|----------|---------|
| Node-ID | Ed25519 | P2P transport auth |
| Validator-BLS | BLS12-381 | Classical finality votes |
| Validator-PQ | Corona (Ring-LWE) | PQ finality shares |
| Validator-PQ | Pulsar (Ring-LWE) | PQ finality shares |
| Validator-ID | ML-DSA-65 (FIPS 204) | PQ identity attestation |
| Wallet (EVM) | secp256k1 | User transaction signatures |
| Wallet (X-Chain) | secp256k1 | UTXO locking |
@@ -205,7 +205,7 @@ GOWORK=off go test -bench=. ./bench/
1. **Pre-quantum**: Attacker must corrupt >= 1/3 stake to fork
2. **Q-day (BLS broken)**: Lattice certificates prevent unsafe finalization
3. **Post-quantum**: Security rests on Module-LWE (Corona) + Module-LWE/SIS (ML-DSA)
3. **Post-quantum**: Security rests on Module-LWE (Pulsar) + Module-LWE/SIS (ML-DSA)
## License
+2 -2
View File
@@ -139,9 +139,9 @@ BenchmarkSigmoid-10 214260781 5.600 ns/op 0 B/op 0 a
### Network Performance (QZMQ)
**Quantum-Secure Messaging:**
- **Signature (Dilithium)**: 0.3ms
- **Signature (ML-DSA)**: 0.3ms
- **Verification**: 0.2ms
- **Encryption (Kyber)**: 1.2ms
- **Encryption (ML-KEM)**: 1.2ms
- **Decryption**: 1.1ms
- **Total Overhead**: ~2.6ms per message
+1 -1
View File
@@ -122,7 +122,7 @@ The crypto layer uses axioms with real postconditions (not vacuous `True`):
|--------|------|--------|-------------|
| BLS | `Crypto/BLS.lean` | 3 | Bilinearity, aggregate soundness |
| FROST | `Crypto/FROST.lean` | 2 | Threshold signature unforgeability |
| Corona | `Crypto/Corona.lean` | 2 | Post-quantum threshold signatures |
| Pulsar | `Crypto/Corona.lean` | 2 | Post-quantum threshold signatures |
| ML-DSA | `Crypto/MLDSA.lean` | 2 | FIPS 204 post-quantum signatures |
### BLS Bilinearity (Proved)
+1 -1
View File
@@ -146,7 +146,7 @@ All 12 Lux consensus protocols use light metaphors:
- [Field](/docs/field) — Field-theoretic vertex ordering engine
### Quantum & Security
- [Quasar](/docs/quasar) — Post-quantum finality (BLS + Corona hybrid)
- [Quasar](/docs/quasar) — Post-quantum finality (BLS + Pulsar hybrid)
- [Photon](/docs/photon) — K-of-N committee selection via light emission
### DAG & Parallel
+1 -1
View File
@@ -87,7 +87,7 @@ func (q *Quasar) ProcessPhaseII(ctx context.Context, block *Block) error {
| Validator-BLS | bls12-381 | Fast finality votes | `$HOME/.lux/bls.key` |
| Validator-PQ | lattice | PQ finality shares | `$HOME/.lux/rt.key` |
| Wallet (EVM) | secp256k1 or Lamport | User tx signatures | In wallet |
| Wallet (X-Chain) | secp256k1 or Dilithium | UTXO locking | In wallet |
| Wallet (X-Chain) | secp256k1 or ML-DSA | UTXO locking | In wallet |
The same `rt.key` registered on Q-Chain is reused by all chains.
+2 -2
View File
@@ -150,7 +150,7 @@ Phase 2: AI Validation
Phase 3: Vote Broadcast
→ Broadcasting vote via QZMQ...
✓ Vote sent with Dilithium signature
✓ Vote sent with ML-DSA signature
Phase 4: Learning
✓ Training from consensus outcome
@@ -276,7 +276,7 @@ agent.SyncSharedMemory(ctx)
✅ **Quantum-Resistant**: All network communication via QZMQ
✅ **Byzantine Fault Tolerant**: Handles up to (n-1)/3 malicious nodes
✅ **AI-Verified**: Every proposal validated by multiple AI agents
✅ **Cryptographically Provable**: Dilithium signatures on all messages
✅ **Cryptographically Provable**: ML-DSA signatures on all messages
✅ **Forward Secure**: Past consensus cannot be compromised
## Customization
+5 -5
View File
@@ -9,7 +9,7 @@ Quasar is Lux's unified consensus protocol that combines multiple cutting-edge c
1. **Fast Probabilistic Consensus (FPC)** - Prevents stuck states with dynamic thresholds
2. **Wave Protocol** - Metastable convergence through repeated sampling
3. **Horizon/Flare** - DAG-based finality detection
4. **Post-Quantum Signatures** - Corona lattice + BLS fusion
4. **Post-Quantum Signatures** - Pulsar lattice + BLS fusion
Together, these achieve **2-round quantum finality in <1 second**.
@@ -83,7 +83,7 @@ Visualizes the complete 2-round protocol:
**Round 2 (~300ms): Quantum Finality**
- Horizon finality detection
- Flare certificate verification
- Corona post-quantum signatures
- Pulsar post-quantum signatures
- Event horizon advancement
**Total: <1 second with quantum resistance**
@@ -132,8 +132,8 @@ Horizon/Flare detect finality in parallel DAG:
### Quantum Resistance
Corona provides post-quantum security:
- Lattice-based cryptography (NTRU/Kyber family)
Pulsar provides post-quantum security:
- Lattice-based cryptography (NTRU/ML-KEM family)
- Fused with BLS for 2-round finality
- Resistant to Shor's algorithm (quantum attacks)
@@ -150,7 +150,7 @@ Quasar Protocol
└── Round 2: Quantum Finality
├── Horizon (reachability analysis)
├── Flare (certificate verification)
└── Corona (PQ signatures)
└── Pulsar (PQ signatures)
```
## Performance
+5 -5
View File
@@ -131,8 +131,8 @@ Consensus Vote & 530 ns & 1.89M/sec & 792 B & 12 \\
All AI consensus communication uses QZMQ (Quantum-Secure ZeroMQ) with post-quantum cryptography:
\begin{itemize}
\item \textbf{Dilithium}: Post-quantum digital signatures (NIST standard)
\item \textbf{Kyber}: Post-quantum key encapsulation
\item \textbf{ML-DSA}: Post-quantum digital signatures (NIST standard)
\item \textbf{ML-KEM}: Post-quantum key encapsulation
\item \textbf{ChaCha20}: Symmetric encryption (quantum-resistant)
\end{itemize}
@@ -143,9 +143,9 @@ All AI consensus communication uses QZMQ (Quantum-Secure ZeroMQ) with post-quant
\toprule
\textbf{Operation} & \textbf{Latency} \\
\midrule
Sign (Dilithium) & 0.3 ms \\
Sign (ML-DSA) & 0.3 ms \\
Verify & 0.2 ms \\
Encrypt (Kyber) & 1.2 ms \\
Encrypt (ML-KEM) & 1.2 ms \\
Decrypt & 1.1 ms \\
\midrule
\textbf{Total Overhead} & \textbf{2.6 ms} \\
@@ -217,7 +217,7 @@ Real-world 3-node consensus cluster:
\item \textbf{Quantum-Resistant}: All communication via QZMQ
\item \textbf{Byzantine Fault Tolerant}: Handles $(n-1)/3$ malicious nodes
\item \textbf{AI-Verified}: Multiple AI agents validate each proposal
\item \textbf{Cryptographically Provable}: Dilithium signatures on all messages
\item \textbf{Cryptographically Provable}: ML-DSA signatures on all messages
\item \textbf{Forward Secure}: Past consensus cannot be compromised
\end{itemize}
+1 -1
View File
@@ -23,7 +23,7 @@ In our reference implementation (Go and Rust), we structure the codebase as:
\item \textbf{nova/nebula packages}: High-level consensus modes that use ray/field engines respectively for user-facing blockchain consensus.
\item \textbf{quasar package}: P-Chain implementation merging Corona threshold signatures with BLS aggregation for post-quantum finality across Nova/Nebula chains.
\item \textbf{quasar package}: P-Chain implementation merging Pulsar threshold signatures with BLS aggregation for post-quantum finality across Nova/Nebula chains.
\end{itemize}
\subsubsection{Interface Design}
+6 -6
View File
@@ -124,20 +124,20 @@ Lux Nebula forgoes the single-chain restriction to allow a DAG of transactions/b
\subsection{Quasar – P-Chain Post-Quantum Finality}
Lux Quasar operates as the Platform Chain (P-Chain) that provides post-quantum finality for both Nova and Nebula consensus modes. Quasar merges Corona threshold signatures with BLS aggregation to achieve quantum-resistant unified finality across the entire network.
Lux Quasar operates as the Platform Chain (P-Chain) that provides post-quantum finality for both Nova and Nebula consensus modes. Quasar merges Pulsar threshold signatures with BLS aggregation to achieve quantum-resistant unified finality across the entire network.
\textbf{P-Chain Architecture}: Quasar functions as the meta-consensus layer:
\begin{itemize}
\item \textbf{Validator Set Management}: P-Chain maintains the canonical validator set for all consensus instances
\item \textbf{Cross-Chain Finality}: Checkpoints finalize state across Nova chains and Nebula DAGs
\item \textbf{Threshold Coordination}: Combines Corona (post-quantum threshold) with BLS (classical aggregation) for hybrid security
\item \textbf{Threshold Coordination}: Combines Pulsar (post-quantum threshold) with BLS (classical aggregation) for hybrid security
\end{itemize}
\textbf{Corona + BLS Fusion}: The signature scheme combines:
\textbf{Pulsar + BLS Fusion}: The signature scheme combines:
\begin{itemize}
\item \textbf{Corona}: Post-quantum threshold signatures for quantum-resistant finality
\item \textbf{Pulsar}: Post-quantum threshold signatures for quantum-resistant finality
\item \textbf{BLS}: Classical signature aggregation for efficiency in benign conditions
\item \textbf{Hybrid Mode}: Classical BLS for speed, Corona checkpoints for quantum security
\item \textbf{Hybrid Mode}: Classical BLS for speed, Pulsar checkpoints for quantum security
\end{itemize}
\textbf{Event Horizon Finality}: Quasar establishes event horizons using the Horizon ordering algorithm:
@@ -145,7 +145,7 @@ Lux Quasar operates as the Platform Chain (P-Chain) that provides post-quantum f
\item \textbf{Event Horizon}: A finality boundary beyond which no events can affect the committed state
\item \textbf{Horizon Ordering}: Canonical ordering of vertices that have crossed the event horizon
\item \textbf{Reachability Analysis}: Uses DAG reachability to determine which vertices are beyond the horizon
\item \textbf{P-Chain Checkpoints}: Event horizons are signed with Corona + BLS for quantum-resistant finality
\item \textbf{P-Chain Checkpoints}: Event horizons are signed with Pulsar + BLS for quantum-resistant finality
\end{itemize}
\textbf{Unified Cross-Chain Finality}: Quasar event horizons provide:
+1 -1
View File
@@ -80,7 +80,7 @@ All implementations support these consensus engines (Quasar family):
1. **Wave** - Threshold voting with fast probabilistic consensus (production)
2. **Nova** - Linear chain consensus (wraps Ray sub-protocol)
3. **Nebula** - DAG consensus with safe-prefix commit (wraps Field sub-protocol)
4. **PostQuantum** - Quantum-resistant consensus with BLS + Corona + ML-DSA
4. **PostQuantum** - Quantum-resistant consensus with BLS + Pulsar + ML-DSA
5. **Chain** - Linear chain consensus for ordered blocks
6. **DAG** - Full directed acyclic graph consensus