An implementation of several SHA cryptographic hash functions. This package uses icidasset/elm-binary to work with binary numbers.
sha224 : Binary.Bits -> Binary.Bits
SHA-224.
>>> import Binary
>>> "abc"
..> |> Binary.fromStringAsUtf8
..> |> SHA.sha224
..> |> Binary.toHex
"23097D223405D8228642A477BDA255B32AADBCE4BDA0B3F7E36C9DA7"
sha256 : Binary.Bits -> Binary.Bits
SHA-256.
>>> import Binary
>>> "abc"
..> |> Binary.fromStringAsUtf8
..> |> SHA.sha256
..> |> Binary.toHex
"BA7816BF8F01CFEA414140DE5DAE2223B00361A396177A9CB410FF61F20015AD"
sha384 : Binary.Bits -> Binary.Bits
SHA-384.
>>> import Binary
>>> "abc"
..> |> Binary.fromStringAsUtf8
..> |> SHA.sha384
..> |> Binary.toHex
"CB00753F45A35E8BB5A03D699AC65007272C32AB0EDED1631A8B605A43FF5BED8086072BA1E7CC2358BAECA134C825A7"
sha512 : Binary.Bits -> Binary.Bits
SHA-512.
>>> import Binary
>>> "abc"
..> |> Binary.fromStringAsUtf8
..> |> SHA.sha512
..> |> Binary.toHex
"DDAF35A193617ABACC417349AE20413112E6FA4E89A97EA20A9EEEE64B55D39A2192992A274FC1A836BA3C23A3FEEBBD454D4423643CE80E2A9AC94FA54CA49F"