Blockchain is one of the hottest topics in the field of digital technology. Every aspirant of this field will face interview questions on blockchain one way or another. Here is the list of questions on blockchain that one should be aware of.
Bitcoin blocks are not encrypted in any way: Every block is public. What prevents modifications and guarantees data integrity is a value called the block hash. Block content is processed using a special hash function—in the case of Bitcoin, it's SHA256—and the resulting value is included in the blockchain.
Coins/tokens are used to implement changes between states. When somebody does a transaction, this is a change of state, and coins are moved from one address to another. Apart from that, transactions can contain additional data, and a change of state is used to mutate data—the only way to do this is in an immutable-by-definition blockchain. Technically, a blockchain doesn't need coins for its essential operations, but without them, some other way needs to be introduced to manage states of the chain and to verify transactions.
When a new node boots up, it doesn't know anything about the network, because there is no central server. Usually, developers provide a list of trusted nodes written directly into the code that can be used for initial peer discovery.
Every full node on the network does block verification. When a new block is announced, every node that receives it does a list of checks. The two most important checks are proof of work (if a block provides enough work to be included in the chain) and of the validity of all transactions (each transaction must be valid).
A scriptPubKey is a so-called "locking script." It's found in transaction output and is the encumbrance that must be fulfilled to spend the output. P2SH is a special type of address where the complex locking script is replaced with its hash. When a transaction attempting to spend the output is presented later, it must contain the script that matches the hash, in addition to the unlocking script.
A trapdoor function is a function that is easy to compute in one direction but difficult to compute in the opposite direction unless you have special information. Trapdoor functions are essential for public-key encryption—that's why they are commonly used in blockchain development to represent the ideas of addresses and private keys.
Mining is the process of reaching consensus in blockchain networks. Mining serves two purposes. First, it creates new coins in a generated block. Second, it includes transactions in a distributed ledger by providing proof of work to the network; that is, proof that the generated block is valid.
Blocks in the ledger are included in such a way as to build the longest chain, i.e., the chain with the greatest cumulative difficulty. Forking is a situation where there are two candidate blocks competing to form the longest blockchain and two miners discover a solution to the proof-of-work problem within a short period of time from each other. The network is then divided because some nodes get blocks from miner #1 and some from miner #2. A fork usually gets resolved in one block, because the probability that this situation happens again gets extremely lower with the next blocks that arise, so soon there is a new longest chain that will be considered as main.
Banking ledgers are used to ensure that the transactions can take place correctly. That's why they trace and timestamp transactions. The significant difference between a banking ledger and a blockchain is how they are governed. The blockchain is decentralized in nature; however, banking ledgers are completely centralized as banks govern them.
A Federated blockchain is a blockchain that is run by a group. This makes them faster and more scalable as the group dedicates the validation of the transactions. To get started, pre-selected nodes are made by leaders. These nodes dictate both the transactions and also the persons that can participate in the blockchain. Examples include EWF, R3, etc.