paint-brush
Kontoabstraktion könnte das nächste große Ding in Web3 seinvon@0xkishan
518 Lesungen
518 Lesungen

Kontoabstraktion könnte das nächste große Ding in Web3 sein

von Kishan Kumar6m2023/07/10
Read on Terminal Reader
Read this story w/o Javascript

Zu lang; Lesen

Bei der Kontoabstraktion handelt es sich um ein Konzept, das es Benutzern ermöglicht, Smart Contract Wallets anstelle von EOAs zu verwenden. Die Kontoabstraktion zielt darauf ab, alle komplizierten Details zu abstrahieren, die wir derzeit im Zusammenhang mit Konten oder Wallets erheben. EIP-4337 ist ein Vorschlag, der darauf abzielt, die Kontoabstraktion zu implementieren, ohne das Protokoll zu ändern.

People Mentioned

Mention Thumbnail
featured image - Kontoabstraktion könnte das nächste große Ding in Web3 sein
Kishan Kumar HackerNoon profile picture
0-item
1-item

Ich möchte diesen Artikel damit beginnen, Ihnen ein paar Fragen zu stellen:


  • Haben Sie jemals Krypto verloren, weil Sie Ihren privaten Schlüssel verlegt haben?
  • Haben Sie sich entschieden, kein Dapp zu verwenden, weil Sie nicht über den richtigen Benzin-Token verfügten?
  • Die gesamte Benutzererfahrung von Web 3 kann durch eine steile Lernkurve durcheinander gebracht werden.


Wir könnten Instagram oder Twitter nutzen, ohne zu wissen, wie es funktioniert.


Wir müssen uns nicht über die zugrunde liegenden Technologien informieren, um damit beginnen zu können. Aber wenn es um die Blockchain geht, sollte man vorsichtig sein, um welche Netzwerke es sich handelt, welche Token sie senden und an welche Adresse sie senden.


EIP-4337 zielt darauf ab, alle komplizierten Details zu extrahieren, die wir derzeit im Zusammenhang mit Konten oder Wallets erheben .


Um das Konzept zu verstehen, müssen wir die Hintergründe kennen.

Hintergrund

Im Ethereum-Netzwerk gibt es zwei Arten von Konten:

  1. Externe Konten (EOAs)
  2. Intelligente Vertragskonten


EOAs sind mit einem privaten Schlüssel verbunden, der die Kontrolle über den Zugriff auf Gelder oder Verträge bedeutet. Die andere Kontoart ist das Vertragskonto . Ein Vertragskonto verfügt über einen Smart-Contract-Code, den ein einfaches EOA nicht haben kann. Darüber hinaus verfügt ein Vertragskonto nicht über einen privaten Schlüssel. Stattdessen gehört es der Logik seines Smart-Contract-Codes (und wird von ihr kontrolliert).


Da ein Vertragskonto keinen privaten Schlüssel besitzt, kann es zwar keine Transaktion initiieren, aber auf Transaktionen reagieren, indem es andere Verträge aufruft und komplexe Ausführungspfade aufbaut.


Stellen Sie sich Ethereum als eine riesige, dezentrale Staatsmaschine vor. Wann immer jemand mit der Blockchain interagieren muss, tut er dies über Transaktionen, wie zum Beispiel Transfer-Tokens, Stake-Tokens oder die Prägung eines NFT. Konsensregeln regeln die Zustandsänderungen und der Zustand wird global verteilt, sodass jeder Teilnehmer den gleichen Zustand hat.


Das Netzwerk muss wissen, wer die Transaktion durchgeführt hat; Daher muss jede Transaktion signiert werden. In einigen Minderheitenfällen ist dies jedoch möglicherweise nicht der Fall.


Eine Transaktion ändert den Zustand des Netzwerks; Dazu kann es gehören, dass sich die Salden ändern, weil man den Saldo von einem Konto auf ein anderes übertragen hat. Diese Zustandsänderungen erfordern Gebühren; Daher ist mit fast jeder Transaktion eine Gebühr verbunden.

Aber wo liegt das Problem?

Für diejenigen, die mit den Dapps interagieren, ist das gesamte Erlebnis zum Standard geworden, aber denken Sie aus der Perspektive eines Anfängers, der einfach damit beginnen möchte. Es gibt eine steile Lernkurve, die sie möglicherweise davon abhält, überhaupt in Dapp einzusteigen und so die gesamte Adaption von Web3 zu verlangsamen.


Denken Sie an das Überbrücken von Token, das Verpacken von Token, verschiedene Netzwerke, das Speichern privater Schlüssel, das Merken von Mnemoniken usw. Das ist überhaupt nicht der Fall; Was ist, wenn Sie Ihre Mnemonik vergessen haben? In unserem Web 3.0 gibt es keine Schaltfläche „Passwort vergessen“.


Wenn Sie es vergessen, verlieren Sie alle damit verbundenen Gelder. Es gibt keinen Kandidaten, der Ihren Hinterbliebenen nach Ihrem Tod hilft. Bei all diesen Dingen fragt man sich, warum man sich so viel Mühe machen sollte. Warum bleiben Sie nicht in unserer zentralisierten Welt, in der Sie dem Kundendienst eine E-Mail senden und ihn bitten können, bei der Wiederherstellung seines Kontos zu helfen?


Es ist, als würde man einem Neuling eine so große Verantwortung übertragen, dass er sie oft abschüttelt und sich etwas anderem zuwendet.

Aber können wir diese Probleme irgendwie angehen?

Der Kontoabstraktionsvorschlag ist die Antwort. Sie sehen, mit den EOAs sind viele Risiken verbunden. Wenn nicht EOAs, was dann? Das Smart-Konto ist die Antwort.


Durch die Kontoabstraktion können Sie Smart Contract Wallets anstelle von EOAs verwenden. Lassen Sie mich noch mehr auf die Aussage eingehen: Kontoabstraktion ist ein Konzept in Ethereum, das es Benutzern ermöglicht, mit der Blockchain zu interagieren, indem sie ein Smart-Contract-Wallet anstelle eines herkömmlichen externen Kontos (EOA) verwenden.


Wie bereits erwähnt, basieren Smart Contract Wallets nicht auf öffentlicher/privater Kryptographie, sondern auf Code. Dies bedeutet, dass die Logik zur Überprüfung von Transaktionen individuell angepasst werden kann und nicht eng mit den öffentlichen/privaten Schlüsseln verknüpft ist. Code kann flexibel sein; Sie könnten Ihre Logik haben, Ihre ETH auszugeben, Ihr Konto wiederherzustellen oder sogar einen Kandidaten hinzuzufügen.


EIP-4337 ist ein Vorschlag, der darauf abzielt, die Kontoabstraktion zu implementieren, ohne das Ethereum-Protokoll zu ändern. Was bedeutet das? Dieser Vorschlag erfordert keine Schwierigkeiten Gabelung , da es als zusätzliche Schicht auf Ethereum implementiert ist.


Diese Funktion wird das Konto von Ethereum viel flexibler und leistungsfähiger machen.


Lassen Sie uns einige Anwendungsfälle im Detail besprechen:

Sozialer Aufschwung

Was jeden in Web3 beschäftigt, ist die Frage: Was passiert, wenn wir unsere privaten Schlüssel verlieren? Sie werden Ihr gesamtes Geld verlieren, wenn kein leistungsstarker Quantencomputer gebaut wird, der Ihre privaten Schlüssel wiederherstellt, aber auch das ist ein weiter Weg.


Realistisch gesehen gehen alle Ihre Vermögenswerte für immer verloren oder sind für immer gesperrt.


Aber man kann die Kontoabstraktion verwenden, um die Logik Ihres Wallets so anzupassen, dass Sie Ihr Konto über Ihre Freunde oder Familienmitglieder, denen Sie vertrauen (Erziehungsberechtigte), wiedererlangen können.

Stellen Sie sich Guardians als jedes beliebige Konto vor, z. B. ein Kühlhaus, ein Familienmitglied oder einen Drittanbieterdienst. Der Benutzer kann angeben, wem er vertrauen möchte und welche Bedingungen er erfüllen muss, um den Wiederherstellungsprozess durchzuführen.


Nehmen wir an, Ihre privaten Schlüssel werden offengelegt. was wirst du jetzt machen? Kannst du es aendern?

Wenn Sie ein EOA verwenden, z Metamaske , können Sie nur wenig anderes tun, als Ihr gesamtes Geld von Ihrem kompromittierten Konto auf ein anderes Konto zu verschieben. Da es sich um den privaten Schlüssel handelt, der die Transaktion signiert, kann jeder Ihr Geld überweisen, wenn dieser offengelegt wird.


Nehmen wir an, wir haben eine Smart-Contract-Wallet, die die Kontoabstraktion nutzt. Wir können unseren Signaturschlüssel ändern, ohne ein neues Konto zu erstellen, genauso wie wir unsere Passwörter ändern, sobald es kompromittiert wird.


Sie müssen bei Ihren Erziehungsberechtigten eine Wiederherstellung beantragen und ihnen einen neuen Signaturschlüssel zur Verfügung stellen, den Sie verwenden möchten. Der Vormund erhält nicht den Signaturschlüssel, sondern dessen Hash. Wenn genügend Erziehungsberechtigte Ihrem Antrag zustimmen, können Sie Ihren alten Signaturschlüssel durch den neuen ersetzen und weiterhin dasselbe Konto verwenden.

Schalter des toten Mannes

Gott verbietet es, aber was wäre, wenn Sie einen tödlichen Unfall hätten? Wie erhält Ihre Familie Zugang zu Ihrem Geld? Möchten Sie, dass dieser Fonds für immer gesperrt wird? Kein Recht? Sie möchten, dass sie es haben.


Dies können Sie vorerst tun, indem Sie ihnen die privaten Schlüssel mitteilen, mit denen sie auf Ihr Geld zugreifen können. Aber es zu teilen ist nicht immer der beste Weg. Die Weitergabe des privaten Schlüssels ist so, als würde man die gesamte damit verbundene Verantwortung übertragen.


Gibt es eine andere Möglichkeit, als den Schlüssel selbst zu teilen?


Zum Glück gibt es das, Dead Man's Switch kann hier helfen. Betrachten Sie es als einen Mechanismus, der eine Aktion oder ein Ereignis auslöst, wenn der Kontoinhaber nicht mehr auf dieser Welt ist. In der Kontoabstraktion kann eine Logik eingerichtet werden, um Gelder oder Daten auf ein anderes Konto zu übertragen. Doch wie kann man wissen, ob der Kontoinhaber nicht mehr existiert?


Auch hier kommt es darauf an, wie Sie es wollen. Man kann überprüfen, ob der Benutzer am Leben ist, indem man ihn auffordert, regelmäßig ein Signal oder einen Herzschlag zu senden (wie wir es in verteilten Systemen tun, um zu wissen, ob ein Knoten aktiv oder deaktiviert ist). Wenn der Benutzer das Signal nicht innerhalb einer bestimmten Zeit sendet, löst der Totmannschalter aus und führt die vom Eigentümer definierte Logik aus.

Batch-Transaktionen

Normalerweise sind mehrere Genehmigungen erforderlich, wenn Sie ein neues Dapp verwenden und Ihre Münzen austauschen möchten. Ein Benutzer könnte einen Smart Contract einrichten, um verschiedene Transaktionen gleichzeitig durchzuführen, wodurch Transaktionsgebühren gespart und der Prozess effizienter gestaltet wird.

Es ist nicht erforderlich, Native Gas-Token zu verwenden

Wenn Sie irgendeine Art von Transaktion im Ethereum-Netzwerk durchführen möchten, müssen Sie Gasgebühren zahlen, und diese Gebühr wird normalerweise in ihrem nativen Token, der ETH, bezahlt. Aber was wäre, wenn Sie nur USDT in Ihrer Brieftasche hätten?


Leider müssen Sie einen Teil Ihres USDT in ETH umtauschen, wofür Umtauschgebühren anfallen, was uns wieder auf den Punkt bringt. Mit der Kontoabstraktion könnte jedoch ein Smart Contract eingerichtet werden, um die Transaktionsgebühren in einem anderen Token zu bezahlen. Dadurch wird das Benutzererlebnis deutlich verbessert.


Technische Details finden Sie in diesem Artikel: https://eips.ethereum.org/EIPS/eip-4337



Vielen Dank, dass Sie sich die Zeit genommen haben, diesen Artikel zu lesen. Bitte abonnieren Sie mich , damit Sie keine Updates von mir verpassen. Für weitere interessante Themen können Sie auch meine persönliche Website besuchen.