Host chain The chain on which TBTC is minted

Keep Secure multiparty computation setups powering tBTC signing

PKH Public key hash

Random beacon A secure, verifiable source of randomness accessible on the host chain.


Deposit A deposit is the core component in the system architecture. Each deposit represents a set of bonded signers that generate a Bitcoin public key and accept a single Bitcoin UTXO, from which TBTC can be drawn.

Deposit beneficiary A deposit has a single beneficiary Ethereum account — originally set to the depositor. The beneficiary owns the right to some fees on deposit redemption.

Deposit request A request for signers to be selected and generate a new Bitcoin ECDSA keypair. A successful request yields a new Bitcoin address ready to accept funds as well as a set of bonded signers.

Lot size The ideal size of a funded deposit’s BTC UTXO. Standardizing lot sizes across deposits simplifies the BTC redemption process and pricing of deposits by the market.

Signing bond The bond signers put up before a deposit is funded. This bond ensures signers will be punished for fraud or poor uptime.

Reserved TBTC The amount of TBTC that can’t be drawn from a new deposit. Reserving TBTC on deposit funding sets aside funds to pay signing fee through the deposit term.

Cross-chain communication

Consensus relay Chain-tracking SPV on some other chain, e.g. BTCRelay. Consensus relays are long-running crosschain mechanisms that track the consensus state of another chain. They’re distinguished from other uses of the term "relay", eg the "threshold relay" random beacon mechanism.

SPV Simplified payment verification

Stateless SPV Non-chain-tracking SPV

Bitcoin & friends

P2PKH / P2WPKH Pay to (witness) public key hash

P2SH / P2WSH Pay to (witness) script hash

Sighash Bitcoin signature hash algorithm

BIP 143 Adopted SegWit sighash proposal

ALL Sighash mode committing to all outputs and all inputs

SINGLE Sighash mode committing to one output and all inputs

ANYONECANPAY Sighash modifier. Changes all or single to commit to only ONE input


Hash160 Bitcoin hash function rmd160(sha256(message)). Used for PKH commitments in outputs. Used for SH commitments before segwit

Hash256 Bitcoin hash function sha256(sha256(message)). Used for txids, sighash, merkle trees, and PoW

UTXO (unspent) transaction output

Weight unit a measure of bitcoin transaction size. Main transaction info is 4 weight units per byte. Witness info is 1 weight unit per byte

Vbyte 4 weight units

Outpoint A 36-byte string that uniquely identifies Bitcoin UTXOs. It consists of the creating transaction’s tx_id as a 32-byte LE uint256 (because Satoshi was bad), and a 4-byte LE uint32 denoting the UTXO’s position in the creating transaction’s output vector

Last updated