Ruby 2.2.0 リファレンスマニュアル > ライブラリ一覧 > opensslライブラリ > OpenSSL::HMACクラス

class OpenSSL::HMAC

クラスの継承リスト: OpenSSL::HMAC < Object < Kernel < BasicObject

要約

HMAC を表すクラス。

HMAC とは MAC(message authentication code, ハッシュ関数(MD5やSHAなど) と鍵の文字列をパラメータとするハッシュ関数)の一種です。

メッセージの認証に利用されます。

OpenSSL::Digest のようにある与えられた文字列の ハッシュ値を直接計算するインターフェースと インスタンスを生成して入力文字列を順次与えてハッシュ値を 計算するインターフェースの2つがあります。

HMAC は[RFC2104] で定義されています。

目次

特異メソッド
digest hexdigest new
インスタンスメソッド
<< update digest hexdigest inspect to_s reset

特異メソッド

digest(digest, key, data) -> String[permalink][rdoc]

渡された digest と key を用いて data の HMAC を計算し、 その値をバイナリ文字列として返します。

digest には利用するハッシュ関数を表す文字列("md5", "sha256" など) を渡します。

[PARAM] digest:
利用するハッシュ関数
[PARAM] key:
利用する鍵の文字列
[PARAM] data:
HMAC を計算する文字列
hexdigest(digest, key, data) -> String[permalink][rdoc]

渡された digest と key を用いて data の HMAC を計算し、 その値を16進文字列で返します。

digest には利用するハッシュ関数を表す文字列("md5", "sha256" など) を渡します。

[PARAM] digest:
利用するハッシュ関数
[PARAM] key:
利用する鍵の文字列
[PARAM] data:
HMAC を計算する文字列
new(key, digest) -> OpenSSL::HMAC[permalink][rdoc]

HMAC を計算するためのオブジェクトを生成します。

生成されたオブジェクトの内部状態は入力なしの状態にリセットされます。

digest には利用するハッシュ関数を表す文字列("md5", "sha256" など) を渡します。

[PARAM] key:
利用する鍵の文字列
[PARAM] digest:
利用するハッシュ関数

インスタンスメソッド

self << data -> self[permalink][rdoc]
update(data) -> self

入力文字列を追加し、内部状態を更新します。

[PARAM] data:
入力文字列
digest -> String[permalink][rdoc]

オブジェクトの内部状態から算出された HMAC を バイナリ文字列で返します。

hexdigest -> String[permalink][rdoc]
to_s -> String
inspect -> String

オブジェクトの内部状態から算出された HMAC を 16進の文字列で返します。

reset -> self[permalink][rdoc]

内部状態をリセットします。