Clear tpm ownership
#include <tss/platform.h> #include <tss/tcpa_defines.h> #include <tss/tcpa_typedef.h> #include <tss/tcpa_struct.h> #include <tss/tss_typedef.h> #include <tss/tss_structs.h> #include <tss/tspi.h> TSS_RESULT Tspi_TPM_ClearOwner(TSS_HTPM hTPM, TSS_BOOL fForcedClear);
Tspi_TPM_ClearOwner wipes the TPM of everything but its endorsement key. It will wipe the SRK, so anything locked to the SRK will also disappear when this command is executed. This is the only way to be certain that keys are gone, as it is the only way to guarantee that nothing can keep a copy of the key. You must assert either physical presence or owner authorization in order to use this command.
The hTPM parameter is used to specify the handle of the TPM object.
The fForcedClear parameter is used to tell whether this command is being executed with owner authorization or with physical presence. If FALSE, then TPM owner authorization is used. If TRUE, then physical presence is required to clear the TPM.
Tspi_TPM_ClearOwner returns TSS_SUCCESS on success, otherwise one of the following values is returned:
TSS_E_INVALID_HANDLE
hTPM is not a valid handle.
TSS_E_INTERNAL_ERROR
An internal SW error has been detected.
Tspi_TPM_ClearOwner conforms to the Trusted Computing Group Software Specification version 1.1 Golden