An Introduction to BlockchainTheBeginningfore going into the details of working principlesand other aspects of blockchain lets look into thegenesis of the technology itself The conceptual frameyork behind blockchain was first put forward bygroup of researchers in 1991 The idea was initiallyntended for time-stamping digital documents such thatbackdating them will not be possible thereafter Howeverthe idea went mostly unused until it was again mentioneby Satoshi Nakamoto in his white paperBitcoin: A Peer-to-Peer Electronic Cash Systemmay be the first time in history that the inventor of a game-changing teclnology has completely gone anonymous
Satoshi Nakamoto; an anonymousn/group is said to be behind the first blockchain, whBitcoin Bitcohe first blockchain came into existence and it was in 2009years, the bitcoin became popular, and the underlying technology became evenmore popular So the confusion and lack of clarity among people start from theorigin itself; a product and its related terminologies went viral before thetechnology behind it And when the blockchain displayed its real potentiapeople were trying to relate it with the bitcoin terminologies; the result wastotal misconception and confusion Butthe other way: start from blockand then try to understand bitcoiWhy Blockchainanother question that must be addressed first before going into the detailsa lot of advantage over existing technologies Here are some advantages of
blockchain over existing systems of different domains Blockchain is· Decentral|ized· DistributedSecure and fastTransparent and Immutablele features can be understood well if we look the data structure datadistribution, data validation(Authentication of a piece of data in blockchain) andother related terminologies of blockchainhe structure of blockchainAccording to IBM, blockchain is a shared, distributed ledger that facilitates theprocess of recording transactions and tracking assets in a network The assemay be a tangible asset like property, house, vehicle or an intangible asset likedigital currency, intellectual property rights, etc Basically, it stores Data, andecords its movements in a distributed environment
Let s look into its detaia distributed database or a public registry that keeps details of assets ands movements/transactions across a p2P network each transaction will be secured through cryptography and later all the transaction history will be groupedd stored as blocks of data then the blocks are linked together withforgeable, and immutable record of the transactions that happenedacross the network Additionally, this blocks of records are copied to everyhegreat advantage of blockchain is that it can store any kind of asset, its ownershipdetails, history of the ownership and location of assets in the network Whethdigital currency biteany other digital assets like a certifipersonal information, a contract, title of ownership of IP, even the real-worldbjectture of blockeon-trusting entities That is all of these participating nodes in the network donot need to know each other or trust each other because each has the
ability to monitor and validate chain for themselves
The irony is that the mutualdistrust among participant is the thing which keeps the blockchain secure andverifiedData structure of blockchainThe data in blockchain is stored as individual blocks, that's why it is calledBlockchain Just like a linked list the blockchain is a collection of blocksnked together So what does the block actually contain? Each block in ablockaHellow WorldPrevious0000000000000000000000000000000Hash: 0000fdgydfs5434hbsdfjndsdMine
1)Data: Stores the data2)Ph: S3)Hash: Hash value for the current block which can be used to refer this blockAs far as the user is concerned the Data field is the most important thing Theactual data (like transaction details, asset details etc
are stored in this fieldPhashstoink to the previous block), the blocks are connected through this valueH(1)prev:H()prev: H()prev:H()Transaction KansactionTransactiondatadataData distribution in blockchainWe saw that blockchain has its own unique Data storage structure, the dataa blockchain has also a differentroach they dont follow thwidely adopted client server model rather the Peer to Peer model The peer topeer data distribution approach gives the reason behind unfettered nature ofBlockchain; there is no central authority to control
Server-basedP2P-networkUnlike the client-server model in p2p network the data is stored in all theparticipant nodes in the network All the individual nodes will have the copy ofhe entire 'Blocks and a single change in a particular block will be updated inhe nodesBut here is the problem, in Client-Server model the data is stored in DB afterverification of a central authority but in P2P network there is no centraauthority then how does the authenticity of data assured? the answer is thevalidation process and consensus mechanism of the blockchain networkBlock validationAs we described above: theand its transactions are stored as connectedblocks in blockchain
Only the valid transactions are added to the blockchainTechnically saying Blockchply the processding theblock hasa blockchain all the blocks are added to the blockchaie blockchainadded to a block; sometimes one transaction per block and sometimes severaltransactions perdepends on the block size and the nature of thenetwork When a transaction is added to the block it must undergobeing added to the blockchain as a valid blockvalue for the block can be calculated using some algorithms (like sha 256)he hash value has certain properties too The main thing is that the hash
value should be collision-free ie no two blocks should have the same hasvalue Since each block is represented using the hash value it should beidentical The second property is that the hash values should be irreversibleThis means the block data could not be retrievable from the hash valueBlock validatorsBlock validators are the nodes which participates in the process of blocke validators are rewarded for their effort,act they arerewarded for the computational power they spent) Different blockchain protocolsadopt different methodologies for selecting the validator from available pool ofnodes Some of the methods are described belowPoW(Proof of workhe mining challenge is open to ahe miners compete eachother to add the next block a fixed reward is given to the miner who finds theact, the node with more computational power usually wins theace Bitcoin uses the Pow algorithmPos(Proof of stakes a common alternative of powere
the validators are chosen basedon the fraction of coins they own in the system The nodes with more numberof coins have more chance to be selected than the node with lesser numbePos the rewardle form of transaction fee new coins arenot created for paying the validators Presently, Blackcoin, NXT and Peercoinblockchains uses the Pos algorithm Ethereum is also planning to shift to thismethod by 2018Proof of ActivityPoa is a hybrid approach andtroduced to overcome some of the problemsin Pos and PowIn this method, the mining begins with Pow and at someswitched Pos Presently, Decred' is the only coin that isctivity
Proof of Elapsed Timen this method, the network uses a lottery functions for implementing consensus Alottery algorithm is used for finding the leaders from a set of nodes So the validatorsare selected randomly from the pool Hyperledger Sawtooth blockchain usesPoEt methodProof of burnsending their coins to an irretrievable location(thus the name burn) The validatorsare selected randomly, but those who has more stakehighprobability to get selected Over the time the earned stake decays and thenodes has to burn more currency to increase their stake
The only coin thatuses proof of burn mechanism is slimcoinAt this stage we can't say which method is more efficient Each method has itsown advantages and disadvantages Many oththods are also being introduced to attain maximum productivity on a blockchaiBlockchain so faritially, it was about Bitcoin; following the trend, many other cryptocurrenciesalso came into the market while some of them found thrtune some othelcryptocurrencies lagged behind However, soon the blockchain technology foundandadndustry, Enterprise software development, financial domains like Banking, Insuranceand so on;
today the blockchain is drastically changing existingks ofAccordingprominent statistics websthe blockchain market is expected to grow $20 billion by 2024Banking and paymentsAll the banking and payment systems are now moving towards blockBitcoin-like cryptencies can control the payment systems without anygeopolitical restrictions ABRA is an example of bitcoin-based remittanceable of contentSectionAn Introduction to blockchainCryptocurrencyBtherem★ Digital TokensSectionMetaMask★Mismuffle★ Embarkyperledger Fabricyperledger Sawtooth★Ceo★★★ydra chain★ Cordaain coreCoCo Framework★ Bigchain DE
About the publisherCybrosys is a well-established Iso Certified software development companyhich provides qualityover the world erP solutions being our corearea of work, we are also into Source code sale, Custom software developmentand Employee outsourcing We serve our widespread customers around theglobe via our offices located in London, Bangalore, Kochi, and Calicut
Our partnershipwith technology leaders like Microsoft, Sun, IBM, Symantec, and Odoo assist usto thrive to the best of industry standards We always kept abreast with changingto deliver the bestand developments are being corR&d labking promising progbackedDApp and TokesSIonDevelop most reliable cost effectivesoftware based on innovation and creativity We believe in consistencycommitment and most ofwe value our exiscustomers and continued customer satisfactionCYBROSYSBLOCKCHAINEXPERTIE
CEOs MessageBe updated, before you get outdateds been a loablished cybiof growth and decline during the voyage But we endured everything, and herewe are, as one of the fast-growing players, constantly striving to be better It isalways been the crew, their perseverance, and efforts, that lead us forward Andwe never gave up on our mission, in fact, our mission steered our drive
We alwaysventured beyond the boundaries and explored the latealways filledwith the advanced and blockchain is the latest in thea book like this is indeed a need of the hour it is an aspiration of our researchteam: comprehending all the basics of blockchatho wish to start with blockchain Despite their tight R&D schedules, they havemade incredible efforts to accomplish this work In this occasion, I would like toexpress my sincere gratitude to all the team members who worked behind thiswork AndSainul abideenCEO, Cybrosys Technologies
Prefaceany people use the term Blockchain Technology' to mention differentings Sometimes they may be talking about Bitcoin, sometimes it's about thecryptocurrencies or digital tokens, sometimes it is about Ethereum Blockchainmay be about the smart contracts The fact is that often the term ' Blockchain is used inappropriately by many people, consequently, not only the wordBlockchain Technology' but also the whole terms and terminologies related tobecame confusing for many However, all these usages have a common threadwhich is the distributed ledger technology underlying it
In distributed ledger technology the transactions are copied and stored across individual computers onhe network rather than storing on a central serverEven though the Blockchain technology has grown faster than expected; theexact information regarding it hardly touched the common developers and technoenthusiasts Many blogs and dedicated websites are also coming to explain theentire technology and surrounding developments But it seems like that, lackof a comprehensive guide which acquaints, compare and contrast the overlappedterms and termins related wto blockchthis contextthe Cybrosys technologies has decided to come up with a comprehensive guidewhich covers all the basics of Blockchain Technology as well as populartechnologies and terminologies related toho wisstart withWe tried our best to organize the topics in a way that both developers andechno enthusiast can go through it and understand the topics without any effortBremember that this guide does not include everything you may possiblycome across while dealing with blockchain rathea starter pack Usehis as a starting point to further explore and expand your knowledge basehe Blockchain technology
ntroductionBlockchain- Despite the inherent ' Blockit the name has traversed moremiles than any other technical term in the recent pastechoingall existing IT infrastructures; posing a potential threat to the very existence ofe present establishments The blockchain is said to be the technology oplify the thho wish tounderstand the technology As we indicated in the preface, the book is meantfor anyone who wishes to start with blockchain technologyWe have organized the book into two major sections, while the first sectionprovides the basics of Blockchain and related terminologies, the second sectionis purely dedicated to different tools and technologies that emerged along withblockast section is further divided into six major topics Blockchain, CryptocurrencyBitcoin, Ethereum, Hyperledger and Tokens which covers all the basic ingredientsh the blockchtechnoart which is abeblockchain, we have discussed what blockchain, its working principles, thedevelopments, the techmplementations, its application areas and thepossible future of Blockchain The second topic is about Cryptocurrencies, whichtopic that must be learned before going deep into the famousblockchain protocol Bitcoin
a general overview of cryptocurrencies as well astheir working principles is discussed here The third topic is about the mostand its background, bitcoin working, bitcoin mining the value of bitcoin etc Inhe next topic whiabout ethereum we have included the deanotherpopular blockchain platform Ethereum The reader will get an overview of thesecond most popular blockchain platform from this sectiongies like the smart contract, Solidity, DAppEtherscripter Ether etc are also simplified here the fifth topic is about the
ambitious open source project Hyperledger The project, its objectives, and theproducts that have developed under the project etc are discussed in this sectionWe have alsoincluded a comparative study of all of these technologies to give abetter understanding The final topic is exclusively dedicated to -Tokens, whichis a thriving application area of blockchain technology
Second section of this book doesn 't need mucltheopics in the second section is more or less independent The section providesformation about different blockchain related tools like wallets, Programminglanguages and IDES, Blockchain platforms and development frameworkssimplify the things further we have tried to include images, infographics, tipsand quick into bars wherever possible Moreover, most of the terms and termixplained in the beginning of the book Make use of althese extra information provided while going through the book and have a goodreaderms and TerminologiesSome of the terms and terminologies you may encounter while going throughhis book is described hereUse it as a quick referenceBlockBlock is used to store the transaction along with their hash value and dataransactionAny state change occurred in a blockchainSmart contractself executing contract with terms and conditions written in lines of codesBlockchain ledger is used to record the transactions in a blockchain
okenDigital assetCryptoDigital assetBitcoinMost popular cryptocurrencyashThe encrypted value of the data in the blockSHA256ashing algorithmNodeEach computer connected to the blockchain networkSolidityProgramming language for writing smart contracts in EthereumyperledgerBlockchain platformEthereumblockchain platformBaasBlockchain as a serviceERC20therem token standardCOnitial coin offeringDAppDecentralized applications· nternet of things
kProof of stakeThe validation process in a blockchain (in Bitcoin and Ethereum)nerThe nodes which perform miningWalletsgital wallet to store, send and receive cryptocurrencies and other digitalassetsestnetst blockchain networksByzantine fault tolerance principleBIPBitcoin improvement proposalGenesis blockFirst block in the blockchainomposeblockchain development framework in hyperledger fablParticipantsThose who have an account in the blockchain and performing any transactionsPeer2Peer(P2P)Decentralized network architecture
There is no dedicated server in this caseConsensusGeneral agreement between the participants in the blockchai