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.
This package is in production use by a number of Haskell based systems and stable. You may also be interested in the 'tls' package, <http://hackage.haskell.org/package/tls>, which is a pure Haskell implementation of SSL. .