|
|
|
|
|
|
| Synopsis |
|
|
|
|
| Automatic key generation
|
|
|
| :: FilePath | File name where key is stored.
| | -> IO Word256 | The actual 256-bit key.
| | Get a 256-bit key from the given text file.
If the file does not exist, or did not contain enough bits,
a random key will be generated and stored in that file.
|
|
|
|
| The default key file.
|
|
|
| Simply calls getKey "client_session_key.aes"
|
|
| Actual encryption/decryption
|
|
|
| :: AESKey k | | | => k | The key used for encryption.
| | -> ByteString | The data to encrypt.
| | -> String | Encrypted and encoded data.
| | Encrypt with the given key and base-64 encode.
A hash is stored inside the encrypted key so that, upon decryption,
integrity can be guaranteed.
|
|
|
|
| :: (AESKey k, MonadFailure ClientSessionException m) | | | => k | The key used for encryption.
| | -> String | Data to decrypt.
| | -> m ByteString | The decrypted data, if possible.
| | Base-64 decode and decrypt with the given key, if possible. Calls
failure if either the original string is not a valid base-64 encoded
string, or the hash at the beginning of the decrypted string does not match.
|
|
|
| Key types and classes.
|
|
|
|
| class AESKeyIndirection a => AESKey a | Source |
|
| Instances | |
|
|
| Exceptions
|
|
| data ClientSessionException | Source |
|
Instances | |
|
|
| Produced by Haddock version 2.6.1 |