Submit Search
Part 2 Blockchain Programming Using Python.pdf
0 likes
16 views
Jyoti Yadav
Simple Blockchain working using Python
Education
Read more
1 of 12
1
2
3
4
5
6
7
8
9
10
11
12
More Related Content
PPTX
Lecture 17 (Blockchain Implementation using Python).pptx
MayankAgarwal65451
PPTX
Blockchain - a simple implementation
Commit Software Sh.p.k.
PDF
BlockChain implementation by python
wonyong hwang
PPTX
Let's Build A Blockchain... in 40 minutes!
Michel Schudel
PDF
A Comprehensive Guide To Create Blockchain In Python | Blockchain Development...
Mariya James
PPTX
Blockchain
Scott Turner
PDF
Scalaで実装してみる簡易ブロックチェーン
Hiroshi Ito
PDF
BDD - Behavior Driven Development Webapps mit Groovy Spock und Geb
Christian Baranowski
Lecture 17 (Blockchain Implementation using Python).pptx
MayankAgarwal65451
Blockchain - a simple implementation
Commit Software Sh.p.k.
BlockChain implementation by python
wonyong hwang
Let's Build A Blockchain... in 40 minutes!
Michel Schudel
A Comprehensive Guide To Create Blockchain In Python | Blockchain Development...
Mariya James
Blockchain
Scott Turner
Scalaで実装してみる簡易ブロックチェーン
Hiroshi Ito
BDD - Behavior Driven Development Webapps mit Groovy Spock und Geb
Christian Baranowski
Similar to Part 2 Blockchain Programming Using Python.pdf
(12)
PPTX
Michel Schudel - Let's build a blockchain... in 40 minutes! - Codemotion Amst...
Codemotion
PPTX
Let's build a blockchain.... in 40 minutes!
Michel Schudel
PDF
Node.js extensions in C++
Kenneth Geisshirt
PDF
Blockchain: Developer's Perspective (Java Edition)
Artur Skowroński
PPTX
Project_Setup_and_Implementation_that helps in smart contract.pptx
JackOchieng3
PDF
Spock: Test Well and Prosper
Ken Kousen
PPTX
Play + scala + reactive mongo
Max Kremer
PDF
Cracking JWT tokens: a tale of magic, Node.JS and parallel computing - Node.j...
Luciano Mammino
PDF
The Ring programming language version 1.5.1 book - Part 36 of 180
Mahmoud Samir Fayed
PDF
Python concurrency: libraries overview
Andrii Mishkovskyi
PDF
The Ring programming language version 1.5.2 book - Part 37 of 181
Mahmoud Samir Fayed
PDF
The Ring programming language version 1.9 book - Part 46 of 210
Mahmoud Samir Fayed
Michel Schudel - Let's build a blockchain... in 40 minutes! - Codemotion Amst...
Codemotion
Let's build a blockchain.... in 40 minutes!
Michel Schudel
Node.js extensions in C++
Kenneth Geisshirt
Blockchain: Developer's Perspective (Java Edition)
Artur Skowroński
Project_Setup_and_Implementation_that helps in smart contract.pptx
JackOchieng3
Spock: Test Well and Prosper
Ken Kousen
Play + scala + reactive mongo
Max Kremer
Cracking JWT tokens: a tale of magic, Node.JS and parallel computing - Node.j...
Luciano Mammino
The Ring programming language version 1.5.1 book - Part 36 of 180
Mahmoud Samir Fayed
Python concurrency: libraries overview
Andrii Mishkovskyi
The Ring programming language version 1.5.2 book - Part 37 of 181
Mahmoud Samir Fayed
The Ring programming language version 1.9 book - Part 46 of 210
Mahmoud Samir Fayed
Ad
More from Jyoti Yadav
(19)
PDF
Part 4: Understanding the working of Smart Contracts
Jyoti Yadav
PDF
Part 3 Introduction to Cryptocurrency.pdf
Jyoti Yadav
PDF
Part 1: Introduction to Blockchain Fundamentals
Jyoti Yadav
PDF
Natural Language Processing Algorithm...
Jyoti Yadav
PDF
5. Types of Clustering Algorithms in ML.pdf
Jyoti Yadav
PDF
8. Deep Learning.pdf
Jyoti Yadav
PDF
7. Reinforcement Learning.pdf
Jyoti Yadav
PDF
6. Association Rule.pdf
Jyoti Yadav
PDF
4. Classification.pdf
Jyoti Yadav
PDF
3. Regression.pdf
Jyoti Yadav
PDF
2. Data Preprocessing.pdf
Jyoti Yadav
PDF
1. Demystifying ML.pdf
Jyoti Yadav
PDF
6. Web Publishing
Jyoti Yadav
PDF
5. Web Technology CSS Advanced
Jyoti Yadav
PDF
4. Web Technology CSS Basics-1
Jyoti Yadav
PDF
3. Web Technology Advanced HTML
Jyoti Yadav
PDF
2b. Web Technology HTML Basics-2
Jyoti Yadav
PDF
2a web technology html basics 1
Jyoti Yadav
PDF
1. web technology basics
Jyoti Yadav
Part 4: Understanding the working of Smart Contracts
Jyoti Yadav
Part 3 Introduction to Cryptocurrency.pdf
Jyoti Yadav
Part 1: Introduction to Blockchain Fundamentals
Jyoti Yadav
Natural Language Processing Algorithm...
Jyoti Yadav
5. Types of Clustering Algorithms in ML.pdf
Jyoti Yadav
8. Deep Learning.pdf
Jyoti Yadav
7. Reinforcement Learning.pdf
Jyoti Yadav
6. Association Rule.pdf
Jyoti Yadav
4. Classification.pdf
Jyoti Yadav
3. Regression.pdf
Jyoti Yadav
2. Data Preprocessing.pdf
Jyoti Yadav
1. Demystifying ML.pdf
Jyoti Yadav
6. Web Publishing
Jyoti Yadav
5. Web Technology CSS Advanced
Jyoti Yadav
4. Web Technology CSS Basics-1
Jyoti Yadav
3. Web Technology Advanced HTML
Jyoti Yadav
2b. Web Technology HTML Basics-2
Jyoti Yadav
2a web technology html basics 1
Jyoti Yadav
1. web technology basics
Jyoti Yadav
Ad
Recently uploaded
(20)
PDF
Computing-Curriculum for Schools in Ghana
abigailanane203
PPTX
Introduction_to_Human_Anatomy_and_Physiology_for_B.Pharm.pptx
chetansingh379583
PPTX
master seminar digital applications in india
ananyaray35
PPTX
GDM (1) (1).pptx small presentation for students
shrawanbpkihs
PDF
Classroom Observation Tools for Teachers
Nicaramirez
PDF
Anesthesia in Laparoscopic Surgery in India
mohitsuren827
PDF
grade 11-chemistry_fetena_net_5883.pdf teacher guide for all student
banteamlakmebratu738
PDF
Microbial disease of the cardiovascular and lymphatic systems
KeyaSharma
PDF
Physiotherapy_for_Respiratory_and_Cardiac_Problems WEBBER.pdf
DrMONISHAphysio
PPTX
PPT- ENG7_QUARTER1_LESSON1_WEEK1. IMAGERY -DESCRIPTIONS pptx.pptx
KMDee
PDF
Abdominal Access Techniques with Prof. Dr. R K Mishra
mohitsuren827
PDF
STATICS OF THE RIGID BODIES Hibbelers.pdf
pascualasturiaskaye4
PPTX
Final Presentation General Medicine 03-08-2024.pptx
ZaheerAhmad228692
PDF
Black Hat USA 2025 - Micro ICS Summit - ICS/OT Threat Landscape
Chris Sistrunk
PDF
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
HakHe
PDF
VCE English Exam - Section C Student Revision Booklet
jpinnuck
PPTX
IMMUNITY IMMUNITY refers to protection against infection, and the immune syst...
shilpa939953
PDF
Insiders guide to clinical Medicine.pdf
AbhishekPatil315128
PPTX
Lesson notes of climatology university.
sgladness67
PPTX
Cell Structure & Organelles in detailed.
DHANASHREESIVAKUMAR
Computing-Curriculum for Schools in Ghana
abigailanane203
Introduction_to_Human_Anatomy_and_Physiology_for_B.Pharm.pptx
chetansingh379583
master seminar digital applications in india
ananyaray35
GDM (1) (1).pptx small presentation for students
shrawanbpkihs
Classroom Observation Tools for Teachers
Nicaramirez
Anesthesia in Laparoscopic Surgery in India
mohitsuren827
grade 11-chemistry_fetena_net_5883.pdf teacher guide for all student
banteamlakmebratu738
Microbial disease of the cardiovascular and lymphatic systems
KeyaSharma
Physiotherapy_for_Respiratory_and_Cardiac_Problems WEBBER.pdf
DrMONISHAphysio
PPT- ENG7_QUARTER1_LESSON1_WEEK1. IMAGERY -DESCRIPTIONS pptx.pptx
KMDee
Abdominal Access Techniques with Prof. Dr. R K Mishra
mohitsuren827
STATICS OF THE RIGID BODIES Hibbelers.pdf
pascualasturiaskaye4
Final Presentation General Medicine 03-08-2024.pptx
ZaheerAhmad228692
Black Hat USA 2025 - Micro ICS Summit - ICS/OT Threat Landscape
Chris Sistrunk
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
HakHe
VCE English Exam - Section C Student Revision Booklet
jpinnuck
IMMUNITY IMMUNITY refers to protection against infection, and the immune syst...
shilpa939953
Insiders guide to clinical Medicine.pdf
AbhishekPatil315128
Lesson notes of climatology university.
sgladness67
Cell Structure & Organelles in detailed.
DHANASHREESIVAKUMAR
Part 2 Blockchain Programming Using Python.pdf
1.
BLOCKCHAIN PROGRAMMING 1
2.
Introduction 2
3.
Importing the Libraries import
datetime import hashlib import json from flask import Flask, jsonify 3
4.
#Part 1: Building
a Blockchain class Blockchain: def __init__(self): self.chain = [ ] self.create_block(proof = 1, previous_hash = '0') def create_block(self, proof, previous_hash): block = {'index': len(self.chain) + 1, 'timestamp': str(datetime.datetime.now()), 'proof': proof, 'previous_hash': previous_hash} self.chain.append(block) return block 4
5.
#Part 1: Building
a Blockchain def create_block(self, proof, previous_hash): block = {'index': len(self.chain) + 1, 'timestamp': str(datetime.datetime.now()), 'proof': proof, 'previous_hash': previous_hash} self.chain.append(block) return block 5
6.
Introduction 6
7.
Introduction 7 def hash(self, block): encoded_block
= json.dumps(block, sort_keys = True).encode() return hashlib.sha256(encoded_block).hexdigest()
8.
8 def is_chain_valid(self,
chain): previous_block = chain[0] block_index = 1 while block_index < len(chain): block = chain[block_index] if block['previous_hash'] != self.hash(previous_block): return False previous_proof = previous_block['proof'] proof = block['proof'] hash_operation = hashlib.sha256(str(proof**2 previous_proof**2).encode()).hexdigest() if hash_operation[:4] != '0000': return False previous_block = block block_index += 1 return True
9.
9 # Part 2
- Mining our Blockchain # Creating a Web App app = Flask(__name__) app.config['JSONIFY_PRETTYPRINT_REGULAR'] = False # Creating a Blockchain blockchain = Blockchain() from flask import Flask app = Flask(__name__) @app.route ('/’) def hello_world(): return 'Hello, World!' A minimal Flask application looks something like this:
10.
10 # Mining a
new block @app.route('/mine_block', methods = ['GET']) def mine_block(): previous_block = blockchain.get_previous_block() previous_proof = previous_block['proof'] proof = blockchain.proof_of_work(previous_proof) previous_hash = blockchain.hash(previous_block) block = blockchain.create_block(proof, previous_hash) response = {'message': 'Congratulations, you just mined a block!', 'index': block['index'], 'timestamp': block['timestamp'], 'proof': block['proof'], 'previous_hash': block['previous_hash']} return jsonify(response), 200 # HTTP code 200 is for success , OK
11.
11 # Getting the
full Blockchain @app.route('/get_chain', methods = ['GET']) def get_chain(): response = {'chain': blockchain.chain, 'length': len(blockchain.chain)} return jsonify(response), 200 # Checking if the Blockchain is valid @app.route('/is_valid', methods = ['GET']) def is_valid(): is_valid = blockchain.is_chain_valid(blockchain.chain) if is_valid: response = {'message': 'All good. The Blockchain is valid.'} else: response = {'message’: ‘The Blockchain is not valid.'} return jsonify(response), 200
12.
12 # Running the
app app.run(host = ‘0.0.0.0’, port = 5000)