TPM2_GetCapability TPM_HT_LOADED_SESSION 是想表达什么?
What TPM2_GetCapability TPM_HT_LOADED_SESSION is intended to show?
我试图通过 handles-loaded-session
的选项来理解 tpm2-tools/tpm2_getcap 的预期输出是什么,描述说:
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
总是returns什么都没有。所以我的问题是在什么情况下 tpm2_getcap handles-loaded-session
会显示任何输出?
确实如此。如果 TPM2.0 会话处于活动状态,已加载到 TPM 中并正在使用中,那么您将在 TPM_HT_LOADED_SESSION.
列表中看到它
因为“tss2-software”堆栈默认将上下文存储在 TPM 之外的文件中,所以您不会看到该会话已加载。
您只会在已保存的情况下找到它,就像您在示例中那样向 TPM2_GetCapability 询问 TPM_HT_SAVED_SESSION 时。
这是否回答了您的问题?
ps:通常,当您有多个用户或应用程序使用 TPM 时,需要保存上下文。所以,我很好奇,您想使用上下文保存或观察加载的会话是否有特殊原因?
我试图通过 handles-loaded-session
的选项来理解 tpm2-tools/tpm2_getcap 的预期输出是什么,描述说:
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
总是returns什么都没有。所以我的问题是在什么情况下 tpm2_getcap handles-loaded-session
会显示任何输出?
确实如此。如果 TPM2.0 会话处于活动状态,已加载到 TPM 中并正在使用中,那么您将在 TPM_HT_LOADED_SESSION.
列表中看到它因为“tss2-software”堆栈默认将上下文存储在 TPM 之外的文件中,所以您不会看到该会话已加载。
您只会在已保存的情况下找到它,就像您在示例中那样向 TPM2_GetCapability 询问 TPM_HT_SAVED_SESSION 时。
这是否回答了您的问题?
ps:通常,当您有多个用户或应用程序使用 TPM 时,需要保存上下文。所以,我很好奇,您想使用上下文保存或观察加载的会话是否有特殊原因?