Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Build a Blockchain from Zero: Bitcoin and Ethereum clone.
Rating: 4.6 out of 5(59 ratings)
10,366 students

Build a Blockchain from Zero: Bitcoin and Ethereum clone.

Discover the Art of Building Your Own Blockchain that Supports Cryptocurrency and Smart Contracts.
Last updated 6/2024
English

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)

Course content

11 sections80 lectures8h 31m total length
  • Bitcoin Explained in 10 Minutes10:00

    Bitcoin acts as a big public ledger, a decentralized, open-source protocol that lets you own and move a digital asset securely across the globe without permission.

  • Double Spending Issue5:02

    Examine how digital money enables double spending and how a centralized ledger prevents it, while considering central banks' costs and Bitcoin as a potential solution.

  • Bitcoin - Brief History3:34
  • Public Key Cryptography7:03

    Explore public key cryptography, the foundation of Bitcoin security, using public and private keys to enable authentication and message privacy through encryption and digital signatures.

  • Blockchain - Hashing3:08
  • Bitcoin - What is a Block3:55
  • Bitcoin - Proof of Work (High Overview)2:49
  • Centralized vs Decentralized Systems3:16
  • Bitcoin - Mining Process1:47
  • Bitcoin - Chaining Blocks2:06
  • Proof of Work (Nonce Value)3:42

    Explore how proof of work uses a nonce value to regulate block creation. Miners race to compute hashes, seeking a hash with leading zeros to meet a ten-minute target.

  • Resolving Conflicts1:11
  • Transaction Pool (Mempool)5:11

    Learn how bitcoin nodes maintain a memory pool, or mempool, a per-node store of unconfirmed transactions, serving as a waiting room before miners add blocks.

  • Bitcoin Mining (Candidate Block)4:04
  • Bitcoin Mining Process (From Start to Finish)17:48
  • Blockchain - Incentives to Miners (Block Reward + Transaction Fee)3:07
  • Full Nodes vs Light Nodes vs Miner Nodes7:06

    Understand how blockchain stores blocks across full nodes, light nodes, and miners, and why running a full node ensures decentralization, honesty, and independence in the Bitcoin network.

  • How Bitcoin Wallets Work3:02
  • Hot vs Cold Wallet4:10

    Compare hot and cold wallets to balance convenience and security for crypto storage. Hot wallets stay online, while cold wallets keep private keys offline on hardware devices.

  • Quiz !

Requirements

  • Basic Javascript programming skills.
  • Baisc Nodejs skills.

Description

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:


  1. Introduction to blockchain theory, covering decentralization, consensus, and security.

  2. Technical details on how blocks are created and added to a blockchain, and how transactions are validated and processed.

  3. Hands-on activity building a blockchain from scratch in JavaScript.

  4. Understanding of peer-to-peer networks and how they are used to facilitate communication and data transfer in decentralized systems.

  5. Building a simple peer-to-peer network.

  6. Implementing a blockchain application on a peer-to-peer network, with multiple nodes connected and able to perform transactions with one another.

  7. Introduction to smart contracts, with the goal of making our blockchain support them.

  8. Developing smart contracts using a unique programming language.

  9. 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.

Who this course is for:

  • Novice blockchain developers looking to gain hands-on experience in creating their own cryptocurrency.
  • Programmers seeking to enhance their portfolio with a practical and robust blockchain project.
  • Anyone with an interest in learning about blockchain technology, regardless of their background or experience level.
  • Developers who want to create their own blockchain that supports cryptocurrency and smart contracts.