Аппаратное шифрование - Hardware-based encryption

Аппаратное шифрование
IBM4758 снаружи1.JPG
В IBM 4758 Криптографический модуль
Тип процессаКриптография
Промышленный сектор (ы)Вычисление
Основные технологии или подпроцессыКриптографическая хеш-функция, Шифрование

Аппаратное шифрование это использование компьютерное железо чтобы помочь программному обеспечению, а иногда и заменить программное обеспечение в процессе обработки данных шифрование. Обычно это реализуется как часть процессор набор инструкций. Например, AES алгоритм шифрования (современный шифр ) можно реализовать с помощью Набор инструкций AES на повсеместном архитектура x86.[1] Такие инструкции также есть на ARM архитектура.[2] Однако существуют более необычные системы, в которых модуль криптографии отделен от центрального процессора, а вместо этого реализован как сопроцессор, в частности безопасный криптопроцессор или же криптографический ускоритель, примером которых является IBM 4758, или его преемник, IBM 4764.[3] Аппаратные реализации могут быть быстрее и менее подвержены эксплуатации, чем традиционные программные реализации, и, кроме того, могут быть защищены от взлома.[4]

История

До использования компьютерного оборудования криптография могла выполняться с помощью различных механических или электромеханический средства. Ранним примером является Scytale используется Спартанцы.[5] В Энигма машина была электромеханической системной шифровальной машиной, особенно используемой немцами в Вторая Мировая Война.[нужна цитата ] После Вторая Мировая Война были разработаны чисто электронные системы. В 1987 году был начат проект ABYSS (Базовая система безопасности Йорктауна).[6][7] Целью этого проекта была защита от использование пиратского программного обеспечения. Однако применение компьютеров в криптографии в целом восходит к 1940-м годам и Bletchley Park, где Колосс компьютер был использован для взлома шифрования, используемого немецким командованием Вторая Мировая Война. Использование компьютеров для зашифроватьправда, пришло позже. В частности, до разработки Интегральная схема, первый из которых был произведен в 1960 году, компьютеры были непрактичны для шифрования, поскольку по сравнению с портативными фактор формы из Энигма машина,[8] компьютеры эпохи занял площадь всего здания. Это было только с развитием микрокомпьютер это компьютерное шифрование стало возможным за пределами нишевых приложений. Развитие Всемирная паутина приводят к необходимости для потребителей иметь доступ к шифрованию, поскольку Онлайн шоппинг стали преобладающими.[9] Основными проблемами потребителей были безопасность и скорость.[9] Это привело к тому, что в конечном итоге ключевые алгоритмы были включены в процессоры как способ повышения скорости и безопасности.[4]

Реализации

В наборе инструкций

x86

В X86 архитектура, как CISC (компьютер со сложной системой команд) Архитектура, как правило, реализует сложные алгоритмы в оборудовании.[10] Криптографические алгоритмы - не исключение. Архитектура x86 реализует важные компоненты AES (расширенный стандарт шифрования) алгоритм,[1] который может использоваться АНБ за Совершенно секретно Информация.[11] Архитектура также включает поддержку SHA Алгоритмы хеширования через Расширения Intel SHA.[1] Принимая во внимание, что AES - это шифр, который полезен для шифрования документов, хеширование используется для проверки, например, паролей (см. PBKDF2 ).

РУКА

ARM процессоры может опционально поддерживать расширения безопасности. Хотя ARM - это RISC (компьютер с сокращенным набором команд) архитектура, есть несколько дополнительных расширений, указанных ARM Holdings.[2][12]

Как сопроцессор

Распространение

Продвинутые микроустройства (AMD) процессоры также являются устройствами x86 и поддерживают Инструкции AES с 2011 года Бульдозер итерация процессора.[15]Из-за наличия инструкций по шифрованию на современных процессорах, предоставляемых обоими Intel и AMD инструкции присутствуют на большинстве современных компьютеров.[16] Они также существуют на многих планшетах и ​​смартфонах из-за их реализации в ARM процессоры.[16]

Преимущества

Реализация криптографии на оборудовании означает, что часть процессора выделена для этой задачи. Это может привести к значительному увеличению скорости.[4] В частности, современные процессорные архитектуры, поддерживающие конвейерная обработка часто может выполнять другие инструкции одновременно с выполнением инструкции шифрования. Кроме того, оборудование может иметь методы защиты данных от программного обеспечения. Следовательно, даже если Операционная система скомпрометирован, данные могут оставаться в безопасности (см. Расширения Software Guard ).[17]

Недостатки

Однако, если аппаратная реализация скомпрометирована, возникают серьезные проблемы. Вредоносное программное обеспечение может получать данные с (предположительно) защищенного оборудования - большой класс используемых методов - это синхронизация атаки.[18] Решить эту проблему гораздо сложнее, чем программную ошибку, даже в Операционная система. Microsoft регулярно решает проблемы безопасности через Центр обновления Windows. Точно так же регулярно выпускаются обновления безопасности для Mac OS X и Linux, а также мобильные операционные системы, такие как iOS, Android, и телефон с операционной системой Виндоус. Однако оборудование - это совсем другой вопрос. Иногда проблему можно решить, обновив процессор микрокод (программное обеспечение низкого уровня). Однако другие проблемы могут быть решены только путем замены оборудования или обходного пути в операционной системе, который снижает выигрыш в производительности от аппаратной реализации, например, в Спектр эксплойт.[19]

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

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

  1. ^ а б c Руководство разработчика программного обеспечения для архитектур Intel® 64 и IA-32 (PDF). Intel. Декабрь 2017. С. 303–309, 410.
  2. ^ а б Расширение криптографии процессора ARM® Cortex®-A57 MPCore (PDF). ARM Holdings. 17 декабря 2017. В архиве (PDF) из оригинала от 13.12.2016.
  3. ^ а б «Криптографический сопроцессор 4764». IBM. В архиве из оригинала от 21.01.2018. Получено 20 января 2018.
  4. ^ а б c П. Шмид и А. Роос (2010). «Анализ производительности AES-NI». Оборудование Тома. Получено 20 января 2018.
  5. ^ Келли, Томас (июль 1998 г.). «Миф Скайтейла». Криптология. 22: 244–260. Дои:10.1080/0161-119891886902.
  6. ^ «ABYSS: надежная архитектура для защиты программного обеспечения» (PDF). В архиве (PDF) из оригинала от 21.01.2018. Получено 20 января 2018.
  7. ^ «Создание безопасного сопроцессора IBM 4758» (PDF). IBM. В архиве (PDF) из оригинала на 08.08.2017. Получено 20 января 2018.
  8. ^ «Дело Энигма-Э» (PDF). Крипто-музей. В архиве (PDF) из оригинала от 05.11.2016. Получено 20 января 2018.
  9. ^ а б «Потребители и их ожидания от покупок в Интернете - Новости электронной торговли». 20 февраля 2015 года. В архиве из оригинала от 30.09.2016. Получено 29 августа 2016.
  10. ^ "Набор команд x86-64" (PDF). Оксфордский университет. 18 апреля 2017. с. 1. Получено 24 января 2018.
  11. ^ Линн Хэтэуэй (июнь 2003 г.). «Национальная политика по использованию усовершенствованного стандарта шифрования (AES) для защиты систем национальной безопасности и информации о национальной безопасности» (PDF). В архиве (PDF) из оригинала от 06.11.2010. Получено 15 февраля 2011.
  12. ^ «Криптографические аппаратные ускорители». OpenWRT.org. 17 мая 2016. В архиве из оригинала от 21.01.2018. Получено 25 января 2018.
  13. ^ а б "Модуль безопасности криптографического сопроцессора IBM 4765" (PDF). Национальный институт стандартов и технологий. 10 декабря 2012 г. В архиве (PDF) из оригинала на 2018-01-25. Получено 20 января 2018.
  14. ^ "Криптографический сопроцессор IBM 4758 Models 2 и 23 PCI" (PDF). IBM. Май 2004 г.. Получено 24 января 2018.
  15. ^ Брент Холлингсворт (AMD ) (Октябрь 2012 г.). "Новые" Бульдозер "и" Пиледривер "Инструкции" (PDF). Обсерватория Аресибо. В архиве (PDF) из оригинала на 2018-02-09. Получено 25 января 2018.
  16. ^ а б Шей Герон (Хайфский университет & Intel ) и Ники Муха (KU Leuven & NIST ) (9 ноября 2016 г.). «Simpira v2: семейство эффективных перестановок с использованием функции округления AES» (PDF). В архиве (PDF) из оригинала на 2017-07-16. Получено 25 января 2018.
  17. ^ «Intel SGX для чайников (цели разработки Intel SGX)». intel.com. 2013-09-26. В архиве из оригинала от 29.04.2014.
  18. ^ "BearSSL - криптовалюта постоянного времени". www.bearssl.org. В архиве из оригинала на 2017-01-11. Получено 2017-01-10.
  19. ^ Хахман, Марк (9 января 2018 г.). «Тесты Microsoft показывают, что патчи Spectre снижают производительность на старых ПК». Компьютерный мир. В архиве с оригинала от 9 февраля 2018 г.. Получено 2018-01-09.