Skip to main content
QUICK REVIEW

[Paper Review] ERC-20R and ERC-721R: Reversible Transactions on Ethereum

Kaili Wang, Qinchen Wang|arXiv (Cornell University)|Jul 31, 2022
Blockchain Technology Applications and Security4 citations
TL;DR

This paper proposes ERC-20R and ERC-721R, reversible extensions of Ethereum's ERC-20 and ERC-721 token standards that allow transactions to be reversed within a short dispute window via a decentralized governance mechanism. The system enables victims to freeze and reverse stolen or mistakenly sent assets using a multi-step process involving judges, with formal guarantees against over-obligation and double-freezing through a reverse-chronological obligation algorithm.

ABSTRACT

Blockchains are meant to be persistent: posted transactions are immutable and cannot be changed. When a theft takes place, there are limited options for reversing the disputed transaction, and this has led to significant losses in the blockchain ecosystem. In this paper we propose reversible versions of ERC-20 and ERC-721, the most widely used token standards. With these new standards, a transaction is eligible for reversal for a short period of time after it has been posted on chain. After the dispute period has elapsed, the transaction can no longer be reversed. Within the short dispute period, a sender can request to reverse a transaction by convincing a decentralized set of judges to first freeze the disputed assets, and then later convincing them to reverse the transaction. Supporting reversibility in the context of ERC-20 and ERC-721 raises many interesting technical challenges. This paper explores these challenges and proposes a design for our ERC-20R and ERC-721R standards, the reversible versions of ERC-20 and ERC-721. We also provide a prototype implementation. Our goal is to initiate a deeper conversation about reversibility in the hope of reducing some of the losses in the blockchain ecosystem.

Motivation & Objective

  • To address the irreversible nature of blockchain transactions, which leads to massive losses from theft and user error.
  • To design a reversible transaction mechanism compatible with existing ERC-20 and ERC-721 standards without breaking backward compatibility.
  • To ensure that frozen assets are not over-allocated or double-frozen through formalized obligation accounting.
  • To enable recovery of stolen or misdirected tokens and NFTs via a time-bound, decentralized dispute resolution process.
  • To provide a formal foundation for reversible transactions that prevents economic loss due to malicious or accidental transfers.

Proposed method

  • A three-phase reversal workflow: (1) freeze request submission with evidence and stake, (2) decentralized judges vote to freeze assets on-chain, and (3) judges rule on reversal or rejection.
  • A novel obligation accounting algorithm that processes transactions in reverse chronological order to prevent over-obligation of downstream addresses.
  • Formal proof that the obligation passed to any recipient $ b $ from a transaction $ t:a\to b $ does not exceed the sum of obligations previously incurred by $ a $, ensuring no over-allocation.
  • A data structure called _spendings to track outgoing transfers, with subtractions during freezing to prevent double-freezing and additions to _claims for reversal recovery.
  • Integration of freeze and reverse functions into ERC-20R and ERC-721R contracts, with NFTs reverted to original owners if theft is confirmed.
  • Use of a governance contract to coordinate judges' decisions and enforce freezing and reversal actions on the token contracts.

Experimental results

Research questions

  • RQ1How can reversible transactions be securely and efficiently integrated into existing ERC-20 and ERC-721 token standards?
  • RQ2What mechanisms ensure that frozen assets are not over-allocated or double-frozen across multiple requests?
  • RQ3How can a decentralized set of judges fairly and consistently decide on reversal requests without central authority?
  • RQ4What formal guarantees can be provided to prevent economic loss due to incorrect or malicious reversal decisions?
  • RQ5How can the system handle complex fund dispersal patterns, such as mixing or multi-hop transfers, during the reversal process?

Key findings

  • The obligation accounting algorithm ensures that no recipient is assigned responsibility for funds transferred to an address after a transaction is processed, preventing over-allocation.
  • The system formally proves that $\text{ob}(b,t) \leq \text{obsum}(a,t) $, meaning the obligation passed to $ b $ does not exceed prior obligations at $ a $, ensuring economic soundness.
  • Double-freezing is prevented by decrementing the amount in the _spendings data structure when a freeze is applied, ensuring funds are not frozen twice.
  • The reverse-chronological processing order in the algorithm guarantees correctness even when funds are split, exchanged, or laundered across multiple accounts.
  • The system supports both fungible (ERC-20R) and non-fungible (ERC-721R) tokens, with NFTs being returned to original owners upon confirmed theft.
  • The prototype implementation demonstrates that the reversal process can be initiated within days and resolved via decentralized governance, offering a practical path to reducing blockchain theft losses.

Better researchstarts right now

From reading papers to final review, dramatically reduce your research time.

No credit card · Free plan available

This review was created by AI and reviewed by human editors.