Punti chiave:

  • L'EIP-6963 proposto ha lo scopo di risolvere i problemi di conflitto che sorgono quando gli utenti tentano di utilizzare più fornitori di portafogli in un unico browser web.

  • EIP-6963 risolve il problema per gli utenti che hanno installato più estensioni del browser secondo lo standard EIP-1193.

  • Questa soluzione riduce la barriera d'ingresso per i nuovi fornitori di portafogli e migliora l'esperienza dell'utente sulla rete Ethereum.

Il nuovo EIP-6963 proposto intende affrontare i problemi di conflitto che si verificano quando gli utenti tentano di utilizzare diversi fornitori di portafogli nello stesso browser web. Questi conflitti possono danneggiare l'esperienza dell'utente, interferire con il controllo sull'interfaccia del portafoglio Ethereum e complicare le interazioni con la dApp in questa situazione.

Problemi attuali

Un approccio di rilevamento alternativo per i provider EIP-1193 a window.ethereum consente di trovare più provider di portafogli inseriti su una pagina Web utilizzando gli eventi finestra di Javascript.

Oggi, i fornitori di portafogli che forniscono estensioni del browser devono inserire i loro fornitori di Ethereum (EIP-1193) nello stesso oggetto finestra window.ethereum; tuttavia, ciò causa conflitti per i consumatori che potrebbero installare molte estensioni del browser.

Le estensioni del browser vengono caricate in una sequenza inaspettata e instabile sulla pagina web, dando vita a uno scenario di gara in cui l'utente non ha alcuna influenza su quale fornitore di portafoglio verrà scelto per esporre l'interfaccia Ethereum sotto l'oggetto window.ethereum. Nella maggior parte dei casi, vince l’ultimo portafoglio che viene caricato.

Ciò non solo peggiora l'esperienza dell'utente, ma aumenta anche la barriera all'ingresso di nuove estensioni del browser poiché agli utenti è consentito installare solo un'estensione del browser alla volta.

Diverse estensioni del browser cercano di mitigare questo problema aspettando che la loro iniezione sovrascriva lo stesso oggetto window.ethereum, con conseguente concorrenza sleale e mancanza di interoperabilità per i fornitori di portafogli.

Qual è la soluzione EIP-6963?

La proposta specifica un'interfaccia standardizzata per le informazioni sul fornitore (EIP 6963 ProviderInfo), necessaria per il popolamento dei popup di selezione del portafoglio. Lo standard sottolinea inoltre l'importanza di rendere pubblica l'interfaccia del provider (EIP 6963 Provider Detail), sebbene l'interfaccia del provider EIP-1193 rimanga invariata per compatibilità.

Di seguito sono riportate le caratteristiche principali dell'interfaccia delle informazioni del fornitore:

  • walletId: l'identificazione univoca globale del fornitore del portafoglio (ad esempio io.dopewallet.extension o awesomewallet).

  • uuid: un identificatore univoco locale per un provider di portafoglio che supporta UUID v 4.0.

  • nome: il nome leggibile del fornitore del portafoglio (ad esempio DopeWalletExtension o Awesome).

  • icona: un URI di un'immagine che deve essere quadrata e avere una risoluzione minima di 96 × 96 px. Si consigliano i formati immagine PNG e WebP, nonché formati immagine vettoriali come SVG. Il team suggerito sconsiglia vivamente di utilizzare formati con perdita di dati come JPG/JPEG.

Sia la libreria Ethereum che il fornitore del portafoglio utilizzano il metodo window.dispatchEvent per emettere eventi e la funzione window.addEventListener per guardare gli eventi quando si tratta di attivare eventi. Quando la libreria Ethereum viene inizializzata, trasmette l'evento "eip6963:requestProvider" e il provider del portafoglio emette l'evento "eip6963:announceProvider", insieme alle informazioni sull'interfaccia e sul provider.

Quanto è efficace l'EIP-6963?

Secondo stime attendibili, l’adozione e l’implementazione dell’EIP-6963 potrebbero richiedere dai tre ai sei mesi. Questa svolta potrebbe portare a una nuova narrativa sui portafogli entro la fine dell’anno, forse rompendo la morsa dei principali fornitori di portafogli come Metamask e creando un ambiente più competitivo tra i fornitori.

Questa funzione è destinata ad aiutare portafogli come Coinbase Wallet, Trust Wallet, Phantom, Taho, Rabby, Frame, XDEFI, Rainbow, Zerion, Spot, Coin 98 Wallet, Frontier, MEW, Dawn Wallet, Blockwallet, Bitski, SafePal, BitKeep, e MathWallet. I lettori possono partecipare al dibattito sull'EIP-6963 con gli sviluppatori di Ethereum qui.

Pro e contro

Professionisti

Non esiste un singolo punto di errore poiché gli sviluppatori abilitano vari fornitori di portafogli. Ciò è vantaggioso in termini di sicurezza poiché implica che se un fornitore di portafoglio viene violato o fallisce, i consumatori hanno altre opzioni.

Diminuzione della dipendenza da un unico fornitore: al momento, la comunità di Ethereum fa molto affidamento su un unico fornitore di portafogli, MetaMask. Ciò è pericoloso perché se MetaMask viene violato, la maggior parte degli utenti di Ethereum ne risentirà. L'EIP-6963 mitiga il rischio abilitando numerosi portafogli.

Controlli utente aggiuntivi: la possibilità di scegliere diversi fornitori di portafogli offre ai consumatori un maggiore controllo di sicurezza. Gli utenti possono scegliere un fornitore di portafoglio in base ai loro particolari requisiti di sicurezza e al livello di fiducia.

Contro

Superficie di attacco ampliata: l'implementazione di EIP-6963 amplia la superficie di attacco. Questo perché il numero di fornitori di portafogli che potrebbero essere violati da soggetti ostili è in aumento. Per ridurre questo pericolo, ogni fornitore di portafogli deve attenersi a severi requisiti di sicurezza.

Rischi di mining di immagini SVG: EIP-6963 consiglia di utilizzare immagini SVG come icone del fornitore del portafoglio. Le immagini SVG, invece, possono contenere codice JavaScript, che potrebbe costituire un pericolo di cross-site scripting (XSS). Sebbene l'EIP raccomandi che le immagini SVG siano presentate utilizzando tag per evitare l'esecuzione di JavaScript, questa raccomandazione può essere confermata solo da terze parti o da ispettori dell'implementazione.

Effetto della modifica di window.ethereum: sebbene la sostituzione di window.ethereum non danneggi immediatamente le app attuali, consiglia di farlo dopo che un utente ha scelto un portafoglio. Questa proposta può essere confermata solo da una terza parte o da un revisore in ogni implementazione.

Conclusione

EIP-6963 mira a promuovere l'interoperabilità tra i fornitori di portafogli, ridurre la barriera all'ingresso per nuovi fornitori e migliorare l'esperienza dell'utente sulla rete Ethereum. Allo stesso tempo, le implicazioni per la sicurezza sono complicate.

Gli utenti di Ethereum, i fornitori di portafogli e gli sviluppatori devono seguire sempre le migliori pratiche per mantenere sicuro l'ecosistema Ethereum.

Mettendo in pratica questo suggerimento, l’ecosistema Ethereum potrebbe trasformarsi in un ambiente più competitivo e facile da usare, il che andrebbe a vantaggio sia dei fornitori di portafogli che dei loro utenti.

DISCLAIMER: Le informazioni contenute in questo sito Web sono fornite come commento generale sul mercato e non costituiscono un consiglio di investimento. Ti invitiamo a fare le tue ricerche prima di investire.

Unisciti a noi per tenere traccia delle novità: https://linktr.ee/coincu

Harold

Notizie Coincu