lamport-sig 0.1.1

Lamport Signature
Documentation
extern crate rand;
extern crate bigint;
extern crate rustc_hex;

mod key;

#[cfg(test)]
mod tests {
    use super::*;
    #[test]
    fn test_lamport_signature() {
        let plain_text = "secret message";
        let private_key = key::PrivateKey::new();
        let signature = private_key.sign(&plain_text);
        let public_key = private_key.to_public_key();
        let is_valid = public_key.verify(plain_text, signature);
        assert_eq!(key::PRIVATE_KEY_LENGT, private_key.pairs.len());
        assert_eq!(key::PRIVATE_KEY_LENGT, private_key.public_key.pairs.len());
        assert_eq!(true, is_valid);
    }
}