如何使用SHA512加密哈希值

时间:2015-12-29 10:03:51

标签: ruby hash sha512

我尝试使用SHA512加密哈希。但是我无法将哈希转换为字符串。任何帮助表示赞赏。

hash=Hash.new 
hash={first_name:"hari", last_name:"prakash", mobile:"12345" }
enc_hash= Digest::SHA2.new(512).digest(hash)

当我这样做时,我正在

  

TypeError:无法将哈希转换为字符串

请指导我。关于这个主题的任何研究资源都表示赞赏。

2 个答案:

答案 0 :(得分:2)

如错误所述,摘要适用于字符串。如果你想加密它,你可以先把它转换为字符串:

Digest::SHA2.new(512).digest(hash.to_s)

答案 1 :(得分:0)

也许你想要这个,只在哈希值中使用哈希值?

hash.map { |k,v| hash[k] = Digest::SHA2.new(512).digest(v) }