| License | BSD-style | 
|---|---|
| Maintainer | Vincent Hanquez <[email protected]> | 
| Stability | experimental | 
| Portability | unknown | 
| Safe Haskell | Safe-Inferred | 
| Language | Haskell2010 | 
Crypto.PubKey.Curve25519
Contents
Description
Curve25519 support
Synopsis
- data SecretKey
 - data PublicKey
 - data DhSecret
 - dhSecret :: ByteArrayAccess b => b -> CryptoFailable DhSecret
 - publicKey :: ByteArrayAccess bs => bs -> CryptoFailable PublicKey
 - secretKey :: ByteArrayAccess bs => bs -> CryptoFailable SecretKey
 - dh :: PublicKey -> SecretKey -> DhSecret
 - toPublic :: SecretKey -> PublicKey
 - generateSecretKey :: MonadRandom m => m SecretKey
 
Documentation
A Curve25519 Secret key
A Curve25519 public key
A Curve25519 Diffie Hellman secret related to a public key and a secret key.
Smart constructors
dhSecret :: ByteArrayAccess b => b -> CryptoFailable DhSecret Source #
Create a DhSecret from a bytearray object
publicKey :: ByteArrayAccess bs => bs -> CryptoFailable PublicKey Source #
Try to build a public key from a bytearray
secretKey :: ByteArrayAccess bs => bs -> CryptoFailable SecretKey Source #
Try to build a secret key from a bytearray
Methods
dh :: PublicKey -> SecretKey -> DhSecret Source #
Compute the Diffie Hellman secret from a public key and a secret key.
This implementation may return an all-zero value as it does not check for the condition.
generateSecretKey :: MonadRandom m => m SecretKey Source #
Generate a secret key.