Author:Jimi S. Feb 28, 2019
Blockchain is generally considered a topic of complex technical nature. An important requirement to advance in the blockchain space is to understand how certain technical elements mutually interact and cohere with each other (especially when trying to understand crypto-economics or crypto-law). This in turn requires a basic familiarity with its terminology. Here is a basic list of about 30 commonly used blockchain terms that should help you digest the more technical-heavy discussions.
Essential blockchain terminology
- Consensus Algorithm
Perhaps one of the most important terms in the space and definitely crucial to understand essential differences between various cryptocurrencies. The consensus algorithm is the blockchain element that determines how consensus is reached on that blockchain. In other words; it is the part of the blockchain protocol that describes who gets to validate blocks of data (and thus is entitled to the reward) and how others can verify its legitimacy. All participating entities on the blockchain must adhere and follow the same consensus algorithm to participate on the blockchain. - Consensus Algorithm — Proof-of-Work
The Proof-of-Work consensus algorithm is perhaps the most common one, and is used on (amongst others) the Bitcoin blockchain. When the PoW algorithm applies, the first miner that presents a ‘proof of work’ for a block gets to validate it. This proof of work can be generated by repeatedly inserting transaction data (block) + a random strings of digits (nonce of block) into a (hashing) formulae, until a desirable outcome is found (the proof of work). Other miners can verify the proof of work by taking the alleged input string and applying it to the same formulae to see if the outcome is indeed that what was presented. PoW has been hotly debated as a controversial consensus algorithm because of the electricity costs involved in performing the formulae calculations. - Hashing
Hashing is the procedure that a miner on a Proof-of-Work blockchain constantly repeats in order to find an eligible signature (aka a proof of work). In other words; it is the procedure of repeatedly inserting a random string of digits into a hashing formulae until finding a desirable output. This is an example of a hashing formulae (HSA1). - Nonce
The nonce is an essential part of the blocks processed in a Proof-of-Work blockchain. The nonce is a small piece of data in the block that can be changed randomly and repeatedly all the time so miners can keep hashing the data of the entire block (changes every time the nonce changes) until they find a suitable outcome (signature).
- Consensus Algorithm — Proof-of-Stake
The Proof-of-Stake algorithm is used by i.e. Blackcoin and is being considered to be implemented at least partially on the Ethereum blockchain. When the PoS algorithm applies, the miners stake the according cryptocurrency in order to increase their chances of being selected to validate a block. The cryptocurrency ‘put at stake’ is locked up as a deposit to ensure the miner validates the block according to the rules. If the miner violates the rules, the deposit will be ‘burned’ aka destroyed. In the contrary to PoW, PoS has less costs involved for the miners (PoW requires a lot of electricity and hardware costs for the hashing process, PoS only requires things like a server setup, DDoS protection, et cetera). - Consensus Algorithm — Proof-of-Authority
The Proof-of-Authority algorithm is an alternative form to the PoS algorithm. Instead of staking cryptocurrency (wealth), in PoA you stake your identity. This means voluntarily disclosing who you are in exchange for the right to validate blocks. Any malicious actions you undertake as a validator will reflect back on your identity. PoA blockchains require a thorough form of KYC (a verification process that determines you actually are who you claim to be). - Hyperledger
Hyperledger is an open source collaboration effort created to advance cross-industry blockchain technologies. It is a platform that unifies companies and developers to coordinate and build blockchain frameworks across various industries. The Hyperledger initiative has over 100 members, including enterprises like IBM, Samsung, Deutsche Borse, American Express, BNP Paribas and Wells Fargo.
- Permissionless blockchains
A permissionless blockchain is a blockchain where users don’t need permission from anyone on the network in order to perform certain actions, including joining the network. Therefore, it is publicly available to anyone, usually very transparent and decentralized. The (voting) power is equally distributed between all network participants. Example: Bitcoin (BTC), Litecoin (LTC). - Permissioned blockchains
Permissioned blockchains are the opposite. Specific nodes or entities on these blockchains have authorizing powers over others, allowing them to appoint validators and allow or deny access to the network. Permissioned blockchains have centralized authorities, can be closed and private ecosystems, and are often less transparent. Example: Ripple (XRP). These blockchains are often deployed in the area of internal business operations. - Lightning network
The lightning network is an extra layer (“layer 2”) on top of a blockchain (on Bitcoin, for example) that enables faster transaction processing by using ‘payment channels’. A payment channel can be opened between peers (parties) that registers all transactions between these parties without sending them all straight to the actual blockchain. When the payment channel is closed, all transactions are settled with each other and the final outcome of all transactions is sent to the actual blockchain. - Plasma
Plasma is the Lightning Network concept implemented on the Ethereum blockchain. - Sharding
Sharding is a form of partitioning a blockchain. Instead of processing all the transactions on one blockchain, other blockchains are run on top of this blockchain. They all process transactions, and send frequent updates of their ledger over to the first layer blockchain that registers the updates of the second layer blockchains ledgers so the network on the first layer blockchain will not become clogged because of high transaction volumes (kind of like payment channels discussed in the Lightning Network, but then in regards to smaller blockchains connected to the main blockchain). The second layer blockchain(s) can process more transactions combined simultaneously. The Ethereum community is currently experimenting with the concept of sharding. - Fungible
Fungible means that a given good is identical. In crypto,we often talk about fungible or non-fungible tokens. A fungible token is Bitcoin. One Bitcoin is and will always be one Bitcoin, just like any other Bitcoin. Some other tokens however, can be non-fungible, meaning that these tokens can have unique mutual differences. An example is CryptoKitties. The exchange of CryptoKitties is technically achieved by exchanging tokens, but each of the CryptoKitties tokens is unique, as it needs to reflect a different kitty (for example hair colour). These tokens are non-fungible, they have slightly different properties. - Hard fork
Usually refers to a chain split, where an upgrade of the network forces miners and nodes to choose between the upgraded network or the original version of the network. Both networks will function separately from here on and will no longer interact with each other. A miner can only put its resources to work on one of the chains, not both (in case of PoW, complex story in case of PoS). A hard fork practically means that the history of the blockchain up until that point has been copied and adjusted by the upgraded network, resulting in two different chains and two different cryptocurrencies. However, cryptocurrency exchanges and wallet applications will need to adjust their software as well to keep supporting the new cryptocurrency. They sometimes choose to develop new software for the upgraded version of the cryptocurrency, but also keep the original software in place, so that the application supports both chains and both coins (Bitcoin and Bitcoin Cash for example). They can also choose to support only one of the versions, putting extra pressure on the community to follow. - Soft fork
A soft fork implies an upgrade to the network protocol, just like a hard fork, but it does not force miners and nodes to choose between the old or the new network. Old nodes and miners can still participate on the new network without upgrading. However, if the old network holds the majority of the mining power, it starts to become more complicated. Upgraded nodes are not able to participate on the network of the old nodes, and so if the old nodes create their own chain as a minority, the soft fork still results in a chain split. - Miner (or forger)
A miner is a node on the network attempting to add new blocks to the blockchain. On a Proof-of-Work blockchain a miner does this by hashing. On a Proof-of-Stake blockchain miners are often called ‘forgers’ instead, because they add blocks to the blockchain by staking. - Node (validator) (client)
A node is basically a small server that stores, updates and broadcasts a full copy of the blockchain. A blockchain exists on nodes. If no nodes are online, a blockchain is offline and can’t be updated or used. In case of Proof-of-Work, miners are always required to run a full-node in order to mine. - Smart contract
A smart contract is a digital contract programmed on a blockchain (specifically designed to host smart contracts, like the Ethereum blockchain). A smart contract is deployed on an address on this blockchain and cannot be moved nor changed afterwards. The contract (basically a script) operates and executes fully automatic without any interference from a third party. It is publicly available to anyone to read and use. A smart contract often comes with new tokens. These tokens are minted at the address of contract deployment. Here is an example of how the smart contract could work: a smart contract named ‘supercontract’ is deployed, and mints 1,000 ‘supercoin’ on the same address. The contract is programmed to automatically send 1 supercoin back to every address that sends the contract address 1 Bitcoin. Although smart contracts cannot be changed, there are some clever tricks to update smart contracts. An example is to include an override codeline referring to a non-existent contract that only you could create in the future (by including an address exclusively available to you for example) which is ignored if it doesn’t exist. Another example is by copying the smart contract, updating it, changing the address and deploy it on this new address. Then log in on the old smart contract address and send all tokens over to the new contract address. - Confirmation
The amount of confirmations a block has refers to how many blocks have been added on top of that block on the blockchain. Every added block counts as a confirmation because all nodes on the network indirectly also verifiy (confirm) the blocks before it again. Hence, if 5 blocks are added on top of a block, that block has 5 confirmations. The more confirmations a block has, the less likely it is to be altered (harder to attack), thus the safer the transaction is considered to be.
- dApp
dApp stands for decentralized application. This could be any smart contract deployed on the Ethereum blockchain, as they all operate autonomous, aka decentralised. CryptoKitties is an example of a dApp. - Genesis block
The genesis block is often referred to as the first block on a blockchain. The genesis block of Bitcoin was created on January 3, 2009; and indicates the birth of the Bitcoin blockchain. Fun fact: the Bitcoin genesis block quotes the headline of the New York Times the day it was created: “03/Jan/2009 Chancellor on brink of second bailout for banks”. - Stale block
A stale block is a valid block that was once broadcasted by a miner while another valid block was being broadcasted by another miner simultaneously. Nodes will only register one of these blocks, depending what block reaches them first. When both blocks have been propagated, some nodes will have block A as their last valid block, whereas some will have block B. Both blocks are valid at this point, but one of them will become invalid as soon as a new block is broadcasted on top of the other. Let’s say a miner finds a new block afterwards and has block B registered as the last block before that. It now puts the new block on top of block B and broadcasts this chain to all other nodes. Other nodes, regardless of their last block being block A or B, now recognize that this blockchain record is longer/heavier than the one they currently posses and are forced to follow this blockchain record. This means all nodes that had block A as their latest block, now have to erase block A and replace it with block B and the other new block on top of it. A stale block is a block that was once valid, but is no longer included in the truthful (longest/heaviest) chain (in this example block A has become a stale block).
- Orphan block
An orphan block is a block (Bitcoin blockchain) received by a node that does not (yet) recognize the block’s parent block. Let’s take the example of the stale block above. Let’s say node 5 with last block A now receives a new block broadcasted by a miner who has block B as their last block. Thus, block B is the official parent of the newly broadcasted block, but node 5 has included block A and not block B, and so it does not recognize the parent of the new block (it has never seen block B yet). The newly broadcasted block is deemed ‘orphan’. Node 5 will not validate the parentless block yet. Instead, it will request up to 500 of its parent blocks from the node that it received the orphan from, in order to attempt to identify its parents, grandparents et cetera (and thus the blocks it has potentially missed so far). - Uncle blocks
An uncle block is the same as a stale block but then on the Ethereum blockchain. The Ethereum blockchain processes blocks much faster than the Bitcoin blockchain, which also means that it has higher chances of two valid blocks being broadcasted simultaneously. This leads to more stale/uncle blocks. In order to keep miners motivated, the Ethereum ecosystem has decided to actually also reward miners for uncle blocks (75% of the original reward), they are however, just like stale blocks, not included in the original blockchain (and so the uncle block’s transactions are not valid). When a blockchain processes blocks faster, this increases the amount of uncle/stale blocks generated, often referred to as the ‘uncle rate’. - Merkle Tree
A merkle tree is the basic concept of creating blockchain signatures (hashing). It is called a tree because signatures are created from data and then combined with other signatures to create a new, overarching signature. This goes on and on and on, and can be seen as the mechanism used to ‘chain blocks’ together on a blockchain. It sort of takes the shape of a tree’s branches, coming forth from one another. The picture below illustrates a merkle tree.
- P2P (Peer-to-peer)
Peer-to-peer stands for a decentralised network where all participants are directly connected with each other without some sort of central connectivity point. All peers (participants, nodes/miners) are directly connected with one another. - Public Key
A public key is your wallet address and is needed by other entities to send you messages or transactions. - Private Key
A private key is the privately held key that allows a wallet owner to send signed transactions from their respective address (public key). - ASIC
ASIC stands for application specific integrated circuit and basically refers to hardware specifically designed to optimally perform a single task (such as hashing). ASIC miners (hardware) are therefore specifically designed to perform hashes as fast as possible in order to increase mining revenue. - Multi-signature
A multi-signature is a signature formed by multiple other signatures combined. Some operations or actions on a blockchain may require a multi-signature, meaning multiple users (addresses) are required to sign the operation in order for it to become executed. - Oracles
An oracle — in the blockchain sense of it — is a software application that verifies real-world occurences (such as a shipment of banana’s) and submits this information to blockchains. Oracles are basically data transformers and transmitters, converting real-world occurences into data for blockchains. - Hot wallet
A hot wallet is a wallet that is online. When talking about a hot wallet we often refer to an exchange wallet that is online because funds need to be quickly available and transferable to users, buyers and sellers. When a wallet is online, aka connected to the internet, its data is more vulnerable to hackers and/or malicious entities. - Cold wallet
A cold wallet, on the contrary, is a wallet that is offline. It is not connected to the internet and so its data is irretrievable by any hacker or malicious entity. Examples of a cold wallet are a Nano Ledger (USB) or simply a hardcopy wallet (Piece of paper with QR code and private key on it). - Satoshi
A Satoshi is the smallest granularity of a given cryptocurrency, aka the smallest decimal entity of a cryptocurrency. In example of Bitcoin, 0.00000001 BTC (8 decimals) is the smallest division of Bitcoin possible, and therefore reflects one Satoshi. - Whitepaper
A whitepaper is an in-depth paper on a specific topic that presents a problem and provides a possible solution. New blockchain ideas are often presented in the form of a whitepaper.
Bonus blockchain terminology
Less essential, but still good to know.
- EVM
- ICO
- Byzantine Fault-tolerance
- Turing completeness
This article is reproduced from https://blog.goodaudience.com/blockchain-terminology-d903758d6bd