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_Data_Seal(TSS_HENCDATA hEncData,     TSS_HKEY hEncKey,
                          UINT32       ulDataLength, BYTE*    rgbDataToSeal,
                          TSS_HPCRS    hPcrComposite);

DESCRIPTION

Tspi_Data_Seal encrypts a data blob in a mannar that is only decryptable by Tspi_Data_Unseal on the same system. The data blob is encrypted using a public key operation with the nonmigratable key addressed by the given encryption key object.

PARAMETERS

hEncData

Handle of the data object which contains the sealed data on successful completion of the command.

hEncKey

Handle to the key object addressing the nonmigratable key which is used to encrypt the data.

ulDataLength

The Length (in bytes) of the rgbDataToSeal parameter.

rgbDataToSeal

Pointer to memory containing the data to be encrypted.

hPcrComposite

Handle of the PCR Composite object specifying the PCRs which are part of the sealed data blob. Set to NULL, if the encrypted data should only be bound to the system and PCRs are not of interest.

RETURN CODES

Tspi_Data_Seal returns TSS_SUCCESS on success, otherwise one of the following values are returned:

TSS_E_INVALID_HANDLE - One of the following parameters hEncData, hEncKey, rgbDataToSeal is invalid.

TSS_E_INTERNAL_ERROR - An error occurred internal to the TSS.

CONFORMING TO

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

RELATED TO Tspi_Data_Seal…