Noosphere: A ROAST Server and Client for FROST Threshold Signatures

Noosphere is an open-source ROAST server and client for Taproot FROST threshold Schnorr signatures. It is built upon the frost-secp256k1-tr crate, written in Dart and available for Flutter. The software supports Distributed Key Generation and signing of Taproot transactions through a coordination server.

Whilst it is built for Taproot, the codebase could be modified to support different Schnorr ciphersuites. It would require some modifications to become useful for Zcash.

The software is provided “as-is”. Review and feedback is very welcome, and I’m happy to answer any questions.

The free service roast.host is available to create coordination servers.

The following packages are available:

  • frosty: A Dart wrapper around the Rust library providing high-level FROST support for Taproot.
  • frosty_flutter: A Flutter plugin that provides automated builds for Linux, Android, macOS and iOS. Windows is included but not tested.
  • noosphere_roast_client: A library that provides a client for engaging as a participant in a FROST/ROAST group with a connection to a coordination server.
  • noosphere_roast_server: Provides both a library and a program for running ROAST coordination servers.

This was previously announced here: Introducing Noosphere, an implementation of ROAST for Dart · ZcashFoundation/frost · Discussion #898 · GitHub

The software is licenced under BSD3 and available on GitHub:

Thank you to all the contributors to FROST, ROAST and the Rust FROST implementation that made this possible.

6 Likes

Very cool, thanks for sharing!

2 Likes