
Приоритизация по стоимости задержки для постквантовой миграции: классический риск и риск harvest-now-decrypt-later в одной единице измерения (доллары США в год). Код, доказательства, примеры из практики, живой обозреватель.
Интерактивный исследователь · эталонная реализация, доказательства, примеры из практики и статистика для исследовательской работы.
Риск классического взлома и квантовый риск harvest-now-decrypt-later (HNDL), выраженные в одной единице измерения — долларах США потерь за год задержки — так что единый упорядоченный список может ответить на вопрос «что нам следует сделать в первую очередь: закрыть эту классическую уязвимость или мигрировать криптографию того или иного актива?»
Статус: исследовательский прототип. Все входные данные примеров из практики — это допущения, выведенные из публичной документации; ни одна организация не предоставляла данные, и метод не проверялся на реальных инцидентах или миграциях. См. Оговорки.
Злоумышленники могут скопировать зашифрованные данные сегодня и расшифровать их, как только появится достаточно мощный квантовый компьютер. Насколько это важно, зависит от того, как долго данные должны оставаться в секрете, можно ли их записать и не забрал бы их сначала обычный злоумышленник. Существующие оценки постквантового риска безразмерны и учитывают только квантовую угрозу, поэтому их нельзя сравнивать с классическим риском, который измеряется в долларах.
Этот репозиторий вычисляет для каждого актива стоимость ожидания ещё одного года от каждой угрозы в долларах и связывает их так, чтобы один и тот же ущерб не учитывался дважды. Он содержит:
costofdelay/) с моделью, законом времени наступления для квантового компьютера, распространением неопределённости, анализом чувствительности и проверкой планирования;app/), который работает в браузере и поясняет каждое входное значение.| Идея | Классический член = годовые потери $\lambda V$. Квантовый член = $r,h\int_0^L f_Q(t),e^{-(\lambda+\rho)t},dt$ — скорость, с которой откладывание миграции приводит к необратимым потерям. Оба в USD/год; фактор конкурирующих рисков не даёт учесть один и тот же ущерб дважды. |
| Доказано | Единицы измерения, отсутствие двойного учёта, границы, сравнительная статика, порог доминирования в замкнутой форме, несепарабельность и оптимальность упорядочивания по правилу Смита (methodology/FORMAL_METHOD.md). |
| Проверено | 256 автоматических тестов; перекрёстные проверки методом Монте-Карло и квадратур; вторая реализация (на JavaScript), совпадающая по 577 значениям. |
| Оценено на | MOSIP (национальное удостоверение личности), Apache Fineract (банковское дело), OpenMRS (медицинские записи), Online Boutique (демонстрационный магазин, только проверка процедуры). |
| Ключевые результаты | Квантовый член решительно меняет масштабы и несколько конкретных активов, но для трёх из четырёх систем сдвигает весь список меньше, чем шум входных данных. Дата наступления квантовой угрозы объясняет лишь 3–17% неопределённости; потери и оборот объясняют 73–91% (methodology/STATISTICS.md). |
Требуется Python ≥ 3.10. Node ≥ 18 необязателен (он запускает проверку математики исследователя).
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 запускает по порядку: набор тестов → численную валидацию → статистический анализ (results/) → графики (paper/figures/, создаются при отсутствии) → таблицы параметров → данные исследователя и его кросс-языковую проверку. Это занимает примерно 2–4 минуты и детерминировано (у каждой случайной процедуры фиксированное зерно). После этого git diff --stat results/ должен показать отсутствие изменений или различия только в последней выводимой цифре, если ваши версии NumPy/SciPy отличаются. Точные протестированные версии указаны в requirements-lock.txt.
Для интерактивного исследования используйте интерактивный исследователь или откройте app/index.html локально. Сервер не нужен, код страницы не выполняет сетевых запросов и никуда не отправляет ваши входные данные (GitHub как хостинг регистрирует обычные посещения страниц).
Чтобы оценить собственный реестр:
python -m costofdelay.register path/to/asset_register.csv
Формат CSV описан в methodology/PARAMETERS.md и проиллюстрирован в case_studies/.
| Путь | Содержимое |
|---|---|
costofdelay/ | Пакет Python: закон наступления CRQC, модель актива, оценка, компаратор для опубликованной оценки QARS, неопределённость и статистика, планирование. Ядро оценки использует только стандартную библиотеку. |
tests/ | Модульные тесты, property-тесты каждого утверждения, базовые линии опровержения |
methodology/ | Доказательства; определения и привязки параметров; статистический анализ |
case_studies/ | Четыре реестра активов (CSV), по одному на систему |
scripts/ | Воспроизведение, результаты, графики и таблицы |
results/ | Сгенерированные числа (JSON, CSV, Markdown) |
app/ | Интерактивный исследователь (HTML/JavaScript) с тестом паритета с Python |