SVC_DecryptSignDER

Syntax

#include <twl/os/common/systemCall.h>
int SVC_DectyptSignDER( const SVCSignHeapContext* acmemory_pool,
                          void* buffer,
                          const void* sgn_ptr,
                          const void_ key_ptr );

Arguments

acmemory_pool Pointer to the heap information.
buffer Pointer to the output data buffer.
sgn_ptr Pointer to the digital signature data.
key_ptr Pointer to the public key data.

Return Values

Returns FALSE if one of the pointers in the arguments is NULL or if the digital signature is not in the DER format. Returns TRUE otherwise.

Description

Decrypts DER-format signed data using the specified public key.

acmemory_pool is a pointer to the SVCSignHeapContext structure where information about the heap area used for the operation is stored. This is initialized by the SVC_InitSignHeap function.

buffer is a pointer to the output data buffer. The decrypted data is stored here.
Note: The output size is fixed at SVC_SHA1_DIGEST_SIZE (20 bytes).

sgn_ptr is a pointer to the digital signature data to decrypt.

key_ptr is a pointer to the public key data to use for decryption.

Only a 1024-bit key length is supported for the public key. See the key creation example in the CRYPTO library's RSA encryption overview for information on how to create a key.

See Also

SVC_InitSignHeap, SVC_DecryptRSA, SVC_DecryptSign

Revision History

2008/09/18 Added an explanation related to keys.
2008/05/22 Added a note on the output data size.
2007/10/19 Initial version.


CONFIDENTIAL