dev*_*fix 382

require 'digest/sha1'
Digest::SHA1.hexdigest 'foo'
Run Code Online (Sandbox Code Playgroud)

  • 还有`Digest :: SHA1.base64digest'foo'` (41认同)
  • 仅供参考:"摘要"是Ruby标准库的一部分(http://www.ruby-doc.org/stdlib-1.9.2/libdoc/digest/rdoc/index.html).它包括SHA1,SHA2,MD5和其他哈希算法的实现. (13认同)

Thi*_*lli 8

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

require 'base64'
require 'hmac-sha1'

Base64.encode64((HMAC::SHA1.new('key') << 'base').digest).strip
Run Code Online (Sandbox Code Playgroud)

  • 仅供参考,'hmac-sha1'的要求来自宝石'ruby-hmac' (6认同)

小智 6

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

require 'rickshaw'
> Rickshaw::SHA1.hash('LICENSE.txt')

 => "4659d94e7082a65ca39e7b6725094f08a413250a" 

> "hello world".to_sha1

 => "2aae6c35c94fcfb415dbe95f408b9ce91ee846ed" 
Run Code Online (Sandbox Code Playgroud)