Das Internet ist ein wesentlicher Bestandteil unseres Alltags, doch bevor es sich verbreitete, wussten nur wenige Nutzer davon und nutzten es entsprechend. Die Blockchain-Technologie befindet sich in der gleichen Situation und zielt darauf ab, den gleichen Status wie Web2 zu erreichen und im täglichen Leben nützlich zu sein. Account Abstraction ist ein Projekt, das die Masseneinführung von Kryptowährungen sicherstellen könnte. In diesem Artikel werden diese neue Technologie, ihre Funktionsweise und Fälle der Kontoabstraktion erläutert.
Um die Idee hinter der Kontoabstraktion und ihren potenziellen Nutzen für das Ethereum-Ökosystem und die Kryptowährungsbranche vollständig zu verstehen, müssen wir die verschiedenen Arten von Konten verstehen, die wir in Ethereum haben, und wie die Kontoabstraktion darauf abzielt, die Dinge zu verbessern.
Erstens gibt es bei Ethereum zwei Arten von Konten:
Diese Konten werden von Benutzern außerhalb des Blockchain-Ökosystems kontrolliert und verwaltet. Sie werden über öffentlich-private Ley-Paare verwaltet und der Benutzer, der den privaten Schlüssel besitzt, kann die im EOA gespeicherten Vermögenswerte verwenden.
EOAs verwenden 12, 18 oder 24 Wortfolgen, sogenannte Seed-Phrasen. Diese Wörter werden generiert, wenn ein Benutzer sein Wallet einrichtet. Die EOA verwendet diese Startphrase, um einen privaten Schlüssel zu generieren, den der Benutzer zum Signieren von Transaktionen verwendet.
Die Seed-Phrase ist der Schlüssel zu den Wallets, und Benutzer müssen ihre Seed-Phrase schützen, um sie vor Hacks und Diebstählen zu schützen. Wenn der private Schlüssel irgendwann verloren geht, ist die Seed-Phrase die einzige Möglichkeit für den Benutzer, Zugriff auf die Neugenerierung des privaten Schlüssels zu erhalten und so die Türen zu gespeicherten Vermögenswerten zu öffnen.
EOAs sind ein wesentlicher Bestandteil des Designs des Ethereum-Systems. EOAs versorgen das Netzwerk mit Strom und können nur dann einen Zustandsübergang durchlaufen, wenn ein EOA eine Transaktion startet und ETH zur Zahlung von Gasgebühren nutzt. Obwohl EOAs für das Ethereum-Ökosystem von wesentlicher Bedeutung sind, sind ihre Funktionen und Flexibilität begrenzt.
EOAs können zwei grundlegende Funktionen erfüllen:
Diese Funktionen, so wichtig sie für das Ethereum-Ökosystem auch sein mögen, sind nicht ohne Mängel. Zu diesen Mängeln zählen unter anderem:
Seed-Phrasen sind die einzigen mit EOAs verbundenen Wertpapiere. Wenn Benutzer also ihre privaten Schlüssel und ihre Seed-Phrase verlieren, verlieren sie den Zugriff auf ihre gespeicherten Assets, da es für den Fall, dass so etwas passiert, keine Wiederherstellungsoption gibt.
Besitzer von EOAs müssen jede Transaktion manuell unterzeichnen, sodass kein Raum für Automatisierung oder Anpassung von Transaktionen bleibt.
ETH ist der Token, mit dem die Gasgebühren im Ethereum-Netzwerk bezahlt werden, und Besitzer von EOAs müssen über einen Restbetrag an EOAs verfügen und über ETH verfügen, um die Gasgebühren für jede Transaktion zu decken. Sie können für solche Zahlungen keinen anderen Token verwenden.
Das Ökosystem ist nicht für Benutzer geeignet, die gerade erst in das System einsteigen, was zu einer insgesamt schlechten Benutzererfahrung führt.
Dabei handelt es sich um Smart Contracts, die als Krypto-Wallets fungieren. Es ermöglicht Benutzern, verschiedene Logiken in die Smart Contracts zu programmieren und so die Transaktionen anpassbar zu machen, mit dem zusätzlichen Vorteil, dass den Konten weitere Funktionen hinzugefügt werden können.
Allerdings können Vertragskonten nicht eigenständig funktionieren. Sie können keine Transaktionen initiieren und bestimmte Aktionen nur ausführen, wenn Transaktionen von einer EOA den Smart-Contract-Code auslösen. Vertragskonten verfügen außerdem nicht über private Schlüssel oder Seed-Phrasen.
Um ein Vertragskonto zu betreiben, müssen Benutzer über ein EOA mit einem ETH-Guthaben verfügen, was es für Benutzer einfacher und schwieriger macht, ein Vertragskonto zu führen, als ein unabhängiges EOA zu betreiben.
Quelle: Metamask
EOAs haben im Laufe der Jahre ihre Verwundbarkeit gezeigt. Sein größter Nachteil ist der lange und ermüdende Prozess, der beim Initiieren einer Transaktion erforderlich ist, sowie das Fehlen von Sicherheits- und Kontowiederherstellungsdiensten, wenn der Benutzer seinen privaten Schlüssel verliert.
Die Kontoabstraktion ist ein Vorschlag für ein Blockchain-Systemparadigma, das es Benutzern ermöglicht, intelligente Vertrags-Wallets anstelle der üblichen EOAs zu verwenden. Dieser Vorschlag schlägt die Abschaffung von EOAs bei der Durchführung von Transaktionen vor.
Die Kontoabstraktion eröffnet mehrere Möglichkeiten: signaturlose Transaktionen, gemeinsame Wallets, Bundle-Signatur, Whitelist-Smart-Contracts, Kontrolle der Abflussrate und einfache Wallet-Wiederherstellung, wenn private Schlüssel verloren gehen. Diese Ergänzungen machen web3 für Benutzer sicherer, schneller und flexibler.
Die Kontoabstraktion geht auf die Gründung von Ethereum zurück. Im Laufe der Jahre wurden viele Ansätze zur Abstraktion von Blockchain-Konten getestet. Sie kamen als Ethereum Improvement Proposals, EIP-86 und EIP-2938. Diese Versionen scheiterten an der praktischen Anwendung und sind derzeit inaktiv.
EIP-3074 ist ein weiterer Vorschlag zur Kontoabstraktion, der die Verwendung gesponserter Transaktionen vorschlägt, anstatt zu versuchen, Smart Contracts in EOAs umzuwandeln. Es ermöglichte Benutzern, die Kontrolle über ihre EOA einem Smart Contract zu übertragen, was Entwicklern eine flexible Plattform zum Erstellen neuer Transaktionsmodelle für EOAs bot. Benutzer könnten die Vorteile der Kontoabstraktion nutzen, ohne einen Vertrag abschließen zu müssen.
Im Jahr 2021 veröffentlichten Vitalik Buterin, der Gründer von Ethereum, und andere prominente Blockchain-Profis einen Vorschlag zur Kontoabstraktion, der darauf abzielt, die Benutzererfahrung zu verbessern, die Sicherheit von Wallets zu erhöhen und vieles mehr. Dieser neue Vorschlag, EIP-4337, zeigt, wie eine Kontoabstraktion erreicht werden kann, indem man sich auf eine Infrastruktur auf hoher Ebene und nicht auf Änderungen auf der Konsensebene verlässt. Es ist bereits seit einiger Zeit im Mainnet aktiv und nun konzentrieren sich die Entwickler auf die Entwicklung von Wallets, die EIP-4337 unterstützen und es damit EVM-kompatibel machen.
Bei der Kontoabstraktion werden fremde Konten und Vertragskonten in nur einem Konto zusammengeführt. Es kann verschiedene Funktionen beider Konten, wie z. B. Signaturprüfung und Gaszahlung, aus den Kernprotokollen in die Ethereum Virtual Machine (EVM) verlagern.
Die Kombination dieser beiden Konten wird als Smart Contract oder Abstracted Account Wallet bezeichnet. Intelligente Verträge verhalten sich völlig anders als EOAs, indem sie UserOperations verwenden, anstatt reguläre Transaktionen zu senden, wie es bei EOAs der Fall ist. UserOperations stellen Vorgänge dar, die im Namen des Benutzers ausgeführt werden.
Das UserOperation-Objekt enthält mehrere Datenelemente, die die Art der Transaktion, das Token-Limit und die Gasgebühr in mehreren Transaktionsphasen angeben. Intelligente Konten senden UserOperations an einen gemeinsamen Wartebereich namens Mempool, der UserOperations beherbergt.
Diese UserOperations werden von Bundlern gebündelt, die ähnlich wie Knoten funktionieren, die reguläre Transaktionen überprüfen. Sie verwenden außerdem dieselbe Logik wie Mining- und Validator-Knoten, um Transaktionen in einer Reihenfolge anzuordnen, die den größten Wert generiert. Der Bundler, der die UserOperations enthält, wird dann über einen Einstiegspunkt gesendet, an dem jede einzelne UserOperation mithilfe verschiedener Funktionen überprüft wird.
Ein Beispiel dafür, wie die Kontoabstraktion funktioniert, ist ihre Implementierung in Argent Wallet. Argent ist ein intelligentes Vertrags-Wallet, das Benutzern ein nahtloses, effizientes und sicheres Erlebnis bietet. Argent hat wichtige Funktionen im Zusammenhang mit der Kontoabstraktion wie Social Recovery, Multi-Call oder On-Chain-Betrugsüberwachung entwickelt.
Die Kontoabstraktion wurde erstmals als neueste Lösung von Ethereum für die Wallet-Sicherheit eingeführt. Mehrere bekannte Blockchain-Experten, darunter der Gründer von Ethereum, haben den Kontoabstraktionsvorschlag verfasst, und dieser Vorschlag war mit bestimmten Zielen ausgestattet, die mit der Kontoabstraktion erreicht werden sollten.
Zu den Zielen gehören unter anderem:
Die meisten Kryptowährungsprojekte zielen darauf ab, das Benutzererlebnis zu verbessern und den Benutzern den Beitritt zum Ökosystem und die nahtlose Nutzung der zahlreichen Plattformen zu erleichtern. Die Kontoabstraktion macht dies auf folgende Weise möglich:
Account Abstraction wandelt EOA in Smart Contracts um, wobei die Logik verwendet wird, um die Anforderungen für den Abschluss einer Transaktion festzulegen. Dies bedeutet, dass der Unterzeichner, der Transaktionen mit einem privaten Schlüssel autorisiert, und das Konto getrennt werden können, was zu mehreren Möglichkeiten der Kontonutzung führt.
Die Kontoabstraktion könnte es der EOA ermöglichen, verschiedene Aktionen durchzuführen, beispielsweise die Verwendung unterschiedlicher oder keiner Schlüssel zur Autorisierung von Transaktionen. Es könnte auch sein, dass der Unterzeichner des Kontos alle zwei Wochen wechselt.
Dadurch wird es für Benutzer einfacher, ihre Konten nach Belieben zu ändern und zu verwenden. Durch die Einführung von Social Recovery müssen sich Benutzer nicht mehr um die Sicherung ihres privaten Schlüssels kümmern und erhalten so ein flexibleres und entgegenkommenderes Konto, was zu einem besseren Erlebnis für den Benutzer bei der Nutzung der Plattform und ihrer Dienste führt.
Die Kontoabstraktion hat verschiedene Verwendungszwecke, einer davon ist die Erhöhung der Wallet-Sicherheit. EOAs sind mit mehreren Einschränkungen ausgestattet, die Benutzer einschränken, die mit Blockchain nicht vertraut sind. Zu den Einschränkungen gehören:
Diese Einschränkungen stellen eine Herausforderung für den durchschnittlichen Benutzer dar, der an Blockchain- und Web3-Bereichen teilnehmen möchte. Diese Einschränkungen hindern Benutzer daran, ihre Geldbörsen zu schützen und ihre Transaktionen zu schützen, was zu Fehlern führt, die die Sicherheit der Gelder auf den Konten gefährden könnten.
Die meisten Benutzer sind mit der Funktionsweise von Kryptokonten und -transaktionen noch nicht vertraut. Daher neigen sie dazu, kostspielige Fehler zu machen, die zu finanziellen Verlusten führen können. Durch die Kontoabstraktion erhalten Benutzer eine benutzerfreundlichere Plattform, die es ihnen erleichtert, sich zurechtzufinden und deren Funktionsweise zu verstehen, wodurch es einfacher wird, ihre Konten sicher zu schützen.
Die Kontoabstraktion behebt dieses Problem, indem sie Benutzern die Möglichkeit gibt, durch die Implementierung programmierbarer Logik klare Transaktionsregeln festzulegen, die die Transaktionsaktivitäten einer Wallet vorschreiben. Logik kann als eine Schicht über dem Portemonnaie betrachtet werden, bevor Aktivitäten ausgeführt werden.
Die Kontoabstraktion hat, wie jede Innovation, ihre kleinen Mängel. Obwohl es zahlreiche Vorteile bietet und die Erfahrung der Benutzer in den Bereichen Sicherheit und Benutzererfahrung erheblich verbessern kann, weisen diese intelligenten Verträge dennoch Nachteile auf, wie zum Beispiel:
Die Kontoabstraktion erleichtert die Interaktion zwischen Benutzern und Smart-Contract-Konten, ohne Ethereum-Adressen und private Schlüssel zu verwenden. Dies bietet Benutzern einige Anwendungsfälle mit vorhandenen Anwendungen. Plattformen, die auf der Kontoabstraktion basieren, werden sich auf mehrere Bereiche auswirken und das Blockchain-System um Schlüsselfunktionen erweitern wie:
Mit der Kontoabstraktion können Benutzer Konten mit vertrauten Methoden erstellen, anstatt den normalen Prozess der Generierung und ordnungsgemäßen Verwaltung kryptografischer Schlüsselpaare durchzuführen. Dies erleichtert den Einstieg neuer Benutzer in das Blockchain-System erheblich.
Bei EOAs müssen Benutzer jede Transaktion manuell initiieren und signieren, und es gibt keine Möglichkeit, diesen Prozess zu automatisieren. Mit Smart Contracts können Benutzer bestimmte Parameter wie Ausgabenlimits, Gaslimits, Zugriff auf bestimmte Token und vieles mehr auswählen und festlegen.
Eine weitere wichtige Funktion für die Kontoabstraktion ist die Verwendung von ERC-20-Tokens für jede Plattformtransaktion. Dies würde die Notwendigkeit für Benutzer beseitigen, ihr ETH-Guthaben zu halten, zu tauschen und auszugeben, um ihre Transaktionen abzuschließen.
Durch die Kontoabstraktion können Benutzer verschiedene Ebenen des Wallet-Zugriffs mit mehreren Benutzern teilen. Benutzer können eine Mehrfachsignatur festlegen, bei der zwei oder mehr Benutzer signieren müssen, damit eine Transaktion ausgeführt werden kann.
Da Benutzer mithilfe der Kontoabstraktion ihre Konten nun frei steuern können, können sie ihre Konten so einrichten, dass regelmäßige Zahlungen erfolgen, anstatt dieselbe Transaktion wiederholt zu wiederholen.
Smart-Konten erfordern aus Sicherheitsgründen keine Startphrasen, was bedeutet, dass Kontoinhaber mehrere Geräte, andere Benutzer oder Dienste von Drittanbietern als Wächter ernennen können. Dies hilft in Situationen, in denen Benutzer ihre Anmeldeinformationen verlieren. Die Erziehungsberechtigten können eine Transaktion signieren, um neue Anmeldeinformationen zuzuweisen und Zugriff auf das Smart-Konto zu erhalten.
Die Möglichkeiten der Kontoabstraktion sind zahlreich und sobald sie vollständig in das Blockchain-Ökosystem integriert sind, werden Benutzer und Entwickler von den unterschiedlichen Implementierungen stark profitieren.