Objectのhashメソッドは使わないこと hashメソッドの戻り値は、rubyを実行するたびに変わります。従って、ハッシュ値を永続化したい場合等には使えません。 $ irb > "hoge".hash => -3237379387648982978 > "hoge".hash => -3237379387648982978 > exit $ irb > "hoge".hash => 2500386903580634777 MD5のハッシュ関数を使う MD5のハッシュ関数で取得した値は、文字列毎に一意な値が返るので、永続化が可能です。 $ irb > require 'digest/md5' => true > Digest::MD5.new.update('hoge').to_s => "ea703e7aa1efda0064eaa507d9e8ab7e" > exit $ irb >