:DE: Eine detaillierte Ansicht der Cardano-Software

Hier kannst du den “Stapel” an Komponenten kennenlernen, die miteinander interagieren um die Blockchain-Plattform zu bertreiben.

:calendar: 8. Juni 2021 :bust_in_silhouette: Niamh Ahern :clock10: 5min Lesezeit

grafik

IOG - A close look at the software running cardano [Soundcloud]

Cardano wurde in Modulen, mit verknüpften Komponenten, entworfen, die auf verschiedene Weise verwendet werden können. Diese Komponenten bilden den Cardano “Plattform-Stack”. Sie arbeiten im Hintergrund zusammen, um den Aufbau und die Nutzung der Live-Cardano-Blockchain zu unterstützen.

Wir befinden uns derzeit in der frühen Testnet-Phase auf dem Weg zur Alonzo-Hardfork, die die volle Smart-Contract-Fähigkeit von Cardano mit sich bringen wird. Dieser Prozess ist hochkomplex und erfordert die stetige Aktualisierung der verschiedenen Komponenten, aus denen die Cardano-Plattform besteht, sowie ihre sorgfältige Integration und Überprüfung. So ist es eine gute Zeit, um diese Komponenten wieder zu betrachten, einige der Begriffe zu erklären, und zu erfahren, wie sie innerhalb der “Plattform-Stack” zusammenarbeiten.

Komponenten des Cardano-Plattform stacks


Abbildung 1 - Komponenten die mit einer Cardano Node interagieren

Der Plattform-Stack für Cardano umfasst folgende Kernkomponenten:

  • Cardano Nodes (und die dazugehörigen Prozesse)
  • Cardano wallets
  • Wallet-Befehlszeilen-Schnittstelle (CLI)
  • DB Sync (synchronisiert Blockchain-Daten mit einer relationalen Datenbank)
  • PostgreSQL-Datenbank (die mit GraphQL, REST API und Smash interagiert)
  • Smash-Server
  • Rosetta API (Blockchain Kommunikationsprotokoll)

Beachte aber bitte, dass die Daedalus-Wallet kein Teil des Kern-Stacks ist, aber mit den Komponenten kommuniziert (Abbildung 1).

Die Nodes und das Netzwerk-Layer

Werfen wir zunächst einen Blick auf die Cardano-Nodes. Diese Software läuft auf dem Computer und untermauert das Netzwerk, so dass jeder an der dezentralen Blockchain teilnehmen kann. Die Node integriert die Konsens-, Ledger- und Netzwerk-Subkomponenten und bietet Top-Level-Konfiguration, API, CLI, Protokollierung, Speicherverwaltung und Überwachungsfunktionen, die von anderen Cardano-Komponenten oder von erfahrenen Benutzern verwendet werden können. Daedalus ist ein Full-Node-Wallet, so dass, wenn Sie das auf Ihrem lokalen Rechner laufen, Sie effektiv helfen, das Netzwerk zu betreiben.

Das Netzwerk-Layer

Als nächstes haben wir die Netzwerkschicht. Diese verbindet jede Cardano-Node zu einem dezentralen System, welches die Blockchain und die damit verbundenen Dienste verwaltet. Das Netzwerk besteht aus einer Ansammlung von Knoten, die miteinander kommunizieren, um das verteilte Ledger aufrechtzuerhalten, die Einreichung von Transaktionen zu unterstützen und mit Benutzer-Wallets und anderen Diensten zu interagieren. Der Kern des Netzwerks besteht aus den dezentralen Knoten - den Stake-Pools - die gemeinsam Blöcke validieren und neue Blöcke zur Kette hinzufügen. Sie werden von dedizierten Relay-Knoten unterstützt, die Netzwerkverbindungen verwalten und die Struktur des gesamten Netzwerks aufbauen. Die dedizierten Verbraucher-Knoten, die von der Daedalus-Wallet und anderen Diensten betrieben werden, verbinden sich mit diesem Netzwerk, um Transaktionen auf der Kette zu verfolgen und einzureichen.

Cardano-Knoten halten Verbindungen mit ihren Peers aufrecht. Ein Satz von Mini-Protokollen ermöglicht die Kommunikation zwischen den Knoten. Jedes Mini-Protokoll implementiert eine grundlegende Anforderung an den Informationsaustausch, wie z.B. das Informieren von Peers über den neuesten Block, das Teilen von Blöcken nach Bedarf oder das Teilen neuer Transaktionen im Cardano-Netzwerk. Für die Verbindung, sind Mini-Protokolle durch die Version des Netzwerk-Protokolls festgelegt.

Das Cardano-Wallet Backend

Die Cardano-Wallet-Backend-Komponente unterstützt die grafische Benutzeroberfläche der Daedalus-Wallet. Sie wird zum Senden und Empfangen von Ada verwendet. Hinter den Kulissen führt die Wallet einen vollständigen Cardano-Knoten aus. Im Gegensatz zu einer Light-Client-Wallet lädt sie den gesamten Shared Ledger und validiert alle Transaktionen, wodurch die Sicherheit der Blockchain für alle erhöht wird.

Wallet-Befehlszeilenschnittstelle (CLI)

Die Wallet-Befehlszeilenschnittstelle (CLI) unterstützt Interaktionen mit der eigentlichen Blockchain. Technisch fortgeschrittene Benutzer können die CLI verwenden, um mit einer Sammlung von Werkzeugen für die Schlüssel zu generieren, Transaktionen zu erstellen, Zertifikate zu erstellen und andere Aufgaben durchzuführen. Die Werkzeuge sind in einer Hierarchie von Unterbefehlen organisiert, und jede Ebene verfügt über eine eigene integrierte Dokumentation der Befehlssyntax und der Möglichkeiten.

DB Sync

DB Sync ist eine Komponente, die die Aktivitäten auf der Cardano-Chain verfolgt und Blöcke und Transaktionen in PostgreSQL speichert. Als ‘Middleware’-Komponente versorgt sie cardano-graphql. DB Sync speichert Blockchain-Daten, die von den Cardano-Knoten geholt werden, in einer intermediären Datenbank gespeichert werden um Schnittstellen auf höherer Ebene die Blockchain-Exploration zu ermöglichen. Es bietet auch eine Reihe von Abfragen, um Cardano-Blockchain-Daten aus dem PostgreSQL zu holen, und unterstützt Dienste wie den Cardano-Explorer, eine grafische Benutzeroberfläche, die die Blockchain-Daten auf eine einfache Weise widerspiegelt. Cardano GraphQL ist eine plattformübergreifende API für die Datenabfragesprache GraphQL.

Rosetta API

Die Rosetta-Anwendungsprogrammierschnittstelle bietet eine High-Level-Schnittstelle, die darauf abzielt, den Integrationsprozess einfacher, schneller und zuverlässiger zu machen, damit Sie nur einmal etwas entwickeln müssen und Ihre Blockchain überall integrieren können. Wir haben eine einzigartige cardano-rosetta-Implementierung erstellt, um den Prozess der Integration mit Cardano zu vereinfachen. Diese Schnittstelle ist besonders nützlich für Börsen, da sie mit der Cardano-Kette über dieselbe Schnittstelle interagieren können, die sie auch bei anderen Blockchains verwenden.

Was noch kommen wird

Da Smart Contracts bald auf Cardano kommen, bedeutet dies, dass Plutus, die native Smart-Contract-Sprache, und andere Smart-Contract-Entwicklungssprachen wie Marlowe für Finanzen und Glow für DApps in den Cardano-Stack integriert werden. Die Ingenieure von IO Global werden neue und erweiterte Komponenten bereitstellen, um Plutus-, Marlowe- und Glow-Skripte zu kompilieren, sie auf der Chain zu übertragen und mit ihnen zu interagieren (Abbildung 2).

grafik
Abbildung 2 - Plutus, Marlowe, Glow, Solidity und IELE können alle zum Schreiben von Cardano-Smart Contracts verwendet werden

Das Alonzo-Protokoll-Upgrade wird auf den jüngsten Token-Upgrades aufbauen und wird über mehrere Testnets im Mainnet eingesetzt. Unsere Plutus-Partner und Plutus-Pioniere werden uns helfen, Plutus Core zu testen und werden Teil der Akzeptanzphase der Benutzer vor dem Einsatz im Mainnet sein. Zu diesem Zeitpunkt werden wir die Plutus- und Marlowe-Komponenten, wie z. B. die beiden Interpretationsprogramme, offiziell zum Cardano-Plattform-Stack hinzufügen.

Um über die Einführung von Alonzo auf dem Laufenden zu bleiben, besuche unsere Social-Media Kanäle und unsere Blog-Seite.


Übersetzung des IOHK Blog Artikel: A close look at the software running Cardano
Geschrieben von Niamh Ahern
Übersetzt von @Jonny22


4 Likes

Top! Danke für diese Übersetzung! :slight_smile:

1 Like