如何在ruby中创建SHA1哈希?

如何在ruby中创建SHA1哈希?

How do I create a SHA1 hash in ruby?

SHA哈希函数


1
2
require 'digest/sha1'
Digest::SHA1.hexdigest 'foo'

对于Base64编码的哈希,为了验证Oauth签名,我使用了

1
2
3
4
require 'base64'
require 'hmac-sha1'

Base64.encode64((HMAC::SHA1.new('key') << 'base').digest).strip


我创建了一个辅助gem,它是一些sha1代码的简单包装

1
2
3
4
5
6
7
8
require 'rickshaw'
> Rickshaw::SHA1.hash('LICENSE.txt')

 =>"4659d94e7082a65ca39e7b6725094f08a413250a"

>"hello world".to_sha1

 =>"2aae6c35c94fcfb415dbe95f408b9ce91ee846ed"

"序列化"是在其他地方定义的一些用户功能。

1
2
3
 def generateKey(data)
    return Digest::SHA1.hexdigest ("#{serialize(data)}")
 end


推荐阅读