🟦
Relayers network | Symbiosis
The Symbiosis Relayers network is a blockchain-agnostic permissionless P2P network of Relayers with built-in crypto-economic incentivization mechanisms.

Introduction

The Symbiosis relayers network is a blockchain-agnostic permissionless P2P network of relayers with built-in crypto-economic incentivization mechanisms.
Blockchain-agnostic
The Symbiosis relayer network is generic and can be integrated with multiple blockchains simultaneously (unlike several other bridges, which are geared towards specific blockchains).
Permissionless
Anyone can join the relayers network and become a relayer if they stake enough SIS tokens.
P2P
All nodes are equal, and there is no leader or a dealer for keygen generation.
Crypto economic incentivization mechanism
An economic mechanism ensures that trustless nodes can contribute resources to the network without adversely affecting its security.

Security

Work of the relayers network is secured by the following mechanisms:
Since the network is leaderless, each validator run the same process upon receiving on-chain events on each connected chain.
Each event is proceeded simultaneously and for each event, the network should reach a consensus of 2/3d of the network. When the network reaches the consensus on this event all the nodes start collectively signing a transaction through MPC on the destination chain.

Architecture

Scheme 1, below, shows the target architecture of relayers network .
Scheme 1. Target architecture of Symbiosis relays network
The bootstrap nodes are used for the initialization of the network.
The relayer nodes are used for propagating information from one blockchain to another. The nodes peering protocol is very important.
Firstly, we divide nodes into groups called TSS group. Each group has its own distributed key and signs only a separated list of incoming transactions. This list is formed by transaction parameters such as blockchain_id or tx_amount, and so on. The TSS group mechanism helps us to implement upcoming Symbiosis features such as advanced staking and farming algorithms.
Secondly, within each TSS group, we use TSS scheme for transaction signing. The process consists of two main steps: key generation and signing.
  • Key generation. A new private key is generated at the beginning of every epoch. The entire private key is never known to any party or combination of parties. The public key related to that private key is used to create an address on blockchains, forming bridges.
  • Signing. It triggers when a new transaction needs to be created and signed by the TSS group. The process is as follows:
    1. 1.
      A separate topic is formed, within which all communications of nodes in the TSS group will take place within the current transaction;
    2. 2.
      The TSS signature generation protocol is executed within the transaction topic;
    3. 3.
      The leader election protocol is executed within the transaction topic to find a leader node for transferring information about the current transaction;
    4. 4.
      The transaction and the generated TSS signature are transferred to the smart contract of the output blockchain by the transaction leader node.
And last but not least, significant changes are applied to monitoring nodes. Instead of separated components, we incapsulate metrics within the p2p protocol of the whole network. This approach forms a decentralized monitoring system, and now each node exposes business and technical metrics for the node's owner in Prometheus format. These metrics afterward can be visualized by different tools such as Grafana dashboards and others.