SHA Hash functions
require 'digest/sha1' Digest::SHA1.hexdigest 'foo'
其中“ Series alize”是其他地方定义的某个用户函数。
def generateKey(data) return Digest::SHA1.hexdigest ("#{serialize(data)}") end
对于 Base64编码的散列,为了验证 Oauth 签名,我使用
require 'base64' require 'hmac-sha1' Base64.encode64((HMAC::SHA1.new('key') << 'base').digest).strip
我创建了一个 helper 宝石,它是一些 sha1代码的简单包装器
require 'rickshaw' > Rickshaw::SHA1.hash('LICENSE.txt') => "4659d94e7082a65ca39e7b6725094f08a413250a" > "hello world".to_sha1 => "2aae6c35c94fcfb415dbe95f408b9ce91ee846ed"