Wichtiger Hinweis: Vorsicht vor der gefälschten Website finanzforensik.com — offiziell nur unter finanz-forensik.de. Eingetragen beim Amtsgericht Hanau, HRB 100521.

Technische Grundlagen

Kurz erklärt:

Das Application Binary Interface (ABI) ist die Schnittstellenbeschreibung eines Smart Contracts. Es legt fest, welche Funktionen und Ereignisse ein Contract bereitstellt und wie deren Aufrufe und Daten in das Binärformat der Ethereum Virtual Machine kodiert werden.

Herkunft und Zweck

Der Begriff Application Binary Interface stammt aus der klassischen Softwaretechnik, wo er die binäre Schnittstelle zwischen Programmteilen beschreibt. Im Ethereum-Umfeld bezeichnet das ABI die maschinenlesbare Beschreibung, wie mit einem Smart Contract kommuniziert wird. Da die Ethereum Virtual Machine ausschließlich Bytecode und binäre Daten verarbeitet, benötigen externe Anwendungen, Wallets und andere Contracts eine verbindliche Konvention, um Funktionsaufrufe und Rückgabewerte korrekt zu übersetzen. Das ABI erfüllt genau diese Rolle.

Aufbau des ABI

Ein ABI wird üblicherweise als JSON-Struktur dargestellt und listet alle von außen erreichbaren Elemente eines Contracts auf: Funktionen mit ihren Namen, Ein- und Ausgabeparametern und Datentypen, Events, den Konstruktor sowie gegebenenfalls Fehler-Definitionen. Für jede Funktion sind zudem Eigenschaften wie die Zustandsveränderbarkeit hinterlegt, etwa view, pure oder payable. Der Solidity-Compiler erzeugt das ABI automatisch aus dem Quellcode zusammen mit dem Bytecode.

Kodierung von Aufrufen

Beim Aufruf einer Funktion wird zunächst ein vier Byte langer Funktionsselektor gebildet. Er ergibt sich aus den ersten vier Byte des Keccak-256-Hashes der Funktionssignatur, also des Namens samt Parametertypen. Anschließend werden die Argumente nach festen Regeln in 32-Byte-Blöcke kodiert und angehängt. Diese Kodierung, oft als ABI-Encoding bezeichnet, stellt sicher, dass die aufgerufene Funktion die Daten eindeutig interpretieren kann. Der Opcode CALL überträgt die kodierten Daten schließlich an den Ziel-Contract.

Bedeutung für Werkzeuge und Analyse

Ohne das passende ABI lassen sich die Rohdaten einer Transaktion oder eines Event-Logs nur schwer deuten. Blockchain-Explorer, Wallets und Bibliotheken wie ethers.js oder web3.js nutzen das ABI, um menschenlesbare Funktionsaufrufe in Binärdaten zu übersetzen und umgekehrt. In der Blockchain-Analyse ermöglicht ein bekanntes ABI die Entschlüsselung von Transaktions-Eingabedaten; fehlt es, kann anhand des Vier-Byte-Selektors zumindest die Funktion identifiziert werden.

Häufige Fragen

Wozu wird ein ABI benötigt?

Das ABI beschreibt, wie Funktionen und Daten eines Smart Contracts binär kodiert werden. Anwendungen und Wallets brauchen es, um Aufrufe korrekt zu formulieren und Rückgabewerte richtig zu interpretieren.

In welchem Format liegt ein ABI vor?

Ein ABI wird üblicherweise als JSON-Dokument dargestellt, das Funktionen, Parameter, Datentypen, Events und weitere Schnittstellenelemente eines Contracts strukturiert auflistet.

Was ist ein Funktionsselektor?

Der Funktionsselektor besteht aus den ersten vier Byte des Keccak-256-Hashes der Funktionssignatur. Er identifiziert am Anfang der Transaktions-Eingabedaten die aufzurufende Funktion.

Ist das ABI auf der Blockchain gespeichert?

Nein. Auf der Blockchain liegt nur der Bytecode. Das ABI wird beim Kompilieren separat erzeugt und muss außerhalb der Kette bereitgestellt werden, etwa über einen Explorer oder das Projekt selbst.

Kann man Transaktionen ohne ABI auswerten?

Vollständig menschenlesbar nur eingeschränkt. Ohne ABI lässt sich jedoch über den Vier-Byte-Selektor häufig die aufgerufene Funktion bestimmen und über öffentliche Signaturdatenbanken zuordnen.

Zusammenfassung

Das Application Binary Interface (ABI) ist die Schnittstellenbeschreibung eines Smart Contracts und definiert die binäre Kodierung von Funktionsaufrufen und Daten. Es wird meist als JSON dargestellt und ist die Grundlage dafür, dass Wallets, Explorer und Analysewerkzeuge mit einem Contract kommunizieren und seine Daten deuten können.

Weiterführende Quellen

Fachlich verantwortet von David Lüdtke, Finanz Forensik GmbH. Stand: 2026-08-11. Dieser Beitrag dient der allgemeinen Information und ersetzt keine Rechtsberatung im Einzelfall.

Offizieller Hinweis der Finanz Forensik GmbH

Wir weisen ausdrücklich darauf hin, dass die Website finanzforensik.com in keiner geschäftlichen oder rechtlichen Verbindung zu unserem Unternehmen steht. Offiziell erreichen Sie uns ausschließlich unter finanz-forensik.de.

Wir haben bereits Strafanzeige erstattet und den Vorgang den zuständigen Behörden vorgelegt. Wer wir sind, können Sie jederzeit unabhängig überprüfen: Die Finanz Forensik GmbH ist beim Amtsgericht Hanau unter HRB 100521 eingetragen.

Den vollständigen Handelsregisterauszug sowie unsere ausführliche Dokumentation des Vorgangs stellen wir Ihnen hier zur Verfügung.