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. The most
prominent platform for smart contracts in general and the token ecosystem im
particular, and thus also for wallet contracts is Ethereum. Our work aims at a
better understanding of wallet contracts on Ethereum, since they are one of the
most frequently deployed smart contracts. By analyzing source code, bytecode,
and execution traces, we derive usage scenarios and patterns. We discuss
methods for identifying wallet contracts in a semi-automatic manner by looking
at the deployed bytecodes and the on-chain interaction patterns. We extract
blueprints for wallets and 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. For the 40 identified blueprints, we compile detailed profiles. We
analyze the data of the Ethereum main chain up to block 11,500,000, mined on
December 22, 2020.

By admin