argon2-1.3.0.0: argon2.cabal
cabal-version: 1.22
name: argon2
version: 1.3.0.0
synopsis: Memory-hard password hash and proof-of-work function
description:
Argon2 is the key derivation function (KDF) selected as the winner of the [Password Hashing Competition](https://en.wikipedia.org/wiki/Password_Hashing_Competition). The API exposed by this bindings provide access to the 3 specified variants
.
* @Argon2d@ (maximize resistance to GPU cracking attacks),
* @Argon2i@ (optimized to resist side-channel attacks), and
* @Argon2id@ (hybrid version combining @Argon2d@ and @Argon2i@)
.
and allows to control various parameters (time cost, memory cost, parallelism) of the Argon2 function. Moreover, it is also supported to generate and verify the deprecated version 1.0 hashes, as well as the current version 1.3 hashes.
.
The Haskell API supports both raw binary hashes as well as the ASCII-based [PHC string format](https://github.com/P-H-C/phc-string-format/blob/master/phc-sf-spec.md).
.
This version provides bindings to the \"@20171227@\" release of the [Argon2 reference implementation (libargon2)](https://github.com/P-H-C/phc-winner-argon2) of the Argon2 password-hashing function.
.
Please refer to the [Argon2 specification](https://github.com/P-H-C/phc-winner-argon2/blob/master/argon2-specs.pdf) for more information.
license: BSD3
license-files: LICENSE
phc-winner-argon2/LICENSE
author: Ollie Charles, Herbert Valerio Riedel
maintainer: Herbert Valerio Riedel <hvr@gnu.org>
bug-reports: https://github.com/hvr/argon2/issues
category: Cryptography
build-type: Simple
extra-source-files: Changelog.md
phc-winner-argon2/include/argon2.h
phc-winner-argon2/include/hs_argon2_mangling.h
phc-winner-argon2/src/blake2/blake2-impl.h
phc-winner-argon2/src/blake2/blake2.h
phc-winner-argon2/src/blake2/blamka-round-ref.h
phc-winner-argon2/src/blake2/blamka-round-opt.h
phc-winner-argon2/src/core.h
phc-winner-argon2/src/encoding.h
phc-winner-argon2/src/thread.h
source-repository head
type: git
location: https://github.com/hvr/argon2.git
flag use-system-library
description: Link against system @libargon2@ library (discovery via @pkg-config(1)@) rather than using embedded copy of @libargon2@
default: False
manual: True
flag non-optimised-c
description: Force use of non-optimised C routines on @x86_64@. Ineffective when @use-system-library@ flag is active.
default: False
manual: True
library
default-language: Haskell2010
exposed-modules: Crypto.Argon2.FFI
Crypto.Argon2
build-depends: base >= 4.8 && < 4.12
, bytestring == 0.10.*
, deepseq == 1.4.*
, text-short >= 0.1.2 && < 0.2
hs-source-dirs: src
ghc-options: -Wall
if impl(ghc >= 8.0)
ghc-options: -Wno-missing-pattern-synonym-signatures
if flag(use-system-library)
cpp-options: -DUSE_SYSTEM_ARGON2=1
pkgconfig-depends: argon2
else
cpp-options: -DUSE_SYSTEM_ARGON2=0
c-sources: phc-winner-argon2/src/argon2.c
phc-winner-argon2/src/core.c
phc-winner-argon2/src/blake2/blake2b.c
phc-winner-argon2/src/thread.c
phc-winner-argon2/src/encoding.c
if arch(x86_64) && !flag(non-optimised-c)
c-sources: phc-winner-argon2/src/opt.c
else
c-sources: phc-winner-argon2/src/ref.c
include-dirs: phc-winner-argon2/src
phc-winner-argon2/include
cc-options: -O3
test-suite tests
default-language: Haskell2010
type: exitcode-stdio-1.0
hs-source-dirs: src-tests
main-is: Tests.hs
build-depends: argon2
, base
, bytestring
, QuickCheck == 2.11.*
, tasty-quickcheck == 0.10.*
, tasty-hunit == 0.10.*
, tasty == 1.0.*
ghc-options: -threaded