Tspi_Data_Seal(3) TCG Software Stack Developer's Reference Tspi_Data_Seal(3)

Tspi_Data_Seal - encrypt a data blob in a mannar that is only decryptable by Tspi_Data_Unseal on the same system.

#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);

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.

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

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

The Length (in bytes) of the rgbDataToSeal parameter.

Pointer to memory containing the data to be encrypted.

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.

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.

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

Tspi_Data_Unseal(3).

2004-05-26 TSS 1.1