Was ist Solidity? Eine Programmiersprache für Smart Contracts
Eine einzige unachtsame Zeile Solidity-Code ermöglichte es einem Angreifer, 3,6 Millionen ETH zu erlangen. Der Code führte die Befehle exakt aus. Genau das ist das Beunruhigende daran. Mit Solidity werden Geldtransaktionen durchgeführt. Der Quellcode ist in der Regel öffentlich einsehbar. Und sobald ein Vertrag live ist, gibt es keine Möglichkeit, ihn unauffällig zu beheben – der Fehler bleibt bestehen, die Gelder bleiben ungeschützt, und die ganze Welt kann beides einsehen. Solidity ist die dominierende Programmiersprache für Smart Contracts auf Ethereum und allen anderen EVM-Blockchains. Vereinfacht gesagt, basiert der Großteil von DeFi und NFTs auf Solidity. Leistungsstark. Und unerbittlich. Hier erfahren Sie, was Solidity ist, wie der Code tatsächlich ausgeführt wird, wie ein erster Vertrag aussieht und warum Sicherheit immer oberste Priorität hat.
Was ist Solidity als Programmiersprache?
Alle Anleitungen sagen dasselbe: Solidity ist eine Hochsprache für Smart Contracts. Gut. Das hilft Ihnen aber kaum weiter. Was für eine Sprache ist es denn nun? Statisch typisiert. Objektorientiert. Geschweifte Klammern und Semikolons, Syntax, die von JavaScript, C++ und Python übernommen wurde. Wenn Sie schon einmal Code in einer dieser Sprachen veröffentlicht haben, wird Ihnen eine `.sol`-Datei innerhalb von etwa zehn Minuten vertraut vorkommen.
Gavin Wood entwarf es 2014, unterstützt von einem kleinen Ethereum-Team um Christian Reitwiessner. Das Ziel war klar: Nutzern die Möglichkeit zu geben, Smart Contracts für eine öffentliche Blockchain zu schreiben. Die Kerneinheit ist der „Contract“. Man kann ihn sich als eine Art „Klasse“ vorstellen, die zufällig auf einer Blockchain existiert – er speichert Zustände, stellt Funktionen bereit und erbt von anderen Klassen. Der Clou ist der Ausführungsort. Wird er in Bytecode kompiliert, wird derselbe Contract auf jedem Knoten eines dezentralen Netzwerks identisch ausgeführt, wobei alle Knoten sich gegenseitig überprüfen. Diese eine Anforderung erklärt, warum sich Solidity so eingeschränkt anfühlt.
| Solidität auf einen Blick | |
|---|---|
| Erstveröffentlichung | 2014 |
| Leitender Designer | Gavin Wood (Ethereum) |
| Paradigma | Objektorientiert, vertragsorientiert |
| Tippen | Statisch |
| Kompiliert zu | EVM-Bytecode |
| Neuester Compiler | Version 0.8.35 (Apr 2026) |
| Dateierweiterung | .Sol |
So funktioniert Solidity: Vom Code zur EVM
Das Interessante an Solidity ist nicht die Syntax, sondern die Pipeline. Lesbarer Code wird so implementiert, dass Tausende von Maschinen ihn identisch ausführen. Determinismus ist dabei zentral. Würden zwei Knoten denselben Smart Contract ausführen und unterschiedliche Ergebnisse erhalten, könnte sich das Netzwerk nicht auf einen Kontostand einigen. Diese Anforderung erklärt viele der ungewöhnlichen Einschränkungen der Sprache: Es ist nicht möglich, während der Ausführung eine Zufallszahl zu generieren oder eine externe Web-API aufzurufen. Alles muss innerhalb der Blockchain reproduzierbar sein.
Der Compiler und der Bytecode
Sie schreiben eine `.sol`-Datei – lesbar und in einer höheren Programmiersprache. Der Solidity-Compiler `solc` wandelt diese in EVM-Bytecode um, eine lange Folge von Low-Level-Operationen, ergänzt durch eine ABI, die die Funktionen des Smart Contracts auflistet. Dieser Bytecode landet in der Blockchain. Niemand liest ihn manuell. Er ist das Zielsystem für die Maschine, vergleichbar damit, wie C-Code in Assembler übersetzt wird.
Das EVM und Gas
Die Ethereum Virtual Machine führt diesen Bytecode aus. Jeder Ethereum-Knoten besitzt eine solche Maschine. Jede von ihr ausgeführte Operation kostet Gas, eine Gebühr, die in ETH entrichtet wird. Gas ist kein nebensächliches Detail. Es bestimmt die Preisgestaltung des Netzwerks und schützt es: Eine Endlosschleife führt nicht zum Einfrieren der Blockchain – sie verbraucht lediglich das Gas des Absenders und wird rückgängig gemacht. Gute Solidity-Architektur hält die Gaskosten niedrig.
Der ABI
Die ABI (Application Binary Interface) ist die JSON-Schnittstelle, die die Kommunikation mit einem bereitgestellten Smart Contract beschreibt. Wallets wie MetaMask oder dezentrale Anwendungen (dApps) nutzen sie, um Funktionsaufrufe im vom EVM (Engineering Virtual Machine) erwarteten Format zu kodieren und die Antwort anschließend zu dekodieren. Man kann sich die ABI als Brücke zwischen der Benutzeroberfläche und dem Smart Contract an einer bestimmten Adresse in der Blockchain vorstellen.

Ihren ersten Solidity Smart Contract schreiben
Genug Theorie. Am schnellsten lernt man Solidity, indem man einen kleinen Vertrag liest und seine Bestandteile erkennt.
Anatomie eines Vertrags
```solidity
// SPDX-Lizenz-Identifikator: MIT
pragma solidity ^0.8.20;
Vertragszähler {
uint256 public count;
event Incremented(uint256 newCount);
function increment() public {
count += 1;
emit Incremented(count);
}
}
```
Wenige Bausteine bilden das Ganze. Die `pragma`-Zeile legt die Compilerversion fest, sodass eine inkompatible Version Ihren Code nicht unbemerkt neu kompilieren kann. `contract Counter` öffnet den Smart Contract, ähnlich wie eine Klasse. `count` ist eine Zustandsvariable, die dauerhaft in der Blockchain gespeichert wird. `increment()` ist eine öffentliche Funktion, die von jedem aufgerufen werden kann. `event Incremented` protokolliert jede Änderung, sodass Off-Chain-Anwendungen reagieren können. Objektorientierter Code mit einer zugrundeliegenden Blockchain.
Die Werkzeuge, die Sie tatsächlich verwenden
Für den Einstieg ist keine Installation erforderlich. Remix ist eine Browser-IDE: Mit wenigen Klicks lässt sich Solidity schreiben, kompilieren und bereitstellen – daher ist es die Standardplattform zum Erlernen von Solidity. Reale Projekte werden in lokalen Frameworks realisiert. Hardhat und Foundry übernehmen Kompilierung, Tests und Bereitstellung zuverlässig. Und fast alle setzen auf OpenZeppelin, eine Bibliothek geprüfter, wiederverwendbarer Smart Contracts für Token und Zugriffskontrolle, anstatt riskanten Code von Grund auf neu zu entwickeln.
Vom Code zur Live-Adresse
Deployment bedeutet, den kompilierten Bytecode in einer Transaktion zu senden. Testen Sie ihn zuerst in einem kostenlosen Testnetz. Sepilia ist hierfür die gängigste Wahl (siehe 2026). Verbinden Sie eine Wallet wie MetaMask. Übertragen Sie die Änderungen erst ins Hauptnetz, wenn der Smart Contract fehlerfrei funktioniert. Auch für das Deployment fallen Gaskosten an, die in echtem ETH bezahlt werden. Und hier kommt der wichtigste Satz: Nach dem Deployment ist der Code unveränderlich. Sie können einen laufenden Smart Contract nicht bearbeiten. Genau diese Tatsache – mehr als jede Syntax-Besonderheit – ist der Grund für den nächsten Abschnitt.
Welche Blockchains unterstützen Solidity?
Solidity ist schon seit Jahren nicht mehr die „Sprache von Ethereum“. So viele Netzwerke haben die EVM übernommen, um die Ethereum-Tools wiederzuverwenden, dass Solidity zur gemeinsamen Sprache einer ganzen Blockchain-Familie wurde. ChainList listet über 385 EVM-kompatible Blockchains im Jahr 2019 auf. Darunter sind die großen Namen: Polygon, BNB Chain, Arbitrum , Base und Avalanche – sie alle verwenden denselben Bytecode, zu dem Ihre `.sol`-Datei kompiliert wird.
Ethereum ist nach wie vor der Dreh- und Angelpunkt. Laut DeFiLlama verwaltet die Plattform Vermögenswerte im Wert von rund 45 Milliarden US-Dollar – mehr als die Hälfte aller DeFi-Transaktionen. Und die Aktivität steigt: Allein im vierten Quartal 2025 werden laut Token Terminal etwa 8,7 Millionen neue Smart Contracts bereitgestellt. Für Entwickler ist diese Reichweite der entscheidende Grund, Solidity einer Sprache vorzuziehen, die an eine einzelne Blockchain gebunden ist.
Was wird also damit entwickelt? Fast alle Kategorien dezentraler Anwendungen, von denen Sie schon einmal gehört haben. DeFi-Kredit- und Handelsprotokolle. Die ERC-20-Verträge hinter den meisten Token, die ERC-721-Verträge hinter NFTs. DAOs kodieren ihre Abstimmungsregeln in Solidity. Stablecoins verwalten damit ihr Angebot. On-Chain-Spiele speichern ihre Logik dort. Wenn ein Projekt angibt, „auf Ethereum“ zu laufen, hat mit ziemlicher Sicherheit jemand Solidity geschrieben und implementiert.
Warum die Sicherheit von Solidity Smart Contracts schwierig ist
Die Eigenschaften, die Solidity so leistungsstark machen, sind gleichzeitig die, die Fehler so kostspielig machen. Der Code enthält Geld. Der Quellcode ist oft öffentlich. Er lässt sich nicht patchen. Ein Angreifer kann Ihren Vertrag in Ruhe lesen, und das Geld ist direkt unter der angegebenen Adresse verfügbar. Solidity ist keine Sprache, mit der man schnell und riskant Fehler begehen kann. Ich habe noch nie mit Software gearbeitet, bei der die Kluft zwischen „es kompiliert“ und „es ist sicher“ so groß ist.
Reentrancy und der DAO-Hack
Die bekannteste Solidity-Schwachstelle ist die sogenannte Reentrancy. Ein Smart Contract sendet ETH an eine externe Adresse, bevor er seinen internen Kontostand aktualisiert. Der empfangende Smart Contract ruft daraufhin erneut ETH ab, und zwar immer wieder, bevor der erste Aufruf abgeschlossen ist. Im Juni 2016 führte genau dieser Fehler zum Verlust von rund 3,6 Millionen ETH (damals etwa 60 Millionen US-Dollar) aus The DAO . Die Folgen waren die Spaltung von Ethereum in ETH und Ethereum Classic, einer Blockchain, die bis heute gehandelt wird. Und die Lösung? Fast schon lächerlich simpel: Erst den eigenen Zustand aktualisieren, dann das Geld senden. Dieses Muster hat sogar einen Namen: Checks-Effects-Interactions.
Ganzzahlüberlauf und SafeMath
Vor Solidity 0.8 konnten arithmetische Operationen unbemerkt einen Überlauf verursachen. Addierte man 1 zum Maximalwert eines `uint256`, wurde der Wert auf Null zurückgesetzt. Angreifer nutzten dies aus, um absurd hohe Token-Bestände zu erzeugen, wie beispielsweise beim BeautyChain-Vorfall (BEC) im Jahr 2018. Jahrelang schützten sich Entwickler mit der Bibliothek SafeMath davor, die zeitweise zu den meistimportierten Dateien in Solidity gehörte. Mit Version 0.8 wurden dann Überlauf- und Unterlaufprüfungen direkt in die Sprache integriert. Der häufigste arithmetische Fehler wird nun standardmäßig behoben, eine zusätzliche Bibliothek ist nicht mehr erforderlich.
Audits und ihre Kosten
Da Fehler irreversibel sind, investieren seriöse Projekte in die Überprüfung. Sie bauen auf den geprüften Komponenten von OpenZeppelin auf und beauftragen anschließend externe Firmen mit der Prüfung des gesamten Systems. Laut Marktdaten von Sherlock kostet eine professionelle Smart-Contract-Prüfung für ein DeFi-Protokoll typischerweise zwischen 25.000 und über 100.000 US-Dollar. Solidity-Prüfungen sind in der Regel 25 bis 40 Prozent günstiger als vergleichbare Rust-Prüfungen, da der Pool an qualifizierten Prüfern größer ist. Gute Prüffirmen sind zudem oft ausgebucht. Ein mittelgroßes Protokoll muss unter Umständen wochenlang auf einen Termin und anschließend weitere Wochen auf den Bericht warten. Nichts davon ist schnell und nichts davon optional.
| Schwachstelle | Was läuft schief? | Berühmter Fall | Fix |
|---|---|---|---|
| Wiedereintritt | Externer Anruf wird vor Statusaktualisierungen erneut eingegeben. | Die DAO, 2016 | Wechselwirkungen zwischen Kontrollen |
| Ganzzahlüberlauf | Die Arithmetik überschreitet ihre Grenze | BeautyChain (BEC), 2018 | Eingebaute Prüfungen (Solidity 0.8+) |
| Zugangskontrolle | Jeder kann eine privilegierte Funktion aufrufen. | Verschieden | `onlyOwner` / Rollenschutz |
| Ungeprüfte externe Anrufe | Fehlgeschlagener Anruf wird ignoriert, Logik wird fortgesetzt | Verschieden | Rückgabewerte prüfen |
Die gute Nachricht: Die Verluste gehen zurück. Laut Immunefi sanken die Kryptowährungsverluste durch DeFi-spezifische Sicherheitslücken bis 2025 auf etwa 680 Millionen US-Dollar – ein Rückgang um rund 74 Prozent gegenüber dem Höchststand von 2,62 Milliarden US-Dollar im Jahr 2022. Verbesserte Tools und die nun im Compiler integrierten Sicherheitsprüfungen tragen dazu bei.

Solidity im Vergleich zu anderen Smart-Contract-Sprachen
Solidity hat Konkurrenten. Es ist nicht einmal die sicherste Lösung. Vyper ist minimalistisch und Python-ähnlich, bewusst reduziert, um potenzielle Fehlerquellen zu minimieren; Curve basiert darauf. Rust ist die Basis für Smart Contracts auf Solana und NEAR, in mancher Hinsicht sicherer, aber schwieriger zu erlernen und teurer zu prüfen. Warum also ist Solidity immer noch so erfolgreich? Nicht das Sprachdesign. Sondern die Netzwerkeffekte. Die umfassendsten Tools, die am besten geprüften Bibliotheken, ein ganzes EVM-Ökosystem aus Blockchains und Wallets – all das basiert bereits auf Solidity.
| Sprache | Ketten | Syntaxbasis | Am besten geeignet für | Abtausch |
|---|---|---|---|---|
| Solidität | Ethereum + alle EVM | JavaScript/C++ | Maximale Reichweite, ausgereifte Werkzeuge | Es ist einfach, unsicheren Code zu schreiben. |
| Vyper | EVM | Python | Sicherheitskritische, einfache Verträge | Weniger Funktionen, kleinere Community |
| Rost | Solana, in der Nähe | Rost | Hohe Leistung, starke Sicherheit | Steile Kurve, teurere Prüfungen |
Wenn Sie dort liefern wollen, wo die Nutzer und das Geld bereits sind, ist Solidity die pragmatische Standardlösung, selbst wenn ein Konkurrent technisch sicherer ist.
Solltest du in 2026 Solidity-Programmierung lernen?
Der spekulative Hype um Kryptowährungen hat sich gelegt, doch die Nachfrage nach Entwicklern mit soliden Programmierkenntnissen bleibt bestehen. Laut Electric Capital verzeichnete Ethereum zwischen Januar und September 2025 rund 16.181 neue Entwickler, und etwa 74 Prozent aller Multi-Chain-Entwickler arbeiten an EVM-Chains. Dort befinden sich die lukrativsten Aufträge und die wiederverwendbaren Bibliotheken.
Ein sinnvoller Weg, Solidity zu lernen: Beginnen Sie mit Remix, lesen Sie die offizielle Solidity-Dokumentation und arbeiten Sie sich anschließend durch die Smart Contracts von OpenZeppelin, um zu sehen, wie Profis Token und Zugriffskontrolle strukturieren. Stellen Sie kleine Projekte in einem Testnetz bereit, bis die Sicherheitsmuster automatisiert sind und nicht mehr auswendig gelernt werden müssen. Die seltene Fähigkeit besteht nicht darin, kompilierbaren Solidity-Code zu schreiben; das können viele. Wofür ein Solidity-Entwickler tatsächlich bezahlt wird, ist das Schreiben von Code, der dem Angriff eines Angreifers standhält – also jemandem, der Ihren Smart Contract gelesen hat und Geld riskiert.
Warum Solidity die Standardsprache bleibt
Solidity ist aus gutem Grund Standard, nicht aufgrund von Hype. Es ist auf jeder EVM-Chain verfügbar. Es bietet die umfangreichsten Tools. Es bildet die Grundlage für die meisten DeFi- und NFT-Anwendungen. Doch das Erste, was man lernen sollte, ist nicht die Syntax. Es ist Folgendes: Auf einer Blockchain ist der bereitgestellte Code bindend, und Fehler bleiben bestehen. Lernen Sie die Sprache und die Sicherheitsmuster gemeinsam, denn beides ist hier untrennbar miteinander verbunden. Der nächste Schritt ist klein und kostenlos: Öffnen Sie Remix, schreiben Sie einen zehnzeiligen Smart Contract und stellen Sie ihn diese Woche in einem Testnetz bereit.