Book Image

Learn Blockchain Programming with JavaScript

By : Eric Traub
Book Image

Learn Blockchain Programming with JavaScript

By: Eric Traub

Overview of this book

Learn Blockchain Programming with JavaScript begins by giving you a clear understanding of what blockchain technology is. You’ll then set up an environment to build your very own blockchain and you’ll add various functionalities to it. By adding functionalities to your blockchain such as the ability to mine new blocks, create transactions, and secure your blockchain through a proof-of-work you’ll gain an in-depth understanding of how blockchain technology functions. As you make your way through the chapters, you’ll learn how to build an API server to interact with your blockchain and how to host your blockchain on a decentralized network. You’ll also build a consensus algorithm and use it to verify data and keep the entire blockchain network synchronized. In the concluding chapters, you’ll finish building your blockchain prototype and gain a thorough understanding of why blockchain technology is so secure and valuable. By the end of this book, you'll understand how decentralized blockchain networks function and why decentralization is such an important feature for securing a blockchain.
Table of Contents (10 chapters)

Understanding the need to synchronize the network

Let's try to understand why the network needs to be synchronized. We currently have a decentralized blockchain network that consists of five nodes. The data across these nodes is not consistent; data on each node might vary, which would lead to the failure of the purpose of having a blockchain. Let's try to understand this situation with the help of an example. Go to Postman and send a sample transaction, as shown in the following screenshot:

Send this transaction to the node that's hosted on localhost:3001 by clicking on the Send button. This transaction will appear in the pendingTransactions array of localhost:3001/blockchain, which you can observe in the following screenshot:

Now, go to any of the other nodes and check for the transactions that were sent. We won't be able to view the transactions in the...