Рубрика «aes-ni»

Процессоры Intel выплёвывают приватный ключ, если поиграть с напряжением - 1Исследователи из трёх европейских университетов раскрыли детали первой известной атаки на SGX.

Набор инструкций SGX (Software Guard eXtensions) позволяет приложению создавать анклавы — области в виртуальном адресном пространстве, защищённые от чтения и записи извне этой области другими процессами, включая ядро операционной системы. Анклавы изолированы на аппаратном и программном уровне: эта память физически отделена от остальной памяти процессора и зашифрована.

Атака Plundervolt (CVE-2019-11157) использует интерфейс ОС для управления напряжением и частотой процессора Intel — тот же интерфейс, который используется для разгона CPU при оверклокинге. Изменяя напряжение CPU, она за несколько минут извлекает данные из анклава, в том числе ключи шифрования.

Код демонстрационного эксплоита опубликован на GitHub. Уязвимые процессоры:

  • Intel Core 6, 7, 8, 9 и 10 поколений
  • Intel Xeon E3 v5 и v6
  • Intel Xeon E-2100 и E-2200

Читать полностью »

image

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

И вот мы решили ускорять то, что и так работает быстро и, заодно, поделиться опытом того, что получилось в итоге. Конечно же я расскажу о граблях, о том где не надо HTTP/2, о том почему мы покупаем 7,6Tb NVMe SSD вместо 8x1Tb SATA SSD и много другой узкоспециализированной информации.

Давайте сразу договоримся что хранение и раздача контента это 2 разные задачи и говорить мы будем только про раздачу (продвинутый кеш)

Начнем с железа…
Читать полностью »

В этом блоге перечисляются действия по интеграции инструкций Intel AES-NI в приложение Android с помощью библиотеки OpenSSL. Выполнив приведенную здесь инструкцию, вы сможете создать приложение JNI, использующее ускорение AES-NI.
Читать полностью »

Аппаратная поддержка алгоритма AES современными процессорами
Компанией Intel в 2008 г. были предложены новые команды для x86 архитектуры, которые добавили поддержку на аппаратном уровне симметричного алгоритма шифрование AES(Advanced Encryption Standard). На данный момент AES — один из самых популярных алгоритмов блочного шифрования. Поэтому аппаратная реализация должна привести к повышению производительности программ использующих этот алгоритм шифрования(OpenSSL, The Bat, TrueCrypt ...). Новое расширение команд получило название AES-NI. Оно содержит в себе следующие инструкции:

  • AESENC — Выполнить один раунд шифрования AES,
  • AESENCLAST- Выполнить последний раунд шифрования AES,
  • AESDEC — Выполнить один раунд расшифрования AES,
  • AESDECLAST — Выполнить последний раунд расшифрования AES,
  • AESKEYGENASSIST — Поспособствовать в генерации раундового ключа AES,
  • AESIMC — Обратный Mix Columns.

Так как про сам алгоритм шифрования AES было уже было сказано многое, то в этом посте рассмотрим, как можно воспользоваться этими инструкциями.

Читать полностью »

Пост практически продолжение темы UEFI.

История покупки

Началась вся история с того для работы был приобретен ультрабук Lenovo U310 (с Windows 8). Выбирался ультрабук по таким параметрам как:

  • Тонкий
  • Долго держит заряд
  • Не сильно дорогой
  • Наличие аппаратного AES

Шифрование само по себе было важно из-за постоянной работы с конфиденциальными данными + исходные коды рабочих программ.
По этому всё это занимало целый раздел на HDD, который был зашифрован через TrueCrypt.

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

Именно по этому и хотелось взять ультрабук с поддержкой аппаратного шифрования AES.
Выбор пал на U310 с процессором Intel i5-3317u. Посмотрев описание процессора, точно удостоверился в том, что там присутствует аппаратный AES (реализованный через набор инструкций AES-NI).

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js