SYNOPSIS

#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_TakeOwnership(TSS_HTPM hTPM, TSS_HKEY hKeySRK,
                                  TSS_HKEY hEndorsementPubKey);

DESCRIPTION

Tspi_TPM_TakeOwnership takes ownership of a TPM. Taking ownership is the process of inserting a shared secret into the TPM. The owner of the TPM (anyone who knows the shared secret) has the right to perform special operations.

PARAMETERS

hTPM

The hTPM parameter is used to specify the handle of the TPM object.

hKeySRK

The hKeySRK parameter is the handle to the object representing the TPM's Storage Root Key.

hEndorsementPubKey

The hEndorsementPubKey parameter is the handle to the object representing the TPM's endorsement public key. This key is required for encrypting the secret of the SRK and the TPM owner secret. If NULL, the TSP internally queries the TPM for that endorsement public key.

RETURN CODES

Tspi_TPM_TakeOwnership returns TSS_SUCCESS on success, otherwise one of the following values is returned:

TSS_E_INVALID_HANDLE

Either the TPM or one of the key handles is not valid.

TSS_E_INTERNAL_ERROR

An internal SW error has been detected.

CONFORMING TO

Tspi_TPM_TakeOwnership conforms to the Trusted Computing Group Software Specification version 1.1 Golden

RELATED TO Tspi_TPM_TakeOwnership…