Как расширить запущенное приложение в ПЦР?

Как расширить запущенное приложение в ПЦР? и какую ПЦР можно использовать для этого?

1 ответ

Решение

Я предполагаю, что вы имеете в виду TPM версии 1.2 на платформе ПК, поэтому вас могут заинтересовать следующие спецификации:

Теперь на ваши вопросы:

  1. "Как расширить запущенное приложение в ПЦР?"

    Вам нужно программное обеспечение, которое идентифицирует "работающее приложение" (=мера) и выдает TPM_Extend Команда для TPM. Обычно это делается с помощью TSS, но вы также можете сделать это с помощью собственной программы, TPM_Extend Команда не так сложна.

    Идентификация означает вычисление хеша SHA-1 в большинстве случаев, но TPM это не волнует. Описание предоставленных вами данных:

    The 160 bit value representing the event to be recorded.
    
  2. "Какую ПЦР можно использовать для этого?"

    Это зависит от вашего фактического окружения. Доступ к ПЦР контролируется местностями. Вот таблица, показывающая, какая ПЦР может быть расширена в какой местности:

    PCR       Alias (description)         Extendable in localities
    -----------------------------------------------------------------
    0-15      Static RTM                  4,3,2,1,0
    16        Debug                       4,3,2,1,0
    17        Locality 4                  4,3,2
    18        Locality 3                  4,3,2
    19        Locality 2                    3,2
    20        Locality 1                    3,2,1
    21        Dynamic OS controlled           2
    22        Dynamic OS controlled           2
    23        Application Specific        4,3,2,1,0
    

    В какой местности вы находитесь, зависит от вашей среды. Если вы находитесь в пользовательском пространстве Linux, например, у вас есть локальность 0.

    Если вы разрабатываете доверенную архитектуру, вам также нужно будет рассмотреть, как можно сбросить PCR (в каких местах).

    Местности описаны в Спецификации интерфейса TPM для клиента TCG для ПК (TIS):

    • Местность 4: Надежный аппаратный компонент. Это используется D-CRTM для установления динамического RTM.

    • Местность 3: Вспомогательные компоненты. Использование этого является необязательным и, если используется, это зависит от реализации.

    • Местность 2: среда выполнения динамически запускаемой ОС (Dynamic OS).

    • Локальность 1: среда для использования динамической ОС.

    • Местность 0: Статический RTM, его цепочка доверия и среда.

Другие вопросы по тегам