aboutsummaryrefslogtreecommitdiff
path: root/src/Data/Digest/Sha2.hs
blob: 0aa814ee68ce315dccc1de097b93387cd4d25a37 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
module Data.Digest.Sha2
  ( sha224
  , sha256
  , sha384
  , sha512
  ) where

import Data.ByteString (ByteString)

import qualified Data.Digest.Evp as Evp

foreign import ccall "openssl/digest.h EVP_sha224" evpSha224 :: Evp.Algo

foreign import ccall "openssl/digest.h EVP_sha256" evpSha256 :: Evp.Algo

foreign import ccall "openssl/digest.h EVP_sha384" evpSha384 :: Evp.Algo

foreign import ccall "openssl/digest.h EVP_sha512" evpSha512 :: Evp.Algo

sha224 :: ByteString -> Evp.Digest
sha224 = Evp.hash evpSha224

sha256 :: ByteString -> Evp.Digest
sha256 = Evp.hash evpSha256

sha384 :: ByteString -> Evp.Digest
sha384 = Evp.hash evpSha384

sha512 :: ByteString -> Evp.Digest
sha512 = Evp.hash evpSha512