7 releases

0.3.0 Jan 28, 2024
0.2.4 Jan 28, 2024
0.1.0 Jan 12, 2024

#900 in Cryptography

Download history 18/week @ 2024-01-19 14/week @ 2024-01-26 1/week @ 2024-02-16 12/week @ 2024-02-23 7/week @ 2024-03-01 1/week @ 2024-03-08 1/week @ 2024-03-15 35/week @ 2024-03-29 7/week @ 2024-04-05

76 downloads per month

Unlicense

34KB
633 lines

LDWM

LDWM implementation in pure Rust. This library currently provides verification support; eventually, signing support will also be added.

Verification is #no_std compatible.

Example

use ldwm::{LdwmParams, Winternitz, verify::verify, Signature, SHA256_LEN};
let params = LdwmParams {
    w: Winternitz::W4,
    m: 20,
    h: 2,
    k: 4,
};
let msg = "Hello world!\n".as_bytes();
// `auth_path`, `ots`, and `node_num` as from the RFC
let sig = Signature { auth_path, ots, node_num };
assert!(verify(&params, &sig, key, msg));

lib.rs:

LDWM signature verification and generation

Dependencies

~2MB
~37K SLoC