加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

digest / hmac是ruby标准库的一部分

发布时间:2020-12-17 04:37:54 所属栏目:百科 来源:网络整理
导读:我正在使用一些代码: beginrequire 'digest/hmac'USE_EMBEDDED_HMAC = falserescueputs "HMAC,not found in standard lib." + $!.messagerequire 'hmac-sha1'USE_EMBEDDED_HMAC = trueend 正如我所看到的,至少在rails 1.8.6中,它不是标准库的一部分.它是rub
我正在使用一些代码:
begin
require 'digest/hmac'
USE_EMBEDDED_HMAC = false
rescue
puts "HMAC,not found in standard lib." + $!.message
require 'hmac-sha1'
USE_EMBEDDED_HMAC = true
end

正如我所看到的,至少在rails 1.8.6中,它不是标准库的一部分.它是ruby 1.9 lib的一部分吗?如果没有,我应该安装任何宝石?

请注意,使用OpenSSL的解决方案将不被接受,因为它在“require’digest / hmac’中无论如何都会失败”

有问题的代码在这里http://github.com/quetzall/cloud_cache/blob/master/lib/cloud_cache.rb

解决方法

它在1.8.7中可用.试试这个:
ruby -v
ruby 1.8.7 (2008-08-11 patchlevel 72) [i686-darwin9]

require 'openssl'
digest  = OpenSSL::Digest::Digest.new('sha1')
OpenSSL::HMAC.digest(digest,"superscret","Lorem ipsum dolor sit amet")
OpenSSL::HMAC.hexdigest(digest,"Lorem ipsum dolor sit amet")

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读