By Jerome Kehrli
The blockchain has tremendous potential for fraud prevention and cyber security. With this series of articles, wij will explore how the blockchain will switch the cyber risk spel.
Ter my very first article, I have introduced the blockchain concept, presents what it is ter the light of its initial deployment te the Bitcoin project, key problems solved by blockchain, and the blockchain operation principle.
With this 2nd part, wij dig into the technical aspects to accomplish our thorough introduction to blockchain. Concrete business applications and evolutions will be discussed te an article to go after ter the coming weeks.
1. Technical aspects of a blockchain
Te the Bitcoin system, a blockchain is a transaction database collective by all knots participating ter a system based on the Bitcoin protocol.
A total copy of a currency’s block chain contains every transaction everzwijn executed ter the currency. With this information, one can find out how much value belonged to each address at any point te history.
1.1 The blockchain gegevens structure
The blockchain gegevens structure is an ordered, back-linked list of blocks of transactions. Every block contains a hash of the previous block. This has the effect of creating a chain of blocks from the genesis block to the current block. Each block is ensured to come after the previous block chronologically because the previous block’s hash would otherwise not be known. Each block is also computationally impractical to modify once it has bot te the chain for a while because every block after it would also have to be regenerated.
Transaction gegevens is permanently recorded ter thesis blocks spil if they were files. Thesis blocks can be thought of spil the individual pages of a city recorder’s recordbook (where switches to title to real estate are recorded) or a stock transaction ledger. Overheen time, blocks are organized into a linear sequence, also known spil a blockchain.
Fresh transactions are permanently being processed by miners into fresh blocks, which are then added to the end of the chain and can never be switched or eliminated once accepted by the network.
1.Two A very first view on a block structure
Each block contains, among other things, a record of some or all latest transactions, spil well spil a reference to the block that came instantly before it. It also contains an reaction to a difficult-to-solve mathematical puzzle known spil the hash or proof of work—more on that zometeen!
1.Trio A miner’s life
Ter the Bitcoin world, transactions are broadcast to the network by the sender, and all peers attempting to solve blocks collect the transaction records and add them to the block they are working to solve. This is called mining.
Mining is the process of adding transaction records to Bitcoin’s public ledger of past transactions. This ledger of past transactions is called the blockchain because, simply, it is a chain of blocks. The blockchain serves to confirm to the surplus of the network that the transactions have taken place. Bitcoin knots use the block chain to distinguish legitimate Bitcoin transactions from attempts to re-spend bitcoins that have already bot spent elsewhere.
Mining is intentionally designed to be resource-intensive and difficult so that the number of blocks found each day by miners remains sustained. Individual blocks voorwaarde contain a proof-of-work to be considered valid. This proof of work is verified by other Bitcoin knots each time they receive a block. Bitcoin uses the hashcash proof-of-work function.
The primary purpose of mining is to permit Bitcoin knots to reach a secure, tamper-resistant overeenstemming.
Mining a block is difficult because the SHA-256 hash of a block’s header voorwaarde be lower than or equal to the target te order for the block to be accepted by the network.
Let’s simplify this problem for explanation purposes: The hash of a block vereiste embark with a certain number of zeros. The probability of calculating a hash that starts with many zeros is very low, therefore many attempts voorwaarde be made. Ter order to generate a fresh hash each round, a nonce is incremented.
Miners implement the following (simplified) algorithm:
1.Four Difficulty adjustment
The difficulty is the measure of how difficult it is to find a fresh block compared to the easiest it can everzwijn be. It is recalculated every 2016 blocks to a value such that the previous 2016 blocks would have bot generated ter exactly two weeks had everyone bot mining at this difficulty. This will yield, on average, one block every Ten minutes.
Spil more miners join, the rate of block creation will go up. Spil the rate of block generation goes up, the difficulty rises to compensate so that the rate of block creation is shoved back down.
Any blocks released by malicious miners that do not meet the required difficulty target will simply be rejected by everyone on the network and thus will be worthless.
Again, the difficulty of the mathematical problem is automatically adjusted by the network, such that it targets a aim of solving an average of six blocks vanaf hour. The network comes to a overeenstemming and automatically increases (or decreases) the difficulty of generating blocks.
1.Five Miner retribution (and Bitcoin creation)
Mining is also the mechanism used to introduce bitcoins into the system. Miners are paid transaction fees spil well spil a subsidy of freshly created coins. This both serves the purpose of disseminating fresh coins te a decentralized manner spil well spil motivating people to provide security for the system. Te other words, the subsidy provides incentive for miners to waterput their computation power at the disposition of the blockchain network.
Because there is a prize of brand fresh bitcoins for solving each block, every block also contains a record of which Bitcoin addresses or scripts are entitled to receive the prize. This record is known spil a generation transaction (or a coinbase transaction) and is always the very first transaction appearing ter every block.
The number of bitcoins generated vanaf block starts at 50 and is halved every 210,000 blocks (about four years).
Te addition to the generation transaction, miners are motivated to include transactions ter their blocks because of affixed transaction fees. A modest toverfee is received for every transaction ter the freshly mined block.
1.6 Bitcoin supply boundaries
Ter the specific case of the Bitcoin, Satoshi had the idea of limiting the bitcoin supply early on. Of course, there is an significant reason behind this.
Te a centralized economy, currency is issued by a central canap at a rate that is supposed to match the rate of goodsexchanged, so that thesis goods can be traded with stable prices. The monetary base is managed by a central canap. Ter the United States, the Fed increases the monetary base by issuing currency, enlargening the amount banks have on reserve, and, more recently, printing money electronically te a process called Quantitative Easing.
Ter a fully decentralized monetary system, there is no central authority that regulates the monetary base. Instead, currency is created by the knots of a peer-to-peer network. The Bitcoin generation algorithm defines, te advance, how currency will be created and at what rate. Any currency that is generated by a malicious user that does not go after the rules will be rejected by the network and thus is worthless.
Bitcoins are created each time a user detects a fresh block. Spil a reminder, the rate of block creation is adjusted every 2016 blocks to aim for a onveranderlijk two week adjustment period (omschrijving to 6 vanaf hour.) The number of bitcoins generated vanaf block is set to decrease geometrically, with a 50% reduction every 210,000 blocks, or approximately four years. Spil a result, the number of bitcoins te existence is not expected to exceed 21 million.
But why 21 million? Some speculate that 21 million matches a 4-year prize halving schedule, or that the ultimate total number of Satoshis that will be mined is close to the maximum capacity of a 64-bit floating point number. Satoshi has never indeed justified or explained many of thesis constants.