35,37c35
< require 'digest/sha2'
< require 'base64'
< 
---
> require 'openid'
232,260d229
< 
< 
<     def self.hmac_sha256(message, key)
<       block_size = 64 
<       ipad = "\x36" * block_size
<       opad = "\x5c" * block_size
<       if key.size > block_size
<         d = Digest::SHA256.new
<         key = d.digest(key)
<       end
<       
<       for i in 0 .. key.size - 1
<         ipad[i] ^= key[i]
<         opad[i] ^= key[i]
<       end
<       
<       # inner hash
<       d1 = Digest::SHA256.new
<       d1.update(ipad)
<       d1.update(message)
<       msg_hash = d1.digest()
<       
<       # outer hash
<       d2 = Digest::SHA256.new
<       d2.update(opad)
<       d2.update(msg_hash)
<       d2.digest
<     end
< 
291,292d259
<       #puts string_to_sign
< 
294,295c261,262
<       sig = hmac_sha256(string_to_sign, @@secret_access_key)     
<       base64_sig = Base64.encode64(sig).strip
---
>       sig = OpenID::CryptUtil::hmac_sha256(@@secret_access_key, string_to_sign)     
>       base64_sig = OpenID::Util::to_base64(sig).strip
303,304d269
< 
< 
