mirror of
https://github.com/kazu-yamamoto/crypton.git
synced 2024-10-06 00:37:20 +03:00
302 lines
11 KiB
Plaintext
302 lines
11 KiB
Plaintext
Name: cryptonite
|
|
Version: 0.8
|
|
Synopsis: Cryptography Primitives sink
|
|
Description:
|
|
A repository of cryptographic primitives.
|
|
.
|
|
* Symmetric ciphers: AES, DES, 3DES, Blowfish, Camellia, RC4, Salsa, ChaCha.
|
|
.
|
|
* Hash: SHA1, SHA2, SHA3, MD2, MD4, MD5, Kekkak, Skein, Ripemd, Tiger, Whirlpool
|
|
.
|
|
* MAC: HMAC, Poly1305
|
|
.
|
|
* Assymmetric crypto: DSA, RSA, DH, ECDH, ECDSA, ECC, Curve25519, Ed25519
|
|
.
|
|
* Key Derivation Function: PBKDF2, Scrypt
|
|
.
|
|
* Cryptographic Random generation: System Entropy, Deterministic Random Generator
|
|
.
|
|
* Data related: Anti-Forensic Information Splitter (AFIS)
|
|
.
|
|
If anything cryptographic related is missing from here, submit
|
|
a pull request to have it added. This package strive to be a
|
|
cryptographic kitchen sink that provides cryptography for everyone.
|
|
.
|
|
Evaluate the security related to your requirements before using.
|
|
License: BSD3
|
|
License-file: LICENSE
|
|
Copyright: Vincent Hanquez <vincent@snarc.org>
|
|
Author: Vincent Hanquez <vincent@snarc.org>
|
|
Maintainer: vincent@snarc.org
|
|
Category: Cryptography
|
|
Stability: experimental
|
|
Build-Type: Simple
|
|
Homepage: https://github.com/haskell-crypto/cryptonite
|
|
Bug-reports: https://github.com/haskell-crypto/cryptonite/issues
|
|
Cabal-Version: >=1.10
|
|
extra-doc-files: README.md CHANGELOG.md
|
|
extra-source-files: cbits/*.h
|
|
cbits/aes/*.h
|
|
cbits/ed25519/*.h
|
|
cbits/p256/*.h
|
|
cbits/blake2/*.h
|
|
cbits/blake2/*.c
|
|
cbits/aes/x86ni_impl.c
|
|
tests/*.hs
|
|
|
|
source-repository head
|
|
type: git
|
|
location: https://github.com/haskell-crypto/cryptonite
|
|
|
|
Flag support_aesni
|
|
Description: allow compilation with AESNI on system and architecture that supports it
|
|
Default: True
|
|
Manual: True
|
|
|
|
Flag support_rdrand
|
|
Description: allow compilation with AESNI on system and architecture that supports it
|
|
Default: True
|
|
Manual: True
|
|
|
|
Flag support_pclmuldq
|
|
Description: Allow compilation with pclmuldq on architecture that supports it
|
|
Default: False
|
|
Manual: True
|
|
|
|
Flag integer-gmp
|
|
Description: Whether or not to use GMP for some functions
|
|
Default: True
|
|
Manual: True
|
|
|
|
Flag support_deepseq
|
|
Description: add deepseq instances for cryptographic types
|
|
Default: True
|
|
Manual: True
|
|
|
|
Library
|
|
Exposed-modules: Crypto.Cipher.AES
|
|
Crypto.Cipher.Blowfish
|
|
Crypto.Cipher.Camellia
|
|
Crypto.Cipher.ChaCha
|
|
Crypto.Cipher.ChaChaPoly1305
|
|
Crypto.Cipher.DES
|
|
Crypto.Cipher.RC4
|
|
Crypto.Cipher.Salsa
|
|
Crypto.Cipher.TripleDES
|
|
Crypto.Cipher.Types
|
|
Crypto.Data.AFIS
|
|
Crypto.Data.Padding
|
|
Crypto.Error
|
|
Crypto.MAC.Poly1305
|
|
Crypto.MAC.HMAC
|
|
Crypto.Number.Basic
|
|
Crypto.Number.F2m
|
|
Crypto.Number.Generate
|
|
Crypto.Number.ModArithmetic
|
|
Crypto.Number.Prime
|
|
Crypto.Number.Serialize
|
|
Crypto.Number.Serialize.Internal
|
|
Crypto.KDF.PBKDF2
|
|
Crypto.KDF.Scrypt
|
|
Crypto.KDF.BCrypt
|
|
Crypto.Hash
|
|
Crypto.Hash.IO
|
|
Crypto.Hash.Algorithms
|
|
Crypto.PubKey.Curve25519
|
|
Crypto.PubKey.MaskGenFunction
|
|
Crypto.PubKey.DH
|
|
Crypto.PubKey.DSA
|
|
Crypto.PubKey.ECC.Generate
|
|
Crypto.PubKey.ECC.Prim
|
|
Crypto.PubKey.ECC.DH
|
|
Crypto.PubKey.ECC.ECDSA
|
|
Crypto.PubKey.ECC.P256
|
|
Crypto.PubKey.ECC.Types
|
|
Crypto.PubKey.Ed25519
|
|
Crypto.PubKey.RSA
|
|
Crypto.PubKey.RSA.PKCS15
|
|
Crypto.PubKey.RSA.Prim
|
|
Crypto.PubKey.RSA.PSS
|
|
Crypto.PubKey.RSA.OAEP
|
|
Crypto.PubKey.RSA.Types
|
|
Crypto.Random
|
|
Crypto.Random.Types
|
|
Crypto.Random.Entropy
|
|
Crypto.Random.EntropyPool
|
|
Crypto.Random.Entropy.Unsafe
|
|
Other-modules: Crypto.Cipher.AES.Primitive
|
|
Crypto.Cipher.Blowfish.Box
|
|
Crypto.Cipher.Blowfish.Primitive
|
|
Crypto.Cipher.Camellia.Primitive
|
|
Crypto.Cipher.DES.Primitive
|
|
Crypto.Cipher.Types.AEAD
|
|
Crypto.Cipher.Types.Base
|
|
Crypto.Cipher.Types.Block
|
|
Crypto.Cipher.Types.GF
|
|
Crypto.Cipher.Types.Stream
|
|
Crypto.Cipher.Types.Utils
|
|
Crypto.Error.Types
|
|
Crypto.Number.Compat
|
|
Crypto.Hash.Types
|
|
Crypto.Hash.SHA1
|
|
Crypto.Hash.SHA224
|
|
Crypto.Hash.SHA256
|
|
Crypto.Hash.SHA384
|
|
Crypto.Hash.SHA512
|
|
Crypto.Hash.SHA512t
|
|
Crypto.Hash.SHA3
|
|
Crypto.Hash.Kekkak
|
|
Crypto.Hash.MD2
|
|
Crypto.Hash.MD4
|
|
Crypto.Hash.MD5
|
|
Crypto.Hash.BLAKE2s
|
|
Crypto.Hash.BLAKE2sp
|
|
Crypto.Hash.BLAKE2b
|
|
Crypto.Hash.BLAKE2bp
|
|
Crypto.Hash.RIPEMD160
|
|
Crypto.Hash.Skein256
|
|
Crypto.Hash.Skein512
|
|
Crypto.Hash.Tiger
|
|
Crypto.Hash.Whirlpool
|
|
Crypto.Random.Entropy.Source
|
|
Crypto.Random.Entropy.Backend
|
|
Crypto.Random.ChaChaDRG
|
|
Crypto.Random.SystemDRG
|
|
Crypto.Random.Probabilistic
|
|
Crypto.PubKey.Internal
|
|
Crypto.PubKey.ElGamal
|
|
Crypto.Internal.ByteArray
|
|
Crypto.Internal.Compat
|
|
Crypto.Internal.CompatPrim
|
|
Crypto.Internal.DeepSeq
|
|
Crypto.Internal.Imports
|
|
Crypto.Internal.Words
|
|
Crypto.Internal.WordArray
|
|
Build-depends: base >= 4.3 && < 5
|
|
, bytestring
|
|
, memory >= 0.8
|
|
, ghc-prim
|
|
ghc-options: -Wall -fwarn-tabs -optc-O3 -fno-warn-unused-imports
|
|
default-language: Haskell2010
|
|
cc-options: -std=gnu99
|
|
C-sources: cbits/cryptonite_chacha.c
|
|
, cbits/cryptonite_salsa.c
|
|
, cbits/cryptonite_rc4.c
|
|
, cbits/cryptonite_cpu.c
|
|
, cbits/aes/generic.c
|
|
, cbits/aes/gf.c
|
|
, cbits/cryptonite_aes.c
|
|
, cbits/curve25519/curve25519-donna.c
|
|
, cbits/ed25519/ed25519.c
|
|
, cbits/p256/p256.c
|
|
, cbits/p256/p256_ec.c
|
|
, cbits/cryptonite_poly1305.c
|
|
, cbits/cryptonite_sha1.c
|
|
, cbits/cryptonite_sha256.c
|
|
, cbits/cryptonite_sha512.c
|
|
, cbits/cryptonite_sha3.c
|
|
, cbits/cryptonite_kekkak.c
|
|
, cbits/cryptonite_md2.c
|
|
, cbits/cryptonite_md4.c
|
|
, cbits/cryptonite_md5.c
|
|
, cbits/cryptonite_blake2s.c
|
|
, cbits/cryptonite_blake2sp.c
|
|
, cbits/cryptonite_blake2b.c
|
|
, cbits/cryptonite_blake2bp.c
|
|
, cbits/cryptonite_ripemd.c
|
|
, cbits/cryptonite_skein256.c
|
|
, cbits/cryptonite_skein512.c
|
|
, cbits/cryptonite_tiger.c
|
|
, cbits/cryptonite_whirlpool.c
|
|
, cbits/cryptonite_scrypt.c
|
|
, cbits/cryptonite_sysrand.c
|
|
, cbits/blake2/blake2s.c
|
|
, cbits/blake2/blake2sp.c
|
|
, cbits/blake2/blake2b.c
|
|
, cbits/blake2/blake2bp.c
|
|
include-dirs: cbits cbits/ed25519 cbits/blake2
|
|
|
|
-- FIXME armel or mispel is also little endian.
|
|
-- might be a good idea to also add a runtime autodetect mode.
|
|
-- ARCH_ENDIAN_UNKNOWN
|
|
if (arch(i386) || arch(x86_64))
|
|
CPP-options: -DARCH_IS_LITTLE_ENDIAN
|
|
|
|
if arch(i386)
|
|
CPP-options: -DARCH_X86
|
|
|
|
if flag(support_rdrand) && arch(x86_64)
|
|
CPP-options: -DARCH_X86_64
|
|
CPP-options: -DSUPPORT_RDRAND
|
|
Other-modules: Crypto.Random.Entropy.RDRand
|
|
c-sources: cbits/cryptonite_rdrand.c
|
|
|
|
if flag(support_aesni) && (os(linux) || os(freebsd) || os(osx)) && (arch(i386) || arch(x86_64))
|
|
CC-options: -mssse3 -maes -DWITH_AESNI
|
|
if flag(support_pclmuldq)
|
|
CC-options: -msse4.1 -mpclmul -DWITH_PCLMUL
|
|
C-sources: cbits/aes/x86ni.c
|
|
|
|
if os(windows)
|
|
cpp-options: -DWINDOWS
|
|
Build-Depends: Win32
|
|
Other-modules: Crypto.Random.Entropy.Windows
|
|
extra-libraries: advapi32
|
|
else
|
|
Other-modules: Crypto.Random.Entropy.Unix
|
|
|
|
if impl(ghc) && flag(integer-gmp)
|
|
Build-depends: integer-gmp
|
|
|
|
if flag(support_deepseq)
|
|
CPP-options: -DWITH_DEEPSEQ_SUPPORT
|
|
Build-depends: deepseq
|
|
|
|
Test-Suite test-cryptonite
|
|
type: exitcode-stdio-1.0
|
|
hs-source-dirs: tests
|
|
Main-is: Tests.hs
|
|
Other-modules: BlockCipher
|
|
ChaCha
|
|
BCrypt
|
|
Hash
|
|
Imports
|
|
KAT_AES.KATCBC
|
|
KAT_AES.KATECB
|
|
KAT_AES.KATGCM
|
|
KAT_AES.KATOCB3
|
|
KAT_AES.KATXTS
|
|
KAT_AES
|
|
KAT_AFIS
|
|
KAT_Blowfish
|
|
KAT_Camellia
|
|
KAT_Curve25519
|
|
KAT_DES
|
|
KAT_Ed25519
|
|
KAT_HMAC
|
|
KAT_PBKDF2
|
|
KAT_PubKey.DSA
|
|
KAT_PubKey.ECC
|
|
KAT_PubKey.ECDSA
|
|
KAT_PubKey.OAEP
|
|
KAT_PubKey.PSS
|
|
KAT_PubKey.P256
|
|
KAT_PubKey
|
|
KAT_RC4
|
|
KAT_Scrypt
|
|
KAT_TripleDES
|
|
Poly1305
|
|
Salsa
|
|
Utils
|
|
Build-Depends: base >= 3 && < 5
|
|
, bytestring
|
|
, memory
|
|
, byteable
|
|
, tasty
|
|
, tasty-quickcheck
|
|
, tasty-hunit
|
|
, tasty-kat
|
|
, cryptonite
|
|
ghc-options: -Wall -fno-warn-orphans -fno-warn-missing-signatures -fno-warn-unused-imports -rtsopts
|
|
default-language: Haskell2010
|