Ruby 2.4
OpenSSL

OpenSSL::HMACError

类 OpenSSL :: HMACError

家长:OpenSSL的:: OpenSSLError (Parent:OpenSSL::OpenSSLError)

文档类:OpenSSL :: HMAC

OpenSSL :: HMAC 允许计算基于哈希的消息认证码(HMAC)。它是一种消息认证码(MAC),涉及与密钥组合的散列函数。HMAC可以用来验证消息的完整性以及真实性。

OpenSSL :: HMAC 与 OpenSSL :: Digest 具有相似的接口。

HMAC-SHA256 使用一次性接口

key = "key" data = "message-to-be-authenticated" mac = OpenSSL::HMAC.hexdigest("SHA256", key, data) #=> "cddb0db23f469c8bf072b21fd837149bd6ace9ab771cceef14c9e517cc93282e"

HMAC-SHA256 使用增量接口

data1 = File.read("file1") data2 = File.read("file2") key = "key" digest = OpenSSL::Digest::SHA256.new hmac = OpenSSL::HMAC.new(key, digest) hmac << data1 hmac << data2 mac = hmac.digest