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 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119
|
Name: cryptohash
Version: 0.11.9
Description:
DEPRECATED: this library is still fully functional, but please use cryptonite for new projects
and convert old one to use cryptonite. This is where things are at nowadays.
.
A collection of crypto hashes, with a practical incremental and one-pass, pure APIs,
with performance close to the fastest implementations available in other languages.
.
The implementations are made in C with a haskell FFI wrapper that hide the C implementation.
.
Simple examples using the unified API:
.
> import Crypto.Hash
>
> sha1 :: ByteString -> Digest SHA1
> sha1 = hash
>
> hexSha3_512 :: ByteString -> String
> hexSha3_512 bs = show (hash bs :: Digest SHA3_512)
.
Simple examples using the module API:
.
> import qualified Crypto.Hash.SHA1 as SHA1
>
> main = putStrLn $ show $ SHA1.hash (Data.ByteString.pack [0..255])
.
> import qualified Crypto.Hash.SHA3 as SHA3
>
> main = putStrLn $ show $ digest
> where digest = SHA3.finalize ctx
> ctx = foldl' SHA3.update iCtx (map Data.ByteString.pack [ [1,2,3], [4,5,6] ]
> iCtx = SHA3.init 224
License: BSD3
License-file: LICENSE
Copyright: Vincent Hanquez <vincent@snarc.org>
Author: Vincent Hanquez <vincent@snarc.org>
Maintainer: Vincent Hanquez <vincent@snarc.org>
Synopsis: collection of crypto hashes, fast, pure and practical
Category: Data, Cryptography
Build-Type: Simple
Cabal-Version: >=1.8
Homepage: http://github.com/vincenthz/hs-cryptohash
extra-source-files:
cbits/bitfn.h cbits/sha512.h cbits/sha3.h
cbits/skein.h cbits/skein256.h cbits/skein512.h
README.md
Library
Build-Depends: base >= 4 && < 6, bytestring, byteable, cryptonite >= 0.13, memory, ghc-prim
if impl(ghc >= 7.2.1)
Extensions: Trustworthy
Extensions: ForeignFunctionInterface
Exposed-modules: Crypto.Hash
Crypto.Hash.Types
Crypto.MAC
Crypto.Hash.SHA1
Crypto.Hash.SHA224
Crypto.Hash.SHA256
Crypto.Hash.SHA384
Crypto.Hash.SHA512
Crypto.Hash.SHA512t
Crypto.Hash.SHA3
Crypto.Hash.MD2
Crypto.Hash.MD4
Crypto.Hash.MD5
Crypto.Hash.RIPEMD160
Crypto.Hash.Skein256
Crypto.Hash.Skein512
Crypto.Hash.Tiger
Crypto.Hash.Whirlpool
Crypto.MAC.HMAC
Crypto.MAC.SHA3
Other-modules: Crypto.Hash.Internal
ghc-options: -Wall -optc-O3 -fno-cse -fwarn-tabs
C-sources: cbits/sha512.c
cbits/sha3.c
cbits/skein256.c
cbits/skein512.c
Include-Dirs: cbits
if (arch(i386) || arch(x86_64))
cpp-options: -DARCH_X86
Test-Suite test-kat
type: exitcode-stdio-1.0
hs-source-dirs: Tests
Main-Is: KAT.hs
Build-depends: base >= 4 && < 5
, bytestring
, byteable
, HUnit
, QuickCheck >= 2
, tasty
, tasty-quickcheck
, tasty-hunit
, cryptohash
Benchmark bench-hashes
Main-Is: Bench.hs
hs-source-dirs: Bench
type: exitcode-stdio-1.0
Build-depends: base >= 4, bytestring, criterion, cryptohash
Benchmark bench-hmac
Main-Is: BenchHMAC.hs
hs-source-dirs: Bench
type: exitcode-stdio-1.0
Build-depends: base >= 4, bytestring, criterion, cryptohash, byteable
Benchmark bench-api
Main-Is: BenchAPI.hs
hs-source-dirs: Bench
type: exitcode-stdio-1.0
Build-depends: base >= 4, bytestring, criterion, cryptohash, byteable
source-repository head
type: git
location: git://github.com/vincenthz/hs-cryptohash
|