Python Blockchain - Blockklasse

Ein Block besteht aus einer unterschiedlichen Anzahl von Transaktionen. In unserem Fall nehmen wir der Einfachheit halber an, dass der Block aus einer festen Anzahl von Transaktionen besteht, in diesem Fall drei. Da der Block die Liste dieser drei Transaktionen speichern muss, deklarieren wir eine Instanzvariable mit dem Namenverified_transactions wie folgt -

self.verified_transactions = []

Wir haben diese Variable als benannt verified_transactionsum anzuzeigen, dass nur die verifizierten gültigen Transaktionen zum Block hinzugefügt werden. Jeder Block enthält auch den Hashwert des vorherigen Blocks, sodass die Blockkette unveränderlich wird.

Um den vorherigen Hash zu speichern, deklarieren wir eine Instanzvariable wie folgt:

self.previous_block_hash = ""

Schließlich deklarieren wir eine weitere Variable namens Nonce zum Speichern der vom Bergmann während des Bergbauprozesses erstellten Nonce.

self.Nonce = ""

Die vollständige Definition der Block Klasse ist unten angegeben -

class Block:
   def __init__(self):
      self.verified_transactions = []
      self.previous_block_hash = ""
      self.Nonce = ""

Da jeder Block den Wert des Hash des vorherigen Blocks benötigt, deklarieren wir eine globale Variable namens last_block_hash wie folgt -

last_block_hash = ""

Lassen Sie uns nun unseren ersten Block in der Blockchain erstellen.