La tecnología Blockchain ha experimentado una adopción generalizada en los últimos años y, si bien tiene el potencial de dar forma al futuro del movimiento de dinero, las transacciones de Blockchain presentan un alto nivel de complejidad que no se encuentra en los métodos de pago tradicionales. Las transacciones de Blockchain utilizan una red descentralizada donde múltiples participantes verifican y registran cada transacción. Involucran billeteras de autocustodia, claves privadas, tarifas de gasolina, todos los elementos que no se aplican a los métodos de pago tradicionales. Para realizar transacciones utilizando una cadena de bloques como Ethereum, los consumidores deben mantener un saldo en el token nativo de la cadena de bloques (como ETH) para pagar el uso de la red, lo que se conoce como "gas".
Visa es buena para facilitar transacciones que involucran diferentes monedas. Por ejemplo, los usuarios pueden viajar a otro país sin preocuparse por obtener divisas por adelantado, ya que la misma tarjeta Visa permite realizar compras tanto en el país como en el exterior. Sin embargo, este nivel de simplicidad y conveniencia no existe en el mundo de las criptomonedas. Los consumidores que realizan transacciones en Ethereum se encuentran constantemente administrando sus saldos de ETH para pagar las tarifas de gasolina, un proceso oneroso que los distrae de la actividad principal de la cadena de bloques. Cuando se compara la complejidad de las transacciones de cadena de bloques con la simplicidad de las transacciones de pago basadas en moneda fiduciaria respaldadas por la red de Visa, está claro que se necesita mejorar. Las preguntas restantes son:
Figura 1 - Red de Visa
Descripción de la imagen web de Visa
Reconociendo este desafío, exploramos cómo simplificar las transacciones de blockchain al permitir que los usuarios paguen el gas en la cadena directamente en moneda fiduciaria a través de pagos con tarjeta. En este caso, es posible que los usuarios ya no necesiten tener tokens nativos específicos de blockchain solo para pagar las tarifas de gas. Esta solución potencial aprovecharía el estándar ERC-4337 de ethereum y el contrato maestro de pagos para permitir a los usuarios pagar la gasolina directamente con sus tarjetas Visa.
Creemos que este enfoque innovador y flexible puede ayudar a simplificar el punto de entrada para los nuevos usuarios de criptomonedas y mejorar la experiencia de los usuarios existentes. En este documento, profundizamos en los desafíos existentes de las transacciones de blockchain, destacamos la necesidad de un enfoque más flexible y analizamos nuestros experimentos.
1. Preguntas
Uno de los principales obstáculos en el mundo de las criptomonedas es el complejo proceso de pago de transacciones u operaciones en la cadena de bloques. Cada operación, ya sea una simple transferencia de token o una interacción más compleja con un contrato inteligente, incurre en un costo llamado tarifa de "gas". Esto representa la cantidad de cálculo requerido para realizar la operación. En lo que respecta a Ethereum, la tarifa de gas debe pagarse con el Token ETH nativo de la cadena de bloques.
Aunque las monedas estables como USDC se pueden usar para transacciones, los usuarios aún deben mantener un saldo ETH separado para pagar las tarifas de Gas en Ethereum. Esto a menudo lleva a los usuarios a métodos complejos y, a veces, costosos. Algunos confían en los servicios de rampa para convertir monedas fiduciarias en tokens nativos como ETH, mientras que otros compran ETH en intercambios de criptomonedas centralizados y lo transfieren a sus billeteras. Sin embargo, ambas estrategias requieren pasos adicionales y carecen de la sencillez e inmediatez a la que los usuarios están acostumbrados en las transacciones financieras tradicionales. Además, estos métodos exponen a los usuarios al riesgo de fluctuaciones en el tipo de cambio de las criptomonedas, ya que necesitan comprar continuamente ETH, incluso cuando usan diferentes criptomonedas o monedas estables para las transacciones de pago.
Figura 2 – Proceso de ingreso: Obtener Token para monedero con autocustodia
Descripción de la imagen del proceso de rampa
Por ejemplo, consideremos a Alex, un usuario que quiere participar en un proyecto DeFi que requiere que acuñe nuevos tokens. Para ello, decide utilizar un servicio de ingreso para convertir moneda fiduciaria en ETH. Alex planifica y compra cuidadosamente una cantidad específica de ETH en función de la tarifa de gas actual y el costo esperado del proceso de acuñación. Sin embargo, las tarifas de gas en la red Ethereum pueden fluctuar rápidamente. Si la tarifa cae significativamente cuando Alex acuña, pagará de más por la gasolina y puede terminar con ETH sobrante que no tenía la intención de comprar. Por el contrario, si la tarifa del gas aumenta inesperadamente después de que Alex obtiene ETH, es posible que no tenga fondos suficientes para cubrir el aumento de la tarifa, lo que resulta en un pago insuficiente. La figura 2 ilustra el proceso de entrada cuando un usuario compra criptomonedas a través de un proveedor de entrada.
Figura 3: Obtención de Token a través de una plataforma comercial centralizada
Obtenga Token a través de la plataforma de negociación centralizada
Además, para usuarios como Alex, adquirir tokens nativos como ETH generalmente implica transferir activos desde intercambios centralizados. Esto requiere depositar moneda fiduciaria en un intercambio, comprar los tokens necesarios y transferirlos a una billetera personal para obtener suficiente ETH para cubrir las tarifas de gasolina. Sin embargo, este enfoque también conlleva el riesgo de pagar de más o de menos debido a las fluctuaciones en el valor de ETH y las tarifas de gas.
Además, puede ser enorme y desafiante para las personas que son menos expertas en tecnología y desean participar en transacciones de blockchain. Para aquellos que no están familiarizados con los intercambios de criptomonedas y las complejidades de comprar y unir tokens, este proceso puede ser una barrera de entrada. Es como el método engorroso y hostil de cambiar efectivo a diferentes monedas cuando se viaja a diferentes países. La Figura 3 ilustra el proceso puente cuando un usuario compra criptomonedas a través de un intercambio de criptomonedas y las transfiere a una billetera.
2. Solución
Sobre la base de nuestro trabajo descrito anteriormente "Repensar las transacciones digitales a través de la abstracción de cuentas"² Nuestros equipos de Crypto Protocols, Visa Innovation Center y Visa Research organizaron un hackatón interno en el que aprovechamos la oportunidad para explorar el maestro de pagos según ERC-4337. El resultado de esta colaboración es un proceso de solución propuesto que demuestra cómo permitir que los usuarios paguen sus facturas de gas en cadena en moneda fiduciaria a través de una tarjeta registrada. La solución propuesta aprovecha el estándar ERC-4337 de ethereum y el contrato maestro de pagos para permitir que los titulares de tarjetas Visa paguen sus tarifas de gas directamente. Creemos que este enfoque innovador y adaptable puede ayudar a simplificar el proceso de incorporación para los nuevos usuarios de criptomonedas y mejorar la experiencia de los usuarios actuales.
Figura 4: interacción simplificada del usuario con la implementación de Paymaster
Descripción de imagen de interacción de usuario simplificada
En esta propuesta de solución, volvemos a situar al cajero en el centro del proceso. Paymaster es un tipo especial de cuenta de contrato inteligente que puede proporcionar tarifas de gas para cuentas de contrato de usuario (piense en ello como un contrato inteligente centrado en el usuario). La solución que proponemos elimina la necesidad de que los usuarios tengan tokens nativos de blockchain o participen continuamente en tokens puente solo para pagar las tarifas de gas.
Desde la perspectiva del usuario, la solución es atractiva debido a su simplicidad y facilidad de adopción, como se muestra en la Figura 4. Por ejemplo, volvamos a Alex, que tiene una billetera autohospedada. Con nuestra solución propuesta, Alex puede usar su tarjeta Visa para pagar tarifas de gasolina y participar en proyectos DeFi que requieren que acumule nuevos Tokens. Al hacerlo, Visa ayuda a manejar el complejo proceso tras bambalinas, facilitando que Alex elija su tarjeta Visa para pagar la gasolina. Esta solución propuesta brinda simplicidad y una mejor experiencia a usuarios como Alex, que buscan una forma más ágil y accesible de participar en transacciones de blockchain.
3. Nuestro experimento
El papel del cajero es abstraer las complejidades del mecanismo de la tarifa del gas al tiempo que proporciona un medio alternativo para financiar la tarifa. Nuestra implementación experimental hace esto al aceptar pagos de gasolina de usuarios fuera de la cadena para tarjetas Visa y pagar el monto equivalente en la cadena en nombre del usuario. La experiencia de la tarifa de gas del lado del usuario es tan simple como el pago con tarjeta normal. Los usuarios pueden optar por utilizar dicho pagador al enviar acciones de usuario. Las acciones del usuario son como las interacciones regulares de la cadena de bloques en el sentido de que especifican lo que el usuario quiere hacer en la cadena de bloques. Pero a diferencia de las transacciones, las operaciones de los usuarios no necesitan ser firmadas por cuentas de propiedad externa y pueden ser verificadas y ejecutadas directamente por cuentas de contratos inteligentes.
La configuración que implementamos para habilitar los pagos de gas fuera de la cadena se centra en la verificación del Paymaster. La verificación de los pagadores es un contrato inteligente que delega todos los controles y fuentes de información necesarios a componentes fuera de la cadena. El contrato inteligente maestro de pago en cadena puede usar los datos y las aprobaciones proporcionados por los componentes fuera de la cadena para autorizar y pagar tarifas de gas.
La forma en que esta información se transmite de manera confiable desde el servicio fuera de la cadena al contrato maestro de pago es a través de la criptografía de clave pública: el servicio web fuera de la cadena utiliza la clave para generar una firma digital para enviar con la información. El contrato inteligente del pagador puede a su vez usar la clave pública correspondiente para verificar la firma, verificando así la autenticidad del mensaje. En nuestros experimentos, utilizamos la muestra verificada de contrato inteligente de Paymaster proporcionada por el equipo central de ERC-4337.
Figura 5: flujo de trabajo técnico para transacciones con tarjetas Paymaster y Visa
Imagen ilustrativa de transacciones con tarjetas Paymaster y Visa
Como se muestra en la Figura 5, en nuestra implementación, cuando un usuario tiene la intención de iniciar una operación a través de la cadena de bloques, la billetera primero genera una solicitud de operación del usuario, que contiene información sobre la operación que está tratando de realizar (es decir, datos de llamada) y el máximo costo de procesamiento Operacional (es decir, parámetros relacionados con las tarifas de gas). Más específicamente, el parámetro que especifica el límite de gas determina la cantidad máxima de cómputo que debe presupuestar la operación, mientras que la tarifa de gas determina el costo por unidad de cómputo.
En lugar de enviar la solicitud de acción del usuario a la cadena de bloques de inmediato, la billetera primero envía la acción del usuario junto con las credenciales de la tarjeta Visa al servicio web Paymaster (paso 2 en la Figura 5). El servicio web utilizará la información de la tarifa de gas para calcular la tarifa adecuada para cobrar al usuario en moneda fiduciaria y, según las credenciales de la tarjeta proporcionadas, el emisor de la tarjeta puede optar por autorizar el pago con tarjeta. Para la solución de aceptación de pagos para servicios web, utilizamos los propios recursos web de Visa. Cybersource proporciona a los desarrolladores los SDK y las API necesarios para que los comerciantes puedan aceptar pagos digitales.
En nuestro experimento, después de que Cybersource procese el pago, el servicio de red generará información sobre la firma digital y la tarifa de gas (paso 3) para los datos relevantes en la operación del usuario (incluidos los datos de llamadas). También determina el período de tiempo durante el cual la firma es válida. Especificar la ventana de tiempo es importante porque el valor de ETH y otros tokens nativos es dinámico en Ethereum y otras cadenas de EVM. Si no se toman precauciones, un usuario puede aprovechar la falta de sincronización entre las dos partes del pagador, pagar fuera de la cadena en moneda fiduciaria cuando los costos de ETH son bajos, luego usar firmas cuando el precio es más alto y dejar que el pagador contrato soportar la diferencia de costo de carga. El servicio web envía la firma digital de regreso a la billetera. Además de esto, cualquier cambio realizado por la billetera en los parámetros relevantes de las operaciones del usuario dará como resultado una discrepancia con la firma digital, y la verificación del contrato inteligente de Paymaster detectará la discrepancia.
La billetera recibe la firma digital y la ventana de tiempo del servicio web y adjunta esta información junto con la dirección en cadena del contrato maestro de pago como parámetro maestro de pago para las operaciones del usuario. Ahora, cuando todas las partes de la acción del usuario estén completas, la billetera podrá firmarla y enviarla a la cadena de bloques (paso 4). En la cadena de bloques, como parte del flujo de procesamiento de la operación del usuario definido por el estándar ERC-4337, el contrato maestro de pago recibirá los datos de la operación del usuario, que deben incluir una firma digital del servicio web maestro de pago. Si hay algún problema con los datos proporcionados (firma incorrecta, ventana de tiempo no válida, etc.), el contrato maestro de pago está diseñado para arrojar un error y no pagar la tarifa del gas. Si la firma de verificación es correcta, significa que el servicio web recibió el pago con tarjeta para habilitar el costo de procesamiento de esta acción del usuario. El contrato maestro de pago no arrojará ningún error y procesará el costo y se ejecutará la acción del usuario (paso 5).
Figura 6 - Fragmento de código - Verificar verificación de firma digital de Paymaster
descripción de la imagen del fragmento de código
Al construir nuestros experimentos, usamos la biblioteca userop.js de Stackup para construir, firmar y enviar acciones de usuario con nuestra billetera. Para publicar estas acciones de los usuarios en la cadena de bloques, así como funcionalidades complementarias, como la estimación de los costes de la gasolina, utilizamos el paquete de Stackup como nuestro proveedor. Para fines de prueba, implementamos un cajero verificado a través de la red de prueba Ethereum Goerli y enviamos con éxito las acciones de los usuarios a través de pagos de tarifas de gas fuera de la cadena.
4. Reducir la fricción en la cadena de bloques
Las complejidades de las transacciones basadas en blockchain han sido una barrera importante para muchos usuarios, creando una curva de aprendizaje desafiante y aumentando la fricción del usuario. Sin embargo, nuestros experimentos tienen como objetivo proporcionar un enfoque prometedor para abordar sustancialmente estos desafíos. Al aprovechar el concepto innovador de pagadores, combinado con la abstracción de cuentas y el estándar ERC-4337, exploramos el potencial para redefinir el proceso de transacciones basadas en blockchain.
La abstracción de cuentas permite a los desarrolladores diseñar nuevos procesos que ayuden a reducir la fricción de intercambiar varios activos. Nuestros experimentos muestran que los desarrolladores pueden aprovechar la infraestructura de pago existente para implementar la solución. Los comerciantes o las aplicaciones descentralizadas (dApps) pueden ejecutar su propia solución Paymaster para ayudar a mejorar la experiencia del cliente al aceptar pagos de tarifas de gasolina con tarjetas Visa. Alternativamente, los proveedores de servicios de billetera y Paymaster existentes pueden ofrecer opciones de pago de tarifas de gasolina basadas en tarjeta para uso general junto con otros productos de Paymaster.
La realización de esta solución potencial ayuda a sentar las bases para un enfoque más accesible y fácil de usar para las transacciones digitales.
Ver originales
Esta página puede contener contenido de terceros, que se proporciona únicamente con fines informativos (sin garantías ni declaraciones) y no debe considerarse como un respaldo por parte de Gate a las opiniones expresadas ni como asesoramiento financiero o profesional. Consulte el Descargo de responsabilidad para obtener más detalles.
Descripción general de la solución experimental de Visa: ¿Cómo pagar las tarifas de gas en la cadena a través de la Tarjeta Visa?
Por Mert Ozbay, Mustafa Bedawala y Catherine Gu
Traducción: Huohuo, blockchain vernáculo
La tecnología Blockchain ha experimentado una adopción generalizada en los últimos años y, si bien tiene el potencial de dar forma al futuro del movimiento de dinero, las transacciones de Blockchain presentan un alto nivel de complejidad que no se encuentra en los métodos de pago tradicionales. Las transacciones de Blockchain utilizan una red descentralizada donde múltiples participantes verifican y registran cada transacción. Involucran billeteras de autocustodia, claves privadas, tarifas de gasolina, todos los elementos que no se aplican a los métodos de pago tradicionales. Para realizar transacciones utilizando una cadena de bloques como Ethereum, los consumidores deben mantener un saldo en el token nativo de la cadena de bloques (como ETH) para pagar el uso de la red, lo que se conoce como "gas".
Visa es buena para facilitar transacciones que involucran diferentes monedas. Por ejemplo, los usuarios pueden viajar a otro país sin preocuparse por obtener divisas por adelantado, ya que la misma tarjeta Visa permite realizar compras tanto en el país como en el exterior. Sin embargo, este nivel de simplicidad y conveniencia no existe en el mundo de las criptomonedas. Los consumidores que realizan transacciones en Ethereum se encuentran constantemente administrando sus saldos de ETH para pagar las tarifas de gasolina, un proceso oneroso que los distrae de la actividad principal de la cadena de bloques. Cuando se compara la complejidad de las transacciones de cadena de bloques con la simplicidad de las transacciones de pago basadas en moneda fiduciaria respaldadas por la red de Visa, está claro que se necesita mejorar. Las preguntas restantes son:
Figura 1 - Red de Visa
Descripción de la imagen web de Visa
Reconociendo este desafío, exploramos cómo simplificar las transacciones de blockchain al permitir que los usuarios paguen el gas en la cadena directamente en moneda fiduciaria a través de pagos con tarjeta. En este caso, es posible que los usuarios ya no necesiten tener tokens nativos específicos de blockchain solo para pagar las tarifas de gas. Esta solución potencial aprovecharía el estándar ERC-4337 de ethereum y el contrato maestro de pagos para permitir a los usuarios pagar la gasolina directamente con sus tarjetas Visa.
Creemos que este enfoque innovador y flexible puede ayudar a simplificar el punto de entrada para los nuevos usuarios de criptomonedas y mejorar la experiencia de los usuarios existentes. En este documento, profundizamos en los desafíos existentes de las transacciones de blockchain, destacamos la necesidad de un enfoque más flexible y analizamos nuestros experimentos.
1. Preguntas
Uno de los principales obstáculos en el mundo de las criptomonedas es el complejo proceso de pago de transacciones u operaciones en la cadena de bloques. Cada operación, ya sea una simple transferencia de token o una interacción más compleja con un contrato inteligente, incurre en un costo llamado tarifa de "gas". Esto representa la cantidad de cálculo requerido para realizar la operación. En lo que respecta a Ethereum, la tarifa de gas debe pagarse con el Token ETH nativo de la cadena de bloques.
Aunque las monedas estables como USDC se pueden usar para transacciones, los usuarios aún deben mantener un saldo ETH separado para pagar las tarifas de Gas en Ethereum. Esto a menudo lleva a los usuarios a métodos complejos y, a veces, costosos. Algunos confían en los servicios de rampa para convertir monedas fiduciarias en tokens nativos como ETH, mientras que otros compran ETH en intercambios de criptomonedas centralizados y lo transfieren a sus billeteras. Sin embargo, ambas estrategias requieren pasos adicionales y carecen de la sencillez e inmediatez a la que los usuarios están acostumbrados en las transacciones financieras tradicionales. Además, estos métodos exponen a los usuarios al riesgo de fluctuaciones en el tipo de cambio de las criptomonedas, ya que necesitan comprar continuamente ETH, incluso cuando usan diferentes criptomonedas o monedas estables para las transacciones de pago.
Figura 2 – Proceso de ingreso: Obtener Token para monedero con autocustodia
Descripción de la imagen del proceso de rampa
Por ejemplo, consideremos a Alex, un usuario que quiere participar en un proyecto DeFi que requiere que acuñe nuevos tokens. Para ello, decide utilizar un servicio de ingreso para convertir moneda fiduciaria en ETH. Alex planifica y compra cuidadosamente una cantidad específica de ETH en función de la tarifa de gas actual y el costo esperado del proceso de acuñación. Sin embargo, las tarifas de gas en la red Ethereum pueden fluctuar rápidamente. Si la tarifa cae significativamente cuando Alex acuña, pagará de más por la gasolina y puede terminar con ETH sobrante que no tenía la intención de comprar. Por el contrario, si la tarifa del gas aumenta inesperadamente después de que Alex obtiene ETH, es posible que no tenga fondos suficientes para cubrir el aumento de la tarifa, lo que resulta en un pago insuficiente. La figura 2 ilustra el proceso de entrada cuando un usuario compra criptomonedas a través de un proveedor de entrada.
Figura 3: Obtención de Token a través de una plataforma comercial centralizada
Obtenga Token a través de la plataforma de negociación centralizada
Además, para usuarios como Alex, adquirir tokens nativos como ETH generalmente implica transferir activos desde intercambios centralizados. Esto requiere depositar moneda fiduciaria en un intercambio, comprar los tokens necesarios y transferirlos a una billetera personal para obtener suficiente ETH para cubrir las tarifas de gasolina. Sin embargo, este enfoque también conlleva el riesgo de pagar de más o de menos debido a las fluctuaciones en el valor de ETH y las tarifas de gas.
Además, puede ser enorme y desafiante para las personas que son menos expertas en tecnología y desean participar en transacciones de blockchain. Para aquellos que no están familiarizados con los intercambios de criptomonedas y las complejidades de comprar y unir tokens, este proceso puede ser una barrera de entrada. Es como el método engorroso y hostil de cambiar efectivo a diferentes monedas cuando se viaja a diferentes países. La Figura 3 ilustra el proceso puente cuando un usuario compra criptomonedas a través de un intercambio de criptomonedas y las transfiere a una billetera.
2. Solución
Sobre la base de nuestro trabajo descrito anteriormente "Repensar las transacciones digitales a través de la abstracción de cuentas"² Nuestros equipos de Crypto Protocols, Visa Innovation Center y Visa Research organizaron un hackatón interno en el que aprovechamos la oportunidad para explorar el maestro de pagos según ERC-4337. El resultado de esta colaboración es un proceso de solución propuesto que demuestra cómo permitir que los usuarios paguen sus facturas de gas en cadena en moneda fiduciaria a través de una tarjeta registrada. La solución propuesta aprovecha el estándar ERC-4337 de ethereum y el contrato maestro de pagos para permitir que los titulares de tarjetas Visa paguen sus tarifas de gas directamente. Creemos que este enfoque innovador y adaptable puede ayudar a simplificar el proceso de incorporación para los nuevos usuarios de criptomonedas y mejorar la experiencia de los usuarios actuales.
Figura 4: interacción simplificada del usuario con la implementación de Paymaster
Descripción de imagen de interacción de usuario simplificada
En esta propuesta de solución, volvemos a situar al cajero en el centro del proceso. Paymaster es un tipo especial de cuenta de contrato inteligente que puede proporcionar tarifas de gas para cuentas de contrato de usuario (piense en ello como un contrato inteligente centrado en el usuario). La solución que proponemos elimina la necesidad de que los usuarios tengan tokens nativos de blockchain o participen continuamente en tokens puente solo para pagar las tarifas de gas.
Desde la perspectiva del usuario, la solución es atractiva debido a su simplicidad y facilidad de adopción, como se muestra en la Figura 4. Por ejemplo, volvamos a Alex, que tiene una billetera autohospedada. Con nuestra solución propuesta, Alex puede usar su tarjeta Visa para pagar tarifas de gasolina y participar en proyectos DeFi que requieren que acumule nuevos Tokens. Al hacerlo, Visa ayuda a manejar el complejo proceso tras bambalinas, facilitando que Alex elija su tarjeta Visa para pagar la gasolina. Esta solución propuesta brinda simplicidad y una mejor experiencia a usuarios como Alex, que buscan una forma más ágil y accesible de participar en transacciones de blockchain.
3. Nuestro experimento
El papel del cajero es abstraer las complejidades del mecanismo de la tarifa del gas al tiempo que proporciona un medio alternativo para financiar la tarifa. Nuestra implementación experimental hace esto al aceptar pagos de gasolina de usuarios fuera de la cadena para tarjetas Visa y pagar el monto equivalente en la cadena en nombre del usuario. La experiencia de la tarifa de gas del lado del usuario es tan simple como el pago con tarjeta normal. Los usuarios pueden optar por utilizar dicho pagador al enviar acciones de usuario. Las acciones del usuario son como las interacciones regulares de la cadena de bloques en el sentido de que especifican lo que el usuario quiere hacer en la cadena de bloques. Pero a diferencia de las transacciones, las operaciones de los usuarios no necesitan ser firmadas por cuentas de propiedad externa y pueden ser verificadas y ejecutadas directamente por cuentas de contratos inteligentes.
La configuración que implementamos para habilitar los pagos de gas fuera de la cadena se centra en la verificación del Paymaster. La verificación de los pagadores es un contrato inteligente que delega todos los controles y fuentes de información necesarios a componentes fuera de la cadena. El contrato inteligente maestro de pago en cadena puede usar los datos y las aprobaciones proporcionados por los componentes fuera de la cadena para autorizar y pagar tarifas de gas.
La forma en que esta información se transmite de manera confiable desde el servicio fuera de la cadena al contrato maestro de pago es a través de la criptografía de clave pública: el servicio web fuera de la cadena utiliza la clave para generar una firma digital para enviar con la información. El contrato inteligente del pagador puede a su vez usar la clave pública correspondiente para verificar la firma, verificando así la autenticidad del mensaje. En nuestros experimentos, utilizamos la muestra verificada de contrato inteligente de Paymaster proporcionada por el equipo central de ERC-4337.
Figura 5: flujo de trabajo técnico para transacciones con tarjetas Paymaster y Visa
Imagen ilustrativa de transacciones con tarjetas Paymaster y Visa
Como se muestra en la Figura 5, en nuestra implementación, cuando un usuario tiene la intención de iniciar una operación a través de la cadena de bloques, la billetera primero genera una solicitud de operación del usuario, que contiene información sobre la operación que está tratando de realizar (es decir, datos de llamada) y el máximo costo de procesamiento Operacional (es decir, parámetros relacionados con las tarifas de gas). Más específicamente, el parámetro que especifica el límite de gas determina la cantidad máxima de cómputo que debe presupuestar la operación, mientras que la tarifa de gas determina el costo por unidad de cómputo.
En lugar de enviar la solicitud de acción del usuario a la cadena de bloques de inmediato, la billetera primero envía la acción del usuario junto con las credenciales de la tarjeta Visa al servicio web Paymaster (paso 2 en la Figura 5). El servicio web utilizará la información de la tarifa de gas para calcular la tarifa adecuada para cobrar al usuario en moneda fiduciaria y, según las credenciales de la tarjeta proporcionadas, el emisor de la tarjeta puede optar por autorizar el pago con tarjeta. Para la solución de aceptación de pagos para servicios web, utilizamos los propios recursos web de Visa. Cybersource proporciona a los desarrolladores los SDK y las API necesarios para que los comerciantes puedan aceptar pagos digitales.
En nuestro experimento, después de que Cybersource procese el pago, el servicio de red generará información sobre la firma digital y la tarifa de gas (paso 3) para los datos relevantes en la operación del usuario (incluidos los datos de llamadas). También determina el período de tiempo durante el cual la firma es válida. Especificar la ventana de tiempo es importante porque el valor de ETH y otros tokens nativos es dinámico en Ethereum y otras cadenas de EVM. Si no se toman precauciones, un usuario puede aprovechar la falta de sincronización entre las dos partes del pagador, pagar fuera de la cadena en moneda fiduciaria cuando los costos de ETH son bajos, luego usar firmas cuando el precio es más alto y dejar que el pagador contrato soportar la diferencia de costo de carga. El servicio web envía la firma digital de regreso a la billetera. Además de esto, cualquier cambio realizado por la billetera en los parámetros relevantes de las operaciones del usuario dará como resultado una discrepancia con la firma digital, y la verificación del contrato inteligente de Paymaster detectará la discrepancia.
La billetera recibe la firma digital y la ventana de tiempo del servicio web y adjunta esta información junto con la dirección en cadena del contrato maestro de pago como parámetro maestro de pago para las operaciones del usuario. Ahora, cuando todas las partes de la acción del usuario estén completas, la billetera podrá firmarla y enviarla a la cadena de bloques (paso 4). En la cadena de bloques, como parte del flujo de procesamiento de la operación del usuario definido por el estándar ERC-4337, el contrato maestro de pago recibirá los datos de la operación del usuario, que deben incluir una firma digital del servicio web maestro de pago. Si hay algún problema con los datos proporcionados (firma incorrecta, ventana de tiempo no válida, etc.), el contrato maestro de pago está diseñado para arrojar un error y no pagar la tarifa del gas. Si la firma de verificación es correcta, significa que el servicio web recibió el pago con tarjeta para habilitar el costo de procesamiento de esta acción del usuario. El contrato maestro de pago no arrojará ningún error y procesará el costo y se ejecutará la acción del usuario (paso 5).
Figura 6 - Fragmento de código - Verificar verificación de firma digital de Paymaster
descripción de la imagen del fragmento de código
Al construir nuestros experimentos, usamos la biblioteca userop.js de Stackup para construir, firmar y enviar acciones de usuario con nuestra billetera. Para publicar estas acciones de los usuarios en la cadena de bloques, así como funcionalidades complementarias, como la estimación de los costes de la gasolina, utilizamos el paquete de Stackup como nuestro proveedor. Para fines de prueba, implementamos un cajero verificado a través de la red de prueba Ethereum Goerli y enviamos con éxito las acciones de los usuarios a través de pagos de tarifas de gas fuera de la cadena.
4. Reducir la fricción en la cadena de bloques
Las complejidades de las transacciones basadas en blockchain han sido una barrera importante para muchos usuarios, creando una curva de aprendizaje desafiante y aumentando la fricción del usuario. Sin embargo, nuestros experimentos tienen como objetivo proporcionar un enfoque prometedor para abordar sustancialmente estos desafíos. Al aprovechar el concepto innovador de pagadores, combinado con la abstracción de cuentas y el estándar ERC-4337, exploramos el potencial para redefinir el proceso de transacciones basadas en blockchain.
La abstracción de cuentas permite a los desarrolladores diseñar nuevos procesos que ayuden a reducir la fricción de intercambiar varios activos. Nuestros experimentos muestran que los desarrolladores pueden aprovechar la infraestructura de pago existente para implementar la solución. Los comerciantes o las aplicaciones descentralizadas (dApps) pueden ejecutar su propia solución Paymaster para ayudar a mejorar la experiencia del cliente al aceptar pagos de tarifas de gasolina con tarjetas Visa. Alternativamente, los proveedores de servicios de billetera y Paymaster existentes pueden ofrecer opciones de pago de tarifas de gasolina basadas en tarjeta para uso general junto con otros productos de Paymaster.
La realización de esta solución potencial ayuda a sentar las bases para un enfoque más accesible y fácil de usar para las transacciones digitales.