Конец эпохи криптографических подозрений
Двадцать пять лет криптографическое сообщество жило в состоянии тихой паранойи, пытаясь разгадать происхождение так называемых "зерен" (seeds) - начальных параметров, на основе которых строятся эллиптические кривые стандарта ECDSA. Этот алгоритм цифровой подписи был принят Национальным институтом стандартов и технологий США в 2000 году в рамках спецификации FIPS 186-2 и с тех пор стал фундаментальным элементом защиты данных в интернете, банковских транзакциях и государственных системах связи. Проблема заключалась в том, что Агентство национальной безопасности США передало эти параметры институту без каких-либо математических обоснований или объяснений их происхождения. Отсутствие прозрачности породило устойчивую теорию о наличии скрытого бэкдора, позволяющего спецслужбам дешифровать трафик. Теперь исследовательская команда компании Anthropic заявила, что их внутренняя модель искусственного интеллекта Claude окончательно закрыла этот вопрос, доказав банальную, но успокаивающую природу этих чисел.
Анатомия двадцатипятилетней загадки
Для понимания масштаба проблемы необходимо разобраться в архитектуре генерации эллиптических кривых. В спецификациях для кривых над простыми и двоичными полями публиковались специальные хеш-значения, определяющие коэффициент уравнения кривой. Например, для популярной кривой P-256 использовалось зерно C49D3608 86E70493 6A6678E1 139D26B7 819F7E90. Никто в академической среде не знал, откуда взялась эта шестнадцатеричная последовательность. Выдающиеся математики Нил Коблиц и Альфред Менезес посвятили этой проблеме детальное исследование под названием "Загадка, завернутая в тайну", которое лишь подогрело интерес к поиску истины. За разгадку даже был объявлен денежный приз.
На протяжении многих лет единственной правдоподобной версией оставалась история Джерри Солинаса, ветерана Агентства национальной безопасности. В 2015 году он утверждал, что его коллега Боб Райтер написал код, генерирующий зерна путем хеширования шуточной фразы вроде "Поднимите зарплату Бобу и Джерри". Однако после смерти Солинаса в 2023 году проверить эту версию стало невозможно, а архивы девяностых годов бесследно исчезли. Попытки энтузиастов подобрать хеш от юмористических фраз неизменно заканчивались провалом, что оставляло пространство для самых мрачных конспирологических сценариев.
Как искусственный интеллект взломал исторический тупик
Прорыв произошел в октябре 2026 года, когда один из сотрудников Anthropic решил проверить возможности внутренней исследовательской модели Claude, попросив ее выяснить механизм генерации зерен без подсказок о шуточных фразах. Менее чем за тридцать минут вычислений нейросеть установила, что никакие хеш-функции и текстовые строки здесь вообще не применялись. Искусственный интеллект сменил парадигму поиска: вместо лингвистического анализа он начал анализировать архитектуру программного обеспечения девяностых годов.
Claude предположил, что разработчики использовали стандартный генератор псевдослучайных чисел из библиотек языка Си того времени. Модель написала сканер, который побитово проходил по опубликованным зернам и проверял, являются ли смежные фрагменты последовательными выводами старых генераторов. Ключевой подсказкой стала статистическая аномалия: старшие биты некоторых зерен были обнулены. Вероятность случайного совпадения такого паттерна составляла один к миллиарду. Это было точной сигнатурой линейного конгруэнтного генератора lrand48, который возвращает только верхние 31 бит из своего 48-битного внутреннего состояния.
Восстановление полного состояния усеченного генератора представляет собой классическую задачу теории решеток. Для ее решения модель применила алгоритм редукции базиса Ленстры-Ленстры-Ловаса (LLL). Перебрав все возможные окна битов, Claude обнаружил единый паттерн для всех десяти исследуемых зерен. Поскольку линейные конгруэнтные генераторы легко обращаются вспять, модель начала отматывать состояние назад до момента инициализации функцией srand48. Результат оказался поразительным: начальными значениями служили обычные метки времени Unix. Зерна для простых кривых генерировались в период с мая 1997 по апрель 1998 года, а для двоичных - в апреле 1998 года. Алгоритм просто брал системные часы компьютера, запускал слабый генератор случайных чисел и делал нужное количество итераций. Для кривой P-256 потребовалось ровно 1842 итерации, чтобы получить стандартизированное значение.
Разгадка базовых точек и нерешенные вопросы
Помимо самих зерен, каждая эллиптическая кривая требует определения базовой точки G, которая используется при генерации открытых ключей. Происхождение этих точек оставалось еще одной белой зоной в документации. Параллельно с анализом зерен, Claude смог восстановить методологию создания базовых точек для шести кривых, сгенерированных в мае 1997 года. Оказалось, что они были получены с помощью генератора случайных чисел из пакета длинной арифметики FreeLIP, созданного Арленом Ленстрой. Этот же код поставлялся в ранних версиях библиотеки NTL Виктора Шоупа. Процесс выглядел тривиально: генератор инициализировался небольшим целым числом, первые семь результатов отбрасывались, а затем из 26-битных выводов формировались координаты до тех пор, пока точка не оказывалась на кривой. Например, для кривой P-192 начальным числом послужило значение 20000.
Несмотря на колоссальный успех, исследование оставило несколько открытых вопросов. Не каждое сгенерированное зерно подходило для создания криптографически стойкой кривой, и исследователи заметили, что некоторые потенциально пригодные варианты были пропущены разработчиками. Для P-256 опубликованное зерно является кандидатом номер 1842, хотя кандидат номер 876 из того же запуска также давал кривую правильного размера. Причины такого выбора остаются неизвестными, однако малое количество пропусков делает версию о целенаправленном подборе ослабленных параметров крайне маловероятной. Кроме того, модель так и не смогла объяснить происхождение пятого двоичного зерна B-163, а также базовых точек для более крупных кривых P-224, P-256, P-384 и P-521. Объявленный ранее денежный приз в размере 36 864 доллара будет передан организации Internet Security Research Group.
Архитектурное значение открытия для индустрии
Проделанная работа не является криптографической атакой и не выявляет уязвимостей в самом алгоритме ECDSA. Напротив, она радикально повышает уровень доверия к инфраструктуре открытых ключей, на которой держится современный интернет. Если бы зерна действительно генерировались через сложные хеш-функции от секретных фраз, это оставляло бы пространство для манипуляций со стороны создателей. Использование примитивного генератора псевдослучайных чисел, инициализированного системными часами, полностью исключает возможность внедрения математических закладок. Любой инженер теперь может воспроизвести весь процесс генерации параметров самостоятельно, убедившись в их чистоте.
С точки зрения развития технологий искусственного интеллекта, этот кейс демонстрирует качественный скачок в применении больших языковых моделей. Мы наблюдаем переход от генерации текста к автономному проведению сложных междисциплинарных исследований, требующих глубокого понимания криптографии, теории чисел, истории вычислительной техники и реверс-инжиниринга. Способность нейросети самостоятельно сформулировать гипотезу о применении алгоритма LLL для взлома усеченного линейного конгруэнтного генератора показывает, что подобные системы начинают оперировать абстрактными математическими концепциями на уровне профессиональных исследователей. Двадцатипятилетняя загадка, над которой бились лучшие умы отрасли, была решена машиной за полчаса, что неизбежно изменит подход к аудиту криптографических стандартов в будущем.