require 'openssl.so'

key = '5f8ac9bf2c112fdfe1da559d5492c80d589c25b0fed3b4c688d1fecef0ceb2c2f806ed70d93a14270c214a95a8aeaf0ca975e54ccc6f187ee0dfa7e7fd432e08'
data = 'BAh7BiIKZmxhc2hJQzonQWN0aW9uQ29udHJvbGxlcjo6Rmxhc2g6OkZsYXNo\nSGFzaHsABjoKQHVzZWR7AA=='

digest = OpenSSL::Digest::Digest.new('SHA1')

r1 = OpenSSL::HMAC.hexdigest(digest, key, data)

if (r1 == 'aeea11e714db6129aad0ea048b9251b301d86c50')
  puts 'OK'
else
  puts 'Bad!'
end

r2 = OpenSSL::HMAC.hexdigest(digest, "Wilma", "Fred Flintstone");

if (r2 == '9ab13cc2cee2d512661fb903e27ce7c82c24407a')
  puts 'OK'
else
  puts 'Bad!'
end
