Blockchain Demystified: (Part 2: Wallets)

September 27, 2024

Discover how blockchain wallets enable secure, peer-to-peer transactions without relying on centralized entities. Learn the role of seed phrases, private and public keys in making this revolutionary technology possible.

Using Wallets to Manage Assets

Hello readers, welcome back to our 3-part series on blockchain fundamentals. In part 1, we covered how blockchain tech creates unique, novel digital assets that are tamper-resistant, decentralized, and publicly accessible.

Here, in part 2, we'll cover how to send, receive, and manage these assets. To do that, we'll breakdown how these assets are transferred, and the role that blockchain wallets play in that transfer.

Sending Assets on the Blockchain

Say Alex wants to send Cammy $10, he would likely use a digital wallet like Venmo or PayPal, or he might use his bank's mobile app. Alex puts in Cammy's account, the amount, and then confirms the request in the app. On the backend, Venmo confirms that Alex's account has sufficient balance, then decreases his balance, and increases Cammy's, by $10.

This is all done on Venmo's platform and database. In this case, Venmo is a single, central entity that controls access to the account (eg. they can suspend Alex's or Cammy's account), validates transfer requests, and updates their own database record.

A Hardware wallet and a mobile wallet

Sending money or assets on the blockchain is similar, except the entire transaction is done  without going through a central entity. Instead, all nodes in the blockchain network participate in the creation, validation, and settlement of the transaction. Every single transaction since the beginning is permanently recorded on each node in the blockchain network.

Let’s suppose Alex wants to send 1 unit of Ethereum (ETH) from his account to Cammy’s account for designing a beautiful webpage for him. To do this, Alex needs a blockchain wallet, aka crypto wallet. A blockchain wallet is a software app that allows Alex to interact with a blockchain, allowing him to send, receive, store, and manage assets on that chain. Because wallets are designed to work with a specific blockchain, different wallets are needed to interact with Ethereum, Bitcoin, or Solana. There are also different types of wallets such as hardware, mobile, desktop, custodial, etc, but we will cover those in a separate article.

Unlike traditional wallets, blockchain wallets don't hold the asset itself. Instead, they store pairs of cryptographic keys called public / private keys, which are used to send and receive assets on the blockchain. Every public / private key pair is unique, so each pair is like a different account. A wallet can hold one or more key pairs which means a wallet can have multiple accounts.

This is what happens when Alex's account was first created:

ex: 12 word seed phrase

Seed phrase: At account creation, a seed phrase is generated, which is an ordered, sequence of (typically 12 or 24) human-readable words. The list of words are unique to each account, and is critical for recovering, or migrating, an account. It must be kept safe and secure, because anyone with access to the seed phrase owns the account and can transfer all assets out of the account.

  • Private key: The private key is generated from the seed phrase via a cryptographic function. It is a series of random letters, numbers, and symbols, for the account. Like its name suggests, it is meant to be kept private as it is used to create transfers, sign transactions, and prove ownership. We'll go into this in detail below.

    Private keys are like a bank account’s PIN or password; anyone with access to the private key can send assets out of the account. It must also be stored securely. 
  • Public key: The public key is created together with the private key. It is meant to be shared publicly so that anyone can use it to verify the digital signatures created by its private key counterpart. Public / private key pairs have unique mathematical properties that allows a digital signature created by the private key to be verified via its public key counterpart.

    This is the crypto-magic that allows Alex to prove ownership by signing with his private key, and anyone (person or computer) to verify ownership with the his shared, public key.
  • Public address: Lastly, the public address for Alex's account is derived from the public key. It is meant to be shared publicly so the account can receive assets. In our example, Cammy's public address was used as the recipient for the 1 ETH. The public address is similar to the recipient's Venmo account name or bank account number.

    Public address is often referred to as wallet address, but since a single wallet can have multiple accounts (and therefore multiple public addresses), it's more accurate to say public address for a given account.

Public and private keys make decentralized, peer-to-peer transactions possible. They give the holder of the public / private keys the ability to access, manage, and transact crypto assets for that blockchain. So how do they do this?

Anatomy of a Transaction

Initiating a transfer using metamask

Continuing with our example, Alex uses a crypto wallet to send 1.0 ETH to Cammy. Here's how he initiates the transaction:

  1. Initiating the transfer: Alex launches Metamask (a wallet for Ethereum), selects ETH (the asset), and enters 1.0 (amount). He also enters Cammy's public address as the recipient.

  2. Proving Ownership: He then signs the transaction with his private key to prove that he owns the account. This generates a digital signature, which is a string of letters and numbers, that is included in the transaction. His public key is also included so that network nodes can use his public key to verify his digital signature. This proves that he owns the account and has the right to transfer the ETH.

  3. Creating the transaction: Metamask writes this transaction onto the Ethereum blockchain, so all nodes in the network can see it. The transaction includes Alex’s public key, his digital signature, Cammy’s public address, and 1.0 ETH (the amount and the asset).

  4. Validating the transaction: All nodes in the network then validate the transaction by:
    1) Checking Alex’s digital signature, using his public key, to verify that Alex does indeed own the wallet holding the ETH. This is the proof of ownership.
    2) Confirming that Alex has at least 1.0 ETH to cover the transaction, and hasn’t already spent some or all of it in a separate transaction preceding this one.
  1. Formalizing / Recording the Transaction: If the transaction is not valid (eg. Alex doesn’t have enough ETH) the transaction is invalidated.

    If the transaction is valid, then all nodes in the network use a consensus algorithm to determine how to record the transaction onto the blockchain. This process is needed because there are a large number of nodes, and they all receive transactions at different times. Because of this, the ordering of transactions will be different for each node initially. Since there can only be 1 “accepted” ordering of transactions, a process is necessary to allow all nodes to come to an agreement on the final, accepted ordering of transactions. Once consensus is reached on the ordering of transactions, the transaction is considered to be completed. This is called reaching finality. In the traditional world, it is akin to a money transfer being settled.
A confirmed ETH transaction of 0.15 ETH that anyone can see (click here)

At the completion of the process, Alex’s account balance on the public blockchain will show 1 less ETH, and Cammy’s will have 1 more. Note that the proof of asset, ownership, and the transfer agreement are all verified and validated by computer nodes on the network, without needing a third party such as a bank.  

Blockchain tech empowered Alex and Cammy to perform an asset transfer in a peer-to-peer fashion, without having to trust a third party, or each other. Alex and Cammy could've been complete strangers, yet still able to trust that a successful transaction meant the asset was truly transferred.

This new technology gives all of us the ability to take control of our own financial future. We can acquire, store, and manage financial assets without relying on a centralized entity for access, providing personal info that could be compromised, or risking seizures, etc. They give us new abilities, but also new responsibilities. In a future article, we will cover the different types of wallets, how to use them, and options for securing your seed phrase and keys. 

In the next, and final, part of our 3-part series, we'll explore the implications of this technology on our ability to achieve independence, self-sovereignty, resist censorship and centralized control. We'll also take a stab at why this newfound capability for financial freedom creates polarizing views, resulting in extreme optimism or fear, uncertainty, and doubt.

This article is brought to you by Bambuu. We are building a no-code platform to help businesses integrate Web3 digital assets to increase customer retention and brand awareness. If you're interested in working with us, join our waitlist here.