Ethereum Wallets in Plain English Part 1
Ethereum wallets are different than Bitcoin wallets and have more functionalities.
Let’s talk about those software or hardware pieces that allow us to interact with the Ethereum network.
At its core, an Ethereum wallet holds your private key — the “secret password” that gives you control over your coins. It also supplies you with a public Ethereum address which people can use to send you Ethereum’s currency known as Ether. This is almost as far as Bitcoin and Ethereum go in terms of similarities.
Many non-technical users think of Ether as a currency in the same way they view Bitcoin. They buy Ether hoping its price will rise, they pay for stuff with Ether and more. However, Ether wasn’t designed for the same purpose as Bitcoin.
If you don’t know what is Ethereum or Ether, then you can read this first:
Ethereum & Ether in Plain English
This is a beginner’s guide to the Ethereum blockchain and Ether which is its native cryptocurrency.
Ethereum is a network of independent computers working together as one supercomputer. This supercomputer executes pieces of code known as contracts or smart contracts. Interacting with contracts requires more complex communication than to just send X amount of money from Y to Z as Bitcoin does. Ethereum wallets are the tool we use for this communication. So to truly understand Ethereum wallets we need to first understand how Ethereum is built.
In Ethereum there are two types of accounts: The most basic type of account in Ethereum is called an EOA or Externally Owned Account. Like how a Bitcoin wallet operates, EOAs have an Ethereum address that is controlled by a private key. A person can open as many EOAs as he likes. In addition to sending and receiving Ether, EOAs can create contracts and trigger them.
The second type of account is the Contract account. These are accounts that have code associated with them. Every contract deployed to the Ethereum network has its own account which includes a unique Ethereum address. However, unlike an external account, a contract account doesn’t have a private key that controls it. So how is a contract account controlled?
The code that defines the contract includes a set of predefined triggers which control the account. In other words, the conditions to control how the contract operates are hardcoded. Like EOAs, contract accounts can receive Ether, and if triggered, send Ether, or even create additional contract accounts. It’s important to note that contracts can’t be changed once they’ve been launched, so the author must be very thorough in drafting the conditions for each trigger.
EOAs can interact with other EOAs and with contracts through messages. These messages are “wrapped” inside transactions that are paid for in Ether. So, while Bitcoin transactions are used only to transfer value, Ethereum transactions are used for a variety of reasons:
- First, transactions are used for the transfer of value. This is the simplest form of transaction, meaning sending Ether between accounts.
- Second, You can also use transactions to create a new Smart contract. Creating a new contract is done by sending a transaction that includes the contract’s code.
- Third, transactions can be used to trigger a contract. For example — when you send money to an ICO’s contract account address, you’re actually activating a contact that sends you tokens in return.
Now that you understand how Ethereum is built and that transactions are in fact used to help accounts talk to each other, we can move on to Ethereum wallets. Some Ethereum wallets will only allow you to transfer value or send Ether between accounts. Other wallets will allow you to also deploy or trigger a contract. These wallets are known as “Smart contract wallets”. Like Bitcoin, wallets are sometimes referred to as clients or nodes. There are two types of clients — full clients and light clients.
A full node is a computer that holds the entire Ethereum blockchain history from its inception until this day. Running a full node has disadvantages like increased memory and computer usage, however, it allows you to verify transactions on the Ethereum blockchain without needing to trust anyone’s word for it. Full nodes are an integral part of the Ethereum network as they are the “muscles” of the network, that help executes contracts in a decentralized manner. Each node that receives a new block of transactions also executes the code inside these transactions. There are different programs to help you run an Ethereum full node but to avoid longevity, I won't discuss them here.
If you don’t want to run a full node you can use a light node. Light nodes, like Bitcoin’s SPV wallets(Simplified Payment Verification), are programs that rely on 3rd party full nodes to get information when needed rather than holding a full copy of the blockchain. This means they require less space and can operate on devices with limited space, such as mobile phones. Being the second-largest currency by market cap on the crypto market, Ether has caught the eye of day-to-day users. These users will usually use light nodes as their wallets since it’s easier to install and operate. If you don’t intend to write smart contracts any time soon you can use light nodes.
Let’s talk a bit about Ethereum hardware wallets. If you’re serious about security, I suggest storing your Ether on a hardware wallet. While being the most secure way to store your coins, hardware wallets cost money. Also, hardware wallets are not smart contract wallets by design, they can only send and receive Ether and ERC-20 tokens.
The rest is for part 2 coming this week.
Thanks for reading. I wish everyone a smile. Please don’t forget to clap. I write on business and technology. You can follow to stay aware of technology and increase your business knowledge.