Links

Introduction

THORChain, THORNodes, Wallets and the ecosystem.

About

THORChain is a decentralised cross-chain liquidity protocol which uses the Tendermint consensus engine, Cosmos-SDK state machine and GG20 Threshold Signature Scheme (TSS). It does not peg or wrap assets, it manages funds directly in on-chain vaults, and secures those funds using economic security. It could be described as a "cross-chain automated market maker (AMM), like Uniswap".

Innovations

There a numerous innovations in the THORChain Protocol that were built with first principles to be decentralised, resistant to capture and sustainable as possible:
  1. 1.
    Capped Proof Of Bond validator selection keeps the network decentralised and Nakamoto Coefficient high.
  2. 2.
    3-Day Validator Churning stops validator stagnation, proves spendability of funds and upgrades the network with minimal governance.
  3. 3.
    Asynchronous Network Upgrades allows validators to upgrade to a new protocol version in their own time, with the network upgrading without ever breaking consensus.
  4. 4.
    Chain-agnostic Bifrost Protocol handles UTXO, EVM, BFT and Cryptonote chain connections with minimal core-logic nuances.
  5. 5.
    Incentive Pendulum streams rewards to Validators and Liquidity Providers to target a Network Security ratio that always keeps funds secured.
  6. 6.
    Continuous Liquidity Pools that allows single-sided liquidity provision and uses liquidity-sensitive fees to resist price attacks.
  7. 7.
    Swap Queue that orders swaps based on price impact in each block, which stops sandwich attacks and most other forms of Miner Extractable Value (MEV).
  8. 8.
    Liquidity Synths to enable fast low-fee swaps across L1 pools and power single-sided Savers. Synths are a hybrid collaterised-pegged asset design that contribute to liquidity.
  9. 9.
    Derived Asset Collateral to enable L1 lending, using the RUNE asset to underwrite the liability. This enables no interest, no liquidation, no expiry loans.

3-Pillars of THORChain: Security, Liquidity, Volume

THORChain contributors work to three goals:
  1. 1.
    Improve the Security of the network, via either Functional (Solvency Checker, Node Pause, TxOut Throttler), Procedural (THORSec, Stagenet testing, PR reviews) or Economic (RUNE in the bond, or value of the $RUNE in the bond) Security.
  2. 2.
    Improve the Liquidity of the network, via Total Value Locked (TVL), or better UX around providing liquidity (Savers).
  3. 3.
    Improve the Volume of the network, via Swap UX (Synths, Order Books), or wallet Integrations (Quotes Endpoint, Dev UX, Business Development)
You can learn how THORChain works here:

THORChain Finance

Building on the foundation of liquidity pools, THORChain pursues three important financial primitives:
  1. 1.
    Allow a user to Swap {Asset X on Chain A}, to {Asset Y on Chain B}.
  2. 2.
    Allow a user to Save {Asset X on Chain A}.
  3. 3.
    Allow a user to Lend {Asset X on Chain A}, to Borrow {Asset Y on Chain B}.

THORNodes

THORNodes service the THORChain network, of which there is intended to be initially 100, but can scale to 250+. The design goal of THORChain is such that anyone can join the network with the required funds (permissionless) and be anonymous, yet still be secure. THORChain takes this a step further by having a high churn schedule, kicking out nodes continuously. This high-churn network ensures that it is censorship-resistant, evades capture and resists centralisation.
Each THORNode is comprised of several independent servers in a cluster, which run full-nodes for each connected chain.

Developers

Developers build products that integrate with THORChain, such as wallets, exchanges and other services. Developers simply need to connect to Midgard, but they should also consider running their own nodes.
The order of integration is as follows:
  1. 1.
    Connect to THORChain via Midgard or THORNode.
  2. 2.
    Use data provided to display pools, assets, users, as well as get quotes for swaps/savers/lending.
  3. 3.
    Use existing wallet infrastructure to send L1 transactions
  4. 4.
    Use xchainjs packages to sign transactions and broadcast.
Learn more at the Dedicated Dev Site.

CONTRIBUTING

THORChain is a public project. If you want to join the community or work on THORChain Core join the Dev Discord.
Last modified 20d ago