cryptonite

Cryptonite is a haskell repository of cryptographic primitives. Each crypto
algorithm has specificities that are hard to wrap in common APIs and types,
so instead of trying to provide a common ground for algorithms, this package
provides a non-consistent low-level API.
If you have no idea what you’re doing, please do not use this directly.
Instead, rely on higher level protocols or implementations.
Documentation: cryptonite on hackage
Versioning
Development versions are an incremental number prefixed by 0. There is no
API stability between development versions.
Production versions : TBD
Coding Style
The coding style of this project mostly follows:
haskell-style
Support
cryptonite supports the following platforms:
- Windows >= 8
- OSX >= 10.8
- Linux
- BSDs
On the following architectures:
On the following haskell versions:
- GHC 7.0.x
- GHC 7.4.x
- GHC 7.6.x
- GHC 7.8.x
- GHC 7.10.x
Further platforms and architectures probably work too, but since the
maintainer(s) don’t have regular access to them, we can’t commit to
further support.
Known Building Issues
On OSX <= 10.7, the system compiler doesn’t understand the ‘-maes’ option, and
with the lack of autodetection feature builtin in .cabal file, it is left on
the user to disable the aesni. See the [Disabling AESNI] section
Disabling AESNI
It may be useful to disable AESNI for building, testing or runtime purposes.
This is achieved with the support_aesni flag.
As part of configure of cryptonite:
cabal configure --flag='-support_aesni'
or as part of an installation:
cabal install --constraint="cryptonite -support_aesni"
For help with cabal flags, see: stackoverflow : is there a way to define flags for cabal
Links