← Назад

research

Проверка криптографии на Rust в SymCrypt с использованием формальных методов

Microsoft Research разработала методологию формальной проверки криптографического кода на Rust в рамках проекта SymCrypt, что обеспечивает более высокий уровень безопасности и соответствия стандартам. Использование Lean и AI-агентов позволяет автоматизировать и масштабировать процесс верификации.

AS1 NewsИсточник: microsoft.com

cryptographyformal-verificationrustleanai-agentssymcryptsecurity

В статье описывается новая методика верификации криптографического кода, реализуемого на Rust, с помощью формальных доказательств в системе Lean. Этот подход позволяет не только подтвердить правильность реализации стандартных алгоритмов, таких как SHA-3 и ML-KEM, но и сохранить при этом высокую производительность и оптимизацию кода. Важной особенностью является использование инструмента Aeneas, который автоматизирует перевод Rust-кода в формальные модели, что значительно ускоряет процесс проверки.

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

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

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

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

нейтрально

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