Wallet Contracts on Ethereum

01/19/2020
by   Monika di Angelo, et al.
1

In the area of blockchains, a wallet is anything that manages the access to cryptocurrencies and tokens. Off-chain wallets appear in different forms, from paper wallets to hardware wallets to dedicated wallet apps, while on-chain wallets are realized as smart contracts. Wallet contracts are supposed to increase trust and security by being transparent and by offering features like daily limits, approvals, multiple signatures, and recovery mechanisms. Ethereum is the most prominent platform for both, tokens and smart contracts, and thus also for on-chain wallets. Our work aims at a better understanding of Ethereum on-chain wallets, which represent one of the most frequent types of smart contracts. By analyzing source code, bytecode, and execution traces, we derive usage scenarios and patterns. We discuss several methods for identifying wallet contracts in a semi-automatic manner by looking at the deployed bytecodes and their interaction patterns. We extract blueprints for wallets and thereby compile a ground truth. Furthermore, we differentiate characteristics of wallets in use, and group them into six types. We provide numbers and temporal perspectives regarding the creation and use of wallets. We analyze the data of the Ethereum main chain up to block 8450000, mined on August 30, 2019.

READ FULL TEXT

Please sign up or login with your details

Forgot password? Click here to reset