一通り weblogin.rb でも実装してみたけど、アイコンとプロフィールぐらいはかけるようにならないと使えない。

hmac_sha1 って何だよとか思った。他の実装をみながら以下のように実装 (拡張性皆無)。

def hmac_sha1(key, str)
key = Digest::SHA1.digest(key) if key.length > 64
key << "\0" * (64 - key.length)
ipad = "\x36" * 64
opad = "\x5C" * 64
(key.size - 1).times do |i|
ipad[i] ^= key[i]
opad[i] ^= key[i]
end
sha1 = Digest::SHA1.new
sha1.update(ipad)
sha1.update(str)
str = sha1.digest
sha1 = Digest::SHA1.new
sha1.update(opad)
sha1.update(str)
sha1.hexdigest
end
  1. トップ
  2. web
  3. JugemKey
▲ この日のエントリ