require 'digest/sha1'
Digest::SHA1.hexdigest 'foo'
Digest::SHA1.base64digest 'foo'
。 - andrewrkDigest
是 Ruby 标准库的一部分(http://www.ruby-doc.org/stdlib-1.9.2/libdoc/digest/rdoc/index.html)。它包含 SHA1、SHA2、MD5 和其他哈希算法的实现。 - jwfearnDigest::SHA2.hexdigest
,因为它更安全且尚未发现任何碰撞。 - Joshua Pinter为了验证Oauth签名的Base64编码哈希值,我使用了以下方法:
require 'base64'
require 'hmac-sha1'
Base64.encode64((HMAC::SHA1.new('key') << 'base').digest).strip
我创建了一个辅助工具gem,它是一些sha1代码的简单封装。
require 'rickshaw'
> Rickshaw::SHA1.hash('LICENSE.txt')
=> "4659d94e7082a65ca39e7b6725094f08a413250a"
> "hello world".to_sha1
=> "2aae6c35c94fcfb415dbe95f408b9ce91ee846ed"
其中的“serialize”是在其他地方定义的某个用户函数。
def generateKey(data)
return Digest::SHA1.hexdigest ("#{serialize(data)}")
end
require \'digest/sha1\''
。-1 - RixiusSHA1
方法,必须添加require 'digest/sha1'
。 - Gus Shortz