
Prioritizzazione del costo del ritardo per la migrazione post-quantistica: rischio classico e harvest-now-decrypt-later in un'unica unità (USD all'anno). Codice, dimostrazioni, casi di studio, explorer live.
Explorer live · implementazione di riferimento, dimostrazioni, casi di studio e statistiche per un articolo di ricerca.
Rischio di hacking classico e rischio quantistico harvest-now-decrypt-later (HNDL), espressi in un'unica unità — dollari USA di perdita per anno di ritardo — così che un unico elenco ordinato possa rispondere a "dovremmo chiudere prima questa vulnerabilità classica, o migrare prima la crittografia di quell'asset?"
Stato: prototipo di ricerca. Tutti gli input dei casi di studio sono ipotesi derivate da documentazione pubblica; nessuna organizzazione ha fornito dati, e il metodo non è stato validato rispetto a incidenti o migrazioni reali. Vedi Avvertenze.
Gli attaccanti possono copiare dati cifrati oggi e decifrarli una volta che esisterà un computer quantistico su larga scala. Quanto questo conti dipende da quanto a lungo i dati devono rimanere segreti, se possono essere registrati, e se un attaccante ordinario li avrebbe presi prima. I punteggi di rischio post-quantistico esistenti sono adimensionali e solo quantistici, quindi non possono essere confrontati con il rischio classico, che si misura in dollari.
Questo repository calcola, per ogni asset, il costo di attendere un altro anno per ciascuna minaccia, in dollari, e li accoppia in modo che la stessa perdita non venga contata due volte. Contiene:
costofdelay/) con il modello, la legge di arrivo per un computer quantistico, la propagazione dell'incertezza, l'analisi di sensibilità e una verifica di scheduling;app/) che gira nel browser e spiega ogni input.| Idea | Termine classico = perdita annualizzata $\lambda V$. Termine quantistico = $r,h\int_0^L f_Q(t),e^{-(\lambda+\rho)t},dt$, il tasso al quale rinviare la migrazione impegna una perdita irreversibile. Entrambi in USD/anno; un fattore di rischi concorrenti impedisce che la stessa perdita venga contata due volte. |
| Dimostrato | Unità di misura, assenza di doppio conteggio, limiti, statica comparata, una soglia di dominanza in forma chiusa, non separabilità, e ottimalità dell'ordinamento secondo la regola di Smith (methodology/FORMAL_METHOD.md). |
| Verificato | 256 test automatizzati; verifiche incrociate Monte Carlo e a quadratura; una seconda implementazione (JavaScript) che corrisponde a 577 valori. |
| Valutato su | MOSIP (identità nazionale), Apache Fineract (banking), OpenMRS (cartelle cliniche), Online Boutique (demo shop, solo test della procedura). |
| Risultati principali | Il termine quantistico cambia le magnitudini e alcuni asset specifici in modo decisivo, ma sposta l'intero elenco meno di quanto faccia il rumore degli input per tre dei quattro sistemi. La data di arrivo del quantistico spiega solo il 3–17% dell'incertezza; perdita e turnover spiegano il 73–91% (methodology/STATISTICS.md). |
Richiede Python ≥ 3.10. Node ≥ 18 è opzionale (esegue la verifica sulla matematica dell'explorer).
git clone https://github.com/AnimeshShaw/pqc-cost-of-delay && cd pqc-cost-of-delay
python -m venv .venv && source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -r requirements.txt
python scripts/reproduce.py
reproduce.py esegue, in ordine: la suite di test → la validazione numerica → l'analisi statistica (results/) → le figure (paper/figures/, create se mancanti) → le tabelle dei parametri → i dati dell'explorer e la sua verifica cross-linguaggio. Richiede circa 2–4 minuti ed è deterministico (ogni procedura casuale ha un seed fisso). Successivamente git diff --stat results/ dovrebbe mostrare nessuna modifica, o differenze solo nell'ultima cifra stampata se le tue versioni di NumPy/SciPy differiscono. Le versioni esatte testate sono in requirements-lock.txt.
Per esplorare in modo interattivo, usa l'explorer live o apri app/index.html in locale. Non richiede un server, e il codice della pagina non effettua richieste di rete e non invia i tuoi input da nessuna parte (GitHub, come host, registra le normali visite alla pagina).
Per valutare il tuo registro:
python -m costofdelay.register path/to/asset_register.csv
Il formato CSV è descritto in methodology/PARAMETERS.md ed esemplificato in case_studies/.
| Percorso | Contenuto |
|---|---|
costofdelay/ | Il pacchetto Python: legge di arrivo del CRQC, modello dell'asset, scoring, un comparatore per il punteggio QARS pubblicato, incertezza e statistica, scheduling. Il nucleo dello scoring usa solo la libreria standard. |
tests/ | Test unitari, property test di ogni proposizione, baseline di confutazione |
methodology/ | Dimostrazioni; definizioni e ancore dei parametri; analisi statistica |
case_studies/ | I quattro registri di asset (CSV), uno per sistema |
scripts/ | Riproduzione, risultati, figure e tabelle |
results/ | Numeri generati (JSON, CSV, Markdown) |
app/ | Explorer interattivo (HTML/JavaScript) con un test di parità con Python |