Lektion 1

Einrichten der Entwicklungsumgebung

Wir konzentrieren uns auf die Einrichtung der Entwicklungsumgebung für den Aufbau Ihrer eigenen Blockchain mit Python. Wir installieren die notwendigen Tools und Bibliotheken und konfigurieren die Umgebung, um Ihre Blockchain-Entwicklungsreise in Gang zu bringen.

1.1 Python und Bibliotheken installieren

Um zu beginnen, müssen wir Python und die erforderlichen Bibliotheken für die Blockchain-Entwicklung installieren. Folge diesen Schritten:

  1. Python installieren: Besuchen Sie die offizielle Python-Website (python.org) und laden Sie die neueste Version von Python für Ihr Betriebssystem herunter. Python ist für Windows, macOS und Linux verfügbar. Befolgen Sie die bereitgestellten Installationsanweisungen.
  • Stellen Sie für Windows-Benutzer sicher, dass die Option „Python zu PATH hinzufügen“ während des Installationsvorgangs aktiviert ist. Dadurch können Sie Python über die Befehlszeile ausführen.
  1. Richten Sie eine virtuelle Umgebung ein: Eine virtuelle Umgebung hilft dabei, Ihre Projektabhängigkeiten von anderen Python-Projekten auf Ihrem System zu isolieren. Öffnen Sie Ihre Befehlszeilenschnittstelle und erstellen Sie ein neues Verzeichnis für Ihr Blockchain-Projekt. Navigieren Sie mit dem Befehl cd zum Projektverzeichnis. Erstellen Sie im Projektverzeichnis eine neue virtuelle Umgebung mit dem folgenden Befehl:

    Python 
     python -m venv env
    

    Dieser Befehl erstellt eine neue virtuelle Umgebung mit dem Namen „env“ im Projektverzeichnis.

  2. Aktivieren Sie die virtuelle Umgebung: Aktivieren Sie die virtuelle Umgebung mit dem entsprechenden Befehl für Ihr Betriebssystem:

  • Für Windows-Benutzer:
    Python 
     env\Scripts\activate
    
  • Für macOS/Linux-Benutzer:
    Python 
     Quelle env/bin/activate
    
    Durch die Aktivierung der virtuellen Umgebung wird sichergestellt, dass alle von Ihnen installierten Python-Pakete spezifisch für dieses Projekt sind und die globale Python-Installation Ihres Systems nicht beeinträchtigen.
  1. Erforderliche Bibliotheken installieren: Verwenden Sie bei aktivierter virtueller Umgebung den folgenden Befehl, um die erforderlichen Bibliotheken für die Blockchain-Entwicklung zu installieren:
    Python 
     pip install hashlib datetime
    
    Dieser Befehl installiert die hashlib Bibliothek für kryptografische Operationen und die datetime -Bibliothek für Zeitstempel.

1.2 Initialisierung des Projekts

Nachdem wir nun Python und die erforderlichen Bibliotheken installiert haben, initialisieren wir unser Blockchain-Projekt.

  1. Erstellen Sie ein neues Projektverzeichnis: Wählen Sie einen geeigneten Speicherort auf Ihrem Computer für Ihr Projekt und erstellen Sie ein neues Verzeichnis speziell für Ihr Blockchain-Projekt. Sie können dies über die Befehlszeile oder den Datei-Explorer tun.

  2. Navigieren Sie zum Projektverzeichnis: Öffnen Sie Ihre Befehlszeilenschnittstelle und navigieren Sie mit dem Befehl cd zum neu erstellten Projektverzeichnis. Wenn Ihr Projektverzeichnis beispielsweise „blockchain-project“ heißt, würden Sie den folgenden Befehl verwenden:

    Python 
     CD-Blockchain-Projekt
    
  3. Initialisieren Sie ein Git-Repository: Wenn Sie mit Git vertraut sind und Änderungen in Ihrem Projekt verfolgen möchten, können Sie ein neues Git-Repository initialisieren. Verwenden Sie den folgenden Befehl, um das Repository zu initialisieren:

    Python 
     git init
    

    Durch das Initialisieren eines Git-Repositorys wird eine versteckte .git erstellt Verzeichnis in Ihrem Projekt, das Änderungen nachverfolgt und es Ihnen ermöglicht, Versionen Ihres Codes zu verwalten.

  4. Richten Sie die Projektstruktur ein: Erstellen Sie die notwendigen Dateien und Verzeichnisse für Ihr Projekt. Zunächst konzentrieren wir uns auf eine Grundstruktur, die aus einer Haupt-Blockchain-Datei und etwaigen zusätzlichen Hilfsdateien besteht. Erstellen Sie in Ihrem Projektverzeichnis eine neue Datei mit dem Namen blockchain.py .

1.3 Erstellen des Genesis-Blocks

Der Genesis-Block ist der erste Block in der Blockchain. In diesem Schritt definieren wir die Struktur eines Blocks und erstellen den Genesis-Block.

  1. Öffnen Sie die Datei blockchain.py in Ihrem bevorzugten Code-Editor. Hier werden wir unseren Blockchain-Code schreiben.

  2. Definieren Sie die Struktur eines Blocks: Ein Block besteht normalerweise aus Feldern wie Index, Zeitstempel, Daten, vorherigem Hash und einer Nonce. Definieren Sie eine Klasse oder Datenstruktur, die einen Block in Ihrer Blockchain darstellt. Sie können beispielsweise eine Block mit Instanzvariablen für jedes Feld erstellen.

    Python 
     Klassenblock: 
     def __init__(self, index, timestamp, data, previous_hash, nonce): 
     self.index = index 
     self.timestamp = timestamp 
     self.data = data 
     self. previous_hash = previous_hash 
     self.nonce = nonce
    

    Dieser Code definiert eine Block mit den erforderlichen Feldern.

  3. Implementieren Sie die Funktionalität zum Erstellen des Genesis-Blocks: Schreiben Sie Code zum Erstellen des Genesis-Blocks mit geeigneten Standardwerten für jedes Feld. Dieser Block dient als Ausgangspunkt für Ihre Blockchain. Zum Beispiel:

    Python 
     genesis_block = Block(0, datetime.datetime.now(), „Genesis-Block“, „0“, 0)
    

    Dieser Code erstellt eine Instanz der Block Klasse, die den Genesis-Block mit Index 0, dem aktuellen Zeitstempel, „Genesis Block“ als Daten, „0“ als vorherigem Hash (da es keinen vorherigen Block gibt) und einer Nonce von 0 darstellt .

1.4 Netzwerk und Port konfigurieren

In einem Blockchain-Netzwerk kommunizieren Knoten miteinander. In diesem Schritt konfigurieren wir die Netzwerkeinstellungen für Ihre Blockchain.

  1. Definieren Sie die Netzwerkeinstellungen: Legen Sie einen Netzwerknamen oder eine Kennung für Ihre Blockchain fest. Sie können einen beliebigen Namen wählen, der Ihr Blockchain-Projekt repräsentiert. Beispielsweise können Sie network_name = "My Blockchain" festlegen.

  2. Definieren Sie eine Portnummer: Jeder Knoten im Netzwerk benötigt für die Kommunikation eine eindeutige Portnummer. Weisen Sie Ihrem Knoten eine passende Portnummer zu. Sie können beispielsweise port = 5000 festlegen.

  3. Konfigurieren Sie die Netzwerk- und Porteinstellungen: Fügen Sie Ihrem Projekt Variablen oder Konfigurationsparameter hinzu, um den Netzwerknamen und die Portinformationen zu speichern. Zu diesem Zweck können Sie Konstanten oder eine Konfigurationsdatei verwenden. Sie können beispielsweise eine config.py Datei erstellen und dort die Variablen definieren:

    Python 
     Netzwerkname = „Meine Blockchain“ 
     Port = 5000
    

    Dieser Code erstellt eine config.py Datei mit dem Netzwerknamen und den definierten Portvariablen.

1.5 Testen der Umgebung

Lassen Sie uns abschließend die Entwicklungsumgebung testen, um sicherzustellen, dass alles korrekt eingerichtet ist.

  1. Führen Sie einen einfachen Test durch: Schreiben Sie einen einfachen Testcode in Ihre blockchain.py Datei, um zu überprüfen, ob die Umgebung ordnungsgemäß eingerichtet ist. Sie können beispielsweise eine Instanz der Block Klasse erstellen, den Genesis-Block hinzufügen und die Blockchain drucken, um zu überprüfen, ob sie korrekt initialisiert wird.

    Python
    Blockchain = [genesis_block] # Angenommen, dies ist die Liste, in der Blöcke in der Blockchain gespeichert sind

Drucken Sie die Blockchain aus

für Block in Blockchain:
print(f“Block #{block.index} – Zeitstempel: {block.timestamp} – Daten: {block.data}”)

Dieser Code erstellt eine Liste „Blockchain“ und fügt ihr den Genesis-Block hinzu. Anschließend werden die Details jedes Blocks in der Blockchain gedruckt.

1. 
 Führen Sie den Test aus: Führen Sie den Testcode mit dem Python-Interpreter aus:

Python
Python-Blockchain.py

Wenn alles richtig eingerichtet ist, sollten Sie die Ausgabe der Blockchain sehen, die die Details des Genesis-Blocks enthält.

Am Ende dieser Lektion haben Sie Ihre Entwicklungsumgebung konfiguriert und ein neues Python-Projekt gestartet, um Ihre eigene Blockchain zu erstellen. Sie können nun mit Lektion 2 fortfahren, in der wir mit dem Aufbau der Blockchain-Struktur beginnen. Machen Sie sich bereit, sich bei der Blockchain-Entwicklung die Hände schmutzig zu machen!

Haftungsausschluss
* Kryptoinvestitionen sind mit erheblichen Risiken verbunden. Bitte lassen Sie Vorsicht walten. Der Kurs ist nicht als Anlageberatung gedacht.
* Der Kurs wird von dem Autor erstellt, der Gate Learn beigetreten ist. Vom Autor geteilte Meinungen spiegeln nicht zwangsläufig die Meinung von Gate Learn wider.
Katalog
Lektion 1

Einrichten der Entwicklungsumgebung

Wir konzentrieren uns auf die Einrichtung der Entwicklungsumgebung für den Aufbau Ihrer eigenen Blockchain mit Python. Wir installieren die notwendigen Tools und Bibliotheken und konfigurieren die Umgebung, um Ihre Blockchain-Entwicklungsreise in Gang zu bringen.

1.1 Python und Bibliotheken installieren

Um zu beginnen, müssen wir Python und die erforderlichen Bibliotheken für die Blockchain-Entwicklung installieren. Folge diesen Schritten:

  1. Python installieren: Besuchen Sie die offizielle Python-Website (python.org) und laden Sie die neueste Version von Python für Ihr Betriebssystem herunter. Python ist für Windows, macOS und Linux verfügbar. Befolgen Sie die bereitgestellten Installationsanweisungen.
  • Stellen Sie für Windows-Benutzer sicher, dass die Option „Python zu PATH hinzufügen“ während des Installationsvorgangs aktiviert ist. Dadurch können Sie Python über die Befehlszeile ausführen.
  1. Richten Sie eine virtuelle Umgebung ein: Eine virtuelle Umgebung hilft dabei, Ihre Projektabhängigkeiten von anderen Python-Projekten auf Ihrem System zu isolieren. Öffnen Sie Ihre Befehlszeilenschnittstelle und erstellen Sie ein neues Verzeichnis für Ihr Blockchain-Projekt. Navigieren Sie mit dem Befehl cd zum Projektverzeichnis. Erstellen Sie im Projektverzeichnis eine neue virtuelle Umgebung mit dem folgenden Befehl:

    Python 
     python -m venv env
    

    Dieser Befehl erstellt eine neue virtuelle Umgebung mit dem Namen „env“ im Projektverzeichnis.

  2. Aktivieren Sie die virtuelle Umgebung: Aktivieren Sie die virtuelle Umgebung mit dem entsprechenden Befehl für Ihr Betriebssystem:

  • Für Windows-Benutzer:
    Python 
     env\Scripts\activate
    
  • Für macOS/Linux-Benutzer:
    Python 
     Quelle env/bin/activate
    
    Durch die Aktivierung der virtuellen Umgebung wird sichergestellt, dass alle von Ihnen installierten Python-Pakete spezifisch für dieses Projekt sind und die globale Python-Installation Ihres Systems nicht beeinträchtigen.
  1. Erforderliche Bibliotheken installieren: Verwenden Sie bei aktivierter virtueller Umgebung den folgenden Befehl, um die erforderlichen Bibliotheken für die Blockchain-Entwicklung zu installieren:
    Python 
     pip install hashlib datetime
    
    Dieser Befehl installiert die hashlib Bibliothek für kryptografische Operationen und die datetime -Bibliothek für Zeitstempel.

1.2 Initialisierung des Projekts

Nachdem wir nun Python und die erforderlichen Bibliotheken installiert haben, initialisieren wir unser Blockchain-Projekt.

  1. Erstellen Sie ein neues Projektverzeichnis: Wählen Sie einen geeigneten Speicherort auf Ihrem Computer für Ihr Projekt und erstellen Sie ein neues Verzeichnis speziell für Ihr Blockchain-Projekt. Sie können dies über die Befehlszeile oder den Datei-Explorer tun.

  2. Navigieren Sie zum Projektverzeichnis: Öffnen Sie Ihre Befehlszeilenschnittstelle und navigieren Sie mit dem Befehl cd zum neu erstellten Projektverzeichnis. Wenn Ihr Projektverzeichnis beispielsweise „blockchain-project“ heißt, würden Sie den folgenden Befehl verwenden:

    Python 
     CD-Blockchain-Projekt
    
  3. Initialisieren Sie ein Git-Repository: Wenn Sie mit Git vertraut sind und Änderungen in Ihrem Projekt verfolgen möchten, können Sie ein neues Git-Repository initialisieren. Verwenden Sie den folgenden Befehl, um das Repository zu initialisieren:

    Python 
     git init
    

    Durch das Initialisieren eines Git-Repositorys wird eine versteckte .git erstellt Verzeichnis in Ihrem Projekt, das Änderungen nachverfolgt und es Ihnen ermöglicht, Versionen Ihres Codes zu verwalten.

  4. Richten Sie die Projektstruktur ein: Erstellen Sie die notwendigen Dateien und Verzeichnisse für Ihr Projekt. Zunächst konzentrieren wir uns auf eine Grundstruktur, die aus einer Haupt-Blockchain-Datei und etwaigen zusätzlichen Hilfsdateien besteht. Erstellen Sie in Ihrem Projektverzeichnis eine neue Datei mit dem Namen blockchain.py .

1.3 Erstellen des Genesis-Blocks

Der Genesis-Block ist der erste Block in der Blockchain. In diesem Schritt definieren wir die Struktur eines Blocks und erstellen den Genesis-Block.

  1. Öffnen Sie die Datei blockchain.py in Ihrem bevorzugten Code-Editor. Hier werden wir unseren Blockchain-Code schreiben.

  2. Definieren Sie die Struktur eines Blocks: Ein Block besteht normalerweise aus Feldern wie Index, Zeitstempel, Daten, vorherigem Hash und einer Nonce. Definieren Sie eine Klasse oder Datenstruktur, die einen Block in Ihrer Blockchain darstellt. Sie können beispielsweise eine Block mit Instanzvariablen für jedes Feld erstellen.

    Python 
     Klassenblock: 
     def __init__(self, index, timestamp, data, previous_hash, nonce): 
     self.index = index 
     self.timestamp = timestamp 
     self.data = data 
     self. previous_hash = previous_hash 
     self.nonce = nonce
    

    Dieser Code definiert eine Block mit den erforderlichen Feldern.

  3. Implementieren Sie die Funktionalität zum Erstellen des Genesis-Blocks: Schreiben Sie Code zum Erstellen des Genesis-Blocks mit geeigneten Standardwerten für jedes Feld. Dieser Block dient als Ausgangspunkt für Ihre Blockchain. Zum Beispiel:

    Python 
     genesis_block = Block(0, datetime.datetime.now(), „Genesis-Block“, „0“, 0)
    

    Dieser Code erstellt eine Instanz der Block Klasse, die den Genesis-Block mit Index 0, dem aktuellen Zeitstempel, „Genesis Block“ als Daten, „0“ als vorherigem Hash (da es keinen vorherigen Block gibt) und einer Nonce von 0 darstellt .

1.4 Netzwerk und Port konfigurieren

In einem Blockchain-Netzwerk kommunizieren Knoten miteinander. In diesem Schritt konfigurieren wir die Netzwerkeinstellungen für Ihre Blockchain.

  1. Definieren Sie die Netzwerkeinstellungen: Legen Sie einen Netzwerknamen oder eine Kennung für Ihre Blockchain fest. Sie können einen beliebigen Namen wählen, der Ihr Blockchain-Projekt repräsentiert. Beispielsweise können Sie network_name = "My Blockchain" festlegen.

  2. Definieren Sie eine Portnummer: Jeder Knoten im Netzwerk benötigt für die Kommunikation eine eindeutige Portnummer. Weisen Sie Ihrem Knoten eine passende Portnummer zu. Sie können beispielsweise port = 5000 festlegen.

  3. Konfigurieren Sie die Netzwerk- und Porteinstellungen: Fügen Sie Ihrem Projekt Variablen oder Konfigurationsparameter hinzu, um den Netzwerknamen und die Portinformationen zu speichern. Zu diesem Zweck können Sie Konstanten oder eine Konfigurationsdatei verwenden. Sie können beispielsweise eine config.py Datei erstellen und dort die Variablen definieren:

    Python 
     Netzwerkname = „Meine Blockchain“ 
     Port = 5000
    

    Dieser Code erstellt eine config.py Datei mit dem Netzwerknamen und den definierten Portvariablen.

1.5 Testen der Umgebung

Lassen Sie uns abschließend die Entwicklungsumgebung testen, um sicherzustellen, dass alles korrekt eingerichtet ist.

  1. Führen Sie einen einfachen Test durch: Schreiben Sie einen einfachen Testcode in Ihre blockchain.py Datei, um zu überprüfen, ob die Umgebung ordnungsgemäß eingerichtet ist. Sie können beispielsweise eine Instanz der Block Klasse erstellen, den Genesis-Block hinzufügen und die Blockchain drucken, um zu überprüfen, ob sie korrekt initialisiert wird.

    Python
    Blockchain = [genesis_block] # Angenommen, dies ist die Liste, in der Blöcke in der Blockchain gespeichert sind

Drucken Sie die Blockchain aus

für Block in Blockchain:
print(f“Block #{block.index} – Zeitstempel: {block.timestamp} – Daten: {block.data}”)

Dieser Code erstellt eine Liste „Blockchain“ und fügt ihr den Genesis-Block hinzu. Anschließend werden die Details jedes Blocks in der Blockchain gedruckt.

1. 
 Führen Sie den Test aus: Führen Sie den Testcode mit dem Python-Interpreter aus:

Python
Python-Blockchain.py

Wenn alles richtig eingerichtet ist, sollten Sie die Ausgabe der Blockchain sehen, die die Details des Genesis-Blocks enthält.

Am Ende dieser Lektion haben Sie Ihre Entwicklungsumgebung konfiguriert und ein neues Python-Projekt gestartet, um Ihre eigene Blockchain zu erstellen. Sie können nun mit Lektion 2 fortfahren, in der wir mit dem Aufbau der Blockchain-Struktur beginnen. Machen Sie sich bereit, sich bei der Blockchain-Entwicklung die Hände schmutzig zu machen!

Haftungsausschluss
* Kryptoinvestitionen sind mit erheblichen Risiken verbunden. Bitte lassen Sie Vorsicht walten. Der Kurs ist nicht als Anlageberatung gedacht.
* Der Kurs wird von dem Autor erstellt, der Gate Learn beigetreten ist. Vom Autor geteilte Meinungen spiegeln nicht zwangsläufig die Meinung von Gate Learn wider.