| Crates.io | round-based |
| lib.rs | round-based |
| version | 0.4.1 |
| created_at | 2021-01-24 09:16:35.45202+00 |
| updated_at | 2025-01-21 12:11:02.493516+00 |
| description | Driver for MPC protocols |
| homepage | |
| repository | https://github.com/LFDT-Lockness/round-based |
| max_upload_size | |
| id | 345950 |
| size | 125,340 |
An MPC framework that unifies and simplifies the way of developing and working with multiparty protocols (e.g. threshold signing, random beacons, etc.).
Stream and Sink to receive and send messages.In order to run an MPC protocol, transport layer needs to be defined. All you have to do is to
implement Delivery trait which is basically a stream and a sink for receiving and sending messages.
Message delivery should meet certain criterias that differ from protocol to protocol (refer to the documentation of the protocol you're using), but usually they are:
sim enables protocol execution simulation, see sim module
sim-async enables protocol execution simulation with tokio runtime, see sim::async_env
modulestate-machine provides ability to carry out the protocol, defined as async function, via Sync
API, see state_machine modulederive is needed to use ProtocolMessage proc macroruntime-tokio enables tokio-specific implementation of async runtimeFeel free to reach out to us in Discord!