Blockchain: An Introduction
A blockchain is a decentralized, distributed database that is used to maintain a continuously growing list of records, called blocks. Each block contains a timestamp and a link to a previous block. A blockchain can serve as ‘an open, distributed ledger that can record transactions between two parties efficiently and in a verifiable and permanent way.
Both blockchain and Bitcoin are a creation of ‘Satoshi Nakamoto’. Until now it is unclear who this is, it could theoretically even be a group of people. He himself claimed to be a man living in Japan, born on 5 April 1975. However, there is still some doubt and quite some names have already passed as possible real identities.
Blockchains are an example of a distributed computing system with high byzantine fault tolerance. The initial objective of blockchain technology was to enable trusted financial transactions between any two parties without the need for a third party such as a bank.
Some examples of blockchain include Bitcoin, Ethereum, Ripple. Each block typically contains a hash pointer as a link to a previous block, a timestamp and transaction data. The technology uses smart contract protocol or rule which is immutable, thus once deployed it stays permanent.
Typical Structure of blockchain
Types of Blockchain
? Public blockchains
? Private blockchains
? Consortium blockchains
Blockchain Distributed Ledger Types
Blockchain is digitized, decentralized, open shared public ledger that details every value and is record transaction and track assets in a business network, transfer transaction. Basic feature of blockchain is immutable, transparent transactions and independent of any authority or third party. An ideal platform for sale and transfer of any value-based asset. A blockchain network is economical and efficient because it eliminates duplication of effort among stakeholder and reduces need for third party or middle man. with consensus model validate information, transaction is secure and authenticated.
Main concerns of any cryptocurrency developer are the issue of double-spending. This refers to the incidence of an individual spending a balance of that cryptocurrency more than once. The issue of double-spending is a problem that cash does not have; if you pay for a coffee with a $5 bill, turning that bill over to the maker of the coffee, you cannot turn around and spend that same $5 elsewhere. A transaction using a digital currency like bitcoin, however, occurs entirely digitally. This means that it is possible to copy the transaction details and rebroadcast it such that the same BTC could be spent multiple times by a single owner. Below, we'll examine how cryptocurrency developers have insured that double spending cannot happen.
Imagine that a person has 1 BTC and he attempt to spend it twice in two separate transactions. A Person could attempt to do this by sending the same BTC to two separate bitcoin wallet addresses. Both transactions will then go into the pool of unconfirmed transactions. The first transaction would be approved via the confirmation mechanism and then verified into the subsequent block. However, the second transaction would be recognized as invalid by the confirmation process and would not be verified. If both transactions are pulled from the pool for confirmation simultaneously, the transaction with the highest number of confirmations will be included in the blockchain, while the other one will be discarded.
While this effectively deals with the issue of double spending. For example, the intended recipient of the second (failed) transaction would not have part in the transaction itself failing, and yet that person would not receive the bitcoin he or she had anticipated.
Bitcoin
Bitcoin introduced the concept of mining blocks, a mechanism that rewards people for solving computationally expensive puzzles to add a new block. New Bitcoin transactions are relayed to the network of servers, collected together and added in a block by the first miner able to successfully crack the current puzzle.
By increasing the processing power required to solve these puzzles across lots of dedicated machines the mining time is greatly reduced.
Ethereum
Ethereum took the application of the underlying blockchain technology to another level by introducing a platform with a built-in Turing-complete programming language. This is a language that could theoretically solve any mathematical problem, allowing users to create custom currencies and digital financial instruments. For example, smart contracts allow users to control digital assets through lines of code, enabling users to create entirely customization systems.
The feature and complexity of blockchain changing the fundamental process and model.
A typical transaction processing in blockchain network
In next article I’ll discuss possible top business use case by industry and challenges of testing the blockchain application.
Vice President, Engineering at Basware
5 年How was the experience writing your first blog? ??