What you'll learn:
- The Basics of Blockchain Technology and How it Works.
- Proof of Work, Hashing and Cryptography.
- The Process of Creating a Blockchain from Scratch.
- Miner Nodes, Full Nodes and Light Nodes.
- How Crytocurrency Work on a Peer-to-Peer Network.
- Mempool, Block Reward and Transaction Fees
- Smart Contract Deployment and Execution
- Runtime Engine and Global State (LevelDB)
Welcome to our course on building a peer-to-peer network based on blockchain technology!
Do you have an interest in understanding the mechanics behind Bitcoin or Ethereum?
In this course, we will start by exploring the theory behind how blockchain works. You will learn about the key principles that underlie this innovative technology, including decentralization, consensus, and security. We will also delve into the technical details of how blocks are created and added to a blockchain, and how transactions are validated and processed.
Next, you will have the opportunity to put your knowledge into practice by building a blockchain from scratch in Javascript. This hands-on activity will give you a deep understanding of how a blockchain functions at a technical level.
Following this, you will learn about peer-to-peer networks and how they are used to facilitate communication and data transfer in decentralized systems. You will also have the chance to build a simple peer-to-peer network as a way of reinforcing your understanding of this important concept.
Then, you will learn how to implement a blockchain application on a peer-to-peer network, where multiple nodes are connected and can perform transactions with one another. This will give you the opportunity to apply your knowledge of blockchain technology and peer-to-peer networks to a real-world scenario.
Our ultimate goal is to make our blockchain support smart contracts. This means that nodes in the network will be able to deploy and execute smart contracts. These contracts will be written in a unique programming language, similar to how Ethereum uses Solidity, and we will have a customized runtime engine for executing these contracts, akin to Ethereum's Ethereum Virtual Machine (EVM).
Outline of the course content:
Introduction to blockchain theory, covering decentralization, consensus, and security.
Technical details on how blocks are created and added to a blockchain, and how transactions are validated and processed.
Hands-on activity building a blockchain from scratch in JavaScript.
Understanding of peer-to-peer networks and how they are used to facilitate communication and data transfer in decentralized systems.
Building a simple peer-to-peer network.
Implementing a blockchain application on a peer-to-peer network, with multiple nodes connected and able to perform transactions with one another.
Introduction to smart contracts, with the goal of making our blockchain support them.
Developing smart contracts using a unique programming language.
Customized runtime engine for executing smart contracts, similar to Ethereum's Ethereum Virtual Machine (EVM).
Overall, this course will provide you with a solid foundation in blockchain technology and give you the skills and knowledge you need to build and implement your own blockchain applications.