Введение
Устройство, используемое для шифрования.
Безопасный криптопроцессор – это специализированный компьютер на чипе или микропроцессор, предназначенный для выполнения криптографических операций и встроенный в корпус с многоуровневой физической защитой, обеспечивающей устойчивость к несанкционированному доступу. В отличие от криптографических процессоров, которые выводят расшифрованные данные на шину в защищенной среде, безопасный криптопроцессор не выдает расшифрованные данные или расшифрованные программные инструкции в среду, где невозможно гарантировать безопасность. Основная задача безопасного криптопроцессора – служить основой подсистемы безопасности, устраняя необходимость в физической защите остальных ее компонентов.
Примеры
Аппаратный модуль безопасности (HSM) содержит один или несколько защищенных криптопроцессорных чипов. Эти устройства представляют собой высоконадежные защищенные криптопроцессоры, используемые с корпоративными серверами. Модуль аппаратной безопасности может иметь несколько уровней физической защиты, при этом криптопроцессор с одним чипом является наиболее защищенным компонентом. Криптопроцессор не передает ключи или исполняемые инструкции по шине в открытом виде, за исключением зашифрованного формата, и обнуляет ключи при попытках зондирования или сканирования. Крипточипы также могут быть залиты компаундом внутри аппаратного модуля безопасности вместе с другими процессорами и чипами памяти, которые хранят и обрабатывают зашифрованные данные. Любая попытка удаления компаунда приведет к обнулению ключей в крипточипе. Аппаратный модуль безопасности может также быть частью компьютера (например, банкомата), работающего внутри запертого сейфа для предотвращения кражи, подмены и несанкционированного доступа. Современные смарт-карты, вероятно, являются наиболее распространенной формой защищенного криптопроцессора, хотя более сложные и универсальные защищенные криптопроцессоры широко используются в системах, таких как банкоматы, приставки для телевидения, военные приложения и высокозащищенное портативное коммуникационное оборудование. Некоторые защищенные криптопроцессоры могут даже запускать операционные системы общего назначения, такие как Linux, в пределах своей зоны безопасности. Криптопроцессоры принимают инструкции программы в зашифрованном виде, расшифровывают их до исполняемых инструкций, которые затем выполняются внутри того же криптопроцессорного чипа, где расшифрованные инструкции хранятся в недоступном формате. Не раскрывая расшифрованные инструкции программы, криптопроцессор предотвращает несанкционированное вмешательство в программы техниками, которые могут иметь легитимный доступ к шине данных подсистемы. Это известно как шифрование шины. Данные, обрабатываемые криптопроцессором, также часто шифруются. Модуль доверенной платформы (TPM) – это реализация защищенного криптопроцессора, которая обеспечивает концепцию доверенных вычислений в обычных ПК, создавая безопасную среду. Современные реализации TPM сосредоточены на обеспечении защищенной от несанкционированного доступа среды загрузки, а также постоянного и временного шифрования хранилища. Также доступны защитные чипы для встраиваемых систем, которые обеспечивают такой же уровень физической защиты ключей и других конфиденциальных данных, как процессор смарт-карты или TPM, но в более компактном, менее сложном и менее дорогом корпусе. Они часто называются устройствами криптографической аутентификации и используются для аутентификации периферийных устройств, аксессуаров и/или расходных материалов. Как и TPM, они обычно представляют собой готовые интегральные схемы, предназначенные для встраивания в систему, как правило, припаянные к печатной плате.
Степень безопасности
Безопасные криптопроцессоры, хотя и полезны, не являются неуязвимыми для атак, особенно со стороны хорошо оснащенных и решительных противников (например, разведывательного агентства правительства), готовых выделить достаточно ресурсов на реализацию проекта. Одной из атак на защищенный криптопроцессор стал взлом IBM 4758. Команда из Кембриджского университета сообщила об успешном извлечении секретной информации из IBM 4758, используя комбинацию математических методов и специализированного аппаратного обеспечения для взлома. Однако эта атака была непрактична в реальных системах, поскольку требовала от злоумышленника полного доступа ко всем функциям API устройства. Нормальной и рекомендуемой практикой является использование встроенной системы контроля доступа для разделения полномочий, чтобы исключить возможность проведения атаки одним человеком. Хотя уязвимость, которую они использовали, была связана с ошибкой в программном обеспечении, загруженном на 4758, а не с архитектурой самого 4758, их атака служит напоминанием о том, что безопасность системы определяется ее самым слабым звеном: надежная аппаратная часть 4758 оказалась бесполезной из-за недостатков в проектировании и спецификации загруженного на нее программного обеспечения. Смарт-карты значительно более уязвимы, поскольку они более подвержены физическим атакам. Кроме того, аппаратные бэкдоры могут скомпрометировать безопасность смарт-карт и других криптопроцессоров, если не инвестировать в методы проектирования, предотвращающие создание бэкдоров. В случае приложений для полного шифрования диска, особенно при реализации без PIN-кода загрузки, криптопроцессор не будет защищен от атаки холодной загрузки, если остаточная информация в памяти может быть использована для сброса содержимого памяти после того, как операционная система извлечет криптографические ключи из TPM. Однако, если все конфиденциальные данные хранятся только в памяти криптопроцессора, а не во внешнем хранилище, и криптопроцессор спроектирован таким образом, чтобы не раскрывать ключи или дешифрованные или незашифрованные данные на контактных площадках чипа или выводах пайки, то доступ к таким защищенным данным будет возможен только путем зондирования чипа криптопроцессора после удаления всех корпусных и металлических экранирующих слоев. Для этого потребуется как физическое владение устройством, так и навыки и оборудование, превосходящие возможности большинства технических специалистов. Другие методы атак включают тщательный анализ времени выполнения различных операций, которые могут меняться в зависимости от секретного значения, или построение графиков потребления тока во времени для выявления различий в обработке битов '0' и '1' внутри устройства. Или злоумышленник может использовать экстремальные температуры, чрезмерно высокие или низкие тактовые частоты или напряжение питания, превышающее спецификации, чтобы вызвать сбой. Внутренняя конструкция криптопроцессора может быть оптимизирована для предотвращения этих атак. Некоторые защищенные криптопроцессоры содержат два процессорных ядра и генерируют недоступные ключи шифрования по мере необходимости, так что даже при обратной разработке схемы не удастся получить ключи, необходимые для безопасного расшифровки программного обеспечения, загруженного из зашифрованной флэш-памяти или передаваемого между ядрами. Первый дизайн криптопроцессора на одном чипе был предназначен для защиты программного обеспечения персональных компьютеров от копирования (см. патент США 4,168,396 от 18 сентября 1979 г.) и был вдохновлен открытым письмом Билла Гейтса любителям.
История
Модуль безопасности аппаратного обеспечения (HSM), тип защищённого криптопроцессора, был разработан в 1972 году. Он изобрел модуль повышенной безопасности, получивший название "Atalla Box", который шифровал PIN-коды и сообщения банкоматов, а также защищал автономные устройства с помощью непредсказуемого ключа для генерации PIN-кодов. В 1972 году он подал заявку на патент на это устройство. В том же году он основал корпорацию Atalla (ныне Utimaco Atalla), представлявшую собой систему считывания карт и идентификации клиентов, состоящую из консоли считывателя карт, двух PIN-падов для клиентов, интеллектуального контроллера и встроенного пакета электронного интерфейса. В процессе транзакции номер счета клиента считывался с помощью считывателя карт. Atalla был одним из первых конкурентов IBM на рынке банковской безопасности. На конференции Национальной ассоциации взаимных сберегательных банков (NAMSB) в январе 1976 года Atalla представила обновлённую версию своей системы Identikey, получившую название Interchange Identikey. Она добавила возможности обработки онлайн-транзакций и обеспечения сетевой безопасности. Система Identikey была разработана с акцентом на перевод банковских операций в онлайн-режим и была расширена для использования в общих банковских операциях. Она была совместима с различными коммутационными сетями и могла автоматически перенастраиваться на любой из 64 000 необратимых нелинейных алгоритмов в соответствии с данными карты. Устройство Interchange Identikey было выпущено в марте 1976 года. По состоянию на 2013 год продукты HSM компании Atalla защищают 250 миллионов транзакций по картам ежедневно и обеспечивают безопасность большинства операций с банкоматами по всему миру по состоянию на 2014 год.