Использование TPM во встроенном Linux на ARM

Я хочу узнать об использовании TPM во встроенном Linux на ARM для безопасной загрузки, TrustZone и т. Д. Но в настоящее время я не могу найти хорошую отправную точку.

Я использовал поисковые системы и прочитал некоторые материалы, такие как DEN0006D_Trusted_Board_Boot_Requirements и Infineon-ISPN-Use-Case-Secured-boot-for-ARM-processor-platforms-ABR-v01_00-EN. Но ничего, что действительно помогло бы мне получить знания.

Либо я использовал неправильные поисковые слова, либо информация в основном закрыта. Большинство вещей, которые я нашел, касаются TPM и Windows...

Может ли кто-нибудь порекомендовать какую-либо веб-страницу, книгу, видео или что-то еще для начала?

Изменить: Помимо вещей в решении, я могу порекомендовать бесплатную открытую книгу Практическое руководство по TPM 2.0 https://link.springer.com/book/10.1007/978-1-4302-6584-9


person svanschu    schedule 28.01.2020    source источник


Ответы (1)


Недавно я использовал TPM на встроенном Linux, и это действительно сложная тема. Если вы говорите о самом TPM, первое, что вам нужно сделать, это указать, какую версию вы используете. Я предполагаю, что вы используете TPM 2.0.

  • Хорошей отправной точкой для меня было: tpm-js. Вы можете использовать этот инструмент, чтобы узнать кое-что о TPM. Вы можете просмотреть источники этого проекта, чтобы получить более глубокие знания.
  • Затем вы можете использовать библиотеку Tpm2-tss. Всего несколько месяцев назад они внедрили слой FAPI, упрощающий всю разработку.
  • А также есть архитектура TPM 2.0 doc, который может вам очень помочь, но я не думаю, что это хорошая отправная точка.
  • Последний и очень хороший источник информации для меня — люди, создавшие библиотеку tpm2-tss. Задайте их на странице tpm2-tss Git-Hub.

Я не рекомендую вам использовать инструменты tpm2. В последнее время произошло много изменений, и поначалу это может вас сбить с толку. Сначала вам нужно изучить различия между иерархиями и разницу между первичным ключом и его дочерними ключами. Много этой информации вы найдете в tpm-js.

person Lubo    schedule 05.02.2020
comment
Благодарю вас! Я прочитаю эти рекомендации. Да, я использую TPM 2.0 - person svanschu; 03.04.2020