Visa: pagamenti automatici per portafogli crittografici

Qualche giorno fa è apparsa una pagina su Sito ufficiale di Visa esplicitamente dedicato ai pagamenti automatici in criptovalute per i portafogli self-custodial. 

È una soluzione proposta da Andrew Beams, Catherine Gu, Srini Raghuraman, Mohsen Minaei e Ranjit Kumaresan, e dedicato appunto ai pagamenti automatici in criptovalute. 

La soluzione di Visa: l'accesso alle criptovalute sta diventando più facile

Gli autori partono da un esempio ipotetico, ovvero quello di una persona che parte per un paio di settimane di ferie. Ipotizzano che durante quelle due settimane abbia bisogno di effettuare pagamenti programmati importanti, come rate del mutuo, bollette o abbonamento TV, e che non abbia abbastanza soldi per pagare prima di andare in vacanza. Ipotizzano inoltre che in quelle due settimane riceverà la busta paga, quindi vorrebbe procedere con i pagamenti non appena riceverà i soldi. 

La soluzione sono i pagamenti automatici, facilmente impostabili quando si utilizza un conto bancario. In questo caso Visa offre già tutto il necessario per poter procedere. 

Ma che dire in caso di utilizzo crypto portafogli?  

Visa ipotizza l'uso di un non specificato Ethereum wallet e cita una tecnica innovativa emersa durante il suo Crypto Hackathon all'inizio del 2022. 

Il portafoglio Ethereum ipotizzato è self-custodial, il che significa che implica che le chiavi private siano in possesso esclusivo dell'utente. Gli autori scrivono che un account utente che controlla le chiavi private può inviare transazioni, mentre uno smart contract, invece, non può avviare transazioni in modo completamente autonomo, perché devono sempre provenire da un account utente ed essere firmate dall'utente. 

Quindi la domanda che gli autori si pongono è, se l'utente non ha accesso al portafoglio perché è in vacanza, chi può autorizzare le transazioni per effettuare tutti i pagamenti di cui sopra? 

Il problema non si porrebbe nel caso di un wallet custodial, perché allora le chiavi private per autorizzare le transazioni sarebbero in possesso dell'operatore del wallet. Ma nel caso di wallet non custodial sarebbe al momento un problema programmarli in assenza di fondi. 

La soluzione proposta da Visa è nota come Account Abstraction (AA), ovvero una proposta che tenta di combinare portafogli non custoditi e contratti intelligenti in un unico account Ethereum che fa funzionare gli account utente come contratti intelligenti. 

Il concetto di Account Abstraction (AA)

AA consente di progettare una soluzione ordinata per i pagamenti automatizzati proponendo una maggiore flessibilità nel processo di convalida delle transazioni sulla blockchain che consente la creazione di transazioni pianificate anche in assenza di fondi sufficienti. 

Invece di codificare le condizioni di validità della transazione all'interno del protocollo Ethereum e applicarle a tutte le transazioni su tutta la linea, con AA le condizioni di validità possono essere personalizzabili e programmate all'interno di un contratto intelligente valido per il singolo account. AA rende così possibili i pagamenti automatici anche in assenza di fondi al momento della loro programmazione, consentendo all'utente di impostare regole di validità che non prevedono più la verifica della firma. 

Grazie ad AA, Visa propone di creare un nuovo tipo di contratto intelligente, chiamato "conto delegabile". 

Grazie ad AA sarà quindi possibile delegare la possibilità di istruire l'account dell'utente per avviare un pagamento push a uno smart contract in modo automatico e pre-approvato.

Pagamenti automatici

Una soluzione del genere sembra per certi versi simile ai pagamenti preautorizzati che si utilizzano, ad esempio, alle stazioni di servizio. 

Infatti in quei casi devi autorizzare la transazione prima di iniziare ad erogare, cioè quando non si conosce ancora l'importo. Esiste un importo massimo autorizzato e, in quel caso particolare, sul conto devono essere presenti fondi sufficienti per coprire l'intero importo dell'importo massimo autorizzato. 

La transazione avviene automaticamente dopo essere stata pre-autorizzata a seconda dell'importo finale del rifornimento. 

Nel caso della soluzione basata su AA di Visa, il problema non è l'importo sconosciuto al momento della pre-autorizzazione, ma la mancanza di fondi sufficienti. 

Quindi la transazione viene pre-approvata dall'utente con la sua chiave privata, ma verrà effettivamente eseguita dallo smart contract solo quando saranno disponibili fondi sufficienti. 

Affinché avvenga il pagamento automatico tramite AA, prima il destinatario del pagamento deve implementare un contratto intelligente di pagamento automatico. L'utente deve disporre di un account delegabile e approvare esplicitamente la richiesta di approvazione dei pagamenti automatici. Ovviamente potrà controllare tutte le azioni che lo smart contract eseguirà automaticamente prima di approvarle. Poiché si tratta di uno smart contract decentralizzato su Ethereum, l'utente può essere certo che eseguirà solo quelle azioni che sono state da lui autorizzate. 

Dopo l'accettazione, il portafoglio dell'utente aggiungerà l'indirizzo dello smart contract di pagamento automatico all'elenco di quelli consentiti sull'account delegabile dell'utente. Quindi lo smart contract attiverà il pagamento programmato richiamando la funzione di addebito che richiederà all'account dell'utente di avviare un normale pagamento push indistinguibile dai pagamenti push standard.

processo di pagamento dell'account delegabile

Questa soluzione si presta anche ad altre applicazioni del mondo reale oltre ai pagamenti ricorrenti, alcuni dei quali potrebbero non essere facilmente accessibili tramite le soluzioni di pagamento odierne. 

La proposta 

AA è stato proposto come EIP-86 già nel 2017, anche se le origini dell'idea alla base risalgono addirittura all'inizio del 2016. Tuttavia, le proposte contenute in questo EIP (Ethereum Improvement Proposal) erano difficili da implementare a causa dei numerosi cambiamenti al protocollo Ethereum richiesto, tanto che ne è stato successivamente sviluppato un altro, EIP-4337, che fornisce un modo per fare AA senza modifiche al protocollo Ethereum. Tuttavia, è ancora in corso un dibattito su come implementare AA su Ethereum.

Poiché Ethereum non supporta ancora AA, Visa ha implementato la propria soluzione per gli account delegabili su StarkNet, che è una blockchain di secondo livello costruita sulla blockchain di Ethereum. 

StarkNet è sviluppato dalla startup di criptovalute StarkWare e il modello di account di StarkNet corrisponde a quello di AA. 

Visa afferma di essere in prima linea nella progettazione di prodotti e soluzioni di pagamento innovativi e sta esplorando attivamente nuovi approcci relativi ai contratti intelligenti per rendere programmabili denaro e pagamenti.

Gli autori dell'articolo vedono i pagamenti automatizzati come una funzionalità chiave che, tuttavia, attualmente manca nell'infrastruttura blockchain esistente. Pertanto, hanno proposto una tale soluzione che sfrutta AA per essere in grado di fornire portafogli non detentivi con funzionalità di pagamenti ricorrenti automatici. 

Visa mira a contribuire a creare esperienze utente migliori sfruttando sia i metodi di pagamento esistenti che quelli nuovi e, a tal fine, ritiene che il denaro programmabile e i pagamenti programmabili rappresentino un'opportunità entusiasmante.

Visa e il futuro delle criptovalute 

È vero che in ambito non detentivo i pagamenti programmati o ricorrenti allo stato attuale sono molto difficili da gestire. Infatti, le transazioni devono essere valide per essere approvate, e per essere valide devono essere interamente coperte da fondi sufficienti. 

Ciò vale a maggior ragione per le richieste di pagamento dei creditori, che ad oggi non possono interagire con i portafogli non detentivi dei clienti a meno che non lo facciano i clienti stessi. 

Affidarsi a piattaforme di custodia non è affatto una soluzione, quindi sono necessarie nuove tecnologie che consentano al singolo titolare di portafoglio non custodiale di poter abilitare pagamenti programmati o automatici anche in assenza di fondi. 

Non è detto che la soluzione che andrà a diffondersi sarà proprio AA, ma visto che è in qualche modo sponsorizzata da Visa è possibile che possa riscuotere un chiaro successo.

Fonte: https://en.cryptonomist.ch/2022/12/20/visa-automatic-payments-crypto-wallets/