0
PHP中有hash()函數,可以返回原始二進制數據。Ruby中的字符串轉換爲原始二進制文件
http://de2.php.net/manual/en/function.hash.php
我想要做的紅寶石一樣。我怎麼做?
我生成與所述散列:
h = Digest::SHA2.new(512) << "hashme"
PHP產生 「原始二進制輸出」 的32個字節。
PHP中有hash()函數,可以返回原始二進制數據。Ruby中的字符串轉換爲原始二進制文件
http://de2.php.net/manual/en/function.hash.php
我想要做的紅寶石一樣。我怎麼做?
我生成與所述散列:
h = Digest::SHA2.new(512) << "hashme"
PHP產生 「原始二進制輸出」 的32個字節。
如果需要輸出爲長度爲32,你只需要調用摘要:: SHA2.new有256位長(這是默認):
irb> require 'digest/sha2'
=> true
irb> h = Digest::SHA2.new(256) << "hashme"
=> #<Digest::SHA2:256 02208b9403a87df9f4ed6b2ee2657efaa589026b4cce9accc8e8a5bf3d693c86>
irb> puts h.length
32
=> nil
irb> puts h
02208b9403a87df9f4ed6b2ee2657efaa589026b4cce9accc8e8a5bf3d693c86
=> nil
或者只是:
irb> h = Digest::SHA2.new << "hashme"
=> #<Digest::SHA2:256 02208b9403a87df9f4ed6b2ee2657efaa589026b4cce9accc8e8a5bf3d693c86>
irb> puts h.length
32
=> nil
irb> puts h
02208b9403a87df9f4ed6b2ee2657efaa589026b4cce9accc8e8a5bf3d693c86
=> nil
希望這有助於!
非常感謝你,但這並不能解決我的問題。 PHP在hash()中有第三個參數,它觸發「原始二進制」輸出。我想將h轉換爲完全相同的「原始二進制」輸出。看到http://de2.php.net/manual/en/function.hash.php – 2010-10-07 14:34:07
好吧,我解決了它只是打電話給h.digest :)非常感謝你! – 2010-10-07 16:18:22