/tbtc-v2

Trustlessly tokenized Bitcoin everywhere, version 2

Primary LanguageTypeScriptGNU General Public License v3.0GPL-3.0

TBTC v2

Core contracts build status SDK build status Yearn contracts build status System tests status Monitoring build status

Docs Chat with us on Discord

For many Bitcoin holders, one question remains: how can I move my assets across blockchains to make them more useful while maintaining Bitcoin’s core values?

Existing solutions that bridge Bitcoin to Ethereum require users to send their Bitcoin to an intermediary in exchange for an Ethereum token that represents the original asset. This centralized model requires you to trust a third party and is prone to censorship, threatening Bitcoin’s promise of secure, permissionless decentralization.

Threshold aims to solve this problem with TBTC v2.

The second generation of TBTC is a truly decentralized bridge between Bitcoin and Ethereum. It provides Bitcoin holders permissionless access to DeFi and the expanding web3 universe.

TBTC v2 replaces centralized intermediaries with a randomly selected group of node operators on the Threshold Network. This group of independent operators works together to secure your deposited Bitcoin through threshold cryptography. That means TBTC v2 requires a majority threshold agreement before operators perform any action with your Bitcoin. By rotating the selection of operators, TBTC v2 protects against any malicious individual or group of operators seizing control. Unlike other solutions on the market, users on TBTC v2 are reliant on math, not hardware or people. Additionally, TBTC v2 is open and accessible to anyone.

TBTC v2 allows anyone to use Bitcoin in the expanding DeFi and Web3 universe without a third-party intermediary.

Overview

tBTCv2 uses the Random Beacon and Sortition Pool to generate governable-sized (starting at 51-of-100) threshold ECDSA Bitcoin wallets at a governable frequency (starting weekly). The youngest wallet accepts new deposits, and the oldest wallet serves redemptions.

Depositing Bitcoin into the tBTCv2 bridge grants a transferable Bank balance, which can be used to mint a supply-pegged ERC-20: TBTC. For an in-depth explanation about the design, see RFC 1: tBTCv2 Design.

Repository structure

This repository contains the following modules:

Please refer module-level README for specific module’s installation and usage instructions.

Contributing

Contributions are always welcome! Feel free to open any issue or send a pull request. Please see CONTRIBUTING.adoc to learn more.

Security

Please see SECURITY.adoc to learn more about tBTC v2 security policy.