Wallets wie MetaMask müssen benutzerfreundlicher werden

Nach der lang erwarteten Fusion von Ethereum ist es ein idealer Zeitpunkt, darüber nachzudenken, wie wir auch Smart Contracts verbessern können. Smart Contracts, im Wesentlichen Apps, die auf Blockchains laufen, sind eine wichtige Komponente unserer Web3-Anwendungen. Die Interaktion mit ihnen bleibt jedoch ziemlich gefährlich, insbesondere für Nicht-Entwickler. Viele der Vorfälle, bei denen Benutzer ihre Krypto-Assets verlieren, werden durch fehlerhafte oder böswillige Smart Contracts verursacht.

Als Entwickler von Web3-Apps ist dies eine Herausforderung, über die ich oft nachdenke, insbesondere da immer wieder neue Benutzer in verschiedene Blockchain-Anwendungen einsteigen. Um einem Smart Contract voll vertrauen zu können, muss ein Verbraucher es wissen exakt was es tun wird, wenn sie eine Transaktion tätigen – denn anders als in der Web2-Welt gibt es keine Kundensupport-Hotline, um anzurufen und Geld zurückzuholen, wenn etwas schief geht. Aber derzeit ist es fast unmöglich zu wissen, ob ein Smart Contract sicher oder vertrauenswürdig ist.

Verwandte: Liquid Staking ist der Schlüssel zur Interchain-Sicherheit

Eine Lösung besteht darin, Wallets selbst intelligenter zu machen. Was wäre zum Beispiel, wenn Wallets uns sagen könnten, ob die Interaktion mit einem Smart Contract sicher ist? Es ist wahrscheinlich unmöglich, das mit 100-prozentiger Sicherheit zu wissen, aber Wallets könnten zumindest viele der Signale aggregieren und anzeigen, nach denen Entwickler bereits suchen. Dies würde den Prozess einfacher und sicherer machen, insbesondere für Nicht-Entwickler.

Hier ist ein tieferer Blick auf die Vor- und Nachteile von Smart Contracts, warum sie jetzt wie der Wilde Westen erscheinen und wie wir die UX für ihre Verwendung verbessern könnten.

Das Versprechen und die Gefahr von Smart Contracts

Für Entwickler hat die Verwendung eines Smart Contracts als Backend für ihre App ein enormes Potenzial. Es erhöht auch das Potenzial für Bugs und Exploits. Es ist großartig, dass Smart Contracts von Entwicklern erstellt werden können, ohne jemanden um Erlaubnis zu fragen, aber das kann Benutzer auch einem erheblichen Risiko aussetzen. Wir haben jetzt Apps, die Hunderte von Millionen Dollar ohne Sicherheitsgarantien abwickeln. So wie es aussieht, müssen wir einfach darauf vertrauen, dass diese Apps fehlerfrei sind und halten, was sie versprechen.

Viele Nicht-Entwickler sind sich der damit verbundenen Sicherheitsprobleme nicht einmal bewusst und treffen bei der Interaktion mit Blockchain-basierten Apps nicht die entsprechenden Vorsichtsmaßnahmen. Der durchschnittliche Benutzer unterschreibt möglicherweise eine Transaktion und denkt, dass sie eine Sache tun wird, nur um festzustellen, dass der Smart Contract etwas ganz anderes tut. Aus diesem Grund sind böswillige Smart Contracts ein primärer Angriffsvektor für schlechte Akteure.

Warum sind Smart Contracts der Wilde Westen?

Wenn eine Web3-App einen Smart-Contract-Aufruf tätigt, wissen Sie nicht genau, was die Transaktion bewirken wird, bis Sie sie tatsächlich ausführen. Wird es Ihr nicht fungibles Token (NFT) prägen oder wird es Ihr Geld und Ihre Token an einen Hacker senden? Diese Unvorhersehbarkeit gilt natürlich für jede Online-Anwendung, nicht nur für Web3-Apps; vorherzusagen, was Code tun wird, ist sehr schwer. Aber es ist ein größeres Problem in der Web3-Welt, da die meisten dieser Apps von Natur aus hohe Einsätze sind (sie sind für den Umgang mit Ihrem Geld gebaut) und es so wenig Schutz für die Verbraucher gibt.

Der App Store ist aufgrund des Überprüfungsprozesses von Apple weitgehend sicher, aber das gibt es in Web3 nicht. Wenn eine iOS-App anfängt, das Geld der Benutzer zu stehlen, wird Apple sie sofort deaktivieren, um Verluste zu mindern und das Konto ihres Erstellers zu widerrufen.

Verwandt: Lateinamerika ist bereit für Krypto – integrieren Sie es einfach in seine Zahlungssysteme

Schädliche Smart Contracts hingegen können nicht entfernt werden von irgendjemandem. Es gibt auch keine Möglichkeit, gestohlene Vermögenswerte wiederzuerlangen. Wenn ein böswilliger Vertrag Ihre Brieftasche leert, können Sie die Transaktion nicht einfach bei Ihrem Kreditkartenunternehmen anfechten. Handelt es sich um einen anonymen Entwickler, wie es bei böswilligen Verträgen generell der Fall ist, besteht oft nicht einmal die Möglichkeit, rechtliche Schritte einzuleiten.

Aus Entwicklersicht ist es viel besser, wenn der Code für einen Smart Contract Open Source ist. Beliebte Smart Contracts veröffentlichen normalerweise ihren Quellcode – eine enorme Verbesserung gegenüber Web2-Apps. Aber selbst dann ist es leicht zu übersehen, was wirklich vor sich geht. Es kann auch sehr schwierig sein, vorherzusagen, wie der Code in allen Szenarien ausgeführt wird. (Betrachten Sie dieses lange, beängstigende Twitter Faden von einem erfahrenen Entwickler, der fast auf einen komplexen Phishing-Betrug hereingefallen wäre, selbst nachdem er die entsprechenden Verträge gelesen hatte. Erst beim zweiten genaueren Hinsehen bemerkte er den Exploit.)

Hinzu kommt, dass Menschen oft unter Druck gesetzt werden, schnell zu handeln, wenn sie mit Smart Contracts interagieren. Betrachten Sie einen NFT-Drop, der von Influencern beworben wird: Die Verbraucher werden besorgt sein, dass die Kollektion schnell ausverkauft sein könnte, also versuchen sie oft, eine Transaktion so schnell wie möglich durchzuführen, und ignorieren dabei alle Warnsignale, auf die sie stoßen könnten.

Kurz gesagt, dieselben Funktionen, die Smart Contracts für Entwickler leistungsfähig machen – wie z. B. genehmigungsfreies Veröffentlichen und programmierbares Geld – machen sie für Verbraucher ziemlich gefährlich.

Ich glaube nicht, dass dieses System grundlegend fehlerhaft ist. Aber es gibt eine Menge Möglichkeiten für Web3-Entwickler wie mich, Verbrauchern, die heute Wallets und Smart Contracts verwenden, bessere Leitplanken zu bieten.

Die UX von Wallets und Smart Contracts heute

Wallets wie MetaMask fühlen sich in vielerlei Hinsicht an, als wären sie für Entwickler geschaffen worden. Sie zeigen viele tiefgreifende technische Details und Blockchain-Minutien, die beim Erstellen von Apps nützlich sind.

Das Problem dabei ist, dass auch Nicht-Entwickler MetaMask verwenden – ohne zu verstehen, was alles bedeutet. Niemand hat erwartet, dass Web3 so schnell zum Mainstream wird, und Wallets haben die Bedürfnisse ihrer neuen Benutzerbasis noch nicht ganz erreicht.

Verwandt: Lernen Sie von Celsius – Verhindern Sie, dass Börsen Ihr Geld beschlagnahmen

MetaMask hat haben bereits großartige Arbeit geleistet, indem sie die „mnemonische Phrase“ in „geheime Phrase“ umbenannt haben, um zu verhindern, dass Verbraucher sie unwissentlich mit Hackern teilen. Es gibt jedoch noch viel Raum für Verbesserungen.

Werfen wir einen Blick auf die Benutzeroberfläche (UI) von MetaMask, gefolgt von ein paar Modellen, die ich erstellt habe, um einige potenzielle Verbesserungen zu skizzieren, die Verbraucher in die „Grube des Erfolgs.“ (Übrigens dient MetaMask hier als Referenz, da es in der Web3-Welt stark verwendet wird, aber diese UI-Ideen sollten auch für so ziemlich jede Wallet-App gelten.) Einige dieser Design-Verbesserungen könnten heute erstellt werden, während andere möglicherweise technisch erforderlich sind Fortschritte auf der Smart-Contract-Seite.

Das Bild unten zeigt, wie das aktuelle Transaktionsfenster von MetaMask Smart Contract aussieht.

Wir sehen die Adresse des Smart Contracts, mit dem wir interagieren, die Website, die die Transaktion initiiert hat, und dann viele Details über die Gelder, die wir an den Vertrag senden. Allerdings gibt es keinen Hinweis darauf was dieser Vertragsaufruf tut oder irgendein Indikator dafür, dass es ist sicher Mit etwas interagieren.

Mögliche Lösungen zur Verbesserung von Smart Contracts

Was wir hier wirklich gerne sehen würden, sind Signale, die uns als Endbenutzer helfen festzustellen, ob wir dieser intelligenten Vertragstransaktion vertrauen oder nicht. Denken Sie als Analogie an das kleine grüne oder rote Schloss in der Adressleiste moderner Webbrowser, das anzeigt, ob die Verbindung verschlüsselt ist oder nicht. Dieser farbcodierte Indikator hilft unerfahrenen Benutzern dabei, potenzielle Gefahren zu vermeiden, während erfahrene Benutzer ihn bei Bedarf einfach ignorieren können.

Als visuelles Beispiel sind hier zwei schnelle User Experience (UX)-Designmodelle von MetaMask-Transaktionen – eines, das wahrscheinlich sicher ist, und eines, das weniger sicher ist.

Hier sind einige der Signale in meinem Modell:

  • Wird der Quellcode des Vertrags veröffentlicht? Open-Source-Verträge sind im Allgemeinen vertrauenswürdiger, da jeder Entwickler sie lesen kann, um Fehler und bösartigen Code zu finden. MetaMask enthält bereits verschiedene Links zu Etherscan, daher wäre dies ein einfaches und bequemes Signal zum Hinzufügen.
  • Audit-Punktzahl. Ein Audit durch Dritte ist ein weiteres Signal, das die Vertrauenswürdigkeit bestimmen kann. Die wichtigste Implementierungsfrage hier ist, wie diese Punktzahl bestimmt wird. Gibt es dafür bereits anerkannte Standards? Wenn nicht, könnte eine einfache Möglichkeit darin bestehen, Etherscan zu verwenden, das das Hochladen von Audits unterstützt. MetaMask könnte in diesem Beispiel auch eine eigene Liste von Prüfern führen oder sich auf eine Liste von Drittanbietern verlassen. (Soweit ich das beurteilen kann, tut MetaMask dies bereits für NFT-APIs und Token-Erkennung.) In Zukunft kann man sich leicht eine dezentrale autonome Organisation vorstellen, um Audit-Scores dezentraler zu bestimmen.
  • Was kann diese Transaktion bewirken? Kann es externe Verträge abrufen und wenn ja, welche? Das wäre sehr schwer zu bestimmen, aber ich frage mich, ob eine einfache Version für Open-Source-Verträge machbar wäre. Es gibt bereits viele automatisierte Smart-Contract-Schwachstellen-Scanner da draußen. Wenn dies für Solidity nicht möglich ist, frage ich mich, ob wir eine Programmiersprache für intelligente Verträge entwickeln könnten tut erlauben diese Ebene der statischen Analyse. Vielleicht könnten einzelne Funktionen die Berechtigungen deklarieren, die sie benötigen, und der Compiler könnte die Konformität garantieren.
  • Sicherheitstipps und Schulungen. Wenn ein intelligenter Vertrag nicht viele Signale der Vertrauenswürdigkeit aufweist (siehe Mock-up oben rechts), könnte die Benutzeroberfläche geeignete Vorsichtsmaßnahmen empfehlen, z. B. die Überprüfung, ob die Vertragsadresse korrekt ist, und die Verwendung eines anderen Kontos. Dies sind Vorschläge im orangefarbenen Text, im Gegensatz zu rotem, da ein Mangel an Signalen nicht unbedingt gefährlich ist; Hier empfehlen wir den Benutzern lediglich, bei ihren nächsten Schritten etwas vorsichtiger zu sein.

Wie viele vorhandene Funktionen in MetaMask können diese vorgeschlagenen Funktionen in den Einstellungen deaktiviert werden.

In eine sicherere Zukunft

In Zukunft wird es wahrscheinlich viele sicherheitsorientierte Tools geben, die auf den primitiven Komponenten basieren, die Blockchains bieten. Zum Beispiel ist es wahrscheinlich, dass Versicherungsprotokolle, die Benutzer vor fehlerhaften Smart Contracts schützen, alltäglich werden. (Diese existieren bereits, aber sie sind immer noch eine ziemliche Nische.)

Verwandt: Was wird den wahrscheinlichen Bullenlauf von Krypto im Jahr 2024 antreiben?

Verbraucher verwenden jedoch bereits in diesen frühen Tagen Web3-Apps, daher würde ich gerne sehen, dass die Entwicklergemeinschaft weitere Schutzmaßnahmen für sie hinzufügt jetzt. Einige einfache Verbesserungen an Brieftaschen könnten viel bewirken. Einige der oben genannten Ideen würden dazu beitragen, unerfahrene Benutzer zu schützen und gleichzeitig den Transaktionsprozess für Web3-Veteranen zu rationalisieren.

Aus meiner Sicht ist alles außerhalb des Handels mit Krypto-Assets auf Coinbase (oder anderen großen Unternehmen) für den Durchschnittsverbraucher immer noch viel zu riskant. Wenn Freunde und Familie nach der Einrichtung einer selbstverwahrten Krypto-Geldbörse fragen, um Web3-Apps zu verwenden (seien wir ehrlich – normalerweise, um NFTs zu kaufen), beginnen Sie immer damit, sie vor den Risiken zu warnen. Das schreckt manche ab, aber die Entschlosseneren wollen sie trotzdem nutzen. Wenn unsere Brieftaschen intelligenter sind, können wir uns viel besser fühlen, wenn wir die nächste Welle neuer Benutzer in Web3 einbinden.

Devin Abbott ist der Gründer von Deco, einem von Airbnb übernommenen Startup. Er ist spezialisiert auf Design- und Entwicklungstools, React- und Web3-Anwendungen, zuletzt bei The Graph.

Dieser Artikel dient allgemeinen Informationszwecken und soll nicht als Rechts- oder Anlageberatung verstanden werden. Die hier geäußerten Ansichten, Gedanken und Meinungen sind allein die des Autors und spiegeln oder repräsentieren nicht unbedingt die Ansichten und Meinungen von Cointelegraph.


source site-1

Leave a Reply