ЧЕРЕЗ PadLock - VIA PadLock

ЧЕРЕЗ PadLock это центральное процессорное устройство (ЦПУ) Набор инструкций расширение x86 микропроцессор архитектура набора команд (ISA) встречается на процессорах производства VIA Technologies и Чжаосинь. Представлен в 2003 году с ВИА Кентавр ЦП дополнительные инструкции обеспечивают аппаратное ускорение генерация случайных чисел (ГСЧ), Расширенный стандарт шифрования (AES), SHA-1, SHA256, и Модульное умножение Монтгомери.[1][2]

инструкции

Набор инструкций PadLock можно разделить на четыре подмножества:[1]

  • Генерация случайных чисел (ГСЧ)
    • XSTORE: Хранить доступные случайные байты (также известные как XSTORERNG)
    • REP XSTORE: Хранить случайные байты ECX
  • Advanced Cryptography Engine (ACE) - для шифрования AES; две версии
  • Механизм хеширования SHA (PHE)
    • REP XSHA1: Хеш-функция SHA-1
    • REP XSHA256: Хеш-функция SHA-256
  • Множитель Монтгомери (PMM)
    • REP MONTMUL

Возможность навесного замка обозначается значком CPUID инструкция с EAX = 0xC0000000. Если результирующий EAX> = 0xC0000001, ЦП знает о возможностях Centaur. Дополнительный запрос с EAX = 0xC0000001 затем возвращает поддержку PadLock в EDX. Замок можно включить или выключить с помощью MSR 0X1107.[1]

VIA PadLock обнаружен на некоторых Чжаосинь Процессоры имеют SM3 хеширование и SM4 добавлен блочный шифр.[3]

Процессоры с PadLock

  • Все процессоры VIA Nano поддерживают SHA, AES и RNG.
  • Все процессоры VIA Eden с 2003 года (C3 Nehemiah) поддерживают AES и RNG. Все они, выпущенные с 2006 года, поддерживают AES, RNG, SHA и PMM.
  • Все процессоры VIA C7 поддерживают AES, RNG, SHA и PMM.

Вспомогательное программное обеспечение

  • Ядро Linux начиная с 2.6.11 имеет PadLock AES. PadLock SHA был представлен в 2.6.19. Они обрабатываются как «аппаратные криптоустройства».[4]
  • OpenBSD и FreeBSD поддержка PadLock.[5]
  • OpenSSL поддерживает PadLock AES и SHA с 2004 года (0.9.7f / 0.9.8a).[6]
  • Ассемблер GNU поддерживает PadLock с 2004 года.[7]

Смотрите также

Рекомендации

  1. ^ а б c "Руководство по программированию VIA PadLock". 4 августа 2005 г.
  2. ^ «VIA PadLock - быстрое шифрование». www.logix.cz.
  3. ^ "4-ядерный процессор Kaixian ZX-C + Series". Shanghai Zhaoxin Semiconductor Co., Ltd.
  4. ^ «Поддержка VIA PadLock для Linux». www.logix.cz.
  5. ^ замок (4) – FreeBSD Интерфейсы ядра Руководство
  6. ^ "openssl / motors / e_padlock.c". GitHub.
  7. ^ «Добавлены новые инструкции для следующей версии ядра VIA PadLock. · Bminor / binutils-gdb @ 30d1c83». GitHub.