What Is A Blockchain Wallet & How Does It Work?

This Tutorial Explains What is Blockchain Wallet, its Types & How does it Work? You will also learn about Blockchain Wallet Address & how to Generate it?:

In the previous Blockchain Application tutorial of Blockchain Tutorial Series, we have seen different steps for integrating Blockchain in Organizational settings.

A blockchain allows distributed users in a blockchain network to not only communicate directly with each other but also to transact value with each other. All of these happen without the need for or without a middleman or a single point of failure, and securely with the benefits of cryptography.

The benefits of peer-to-peer transactions and communications including low cost, and high-speed occur when the need for trust through human verification is eliminated or minimized.

Blockchain Wallets

About avoiding a single point of failure, if you were sending a transaction to the other person through a bank, you would have to wait for that transaction to be verified either manually or automatically. The unavailability of the banking service because of their internal or external factors means that you cannot transact and have to wait.

For blockchains, a distributed network ensures that many peers are available to take and approve a transaction – whether that transaction means saving or processing a file in a decentralized platform or sending crypto to your other peer. You don’t have to wait for verification of the transaction even if some verifiers were unavailable on the network.

A blockchain wallet allows users to send, receive, store, and exchange value on a blockchain, as well as monitor and manage the value of their assets on the blockchain.

This tutorial will explain in detail what a blockchain wallet is, its detailed workings, and how to use these wallets. As technology advances and more innovations come up, wallets also keep on improving and we are going to see that in the section named types of blockchain wallets.

We will finally discuss the benefits of using a blockchain wallet and list some tips for maximizing those benefits and avoiding trouble when using blockchain wallets.

What Is A Blockchain Wallet?

Blockchain wallets come with many features like transaction tracking, charts, and social features.

Blockchain wallets features

Recommended Reading => Bitcoin Miner Software Solutions

Blockchain wallet is digital software that runs on a blockchain and which stores private and public keys as well as monitors and keeps all the transactions related to those keys on a blockchain. Ideally, a blockchain wallet does not store crypto rather all the records relating to these keys are stored on the blockchain on which the wallet is hosted.

What it means is that the wallet provides an ID to enable the tracking of all transactions associated with that ID.

The blockchain ID is the blockchain wallet address, which is associated with the public key and the private key.

Practically speaking, blockchain wallets allow users to store, send, receive, and manage their digital assets on the blockchain. It can be used to store, send, receive, and manage a single or multiple types of blockchain assets say Bitcoin, Ethereum, Litecoin, etc.

Blockchain wallets can be compared to cash wallets.

Blockchain wallets can be compared to cash wallets

Basic facts about blockchain wallets include:

  • The wallet should provide all the features necessary for interacting with other wallets on the same or other blockchains, as well as the features necessary to keep and manage the assets securely.
  • All the transactions in a wallet are cryptographically assigned for security reasons.
  • Blockchain wallets can be run on computers, mobile phones, and other devices, or as browser plugins and extensions.
  • Although a user can download and install the software on their devices, wallets are personal. After downloading, the user will require to create a personal wallet that has a unique identifier, password, and other safety mechanisms. The user can only transact from or with the wallet if they gain access to it to prove ownership. However, you can send crypto or other digital assets to someone only with their wallet ID the same way you can send money to someone only with their bank account.
  • Modern crypto wallets come with integrated APIs to pull data from other platforms. Others can pull data to allow doing charting and crypto market analysis to enable a user to make trading decisions for cryptocurrencies profitably; social features to allow emailing and chatting with other users online or posting status as well as following and copying their trading practices; and transaction tracking including reading history, prices for various cryptos.

Blockchain Wallet Address

A wallet address looks like this: 16KRo4Zfp7f5tGwdoKCAnLJXj1PVSbOnDl

  • While software running on a blockchain, a personal blockchain wallet is defined by a randomly generated 32 alphanumeric characters called the wallet address, the same way a bank account is defined by a bank account number.
  • A blockchain wallet allows generating of these addresses and it can allow generating of multiple addresses.
  • To maintain the privacy of transactions in a wallet, most wallets will automatically generate a new address for each new transaction. However, a user can receive or send assets to previously used addresses and the assets will still end up in the same wallet.
  • Wallets keep a record of all transactions for each address and make the process more transparent as you can track all transactions in all the addresses you have ever used.

Generating Blockchain Wallet Address

Bitcoin address example

Generating a public wallet address is easy with a wallet but it is a mathematical process to relate it to the public key.

A wallet address is generated from a public key. For instance, every Bitcoin wallet is capable of generating a P2PKH address, with P2PKH being the short form of Pay To Public Key Hash.

While it was possible to send or pay Bitcoins to an Internet IP address directly, it became clear that such payments would become victims of man-in-the-middle attacks and this option was disabled.

Now, a Bitcoin wallet can find as many P2PKH addresses as possible, which is ideally a combination of several non-exceptional cryptographic operations. Bitcoin uses ECDSA cryptographic algorithm.

ECDSA cryptographic algorithm

  • Ideally, in blockchain, the wallet address is the result of hashing the public key via cryptographic algorithms and other conversions.
  • The wallet address represents the public key in a better readable way in addition to adding a checksum that prevents users from falling victim to typing errors.
  • Ideally, generating a wallet address starts with a public key and a cryptographic algorithm.
  • The hashing produces different results in different blockchains. For instance, hashing through the RIPEMD-160 algorithm is the reason P2PKH addresses have a “1” at the start and four checksum bytes at the end. The four checksum bytes result from the hashing of the result twice using the SHA256 algorithm and taking the first four bytes.
  • The checksum helps to prevent users from typos when sending money in crypto. For instance, when a user intending to send crypto pastes the address into the address entry, the system should do the checking. It checks the prefix and calculates the checksum and confirms that it matches that of the address pasted into the entry. If they do not match, the system rejects the address pasted and it becomes impossible to send funds to a wrong address when a typo is made.
  • While Bitcoin wallets may support P2PKH addresses, other blockchain wallets use some other types of addresses to allow other flexible payment methods to verify transactions sent via a generated private key in these blockchain networks.
  • A blockchain wallet can support more than one type of wallet address to extend the functionality of the wallet. An example is the support of P2SH addresses in Bitcoin wallets in addition to the P2PKH addresses. P2SH is the abbreviation of Pay to Script Hash. This support makes it possible to send payments to a hash of a script and not a hash of a public key. Of course, the P2PKH addresses are still supported, only that the P2SH is additional. In the P2SH case, the sender of a transaction requires signing a transaction with a script and the receiver has to verify that the sent script matches the hash to the script.
  • The support of P2PKH addresses allows methods like multi-signature addresses to be used in blockchains.
  • With multi-signature addresses, two or more parties have private keys and must sign a transaction for it to be accepted as valid. An example is a group or organization funds secured with signatures of two parties or two witnesses required to spend funds. In the case of multi-signature addresses, two parties provide information that sums up to the needed script. For instance, in Bitcoin, these addresses use the prefix 05, a reason they start with a “3”.
  • A blockchain network can use a different RIPEMD-160 algorithm prefix to end up with a different character at the start of its wallet addresses. For instance, instead of starting with prefix “1”, altcoins like Dash, Litecoin, and Dogecoin use a different prefix of the RIPEMD-160 to start with a different character at the start of their addresses. Again, different blockchain networks can use different cryptographic algorithms to generate their private and public keys and wallet addresses.

Differences Between Wallet And Blockchain

Blockchain Wallet
Tracks all transaction records for the entire network Tracks transactions relating to specific addresses or private and public keys
Acts like the network’s currency system Acts like the bank account
Does not hold any keys Holds private keys necessary to unlocking cryptocurrencies associated with a particular wallet address
Contains blocks of information each connected cryptographically Contains private and public keys connected cryptographically

How Does A Blockchain Wallet Work?

How a blockchain wallet works

Blockchain wallets are secured by cryptography, and the basics of this include generating a pair of keys – the public and private keys. These are used to secure the crypto mathematically.

(i) When you give someone your wallet address, whenever they are sending coins or cryptocurrencies to you, they are assigning the crypto to your public address. The public address is not your wallet address but a hashed format of the wallet address. A hash function is used to encrypt the input into a given output unknown to the public but associated with the public address, your wallet address.

(ii) Since your private key is associated with the public key and thus the wallet address, it is the only one that can be used to decrypt the information encrypted by the sender of the coins, to unlock the contents. That’s how you access your cryptocurrencies.

(iii) To send crypto, the owner of the wallet will use their private key to sign a transaction before sending it to the blockchain network. Once the transaction is broadcast to the public, verifiers in the network namely the nodes will use the publicly available public key which is associated with the private key that is used to sign the transaction, to verify that the transaction is authentic and valid, then allow it through.

The below image shows signing a transaction on a blockchain wallet when sending funds:

Signing a transaction on a blockchain wallet when sending funds
[image source]

Remember each transaction generated by the private keys contains a unique digital signature, making it hard to copy or be similar to the others even when the same private key is used to generate multiple signatures. Of course, to maintain privacy and increased security of transactions, users are recommended to use each address once.

(iv) The recipient of the transaction is also authenticated by the fact that the crypto sent is assigned by the sender to their public key, which is associated with their wallet address. The recipient’s private key is used to unlock the amount and the amount reflected in the wallet. What it means is that the user with the private key related to that public address where the crypto was assigned, has the authority and right to spend the crypto.

(v) This idea is applied by crypto exchanges and other platforms to facilitate the trading of cryptocurrencies. When a person is using a wallet to send messages, they will also sign the message with their private key.

Types Of Blockchain Wallets

There are two main classes of wallets: hardware and software wallets.  Another major subdivision is online and offline wallets.

Online wallets are also called as hot wallets and are used while online or connected to the Internet. They include web wallets. Offline wallets are used to store private keys offline and used to sign transactions without requiring to be connected to the internet. They include all hardware wallets and paper wallets.

Another classification is deterministic and non-deterministic wallets depending on the relationship or non-existing relationship of the public and private keys.

However, wallets can be subdivided into types according to the platform onto which they can be stored and used. We also have various types of blockchain wallets based on the technology they use.

#1) Non-deterministic Wallets

These types are those in which private keys generated on the wallet are not related. Although the wallet allows generating more than a single private key, the keys are not related to each other for instance to share a common recovery phrase or seed, which creates some management headache. Backing up each of the keys is crucial, which creates trouble for management as you create more keys.

#2) Deterministic Wallets

These are those whose private keys generated on the wallet are all related to each other back to a recovery seed (24-words long recovery phrase). All a user needs to do is to back up the wallet with the seed and the seed can be used to recover all the private keys. Most modern wallets are deterministic.

Deterministic wallets apply a single hash function to the seed to generate all the private keys. The seed is used to recover the wallet with all the addresses and thus private keys contained therein.

Hierarchical Deterministic wallets have sub wallets in them which are related through a child and grand-children relationship. To enable this kind of a relationship among the wallets and sub-wallets, these types of wallets support the BIP-32 format.

This kind of HD wallet can be helpful in an organizational setting where a company would want to allocate keys to its different departments and branches to help track expenses.

#3) Hardware Wallets

Blockchain hardware wallets

These are hardware devices that are used to store and manage private keys and public addresses, as well as sign transactions.

  • Most hardware wallets are USB-like devices that have an OLED screen and is used to observe activities being carried out. The side buttons are used to sign transactions and navigate through the interface like scrolling through and selecting features you want to run.
  • These devices are small like the size of a finger and they do connect to P.C. and other portable devices via USB. They come with native desktop apps for different cryptocurrencies. They synch with these apps.
  • Hardware wallets cost around $70-$150 but at that cost, they are considered the safest types of crypto wallets. That’s because they keep the keys offline. Examples include Trezor and Ledger that allow you to store more than 22 cryptocurrencies including BTC plus over 500 ERC-20 tokens.
  • Hardware wallets are most suitable for a large organization holding or handling a lot of value in cryptocurrencies.

#4) Paper Wallets

A crypto owner needs to keep their private keys safe. A good alternative is to print the keys on a piece of paper, which can then be stored in a safe place and referred to later when spending your cryptocurrencies.

These are some of the safest methods of securing cryptocurrencies although a paper can easily spoil or be accessed by a third party if not secured properly.  Not all cryptocurrencies offer paper wallet options.

  • Using a paper wallet is recommended most when storing your Bitcoins or other cryptos for a very long period.
  • The process of creating a paper wallet depends on the cryptocurrency in question. They can be created offline. For instance, to create a Bitcoin paper wallet, all you need is to download and save bitaddress.org, open the webpage while disconnected to the Internet, then hover the mouse over the page to create a 100 percent degree of randomness. Clicking on the paper wallet option on this page will create a paper wallet of single or more wallet addresses and their private keys. Print this file and keep the main portion securely and safely. You can then use these addresses to store Bitcoin knowing that you have their private keys secure and safe with you.
  • A paper wallet can have an extra layer of security where it is secured with a passphrase to unlock it.

#5) Desktop Wallets

Coinomi desktop wallet:

desktop wallet
[image source]

Desktop wallets are a type of software installed and used on major P.C. based operating systems such as Windows, Mac, and Linux. Almost every other cryptocurrency will start by launching a desktop-based wallet. Desktop wallets also include web browser extensions and plugins installed on the browsers.

These include MetaMask Ether wallet and Jaxx’s Chrome Extension.

They are not the most secure options because your desktop or laptop will connect to the Internet and their security can be compromised online if used without following stringent internet security measures. These measures include using up-to-date antivirus programs, anti-malware, and strong firewall procedures.

All in all, software that connects to the internet will require extra security and protection measures.

Types of desktop wallets include Exodus, Bitcoin Core, and Electrum.

#6) Mobile Wallets

Mobile wallets

Mobile wallets are installed as phone applications on Android, iOS apps, or other portable devices. To an extent, extensions and plugin wallets that work with browsers can be classified as mobile as long as they can work with these devices.

They enable using of crypto on the go but are not the most secure wallets because the devices are always connecting to the internet. Some allow users to save private keys offline on the device.

Examples of mobile wallet software include Mycelium, Coinomi, and Electrum.

#7) Web Wallets

metamask web wallet
[image source]

Web wallets are a type of hot wallet always connected to the Internet. These are the applications that run on browsers by way of a user opening the website wallet address and logging in to the Internet. As such, they can be accessed via Google Chrome, Firefox, and Internet Explorer.

These wallets store private keys on the Internet in servers where these apps run, mostly in the cloud although some do allow users to store keys offline. For instance, non-hosted wallets such as MyEtherWallet and MetaMask do not store keys on servers and allow users to download and store them offline. Hosted wallets include Coinbase and CEX.io.

#8) Single or Multi-currency Wallets

Single currency wallets store a single cryptocurrency while multi-currency wallets store multiple cryptocurrencies. Multicurrency wallets simplify the work of anyone dealing with multiple crypto types for he or she will not need to install a wallet for each. These can be hardware, web, mobile wallets, or extension/plugins.

How to create and use a blockchain wallet to send, store, and receive or buy with crypto?

Blockchain wallet addresses can be generated in a wallet or offline on web pages such as bitcoinaddress.org and BitHalo for multi-signature addresses.

Blokchain wallet addresses can be generated in a wallet or offline

For most cryptocurrencies, creating a wallet starts with downloading the cryptocurrency’s native wallet software and generating a wallet address. Some require the user to sign up and account but others don’t. Hosted wallets on centralized exchanges will need you to sign up with email and names and then do verifications and KYC before you can gain access to your wallet and send crypto there.

  • For the majority of wallet users, once you download the software, during generating a wallet address, most will allow you to download and save your private key as a Keystore file on your device or to write down and secure your recovery passphrase. These are used to recover your wallet in case you lose your device. You can then proceed to create the wallet account.
  • The majority of wallets allow you to have extra security features such as passwords and AUTHY authentication techniques. You just need to download AUTHY or Google or other authentication apps on your mobile device, then access the security feature of the wallet and add the wallet authenticator account on the mobile app. You will be receiving an access code on the app every time you try to login to the wallet. Other extra features include one-time links sent to your email every time you try to sign in to the wallet and which you must click on to be allowed to sign in. Other extra security features include mobile-based login codes sent via text messages or calls to your device every time you try to login to the wallet.
  • Sending cryptocurrencies into a wallet is easy as all you need is login to the wallet, get the wallet address or generate one, then send in crypto to that wallet address. Sending from the wallet involves spending the balance by sending it or some of it to an external wallet address that must be compatible with the crypto you want to send, for it to be usable. Otherwise, you risk losing the crypto if sent to a wrong address.

Benefits And Challenges Of Using Blockchain Wallet

Benefits:

  • Facilitating borderless transactions – across geographies without difficulties of conversions and expenses of foreign exchange.
  • No intermediaries in transactions.
  • Very low transaction costs especially for those transacting huge amounts of money.
  • Better security and privacy of transactions because of cryptography.
  • Faster transactions compared to legacy banking methods.
  • Benefits of using crypto accrue.
  • Simple signups compared to acquiring a mobile vault or bank account with legal and complicated procedures and verification needs.
  • Easy to manage and create. Low barriers to entry.

 Challenges:

  • Low acceptance and application world over.
  • Limited support for legacy and network is limited.
  • The volatility of cryptocurrencies.
  • Limited access to devices among those who are under-banked or unbanked.

Tips on using a blockchain wallet:

  • Choose one that allows you to control private keys and save them on your local device and/or offline.
  • Select one with backup seed phrase and with additional security features such as passwords.
  • Select one that has an active development community for maintenance and improvement.
  • Select one that is easy to use.
  • Choose the one that is compatible with your/and if possible with multiple operating systems suitable to you.
  • HD wallet should generate addresses on its own and does not create excessive baggage to backup each private key on its own.
  • Work with one on which KYC is not needed.
  • Go for one that serves your needs like day trading, hodling, long-term and short-term savings, and others.

Conclusion

We have looked at the basic idea behind blockchain wallets in this tutorial. We also saw that blockchain wallets are used to store private keys and these keys will sign transactions and unlock data sent over by someone else using a compatible public key which is available publicly. The non-deterministic wallets generate keys that are unrelated and present a management challenge when there are many addresses.

In comparison, private keys in deterministic or HD wallets are related via a passphrase and easy to manage. They can be recovered using a single passphrase.

We also looked at the application of wallets inside a blockchain. The best application of blockchain wallets is in the blockchain cryptocurrencies. In this case, they are used to store, send, and receive crypto. They help track the record of transactions relating to the specific addresses and public keys they generate.

We also found in this blockchain tutorial that wallets can be in the form of software or hardware. Finally, we also learned about the benefits and challenges of using wallets, among them being that the technology is not widely applied, and the fact that there are some technical challenges related to it such as access to devices.

<<PREV Tutorial | NEXT Tutorial>>