4 个版本

0.1.2 2019年9月6日
0.1.1 2019年9月3日
0.1.0 2019年9月3日
0.0.0 2019年8月28日

21 in #shamir-secret-sharing

MIT 许可证

16KB
350 代码行数(不含注释)

共享

秘密共享和信息分发共享

例如,使用 Shamir 实现

示例

use sharing::{ShamirSecretSharing, Sharing};

let data = [1, 2, 3, 4, 5].to_vec();

let sharer = ShamirSecretSharing::new(5, 3, rand::thread_rng());

let shares = sharer.share(data.clone()).unwrap();
// You only need 3 out of the 5 shares to reconstruct
let rec = sharer.recontruct(shares[1..=3].to_vec()).unwrap();

assert_eq!(data, rec);

lib.rs:

共享

例如,使用 Shamir 实现

use sharing::{ShamirSecretSharing, Sharing};

let data = [1, 2, 3, 4, 5].to_vec();

let sharer = ShamirSecretSharing::new(5, 3, rand::thread_rng());

let shares = sharer.share(data.clone()).unwrap();
// You only need 3 out of the 5 shares to reconstruct
let rec = sharer.recontruct(shares[1..=3].to_vec()).unwrap();

assert_eq!(data, rec);

依赖项

~550KB
~10K SLoC