AI-модель Claude воссоздала формирование seed-параметров стандартных эллиптических кривых ECDSA

Компания Anthropic объявила об успешном определении происхождения исходных seed-параметров, задающих форму эллиптических кривых ECDSA P-192, P-224, P-256, P-384 и P-521, стандартизированных Национальным институтом стандартов и технологий США (NIST). Воссозданный AI-моделью Claude алгоритм генерации seed-параметров подтверждает надёжность ECDSA и опровергает популярную конспирологическую теорию о том, что исходные параметры для стандартизированных эллиптических кривых, изначально разработанных в АНБ, были специально подобраны для оставления слабых мест, компрометирующих алгоритмы цифровой подписи ECDSA.

Появлению подобной теории заговора способствовала непрозрачность процесса выбора seed-параметров на фоне выявление потенциального бэкдора в генераторе псевдослучайных чисел Dual_EC_DRBG, входившем в стандарт NIST. Информация о том, как были сгенерированы параметры для инициализации стандартизированных в NIST эллиптических кривых не раскрывалась. Предполагалось, что параметры были созданы в 1997 году на основе хэшей от фраз, экспромтом придуманных Джерри Солинасом (Jerry Solinas), но затем забытых.

В ходе проведённого в Anthropic исследования AI-модель Claude определила, что seed-параметры были созданы с использованием псевдослучайных чисел, полученных при помощи входящей в стандартную Си-библиотеку функции lrand48, инициализированной значениями текущего эпохального времени. Наводкой на возможность использования случайных чисел, полученных через функцию drand48, послужили характерные для её использования шаблоны, такие как возврат только старших 31 бит из 48-битного внутреннего состояния генератора псевдослучайных чисел.

Для восстановления состояния генератора псевдослучайных чисел AI-модель воспользовалась алгоритмом редукции базиса, после чего перебором сопоставляла SHA-1 хэши от выдаваемых lrand48 наборов чисел с имеющимися seed-параметрами. Попытки повторялись c переинициализацией генератора через функцию srand48() для моментов времени в 1997-1998 годах, в которых происходила разработка ECDSA. При этом оказалось, что не все подходящие для надёжных эллиптических кривых значения принимались создателями ECDSA, некоторые значения пропускались, но подобные единичные пропуски трактуются не как злонамеренные действия, а как отсутствие точных сведений о критериях выбора.

Для шести вариантов эллиптических кривых ECDSA также удалось определить происхождение базовых точек, которые оказались сгенерированы с помощью генератора псевдослучайных чисел из библиотеки FreeLIP с использованием простых значений инициализации, таких как 20000 для P-192 и 20420 для prime239v1.

За определение происхождения seed-параметров исследователям из Anthropic присуждена учреждённая три года назад премия в $36864, которую команда исследователей пожертвовала некоммерческой организации ISRG, развивающей проект Let’s Encrypt. Учредивший премию криптограф Филиппо Валсорда (Filippo Valsorda) заявил, что теперь лично ставит кривые ECDSA выше Curve25519, Ed25519 и X25519 и будет рекомендовать их в первую очередь.

Источник: http://www.opennet.ru/opennews/art.shtml?num=66497