Haskell Implementation of the RNCryptor spec
This library implements the specification for the RNCryptor encrypted file format by Rob Napier.
Current Supported Versions
- V3 - Spec
The library uses by default a fast C layer to compute the PBKDF2, but that requires the
presence of the OpenSSL libraries on the target system. In case this is a too rigid
requirement, you can switch back to a pure (slower) Haskell implementation by
turning off the
fastpbkdf2 cabal flag.
- Key-based test vectors
- Key-derivation test vectors
Contributors (Sorted by name)
- Alfredo Di Napoli (creator and maintainer)
- Rob Napier (gave me the key insight to use the previous cipher text as IV for the new block)
- Tim Docker (Added decryptEither and gave us momentum in turning decrypt into a total function)
- Tom Titchener (added support for HMAC validation)
This library scratches my own itches, but please fork away! Pull requests are encouraged.