Öffnen Sie die Datei blockchain.py
in Ihrem Code-Editor.
Definieren Sie eine Blockchain
Klasse: Diese Klasse stellt die Blockchain dar und enthält die erforderlichen Methoden zum Verwalten von Blöcken und der Kette selbst.
Python
pythonCopy code
class Blockchain:
def __init__(self):
self.chain = []
Dieser Code definiert eine Blockchain
Klasse mit einer leeren Liste namens chain
zum Speichern der Blöcke.
Implementieren Sie die Methode add_block
: Diese Methode wird verwendet, um Blöcke zur Blockchain hinzuzufügen. Es nimmt ein Blockobjekt als Parameter und hängt es an die Kette an.
Python
pythonCopy code
class Blockchain:
def __init__(self):
self.chain = []
def add_block(self, block):
self.chain.append(block)
Dieser Code fügt der Blockchain
Klasse die Methode add_block
hinzu.
Testen Sie das Hinzufügen von Blöcken zur Blockchain: Erstellen Sie im Hauptteil Ihres Codes nach der Klassendefinition eine neue Instanz der Blockchain
Klasse. Erstellen Sie dann ein neues Blockobjekt und fügen Sie es mithilfe der Methode add_block
zur Blockchain hinzu.
„
Python
PythonCode kopieren
Blockchain = Blockchain()
new_block = Block(1, datetime.datetime.now(), „Beispieldaten“, „ previous_hash“, 0)
Blockchain.add_block(new_block)
Dieser Code erstellt eine neue Instanz der Klasse „Blockchain“, erstellt ein neues Blockobjekt mit einigen Beispieldaten und fügt es mithilfe der Methode „add_block“ zur Blockchain hinzu.
## 2.3 Validierung der Blockchain
1.
Implementieren Sie die Methode „is_valid“: Diese Methode wird verwendet, um die Integrität der Blockchain zu validieren. Es durchläuft jeden Block in der Kette und überprüft, ob der Hash jedes Blocks mit dem Hash des vorherigen Blocks übereinstimmt.
Python
PythonCode kopieren
Klasse Blockchain:
def init(selbst):
self.chain = []
def add_block(self, block):
self.chain.append(block)
def is_valid(self):
für i in range(1, len(self.chain)):
current_block = self.chain[i]
previous_block = self.chain[i - 1]
if current_block. previous_hash != previous_block.hash():
return Falsereturn True
Dieser Code fügt die Methode „is_valid“ zur Klasse „Blockchain“ hinzu.
1.
Testen Sie die Blockchain-Validierung: Rufen Sie nach dem Hinzufügen von Blöcken zur Blockchain die Methode „is_valid“ auf, um zu überprüfen, ob die Blockchain gültig ist.
Python
PythonCode kopieren
print("Blockchain ist gültig.")
anders:
print(“Blockchain ist ungültig.”)
Dieser Code validiert die Blockchain durch Aufrufen der Methode „is_valid“ und gibt basierend auf dem Ergebnis eine entsprechende Meldung aus.
## 2.4 Testen der Blockchain
1.
Weitere Blöcke zur Blockchain hinzufügen: Erstellen Sie zusätzliche Blöcke mit unterschiedlichen Daten und vorherigen Hashes und fügen Sie sie mit der Methode „add_block“ zur Blockchain hinzu.
Python
pythonCode kopieren
#Mehr Blöcke erstellen
block2 = Block(2, datetime.datetime.now(), „Mehr Daten“, new_block.hash(), 0)
Block3 = Block(3, datetime.datetime.now(), „Noch mehr Daten“, block2.hash(), 0)
#Blöcke zur Blockchain hinzufügen
Blockchain.add_block(block2)
Blockchain.add_block(block3)
Dieser Code erstellt zwei zusätzliche Blöcke und fügt sie der Blockchain hinzu.
1.
Testen Sie die Blockchain-Validierung erneut: Rufen Sie nach dem Hinzufügen der neuen Blöcke die Methode „is_valid“ auf, um die Gültigkeit der Blockchain zu überprüfen.
Python
pythonCopy code
# Validieren Sie die Blockchain, wenn Blockchain.is_valid():
print("Blockchain ist gültig.")
sonst:
print("Blockchain ist ungültig.")
„
Dieser Code validiert die Blockchain und gibt das Ergebnis aus.
In dieser Lektion haben wir die Struktur unserer Blockchain aufgebaut. Wir haben eine Blockchain
Klasse erstellt und Methoden implementiert, um Blöcke zur Kette hinzuzufügen und ihre Integrität zu überprüfen. Wir haben die Blockchain auch getestet, indem wir Blöcke hinzugefügt und ihre Gültigkeit überprüft haben.
Öffnen Sie die Datei blockchain.py
in Ihrem Code-Editor.
Definieren Sie eine Blockchain
Klasse: Diese Klasse stellt die Blockchain dar und enthält die erforderlichen Methoden zum Verwalten von Blöcken und der Kette selbst.
Python
pythonCopy code
class Blockchain:
def __init__(self):
self.chain = []
Dieser Code definiert eine Blockchain
Klasse mit einer leeren Liste namens chain
zum Speichern der Blöcke.
Implementieren Sie die Methode add_block
: Diese Methode wird verwendet, um Blöcke zur Blockchain hinzuzufügen. Es nimmt ein Blockobjekt als Parameter und hängt es an die Kette an.
Python
pythonCopy code
class Blockchain:
def __init__(self):
self.chain = []
def add_block(self, block):
self.chain.append(block)
Dieser Code fügt der Blockchain
Klasse die Methode add_block
hinzu.
Testen Sie das Hinzufügen von Blöcken zur Blockchain: Erstellen Sie im Hauptteil Ihres Codes nach der Klassendefinition eine neue Instanz der Blockchain
Klasse. Erstellen Sie dann ein neues Blockobjekt und fügen Sie es mithilfe der Methode add_block
zur Blockchain hinzu.
„
Python
PythonCode kopieren
Blockchain = Blockchain()
new_block = Block(1, datetime.datetime.now(), „Beispieldaten“, „ previous_hash“, 0)
Blockchain.add_block(new_block)
Dieser Code erstellt eine neue Instanz der Klasse „Blockchain“, erstellt ein neues Blockobjekt mit einigen Beispieldaten und fügt es mithilfe der Methode „add_block“ zur Blockchain hinzu.
## 2.3 Validierung der Blockchain
1.
Implementieren Sie die Methode „is_valid“: Diese Methode wird verwendet, um die Integrität der Blockchain zu validieren. Es durchläuft jeden Block in der Kette und überprüft, ob der Hash jedes Blocks mit dem Hash des vorherigen Blocks übereinstimmt.
Python
PythonCode kopieren
Klasse Blockchain:
def init(selbst):
self.chain = []
def add_block(self, block):
self.chain.append(block)
def is_valid(self):
für i in range(1, len(self.chain)):
current_block = self.chain[i]
previous_block = self.chain[i - 1]
if current_block. previous_hash != previous_block.hash():
return Falsereturn True
Dieser Code fügt die Methode „is_valid“ zur Klasse „Blockchain“ hinzu.
1.
Testen Sie die Blockchain-Validierung: Rufen Sie nach dem Hinzufügen von Blöcken zur Blockchain die Methode „is_valid“ auf, um zu überprüfen, ob die Blockchain gültig ist.
Python
PythonCode kopieren
print("Blockchain ist gültig.")
anders:
print(“Blockchain ist ungültig.”)
Dieser Code validiert die Blockchain durch Aufrufen der Methode „is_valid“ und gibt basierend auf dem Ergebnis eine entsprechende Meldung aus.
## 2.4 Testen der Blockchain
1.
Weitere Blöcke zur Blockchain hinzufügen: Erstellen Sie zusätzliche Blöcke mit unterschiedlichen Daten und vorherigen Hashes und fügen Sie sie mit der Methode „add_block“ zur Blockchain hinzu.
Python
pythonCode kopieren
#Mehr Blöcke erstellen
block2 = Block(2, datetime.datetime.now(), „Mehr Daten“, new_block.hash(), 0)
Block3 = Block(3, datetime.datetime.now(), „Noch mehr Daten“, block2.hash(), 0)
#Blöcke zur Blockchain hinzufügen
Blockchain.add_block(block2)
Blockchain.add_block(block3)
Dieser Code erstellt zwei zusätzliche Blöcke und fügt sie der Blockchain hinzu.
1.
Testen Sie die Blockchain-Validierung erneut: Rufen Sie nach dem Hinzufügen der neuen Blöcke die Methode „is_valid“ auf, um die Gültigkeit der Blockchain zu überprüfen.
Python
pythonCopy code
# Validieren Sie die Blockchain, wenn Blockchain.is_valid():
print("Blockchain ist gültig.")
sonst:
print("Blockchain ist ungültig.")
„
Dieser Code validiert die Blockchain und gibt das Ergebnis aus.
In dieser Lektion haben wir die Struktur unserer Blockchain aufgebaut. Wir haben eine Blockchain
Klasse erstellt und Methoden implementiert, um Blöcke zur Kette hinzuzufügen und ihre Integrität zu überprüfen. Wir haben die Blockchain auch getestet, indem wir Blöcke hinzugefügt und ihre Gültigkeit überprüft haben.