2019 IEEE European Symposium on Security and Privacy Workshops (EuroS&PW) 2019
DOI: 10.1109/eurospw.2019.00042
|View full text |Cite
|
Sign up to set email alerts
|

Resolving the Multiple Withdrawal Attack on ERC20 Tokens

Abstract: Custom tokens are an integral component of decentralized applications (dapps) deployed on Ethereum and other blockchain platforms. For Ethereum, the ERC20 standard is a widely used token interface and is interoperable with many existing dapps, user interface platforms, and popular web applications (e.g., exchange services). An ERC20 security issue, known as the multiple withdrawal attack, was raised on GitHub and has been open since November 2016. The issue concerns ERC20's defined method approve() which was e… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
7
0

Year Published

2020
2020
2023
2023

Publication Types

Select...
3
3
1

Relationship

1
6

Authors

Journals

citations
Cited by 10 publications
(7 citation statements)
references
References 6 publications
0
7
0
Order By: Relevance
“…Then, to verify their true identities, we use sig PK U .PKI/ as the digital signature for the users, and Sign R to represent the ring signature. The three tokens [17] are represented by T v-s , T s-c , and T c-p . Other basic notations are introduced in the following.…”
Section: Basic Notionsmentioning
confidence: 99%
“…Then, to verify their true identities, we use sig PK U .PKI/ as the digital signature for the users, and Sign R to represent the ring signature. The three tokens [17] are represented by T v-s , T s-c , and T c-p . Other basic notations are introduced in the following.…”
Section: Basic Notionsmentioning
confidence: 99%
“…Using these functions in an undesirable situation (i.e., front-running or racecondition) can result in allowing a malicious authorized entity to transfer more tokens than the owner wanted. There are several suggestions to extend ERC-20 standard (e.g., MonolithDAO [74] and its extension in OpenZeppelin [46]) by adding new functions (i.e., decreaseApproval() and increaseApproval()), however, securing transferFrom() method is the effective one while adhering specifications of the ERC-20 standard [55].…”
Section: Multiple Withdrawalmentioning
confidence: 99%
“…Without our counter-measure, an attacker can use a front-running attack [10,19] to transfer more tokens than what is intended (approved) by the token holder. We secure the transferFrom() function by tracking transferred tokens to mitigate the multiple withdrawal attack [55]. Securing the transferFrom() function is fully compliant with the ERC-20 standard without the need of introducing new functions such as decreaseApproval() and increaseApproval().…”
Section: Multiple Withdrawal Attackmentioning
confidence: 99%
See 1 more Smart Citation
“…Friedhelm Victor et al [66] provided an overview of more than 64,000 ERC20 token networks and analyzed the top 1,000 from a graph perspective. Besides, there are some studies dedicated to optimizing the ERC-20 token standard [51,58] or using ERC-20 token contract to address practical issues [36,48]. For example, Mayer et al [51] proposed a proxy scaling solution for ERC-20 tokens named BatPay, which is suitable for micropayments in one-to-many and few-to-many scenarios and can reduce gas cost of transactions.…”
Section: Erc-20 Tokensmentioning
confidence: 99%