Phoenix: A Formally Verified Regenerating Vault
Uri Kirstein, Shelly Grossman, Michael Mirkin, James Wilcox, Ittay, Eyal, Mooly Sagiv

TL;DR
Phoenix is a new Ethereum contract architecture that enhances security by allowing recovery after key loss and reducing damage from key compromise, with formal verification ensuring correctness.
Contribution
It introduces a novel vault design enabling key recovery and damage mitigation, supported by formal specification and verification of the implementation.
Findings
Formal specification of Phoenix's behavior
Identification and fixing of a security bug
Verified correctness of the final implementation
Abstract
An attacker that gains access to a cryptocurrency user's private keys can perform any operation in her stead. Due to the decentralized nature of most cryptocurrencies, no entity can revert those operations. This is a central challenge for decentralized systems, illustrated by numerous high-profile heists. Vault contracts reduce this risk by introducing artificial delay on operations, allowing abortion by the contract owner during the delay. However, the theft of a key still renders the vault unusable and puts funds at risk. We introduce Phoenix, a novel contract architecture that allows the user to restore its security properties after key loss. Phoenix takes advantage of users' ability to store keys in easily-available but less secure storage (tier-two) as well as more secure storage that is harder to access (tier-one). Unlike previous solutions, the user can restore Phoenix security…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSecurity and Verification in Computing · Distributed systems and fault tolerance · Advanced Malware Detection Techniques
