如何重置TPM 2.0的SRK

  • 本文关键字:SRK 何重置 TPM tpm
  • 更新时间 :
  • 英文 :


我想重置SRK。它也可以被视为TPM的出厂重置。

我试过tpm2_clear,但它不起作用。


机器:VMWare工作站

# tpm2_getcap properties-variable
TPM2_PT_PERSISTENT:
ownerAuthSet:              0
endorsementAuthSet:        0
lockoutAuthSet:            1
reserved1:                 0
disableClear:              0
inLockout:                 0
tpmGeneratedEPS:           1
reserved2:                 0
TPM2_PT_STARTUP_CLEAR:
phEnable:                  0
shEnable:                  1
ehEnable:                  1
phEnableNV:                1
reserved1:                 0
orderly:                   0
# tpm2_clear -c p
WARNING:esys:src/tss2-esys/api/Esys_Clear.c:282:Esys_Clear_Finish() Received TPM Error
ERROR:esys:src/tss2-esys/api/Esys_Clear.c:97:Esys_Clear() Esys Finish ErrorCode (0x00000185)
ERROR: Esys_Clear(0x185) - tpm:handle(1):hierarchy is not enabled or is not correct for the use
ERROR: Unable to run tpm2_clear

在VMWare中,即使在冷启动之后也不会设置phEnable。


机器:HP EliteBook 850 G5

~# tpm2_getcap properties-variable
TPM2_PT_PERSISTENT:
ownerAuthSet:              0
endorsementAuthSet:        0
lockoutAuthSet:            1
reserved1:                 0
disableClear:              0
inLockout:                 0
tpmGeneratedEPS:           0
reserved2:                 0
TPM2_PT_STARTUP_CLEAR:
phEnable:                  1
shEnable:                  0
ehEnable:                  1
phEnableNV:                1
reserved1:                 0
orderly:                   1
# tpm2_clear -c p
WARNING:esys:src/tss2-esys/api/Esys_Clear.c:282:Esys_Clear_Finish() Received TPM Error
ERROR:esys:src/tss2-esys/api/Esys_Clear.c:97:Esys_Clear() Esys Finish ErrorCode (0x000009a2)
ERROR: Esys_Clear(0x9A2) - tpm:session(1):authorization failure without DA implications
ERROR: Unable to run tpm2_clear
# tpm2_clear -c o
ERROR: Unexpected handle - TPM2_RH_OWNER
ERROR: Unknown or unsupported handle, got: "o"
ERROR: Cannot make sense of object context "o"
ERROR: Invalid lockout authorization
ERROR: Unable to run tpm2_clear

有没有办法重置SRK?

您正处于正确的轨道上,tpm2_clear清除所有者层次结构,即SRK及其所有子密钥。

根据命令规范(第24.6节(,tpm2_clear可能失败的原因有多种。

1.平台层次结构被禁用

这个错误非常微妙,因为TPM2_Clear的命令描述中没有明确提到它。默认情况下,TPM2_Clear在平台层次结构上运行。但是,可以通过命令TPM2_HierarchyControl:禁用平台层次结构(phEnable位清除(

tpm2_hierarchycontrol -C p phEnable clear

任何将来对平台层次结构的使用都应该导致返回代码TPM2_RC_HANDLE = 0x0000010B。但是,没有TPM命令来重新启用平台层次结构。体系结构规范(第13.3节(:

当phEnable为CLEAR时,需要一个_TPM_Init来设置它。

您似乎需要重置TPM(切换硬件重置信号或关闭电源(以重新启用平台层次结构。

如果这不能解决您的问题,请查看下一个潜在问题。

2.TPM2_Clear命令被禁用

这可能不是您的问题,因为它会产生另一个错误(返回代码TPM_RC_DISABLED = 0x0000120(。

TPM2_Clear命令可以被禁用(disableClear位设置(。这是通过命令TPM2_ClearControl来完成的。要启用清除,请调用tpm2_clearcontrol -Cp c。与tpm2_clear一样,tpm2_clearcontrol需要平台授权。

相关内容

  • 没有找到相关文章

最新更新