๐ธBRC-30
Improvement proposal for BRC20 tokens to allow staking and liquidity pools
BRC30 Proposal: https://www.okx.com/web3/build/docs/bitcoin-ecosystem/brc30-proposal
BRC30 Explanation Twitter threads: https://twitter.com/okx/status/1664295775159853057 https://twitter.com/0xAbhiP/status/1665056239036792832https://twitter.com/Jiurn/status/1664674583855636481 OKX Press Release: https://www.okx.com/learn/okx-proposes-industry-first-brc-30-token-standard-to-enable-bitcoin-and-brc?channelid=ACEAP6502255
BRC-30 Proposal
Summary
OKX have introduced BRC-30, an extended version of the BRC-20 proposal (a fungible token standard made explicitly for the Bitcoin blockchain) that incorporates BRC-20 design principles while introducing functionalities for staking operations such as depositing, minting, and withdrawing.
BRC-30 allows users to stake their own BRC-20 tokens or bitcoin and receive BRC-30 tokens in return. The BRC-30 protocol is open-source and available for all developers to build upon.
Motivation
The introduction of BRC-30 and its staking functionalities provide BRC-20 token holders and projects with expanded design space and additional opportunities to engage with their communities.
Specifications
User scenarios
Project team: Can issue their own BRC-30 tokens by creating a staking pool, thus gaining seed users.
Users: Can stake BTC or BRC-20 tokens to earn BRC-30 tokens like
abcd
.
Interaction flow
Project Party: Carries out the deploy operation, defining the attributes of the staking pool, following which the user's deposit operation will be recognized and recorded (following the BRC-20).
User: Executes staking activities such as depositing, minting (claiming), and withdrawing.
Server: Performs a comprehensive interpretation of the BRC-20 and BRC-30 proposal, providing an open-source interface for profit calculation.
Instructions
Operations
Deploy BRC-30 pool
{
"p": "brc-30",
"op": "deploy",
"t": "pool",
"pid": "f7c515d6b7#01",
"stake": "btc",
"earn": "abcd",
"erate": "10",
"dmax": "12000000",
"total": "21000000",
"only": "1"
}
Stake: deposit BRC-20 token/btc into BRC-30 pool
{
"p": "brc-30",
"op": "deposit",
"pid": "f7c515d6b7#01",
"amt": "100"
}
Claim: mint BRC-30 earned token
{
"p": "brc-30",
"op": "mint",
"tick": "abcd",
"pid": "f7c515d6b7",
"amt": "100"
}
Unstake: withdraw BRC-20 token/btc from BRC-30 pool
{
"p": "brc-30",
"op": "withdraw",
"pid": "f7c515d6b7#01",
"amt": "100"
}
Transfer BRC-30 token
{
"p": "brc-30",
"op": "transfer",
"pid": "f7c515d6b7",
"tick": "abcd",
"amt": "100"
}
Note: Please be careful when using inscription service. Ensure to send tokens to the address that holds the balance, especially in the situation where some ordinal compatible wallet generates a different address each time.
Last updated