0

我试图通过选项了解tpm2-tools/tpm2_getcaphandles-loaded-session的预期输出,描述说:

handles-loaded-session: Display handles about both loaded HMAC and policy sessions.

我了解 tpm2-tools 尽可能执行TPM2_ContextLoad-> 操作-> TPM2_ContextSave。因此,tpm2_getcap handles-saved-session将在 TPM 中显示保存的上下文,检查以下内容:

tpm2_startauthsession -S session.dat --policy-session
tpm2_policypcr -S session.dat -l "sha256:16"
tpm2_getcap handles-saved-session
    > 0x2000000
tpm2_flushcontext session.dat
tpm2_getcap handles-saved-session
    > nil

但是,tpm2_getcap handles-loaded-session始终不返回任何内容。所以我的问题是在什么情况下tpm2_getcap handles-loaded-session会显示任何输出?

4

1 回答 1

1

的确。如果 TPM2.0 会话处于活动状态,已加载到 TPM 中并正在使用中,那么您将在 TPM_HT_LOADED_SESSION 列表中看到它。

因为“tss2-software”堆栈默认将上下文存储在 TPM 外部的文件中,所以您不会看到加载的会话。

当您像在示例中那样向 TPM2_GetCapability 询问 TPM_HT_SAVED_SESSION 时,您只会在保存中找到它。

这回答了你的问题了吗?

ps:通常,当您有多个用户或应用程序使用 TPM 时,需要保存上下文。所以,我很好奇,您是否有特殊原因要使用上下文保存或观察加载的会话?

于 2021-01-10T18:26:31.270 回答