Skip to content
This repository was archived by the owner on Jan 28, 2024. It is now read-only.

moriturus/lamport_signature

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

lamport_signature

Crates.io docs.rs Build Status GitHub license

lamport_signature is a Rust implementation of the Lamport one-time signature scheme.

Difference from the lamport_sigs crate

  • lamport_signature can use arbitrary fixed output size digest algorithm implemented in RustCrypto/hashes.
  • lamport_signature can use arbitrary RNG (Random Number Generator) implemented in rust-lang-nursery/rand.

Documentation

Documentation is available here.

Usage

extern crate lamport_signature; extern crate sha2; extern crate rand; use lamport_signature::{PublicKey, PrivateKey, generate_keys}; use sha2::Sha256; use rand::thread_rng; let mut rng = thread_rng(); let (mut private_key, public_key) = generate_keys::<Sha256, _>(&mut rng); let signature = private_key.sign(b"Hello, World!").expect("signing failed"); assert!(public_key.verify(&signature, b"Hello, World!"));

Bug Reporting

Please report bugs either as pull requests or as issues in the issue tracker. lamport_signature has a full disclosure vulnerability policy. Please do NOT attempt to report any security vulnerability in this code privately to anybody.

License

MIT License.

Packages

 
 
 

Contributors

Languages