Cloudflare создаёт CryptoLabe для поиска криптографии в коде с помощью ИИ

Внутренний инструмент CryptoLabe анализирует код, конфигурации и зависимости Cloudflare, чтобы находить криптографические операции и планировать переход на постквантовые алгоритмы к 2029 году.

Схема работы CryptoLabe для поиска и анализа криптографии в кодовой базе Cloudflare
Схема работы CryptoLabe для поиска и анализа криптографии в кодовой базе Cloudflare
Изображение из исходного материала

Cloudflare разрабатывает CryptoLabe — внутренний ИИ-инструмент, который ищет криптографические операции в кодовой базе компании, восстанавливает контекст их использования и помогает планировать переход на постквантовые алгоритмы. Цель компании — добиться полной постквантовой готовности своей платформы к 2029 году.

О проекте Cloudflare рассказала в техническом блоге. CryptoLabe пока не является продуктом для клиентов: система связана с внутренними репозиториями, документацией и сервисами управления задачами компании. Cloudflare публикует устройство подхода как практический пример применения ИИ для анализа большой и неоднородной программной инфраструктуры.

Почему обычного поиска по коду оказалось недостаточно

Первый шаг любой криптографической миграции — составить перечень алгоритмов, библиотек, протоколов и зависимостей, которые используются в действующих системах. На практике поиск строк RSA, ECDSA или X25519 даёт неполную картину.

Поиск по шаблонам может учитывать код, который не выполняется, тестовые файлы и устаревшие компоненты. Одновременно он пропускает алгоритмы, выбранные библиотекой по умолчанию, косвенные вызовы через зависимости и настройки в конфигурационных файлах.

Название алгоритма также не объясняет назначение операции. Например, подпись ECDSA может применяться в JWT, TLS, SSH или IPsec. Для каждого из этих случаев потребуются отдельный порядок обновления, совместимость с другими участниками соединения и собственный набор стандартов.

CryptoLabe должен анализировать цепочку свидетельств: где находится вызов, какой компонент выполняет его в рабочей среде, от каких внешних систем он зависит и какую роль криптография играет в конкретном протоколе. Именно восстановление контекста Cloudflare считает задачей, для которой ИИ полезнее простого поиска по ключевым словам.

Два этапа работы CryptoLabe

Сканирование разделено на обнаружение и последующий анализ.

На первом этапе система составляет карту репозитория и проверяет:

  • исходный код;
  • конфигурации;
  • манифесты и файлы фиксации зависимостей;
  • сценарии сборки и обслуживания;
  • тесты;
  • техническую документацию.

CryptoLabe ищет операции согласования ключей, цифровые подписи, асимметричное шифрование, инфраструктуру открытых ключей, токены, учётные данные и интеграции с аппаратными модулями безопасности. Результатом становятся «сырые наблюдения» — потенциальные случаи применения криптографии, которые ещё нельзя считать подтверждёнными.

На втором этапе ИИ-модель повторно проверяет каждое наблюдение по исходному коду. Она пытается определить поведение операции во время выполнения, назначение репозитория и связанные внутренние или внешние компоненты. При необходимости анализ распространяется на другие репозитории.

Перед классификацией система ищет противоречащие выводам данные: переопределения настроек, тестовый код или ошибочные предположения о поведении программы. Если контекста недостаточно, CryptoLabe должен использовать категории «Требуются дополнительные данные», «Внешняя зависимость» или «Неизвестно», а не формулировать уверенный ответ.

Такой механизм снижает риск ложной уверенности, но сам по себе не доказывает точность результатов. Cloudflare не опубликовала показатели полноты поиска, долю ложных срабатываний, название используемой модели или результаты независимой проверки CryptoLabe. Поэтому проект пока следует рассматривать как внутренний инженерный эксперимент, а не как подтверждённую замену аудита безопасности.

Миграция включает шифрование и аутентификацию

Cloudflare выделяет три задачи проекта. Компания хочет дать инженерам карту текущего использования криптографии, измерять прогресс по продуктам и репозиториям, а также заранее обнаруживать внешние препятствия.

Последний пункт особенно важен: отдельная команда не сможет завершить миграцию, если нужный протокол ещё не получил постквантовый вариант, стандарт остаётся несогласованным или используемая библиотека не поддерживает новые алгоритмы. CryptoLabe должен выявлять такие зависимости до того, как они превратятся в блокирующий фактор.

Компания сообщает, что уже перевела многие продукты на постквантовое шифрование соединений через TLS 1.3. Однако остаются менее распространённые подключения и другие сценарии применения открытых ключей. Работа над постквантовой аутентификацией, по оценке самой Cloudflare, находится на более ранней стадии.

Различие принципиально. Защита согласования ключей решает задачу конфиденциальности будущих сеансов, тогда как подписи и аутентификация требуют обновления сертификатов, доверенных компонентов, протоколов и программ на обеих сторонах взаимодействия.

Контекст для этой миграции уже сформирован стандартами. В 2024 году американский Национальный институт стандартов и технологий опубликовал первые три завершённых постквантовых стандарта: ML-KEM для установления общего секрета, а также ML-DSA и SLH-DSA для цифровых подписей. Ход программы стандартизации и связанные документы NIST собраны на странице проекта Post-Quantum Cryptography.

Чем проект интересен разработчикам ИИ-инструментов

CryptoLabe показывает сценарий, в котором модель используется не для генерации нового кода, а для инвентаризации уже работающей инфраструктуры. В этой задаче ценность ответа зависит от доступа к нескольким видам контекста: исходникам, конфигурациям, документации, истории задач и связанным репозиториям.

Подход близок к агентному анализу кода. Система выполняет последовательность действий, собирает доказательства из разных источников, проверяет первоначальный вывод и возвращает структурированную классификацию. Однако из описания Cloudflare нельзя установить, насколько автономен этот процесс и на каких этапах требуется участие инженера.

Остаётся открытым и вопрос воспроизводимости. Cloudflare использует централизованную платформу управления исходным кодом, что упрощает поиск. В компании с разрозненными репозиториями, закрытыми системами поставщиков или неполной документацией такой анализ может давать существенно меньше полезного контекста.

CryptoLabe также нельзя считать универсальным сканером уязвимостей. Его основная задача — обнаружить применение криптографии, понять назначение и определить возможный маршрут миграции. Наличие классического алгоритма в коде само по себе не означает уязвимость: значение имеют протокол, параметры, срок жизни данных и поддержка со стороны других участников системы.

Что можно проверить в собственной инфраструктуре

Командам, планирующим похожий ИИ-анализ, имеет смысл сначала провести ограниченный тест на одном репозитории с известной архитектурой. Практическая проверка может включать четыре шага:

Сравнить находки модели с результатами поиска по коду и стандартного анализа зависимостей.
2. Проверить, отличает ли система рабочий код от тестов, примеров и неиспользуемых модулей.
3. Потребовать для каждой классификации ссылки на конкретные файлы, настройки и зависимости.
4. Отдельно измерить пропуски и ложные срабатывания, не объединяя их в общий показатель качества.

Документация Cloudflare по постквантовой криптографии в своих сервисах позволяет сверить публично доступные варианты поддержки с внутренней задачей, описанной для CryptoLabe. При этом компания пока не сообщила о планах открыть код инструмента или предоставить к нему доступ клиентам. До появления технических метрик и независимых испытаний наиболее полезная часть публикации — сама двухэтапная схема поиска, проверки контекста и явной фиксации неопределённости.

Источники