Прескачане към съдържанието

VAES

Архитектурна справкаFeex

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/векторна възможност и разрешеното от ОС състояние. Извършвайте диспечиране според точната форма на инструкцията, а не само според общото име на функцията.

Използвайте поддържана криптографска реализация, която управлява избора на функции, условията за грешки и пълния алгоритъм. Хардуерното ускорение предоставя примитиви; управлението на ключове, автентификацията, правилата за еднократни числа и изборът на протокол остават отговорност на софтуера.

Какво не гарантира тази функция

VAES не означава, че AES има по-голям размер на блока, по-силен ключ или автоматично ускорение за всяко криптирано приложение. Тя не въвежда VPCLMULQDQ или всяко подмножество на AVX-512 и не осигурява управление на nonce или протоколно удостоверяване.

Съвместимост и производителност на практика

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

Практически контролен списък за проверка

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

Ако функцията е посочена, но софтуерът не може да я използва

Започнете с точния компонент, който дава грешка. Хардуерната база данни описва записаните възможности; операционната система или хипервайзорът могат да предоставят различна ефективна среда. Грешка за невалидна инструкция (illegal-instruction) също изисква разследване на действителната сриваща се инструкция и компилацията на двоичния файл, тъй като повреда или несвързана неподдържана инструкция може да предизвика подобен симптом.

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

Източници и обхват на това обяснение

Intel 64 and IA-32 Architectures Software Developer's Manual · Linux ядро: използване на XSTATE функции в потребителското пространство

Тези източници установяват архитектурното поведение и софтуерните изисквания. Те не проверяват независимо всяка стойност на параметър на свързана страница за хардуерен модел. За поддръжка на даден модел използвайте данните от производителя на съответната страница и проверете ефективната системна конфигурация. Тази статия не предоставя бенчмарк, сертификация или дата на независим преглед.

Източници и проверка

Редакционна собственост: Feex. Не е записана дата на независим преглед. Как проучваме.

  • Intel 64 and IA-32 Architectures Software Developer's Manual · Томове 1 и 2 описват посочените семейства инструкции и CPUID; Том 3 описва състоянието, страницирането, VMX и контролите за защита. Документацията за архитектурата не гарантира поддръжка за конкретен модел.
  • Linux ядро: използване на XSTATE функции в потребителското пространство · Активирано от ОС векторно състояние, динамично активирано състояние на блокове, изисквания към сигналния стек и процес за разрешение на AMX. Специфичното за Linux поведение не представлява обещание за друга операционна система.

Беше ли полезна тази статия?

Достатъчно е "да" или "не". Изберете причина, ако желаете, или добавете кратка бележка.

Беше ли полезна тази статия?