HsOpenSSL-0.11.1.1: Partial OpenSSL binding for Haskell

Safe HaskellNone
LanguageHaskell98

OpenSSL.EVP.PKey

Description

An interface to asymmetric cipher keypair.

Synopsis

Documentation

class (Eq k, Typeable k, PKey k) => PublicKey k where Source

Instances of this class has at least public portion of a keypair. They might or might not have the private key.

Minimal complete definition

Nothing

Methods

fromPublicKey :: k -> SomePublicKey Source

Wrap an arbitrary public key into polymorphic type SomePublicKey.

toPublicKey :: SomePublicKey -> Maybe k Source

Cast from the polymorphic type SomePublicKey to the concrete type. Return Nothing if failed.

class PublicKey a => KeyPair a where Source

Instances of this class has both of public and private portions of a keypair.

Minimal complete definition

Nothing

Methods

fromKeyPair :: a -> SomeKeyPair Source

Wrap an arbitrary keypair into polymorphic type SomeKeyPair.

toKeyPair :: SomeKeyPair -> Maybe a Source

Cast from the polymorphic type SomeKeyPair to the concrete type. Return Nothing if failed.

data SomePublicKey Source

This is an opaque type to hold an arbitrary public key in it. The actual key type can be safelly type-casted using toPublicKey.

data SomeKeyPair Source

This is an opaque type to hold an arbitrary keypair in it. The actual key type can be safelly type-casted using toKeyPair.