使用 Google + Bing 并没有回答应该是一个简单的问题:
你应该如何使用 Ruby 中的 HMAC 模块来创建一个带有 MD5 的 HMAC(它使用一个秘密)?
HMAC 文档看起来非常薄。
谢谢!
使用 Google + Bing 并没有回答应该是一个简单的问题:
你应该如何使用 Ruby 中的 HMAC 模块来创建一个带有 MD5 的 HMAC(它使用一个秘密)?
HMAC 文档看起来非常薄。
谢谢!
这应该是最简单的方法:
OpenSSL::HMAC.digest(OpenSSL::Digest::Digest.new('md5'), secret_key, your_data)
应安装以下 gem:'ruby-hmac'
$ irb
>> require 'hmac-md5'
=> true
>> HMAC::MD5.new("abc").digest
=> "\324\035\214\331\217\000\262\004\351\200\t\230\354\370B~"
>> HMAC::MD5.new("abc").hexdigest
=> "d41d8cd98f00b204e9800998ecf8427e"
>>
这就是我所做的:
HMAC::MD5.new(shared_key).update(data).hexdigest
可能你只想要 HMAC::MD5.new(SECRET).digest
首先查找“加盐”哈希。这取决于您的使用情况,但添加固定字符串确实有助于使您的哈希值与其他应用程序的哈希值不同。因此,字典攻击更难。但这只是笼统地说。
http://betterlogic.com/roger/?p=152
不?
或者我记得在我们的一个 Gems 中玩弄它,所以也许你可以从中逆向工程?
http://github.com/appoxy/aws/tree/master
希望这可以帮助。
乍得