Tspi_Key_WrapKey(3) wrap a key with the key addressed by hWrappingKey.

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_Key_WrapKey(TSS_HKEY hKey, TSS_HKEY hWrappingKey,
TSS_HPCRS hPcrComposite);

DESCRIPTION

TSS_Key_WrapKey wraps the private key hKey using the public key addressed by hWrappingKey. If hPcrComposite is not set to NULL (0), the created key blob is bound to its PCR values. The key object addressed by hKey must contain the key information needed for the creation. On successful return from this call, hKey can be loaded into a TPM. hKey must have been created as a migratable key and should have its usage and migrations secrets set using Tspi_Policy_SetSecret(3). Also, hKey should have had its private key set to either RSA private component, p or q.

PARAMETERS

hKey

The handle of the key object that is wrapped.

hWrappingKey

The handle to the key used to wrap the newly created key.

hPcrComposite

The handle to an object, if the value of the handle doesn't equal NULL, the newly create key will be bound ot the PCR values described with this object.

RETURN CODES

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

TSS_E_INVALID_HANDLE - Either hKey, hWrappingKey or hPcrComposite are invalid handles.
TSS_E_INTERNAL_ERROR - An error occurred internal to the TSS.

CONFORMING TO

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