Trusted Platform Module (TPM) версий 1.2 и 2.0 и количество контактов в заголовке

Я пытаюсь понять заголовок TPM на материнской плате, которая у меня есть, это Asrock "H170m Pro4". На материнской плате есть заголовок TPMS1 , и он имеет штырь 9x2, один из которых отсутствует.

При поиске в Интернете я вижу модуль TPM с 14-1 контактами, другие ссылки на 20 контактов. в чем дело?

вот ссылка на сайт производителя конкретного mobo, для которого я пытаюсь получить микросхему TPM. Вы можете скачать руководство здесь: https: //www.asrock.com / mb / Intel / H170M% 20Pro4 /

в H170M Pro4.pdf на страницах 6 и 7 показано расположение заголовка TPMS1 , а на странице 22 - 17-контактный TPMS1 и что делает каждый вывод

  1. PCICLK нижний ряд крайний левый
  2. КАДР нижний ряд справа
  3. PCIRST #
  4. LAD3
  5. + 3в
  6. LAD0
  7. нет контакта
  8. + 3VSB
  9. GND крайний нижний ряд справа
  10. GND крайний верхний ряд слева
  11. SMB_CLK_MAIN
  12. SMB_DATA_MAIN
  13. LAD2
  14. LAD1
  15. GND
  16. S_WRDWN # это над пустым контактом № 7
  17. SERIRQ
  18. GND крайний правый верхний ряд

меня беспокоит и смущает использование TPMS1 и здесь, на их сайте https://www.asrock.com/mb/spec/card.asp?Model=TPM-S%20Module ссылаясь на эти 3 вещи:

  • Модуль TPM-S (V 1.2)
  • Модуль TPM-s (V 2.0)
  • Модуль TPM2-S (V 2.0)

может ли кто-нибудь понять это?

2
задан 24 August 2018 в 02:53
2 ответа

TL;DR :Это мусорная куча, и здесь нет хорошего ответа.

Поскольку нетхорошегоответа, я, по крайней мере, коснусь некоторых нюансов, связанных с вопросом:в чем дело ?

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

Увы, я могу ответить на этот вопрос, но (, как уже упоминалось, )это будет гораздо больше, чтобы охватить мета-вопрос :"в чем дело?"


Общие сведения о TPM

Чтобы будущие читатели знали, о чем этот пост, давайте рассмотрим основы:

Прежде всего, Trusted Platform Module (, также известный как TPM ), является реализацией спецификации, созданной и поддерживаемой Trusted Computing Group .

Целью TPM является действие в качестве вторичного вычислительного устройства для выполнения определенных операций полностью независимо от основного процессора. Связь между главным процессором и доверенным платформенным модулем обычно осуществляется через интерфейс Low Pin Count(LPC )или (в последнее время)последовательный периферийный интерфейс ¹ (SPI ).

Существует две основные версии спецификации 1.2 и 2.0. Спецификация 2.0 была (более или менее переписана -с нуля² ).

В спецификации версии 2.0 определены четыре области.:

  1. Архитектура:

Часть 1 TPM 2.0 содержит описательное описание свойств, функций и методов TPM. Если не указано иное, это описательное описание является информативным. Часть 1 TPM 2.0 содержит описания некоторые процедуры обработки данных, которые используются в этой спецификации.Нормативное поведение для эти подпрограммы находятся в коде C в TPM 2.0, часть 3 и TPM 2,0, часть 4. Алгоритмы и процессы, описанные в этот TPM 2.0, часть 1, может быть сделан нормативным путем ссылки на TPM 2.0, часть 2, TPM 2.0, часть 3, или TPM. 2.0 Часть 4. 2. Структуры-

TPM 2.0 Часть 2 содержит нормативное описание констант, типов данных, структур и объединений для интерфейс доверенного платформенного модуля. Если не указано иное,:(1 )все таблицы и код C в TPM 2.0, часть 2, являются нормативными, и (2 )нормативное содержимое в TPM 2.0, часть 2, имеет приоритет над любой другой частью этой спецификации.

  1. Команды-

TPM 2.0 Часть 3 содержит:(1 )нормативное описание команд, (2 )таблицы с описанием команд и форматы ответов, а также (3 )код C, иллюстрирующий действия, выполняемые доверенным платформенным модулем. В TPM 2.0 Часть 3, таблицы команд и ответов имеют наивысший приоритет, за ними следует код C, а затем описательное описание команды. TPM 2.0, часть 3, подчинена TPM 2.0, часть 2. TPM не нужно реализовывать с помощью кода C в TPM 2.0, часть 3. Однако любая реализация должны обеспечивать эквивалентные или, в большинстве случаев, идентичные результаты, наблюдаемые на интерфейсе TPM или демонстрируется посредством оценки. 4. Поддерживающие процедуры-

TPM 2.0 Часть 4 представляет код C, который описывает алгоритмы и методы, используемые кодом команды. в TPM 2.0, часть 3. Код в TPM 2.0, часть 4, дополняет части 2 и 3, предоставляя полное описание доверенного платформенного модуля, включая поддерживающую структуру для кода, выполняющего командные действия. Любой код TPM 2.0, часть 4, можно заменить кодом, обеспечивающим аналогичные результаты при взаимодействии с код действия в TPM 2.0 Part 3. Поведение кода TPM 2.0 Part 4, не включенного в приложение, нормативный, как это наблюдается на интерфейсах с кодом TPM 2.0 Part 3. Код в приложении предназначен для полнота, то есть возможность полной реализации спецификации.

Мысленно,Я предпочитаю сопоставлять их с четырьмя основными аспектами функционирования TPM³:

Программное обеспечение, работающее на основном ЦП, которое будет использовать TPM (, например. Bitlocker, OpenSwan и т. д.)

Платформа , которая хочет использовать функциональные возможности, реализованные TPM (это обычно интеллектуальная собственность, разработанная или лицензированная производителем ). Часто это скорее интерфейс между основным ЦП и самим TPM.

Интегральная схема , обеспечивающая встроенную систему, которая реализует необходимое оборудование для соответствия архитектуре TPM 2.0, часть 1 (, например. линейка Optiga систем на чипах от Infineon или аналогичные устройства от ST или Nuvoton .

Наконец-то прошивка работает на интегральной схеме. По состоянию на 2020 год это обычно «TSS» (Программный стек TPM2 ). Это может быть бесплатный/открытый исходный код (, как в случае эталонной реализации TrouSerS , а также TPM2 -TSS и TSS.MSR от Microsoft ). или проприетарные реализации.

Так в чем дело?

::вздох ::В лучшем сценарии у нас остаются псевдостандарты. В устройствах TPM 1.2 многие поставщики реализовали 20-контактный (19-контактный разъем с 1 штифтом для ключа )или 14-контактный (13 контактов с 1 штифтом для ключа ). Выбор того, как это реализовать, был оставлен за комбинацией поставщиков «платформы» (, например. MSI, Asus, SuperMicro и т. д. )и разработчик оборудования TPM (см. список выше ).

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

Давайте посмотрим на документ «TPM 2.0 :Краткое введение », опубликованный Trusted Computing Group. В этом документе автор называет :

TPM Needs Table

. Таким образом, TPM может быть полностью интегрированным и необслуживаемым на месте, доступным через вставной контактный разъем или полностью программным обеспечением.

Что касается контакта -выхода 14-контактного варианта, я смог найти ряд изображений с общими контактами -выходами (, поэтому я называю это псевдостандартом. ), например:

Random LPC pin-out from DuckDuckGo

и

MSI CSM B85M JTPM1 Pin-out

Конечно, с другой стороны... причина, по которой я вообще здесь, заключается в том, что я пытаюсь выяснить вывод -для AOM SuperMicro -TPM -9670, который основан на Infineon 9670... с 10-контактным разъемом.

Я ломал голову над 10-контактной реализацией , пока не увидел это на странице 288 первой части спецификации реализации TPM 2.0.:

TPM может иметь один или несколько контактов ввода/вывода, которые или выводит логическое состояние. TPM2 _NV _Чтение и TPM2 _NV _Запись может использоваться для доступа к значению GPIO с использованием обычных средств управления доступом. Спецификация платформы -определяет сопоставление индексов энергонезависимой памяти с отдельными операциями ввода-вывода общего назначения. (GPIO ). Резервирует ли TPM любое хранилище NV для указанного GPIO, зависит от платформы.

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

Примечания / Цитаты

¹ :Вариант SPI (, «расширенный последовательный периферийный интерфейс» или «eSPI» ), был разработан Intel в качестве преемника LPC .

² :Из " Практическое руководство по TPM 2.0 " (Глава 1 :История TPM):

Говорят, что лучшие проекты создаются, когда архитекторы дизайн, а затем, изучив все проблемы, с которыми они столкнутся, выбрасывают первый дизайн и начинают со второго. TPM 2.0 дал архитекторам возможность сделать это. Однако им по-прежнему нужно было следить за тем, чтобы возможности разработки программного обеспечения, предоставляемые схемой TPM 1.2, не были потеряны с новой архитектурой.

Артур В., Челленер Д., Голдман К. (2015 )История TPM. В :Практическое руководство по TPM 2.0. Апресс, Беркли, Калифорния.https://doi.org/10.1007/978-1-4302-6584-9_1

³ :Этот пример не работает в случае «виртуальных» TPM, таких как те, что реализованы в QEMU, а также в некоторых мобильных телефонах и других встроенных устройствах. Для получения дополнительной информации о виртуальных TPM ознакомьтесь с этим документом на 15-м симпозиуме по безопасности USENIX:vTPM :Virtualizing the Trusted Platform Module .

8
ответ дан 11 August 2020 в 02:45

Если ввести запрос «tpm module», на AliExpress можно найти множество товаров. Обычно они имеют множество вариаций для разных поставщиков в зависимости от количества выводов. У них там 18-pin TPM 2.0.

0
ответ дан 17 October 2021 в 21:20

Теги

Похожие вопросы