SVC_DecryptSign

構文

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

引数

acmemory_pool ヒープ情報へのポインタ
buffer 出力データ領域へのポインタ
sgn_ptr 電子署名データへのポインタ
key_ptr 公開鍵データへのポインタ

返り値

引数のポインタに NULL のものがある場合や、電子署名のパディングが不正な場合、FALSEを返します。
その他の場合、TRUE を返します。

説明

指定の公開鍵で署名データを復号します。

acmemory_pool は処理で使用するヒープ領域の情報が格納されている SVCSignHeapContext 構造体へのポインタです。SVC_InitSignHeap() で初期化したものです。

buffer は出力データ領域へのポインタです。復号されたデータはここに格納されます。
※出力サイズはSVC_SHA1_DIGEST_SIZE(20バイト)固定です。

sgn_ptr は復号する電子署名データへのポインタです。

key_ptr は復号に用いる公開鍵データへのポインタです。

公開鍵は1024bitの鍵長のもののみサポートしています。鍵の生成方法はCRYPTOのRSA暗号概要の鍵作成例を参照してください。

参照

SVC_InitSignHeap, SVC_DecryptRSA, SVC_DecryptSignDER

履歴

2008/09/18 鍵に関する解説追加
2008/05/22 出力データサイズの注意事項追加
2007/10/19 初版