---
# System prepended metadata

title: Ethereum Wallets

---

# Ethereum Wallets

Cryptocurrency can be overwhelming at first even for developers. There is a lot of new terminology but also some core concepts that need to be understood first.

Cryptocurrencies like Bitcoin and Ethereum consist of a network of nodes that maintain a ledger of transactions on a blockchain and those transactions include addresses that refer to different accounts. 

In this article, we will more specifically dive into Ethereum wallets and how wallets and accounts relate to each other. The first thing to understand about Ethereum is that for every transaction to be valid needs to be signed by an account. An account is managed by a wallet and the most common wallets use key pairs that include a private key that can sign transactions and should not be shared plus a public key that is a public identifier to the key pair that can be shared. However on the blockchain we don't store the public key, we store addresses which refer to accounts with balances and the accounts are represented by the addresses. It's a common misconception that addresses are public keys but for example Ethereum there are two types of accounts: Externally Owned Accounts (aka EOA or Normal Accounts) and Smart Contract Accounts. EOA accounts are owned by a key pair and its addresses are derived by the hash of the public key. Therefore addresses are directly correlated to public keys but are not the same. In the case of Smart Contract Accounts the addresses are derived when they are deployed and they can be owned by none, one or many key pairs. The rules written in the smart contract account define which keys can manage and what they can do. This is a very powerful feature of smart contracts which allows these accounts to serve different functionalities and I will talk about specifically Smart Wallets. Smart Wallets are wallets that manage a Smart Contract Account using multiple keys. Since Smart Wallets are managed by multiple keys it provides an easier user experience because you can recover your account if you loose one of the keys. So why do most wallets make you save seed phrase (aka mnemonic)? Most wallets use key pairs to manage EOA accounts and seed phrases are much easier to memorize than private keys however seed phrases are not private keys. They are a secret that can generate many private keys from. They use Hierarchical Deterministic Wallets which can have infinite private keys from one seed phrase. This is also very powerful feature because it makes it easier to manage multiple EOA accounts with one secret. But of course you have to make sure it's always secret and you never loose it. While Smart Wallets can manage an account with multiple keys.

What other wallets exist? The other way to manage accounts is Multi Party Computation wallets  (aka MPC wallets). These dont use seed phrases nor use smart contract accounts. These wallets use a network of nodes to generate key pairs and/or sign transactions. As a user you never actually store a private key but you can use this network to sign transactions without worrying of loosing it because the network can always compute your key again. Of course you always need to be able to connect to this network to manage your account.

TLDR: Blockchains maintain a ledger of transactions between accounts. Accounts are represented by addresses. EOA accounts have addresses derived from hash of the public key. Smart Contract accounts have addresses derived from their deployment. Wallets manage accounts on the blockchain. There are three main wallet categories: Smart Wallets, Seed Phrase Wallets and MPC wallets. Smart Wallets manage one Smart Contract Account using multiple keypair. Seed Phrase wallets manage multiple EOA accounts using one key pair each. MPC wallets manage one EOA account using a network of nodes to compute your keypair or sign your transactions.
