🏴 How MakerDAO Survived Black Thursday — Issue No. 88
/On Thursday, March 12th, 2020, as the seriousness of the emerging covid19 pandemic began to set in around the world, global markets sold off. Stocks, bonds, precious metals, and commodities all dropped precipitously. Crypto was not immune. In fact, cryptocurrencies saw some of the steepest losses amongst notable asset categories on that day. Bitcoin, Ether, and other major cryptocurrencies dropped as much as 40% in a 24 hour period.
This unprecedented plunge in prices put a strain on the nascent Decentralized Finance ecosystem, including on MakerDAO, the largest and most important DeFi project. As you'll remember, Maker is a smart contract protocol built on Ethereum which offers collateralized loans denominated in a trust minimized, dollar pegged stablecoin called Dai.
In this edition of Build Blockchain, we'll look at how the Maker project was pushed to the brink of an emergency shutdown in the wake of Black Thursday, and how the Maker Foundation, along with the broader DeFi community managed to stabilize the system before that became necessary. Finally, we'll discuss what the incident reveals about DeFi and decentralized governance.
Black Thursday
The steep drop in Ether's price caused an obvious first order effect for the MakerDAO system: collateral backing the Dai stablecoin diminished in value rapidly. When this happens, the Maker contract liquidates assets backing nearly-undercollateralized loans via auctions. The presumption is that the underlying assets can be sold for enough Dai to keep the system in balance. In this instance, however, a number of confounding factors prevented this mechanism from functioning properly.First, because very few so-called "keeper" auctions occur in normal times, there were not many entities paying attention and ready to bid. As a flood of auctions suddenly became available, there wasn't enough buying capacity to handle them. In theory, this situation should rectify quickly, as it creates a lucrative profit opportunity to lure new bidders. This time, network congestion prevented the system from functioning properly
As prices dropped, users swamped the Ethereum network to interact with DeFi protocols. Fees on the network skyrocketed as users outbid each other to pay for transactions allowing them trade on decentralized exchanges, transfer tokens to centralized ones, or close out loans at risk of being liquidated. At various times throughout the day, fees spiked to 50-100x their normal ranges.
Additionally, as users flooded the network with transactions, commonly used node-as-service providers like Infura began to buckle under the load. Getting a new node in sync oneself also became difficult. This made interacting with the network even more challenging.
Because of these factors, virtually no new parties came online to bid up the liquidation auctions for many hours. In fact, one user who was paying attention— and was able to get transactions processed— claimed thousands of Ether for free! The end result was a system shortage of 5.5 Million Dai.
On top of all this, the conditions of the network drove demand for Dai through the roof. Some users were fleeing for stability as the price of Ether dropped, while others wanted Dai in order to payback and close out their loans. As a result Dai lost its peg, trading as high as $1.10.
The Fixes
With a 5.5 Million Dai shortage and a huge liquidity crunch, the Maker system was at risk. On an open emergency governance call held by the Maker Foundation that Thursday, more than one person wondered if an emergency shutdown would be necessary. That mechanism would have halted the Maker system permanently and allowed all holders of Dai to claim a proportional share of the underlying collateral, but because of the shortfall, Dai holders would end up getting less than $1 worth of collateral for each of their Dai.The Foundation, in coordination with the rest of the community, went about making changes to try to stabilize the system and avoid a shutdown. To summarize a process that played out over the course of two weeks, and involved a ton of discussion, debate, and multiple governance token votes, the community eventually deployed the following strategy and changes:
- Community outreach to increase awareness about keeper auctions
- Extending the time allotted between bids during these auctions
- Decreasing the Dai Savings Rate to 0% in order to reduce demand for Dai
- Minting and auctioning MKR tokens to make up for the shortfall
- Introducing the dollar backed USDC stablecoin as collateral to provide an easy path for greater Dai liquidity
The Fallout
While the Maker Foundation deserves a ton of credit for stabilizing the system in the face of an unprecedented turn of events, the project has not exactly emerged unscathed from the incident. What transpired has lead many to question the soundness of the project's design, and ask whether the system is "really decentralized."In particular, many are upset about the addition of USDC as collateral. As a stablecoin created by Coinbase, USDC is simply backed by real US Dollars held by the company in their bank account, and is redeemable on Coinbase's platform. In short, it's a trusted system with a central point of failure and control. Many argue that having some Dai backed by USDC now makes Dai de facto centralized as well.
I think that's an overstatement, but it's also not even the most important point. The deeper reality this crisis revealed is that it might be impossible to design complex systems capable of handling every possible contingency autonomously. Human intervention is sometimes required. While we can dream of that intervention being mediated through "fully decentralized autonomous organizations," whatever exactly that means, this is probably unrealistic.
The truth is, the Maker system survived largely because of the decisive action of a small group of people whose jobs it is to steward it— the folks at the Maker Foundation. The question we ought to be asking ourselves moving forward is: is that such a bad thing? We should demand maximal decentralization from base protocols, but does it make sense for a system like Maker to be as autonomous as a blockchain network itself? Is it even possible?
What we want to avoid isn't centralization per-se, it's all the downsides that often come with that centralization. In particular, centralization leads to concentrated power (which can be abused) and rent-seeking gatekeeping (which stifles innovation). If smart contracts enable us to mitigate both of these downsides, is it so bad to have an entity like the Maker Foundation stewarding an otherwise trust-minimized protocol? I'm honestly not sure, but these are the questions we ought to be grappling with moving forward.