如何使用 SHA512 加密哈希值

how to encrypt a hash value using SHA512

我正在尝试使用 SHA512 加密哈希。但我无法将哈希转换为字符串。感谢任何帮助。

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

当我这样做时,我得到

TypeError: can't convert Hash into String

请指导我。任何有关此主题的学习资源都将受到赞赏。

如错误所述,摘要适用于字符串。如果要加密,可以先转成字符串:

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

也许您想要这个,只对散列中的值进行散列?

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