Ethereum Name Service Launch Delayed By Bugs
Update: March 21, 2016
Nick Johnson releases a postmortem.
Update: March 15, 2016
ENS launch officially delayed until further notice:
Last night I officially postponed the #ens launch. We'll back off, reassess, improve process, and relaunch when ready. Postmortem incoming.— Nick Johnson (@nicksdjohnson) March 14, 2017
The Ethereum Name Service (ENS) was set to launch today, March 14, 2017. Everything was going smoothly until a bug reared its head. The initial version of the deployed auction registrar was found to have a glitch that would’ve allowed participants to place bids during an auction’s reveal period. This would’ve broken the system from a game-theoretical standpoint, due to how the ENS auction process works.
The auction registrar was designed to have two phases: the bidding and the reveal. First, users bid on the .eth names they want, then, during the reveal phase, what they bid is made public and the highest bidder gets the name. If the bug were exploited, a person could simply wait until the reveal phase of an auction and place a bid just slightly higher than the top bidder. Ethereum’s Nick Johnson, an integral piece of the ENS puzzle, wrote on Medium, explaining:
“If users can bid during the reveal phase, they can wait until they know what their opponents bid, and either outbid them, do nothing, or underbid them by a small amount to force them to pay the maximum. To prevent this, the auction registrar was designed to prohibit bids during the reveal phase of the auction. A refactor accidentally removed that check, and while we have many unit tests, this edge case was not amongst them. We’ve since written more unit tests to cover this and other issues to prevent any recurrence of problems like this one.”
They’ve since developed a fix and the only thing really changing about the ENS is the timing, as deployment has been delayed. Bids that have already been placed will not go into effect and once the ENS is redeployed, those wishing to bid will have to reopen their auctions. Johnson continued:
“If you’re one of the few people who have already bid, you’ll still need to reveal your bid on the old registrar in order to get your deposit back, but shouldn’t need to take any other action beyond that.”
Another minor bug popped up this morning as well. GitHub user Steve Waldman highlighted an issue that Ethereum’s Alex Van de Sande concurrently found while adding more automated tests to the ENS. Van de Sande said that “due to this new finding we'll postpone the launch in order to look more carefully.” As of this writing, the best place to find an estimate of when the ENS will redeploy is the countdown clock hosted by CodeTract.
The most important takeaway from all of this: no one has lost Ether and the community is actively involved in finding solutions to issues as they arise. The ENS developers are also remaining highly transparent as they work through this; quick to communicate on reddit and Medium. With this level of outreach and openness, the ENS project should hopefully roll out smoothly – possibly as early as later today.
ETHNews reached out in an attempt to further clarify the new deployment time, but has not heard back as of publication.