rename: Corona → Corona (canonical R-LWE threshold)

Removes Corona references from docs, Rust SDK type names, Python
SDK signature scheme tags, and the audit ledger. Corona is the
canonical name for the R-LWE threshold primitive in the Quasar
consensus stack alongside Pulsar (Module-LWE) and Magnetar (hash).

Rust changes: rename corona_sig → corona_sig, corona_pubkey →
corona_pubkey, collect_corona_signatures → collect_corona_signatures.
Python changes: rename SIG_CORONA → SIG_CORONA.
This commit is contained in:
2026-06-02 03:26:38 -07:00
parent 92b6f9a25b
commit 783a66a8ce
4 changed files with 5 additions and 5 deletions
+1 -1
View File
@@ -212,7 +212,7 @@ is itself ~3× slower than ML-DSA so break-even comes earlier).
| Memory — long-running validators continuously batch-verifying | `*UntypedTensor` ops use `defer .Close()` consistently in `crypto/mldsa/gpu.go`. New `crypto/slhdsa/gpu.go` mirrors the same. Verified no leak via existing soak tests. |
| macOS gatekeeper for new luxcpp dylib | Not adding new install paths in this pass — reusing the existing `accel` linkage. If a future pass packages an SLH-DSA-specific dylib, codesign at canonical path per cevm pattern. |
| Backwards compat for `LUX_CONSENSUS_PQ_MODE` | Keep reading the `LUX_*` form alongside the new `CONSENSUS_PQ_MODE`. Unprefixed wins if both set. Document in `pq_mode.go` doc-comment. |
| Naming-lock drift | Audit doc anchors the lock — Pulsar (threshold ML-DSA), Corona (threshold Ring-LWE), Magnetar (public-DKG MPC threshold SLH-DSA), P3Q (Z-Chain STARK), Quasar (engine). Cert profiles Pulsar / Aurora / Polaris. No Wing names, no Corona brand on the consensus surface. |
| Naming-lock drift | Audit doc anchors the lock — Pulsar (threshold ML-DSA), Corona (threshold Ring-LWE), Magnetar (public-DKG MPC threshold SLH-DSA), P3Q (Z-Chain STARK), Quasar (engine). Cert profiles Pulsar / Aurora / Polaris. No Wing names on the consensus surface. |
## Final verdict per primitive
+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 |
| Pulsar | `Crypto/Corona.lean` | 2 | Post-quantum threshold signatures |
| Corona | `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
@@ -78,7 +78,7 @@ consensus/
│
├── protocol/
│ ├── quasar/ # Post-quantum security
│ │ └── corona.go # Quantum-resistant signatures
│ │ └── corona_gob.go # Quantum-resistant signatures
│ ├── nebula/ # DAG consensus mode (wraps field)
│ └── nova/ # Linear chain consensus mode (wraps ray)
│
+2 -2
View File
@@ -226,7 +226,7 @@ pub mod types {
#[derive(Debug, Clone)]
pub struct QuasarSignature {
pub bls_sig: Vec<u8>, // BLS signature (48 bytes)
pub corona_sig: Vec<u8>, // Corona post-quantum signature
pub corona_sig: Vec<u8>, // Corona post-quantum signature
pub signer: NodeID,
}
@@ -1113,7 +1113,7 @@ pub mod quasar {
pub weight: u64,
pub active: bool,
pub bls_pubkey: Option<Vec<u8>>, // BLS12-381 public key (96 bytes)
pub corona_pubkey: Option<Vec<u8>>, // Corona post-quantum public key
pub corona_pubkey: Option<Vec<u8>>, // Corona post-quantum public key
}
/// Quasar hybrid consensus with post-quantum signatures