Skip to content

Latest commit

 

History

History
65 lines (52 loc) · 2.13 KB

README.md

File metadata and controls

65 lines (52 loc) · 2.13 KB

sta-rs

Rust workspace for implementing basic functionality of STAR: Distributed Secret-Sharing for Threshold Aggregation Reporting.

Disclaimer

WARNING the libraries present in this workspace have not been audited, use at your own risk! This code is under active development and may change substantially in future versions.

Crates

Quickstart

Build & test:

cargo build
cargo test

Benchmarks:

cargo bench

Open local copy of documentation:

cargo doc --open --no-deps

Example usage

WASM

See star-wasm for public API functions exposed by libraries.

  • The create_share function should be called by clients, and creates the share and tag sent in a STAR client message, as well as the encryption key used to encrypt data to the server. Once this function has been called, use key to encrypt the desired data into a ciphertext object (using a valid AES encryption method). The client should then send (ciphertext, share, tag) to the aggregation server.
  • The group_shares function takes in a collection of share objects and recovers the key object that the client used for encrypting ciphertext. This function only succeeds if the number of shares is higher than the prescribed threshold.