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

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

#2047 in Cryptography

Download history 26/week @ 2023-11-20 30/week @ 2023-11-27 18/week @ 2023-12-04 49/week @ 2023-12-11 29/week @ 2023-12-18 47/week @ 2023-12-25 90/week @ 2024-01-01 88/week @ 2024-01-08 84/week @ 2024-01-15 92/week @ 2024-01-22 176/week @ 2024-01-29 186/week @ 2024-02-05 125/week @ 2024-02-12 151/week @ 2024-02-19 169/week @ 2024-02-26 79/week @ 2024-03-04

527 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

~525KB