| License | BSD-style | 
|---|---|
| Maintainer | Vincent Hanquez <vincent@snarc.org> | 
| Stability | experimental | 
| Portability | Good | 
| Safe Haskell | None | 
| Language | Haskell2010 | 
Crypto.PubKey.RSA.OAEP
Contents
Description
Synopsis
- data OAEPParams hash seed output = OAEPParams {
- oaepHash :: hash
 - oaepMaskGenAlg :: MaskGenAlgorithm seed output
 - oaepLabel :: Maybe ByteString
 
 - defaultOAEPParams :: (ByteArrayAccess seed, ByteArray output, HashAlgorithm hash) => hash -> OAEPParams hash seed output
 - encryptWithSeed :: HashAlgorithm hash => ByteString -> OAEPParams hash ByteString ByteString -> PublicKey -> ByteString -> Either Error ByteString
 - encrypt :: (HashAlgorithm hash, MonadRandom m) => OAEPParams hash ByteString ByteString -> PublicKey -> ByteString -> m (Either Error ByteString)
 - decrypt :: HashAlgorithm hash => Maybe Blinder -> OAEPParams hash ByteString ByteString -> PrivateKey -> ByteString -> Either Error ByteString
 - decryptSafer :: (HashAlgorithm hash, MonadRandom m) => OAEPParams hash ByteString ByteString -> PrivateKey -> ByteString -> m (Either Error ByteString)
 
Documentation
data OAEPParams hash seed output Source #
Parameters for OAEP encryption/decryption
Constructors
| OAEPParams | |
Fields 
  | |
defaultOAEPParams :: (ByteArrayAccess seed, ByteArray output, HashAlgorithm hash) => hash -> OAEPParams hash seed output Source #
Default Params with a specified hash function
OAEP encryption
Arguments
| :: HashAlgorithm hash | |
| => ByteString | Seed  | 
| -> OAEPParams hash ByteString ByteString | OAEP params to use for encryption  | 
| -> PublicKey | Public key.  | 
| -> ByteString | Message to encrypt  | 
| -> Either Error ByteString | 
Encrypt a message using OAEP with a predefined seed.
Arguments
| :: (HashAlgorithm hash, MonadRandom m) | |
| => OAEPParams hash ByteString ByteString | OAEP params to use for encryption.  | 
| -> PublicKey | Public key.  | 
| -> ByteString | Message to encrypt  | 
| -> m (Either Error ByteString) | 
Encrypt a message using OAEP
OAEP decryption
Arguments
| :: HashAlgorithm hash | |
| => Maybe Blinder | Optional blinder  | 
| -> OAEPParams hash ByteString ByteString | OAEP params to use for decryption  | 
| -> PrivateKey | Private key  | 
| -> ByteString | Cipher text  | 
| -> Either Error ByteString | 
Decrypt a ciphertext using OAEP
When the signature is not in a context where an attacker could gain information from the timing of the operation, the blinder can be set to None.
If unsure always set a blinder or use decryptSafer
Arguments
| :: (HashAlgorithm hash, MonadRandom m) | |
| => OAEPParams hash ByteString ByteString | OAEP params to use for decryption  | 
| -> PrivateKey | Private key  | 
| -> ByteString | Cipher text  | 
| -> m (Either Error ByteString) | 
Decrypt a ciphertext using OAEP and by automatically generating a blinder.