Visão geral da solução experimental da Visa: Como pagar a tarifa do gás na rede com o Cartão Visa?

Por Mert Ozbay, Mustafa Bedawala e Catherine Gu

Tradução: Huohuo, blockchain vernacular

A tecnologia Blockchain teve ampla adoção nos últimos anos e, embora tenha o potencial de moldar o futuro da movimentação de dinheiro, as transações blockchain apresentam um alto nível de complexidade não encontrado nos métodos de pagamento tradicionais. As transações Blockchain utilizam uma rede descentralizada onde vários participantes verificam e registram cada transação. Eles envolvem carteiras autocustodiais, chaves privadas, taxas de gás - todos os elementos que não se aplicam aos métodos de pagamento tradicionais. Para fazer transações usando um blockchain como o Ethereum, os consumidores devem manter um saldo no token nativo do blockchain (como ETH) para pagar pelo uso da rede, conhecida como "gás".

A Visa é boa em facilitar transações envolvendo diferentes moedas. Por exemplo, os usuários podem viajar para outro país sem se preocupar em obter moeda estrangeira antecipadamente, pois o mesmo cartão Visa permite fazer compras tanto no país quanto no exterior. No entanto, esse nível de simplicidade e conveniência não existe no mundo criptográfico. Os consumidores que fazem transações no Ethereum encontram-se constantemente gerenciando seus saldos de ETH para pagar taxas de gás, um processo oneroso que os distrai da atividade principal do blockchain. Quando a complexidade das transações de blockchain é comparada à simplicidade das transações de pagamento baseadas em fiduciárias suportadas pela rede Visa, fica claro que melhorias são necessárias. As questões restantes são:

Figura 1 - Rede Visa

Visão geral da solução experimental da Visa: Como pagar taxas de gás na rede por meio do cartão Visa?

Descrição da imagem da web da Visa

Reconhecendo esse desafio, exploramos como simplificar as transações de blockchain, permitindo que os usuários paguem pelo gás na cadeia diretamente em moeda fiduciária por meio de pagamentos com cartão. Nesse caso, os usuários podem não precisar mais manter tokens nativos específicos da blockchain apenas para pagar as taxas do Gas. Essa solução potencial alavancaria o padrão ERC-4337 da ethereum e o contrato mestre de pagamentos para permitir que os usuários paguem pelo gás diretamente com seus cartões Visa.

Acreditamos que essa abordagem inovadora e flexível pode ajudar a simplificar o ponto de entrada para novos usuários de criptomoedas e aprimorar a experiência dos usuários existentes. Neste artigo, nos aprofundamos nos desafios existentes das transações blockchain, destacamos a necessidade de uma abordagem mais flexível e percorremos nossos experimentos.

1. Dúvidas

Um dos maiores obstáculos no mundo das criptomoedas é o complexo processo de pagamento de transações ou operações na blockchain. Toda operação, seja uma simples transferência de token ou uma interação mais complexa com um contrato inteligente, incorre em um custo chamado taxa de "gás". Isso representa a quantidade de computação necessária para executar a operação. No que diz respeito ao Ethereum, a taxa de gás deve ser paga com o Token ETH nativo do blockchain.

Embora stablecoins como USDC possam ser usadas para transações, os usuários ainda precisam manter um saldo ETH separado para pagar as taxas de gás no Ethereum. Isso geralmente leva os usuários a métodos complexos e às vezes caros. Alguns contam com serviços on-ramp para converter moedas fiduciárias em tokens nativos como ETH, enquanto outros compram ETH em exchanges centralizadas de criptomoedas e as transferem para suas carteiras. No entanto, ambas as estratégias exigem etapas adicionais e carecem da simplicidade e imediatismo com as quais os usuários estão acostumados nas transações financeiras tradicionais. Além disso, esses métodos expõem os usuários ao risco de flutuações nas taxas de câmbio das criptomoedas, pois precisam comprar ETH continuamente, mesmo quando usam diferentes criptomoedas ou stablecoins para transações de pagamento.

Figura 2 – Processo de entrada: Obter Token para carteira de autocustódia

Visão geral da solução experimental da Visa: Como pagar taxas de gás na rede por meio do cartão Visa?

Descrição da imagem do processo na rampa

Por exemplo, vamos considerar Alex, um usuário que deseja participar de um projeto DeFi que exige que ela crie novos tokens. Para fazer isso, ela decide usar um serviço de ingresso para converter moeda fiduciária em ETH. Alex planeja e compra cuidadosamente uma quantidade específica de ETH com base na taxa de gás atual e no custo esperado do processo de cunhagem. No entanto, as taxas de gás na rede Ethereum podem flutuar rapidamente. Se a taxa cair significativamente quando Alex cunhar, ela pagará a mais pelo combustível e poderá acabar com ETH restante que não pretendia comprar. Por outro lado, se a taxa de gás aumentar inesperadamente depois que Alex obtiver ETH, ela pode não ter fundos suficientes para cobrir o aumento da taxa, resultando em pagamento insuficiente. A Figura 2 ilustra o processo de entrada quando um usuário compra criptomoeda por meio de um provedor de entrada.

Figura 3 – Obtenção de Token por meio de uma plataforma de negociação centralizada

Visão geral da solução experimental da Visa: Como pagar taxas de gás na rede por meio do cartão Visa?

Obtenha Token através da plataforma de negociação centralizada

Além disso, para usuários como Alex, a aquisição de tokens nativos como ETH geralmente envolve a transferência de ativos de exchanges centralizadas. Isso requer depositar moeda fiduciária em uma bolsa, comprar os tokens necessários e transferi-los para uma carteira pessoal para obter ETH suficiente para cobrir as taxas de gás. No entanto, essa abordagem também acarreta o risco de pagar a mais ou a menos devido a flutuações no valor do ETH e nas taxas de gás.

Além disso, pode ser enorme e desafiador para indivíduos com menos conhecimento de tecnologia e que desejam participar de transações de blockchain. Para aqueles que não estão familiarizados com as exchanges de criptomoedas e as complexidades de comprar e conectar tokens, esse processo pode ser uma barreira à entrada. É como o método complicado e hostil de trocar dinheiro em diferentes moedas ao viajar para diferentes países. A Figura 3 ilustra o processo de ponte quando um usuário compra criptomoeda por meio de uma troca de criptomoedas e a transfere para uma carteira.

2. Solução

Com base em nosso trabalho descrito anteriormente “Repensando as transações digitais por meio da abstração de contas”² Nossas equipes de protocolos criptográficos, Visa Innovation Center e Visa Research organizaram um hackathon interno onde aproveitamos a oportunidade para explorar o mestre de pagamentos sob ERC-4337. O resultado dessa colaboração é um processo de solução proposto que demonstra como permitir que os usuários paguem suas contas de gás on-chain em moeda fiduciária por meio de um cartão registrado. A solução proposta aproveita o padrão ERC-4337 da ethereum e o contrato mestre de pagamentos para permitir que os titulares de cartões Visa paguem suas taxas de gás diretamente. Acreditamos que essa abordagem inovadora e adaptável pode ajudar a simplificar o processo de integração para novos usuários de criptomoedas e melhorar a experiência dos usuários atuais.

Figura 4 – Interação simplificada do usuário com a implementação Paymaster

Visão geral da solução experimental da Visa: Como pagar taxas de gás na rede por meio do cartão Visa?

Descrição simplificada da imagem de interação com o usuário

Nesta solução proposta, novamente colocamos o caixa no centro do processo. Paymaster é um tipo especial de conta de contrato inteligente que pode fornecer taxas de gás para contas de contrato de usuário (pense nisso como um contrato inteligente centrado no usuário). A solução que propomos elimina a necessidade de os usuários manterem tokens de blockchain nativos ou participarem continuamente de tokens de ponte apenas para pagar taxas de gás.

Do ponto de vista do usuário, a solução é atraente devido à sua simplicidade e facilidade de adoção, conforme mostra a Figura 4. Por exemplo, vamos voltar para Alex, que tem uma carteira auto-hospedada. Com nossa solução proposta, Alex pode usar seu cartão Visa para pagar taxas de combustível e participar de projetos DeFi que exigem que ela crie novos tokens. Ao fazer isso, a Visa ajuda a lidar com o complexo processo nos bastidores, tornando mais fácil para Alex escolher seu cartão Visa para pagar a gasolina. Esta solução proposta traz simplicidade e uma melhor experiência para usuários como Alex, que procuram uma maneira mais simplificada e acessível de participar de transações blockchain.

3. Nosso experimento

O papel do caixa é abstrair as complexidades do mecanismo da taxa de gás, ao mesmo tempo em que fornece um meio alternativo de financiar a taxa. Nossa implementação experimental faz isso aceitando pagamentos de gás de usuários off-chain para cartões Visa e pagando o valor equivalente on-chain em nome do usuário. A experiência da taxa de gás do lado do usuário é tão simples quanto o pagamento com cartão comum. Os usuários podem optar por usar esse pagador ao enviar ações do usuário. As ações do usuário são como interações regulares do blockchain, pois especificam o que o usuário deseja fazer no blockchain. Mas, ao contrário das transações, as operações do usuário não precisam ser assinadas por contas de propriedade externa e podem ser verificadas e executadas diretamente por contas de contratos inteligentes.

A configuração que implementamos para permitir pagamentos de gás off-chain é centrada na verificação do Paymaster. A verificação de pagadores é um contrato inteligente que delega todas as verificações e fontes de informações necessárias para componentes fora da cadeia. O contrato mestre de pagamento on-chain pode usar os dados e aprovações fornecidos pelos componentes off-chain para autorizar e pagar taxas de gás.

A maneira como essas informações são transmitidas de maneira confiável do serviço off-chain para o contrato principal de pagamento é por meio de criptografia de chave pública: a chave é usada pelo serviço da Web off-chain para gerar uma assinatura digital para enviar com as informações. O contrato inteligente do pagador pode, por sua vez, usar a chave pública correspondente para verificar a assinatura, verificando assim a autenticidade da mensagem. Em nossos experimentos, usamos a amostra de contrato inteligente Paymaster verificada fornecida pela equipe principal do ERC-4337.

Figura 5 – Fluxo de trabalho técnico para transações com cartões Paymaster e Visa

Visão geral da solução experimental da Visa: Como pagar taxas de gás na rede por meio do cartão Visa?

Ilustração de imagem de transações usando cartões Paymaster e Visa

Conforme mostrado na Figura 5, em nossa implementação, quando um usuário pretende iniciar uma operação por meio do blockchain, a carteira primeiro gera uma solicitação de operação do usuário, que contém informações sobre a operação que está tentando realizar (ou seja, dados da chamada) e o máximo custo de processamento Operacional (ou seja, parâmetros relacionados às taxas de gás). Mais especificamente, o parâmetro que especifica o limite de gás determina a quantidade máxima de computação que a operação deve orçar, enquanto a taxa de gás determina o custo por unidade de computação.

Em vez de enviar a solicitação de ação do usuário para o blockchain imediatamente, a carteira primeiro envia a ação do usuário junto com as credenciais do cartão Visa para o serviço web Paymaster (etapa 2 na Figura 5). O serviço da web usará as informações da taxa de gás para calcular a taxa apropriada para cobrar do usuário em moeda fiduciária e, com base nas credenciais do cartão fornecidas, o emissor do cartão pode optar por autorizar o pagamento com cartão. Para a solução de aceitação de pagamentos para serviços web, utilizamos os recursos web da própria Visa. A Cybersource fornece aos desenvolvedores os SDKs e APIs necessários para permitir que os comerciantes aceitem pagamentos digitais.

Em nosso experimento, após o pagamento ser processado pela Cybersource, o serviço de rede gerará assinatura digital e informações de taxa de gás (etapa 3) para os dados relevantes na operação do usuário (incluindo dados de chamada). Também determina o período de tempo para o qual a assinatura é válida. Especificar a janela de tempo é importante porque o valor do ETH e de outros tokens nativos é dinâmico no Ethereum e em outras cadeias de EVM. Se nenhuma precaução for tomada, um usuário pode aproveitar a falta de sincronização entre as duas partes do pagador, pagar off-chain em moeda fiduciária quando os custos de ETH forem baixos, usar assinaturas quando o preço for mais alto e permitir que o pagador contrato arcar com a diferença de custo de carga. O serviço da web envia a assinatura digital de volta para a carteira. Além disso, qualquer alteração feita pela carteira nos parâmetros relevantes das operações do usuário resultará em uma incompatibilidade com a assinatura digital, e a verificação do contrato inteligente do Paymaster detectará a discrepância.

A carteira recebe a assinatura digital e a janela de tempo do serviço da web e anexa essas informações junto com o endereço na cadeia do contrato mestre de pagamento como o parâmetro mestre de pagamento para operações do usuário. Agora, quando todas as partes da ação do usuário estiverem concluídas, a carteira poderá assinar e enviar para o blockchain (etapa 4). No blockchain, como parte do fluxo de processamento da operação do usuário definido pela norma ERC-4337, o contrato mestre de pagamento receberá os dados da operação do usuário, que devem incluir uma assinatura digital do serviço web mestre de pagamento. Se houver algo errado com os dados fornecidos (assinatura incorreta, janela de tempo inválida etc.), o contrato principal de pagamento é projetado para gerar um erro e não pagar a taxa de gás. Se a assinatura de verificação estiver correta, significa que o webservice recebeu o pagamento com cartão para viabilizar o processamento do custo dessa ação do usuário. O contrato mestre de pagamento não gerará nenhum erro e processará o custo e a ação do usuário será executada (etapa 5).

Figura 6 - Trecho de código - Verificar verificação de assinatura digital do pagador

Visão geral da solução experimental da Visa: Como pagar taxas de gás na rede por meio do cartão Visa?

descrição da imagem do trecho de código

Ao criar nossos experimentos, usamos a biblioteca userop.js do Stackup para criar, assinar e enviar ações do usuário com nossa carteira. Para publicar essas ações do usuário no blockchain, bem como funcionalidades suplementares, como estimativa de custos de combustível, usamos o bundler do Stackup como nosso provedor. Para fins de teste, implantamos um caixa verificado por meio da rede de teste Ethereum Goerli e enviamos com sucesso as ações do usuário por meio de pagamentos de taxas de gás off-chain.

4. Reduza o atrito no blockchain

As complexidades das transações baseadas em blockchain têm sido uma barreira significativa para muitos usuários, criando uma curva de aprendizado desafiadora e aumentando o atrito do usuário. No entanto, nossos experimentos visam fornecer uma abordagem promissora para enfrentar substancialmente esses desafios. Ao alavancar o conceito inovador de pagadores, combinado com a abstração de contas e o padrão ERC-4337, exploramos o potencial para redefinir o processo de transações baseadas em blockchain.

A abstração da conta permite que os desenvolvedores criem novos processos que ajudam a reduzir o atrito da troca de vários ativos. Nossos experimentos mostram que os desenvolvedores podem aproveitar a infraestrutura de pagamento existente para implementar a solução. Comerciantes ou aplicativos descentralizados (dApps) podem executar sua própria solução Paymaster para ajudar a melhorar a experiência do cliente aceitando pagamentos de taxas de gás usando cartões Visa. Como alternativa, os provedores de serviços de carteira e Paymaster existentes podem oferecer opções de pagamento de taxa de gás com base em cartão para uso geral junto com outros produtos Paymaster.

A realização desta solução potencial ajuda a estabelecer as bases para uma abordagem mais acessível e amigável para transações digitais.

Ver original
  • Recompensa
  • Comentário
  • Compartilhar
Comentário
Sem comentários