@hackage / cryptonite

Cryptography Primitives sink

Version Deprecated package0.30

About

Metadata

  • Last updated , by VincentHanquez
  • License BSD-3-Clause
  • Categories Cryptography
  • Maintained by: vincent@snarc.org

  • Lottery factor: 0

Links

Installation

Tested Compilers

  1. 9.2.2
  2. 9.0.2
  3. 8.10.7
  4. 8.8.4

Package Flags

Use the -f option with cabal commands to enable flags

    support_aesni (on by default)

    allow compilation with AESNI on system and architecture that supports it

    support_rdrand (on by default)

    allow compilation with RDRAND on system and architecture that supports it

    support_pclmuldq (off by default)

    Allow compilation with pclmuldq on architecture that supports it

    support_sse (off by default)

    Use SSE optimized version of (BLAKE2, ARGON2)

    integer-gmp (on by default)

    Whether or not to use GMP for some functions

    support_deepseq (on by default)

    add deepseq instances for cryptographic types

    old_toolchain_inliner (off by default)

    use -fgnu89-inline to workaround an old compiler linker glibc issue.

    check_alignment (off by default)

    extra check on alignment in C layers, which cause lowlevel assert errors. for debugging only.

    use_target_attributes (on by default)

    use GCC / clang function attributes instead of global target options.

Readme

A repository of cryptographic primitives.

  • Symmetric ciphers: AES, DES, 3DES, CAST5, Blowfish, Twofish, Camellia, RC4, Salsa, XSalsa, ChaCha.

  • Hash: SHA1, SHA2, SHA3, SHAKE, MD2, MD4, MD5, Keccak, Skein, Ripemd, Tiger, Whirlpool, Blake2

  • MAC: HMAC, KMAC, Poly1305

  • Asymmetric crypto: DSA, RSA, DH, ECDH, ECDSA, ECC, Curve25519, Curve448, Ed25519, Ed448

  • Key Derivation Function: PBKDF2, Scrypt, HKDF, Argon2, BCrypt, BCryptPBKDF

  • 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 strives to be a cryptographic kitchen sink that provides cryptography for everyone.

Evaluate the security related to your requirements before using.

Read Crypto.Tutorial for a quick start guide.