# Applications and libraries/Cryptography

### From HaskellWiki

< Applications and libraries(Difference between revisions)

(Moved crypto stuff to a separate page.) |
m |
||

(9 intermediate revisions by 5 users not shown) | |||

Line 1: | Line 1: | ||

− | |||

{{LibrariesPage}} | {{LibrariesPage}} | ||

− | == | + | == Libraries == |

+ | See the [http://hackage.haskell.org/packages/archive/pkg-list.html#cat:cryptography Hackage Cryptography] section for a list of current libraries. | ||

+ | |||

+ | ;[http://hackage.haskell.org/package/crypto-api Crypto-API] | ||

+ | : A generic interface (type classes) for cryptographic algorithms, modes of operation, random number generation, and entropy acquisition. | ||

+ | |||

+ | ; [http://hackage.haskell.org/package/cryptocipher CryptoCipher] | ||

+ | : A growing collection of pure haskell implementation of ciphers (AES, Camellia, RC4) and key exchange algorithms (RSA, DH, DSA). | ||

+ | |||

+ | ; [http://hackage.haskell.org/package/cryptohash CryptoHash] | ||

+ | : A very fast implementation of most common crypto hashes algorithms (MD2, MD4, MD5, SHA1, SHA256, SHA384, SHA512, SHA512-t, RIPEMD160, SKEIN256, SKEIN512). | ||

+ | |||

+ | ; [http://hackage.haskell.org/package/DRBG DRBG] | ||

+ | : Deterministic random bit generators (aka PRNGs) based on NIST SP 800-90. | ||

+ | |||

+ | ; [http://hackage.haskell.org/package/hecc hecc] | ||

+ | : Elliptical curve cryptography | ||

+ | |||

+ | ; [http://hackage.haskell.org/package/pwstore-fast PWStore-Fast] | ||

+ | : Fast, safe, password storage. | ||

+ | |||

+ | ; [http://hackage.haskell.org/package/cpsa CPSA] | ||

+ | : The Cryptographic Protocol Shape Analyzer uses Strand Space to validate protocols. | ||

+ | |||

;[http://www.haskell.org/crypto The Haskell Cryptographic Library] | ;[http://www.haskell.org/crypto The Haskell Cryptographic Library] | ||

:A library of cryptographic functions collected together in one package. | :A library of cryptographic functions collected together in one package. | ||

− | ;[http://www. | + | ;[http://www.netsuperbrain.com/rsa-haskell.html RSA-Haskell] |

:A number theory library, RSA library, and RSA programs. | :A number theory library, RSA library, and RSA programs. | ||

;[http://web.comlab.ox.ac.uk/oucl/work/ian.lynagh/ Implementations of MD5, SHA1 and DES] | ;[http://web.comlab.ox.ac.uk/oucl/work/ian.lynagh/ Implementations of MD5, SHA1 and DES] | ||

+ | |||

+ | ;[http://haskell.org/pam PAM authentication] | ||

+ | :PAM (Pluggable Authentication Modules) is a library that makes the task of authenticating a user easier for application developers. Instead of writing a backend for every authentication library (kerberos, shadow, ldap etc.) you only have to write an interface for pam. | ||

+ | |||

+ | ;[http://davidmercer.nfshost.com/projects/shaskell/shaskell.html Shaskell] | ||

+ | :A SHA2 library for sha256 and sha512 hashes, written in pure Haskell. | ||

+ | |||

+ | ;[http://web.comlab.ox.ac.uk/oucl/work/ian.lynagh/HazGuard/ HazGuard] | ||

+ | :An (incomplete) implementation of OpenPGP in Haskell. | ||

+ | |||

+ | {{LibrariesPage}} |

## Latest revision as of 16:52, 30 June 2011

*This page contains a list of libraries and tools in a certain category. For a comprehensive list of such pages, see Applications and libraries.*

## [edit] Libraries

See the Hackage Cryptography section for a list of current libraries.

- Crypto-API
- A generic interface (type classes) for cryptographic algorithms, modes of operation, random number generation, and entropy acquisition.

- CryptoCipher
- A growing collection of pure haskell implementation of ciphers (AES, Camellia, RC4) and key exchange algorithms (RSA, DH, DSA).

- CryptoHash
- A very fast implementation of most common crypto hashes algorithms (MD2, MD4, MD5, SHA1, SHA256, SHA384, SHA512, SHA512-t, RIPEMD160, SKEIN256, SKEIN512).

- DRBG
- Deterministic random bit generators (aka PRNGs) based on NIST SP 800-90.

- hecc
- Elliptical curve cryptography

- PWStore-Fast
- Fast, safe, password storage.

- CPSA
- The Cryptographic Protocol Shape Analyzer uses Strand Space to validate protocols.

- The Haskell Cryptographic Library
- A library of cryptographic functions collected together in one package.

- RSA-Haskell
- A number theory library, RSA library, and RSA programs.

- PAM authentication
- PAM (Pluggable Authentication Modules) is a library that makes the task of authenticating a user easier for application developers. Instead of writing a backend for every authentication library (kerberos, shadow, ldap etc.) you only have to write an interface for pam.

- Shaskell
- A SHA2 library for sha256 and sha512 hashes, written in pure Haskell.

- HazGuard
- An (incomplete) implementation of OpenPGP in Haskell.

*This page contains a list of libraries and tools in a certain category. For a comprehensive list of such pages, see Applications and libraries.*