Skip to content
This repository was archived by the owner on Aug 18, 2026. It is now read-only.
This repository was archived by the owner on Aug 18, 2026. It is now read-only.

Offchain Signing Manager Pallet #230

Description

@arrudagates

We need a pallet to manage the TSS system and to give an interface for payload signature request by users + signed payload delivery by TSS nodes.

WIP architecture:

type Payload = Vec<u8>;

config {
  MinimumParticipants: u32;
}

storages {
  SignatureRequests: Hash -> Payload;
  CurrentNodes: AccountId32 -> EcdsaPubKey;
}

offchain worker {
  // get offchain storage of signature requests
  // if different from current storage, set to new one
  // get offchain storage of requests already being processed
  // if any new request not in processing storage, begin tss process

  // if any finished request still in onchain requests storage then submit deliver_signed_payload call
}

calls {
  request_signature(payload: Payload); // Submitted by user

  deliver_signed_payload(hash: Hash, signature: Signature); // Submitted by one of the TSS nodes

  set_participants_and_threshold(threshold: u32, participants: Vec<Participant>) // Root-only call
}

There has to be an automated way to signal a new node entering the set and a way to kick out nodes inactive for too long.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions