Eine der jüngsten Entwicklungen, mit deren Integration in Ethereum begonnen wurde, ist die Ethereum-Kontoabstraktion (EAA), besser bekannt als Ethereum Improvement Proposal (Ethereum Improvement Proposal – EIP 4337), ein neues Paradigma, das die Nutzung von Ethereum-Konten und die Interaktion mit im Netzwerk bereitgestellten dApps erleichtern wird.
Starten Sie mit Bit2Me und tauchen Sie mit einem Vorsprung in die Welt der Kryptowährungen ein. Registrieren Sie sich ganz einfach und erhalten Sie über diesen Link 15 € GRATIS bei Ihrem ersten Einkauf. Warten Sie nicht länger und schließen Sie sich der Krypto-Revolution an! Registrieren
Wallets und ihr Usability-Problem bei Kryptowährungen
Eines der Hauptprobleme bei der Benutzerfreundlichkeit von Kryptowährungen liegt in der Art und Weise, wie wir unsere Konten verwalten. Seit der Einführung von Bitcoin sind wir auf Software angewiesen, die als „Geldbörse für unsere Kryptowährungen“ dient. In Wirklichkeit ist diese Software bzw. Hardware für die Verwaltung unserer privaten und öffentlichen Schlüssel verantwortlich, um auf unsere in der Blockchain aufgezeichneten Kryptowährungen zuzugreifen.
Dieses System wird heute auch in Ethereum verwendet und das aus einem wichtigen Grund: es ist äußerst sicher. Wenn die Software und Hardware gut gebaut sind, ist es unmöglich, diese Schlüssel zu erhalten und daher nicht auf die von uns registrierten Guthaben zuzugreifen.
Daher ist eine der Hauptprämissen bei Krypto: Bewahren Sie Ihre Schlüssel sicher und gut geschützt auf.
Es spielt keine Rolle, ob es sich bei diesen Schlüsseln um eine Binärdatei handelt (wie es bei Bitcoin Core der Fall ist, wo sich alles in einer Datei mit dem Namen wallet.dat befindet) oder um eine Reihe von Wörtern, wie es bei Seed-Phrasen der Fall ist (im Allgemeinen gemäß dem Bitcoin-Standard). BIP-39).
Die sichere Aufbewahrung dieser Schlüssel ist für manche Menschen die größte Herausforderung, eine Herausforderung, bei der viele scheitern und Hunderte oder sogar Millionen Dollar an Wert verloren gehen. alles weil Sobald Sie Ihre Passwörter verloren haben, ist es unmöglich, sie wiederherzustellen., ein Usability-Problem, das viele Menschen von der Branche und der Technologie fernhält.
Während Bei Krypto ist die Prämisse der Dezentralisierung von Geld von grundlegender Bedeutung, ist die Lösung dieses Usability-Problems für eine Massenakzeptanz notwendig. Tatsächlich bedeutet die Lösung, dass mehr Menschen der Technologie vertrauen und somit dezentrales Geld mehr Menschen erreicht.
Eine der ersten Lösungen sind die, die von zentralisierten Börsen und Wallets angeboten werden. Für die Gemeinschaft ist es jedoch nicht ganz zufriedenstellend, insbesondere für diejenigen, die sich für eine vollständige Dezentralisierung des Geldes einsetzen.
Jedoch Was würde passieren, wenn wir die Möglichkeiten der Zentralisierung (z. B. Kontowiederherstellung) mit denen der Dezentralisierung von Wallets vereinen könnten, die wir gewohnt sind (z. B. vollständige Selbstverwahrung)? Genau das macht Ethereum Account Abstraction, und zwar vollständig mithilfe intelligenter Verträge, um eine komplette Infrastruktur aufzubauen, die es uns ermöglicht, Wallets zu konfigurieren, die einfach zu erstellen, sicher und mit ebenso interessanten Optionen wie der Möglichkeit, unser Guthaben wiederherzustellen, ausgestattet sind für den Fall, dass wir den Zugriff auf unsere Schlüssel verlieren.
Kenntnisse über Konten und Transaktionen in Ethereum
Bevor wir weiter untersuchen, wie das Abstraktion des Ethereum-Kontos, müssen wir zunächst verstehen, was ein Konto im Kontext von Ethereum ist und wie es kontrolliert wird. Zunächst sollten Sie wissen, dass es in Ethereum zwei Arten von Konten gibt:
- Vertragskonten: Bei dieser Art von Konten handelt es sich einfach um ein Konto, das auf der Blockchain lebt und dessen Verhalten durch einen Smart Contract definiert wird, der es steuert.
- Externe Konten (EOAs): In diesem Fall handelt es sich bei einem EOA um ein Konto, das von einem öffentlichen/privaten Schlüsselpaar kontrolliert wird. Das heißt, unsere lebenslangen Geldbörsen.
Nachdem wir nun Konten verstanden haben, sprechen wir über Transaktionen. Was ist eine Transaktion? Eine Transaktion ist eine Aufzeichnung eines Ereignisses, das in der Ethereum-Blockchain auftritt. Transaktionen können verwendet werden, um Token zu übertragen, NFTs zu prägen oder mit Smart Contracts zu interagieren.
Transaktionen werden von externen Konten (EOA) initiiert. EOAs sind wie Menschen und haben einen öffentlichen und einen privaten Schlüssel. Der öffentliche Schlüssel wird zum Empfangen von Transaktionen und der private Schlüssel zum Signieren dieser Transaktionen verwendet. Wenn ein EOA eine Transaktion durchführen möchte, signiert er diese mit seinem privaten Schlüssel. Mit dieser Signatur wird überprüft, ob die Transaktion vom Eigentümer der EOA autorisiert wurde.
Bei Transaktionen müssen auch Gasgebühren oder Provisionen gezahlt werden. Gasgebühren werden verwendet, um die Rechenressourcen zu bezahlen, die für die Verarbeitung der Transaktion verwendet werden. Die für eine Transaktion benötigte Gasmenge hängt von ihrer Komplexität ab. Mit diesem Wissen verfügen wir über die Grundlagen, um zu verstehen, wie diese beiden Elemente funktionieren und wie die Ethereum-Kontoabstraktion ihre Funktionsweise verändern wird.
Die Ethereum-Kontoabstraktion verändert die Art und Weise, wie wir unsere Ethereum-Konten verwalten
Ethereum Account Abstraction ist ein Vorschlag, der es Benutzern ermöglichen soll, mit dezentralen Anwendungen (dApps) zu interagieren und dabei Smart Contract Wallets anstelle von External Owned Accounts (EOAs) zu verwenden.
Dies würde die Notwendigkeit für Benutzer, ihre eigenen privaten Schlüssel zu verwalten, vollständig beseitigen. Smart-Contract-Wallets könnten Transaktionen im Namen von Benutzern signieren, würden aber durch die Smart-Contract-Logik gesteuert. Dies würde eine Reihe von Vorteilen ermöglichen, darunter:
- Mehr Sicherheit: Benutzer müssten ihre privaten Schlüssel nicht mehr selbst verwalten, was das Risiko verringert, ihr Geld zu verlieren.
- Nahtlose Benutzererfahrung: Benutzer könnten mit dApps interagieren, ohne sich um die Verwaltung ihrer eigenen Konten kümmern zu müssen.
- Erhöhte Akzeptanz: Die Kontoabstraktion würde die Einführung von dApps durch technisch nicht versierte Benutzer erleichtern.
- Flexibilität– Smart Contract Wallets können so programmiert werden, dass sie unterschiedliche Regeln und Einstellungen haben. Dies ermöglicht Benutzern eine bessere Kontrolle über ihre Konten und Gelder.
Die Kontoabstraktion ist ein Vorschlag, mit dessen Umsetzung auf Ethereum bereits begonnen wurde. Tatsächlich ist der wichtigste Smart Contract, bekannt als EntryPoint Smart Contract, mit dem mit der Bereitstellung dieser Funktionen begonnen wird, wurde bereits in der Ethereum-Kette aktiviert und wurde verwendet, um die Entwicklung dieser neuen Form von Konten auf Ethereum voranzutreiben.
Geschichte der Vorschläge zur Ethereum-Kontoabstraktion
Zu Ethereum Account Abstraction gibt es seit langem eine Reihe von Vorschlägen, die bis ins Jahr 2016 zurückreichen. Zu diesen Vorschlägen zählen:
- EIP-86 (2016): Dieser Vorschlag würde es Benutzern ermöglichen, „Kontoverträge“ zu erstellen, die alle gewünschten Signatur-/Nonce-Prüfungen durchführen, anstatt den Mechanismus zu verwenden, der derzeit in der Transaktionsverarbeitung fest codiert ist.
- EIP-2938 (2020): Dieser Vorschlag würde eine neue Transaktion mit dem Typ AA_TX_TYPE erstellen. Transaktionen dieser Art werden „AA-Transaktionen“ genannt.
- EIP-3074 (2020): Dieser Vorschlag würde es Benutzern ermöglichen, die Kontrolle über ihre EOA an einen Smart Contract zu delegieren. Dies würde es jeder EOA ermöglichen, als Smart Contract Wallet zu fungieren, ohne einen Vertrag bereitzustellen.
Der Grund dafür, dass diese Vorschläge noch nicht umgesetzt wurden, liegt darin, dass sie Änderungen am Konsensschichtprotokoll des Ethereum-Netzwerks erfordern. Diese Änderungen sind schwer umzusetzen und erfordern viel Koordination zwischen verschiedenen Beteiligten. Im Jahr 2021 wurde jedoch ein neuer Vorschlag zur Kontoabstraktion gemacht: EIP-4337. Dieser Vorschlag erfordert keine Änderungen am Konsensschichtprotokoll und kann auf dem bestehenden Ethereum-Netzwerk implementiert werden.
Wie funktioniert die Ethereum-Kontoabstraktion gemäß EIP-4337?
EIP-4337 führt ein neues Konzept namens „User Operations“ ein. Benutzeroperationen sind eine Art von Transaktion, die eine Operation beschreibt, die im Namen eines Benutzers übermittelt werden soll. Benutzeroperationen werden im Wesentlichen in einem „alternativen Mempool oder Alt-Mempool“ gespeichert ein Wartezimmer um Informationen über unbestätigte Transaktionen zu speichern. Knoten im Ethereum-Netzwerk können sich dafür entscheiden, als „Bündeler“ zu fungieren.
An diesem Punkt sammeln die Stitcher die Benutzeroperationen aus dem Alt-Mempool und gruppieren mehrere Benutzeroperationen in einer einzigen Transaktion namens „gruppierte Transaktion«. Sobald sie eine gepoolte Transaktion erstellt haben, senden sie diese an einen globalen „Singleton“-Smart-Vertrag namens „EntryPoint“. In der gesamten Blockchain gibt es nur einen EntryPoint-Smart-Vertrag.
Der Stitcher ruft eine Funktion des EntryPoint-Smart-Vertrags namens handleOps auf. Diese Funktion empfängt die Pakettransaktion und ruft für jedes Konto eine spezielle Funktion auf: validateUserOp. Jedes Smart Contract Wallet muss diese Funktion implementieren. Die Funktion „validateUserOp“ wird verwendet, um die Signatur des Vorgangs zu überprüfen und die Gebühr zu zahlen, wenn das Konto den Vorgang für gültig hält, bevor mit der Ausführung des Vorgangs fortgefahren wird. Jedes Smart-Contract-Wallet muss außerdem eine zweite Funktion implementieren: Es wird erwartet, dass „execute“ aufgerufen wird, um die vom EntryPoint-Vertrag gesendete Operation tatsächlich auszuführen.
Einzigartige Vorteile des Modells
Dank des einzigartigen Ethereum Account Abstraction-Modells werden eine Reihe neuer Funktionen eingeführt, darunter:
Sozialer Aufschwung
Social Recovery ist eine neue Funktion, mit der Benutzer vertrauenswürdige Kontakte hinzufügen können, die ihnen bei der Wiederherstellung ihrer Konten helfen können, wenn sie ihre Startphrase verlieren. Um die soziale Wiederherstellung zu nutzen, erstellen Benutzer eine Liste vertrauenswürdiger Kontakte und weisen ihnen Wiederherstellungsgewichtungen zu. Wenn ein Benutzer seine Startphrase verliert, können seine vertrauenswürdigen Kontakte anhand ihrer Wiederherstellungsgewichtungen darüber abstimmen, wer der neue Kontoinhaber sein soll.
Konten mit mehreren Signaturen
Bei Multi-Signatur-Konten handelt es sich um einen neuen Kontotyp, der für bestimmte Transaktionen mehrere Signaturen erfordert. Dies kann zur Erhöhung der Sicherheit genutzt werden, indem mehrere Personen eine Transaktion genehmigen müssen, bevor sie ausgeführt werden kann. Beispielsweise kann ein Unternehmen ein Konto mit mehreren Signaturen verwenden, um vor der Durchführung einer Zahlung die Genehmigung von zwei oder mehr Administratoren einzuholen.
Batch-Transaktionen
Mit Stapeltransaktionen können Benutzer mehrere Transaktionen gruppieren und mit einer einzigen Signatur signieren. Dadurch können die Gaskosten gesenkt werden, da nicht mehr für jede einzelne Transaktion Gas bezahlt werden muss. Beispielsweise kann ein Nutzer mehrere kleine Zahlungen bündeln, um die Gesamtkosten für Gas zu senken.
Gesponserte Transaktionen
Gesponserte Transaktionen ermöglichen es Benutzern, Transaktionen mit ETH- oder ERC-20-Tokens anstelle von Ether zu bezahlen. Dies kann für Benutzer nützlich sein, die kein Ether haben oder die Zahlung hoher Gasgebühren vermeiden möchten. Beispielsweise könnte ein Benutzer eine Transaktion sponsern, um eine Nachricht an einen Freund zu senden, der kein Ether hat.
Somit stellt die Ethereum-Kontoabstraktion eine deutliche Verbesserung gegenüber herkömmlichen Ethereum-Konten dar. Es macht Konten sicherer, benutzerfreundlicher und erschwinglicher.