libss 0.1.0

libss is a Rust library for secret sharing.
Documentation
  • Coverage
  • 93.33%
    14 out of 15 items documented2 out of 14 items with examples
  • Size
  • Source code size: 43.72 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 2.81 MB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 17s Average build duration of successful builds.
  • all releases: 17s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • Repository
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • amousa11

libss is a Rust library for secret sharing.

WARNING: This implementation has not received any audit and is NOT ready for production use.

Overview

libss provides an impelmentation of shamir secret sharing over the field GF(2**8), supporting arbitrary size secrets with up to 255 shares.

Directory structure

  • src/gf256.rs: Rust module that provides an implementation of the finite field GF(2**8)
  • src/shamir.rs: Rust module that impelments shamir secret sharing over GF256

This library comes with unit tests for each of the provided crates. Run the tests with:

cargo test

To perform the benchmarks, run the following command:

cargo bench

Future Goals

  • improve interpolation algorithm
  • wrap Share struct into a SignedShare struct so integrity of shares can be verified with a public key
  • implement Feldman Secret Sharing Scheme, a verifiable secret sharing scheme
  • guarantee constant-time cryptographic operations