Tspi_Data_Unseal(3) dencrypt data encrypted by Tspi_Data_Seal() only if it was encrypted on the same platform and under the current configuration.

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_Unseal(TSS_HENCDATA hEncData, TSS_HKEY hKey,
UINT32 pulUnsealedDataLength, BYTE** prgbUnsealedData);

DESCRIPTION

Tspi_Data_Unseal reveals data encrypted by the Tspi_Data_Seal only if it was encrypted on the same platform and the current configuration. This is internally proofed and guaranteed by the TPM.

PARAMETERS

hEncData

Handle of the data object which contains the sealed data.

hKey

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

pulUnsealedDataLength

The length (in bytes) of the prgbUnsealedData parameter.

prgbUnsealedData

On successful completion of the command, this parameter points to a buffer containing the plaintext data.

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_Unseal returns TSS_SUCCESS on success, otherwise one of the following values are returned:

TSS_E_INVALID_HANDLE - Either hEncData or hKey is not a valid handle.
TSS_E_INTERNAL_ERROR - An error occurred internal to the TSS.

CONFORMING TO

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