Trusted Platform Module

Trusted Platform Module

В вычислительной технике, Trusted Platform Module (TPM) — название спецификации, описывающей криптопроцессор, в котором хранятся криптографические ключи для защиты информации, а также обобщенное наименование реализаций указанной спецификации, например в виде «чипа TPM» или «устройства безопасности TPM» (Dell). Раньше назывался «чипом Фрица» (бывший сенатор Эрнест «Фриц» Холлингс известен своей горячей поддержкой системы защиты авторских прав на цифровую информацию, DRM). Спецификация TPM разработана Trusted Computing Group (англ.). Текущая версия спецификации TPM — 1.2 ревизия 116, издание 3 марта 2011. [1]

Содержание

Краткий обзор

Trusted Platform Module (TPM), криптопроцессор, обеспечивает средства безопасного создания ключей шифрования, способных ограничить использование ключей (как для подписи так и для шифрования/дешифрования), с той же степенью неповторяемости, как и генератор случайных чисел. Также этот модуль включает следующие возможности: удалённую аттестацию, привязку, и надёжное защищённое хранение. Удалённая аттестация создаёт связь аппаратных средств, загрузки системы, и конфигурации хоста (ОС компьютера), разрешая третьему лицу (вроде цифрового магазина музыки) проверять, чтобы программное обеспечение, или музыка, загруженная из магазина, не были изменены или скопированы пользователем (см. ТСЗАП). Криптопроцессор шифрует данные таким способом, что они могут быть расшифрованы только на компьютере, где были зашифрованы, под управлением того же самого программного обеспечения. Привязка шифрует данные, используя ключ подтверждения TPM — уникальный ключ RSA, записанный в чип в процессе его производства, или другой ключ, которому доверяют.

Модуль TPM может использоваться, чтобы подтвердить подлинность аппаратных средств. Так как каждый чип TPM уникален для специфического устройства, это делает возможным однозначное установление подлинности платформы. Например, чтобы проверить, что система, к которой осуществляется доступ — ожидаемая система.

Архитектура TPM

Scheme TPM RUS.png

В спецификации TCG описан минимальный набор алгоритмов и протоколов, которым должен удовлетворять чип TPM. Кроме того, производителем могут быть реализованы дополнительные алгоритмы и протоколы (которые, разумеется, должны быть описаны производителем в соответствующей документации).[2]

В архитектуре чипа реализованы следующие защитные алгоритмы:

  • защищённое управление памятью,
  • шифрование шины и данных,
  • активное экранирование.

Активное экранирование позволяет чипу детектировать электрическое тестирование и, в случае необходимости, блокировать чип. Кроме того, при изготовлении TPM используются и нестандартные технологические шаги, такие как запутывание топологии слоёв ИС. Эти меры значительно усложняют взлом чипа, увеличивают стоимость взлома, что ведёт к уменьшению потенциальных нарушителей.[3]

Ввод/Вывод (англ. I/O)

Этот компонент управляет потоком информации по шине. Направляет сообщения к соответствующим компонентам. I/O компонент вводит в действие политику доступа, связанную с функциями TPM.

Криптографический процессор

Осуществляет криптографические операции внутри TPM. Эти операции включают в себя:

  • Генерация асимметричных ключей (RSA);
  • Асимметричное шифрование/расшифрование(RSA);
  • Хэширование (SHA-1);
  • Генерация случайных чисел.

TPM использует эти возможности для генерации случайных последовательностей, генерации асимметричных ключей, цифровой подписи и конфиденциальности хранимых данных. Также TPM поддерживает симметричное шифрование для внутренних нужд. Все хранимые ключи по силе должны соответствовать ключу RSA длиной 2048 бит.

Энергонезависимая память (англ. Non-Volatile Storage)

Используется для хранения ключа подтверждения, корневого ключа (англ. Storage Root Key, SRK), авторизационных данных, различных флагов.

Ключ подтверждения (англ. Endorsement Key, EK)

EK — ключ RSA размером 2048 бит. Открытая чаcть называется PUBEK, закрытая — PRIVEK. EK генерируется до того, как конечный пользователь получит платформу. Последующие попытки сгенерировать или вставить EK не должны выполняться. Таким образом, EK — ключ, связанный с чипом. TPM должен гарантировать, что PRIVEK не будет доступен вне чипа. Используется только для установления владельца TPM и установления AIK.

Регистры конфигурации платформы (Platform Configuration Registers, PCR)

Могут хранится как в энергонезависимой, так и в энергозависимой памяти. Эти регистры сбрасываются при старте системы или при потери питания. TCG предписывает минимальное количество регистров (16). Регистры 0-7 зарезервированы для нужд TPM. Регистры 8-15 доступны для использования операционной системой и приложениями. Размер всех регистров — 160 бит.

Ключи подтверждения подлинности (англ. Attestation Identity Keys, AIK)

Эти ключи должны быть постоянными, но рекомендуется хранить AIK в виде блобов в постоянной внешней памяти (вне TPM), а не внутри энергонезависимой памяти TPM. TCG предполагает, что производители обеспечат достаточно места для многих блобов AIK, которые будут одновременно загружаться в энергозависимую память TPM. AIK — ключ RSA длиной 2048 бит. Фактически, TPM может сгенерировать неограниченное количество AIK. TPM должен защищать закрытую часть асимметричного ключа. AIK не используется для шифрования, только для подписей. Переход AIK от одного TPM к другому должен быть запрещён.

Генератор случайных чисел (англ. Random Number Generator, RNG)

Используется для генерации ключей и случайностей в сигнатурах. TPM должен быть способным обеспечить 32 случайных бита на каждый вызов. RNG чипа состоит из следующих компонентов:

Источник энтропии — процесс (или процессы), обеспечивающие энтропию. Такими источниками могут быть шум, счётчик тактов процессора и другие события. Коллектор энтропии — процесс, который собирает энтропию, удаляет смещение, выравнивает выходные данные. Энтропия должна передаваться только регистру состояния.
  • Регистр состояния
Реализация регистра состояния может использовать 2 регистра: энергозависимый и независимый. При старте TPM загружает энергозависимый регистр из энергонезависимого. Любое последующее изменение регистра состояния от источника энтропии или от смешивающей функции влияет на энергозависимый регистр. При выключении TPM записывает текущее значение регистра состояния в энергонезависимый регистр (такое обновление может происходить и в любое другое время). Причиной такой реализации является стремление реализовать энергонезависимый регистр на флэш-памяти, количество записи в которую ограничено. TPM должен обеспечить отсутствие экспорта регистра состояния.
  • Смешивающая функция
Берёт значение из регистра состояния и выдаёт выходные данные RNG. Каждое использование смешивающей функции должно изменять регистр состояния.

При потери питания происходит сброс RNG. Любые выходные данные RNG для TPM должны быть защищены.

Устройство SHA-1 (англ. SHA-1 Engine)

Используется для вычисления сигнатур (подписей), создания блоков ключей и других целей общего назначения. Хэш-интерфейсы доступны вне TPM. Это позволяет окружению иметь доступ к хэш-функции.

Генератор ключей RSA (англ. RSA Key Generator)

Создаёт пары ключей RSA. TCG не накладывает минимальных требований ко времени генерации ключей.

Устройство RSA (англ. RSA Engine)

Используется для цифровых подписей и шифрования. Нет ограничений на реализацию алгоритма RSA. Производители могут использовать китайскую теорему об остатках или любой другой метод. Минимально рекомендуемая длина ключа — 2048 бит. Значение открытой экспоненты должно быть 2^{16}+1.

Доверенная платформа (англ. The trusted Platform)

В системах TCG корни доверия (roots of trust) — компоненты, которым нужно доверять. Полный набор корней доверия имеет минимальную функциональность, необходимую для описания платформы, что влияет на доверенность этой платформе. Есть три корня доверия: корень доверия для измерений (RTM), корень доверия для хранения (RTS) и корень доверия для сообщений (RTR). RTM — вычислительный механизм, который производит надёжные измерения целостности платформы. RTS — вычислительный механизм, способный хранить хэши значений целостности. RTR — механизм, который надёжно сообщает о хранимой в RTS информации. Данные измерений описывают свойства и характеристики измеряемых компонентов. Хэши этих измерений — «снимок» состояния компьютера. Их хранение осуществляется функциональностью RTS и RTR. Сравнивая хэш измеренных значений с хэшом доверенного состояния платформы можно говорить о целостности системы.

Возможные применения

Аутентификация

TPM может рассматриваться в качестве токена (Security token) аутентификации следующего поколения. Криптопроцессор поддерживает аутентификацию и пользователя, и компьютера, обеспечивая доступ к сети только авторизованным пользователям и компьютерам.[4] Это может использоваться, например, при защите электронной почты, основанной на шифровании или подписывании при помощи цифровых сертификатов, привязанных к TPM. Также отказ от паролей и использование TPM позволяют создать более сильные модели аутентификации для проводного, беспроводного и VPN доступа.

Защита данных от кражи

Это основное назначение «защищённого контейнера». Самошифрующиеся устройства, реализованные на основе спецификаций Trusted Computing Group, делают доступными встроенное шифрование и контроль доступа к данным. Такие устройства обеспечивают полное шифрование диска, защищая данные при потере или краже компьютера.[5]

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

  • Улучшение производительности
Аппаратное шифрование позволяет оперировать со всем диапазоном данных без потерь производительности.
  • Усиление безопасности
Шифрование всегда включено. Кроме того, ключи генерируются внутри устройства и никогда не покидают его.
  • Низкие издержки использования
Не требуются модификации операционной системы, приложений и т. д. Для шифрования не используются ресурсы центрального процессора.

Большие перспективы имеет связка TPM+Bitlocker.Такое решение позволяет прозрачно от ПО шифровать весь диск.

Управление доступом к сети (NAC)

TPM может подтверждать подлинность компьютера и даже его работоспособность ещё до получения доступа к сети и, если необходимо, помещать компьютер в карантин.[6]

Защита ПО от изменения

Сертификация программного кода обеспечит защиту игр от читерства, а чувствительные программы наподобие банковских и почтовых клиентов — от намеренной модификации. Сразу же будет пресечено добавление «троянского коня» в инсталлятор свежей версии мессенджера.

Защита от копирования

Защита от копирования основана на такой цепочке: программа имеет сертификат, обеспечивающий ей (и только ей) доступ к ключу расшифровки (который также хранится в TPM’е). Это даёт защиту от копирования, которую невозможно обойти программными средствами.

Реализация

TPM Infineon на материнской плате Asus P5Q PREMIUM

Производители

Уже более 300'000'000 компьютеров были оснащены чипом TPM.[4] В будущем TPM может устанавливаться на такие устройства, как мобильные телефоны. Микроконтроллеры TPM производятся следующими компаниями:

Критика

Trusted Platform Module критикуется и за название (доверие — англ. trust — всегда обоюдное, в то время как пользователю-то разработчики TPM и не доверяют), так и за ущемления свободы, связанные с ним. За эти ущемления устройство часто называют Treacherous computing («вероломные вычисления»).

Потеря «владения» компьютером

Владелец компьютера больше не может делать с ним всё, что угодно, передавая часть прав производителям программного обеспечения. В частности, TPM может мешать (из-за ошибок в ПО или намеренного решения разработчиков):

  • переносить данные на другой компьютер;
  • свободно выбирать программное обеспечение для своего компьютера;
  • обрабатывать имеющиеся данные любыми доступными программами.

Потеря анонимности

Одно из преимуществ Интернета - анонимность. На данный момент, если на компьютере нет троянских программ, в программном обеспечении нет явных ошибок, а cookie удалены, единственным идентификатором пользователя будет IP-адрес.

Достаточно вспомнить споры по поводу идентификационного номера процессора Pentium III, чтобы понять, к чему может привести удалённо читаемый и неизменяемый идентификатор компьютера.

Подавление конкурентов

Программа, ставшая лидером отрасли (как AutoCAD, Microsoft Word или Adobe Photoshop) может установить шифрование на свои файлы, делая невозможным доступ к этим файлам посредством программ других производителей, создавая, таким образом, потенциальную угрозу свободной конкуренции на рынке прикладного ПО.

Поломка

При поломке TPM защищённые контейнеры оказываются недоступными, а данные в них — невосстановимыми. TPM практичен только если существует сложная система резервного копирования — естественно, для обеспечения секретности она должна иметь свои TPM’ы.

Взломы

На конференции по компьютерной безопасности Black Hat 2010 было объявлено о взломе чипа Infineon SLE66 CL PE, изготовленного по спецификации TPM.[7] Данный чип используется в компьютерах, оборудовании спутниковой связи и игровых приставках. Для взлома использовался электронный микроскоп (стоимостью около $70000). Оболочка чипа была растворена кислотой, для перехвата команд были использованы мельчайшие иголки. Infineon утверждают, что они знали о возможности физического взлома чипа. Борчерт (Borchert), вице-президент компании, заверил, что дорогое оборудование и техническая сложность взлома не представляет опасности для подавляющего большинства пользователей чипов.

См. также

Примечания

  1. Trusted Platform Module (TPM) Specifications. Trusted Computing Group. Архивировано из первоисточника 23 февраля 2012.
  2. TPM Main Specification Level 2 Version 1.2, Revision 103 Part 1 - Design Principles. Trusted Computing Group. Архивировано из первоисточника 23 февраля 2012.
  3. Зорин Виталий Архитектура чипа безопасности.
  4. 1 2 Trusted Computing Group - Solutions - Authentication. Trusted Computing Group. Архивировано из первоисточника 23 февраля 2012.
  5. Trusted Computing Group - Solutions - Data Protection. Trusted Computing Group. Архивировано из первоисточника 23 февраля 2012.
  6. Brian Berger. Crypto chip: How the TPM bolsters enterprise security. SC Magazine (2008). Архивировано из первоисточника 23 февраля 2012.
  7. "Unhackable" Infineon Chip Physically Cracked. Архивировано из первоисточника 23 февраля 2012.

Ссылки



Wikimedia Foundation. 2010.

Игры ⚽ Поможем написать курсовую

Полезное


Смотреть что такое "Trusted Platform Module" в других словарях:

  • Trusted Platform Module — In computing, Trusted Platform Module (TPM) is both the name of a published specification detailing a secure cryptoprocessor that can store cryptographic keys that protect information, as well as the general name of implementations of that… …   Wikipedia

  • Trusted Platform Module — Das Trusted Platform Module (TPM) ist ein Chip, nach der TCG Spezifikation, die einen Computer oder ähnliche Geräte um grundlegende Sicherheitsfunktionen erweitert. Diese Funktionen können beispielsweise den Zielen des Lizenzschutzes und/oder… …   Deutsch Wikipedia

  • Trusted Platform Module — Composants internes d un Trusted Platform Module Le Trusted Platform Module (également nommé puce TPM ou puce Fritz) est un composant cryptographique matériel, sur lequel s appuie l implémentation au niveau matériel du système NGSCB. Il est… …   Wikipédia en Français

  • Trusted Platform — Dieser Artikel oder Abschnitt bedarf einer Überarbeitung. Näheres ist auf der Diskussionsseite angegeben. Hilf mit, ihn zu verbessern, und entferne anschließend diese Markierung. Trusted Computing (TC) ist eine Technologie, die von der Trusted… …   Deutsch Wikipedia

  • Trusted Computing — (TC) is a technology developed and promoted by the Trusted Computing Group. The term is taken from the field of trusted systems and has a specialized meaning. With Trusted Computing the computer will consistently behave in specific ways, and… …   Wikipedia

  • Trusted Computing Group — Rechtsform Konsortium Gründung 2003[1] Sitz Beaverton (Oregon), USA[2] Website …   Deutsch Wikipedia

  • Trusted Execution Technology — (TET or TXT), formerly known as LaGrande Technology is a key component of Intel s initiative of safer computing . Intel Trusted Execution Technology (Intel TXT) is a hardware extension to some of Intel s microprocessors and respective chipsets,… …   Wikipedia

  • Trusted Computing — (TC) ist eine Technologie, die von der Trusted Computing Group entwickelt und beworben wird. Der Ausdruck ist dem Fachausdruck Trusted System entlehnt, hat jedoch eine eigene Bedeutung. Trusted Computing bedeutet, dass der Betreiber eines PC… …   Deutsch Wikipedia

  • Trusted Computing Platform Alliance — Trusted Computing Group Pour les articles homonymes, voir TCG. Le Trusted Computing Group (TCG, nommé jusqu en 2003 TCPA pour Trusted Computing Platform Alliance) est un consortium d entreprises d informatique (Compaq, HP, IBM, Intel, Microsoft,… …   Wikipédia en Français

  • Trusted Computer System Evaluation Criteria — (TCSEC) is a United States Government Department of Defense (DoD) standard that sets basic requirements for assessing the effectiveness of computer security controls built into a computer system. The TCSEC was used to evaluate, classify and… …   Wikipedia


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»