Website-Icon BitcoinBlog.de – das Blog für Bitcoin und andere virtuelle Währungen

EIP-3074 soll normale Ethereum-Accounts endlich auch smart machen

"Ether". Bild von Viktor Hachmang, bereitgestellt von der Ethereum Foundation.

Das nächste Upgrade von Ethereum, Pectra, soll mit EIP-3074 einen Mechanismus aktivieren, der es leicht macht, herkömmliche Wallets mit besonderen Funktionen zu erweitern. Unter anderem, dass sie Gebühren nicht in ETH, sondern in Token wie Stablecoins bezahlen.

Es ist offiziell: EIP-3074 wird im Pectra-Upgrade enthalten sein, das Ende 2024 oder Anfang 2025 aktiviert werden wird. Ethereum wird damit ein weiteres Puzzleteil zur Vollendung der „Account Abstraction“ bekommen: Gewöhnliche Accounts werden in der Lage sein, Funktionen freizuschalten, die bisher Smart-Contract-Wallets vorbehalten waren.

Um all das zu verstehen, müssen wir ein Stückchen ausholen. Eine normale Wallet bei Ethereum wird unter Entwicklern leicht verächtlich EOA genannt, das steht für „Externally Owned Account“, zu Deutsch: „extern kontrollierter Account“, und es hat einen Unterton von „CD-Rom“ oder „Tastentelefon.“

Denn seit der Aktivierung von EIP-4337 im März 2023 gibt es als Alternative zu den EOAs die Smart Contract Wallets (SCW). Diese wird nicht, wie die herkömmlichen Wallets bei Bitcoin, Ethereum und allen anderen Kryptowährungen „extern“ durch einen User kontrolliert, der einen privaten Schlüssel hält, sondern „intern“ durch einen Smart Contract auf der Blockchain.

Indem die Wallet „smart“ wird, erlaubt sie verschiedene Operationen, die vorher nicht oder nur verkompliziert möglich waren: Man kann per „sponsored transactions“ die Gebühren mit anderen Token bezahlen, etwa Stablecoins, oder von einer anderen Partei, etwa dem Empfänger. Man kann auch eine Art Lastschrift einrichten, um damit Kreditkarten mit einer nicht-treuhänderischen Wallet zu verbinden. Man kann eine Vielzahl an Backup-Strategien einrichten – etwa alle Spielarten des „Social Revocery“ durch Freunde, Verwandte, Notare oder andere Dienstleister -, man kann die Wallet beliebig programmieren, etwa für Ausgabenlimits oder Multisigs. Und vieles mehr.

Smart Contract Wallets sind definitiv wünschenswert und man kann sagen, dass sich erst mit ihnen das Versprechen des „programmierbaren Geldbeutels“ wirklich erfüllt. Dementsprechend groß waren Erwartungen, als EIP-4337 eine Art von Smart Contract Wallet einführte. Doch die Nachfrage ist eher dürftig, auch ein Jahr später sind die meisten Wallets weiterhin ein EOA.

Die Ursache für diesen schleppenden Markteintritt verorten die Entwickler in der Beharrungskraft alter Wallets. Man hat in seiner Wallet Ether, Token, NFTs, man hat die Wallet mit verschiedenen Smart Contracts verbunden, man hat auf ihr Coins auf verschiedenen Blockchains und Rollups. Das alles auf eine neue Wallet zu transportieren, ist nicht nur aufwändig, sondern wegen der vielen notwendigen Transaktionen auch teuer.

Funktionen an Smart Contracts delegieren

Die Hoffnung ist nun, dass EIP-3074 der Gamechanger wird. Das Upgrade führt zwei neue Operationen (Op-Codes) ein, AUTH und AUTHCALL. Der erste erlaubt es einer Wallet, bestimmte Aufgaben unter bestimmten Parametern an einen Smart Contract zu delegieren, in der Regel das Ausgeben von Coins und Token. Der zweite erlaubt es dem Smart Contract, diese Aufgaben anstelle der EOA auszuführen.

Eine normale Wallet kann damit Smart Contract-Funktionalitäten freizuschalten, indem sie bestimmte Kompetenzen an einen externen Smart Contract delegiert. Dieser wird „Invoker“ genannt.

EIP-3074 wird es damit bestehenden Wallets möglich machen, etwa die Gebühren mit Token anstatt Ether zu bezahlen. Der Invoker kann auch Transaktionen mehrerer User bündeln – und damit Gebühren sparen – oder im Auftrag eines Kreditkartenanbieters rückwirkend Token von einer Wallet abziehen. Und so weiter.

EIP 3074 könnte praktisch sein. Indem es bestehenden Wallets die Option gibt, weitere Funktionen freizuschalten, könnte es sich relativ flüssig in die Wallets einfügen, anstatt die User wie EIP-4337 mit zuviel Aufwand zu irritieren.

Führt EIP-3074 neue Gatekeeper ein?

Allerdings gibt es auch Kritik an EIP 3074. Eine Sorge ist, dass es Sicherheitsprobleme einführt. Wenn der Invoker, also der Smart Contract, der anstelle des Users mit dessen Wallet interagiert, einen Sicherheitsfehler hat, können die Guthaben nicht nur eines, sondern sehr vieler User in Gefahr sein. EIP-3074 droht nicht nur, die an einen privaten Schlüssel gebundene solide Sicherheit von Blockchains zu unterminieren, sondern dies auch auf einen Schlag für viele User zu tun. Aus diesem Grund sollen Wallets, die Invoker erlauben, diese gründlich prüfen und manuell freischalten.

Und genau diese Lösung für ein Sicherheitsproblem wird zu einem womöglich noch größeren Problem an sich: Werden übermächtige Wallets wie Metamask kontrollieren, welche Apps und Invoker EIP-3074 benutzen dürfen? Werden sie die Rolle eines Gatekeepers, den Wallets ohnehin schon einnehmen, noch weiter ausbauen? Droht die Bildung von Kartellen, das Abbremsen von Innovation, gar die Regulierung aus der Wallet heraus?

Eine andere Kritik an EIP-3074 ist, dass es zwar einen Fortschritt darstellt, diesen aber nur auf halbem Wege einlöst. Dies könnte es in Zukunft nicht einfacher machen, das gesamte Potenzial von Smart Account Wallets einzulösen, da man sich auf dem bisher Erreichten ausruht.

Martin Köppelmann von Gnosis bringt diese Kritik auf den Punkt: Smart Account Wallets bieten Vorteile sowohl bei der Benutzererfahrung als auch in der Sicherheit – beides ist wünschenswert. EIP-3074 konzentriert sich jedoch fast ausschließlich auf die Benutzeroberfläche. Die vielen Vorteile für die Sicherheit, die Account Abstraction verspricht, bleiben weitgehend uneingelöst. Denn schließlich hat der private Schlüssel weiterhin die unbegrenzte Kontrolle über die Wallet.

EIP-3074 könnte es noch schwerer machen, das vollständige Potenzial von Account Abstraction in Zukunft einzuführen. Denn wenn der Druck wegfällt, könnte sich die Community mit der Hälfte des Machbaren zufriedengeben. Es wäre daher sinnvoller gewesen, meint Martin Köppelmann, auf Basis von EIP-3074 gleich EIP-5003 einzuführen, welches genau dies ermöglichen würde. Aber damit sind wir wohl bei einem anderen Thema.

Was bleibt, ist, dass die Ethereum-User, die noch keine Account Abstraction benutzen, sondern an ihren bewährten und vertrauen Wallets hängen, mit der nächsten Hardfork Ende 2024 oder Anfang 2025 die Option bekommen werden, Smart Contract-Elemente in ihre Accounts zu integrieren. Und das ist, trotz aller berechtigten Kritikpunkte an der Art und Weise, wie dies geschieht, eine starke Aussicht.

Die mobile Version verlassen