AH
ahf/luke
Erlang NIF for the post-quantum key exchange: A New Hope.
Luke
Version: 1.3.0 (New Hope: 20160815)
Authors: Alexander Færøy (ahf@0x90.dk).
Luke is an Erlang NIF for the post-quantum key exchange: A New Hope.
For more information about A New Hope, including the paper itself, see github.com/tpoeppelmann/newhope
and cryptojedi.org.
Luke also ships with optional support for the Tor implementation of A New Hope.
Use the luke_tor module instead of luke if you have a need for that.
Example Usage
- Alice generates a new keypair and sends her public key to Bob.
#{ secret := AliceSecretKey, public := AlicePublicKey } = luke:keypair().- Bob uses Alice's public key to compute the shared secret and a public key that he then sends back to Alice.
#{ shared := BobSharedSecret, public := BobPublicKey } = luke:sharedb(AlicePublicKey).- Alice computes the shared secret using her own secret key and Bob's public
key.
AliceSharedSecret = luke:shareda(AliceSecretKey, BobPublicKey).- You can now verify that the shared secret is the same.
AliceSharedSecret =:= BobSharedSecret.Modules
| luke |
| luke_tor |