Build A Blockchain Cryptocurrency Using Python

Discover the engineering ideas behind the blockchain technology & build your own blockchain-based bitcoin network

Last updated 2022-01-10 | 4.7

- Students will build their own blockchain from scratch
- Students can practice their Python development skills to build a real-world exciting project
- Students will learn how blockchain technology exactly works

What you'll learn

Students will build their own blockchain from scratch
Students can practice their Python development skills to build a real-world exciting project
Students will learn how blockchain technology exactly works

* Requirements

* Basic understanding of Python
* JavaScript
* CSS and HTML
* Curiosity and desire to know about blockchain :)

Description

Want to learn about blockchain and cryptocurrency by building your own blockchain?

Want to practice your Python development skills by building an exciting project?  => This course is for you!


Why to Learn Blockchain?

Blockchain developers are in short supply and hot demand. The job of developing blockchain distributed ledgers for businesses was recently ranked first among the top 20 fastest-growing job skills. I believe that the fastest and easiest way to be involved in this fascinating new field is to get enough knowledge and understanding of the basic concepts and then just immediately jump to the implementation and get your hands wet. That way you will be more confident in going deeper in understanding the blockchain technology and its potentials in developing the next generation decentralised applications.


Who's teaching you?

I am a software development engineer with a passion for 'doing things better'. I enjoy setting high standards, constantly learning new things, and sharing that knowledge with others. I have mastered explaining very complex topics in a simple manner that is very understandable. Currently I am a lecturer and researcher in the university. The blockchain technology is one of my main research areas of interest and I am super excited to share my knowledge with you.


What's in the course?

Great question! Basically the course is divided in two parts:

In the first part we are going to explore the blockchain technology and its underlying components:

  • What is a Blockchain?

  • Hash Cryptography (SHA256)

  • Immutable Ledger

  • Distributed P2P Network

  • How Mining Works

  • Consensus Protocol

In the second part we are going to actually build a blockchain and simulate the behaviour of bitcoin network by creating different nodes and different clients sending their transactions to the network:

  • Create the core Blockchain

  • Build an API around the Blockchain

  • Create a P2P network of nodes

  • Implement a Proof-of-Work system

  • Create a transaction system for a cryptocurrency

  • Create a nice Web interface


What are the course prerequisites?

- Basic understanding of Python, JavaScript, CSS and HTML

- Curiosity and desire to know about blockchain :)


Is this course for you?

It's for you if ...

- You're interested in Blockchain, the technology that underpins bitcoin, and you want to learn its core internals in order to be involved in this new promising and fast-growing technology.

- You want to practise your Python development skills.

- You want to broaden your horizon. Want to learn something new? Here you go!


Does that sound good to you? I'd be honoured to welcome you in this course! :-)

Who this course is for:

  • Curious students or Python developers about blockchain and cryptocurrencies

Course content

2 sections • 41 lectures

Introduction Preview 06:06

Credit Note Preview 00:15

What is Blockchain? Preview 08:43

Hash Cryptography (SHA256) Preview 18:02

Immutable Ledger Preview 10:46

Distributed P2P Network Preview 16:39

Introduction to Mining Preview 07:56

How Mining Works Preview 21:32

Consensus Protocol - First Challenge Preview 16:01

Consensus Protocol - Second Challenge Preview 11:37

Blockchain in Action Preview 11:19

Introduction to the Implementation Part Preview 04:17

Demo of the final system Preview 14:42

Environment Setup Preview 04:13

Laying out the Project Structure Preview 17:47

Creating a Block Preview 07:15

Creating the UI to Generate the Wallet - Part 1 Preview 15:36

Creating the UI to Generate the Wallet - Part 2 Preview 10:48

Invoking the "Generate New Wallet" Resource from the UI Preview 08:37

Implementing the New Wallet Functionality Preview 10:47

Building the UI that Allows Users to Make Transactions Preview 19:16

Creating the Resource to Generate a Transaction Preview 11:39

Generating the Signature Preview 11:38

Creating the UI to Confirm the Transaction Details Preview 10:46

Receiving the Transaction by the Node Preview 19:30

Adding a New Transaction in the Node Preview 21:08

Signature Verification - Part 1 Preview 13:15

Signature Verification - Part 2 Preview 08:36

Building the UI to Interact with the Node Preview 12:47

Retrieving the List of Transactions from the Node Preview 16:16

Implementing the Mining Functionality Preview 24:56

Displaying the Mined Transactions Preview 17:36

Implementing the hash Method Preview 07:28

Implementing the Proof-of-Work Preview 14:36

Verifying the Blockchain Preview 14:40

Resolving the Conflict between Nodes Preview 12:44

Configuring the Network Nodes Preview 13:07

Building the UI to add Nodes to the Network Preview 18:52

Finishing off the UI Preview 02:45

Viewing the Transactions Available in the Node Preview 06:29

End-to-End Testing & Conclusion Preview 10:26