#signature #ed25519 #minisign

minisign-verify

A small crate to verify Minisign signatures

13 releases

0.2.3 Dec 9, 2024
0.2.2 Aug 30, 2024
0.2.1 Mar 30, 2022
0.2.0 Oct 8, 2021
0.1.3 Apr 25, 2019

#145 in Cryptography

Download history 20065/week @ 2025-01-13 18290/week @ 2025-01-20 19034/week @ 2025-01-27 19251/week @ 2025-02-03 19083/week @ 2025-02-10 20155/week @ 2025-02-17 21716/week @ 2025-02-24 20129/week @ 2025-03-03 21762/week @ 2025-03-10 21913/week @ 2025-03-17 23030/week @ 2025-03-24 26232/week @ 2025-03-31 23468/week @ 2025-04-07 23822/week @ 2025-04-14 23854/week @ 2025-04-21 21952/week @ 2025-04-28

95,621 downloads per month
Used in 112 crates (13 directly)

MIT license

86KB
2.5K SLoC

A small crate to verify Minisign signatures.

Example

use minisign_verify::{PublicKey, Signature};

let public_key =
    PublicKey::from_base64("RWQf6LRCGA9i53mlYecO4IzT51TGPpvWucNSCh1CBM0QTaLn73Y7GFO3")
        .expect("Unable to decode the public key");

let signature = Signature::decode(
    "untrusted comment: signature from minisign secret key
RUQf6LRCGA9i559r3g7V1qNyJDApGip8MfqcadIgT9CuhV3EMhHoN1mGTkUidF/\
     z7SrlQgXdy8ofjb7bNJJylDOocrCo8KLzZwo=
trusted comment: timestamp:1633700835\tfile:test\tprehashed
wLMDjy9FLAuxZ3q4NlEvkgtyhrr0gtTu6KC4KBJdITbbOeAi1zBIYo0v4iTgt8jJpIidRJnp94ABQkJAgAooBQ==",
)
.expect("Unable to decode the signature");

let bin = b"test";
public_key
    .verify(&bin[..], &signature, false)
    .expect("Signature didn't verify");

minisign-verify

A small, zero-dependencies Rust crate to verify Minisign signatures.

API documentation

Example:

let public_key =
    PublicKey::from_base64("RWQf6LRCGA9i53mlYecO4IzT51TGPpvWucNSCh1CBM0QTaLn73Y7GFO3")
        .expect("Unable to decode the public key");

let signature = Signature::decode(
    "untrusted comment: signature from minisign secret key
RWQf6LRCGA9i59SLOFxz6NxvASXDJeRtuZykwQepbDEGt87ig1BNpWaVWuNrm73YiIiJbq71Wi+dP9eKL8OC351vwIasSSbXxwA=
trusted comment: timestamp:1555779966\tfile:test
QtKMXWyYcwdpZAlPF7tE2ENJkRd1ujvKjlj1m9RtHTBnZPa5WKU5uWRs5GoP5M/VqE81QFuMKI5k/SfNQUaOAA==",
    ).expect("Unable to decode the signature");

let bin = b"test";
public_key.verify(&bin[..], &signature, false).expect("Signature didn't verify");

No runtime deps