For Gauche 0.9.5


Next: , Previous: , Up: ライブラリモジュール - ユーティリティ   [Contents][Index]

12.32 rfc.hmac - HMAC鍵付きハッシング

Module: rfc.hmac

このモジュールは、RFC 2104で定義されている、メッセージ認証のための 鍵付きハッシングのHMACアルゴリズムを実装しています。

シンプルなバッチ処理での鍵付きハッシングでは、高レベルなAPIである hmac-digesthmac-digest-stringが使えます。 あるいは、<hmac>オブジェクトを作成して、入力となるデータで その状態を更新することもできます。

Class: <hmac>

HMACアルゴリズムの状態情報を保持します。 鍵とハッシングアルゴリズムは、キーワード引数:key:hasherを それぞれ使って、生成時に与えます。 <md5> (MD5メッセージダイジェスト参照)や <sha256> (SHAメッセージダイジェスト参照)などのような ダイジェストインタフェース(メッセージダイジェストフレームワーク参照)を 実装するいかなるクラスオブジェクトを渡すこともできます。

例:

(make <hmac> :key (make-byte-string 16 #x0b) :hasher <md5>)
Method: hmac-update! (hmac <hmac>) data

(不完全かもしれない)文字列で表現されるdataにより、 hmacの内部状態を更新します。

Method: hmac-final! (hmac <hmac>)

hmacの内部状態を終了させ、不完全文字列でハッシュされた文字列を 返します。 “hexified”(16進化)された結果を得るために、digest-hexify (メッセージダイジェストフレームワーク参照)を使うことが できます。 一旦終了されると、hmacに対してはhmac-update!hmac-final!を呼ぶことはできません。

Method: hmac-digest :key key hasher

<hmac>オブジェクトを作り、現在の入力ポートからの データストリームをハッシュし、不完全文字列でそのハッシュされた 結果を返します。

Method: hmac-digest-string string :key key hasher

<hmac>オブジェクトを作り、stringにあるデータをハッシュし、 不完全文字列でそのハッシュされた結果を返します。


Next: , Previous: , Up: ライブラリモジュール - ユーティリティ   [Contents][Index]