Ruby 2.0.0 リファレンスマニュアル > ライブラリ一覧 > opensslライブラリ > OpenSSL::Digestクラス
クラスの継承リスト: OpenSSL::Digest < Digest::Class < Object < Kernel < BasicObject
ハッシュ関数のためのインターフェースを提供するクラスです。
このインターフェースには2通りの利用法が存在します。 一方は文字列から直接ハッシュを計算する (OpenSSL::Digest.digest, Digest::Instance#hexdigest) 方法です。短い文字列の ダイジェストを取るときにはこちらを使えばよいでしょう。
もう一つはダイジェストオブジェクトを作成して、文字列を順次 OpenSSL::Digest#update で渡すことでダイジェストを計算 します。大きなファイルのハッシュ値を計算する場合などに 利用します。
例:
require 'openssl'
digest = OpenSSL::Digest.new("sha256")
File.open(filename){|f|
while data = f.read(1024)
digest.update(data)
end
}
puts digest.hexdigest
digest も参照してください。
digest(name, data) -> String[permalink][rdoc]data のダイジェストを計算します。
name でハッシュ関数を指定します。
new(name, data=nil) -> OpenSSL::Digest[permalink][rdoc]ダイジェストオブジェクトを生成します。
name でハッシュ関数の種類を選びます。
data に文字列を渡すと、その文字列でオブジェクトの内部状態を更新します。
update(data) -> self[permalink][rdoc]self << data -> selfdata でダイジェストオブジェクトの内部状態を更新します。
block_length -> Integer[permalink][rdoc]ハッシュ関数のブロックサイズを返します。
digest_length -> Integer[permalink][rdoc]ハッシュ値の長さ(バイト数)を返します。
name -> String[permalink][rdoc]ハッシュ関数の名前を返します。
reset -> self[permalink][rdoc]ダイジェストオブジェクトの内部状態をリセットします。