Core
Overview
Core (coredao) is the native asset of the Core blockchain. It utilizes:
-
Account model
-
ECDSA signature algorithm
Core is an EVM-compatible Layer-1 blockchain that enhances Bitcoin’s utility while preserving decentralization and security. Its Satoshi Plus consensus combines DPoW, DPoS, and Non-Custodial BTC Staking, integrating Bitcoin miners into smart contract security. This allows miners and BTC holders to earn CORE token rewards while extending Bitcoin’s functionality. Core bridges Bitcoin’s security with scalable smart contracts, unlocking new DeFi opportunities.
Explorerhttps://scan.test2.btcs.network/
Wallets Types
BitGo enables holding Core in the following wallet types:
Multisig Cold | Multisig Hot | MPC Cold | MPC Hot | |
---|---|---|---|---|
Custody | ❌ | ❌ | ✅ | ✅ |
Self-Custody | ❌ | ❌ | ✅ | ✅ |
Ticker Symbols
Mainnet | Testnet |
---|---|
coredao | tcoredao |
Faucet
You can use a faucet to obtain free testnet Core for development and testing purposes.
Faucet: https://scan.test2.btcs.network/faucet
Units
Each Core is comprised of 1,000,000,000,000,000,000
(1018
) wei, so not even a single Core can be stored numerically without exceeding the range of JavaScript numbers. Gas fees are denoted in gwei.
- 1 Core =
1018
wei - 1 wei =
10-18
Core - 1 gwei =
10-9
Core
For that reason, only string balance properties are available, which are balanceString
, confirmedBalanceString
, and
spendableBalanceString
.
Tokens
The CORE token plays a crucial role in the network, serving as both a utility token and a governance token. Holders can use CORE for transaction fees, staking, and participating in governance decisions.
Fees
Core supports EIP-1559 gas estimation and accounts for both L2 and L1 components of fees. The eth_estimateGas
RPC endpoint provides a value that already includes both L1 and L2 gas costs.
Unlike fixed gas limits, you cannot set a strict 21K upper limit for transactions, as gas requirements fluctuate over time with L1 price variations.
The base fee is the minimum price per unit of gas that a transaction must pay to be included in a block. Transactions must specify a maximum base fee higher than the block base fee to be included. The actual fee charged is the block base fee, even if the transaction specifies a higher maximum base fee.
The priority fee is an additional price per unit of gas paid on top of the base fee. In Core, transactions with a higher priority fee are prioritized and processed faster. If transaction speed is important to your application, setting a higher priority fee can help ensure quicker inclusion.
Create Wallet
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
export BITGO_EXPRESS_HOST="<YOUR_LOCALHOST>" export COIN="tcoredao" export ACCESS_TOKEN="<YOUR_ACCESS_TOKEN>" export LABEL="<DESIRED_WALLET_NAME>" export PASSPHRASE="<YOUR_BITGO_LOGIN_PASSPHRASE>" export ENTERPRISE_ID="<YOUR_ENTERPRISE_ID>" curl -X POST \ http://$BITGO_EXPRESS_HOST:3080/api/v2/$COIN/wallet/generate \ -H 'Content-Type: application/json' \ -H "Authorization: Bearer $ACCESS_TOKEN" \ -d '{ "label": "'"$LABEL"'", "passphrase": "'"$PASSPHRASE"'", "enterprise": "'"$ENTERPRISE_ID"'", "walletVersion": 4 }'
Create Address
1 2 3 4 5 6
export WALLET="<YOUR-WALLET-ID>" export ACCESS_TOKEN="<YOUR_ACCESS_TOKEN>" curl -X POST \ -H "Authorization: Bearer $ACCESS_TOKEN" \ https://app.bitgo-test.com/api/v2/tcoredao/wallet/$WALLET/address
Consolidate Balance
Consolidation Fee Source: Corechain Gas Tank
Core uses forwarders, therefore does not support manual consolidation
Estimate Fee
1 2 3 4 5 6 7
export COIN="tcoredao" export ACCESS_TOKEN="<YOUR_ACCESS_TOKEN>" curl -X GET \ https://app.bitgo-test.com/api/v2/$COIN/tx/fee \ -H 'Content-Type: application/json' \ -H "Authorization: Bearer $ACCESS_TOKEN"
Transact
Withdrawal Fee Source: Wallet Base Address
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
export BITGO_EXPRESS_HOST="<YOUR_LOCALHOST>" export COIN="tcoredao" export WALLET_ID="<YOUR_WALLET_ID>" export ACCESS_TOKEN="<YOUR_ACCESS_TOKEN>" export ADDRESS="<DESTINATION_ADDRESS>" export AMOUNT="<AMOUNT_IN_BASE_UNITS>" export WALLET_PASSPHRASE="<YOUR_WALLET_PASSPHRASE>" curl -X POST \ http://$BITGO_EXPRESS_HOST:3080/api/v2/$COIN/wallet/$WALLET_ID/sendcoins \ -H 'Content-Type: application/json' \ -H "Authorization: Bearer $ACCESS_TOKEN" \ -d '{ "address": "'"$ADDRESS"'", "amount": "'"$AMOUNT"'", "walletPassphrase": "'"$WALLET_PASSPHRASE"'" }'
Stake
Non-Custodial Bitcoin Staking: Core's Bitcoin staking uses CLTV timelocks, a Bitcoin-native feature that locks funds until a specified time or block height. Instead of giving up custody, stakers simply place their bitcoins in CLTV timelocks, with the transaction returning the funds after the lock period ends. The transaction must include a script with two details: the validator's address and the address for receiving CORE rewards. Read more at Core DAO.
To learn more about staking assets with BitGo, see Staking Overview.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
export COIN="[testnet ID all lowercase]" export WALLET_ID="<YOUR_WALLET_ID>" export ACCESS_TOKEN="<YOUR_ACCESS_TOKEN>" export CLIENT_ID="<CLIENT_ID>" export AMOUNT="<AMOUNT_IN_BASE_UNITS>" export GAS_PRICE="<GAS_PRICE>" export TYPE="STAKE" curl -X POST \ http://api/staking/v1/$COIN/wallets/$WALLET_ID/requests \ -H 'Content-Type: application/json' \ -H "Authorization: Bearer $ACCESS_TOKEN" \ -d '{ "clientId": "'$CLIENT_ID'", "amount": "'$AMOUNT'", "gasPrice": "'$GAS_PRICE'", "type": "STAKE" }'