Add renBTC as Collateral and Enable Native BTC Deposits/Withdrawals
Background
Overview
Currently, the only form of collateral supported is USDC. This proposal seeks 2 major enhancements to the protocol (It is important to note that Step 1 can be implemented irrespective of the decision to move forward with Step 2):
- Add renBTC as collateral or “Quote Token” against all market pairs (in addition to USDC)
- Enable native BTC deposits/withdrawals by integrating RenJS directly into the dApp (more on this below)
By implementing this proposal, it will open the floodgates to a ~$1 trillion liquidity market, allowing users to interact with the protocol without ever losing exposure to their BTC. Additionally, transaction fees can be paid in renBTC, enabling 2 key outcomes:
- There could be 2 insurance funds: a “growth” fund that is populated with renBTC, in addition to the existing USDC insurance fund
- PERP stakers can receive rewards in both USDC and cold, hard Bitcoin! (or renBTC to be precise)
Note: Regarding the insurance fund, I can see an argument for the protocol to convert the renBTC to USDC in bulk at the end of each epoch to maintain a single, stable, USDC insurance fund. Please provide your comments/thoughts on this below!
Lastly, for the sake of argument, WBTC will be ignored form this proposal and should not be considered a viable option for 2 primary reasons: 1) it is minted (and the underlying BTC is custodied) by a centralized financial institution, BitGo. They are based in the USA where trading perpetuals is more or less illegal, thus opening themselves up to regulatory scrutiny and could very possibly be shut down by the SEC 2) Minting WBTC requires KYC, so Step 2 (a native deposits/withdrawals) will not possible
Proposal
Step 1: RenBTC (for collateral)
renBTC is a tokenized representation of BTC on the Ethereum (also in BSC with others coming soon). It is implemented as a standard ERC-20 contract and backed 1:1 by native BTC locked in the RenVM. Individuals can acquire renBTC today by minting it from native BTC via the RenBridge or acquiring it through exchanges, and it can be redeemed for native BTC at any time.
Ren has been running smoothly since May 2020 with over $3.5 billion in BTC transacted to date. With ~$1 billion in already existing liquidity, RenBTC has firmly established itself as the primary provider of decentralized and permissionless BTC on Ethereum.
Source: https://mainnet.renproject.io/
Step 2: RenVM (for native deposits/withdrawals)
RenVM (REN Virtual Machine) is the underlying protocol which powers the network. In addition to BTC, it also supports cross-chain compatibility with DOGE, ZEC, FIL, BCH, DGB and many more to come.
RenVM already supports a BTC bridge to BSC and is currently working on bridges to/from Acala (Polkadot), Solona, Terra (Luna) Avalance, and more. In the future, you could not only deposit native BTC or renBTC from Ethereum, but you could also deposit renBTC directly from the other “host chains” just mentioned . For example, if a user has renBTC on Binance Smart Chain, this integration will eventually allow them to deposit that token directly into Perpetual Protocol as collateral!
RenVM is a byzantine fault-tolerant network that is able to securely in a decentralized manner do ECDSA threshold key generation and signing via sMPC, which allows RenVM to manage (ECDSA) private keys of the various assets mentioned above.
For detailed instructions on how to implement native BTC deposits/withdraws, check out their documentation (tl;dr it’s not that hard)
Try it out
To get a feel for what the user experience would be like, check out the RenBridge or Curve’s native integration.
Considerations
It is worth noting that renVM is currently semi-decentralized, and have recently announced their roadmap for the next phase towards full decentralization in the coming months. Established and reputable entities like Curve, Alameda Research, Polychain Capital have put faith in Ren and will a few of many to run nodes that are responsible for consensus and execution of RenVM.
The final consideration for this step is fees. To leverage native BTC deposits/withdrawals, users will need to pay a fee to the network’s node operators .25% to mint (or deposit) native BTC and .1% to burn (or withdraw) native BTC. However, users will have the option to bypass these fees is they already have renBTC prior to depositing collateral or wish to keep renBTC when withdrawing to Metamask (or similar wallet).
Additional REN Resources
Website | Docs | Telegram | Announcements | Twitter | Reddit | Github