This device is not compatible.
You will learn to:
Implement the fundamental concepts and principles of blockchain technology.
Implement the core blockchain components.
Implement the proof of work (PoW) consensus algorithm.
Develop proficiency in Go by implementing a blockchain from scratch.
Skills
Blockchain Development
Blockchain Mining
Prerequisites
Intermediate understanding of Go
Basic understanding of blockchain
Technologies
Go
Blockchain
Project Description
In this project, we will get hands-on experience building a functional blockchain system from scratch using Go. We will explore the core concepts of blockchain, including blocks, hash functions, the proof of work algorithm, and transaction management.
We’ll begin by implementing the block structure and blockchain structures, and learn how hashes are computed and utilized within the blockchain by implementing hash functions. Next, we’ll create blocks, including the Genesis block and blockchain. We’ll implement the proof of work algorithm responsible for mining blocks in the blockchain and also delve into transactions and wallets within the blockchain system, creating a transaction structure that enables the secure and reliable transfer of assets within the blockchain network. Also, we’ll design and implement wallets with associated functions, allowing users to manage their digital assets effectively.
Project Tasks
1
Blockchain Prototype
Task 0: Get Started
Task 1: Create Blocks and Blockchain Structures
Task 2: Compute the Hash of a Block
Task 3: Create a New Block with the Genesis Block
Task 4: Initialize and Add a Block to the Blockchain
Task 5: Test the Blockchain
2
Proof of Work
Task 6: Create and Instantiate the Proof of Work Structure
Task 7: Mine a Block
Task 8: Validate the Proof of Work Algorithm
Task 9: Test the Proof of Work Algorithm
3
Transactions
Task 10: Create the Transaction Structure
Task 11: Add Transactions to the Block
Task 12: Test the Transactions
4
Wallets
Task 13: Add Wallet Functionality
Task 14: Sign and Verify the Transactions
Task 15: Test the Wallets
Congratulations!