标签: ruby ruby-on-rails-3 security hash
我想要使用密钥生成哈希的东西。此外,生成的哈希应该是URL安全的并且形式安全。
答案 0 :(得分:0)
您的标准Ruby安装中已有一些东西:OpenSSL模块。
您所谈论的可能是OpenSSL::HMAC,它为您提供HMAC,一种基于密钥的密钥哈希。
OpenSSL::HMAC
结果将是一个简单的Ruby字符串,可能带有非URL安全字符,您必须自己处理这个URL安全。您可以使用URI.escape或使用str.unpack('H*')[0]对字符串进行六重编码(请参阅String#unpack)。
str.unpack('H*')[0]