P2P stands for peer to peer, and networks are groups of interconnected things. A peer to peer network is a decentralized network where people connect directly with one another without going through a central service. For example, the Internet is a P2P network because it allows computers to connect directly with one another so long as they are packaging their data using the rules of the Internet Protocol. Facebook on the other hand is not a peer to peer network because in order to connect with peers on Facebook, Facebook’s servers must be up and running and Facebook the company must give its users permission to use the service.
Protocols are a set of rules and procedures by which a system is governed and operated. For example, the Internet is governed by the Internet Protocol. This protocol forces all computers who want to participate in the Internet to send and receive data using a specific format. If a computer does not send its data using the formats mandated by IP, it is not a part of the Internet.
Scalability within the context of this guide refers to a network’s ability to support all the users that want to participate. For example, in the early days of the Internet, it took days for an email to send. The Internet had to “scale” or increase it’s speed and capacity so that email could be used by large numbers of people. When people started to attach photos to emails, the Internet could not handle so many large files, so it had to scale again. In 1993 nobody would have guessed that the Internet would ever reach a large enough scale to support an application like YouTube, but the Internet has proven to be a very scalable network over time.
Smart Contracts are self-executing contracts with the terms of the agreement between a buyer and seller written into the code. A simple example of a smart contract is a vending machine. The terms of the agreement between a vending machine and its customer are as follows, insert a dollar, select your snack, get a snack. If less than a dollar is inserted, no snack, if more, change is returned. This is a basic agreement that could be coded into a smart contract.
Using this logic of if→then statements, more complicated tasks involving exchanging money for services can be automated using smart contracts. An example of this is a smart contract based rideshare service like “Uber”. Within a smart contract based rideshare app, upon starting a ride, a rider would send funds from their account into an escrow account controlled by a smart contract. When the rider reached their desired destination, location data would trigger the smart contract to automatically release of the funds from the escrow account into the account of the driver. If the rider did not end up where they needed to go, the smart contract would return the funds to the rider.
When people talk about crypto “coins”, what they are really talking about is a token. A token is a voucher that can be exchanged for something of value. Within the context of a blockchain, tokens are the units of account on a blockchain and are representative of a cryptoasset. Some blockchain tokens are designed as abstract units of value that are represented as “coins”. Other blockchain based tokens are directly exchangeable for more tangible forms of value such as digital storage, computing power, or a bushel of bananas. Any type of value can be represented as a token.
The term “wallet” as it relates to cryptocurrencies is a little bit deceiving. A cryptocurrency wallet is a piece of software which lets users send and receive and store cryptocurrency. It does this by generating messages about changes they want to make to their balance on a single shared public ledger known as a blockchain. The term is deceptive because no cryptocurrency is actually saved in a wallet as one might imagine. Because of this, wallets don’t really have cryptocurrency coming in and out of them either.
Instead of storing digital coins, a cryptocurrency wallet stores and uses what is known as a “private key”. Private keys, as indicated by the name, are kept private, but through a special mathematical function private keys can generate thousands of related “public keys” to which they are uniquely linked. Public keys are the accounts which are publicly listed on a blockchain displaying balances. For a user to receive a cryptoasset to their wallet, user 1’s wallet generates a public key and gives it to user 2. User 2 then uses their wallet to transfer some of their balance to the public key of user 1. The blockchain reflects this change in balance by subtracting value from user 2’s account and adding it to user 1’s.
To send a transaction, a wallet uses its private key to sign a digital message requesting a change in balance which it then sends to the network of computers maintaining the blockchain. Because the private key is mathematically linked to the public key that owns the balance on the blockchain, this message proves to the network that the sender of the transaction is the true owner of the balance and the requested change in balance is valid. Once a wallet creates a message requesting to change their balance, the message is broadcast across the network of computers maintaining the blockchain and the blockchain updates to reflect the changes (subtracted value from one account, added value to another).
Through this function of using a private key to generate public accounts and sign unique messages about desired changes to the balance of these public accounts, a cryptoasset wallet allows users to effectively store, send and receive cryptoassets. In reality, however, the only thing “stored” in the wallet software is the private key and the function of the wallet is to write public messages that mathematically prove that the writer of these messages owns the private key. The math involved in this process is known as asymmetric encryption.
The Web, also known as the World Wide Web is a protocol layer built on top of the Internet. People use the Internet without the Web so rarely that the two have become almost synonymous. The web employs several protocols in order to display content to its users. You are on the Web any time you use a web browser (Safari, Google Chrome, Mozilla Firefox, Opera, Brave Browser) and visit a web site. The web uses the base layer protocol of the Internet and builds on top of it using another protocol known as the hyper text transfer protocol, which you may know as HTTP. Internet Protocol transfers the raw data and then HTTP turns it into readable content that can be viewed in a web browser.