Wie man Smart Contracts mit Ergoscript erstellt | Ergo Plattform
20. Februar 2024

Smart Contracts sind das Rückgrat der dezentralen Finanzen (DeFi) und gehören zu den wichtigsten Nutzungsmöglichkeiten der Blockchain-Technologie. Bevor wir mehrere Aspekte von Smart Contracts auf Ergo besprechen, lassen Sie uns darüber sprechen, was ein Smart Contract ist.
Was ist ein Smart Contract?
Ein Smart Contract ist ein selbstausführendes Stück Code, das normalerweise auf einer Blockchain zu finden ist. Ein Smart Contract setzt vordefinierte Vertragsbedingungen automatisch durch, wenn bestimmte Bedingungen erfüllt sind. Er funktioniert ohne Zwischenhändler und verwendet Code, um spezifische Aktionen transparent und vertrauenswürdig auszuführen. Zu diesen Aktionen könnten der Kauf von NFTs, die Übertragung von Münzen und Token oder das Ausleihen oder Verleihen von Vermögenswerten gehören.
Die Smart Contracts von Ergo sind eines der vielen Merkmale, die es von anderen Kryptowährungen abheben. Lassen Sie uns einen Blick darauf werfen, warum die Smart Contracts von Ergo so besonders sind.
Verständnis von ErgoScript
Ergo verwendet die Programmiersprache ErgoScript, die auf Scala basiert. Die Ergo-Dokumentation besagt, dass ErgoScript eine vereinfachte Form von Scala ist, die als Hochsprache in ErgoTree übersetzt wird, die wiederum eine Niedrigsprache ist, die während der Ausführung in ein kryptografisches Protokoll weiter übersetzt wird. Dieses Design ermöglicht es Ergo, verschiedene kryptografische Protokolle zu unterstützen, die Ring- und Schwellenunterschriften umfassen. Im Gegensatz zu Bitcoin ermöglicht ErgoScript komplexe Finanzverträge, indem es Selbstreplikation integriert, die die Erstellung von Turing-vollständigen Prozessen auf der Blockchain ermöglicht und dabei die Sicherheits- und Datenschutzprinzipien von Bitcoin beibehält. Im Wesentlichen erleichtert ErgoScript den Aufbau sicherer, komplexer dApps, während die Datenschutzfunktionen erhalten bleiben.
Voraussetzungen für die Erstellung von Smart Contracts
Da Ergo eine eUTXO-Blockchain ist und eine eigene Programmiersprache hat, müssen sich neue Entwickler zunächst mit einigen der Funktionen von Ergo vertrautmachen, bevor sie Smart Contracts erstellen. Eine dieser Funktionen ist das Konzept von „Boxes.“ In Ergoscript ist eine 'Box' eine anpassbare Version eines UTXO. Sie dient nicht nur als Halter für eine Kryptowährung, die mit einer Adresse verknüpft ist, sondern umfasst auch 'Register' für zusätzliche Daten. Diese Daten können von grundlegenden Werten bis hin zu komplexen Strukturen variieren, die in Transaktionen und der Ausführung von Smart Contracts verwendet werden können. Diese Unterscheidung hebt Ergos Box von einem typischen UTXO ab, das lediglich einen ungenutzten Kryptowährungsbetrag darstellt, der mit einer bestimmten Adresse verknüpft ist. In UTXO-basierten Kryptowährungen verwenden Transaktionen vorhandene UTXOs als Eingaben und erzeugen neue als Ausgaben, wobei die ungenutzten Ausgaben die Münzen darstellen, die für zukünftige Transaktionen verfügbar sind.
Ein weiterer wichtiger Aspekt, den neue Entwickler kennen müssen, ist ein allgemeines Verständnis der ErgoScript-Sprachbeschreibung. Dieser Link hilft neuen Entwicklern, den Einstieg zu finden. Unten ist ein Bild von einigen der Aspekte von Ergoscript, mit denen sich der Benutzer vertrautmachen kann.

Wie kann ich einen Smart Contract mit ErgoScript erstellen?
Der erste Schritt, um zu lernen, wie man Smart Contracts auf Ergo codiert, besteht darin, sich mit ErgoScript vertraut zu machen. Es ist wichtig zu beachten, dass Ergo das UTXO-Modell verwendet, das sich erheblich vom traditionellen Kontomodell unterscheidet. Ein großartiges Beispiel dafür, wie das eUTXO-Modell in Smart Contracts passt, finden Sie in der Ergo-Dokumentation hier. Zum Beispiel beinhaltet die Erstellung eines Smart Contracts mit eUTXO, einen Transaktionsausgang als den Vertrag zu kennzeichnen. Zum Beispiel möchten Sie vielleicht 10 digitale Münzen an Ihren Freund zahlen, wenn die Temperatur 90 Grad Fahrenheit erreicht. Dies wird als ein Haufen im digitalen Sparschwein dargestellt, der an ein Skript angehängt ist, das die Ausgabebedingung angibt. Wenn die Bedingung erfüllt ist, kann Ihr Freund das Geld mit dem Nachweis der erfüllten Bedingung ausgeben. Andernfalls bleiben die Mittel in dem Haufen, der für alle Teilnehmer sichtbar wäre.
Smart Contracts können für Anfänger und fortgeschrittene Entwickler gleichermaßen kompliziert und überwältigend sein. Glücklicherweise bietet das Ergo-Ökosystem eine Fülle von Ressourcen, die sowohl zeigen, wie man Ergoscript lernt, als auch wie man Smart Contracts codiert. Diese Ressource führt den Benutzer insbesondere zum „Ergo Playground“, in dem sie mit verschiedenen Schwierigkeitsgraden von Smart Contracts experimentieren können. Dieses Video von Robert Kornacki führt Sie durch die Anfangsphasen der Erstellung eines Smart Contracts mit einem PIN-Sperrvertrag.

Kornacki stellt fest, dass „Dies ein einfacher Smart Contract ist, der eingezahlte Mittel unter einer PIN-Nummer sperrt. Wenn die PIN-Nummer zunächst vom Benutzer bereitgestellt wird, wird sie off-chain gehasht, und der Hash selbst wird on-chain gespeichert.
Wenn der Benutzer seine/ihre Mittel abheben möchte (den UTXO ausgeben, der unter diesem Vertrag gesperrt ist), reicht er/sie eine withdrawTransaction mit der tatsächlichen PIN-Nummer in einem Register des Ausgangs-UTXO ein. Der Vertrag wird dann ausgeführt und überprüft, dass, wenn die neu bereitgestellte PIN-Nummer gehasht wird, sie gleich dem ursprünglichen Hash ist, der im Register der Box gespeichert ist, die durch den Vertrag gesperrt ist. Wenn sie gleich sind, validiert der Vertrag und die Transaktion wird als gültig akzeptiert und in die Blockchain-Historie aufgenommen.
Bitte beachten Sie, dass dieser Vertrag ausschließlich als Bildungsbeispiel gedacht ist. Er ist völlig unsicher und sollte niemals on-chain verwendet werden. Böse Akteure können den Mempool scannen, um die PIN-Nummer zu finden, wenn die withdrawTransaction gepostet wird, und dann vorlaufen, indem sie eine Transaktion mit einer höheren Transaktionsgebühr + derselben PIN-Nummer posten, wodurch sie Ihre gesperrten Mittel stehlen. Das gesagt, dies ist ein großartiger einfacher Vertrag, um Ihre ersten Schritte zu machen.”
Dies ist ein großartiger Smart Contract, mit dem man in den Anfangsphasen der Ergo-Entwicklung experimentieren kann. Dies kann neuen Entwicklern helfen, sich an die Arbeit mit Ergoscript zu gewöhnen. Neue Entwickler können diesen Link verwenden, um direkt zum Ergo Playground zu gelangen, wobei der Code bereits für sie importiert ist. **Nochmals, dieser Code ist unsicher und sollte nur zu Bildungszwecken verwendet werden. **
Die Zukunft der Smart Contracts
Die Zukunft der Smart Contracts repräsentiert endlose Möglichkeiten, das traditionelle Finanzsystem zu stören und es durch vertrauenslose und transparente Annahmen zu ersetzen. Smart Contracts reduzieren die Notwendigkeit für rechtliche Dokumente, Anwälte und vertrauenswürdige Transaktionen. Smart Contracts sind auch sofort und viel effizienter, was es Unternehmen, Geschäften und Unternehmern ermöglicht, in viel kürzerer Zeit mehr zu erreichen. Einige potenzielle Nachteile von Smart Contracts sind, dass sie im Allgemeinen irreversibel sind und potenzielle Code-Exploits aufweisen können, die zum Verlust von Benutzermitteln führen könnten. Aus diesem Grund ist sicherer Code so wichtig bei der Erstellung von Smart Contracts. Dies ist auch einer der Gründe, warum ErgoScript so leistungsstark ist. Es ist eine äußerst sichere Programmiersprache, wenn sie korrekt ausgeführt wird.
Fazit
ErgoScript ist letztendlich eine Programmiersprache, die sich dadurch auszeichnet, dass sie die Erstellung dynamischer und sicherer Smart Contracts auf Ergo ermöglicht. Sie ermöglicht es Entwicklern, komplexe und anspruchsvolle dApps zu erstellen, während sie nahtlos viel einfacher zu erstellen ist als viele andere Programmiersprachen. Die Open-Source-Natur von Ergo vereinfacht auch den Prozess für Entwickler, ihre Vision zu verwirklichen und etwas Besonderes zu schaffen.
Für Entwickler, die entweder ihre ersten Schritte in ErgoScript und Smart Contracts machen oder mehr fortgeschrittenes Wissen über Smart Contracts wünschen, konsultieren Sie bitte die untenstehende Dokumentation. Der Ergo Discord hat auch einen #development-Bereich, in dem gleichgesinnte Entwickler interagieren und auf einer tieferen Ebene über ErgoScript lernen können.
Nützliche Links
- ErgoScript über das Ergo Playground-Tutorialvideo lernen
- PIN-Sperrvertrag
- Ergo Playground
- ErgoScript
- Boxes
- ErgoScript Sprachbeschreibung
- eUTXO, Boxes, Adressen
- Verschiedene Ebenen von Smart Contracts
- Wie funktionieren UTXO-Verträge?
- ErgoScript Whitepaper
- Mehrstufige Transaktionen und Smart Contracts
Share post
13. August 2025
12. August 2025
9. Juli 2025
12. Mai 2025
9. Dezember 2024
19. August 2024
