diff --git a/src/Crypto/Hash/Keccak256Native.hs b/src/Crypto/Hash/Keccak256Native.hs index 74ac2a236..d1c468d90 100644 --- a/src/Crypto/Hash/Keccak256Native.hs +++ b/src/Crypto/Hash/Keccak256Native.hs @@ -14,6 +14,7 @@ import Control.Exception (Exception(..), SomeException(..), try) import Control.Monad (forM_) import Control.Monad.Catch (throwM) import Data.ByteString.Short qualified as BSS +import Data.Coerce import Data.Hash.Class.Mutable (initialize, finalize, updateByteString) import Data.Hash.Internal.OpenSSL (OpenSslException(..)) import Data.Hash.Keccak (Keccak256(..)) @@ -41,7 +42,7 @@ keccak256 strings = unsafePerformIO $ do Right bytes -> do updateByteString @Keccak256 ctx bytes Keccak256 hash <- finalize ctx - pure (BSS.fromShort hash) + pure (BSS.fromShort $ coerce hash) case e of Left err | Just (OpenSslException msg) <- fromException err -> pure (Left (Keccak256OpenSslException msg))