Visa: pagamentos automáticos para carteiras criptográficas

Há alguns dias apareceu uma página no Site oficial da Visa explicitamente dedicado a pagamentos criptográficos automáticos para carteiras autocustodiais. 

É uma solução proposta por Andrew Beams, Catherine Gu, Srini Raghuraman, Mohsen Minaei e Ranjit Kumaresan, e dedicado justamente a pagamentos automáticos em criptomoedas. 

Solução da Visa: o acesso à cripto está cada vez mais fácil

Os autores começam com um exemplo hipotético, ou seja, o de uma pessoa saindo de férias por algumas semanas. Eles levantam a hipótese de que durante essas duas semanas ele precisa fazer pagamentos agendados importantes, como pagamentos de hipoteca, contas de serviços públicos ou assinatura de TV, e que não tem dinheiro suficiente para pagar antes de sair de férias. Eles também levantam a hipótese de que durante essas duas semanas ele receberá seu contracheque, então ele gostaria de prosseguir com os pagamentos assim que receber o dinheiro. 

A solução são os pagamentos automáticos, facilmente configurados ao usar uma conta bancária. Nesse caso, a Visa já oferece tudo o que é necessário para poder prosseguir. 

Mas e no caso de usar cripto carteiras?  

A Visa levanta a hipótese do uso de um Ethereum wallet e cita uma técnica inovadora que surgiu durante seu Crypto Hackathon no início de 2022. 

A hipotética carteira Ethereum é auto-custodial, o que significa que envolve chaves privadas de posse exclusiva do usuário. Os autores escrevem que uma conta de usuário que controla as chaves privadas pode enviar transações, enquanto um contrato inteligente, por outro lado, não pode iniciar transações de forma totalmente independente, porque elas sempre devem vir de uma conta de usuário e ser assinadas pelo usuário. 

Então a pergunta que os autores fazem é, se o usuário não tem acesso à carteira porque está de férias, quem pode autorizar as transações para efetuar todos os pagamentos acima? 

O problema não surgiria no caso de uma carteira de custódia, porque as chaves privadas para autorizar as transações estariam em posse do operador da carteira. Mas no caso de carteiras sem custódia, atualmente seria um problema agendá-las na ausência de fundos. 

A solução proposta pela Visa é conhecida como Account Abstraction (AA), que é uma proposta que tenta combinar carteiras sem custódia e contratos inteligentes em uma única conta Ethereum que faz com que as contas de usuário funcionem como contratos inteligentes. 

O conceito de Abstração de Conta (AA)

A AA possibilita o desenho de uma solução ordenada para pagamentos automatizados ao propor maior agilidade no processo de validação de transações na blockchain que permite a criação de transações agendadas mesmo na ausência de fundos suficientes. 

Em vez de codificar as condições de validade da transação no protocolo Ethereum e aplicá-las a todas as transações, com AA as condições de validade podem ser personalizáveis ​​e agendadas em um contrato inteligente válido para a conta individual. Assim, o AA possibilita pagamentos automáticos mesmo na ausência de fundos no momento em que são programados, permitindo ao usuário definir regras de validade que não incluem mais a verificação de assinatura. 

Graças à AA, a Visa se propõe a criar um novo tipo de contrato inteligente, chamado de “conta delegável”. 

Assim, graças ao AA, será possível delegar a capacidade de instruir a conta do usuário para iniciar um pagamento push para um contrato inteligente de maneira automática e pré-aprovada.

Pagamentos automáticos

Tal solução parece de certa forma semelhante aos pagamentos pré-autorizados que são usados, por exemplo, em postos de gasolina. 

Na verdade, nesses casos você tem que autorizar a transação antes de começar a dispensar, ou seja, quando o valor ainda não é conhecido. Existe um valor máximo autorizado e, nesse caso específico, deve haver fundos suficientes na conta para cobrir o valor total do valor máximo autorizado. 

A transação ocorre automaticamente após ser pré-autorizada dependendo do valor final do reabastecimento. 

No caso da solução baseada em AA da Visa, o problema não é o valor desconhecido no momento da pré-autorização, mas a falta de fundos suficientes. 

Portanto, a transação é pré-aprovada pelo usuário com sua chave privada, mas será realmente executada pelo contrato inteligente somente quando houver fundos suficientes disponíveis. 

Para que ocorra o pagamento automático via AA, primeiro o destinatário do pagamento deve implantar um contrato inteligente de pagamento automático. O usuário deve ter uma conta delegável e aprovar explicitamente a solicitação de aprovação de pagamentos automáticos. Obviamente, ele poderá verificar todas as ações que o contrato inteligente executará automaticamente antes de aprová-las. Por ser um contrato inteligente descentralizado no Ethereum, o usuário pode ter certeza de que executará apenas as ações que foram autorizadas por ele. 

Após a aceitação, a carteira do usuário adicionará o endereço do contrato inteligente de pagamento automático à lista daqueles permitidos na conta delegável do usuário. Em seguida, o contrato inteligente ativará o pagamento agendado invocando a função de débito que solicitará que a conta do usuário inicie um pagamento push normal indistinguível dos pagamentos push padrão.

processo de pagamento de conta delegável

Essa solução também se presta a outros aplicativos do mundo real, além de pagamentos recorrentes, alguns dos quais podem não ser facilmente acessíveis por meio das soluções de pagamento atuais. 

A proposta 

O AA foi proposto como EIP-86 já em 2017, embora as origens da ideia por trás dele remontem ao início de 2016. No entanto, as propostas contidas neste EIP (Ethereum Improvement Proposal) foram difíceis de implementar devido às muitas mudanças ao protocolo Ethereum necessário, tanto que posteriormente foi desenvolvido outro, o EIP-4337, que fornece uma maneira de fazer AA sem alterações no protocolo Ethereum. No entanto, ainda há um debate em andamento sobre como implementar o AA no Ethereum.

Como o Ethereum ainda não suporta AA, a Visa implementou sua própria solução para contas delegáveis ​​na StarkNet, que é uma blockchain de segundo nível construída na blockchain Ethereum. 

StarkNet é desenvolvido pela startup criptográfica StarkWare, e o modelo de conta da StarkNet corresponde ao da AA. 

A Visa diz que está na vanguarda do design de produtos e soluções de pagamento inovadores e está explorando ativamente novas abordagens relacionadas a contratos inteligentes para tornar o dinheiro e os pagamentos programáveis.

Os autores do artigo veem os pagamentos automatizados como uma funcionalidade chave que, no entanto, está faltando atualmente na infraestrutura de blockchain existente. Portanto, eles propuseram uma solução que aproveita o AA para fornecer carteiras sem custódia com a funcionalidade de pagamentos recorrentes automáticos. 

A Visa visa ajudar a criar melhores experiências de usuário, alavancando os métodos de pagamento existentes e novos e, para esse fim, eles acreditam que o dinheiro programável e os pagamentos programáveis ​​representam uma excelente oportunidade.

Visa e o futuro das criptomoedas 

De fato, na esfera não custodial, os pagamentos programados ou recorrentes em seu estado atual são muito difíceis de gerenciar. De fato, as transações devem ser válidas para serem aprovadas e, para serem válidas, devem ser totalmente cobertas por fundos suficientes. 

Isso é ainda mais verdadeiro para solicitações de pagamento de credores, que até o momento não podem interagir com carteiras não custodiadas dos clientes, a menos que os próprios clientes o façam. 

Contar com plataformas de custódia não é de forma alguma uma solução, portanto, novas tecnologias são necessárias para permitir que o titular individual da carteira não custodial possa permitir pagamentos programados ou automáticos, mesmo na ausência de fundos. 

Não é certo que a solução que se difundirá será precisamente AA, mas dado que está a ser algo patrocinada pela Visa é possível que consiga um claro sucesso.

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