The HsOpenSSL package

[Tags:library, public-domain, test]

HsOpenSSL is an OpenSSL binding for Haskell. It can generate RSA and DSA keys, read and write PEM files, generate message digests, sign and verify messages, encrypt and decrypt messages. It has also some capabilities of creating SSL clients and servers.

Please note that this project has started at the time when there were no pure-Haskell implementations of TLS. Now there is tls package (, which looks pretty saner than HsOpenSSL especially for initialisation and error handlings. So PHO (the initial author of HsOpenSSL) wants to encourage you to use and improve the tls package instead as long as possible. The only problem is that the tls package has not received as much review as OpenSSL from cryptography specialists yet, thus we can't assume it's secure enough.


Versions 0.1, 0.1.1, 0.2, 0.3, 0.3.1, 0.4, 0.4.1, 0.4.2, 0.5, 0.5.1, 0.5.2, 0.6, 0.6.1, 0.6.2, 0.6.3, 0.6.4, 0.6.5, 0.7, 0.8,,, 0.9,, 0.10, 0.10.1,,,,, 0.10.2,, 0.10.3,,,,,,, 0.10.4, 0.10.5, 0.11, 0.11.1,, 0.11.2,,,,, 0.11.3,,, 0.11.4,,,,,,,,,
Change log NEWS
Dependencies base (==4.*), bytestring, ghc-prim, integer, integer-gmp (==0.*), network (>=, old-locale, time (>=1.1.1 && <1.5) [details]
License PublicDomain
Author Adam Langley, Mikhail Vorozhtsov, PHO, Taru Karttunen
Maintainer PHO <pho at cielonegro dot org>
Category Cryptography
Home page
Bug tracker
Source repository head: git clone git://
Uploaded Sat Jul 21 05:54:11 UTC 2012 by MasatakeDaimon
Updated Fri Dec 19 12:36:23 UTC 2014 by HerbertValerioRiedel to revision 1
Distributions Debian:, FreeBSD:, LTSHaskell:, NixOS:, Stackage:, Tumbleweed:
Downloads 21442 total (316 in the last 30 days)
1 []
Status Docs uploaded by user
Build status unknown [no reports yet]
Hackage Matrix CI




fast-bignumEnable fast moving of bignums between OpenSSL and GMP (GHC Only).EnabledAutomatic

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info


Maintainer's Corner

For package maintainers and hackage trustees