Matt Luongo asks on Twitter, in response to a tweet about the Sovryn Dollar:
Can the BTC deposits or withdrawals be blocked though?
I started answering on Twitter but the reply became many tweets long and I decided it’d be easier to answer as a forum thread here. I’m not even going to think about giving $8/mo to Elon for the ability to write long tweets until he lets me pay with sats over Lightning. So here’s my answer to Matt’s question:
To answer this question it is first necessary to understand how BTC is used to back the Sovryn Dollar. Note that everything I say below is how the system currently works and may change in the future.
The Sovryn Dollar (DLLR) is a stablecoin issued by Mynt, a smart contract system on Rootstock, an EVM-compatible bitcoin sidechain. DLLR is issued by depositing other BTC-backed stablecoins supported by Mynt, currently either DOC (issued by Money On Chain) or ZUSD (issued by Zero).
Money On Chain and Zero are both also smart contract systems on Rootstock. They do not operate directly on mainchain BTC; actually they can’t, since mainchain Script isn’t expressive enough. To enable Rootstock EVM contracts to operate on BTC, the Rootstock devs invented the Powpeg, a federated 5-of-9 multisig bridge secured by PowHSM nodes.
To transfer BTC over the Powpeg bridge to Rootstock, users send BTC to the current Powpeg deposit address and will then receive an equivalent amount of Rootstock BTC (RBTC) at their specified Rootstock address. The deposit process is permissionless. As long as Rootstock blocks are being merge-mined by bitcoin miners and the miners aren’t censoring the deposit transaction, the deposit cannot be blocked. (Note: BTC transfers on the mainchain can also be blocked if a hashpower majority colludes to censor.)
Now let’s talk about withdrawals from the Powpeg bridge. Withdrawals work differently than deposits. Currently the Powpeg federation consists of 9 independent PowHSM operators (listed here). A majority of the PowHSM nodes (5-of-9) must be online to sign withdrawal txs. If at least 5 PowHSM nodes were unplugged and left unplugged for 1 year then Powpeg bridge withdrawals would be paused for this time. At the 1 year mark, the BTC held by the Powpeg multisig will be transferred to the emergency backup multisig. The emergency backup multisig is a 3-of-4 multisig controlled by 4 independent entities (listed here). If 2 emergency keys are lost or 2 signers refuse to sign, withdrawals from the emergency backup could be blocked indefinitely.
To summarize, with regard to the bridge, no one can block BTC deposits except bitcoin miners who are merge-mining Rootstock, and they can only block for as long as a hashpower majority colludes to censor users. A majority of PowHSM operators could block BTC withdrawals for a period of one year, then after that, 2 out of 4 emergency multisig signers could block withdrawals indefinitely.
With regards to blocking BTC deposits and withdrawals on the Money On Chain and Zero contracts: these systems are subject to their own rules and thus have their own conditions when deposits and withdrawals could be blocked.
Money On Chain has a certain parameter called global coverage whose value must be higher than the adjusted objective coverage parameter value in order for users to be allowed to deposit BTC and mint DOC. If the global coverage condition isn’t met then BTC deposits are blocked and no DOC can be minted. Money On Chain has a separate parameter called nDOC₀ which is the amount of DOC held in bucket 0 of the protocol. The amount of DOC that can be redeemed for BTC is equal to the value of nDOC₀. If nDOC₀ < DOC-to-redeem then the redemption (i.e. BTC withdrawal) will be blocked. More information about these mechanisms can be found in the Money On Chain whitepaper.
Additionally, Money On Chain is a smart contract system that is governed by MOC holders. Holders of MOC can vote on changes to the protocol. Votes require a 7 day voting period before changes go into effect. Theoretically a change could be voted in that would completely block BTC deposits and withdrawals. There’s an economic security element here: if this change were seen by the market as wildly unpopular, this would cause a crash in the MOC price and thus the MOC stakers would be impoverishing themselves by approving this change.
There is also currently a “panic button” that can be triggered by a 3-of-4 multisig controlled by the Money On Chain founders which could be used to immediately halt BTC deposits and withdrawals on the Money On Chain system. MOC holders could vote to disable the pause; in this case, the pause would be active for at least 7 days, and possibly no longer than that.
In the case of Zero, there is no direct mechanism in the contract that would block either BTC deposits or withdrawals. Any user can deposit BTC into a line of credit or withdraw BTC from their line of credit at any time, as long as they are either maintaining a sufficient collateral ratio or properly closing their line of credit. Additionally, 1 ZUSD can always be redeemed for 1 USD worth of BTC (according to the BTCUSD price reported by the Money On Chain decentralized oracles), minus a redemption fee.
The Zero contracts are governed by the SOV Bitocracy Owner Governor contract, which requires proposals to go through a 24 hour voting period and, if approved by voters, a subsequent 48 hour timelock period. Again, theoretically a change could be approved that would completely block BTC deposits and withdrawals on the Zero contracts, but due to the Owner Governor rules such a change would take at least 72 hours to go into effect. As with the MOC case, there’s an economic security element here: if this change were seen by the market as wildly unpopular, this would cause a crash in the SOV price and thus the SOV stakers would be impoverishing themselves by approving this change.
That is the most thorough answer I could think of to Matt’s question. I hope that helps with understanding the various mechanisms at play that affect the ability for users to deposit/withdraw BTC backing the Sovryn Dollar.