# SVC_HMACSHA1Init

## 構文

      #include <twl/os/common/systemCall.h>

      void SVC_HMACSHA1Init( SVCHMACSHA1Context* context,
      　　　　　　　　　　　　　const void* key,
      　　　　　　　　　　　　　u32 keylen );

      typedef struct SVCHMACSHA1Context
      {
          SVCSHA1Context  sha1_ctx;
          u8              key[SVC_SHA1_BLOCK_SIZE];
          u32             keylen;
      }
      SVCHMACSHA1Context

## 引数

context | 初期化する HMAC-SHA1 生成用のコンテキスト構造体へのポインタ。
key | キー文字列
keylen | キー文字列の長さ

## 返り値

なし。

## 説明

HMAC-SHA1 を計算する際に使用する構造体を初期化します。
`SVC_HMACSHA1Update()`, `SVC_HMACSHA1GetHash()` を使用する前に必ず呼び出してください。

context は初期化する HMAC-SHA1 生成用のコンテキスト構造体です。初期化済のコンテキスト構造体にこの関数を再度適用しても構いません。その場合は、コンテキスト構造体は初期状態に戻ります。

key, keylen でHMAC-SHA1 に与えるキー文字列を指定します。SVC_SHA1_BLOCK_SIZE (=64) バイトまでのキーを指定することが出来ます。

## 参照

`SVC_HMACSHA1Update`, `SVC_HMACSHA1GetHash`, `SVC_SHA1Init`

## 履歴

2007/10/24 初版