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
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