Php Ruby字符串到原始二进制文件

Php Ruby字符串到原始二进制文件,php,ruby,hash,binary,Php,Ruby,Hash,Binary,在PHP中,有一个hash()函数可以返回原始二进制数据 我想用Ruby做同样的事情。我该怎么做 我使用以下命令生成哈希: h = Digest::SHA2.new(512) << "hashme" h=Digest::SHA2.new(512)如果需要输出长度为32,只需调用位长为256的Digest::SHA2.new(默认值): irb>需要“摘要/sha2” =>正确 irb>h=Digest::SHA2.new(256)# irb>放置h长度 32 =>零 irb>h

在PHP中,有一个hash()函数可以返回原始二进制数据

我想用Ruby做同样的事情。我该怎么做

我使用以下命令生成哈希:

h = Digest::SHA2.new(512) << "hashme"

h=Digest::SHA2.new(512)如果需要输出长度为32,只需调用位长为256的Digest::SHA2.new(默认值):

irb>需要“摘要/sha2”
=>正确
irb>h=Digest::SHA2.new(256)#
irb>放置h长度
32
=>零
irb>h
02208B9403A87DF9F4ED6B2EE2657EFAA589026B4CCE9ACC8E8A5BF3D693C86
=>零
或者只是:

irb> h = Digest::SHA2.new << "hashme"
=> #<Digest::SHA2:256 02208b9403a87df9f4ed6b2ee2657efaa589026b4cce9accc8e8a5bf3d693c86>
irb> puts h.length
32
=> nil
irb> puts h
02208b9403a87df9f4ed6b2ee2657efaa589026b4cce9accc8e8a5bf3d693c86
=> nil
irb>h=Digest::SHA2.new#
irb>放置h长度
32
=>零
irb>h
02208B9403A87DF9F4ED6B2EE2657EFAA589026B4CCE9ACC8E8A5BF3D693C86
=>零

希望这有帮助

非常感谢,但这并不能解决我的问题。PHP在hash()中有第三个参数,用于触发“原始二进制”输出。我想将h转换为完全相同的“原始二进制”输出。好吧,我打电话给h.digest解决了这个问题:)非常感谢!
irb> h = Digest::SHA2.new << "hashme"
=> #<Digest::SHA2:256 02208b9403a87df9f4ed6b2ee2657efaa589026b4cce9accc8e8a5bf3d693c86>
irb> puts h.length
32
=> nil
irb> puts h
02208b9403a87df9f4ed6b2ee2657efaa589026b4cce9accc8e8a5bf3d693c86
=> nil