dkls23/setup/
key_export.rs

1// Copyright (c) Silence Laboratories Pte. Ltd. All Rights Reserved.
2// This software is licensed under the Silence Laboratories License Agreement.
3
4use std::{marker::PhantomData, sync::Arc, time::Duration};
5
6use signature::{SignatureEncoding, Signer, Verifier};
7use x25519_dalek::{PublicKey, ReusableSecret};
8
9use crate::{
10    keygen::Keyshare,
11    setup::{
12        self,
13        keys::{NoSignature, NoSigningKey, NoVerifyingKey},
14        ProtocolParticipant,
15    },
16};
17
18use sl_mpc_mate::message::InstanceId;
19
20/// Default Time-To-Live (TTL) value for messages in seconds
21const DEFAULT_TTL: u64 = 100; // smaller timeout might fail tests
22
23/// Module containing the setup message for the key exporter.
24/// This module defines the message structure and functionality for the party
25/// that exports a key in a multi-party computation protocol.
26pub mod exporter;
27
28/// Module containing the setup message for the key export receiver.
29/// This module defines the message structure and functionality for the party
30/// that receives an exported key in a multi-party computation protocol.
31pub mod receiver;