cbBTC is fungible 1:1 with a dedicated reserve of BTC held at Coinbase. The process of minting (sending) and burning (redeeming) cbBTC ensures trust and transparency, providing a frictionless experience for users. When a user requests a withdrawal of cbBTC, Coinbase holds the corresponding amount of BTC in its custody to back the cbBTC minted.
- Minting: When a user initiates a withdrawal of BTC held in their Coinbase account to the Ethereum or Base networks, an equivalent amount of cbBTC is minted on the network and sent to the user’s destination address / wallet.
- Burning: When cbBTC is deposited to a user-specific Coinbase address, the cbBTC is burned and the corresponding amount of BTC is released from Coinbase’s reserve and assigned to the user’s Bitcoin account.
The total supply of cbBTC can be found in the token smart contract under totalSupply.
The process of minting and burning cbBTC involves using a set of audited and secure Ethereum smart contracts. These contracts are designed to mint and burn cbBTC as needed, ensuring that the total supply of cbBTC always matches the amount of BTC held backing it. cbBTC is built using the core elements of the Coinbase wrapped token contract that was also used for Coinbase Wrapped Staked ETH (cbETH). The smart contract code open source repository for Coinbase’s wrapped tokens – including both cbBTC and cbETH – can be found on Github.
The following are key roles of the wrapping contract managed by Coinbase. These roles are protected by Coinbase’s key management systems and usage requires approval from a number of people in different functions, including security, engineering, and finance.
- Admin: can upgrade the wrapped token implementation contract
- Owner: can assign all roles except the Admin
- Blacklister: can blacklist an address from transferring, minting, and burning
- MasterMinter: can assign minters and their limits
- Minter: can mint and burn tokens
- Pauser: can pause transfers, mints, and burns for the contract
