ghc-cryptohash-sha1/cryptohash-sha1-0.11.100.1.cabal
2020-06-19 16:54:29 +08:00

104 lines
4.2 KiB
Plaintext

cabal-version: >=1.10
name: cryptohash-sha1
version: 0.11.100.1
x-revision: 5
synopsis: Fast, pure and practical SHA-1 implementation
description: {
A practical incremental and one-pass, pure API to
the [SHA-1 cryptographic hash algorithm](https://en.wikipedia.org/wiki/SHA-1) according
to [FIPS 180-4](http://dx.doi.org/10.6028/NIST.FIPS.180-4)
with performance close to the fastest implementations available in other languages.
.
The core SHA-1 algorithm is implemented in C and is thus expected
to be as fast as the standard [sha1sum(1) tool](https://linux.die.net/man/1/sha1sum).
(If, instead, you require a pure Haskell implementation and performance is secondary, please refer to the [SHA package](https://hackage.haskell.org/package/SHA).)
.
Additionally, this package provides support for
.
- HMAC-SHA-1: SHA-1-based [Hashed Message Authentication Codes](https://en.wikipedia.org/wiki/HMAC) (HMAC)
.
conforming to [RFC6234](https://tools.ietf.org/html/rfc6234), [RFC4231](https://tools.ietf.org/html/rfc4231), [RFC5869](https://tools.ietf.org/html/rfc5869), et al..
.
=== Packages in the @cryptohash-*@ family
.
- <https://hackage.haskell.org/package/cryptohash-md5 cryptohash-md5>
- <https://hackage.haskell.org/package/cryptohash-sha1 cryptohash-sha1>
- <https://hackage.haskell.org/package/cryptohash-sha256 cryptohash-sha256>
- <https://hackage.haskell.org/package/cryptohash-sha512 cryptohash-sha512>
.
=== Relationship to the @cryptohash@ package and its API
.
This package has been originally a fork of @cryptohash-0.11.7@ because the @cryptohash@
package had been deprecated and so this package continues to satisfy the need for a
lightweight package providing the SHA-1 hash algorithm without any dependencies on packages
other than @base@ and @bytestring@. The API exposed by @cryptohash-sha1-0.11.*@'s
"Crypto.Hash.SHA1" module is guaranteed to remain a compatible superset of the API provided
by the @cryptohash-0.11.7@'s module of the same name.
.
Consequently, this package is designed to be used as a drop-in replacement for @cryptohash-0.11.7@'s
"Crypto.Hash.SHA1" module, though with
a [clearly smaller footprint by almost 3 orders of magnitude](https://www.reddit.com/r/haskell/comments/5lxv75/psa_please_use_unique_module_names_when_uploading/dbzegx3/).
}
license: BSD3
license-file: LICENSE
copyright: Vincent Hanquez, Herbert Valerio Riedel
maintainer: Herbert Valerio Riedel <hvr@gnu.org>
homepage: https://github.com/hvr/cryptohash-sha1
bug-reports: https://github.com/hvr/cryptohash-sha1/issues
category: Data, Cryptography
build-type: Simple
tested-with: GHC == 7.4.2
, GHC == 7.6.3
, GHC == 7.8.4
, GHC == 7.10.3
, GHC == 8.0.1
extra-source-files: cbits/sha1.h
changelog.md
source-repository head
type: git
location: https://github.com/hvr/cryptohash-sha1.git
library
default-language: Haskell2010
build-depends: base >= 4.5 && < 4.15
, bytestring >= 0.9.2 && < 0.11
hs-source-dirs: src
exposed-modules: Crypto.Hash.SHA1
ghc-options: -Wall -fno-cse -O2
cc-options: -Wall -O3
c-sources: cbits/sha1.c
include-dirs: cbits
test-suite test-sha1
default-language: Haskell2010
other-extensions: OverloadedStrings
type: exitcode-stdio-1.0
hs-source-dirs: src-tests
main-is: test-sha1.hs
build-depends: cryptohash-sha1
, base
, bytestring
, base16-bytestring >= 0.1.1 && < 0.2
, SHA >= 1.6.4 && < 1.7
, tasty == 0.11.*
, tasty-quickcheck == 0.8.*
, tasty-hunit == 0.9.*
benchmark bench-sha1
default-language: Haskell2010
type: exitcode-stdio-1.0
main-is: bench-sha1.hs
hs-source-dirs: src-bench
build-depends: cryptohash-sha1
, base
, bytestring
, criterion == 1.1.*