Dencrypt data encrypted by tspi_data_seal() only if it was encrypted on the same platform and under the current configuration.
#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);
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.
Handle of the data object which contains the sealed data.
Handle to the key object addressing the nonmigratable key which is used to decrypt the data.
The length (in bytes) of the prgbUnsealedData parameter.
On successful completion of the command, this parameter points to a buffer containing the plaintext data.
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_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.
Tspi_Data_Unseal conforms to the Trusted Computing Group Software Specification version 1.1 Golden