Man Linux: Main Page and Category List

NAME

       Tspi_Data_Bind - Encrypts a data blob

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_Bind(TSS_HENCDATA hEncData,     TSS_HKEY hEncKey,
                                 UINT32       ulDataLength, BYTE*    rgbDataToBind);

DESCRIPTION

       Tspi_Data_Bind  encrypts a data blob in a manner that is decryptable by
       Tspi_Data_Unbind. The  data  blob  is  encrypted  using  a  public  key
       operation with the key addressed by the given encryption key object. To
       bind data that is larger  than  the  RSA  public  key  modulus  is  the
       responsibility  of  the  caller  to perform the blocking and subsequent
       combination of data. The bound data blob is stored in the  data  object
       addressed   by  hEncData  and  can  be  exported  from  the  object  by
       Tspi_GetAttribData.  The  caller  of  this  function   should   perform
       validations that the public key presented to it is from a valid TPM.

PARAMETERS

   hEncData
       The  handle  of  the  data  object which contains the encrypted data on
       successful completion of the command.

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

   ulDataLength
       Indicates   the   length   of   the  data  provided  at  the  parameter
       rgbDataToBind.

   rgbDataToBind
       A pointer to the data to be encrypted.

RETURN CODES

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

       TSS_E_INVALID_HANDLE
              hHash is not a valid handle.

       TSS_E_INTERNAL_ERROR
              An internal SW error has been detected.

       TSS_E_BAD_PARAMETER
              One or more parameters is bad.

       TSS_E_INVALID_ENCSCHEME
              Invalid encryption scheme.

       TSS_E_ENC_INVALID_LENGTH
              Invalid length of data to be encypted.

       TSS_E_ENC_NO_DATA
              No data to encrypt.

       TSS_E_ENC_INVALID_TYPE
              Invalid encryption type.

CONFORMING TO

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

SEE ALSO

       Tspi_Data_Unbind(3), Tspi_Data_Unseal(3), Tspi_Data_Seal(3).