SYNOPSIS

#include <tss/tspi.h>

TSS_RESULT Tspi_EncodeDER_TssBlob(UINT32 rawBlobSize, BYTE*   rawBlob,
                                  UINT32 blobType,    UINT32* derBlobSize,
                                  BYTE*  derBlob);

DESCRIPTION

Tspi_EncodeDER_TssBlob is used to generate a DER-encoded blob in accordance with the ASN.1 data definitions in the Portable Data section of the Trusted Computing Group Software Stack Specification Version 1.2.

PARAMETERS

rawBlobSize

Size of the unwrapped blob.

rawBlob

Pointer to the unwrapped blob.

blobType

Type of blob being wrapped (refer to the TSS_BLOB_TYPE_* constants).

derBlobSize

Pointer to the size of the derBlob buffer. On input this parameter contains a pointer to the maximum size of the supplied derBlob buffer. On output this parameter contains a pointer to the actual size of the DER-encoded blob. On input, if this parameter points to a value of 0, then this function will return the size of the buffer required to hold the DER-encoded blob without writing to the derBlob buffer.

Note: If the raw data blob length is less than 2^16 bytes then the DER-encoding may add no more than 20 bytes.

derBlob

Pointer to a buffer to hold the DER-encoded blob.

RETURN CODES

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

TSS_E_BAD_PARAMETER

TSS_E_INTERNAL_ERROR - An error occurred internal to the TSS.

CONFORMING TO

Tspi_EncodeDER_TssBlob conforms to the Trusted Computing Group Software Specification Version 1.2

RELATED TO Tspi_EncodeDER_TssBlob…