hydra-kernel-0.17.1: src/main/haskell/Hydra/Overlay/Haskell/Lib/Hashing.hs
-- | Haskell implementations of hydra.lib.hashing primitives
module Hydra.Overlay.Haskell.Lib.Hashing where
import qualified Data.ByteString as BS
import qualified Data.ByteString.Lazy as BL
import qualified Data.Digest.Pure.SHA as SHA
-- | Compute the SHA-256 digest of a sequence of bytes, returning the 32-byte digest.
sha256 :: BS.ByteString -> BS.ByteString
sha256 = BL.toStrict . SHA.bytestringDigest . SHA.sha256 . BL.fromStrict
-- | Compute the SHA-256 digest of a sequence of bytes as a 64-character lowercase hex string.
sha256Hex :: BS.ByteString -> String
sha256Hex = SHA.showDigest . SHA.sha256 . BL.fromStrict