Back to Templatesklave-network/klave-musig2-app

MuSig2 Aggregation and Wallet App

LanguageRust
Use Case

Community Certifications

Audited by Imperial College London

MuSig2

MuSig2 Aggregation and Wallet App

A Rust component providing core functionalities for MuSig2 sessions and computations, as well as managing user accounts, keys, and MuSig2 sessions, providing comprehensive functionalities for multi-signature processes. 

Description

This repository provides two Klave applications that manage MuSig2 multi-signature sessions. 

First app – MuSig-compute – includes features for initiating and loading sessions, submitting cryptographic data, and retrieving final signatures, enabling secure and efficient multi-signature workflows. 

Second app – MuSig-wallet - manages user accounts, cryptographic keys, and MuSig2 multi-signature sessions. It provides functionalities for user registration, key creation, session management, and signature generation and verification. 

Features

Musig-compute (aggregation features)  

  • Session Management: 
    • Initiates and loads MuSig2 sessions. 
  • MuSig2 Aggregations: 
    • Aggregates public keys.
    • Receives public nonces and compute aggregated public nonce.  
    • Receives partial signatures and computes aggregated signature.  


Musig-wallet 

  • User and Key Management: 
    • Registers and loads user accounts. 
    • Creates and loads cryptographic keys. 
    • Provides user registration and verification functions. 
  • MuSig2 Session Management: 
    • Creates and loads MuSig2 session definitions and sessions. 
    • Updates user public keys and aggregation sessions. 
    • Manages session IDs. 
  • Signature Handling: 
    • Creates public nonces and partial signatures for each user.
    • Verifies signature.

Authors

Nicolas Marie | Akhilleus20 

Etienne Bosse | gosu14 

Jeremie Labbe | jlabbeklavo 


*If you're interested in utilising this template, please reach out to the Klave team.