
Демонстрирует критическую подделку подписи SPHINCS+ WOTS+, вызванную слабой случайностью и повторным использованием nonce, восстанавливая секреты из двух пар подписи (r,s).
Реализация постквантовой схемы подписи SPHINCS+ использует некорректный генератор случайных чисел при генерации подписи WOTS+. Одно и то же значение nonce k повторно используется в нескольких подписях, что позволяет атакующему восстановить закрытый ключ и подделывать произвольные сообщения.
k для каждой подписи. Повторное использование k раскрывает алгебраические соотношения, которые выдают сид.Запустите симуляцию:
python sphincs_forge.py
python exploit_sphincs_forge.py
Вывод показывает, что создаются слабые подписи. Реальный атакующий смог бы вычислить закрытый ключ, используя две пары (r,s) с одним и тем же k.