Ruminations: On Decentralization

THORChain University
4 min readMay 22, 2023

--

This article is solely the opinions of its authors, and does not claim to reflect the opinions of developers or any other parties.

THORChain has been halted a few times in the past due to consensus failure, and manual halting via the use of Mimirs.

There are always questions such as:

  • Is a decentralized chain ever supposed to halt?
  • If there is no consensus among the nodes, shouldn’t a fork happen (but keep producing blocks)?
  • If an Admin has Mimir powers, is that centralized?

Consensus Halt

Firstly, let’s discuss a blockchain consensus halt in the context of a Cosmos SDK Tendermint Byzantine Fault Tolerant (BFT) chain, which is the technology that THORChain adopted. This is an instant finality chain, where a new block is produced only when at least 67% of the validator nodes reached consensus on the block content.

A consensus halt is when something (e.g. a bug) is preventing consensus, and thus no blocks can be produced. This answers the first two questions in the introduction section.

This is different from a Proof-of-Work chain (e.g. Bitcoin) where a block is produced once a miner solves the hashing requirement; and forks are normal occurrences when two miners successfully mined their respective new blocks in quick succession.

Back to THORChain’s case, the only way to recover from a consensus halt is to fix the bug, get at least 67% of nodes to update, and restart the chain. For reference, this has happened only twice before, with the most recent on 27-Oct-2022 (https://crypto-university.medium.com/lpu-thorchain-updates-early-nov-2022-6fba4ff84642).

Mimir Halt

As discussed here (https://crypto-university.medium.com/under-the-hood-constants-and-mimirs-f548ebfeafb4), Admin Mimirs are used to quickly respond to any unforeseen events, for example by halting trading on all or specific chains (but not halting the THORChain blockchain itself). The decentralized nodes can always override the Admin Mimir by reaching 67% consensus on the Nodes Mimir.

Reminder that Mimir has no access to users’ funds, but only to tweak the parameters of the network.

So, is this Admin Mimir a centralized tool? Yes, it is, but with limited powers, and a check-and-balance mechanism from the nodes. One could argue that THORChain is unlike Bitcoin or Ethereum where the code is simpler, matured and development is more resourced and progressed conservatively. Conversely, THORChain is still being developed at a somewhat accelerated speed. Thus, it is not unexpected (although trying to avoid at all cost) that bugs may sneak in, and necessitates using Admin Mimir to resolve the situation (e.g. Trading Halt on 22-Jan-2023, https://crypto-university.medium.com/lpu-thorchain-updates-end-jan-2023-c6a4d3dd254b).

A useful analogy could be a train driver (the Admin Mimir) and a group of rail network management supervisors (the Nodes Mimir). The train driver cannot override the signals of the rail supervisors (e.g. permission to depart from station, or permission to ride a specific rail route); but when an emergency happens (e.g. obstruction on the track), the Admin Mimir can (should?) take immediate action to stop the train to avoid a catastrophe.

Closing Thoughts

So, is THORChain centralized or decentralized? Or, is it decentralized enough? We would posit that centralization is a spectrum (from Bitcoin on one end, to centralized exchanges on the other). Beyond just the number of nodes of a particular blockchain, one should also consider who controls, or have influence over the nodes; what is at stake to disincentive the nodes from behaving maliciously; what are the potential network capture attack vectors, etc.

THORChain’s anonymous, limited-delegation, constant-churning 80+ nodes and Threshold Signature Scheme (TSS) implementation puts it towards the decentralization end, especially when compared with other multisig or nominated wardens systems. THORChain is progressing towards more decentralization as time passes, and is still the most decentralized protocol offering native cross-chain swaps, savings (and lending soon) at scale!

Addendum: Backend vs Frontends

Another aspect of THORChain’s decentralization is distinguishing the backend vs the frontends. THORChain itself refers to the backend cross-chain liquidity infrastructure, and the core THORChain development team chose not to also develop any frontends. Instead, multiple independent teams built frontends (such as THORSwap, AsgardEx, THORWallet, XDEFI, etc.) and gradually, other pre-existing wallets/frontends also started to integrate THORChain’s functionality (such as ShapeShift, Edge Wallet, Trust Wallet, etc.).

This is analogous to Bitcoin the blockchain vs the multiple wallets that support Bitcoin. In this way, there is a decentralization and redundancy of the frontends/wallets used to interact with THORChain.

Feel free to hop into the TC University Discord to chat about this, or any other THORChain questions that you may have.

Explore THORChain: Website, X, Telegram, Developer Discord.

Explore Maya Protocol, the first friendly fork of THORChain: Website, X, Discord, Telegram.

Decentralized, permissionless, non-custodial, trust-minimized, open-sourced, economic-secured, non-wrapped, native-to-native cross-chain swaps, savings and soon, lending!

--

--

THORChain University

THORChain University aims to educate communtiy users on how to optimally engage with the @THORChain Network