Blockchain Programming
Blockchain promises to become a dominant technology in financial and other transactions, whether cryptocurrencies thrive or die. This module will also give you a practical and theoretical knowledge of security issues with blockchains, where blockchains come from, how to analyse competing notions for blockchains (i.e. proof of stake vs proof of work and Bitcoin vs Ethereum), and what applications there are in the future.
You’ll learn about digital signatures, hashing and proof-of-work mining. We’ll design and build a scheme for decentralized consensus including communicating over TCP/IP sockets. Bring your basic knowledge of Python, and you’ll emerge on the other side with a grasp of cryptocurrencies better than 99% of your peers and with a working prototype you can build on.
Course Key Learnings
-
Build a cryptocoin from scratch using Python
-
Digitally sign messages and verify signatures
-
Design and build a tamper-proof blockchain to store any kind of data
-
Secure your blockchain with a proof-of-work requirement
-
Open sockets to communicate transactions and block with peers
Course Outline
Introduction to Python Basis
- Python Basics: Functions, Loops, If Statements and Modules
- Python Basics: Classes
- Python Basics: Inheritance
- Python Basics: Catching Errors with Try/Except
Digital Signatures
- Signatures for Crypto currencies
- Digital Signatures
- Test Driven Development
- Installing Modules with PIP
- String by Bytes
Block Chain
-
Hash functions
-
Crytographic hashins
-
Computing hash functions with Python
-
Block Chain
-
Assignment: Blockchain for general dat
-
Solution
Transactions
-
Transactions
-
Multiple output addresses
-
Multi-signature transactions
-
Transactions
-
Assignment: Transaction class Part 1
-
Assignment: Transaction class Part 2
-
Solution: Part 1
-
Solution: Part 2
Blockchain Based Transactions Ledger
-
Securing a public transactions ledger
-
Assignment 1: Save and restore with pickle
-
Assignment 1: Solution
-
Assignment 2: The TxBlock class
Mining And Proof of Work
-
Decentralization
-
The Dark Side of Decentralization
-
Proof-of-Work
-
Proof-of-Work Quiz
-
Assignment 1: Mining rewards
-
Assignment 1: Solution
-
Assignment 2: Nonce requirement
-
Additional Python tips and tricks
-
Assignment 2: Solution
Communication With Peers
- Non-blocking server
-
Client-server code along
- Pickling data for communication
- Finishing up client-server
- Miner and Wallet
- Building a socket communication utility
- Assignment: Build a Miner
- Solution
- Placing the new block
Multi-Threading
-
Basic Threading
-
Assignment 1: Test Miner Using Threads
-
Assignment 1: Solution
-
Assignment 2: Wallet client and server
-
Assignment 2: Solution
-
Coding Best Practices
-
Assignment 3: Saving and Restoring Keys
-
Assignment 3: Solution
-
Save and Restore Blocks and Transactions
Requirements
-
Beginning knowledge of any programming language
-
Python 3.x
-
A text editor
Who this course is for:
- Programmers of all skill levels who want to learn cryptocurrencies from the inside
- Crypto-junkies who want to learn some programming
Your FREE eLEARNING Courses (Click Here)
International Student Fee: 500 USD
Flexible Class Options
- Evening Classes | Workshops | Fast-Track
- Week End Classes For Professionals SAT | SUN
- Online Classes – Live Virtual Class (L.V.C), Online Training
Job Opportunities in Blockchain
Job Interview Questions
- Blockchain Jon Interview Question
- Blockchain Interview Question Answer
- Blockchain Interview Question
- Top 29 Blockchain Interview Question
- Blockchain Interview Question
- Blockchain Interview Question with Ans
- Promising Blockchain Projects
- top Promising Blockchain Projects
- Top 17 Blockchain Interview Question
- 34 Blockchain Application, use cases
- Growing List of Blockchain Applications
- Blockchain Projects
Related Courses
Bitcoin, Blockchain, Crypto currencies Diploma Course
Internet of Things (IOT) Programming
License Penetration Tester Certification