#shamir-secret-sharing #pure-of-shamir

shamir

Shamir is a pure Rust implementation of Shamir's secret sharing

4 stable releases

Uses old Rust 2015

2.0.0 Jan 21, 2020
1.0.2 Jan 24, 2016

#22 in #shamir-secret-sharing

Download history 103/week @ 2025-10-18 69/week @ 2025-10-25 65/week @ 2025-11-01 54/week @ 2025-11-08 83/week @ 2025-11-15 47/week @ 2025-11-22 93/week @ 2025-11-29 81/week @ 2025-12-06 85/week @ 2025-12-13 78/week @ 2025-12-20 62/week @ 2025-12-27 60/week @ 2026-01-03 205/week @ 2026-01-10 198/week @ 2026-01-17 50/week @ 2026-01-24 96/week @ 2026-01-31

556 downloads per month

MIT license

16KB
303 lines

Shamir

Coverage Status

Build Status

Shamir is a pure Rust implementation of Shamir's secret sharing.

Install

To install shamir into your application, you need to add it to your cargo.toml:

[dependencies]
shamir = "~1.0"

and you need to include it at the top of oyur main.rs:

extern crate shamir;

use shamir::SecretData;

Usage

extern crate shamir;

use shamir::SecretData;

fn main() {
    let secret_data = SecretData::with_secret("Hello World!", 3);

    let share1 = secret_data.get_share(1);
    let share2 = secret_data.get_share(2);
    let share3 = secret_data.get_share(3);

    let recovered = SecretData::recover_secret(3, vec![share1, share2, share3]).unwrap();

    println!("Recovered {}", recovered);
}

Dependencies

~1.5MB
~20K SLoC