VAES
VAES обеспечивает операции раундов AES с векторным кодированием, позволяя обрабатывать независимые блоки AES в более широких регистрах там, где это допускает поддерживаемая форма инструкции. Она идентифицируется отдельно от устаревшей AES-NI.
Что необходимо знать
VAES обеспечивает операции раундов AES с векторным кодированием, позволяя обрабатывать независимые блоки AES в более широких регистрах там, где это допускает поддерживаемая форма инструкции. Она идентифицируется отдельно от устаревшей AES-NI.
Как это работает
Более широкие операции VAES применяют раунды AES независимо к 128-битным блокам внутри вектора. Они не изменяют размер блока AES и не объединяют эти блоки в новый шифр. Формы VEX и EVEX имеют собственные требования к функциям и состоянию, а окружающий режим определяет, доступны ли независимые блоки для совместной обработки.
Области применения
Режимы на основе счетчика могут предоставлять несколько независимых блоков векторизованной реализации. Последовательная зависимость в режиме или очень короткое сообщение могут ограничить эту возможность. Аутентификация, расширение ключа и работа с памятью остаются отдельными частями реализации.
Как проверить поддержку и активацию
CPUID.07H.00H:ECX бит 9 перечисляет VAES. Также следуйте предварительным требованиям SDM для выбранной формы VEX или EVEX, включая соответствующую возможность AES/векторов и состояние, активированное ОС. Выполняйте диспетчеризацию по точной форме инструкции, а не только по общему названию функции.
Используйте поддерживаемую криптографическую библиотеку, которая берет на себя выбор инструкций, обработку сбойных состояний и полное исполнение алгоритма. Аппаратное ускорение предоставляет только примитивы; управление ключами, аутентификация, правила работы с nonce и выбор протокола остаются задачами программного обеспечения.
Чего не гарантирует данная функция
VAES не означает, что у AES увеличился размер блока, стал более стойким ключ или появилось автоматическое ускорение для каждого зашифрованного приложения. Она не гарантирует наличие VPCLMULQDQ или каждого подмножества AVX-512, а также не обеспечивает управление одноразовыми номерами (nonce) или аутентификацию протокола.
Совместимость и производительность на практике
Поле с указанием функции не является сертификатом продукта или доказательством того, что конкретное приложение безопасно. Производительность зависит от размеров сообщений, режима, пакетирования и остальных частей протокола. Проверяйте фактического поставщика библиотеки и своевременно устанавливайте его обновления безопасности.
Практический чек-лист для проверки
- Зафиксируйте точную модель процессора или платформы, а также задействованные версии приложения, ОС и среды выполнения. Сохраните точную формулировку возникшей ошибки или требования.
- Сверьтесь со справочными материалами производителя для этой точной модели, затем проверьте действующую поддержку и состояние активации в окружении, где выполняется программа.
- Сопоставьте каждое требование выбранного бинарного файла или бэкенда. Похожего названия функции, псевдонима или общего маркетингового обозначения технологии недостаточно.
- Убедитесь, что приложение выбрало предполагаемую реализацию. Используйте его документированные средства диагностики и поддерживаемый резервный код при несоблюдении требований.
- Вносите по одному поддерживаемому изменению за раз и повторяйте ту же рабочую нагрузку. Сохраняйте исходную конфигурацию и возможность отката.
Если функция указана в списке, но ПО не может ее использовать
Начните с точного сбойного компонента. База данных оборудования описывает зафиксированные возможности; операционная система или гипервизор могут предоставлять иное фактическое окружение. Ошибка недопустимой инструкции также требует анализа конкретной сбойной команды и сборки бинарного файла, так как повреждение данных или сторонняя неподдерживаемая инструкция могут вызывать аналогичный симптом.
Установите версию приложения, драйвера или среды выполнения, поддерживаемую для данной платформы, и при необходимости используйте документированную производителем базовую или резервную сборку. Обновление ПО не может создать инструкцию, отсутствующую в процессоре. Изменения микрокода и политик безопасности должны выполняться по процедуре производителя системы и с планом восстановления, а не по общим шаблонам оптимизации.
Источники и границы применимости пояснения
Руководство разработчика программного обеспечения для архитектур Intel 64 и IA-32 · Ядро Linux: использование функций XSTATE в пространстве пользователя
Эти материалы определяют архитектурное поведение и требования к программному обеспечению. Они не подтверждают независимо каждое значение параметров на странице конкретной модели оборудования. Для проверки поддержки моделью используйте данные производителя на этой странице и проверяйте действующую конфигурацию системы. Данная статья не содержит результатов тестов производительности, сертификатов или дат независимых обзоров.
Источники и проверка
Редакционная принадлежность: Feex. Дата независимой проверки не зарегистрирована. Как мы проводим исследования.
- Руководство разработчика программного обеспечения для архитектур Intel 64 и IA-32 · Тома 1 и 2 описывают указанные семейства инструкций и CPUID; том 3 описывает управление состоянием, страничную адресацию, VMX и средства защиты. Архитектурная документация не определяет факт поддержки конкретной моделью.
- Ядро Linux: использование функций XSTATE в пространстве пользователя · Включение векторного состояния операционной системой, динамическое подключение состояния плиток, требования к стеку сигналов и процедура запроса прав AMX. Поведение, специфичное для Linux, не гарантируется в других ОС.
Была ли эта статья полезна?
Достаточно ответа "да" или "нет". При желании выберите причину или оставьте короткую заметку.
Спасибо. Это помогает нам улучшать эту страницу.