我的代码看起来有点像
module Lib where
import Data.ByteString (ByteString)
import Data.ByteString.Lazy (fromStrict)
import Data.Digest.Pure.SHA (sha1, showDigest)
hash :: ByteString -> String
hash bstring = showDigest $ sha1 $ fromStrict bstring
Run Code Online (Sandbox Code Playgroud)
这给了我一个SHA1哈希的十六进制字符串表示.如何在这个十六进制表示和二进制表示之间进行转换?在python我会用binascii.hexlify
和binascii.unhexlify
.例如:
'95d09f2b10159347eece71399a7e2e907ea3df4f' <=> '\x95\xd0\x9f+\x10\x15\x93G\xee\xceq9\x9a~.\x90~\xa3\xdfO'
Run Code Online (Sandbox Code Playgroud)