Analyzing 85 big dump data: which coins Rebound the fastest? Which zones are the weakest?

Finding innovative solutions to achieve frictionless encryption trading experience is crucial before Digital Money is widely adopted.

Author: Mustafa Bedawala, Mert Ozbay, and Catherine Gu

Compiled by GWEI Research

Despite making progress, the blockchain currently struggles to provide the same level of flexibility and user experience as mainstream digital payment ecosystems. However, emerging technologies can enhance the payment experience when using digital money for transactions. In ‘Automatic Payment with Self-custody Wallet,’ we delve into the application of cutting-edge technology in automatic payments by leveraging the concept of account abstraction (AA) on the public blockchain.¹ Our exploration of AA and improved encryption payment experience continues to examine how the current AA paradigm on the ETH network offers creative solutions for handling money laundering: whether users can pay with stablecoins, other ERC-20 tokens, ETH, or not at all. Finding innovative solutions for frictionless encryption onboarding and transaction experience is crucial before digital money achieves mainstream adoption.

The technical overview of ERC-4337 is the current standard for implementing AA on Ethereum, aimed at better understanding ERC-4337. We discuss Visa’s experimental deployment of two groups of Paymaster contracts to demonstrate how to redesign gas fees on the blockchain to improve user convenience.

account abstraction and ERC-4337

To better understand the value proposition of account abstraction, let’s briefly review the two types of accounts currently existing on the ETH network: Externally Owned Accounts (EOAs) and Contract Accounts (CAs), typically referred to as user accounts and smart contracts, respectively. EOAs controlled by a Private Key allow users to send transactions. However, they lack the programmability of smart contracts, making them more rigid. In contrast, CAs have executable code but cannot initiate transactions independently. Transactions must always come from a user account and include the user’s signature, whether it’s a simple token transfer or a complex operation executed through many smart contracts.

The concept of Account Abstraction (AA) aims to leverage the programmability of CA for the benefit of end users. When writing Smart Contracts, it is common to define an owner to control the behavior of the contract. A self-managed Wallet built as a Smart Contract can provide users with more functionality than an EOA-based Wallet. This is achieved through the introduction of a new Ethereum standard called ERC-4337, proposed by Ethereum community members (including Ethereum founder Vitalik Buterin). ERC-4337 allows the owner to directly own the Smart Contract account without requiring EOA signatures. While the owner may not use EOA signatures in the traditional sense, they still need a secure authentication process for owning and managing the Smart Contract account correctly. In turn, this Smart Contract account can handle tasks such as Multi-Factor Authentication, regular payments, and user-defined custom rules and policies.

ERC-4337 is the latest development for AA, initially proposed as Ethereum Improvement Proposal (EIP)-4337 in 2021. It went through the Ethereum Request for Comments (ERC) process, which establishes standards for applications on the Ethereum network. The difference between EIPs and ERCs is their scope and adoption requirements. ERCs define how Smart Contracts should run and interact at the application level. They do not require adoption by all participants like core EIPs, which are deployed at the protocol level and require broader consensus within the community. The transition from EIP-4337 to ERC-4337 marks the proposal meeting the standards required by Ethereum applications and is now an official part of the Ethereum ecosystem. As of March 2023, the core components of ERC-4337 have been deployed on the Ethereum mainnet. Unlike the previous account abstraction EIP, ERC-4337 enables account abstraction on the Ethereum network without modifying the consensus layer of the blockchain protocol. This development allows blockchain network participants to explore and experiment with new user experiences immediately, without waiting for significant network upgrades. It is worth noting that one of the advantages of ERC-4337 is its compatibility with any blockchain that uses the Ethereum Virtual Machine, providing AA with a standard beyond Ethereum itself.

Traverse ERC-4337 Transactions

In a typical EOA transaction, users interact with their self-custodial wallets to create, sign transactions, and submit transactions to the public mempool. The transaction payload, signed by the user’s Private Key, is then propagated through the Node to the peer-to-peer (P2P) mempool. Validators or specialized entities (called builders) select suitable and profitable transactions from the public mempool to execute and merge them into the Block chain.

Figure 1: Typical Ethereum transaction process

ERC-4337 introduces an alternative transaction process different from the traditional EOA method, adding new steps before the transaction reaches the proxy EOA Address. Users send their intent as UserOperations, which then propagates through a dedicated UserOperations mempool. This unique mempool is monitored by bundlers, which act as proxy EOA, sending UserOperations to the public mempool in a form that the network can process typical EOA transactions. These transactions then follow the same process as regular transactions, either joining the public mempool or going directly into the builder.

We gradually introduced the end-to-end process of ERC-4337 transactions, from UserOperation generation to execution. Before delving further, the concept of Paymaster must be defined, which plays a crucial role in this process and is the core we explore ourselves. Paymaster is an optional Smart Contract account that can sponsor Money Laundering for contract accounts (user-centric Smart Contracts). Paymasters evaluate whether to accept UserOperation in the verification phase and implement any required fee logic in the execution phase. By doing so, they can sponsor Money Laundering for users and enable users to pay fuel fees using ERC-20 Tokens such as USD stablecoins.

Figure 2: ERC-4337 Transaction Process

  1. Users generate UserOperations through a Smart Contract wallet that complies with the ERC-4337 standard. UserOperations encapsulate the user’s intentions to interact with the Block chain, and the user signs it for identity verification. Once generated, the UserOperation will be submitted to a dedicated UserOperation Mempool, which is a storage specifically for UserOperations, separate from the standard Ethereum transaction mempool.

  2. Bundlers are a specialized type of participant that monitors the UserOperation Mempool, runs simulations, and assembles a series of UserOperations into a single transaction bundle. Bundlers are responsible for collecting UserOperations and submitting them to the EntryPoint contract, optimizing gas usage and maximizing profits by leveraging fee priority logic.

  3. EntryPoint contract receives a batch of bundled UserOperations. It acts as a central coordinator for managing UserOperations in the ERC-4337 transaction process.

  4. If UserOperation is specified, the EntryPoint contract will interact with the Paymaster contract. As mentioned earlier, Paymasters can sponsor Money Laundering for the account of the contract. EntryPoint verifies whether the payer has sufficient deposits or if the contract account has sufficient funds to pay for the gas fee. During the execution process, if Paymaster is involved, it can implement custom fee logic, which will be demonstrated in the next section.

  5. Then the EntryPoint contract calls the account contract and, if necessary, calls the cashier to verify the signature in UserOperation. The account contract seamlessly interacts with the EntryPoint contract to facilitate transaction execution. After successful verification, EntryPoint transfers the relevant data of each UserOperation to the Contract Account and starts the execution process.

Account Abstraction and Practical Applications

As blockchain technology continues to explore real-world applications, self-custody wallets are becoming a popular choice for users to hold and transact with their digital money. Since the establishment of Ethereum, there have been approximately 180 million unique addresses involved in transactions, including all types of accounts and multiple accounts belonging to the same person or group of individuals. However, on a monthly basis, we only see millions of on-chain interactions initiated by real people, with about 1 million transactions on the Ethereum Mainnet per day. In comparison, Visa processed 258 billion transactions in 2022, averaging 707 million transactions per day, with 4.1 billion Visa cards in circulation globally. If blockchain can support a comparable breadth of payment experience and have the same usability, can they enjoy a similar level of adoption? Steps that can be taken in this direction include allowing users to pay transaction fees with extracted gas fees or ERC-20 tokens.

Using ERC-4337 Paymaster to Pay with ERC-20 Token

Figure 3: Paymaster Facilitating Money Laundering Using ERC-20 Tokens

Today, to conduct transactions on the ETH blockchain, users need to acquire ETH to pay for gas fees; similarly, to conduct transactions on the Polygon blockchain, users need to acquire the native Token MATIC. Is there a solution to eliminate the need to accumulate different local blockchain tokens solely for the purpose of paying gas? This situation is similar to the value of Visa’s cross-border payment core network, where travelers can spend in local currency without needing to acquire it first. In this version of the Paymaster contract, the contract can act as an intermediary currency conversion service. This service can collect Digital Money from users and then convert it to the native Token based on the current Exchange Rate, representing the user’s payment for gas. Additionally, this can be done through instant financing, meaning users only need to provide funds for gas costs at the time of the transaction, without any upfront financing requirements, to optimize their cash flow management.

Use ERC-4337 Paymaster to sponsor Money Laundering for users

Figure 4: Paymaster sponsors Money Laundering for users

In today’s Web 2.0, P2P transactions are free to consumers in many countries, which raises a direct question: why should consumers pay for on-chain P2P transactions? Account Abstraction provides a solution, allowing users to bypass these fees if a third party (such as a fintech wallet provider) is willing to bear the cost. In this case, the wallet provider or dApp can act as a cashier, paying gas fees for users and significantly reducing friction. The ERC-4337 Paymaster concept can incentivize users to adopt by allowing them to transact for free through their wallet platform.

In addition, Smart Contractaccount can simplify Wallet management and provide an alternative method of signature verification, enabling Multi-Factor Authentication to enhance the security of self-custody Wallets and fund recovery. Furthermore, they simplify the use of dApps by allowing temporary permissions for specific tasks with customizable limits, such as authorizing dApps to handle repetitive pull payments from user accounts, up to a certain amount. These examples simply illustrate how Smart Contract can help non-encrypted native users interact more easily with Blockchain technology while ensuring the security of their accounts.

Our experiment with ERC-4337 Paymaster

Using ERC-4337 Paymaster to Pay with ERC-20 Token

Figure 5: Paymaster facilitates the use of ERC-20 Token to pay Money Laundering (code snippet)

Through our first Visa Paymaster contract, we are exploring whether users can use alternative Tokens to pay Money Laundering, such as USD stablecoins, and even central bank Digital Money in the future. In this case, Paymaster pays ETH Money Laundering by receiving equivalent ERC-20 Tokens that users pay. For implementation, we used the initial code provided by the Ethereum Foundation and the ERC-4337 core team ⁶. This example contract includes the management logic of Paymaster and its custom ERC-20 token. For this contract, we introduced an Allowlist and a function to update the Token to ETH exchange rate. This allows us to better simulate that the Exchange Rate between ETH and Tokens is dynamically based on real-life conditions. Our test setup involves deploying Smart Contract Wallets and sending user operations. Currently, the options for Wallets compatible with ERC-4337 are limited, so we decided to use the Trampoline Wallet built by the Ethereum Foundation and the ERC-4337 core team ⁷. To send our user operations to the Goerli Testnet, we used Blocknative’s public Bundler ⁸. For a successful User Operation, the Visa Paymaster contract first needs to check if the user has enough funds in ERC-20 to pay for the gas fee. Once confirmed, the user pays Money Laundering using this generic ERC-20 token. You can find our deployed contract here ⁹, as well as the processed User Operation.

Use ERC-4337 Paymaster to sponsor Money Laundering for users

Figure 6: Paymaster sponsors Money Laundering for users (code snippet)

According to our second use case mentioned, our another Visa Paymaster contract fully sponsors Money Laundering. Similarly, our implementation is based on the initial codes provided by Ethereum Foundation and ERC-4337 core team¹¹. The initial codes sponsor each transaction without charge. We have added an Allowlist, only allowing authorized users to interact with the Visa Paymaster contract. You can find the contracts we have deployed here. ¹² Our test implementation can successfully sponsor user operations of Allowlist users for Money Laundering. You can see the successful UserOperation here. ¹³

The use cases of Paymaster far exceed the scope we emphasized in this article. By abstracting the basic Block chain processing logic, many innovative user experiences can be created. For the ongoing development of ERC-4337, we see several possible ways to build on the basis of our aforementioned experiments. For example, instead of requiring custom new ERC-20 Tokens to be built into the Paymaster Smart Contract, it is easier to integrate Paymaster with existing ERC-20 Tokens (such as USDC). This approach requires using external sources to determine Token prices and checking whether the Paymaster contract has been approved to charge users for the specified Tokens. One approach is to deploy an off-chain Oracle Machine service, which can provide necessary information such as Token prices and signatures that the Paymaster contract can verify.

Alternatively, the entire process can be handled on-chain with the help of an Oracle Machine contract that contains the necessary data. While this approach can better ensure that cashiers receive proper compensation, it is also more challenging to implement. Some limitations with ERC-4337 make it difficult for Paymasters to query an on-chain Oracle Machine during Paymaster verification, and Bundlers often refuse UserOperations that require this. To enable this process, it is necessary to establish an alternative mempool using a trusted Paymaster list that Bundlers can choose to join. These trusted Paymasters can call the oracle contract, and UserOperations using these Paymasters will come from the backup mempool.

Looking to the Future

Interacting with the Block chain using a Digital Wallet can be a challenging experience, and many believe that ensuring usability is a key step in driving wider adoption. ERC-4337 lays the groundwork for interesting future possibilities to improve on-chain user payment experiences through self-custody Smart Contract Wallets, which in turn can change the way users use Digital Money and digital assets.

When it comes to ERC-4337, the Ethereum community is at the beginning of this new journey. There are many plans to provide infrastructure that can build AA-driven flows, some of which we have used in testing and mentioned in this article, but there is still considerable room for rise. Like any open field, there are competing methods and trade-offs, such as the decentralization options provided by public Bundlers and the customizability of private Bundlers; the trustless security of Paymasters fully deployed on-chain compared to the cost-effectiveness of deploying certain components off-chain; and the various alternative signature schemes that Wallets may use, and so on. These different design choices can produce a rich set of options to better provide users with future digital payment experiences.

Ubiquitous Payment Innovation for Everyone

As the global leader in payment solutions, Visa has always been committed to exploring innovations that meet real-world needs. We will continue to explore the potential of Smart Contracts and the future that Programmability currencies and Programmability payments may bring. In this article, we delve into how the on-chain execution of AA on the ETH Block, as implemented by ERC-4337, supports interesting new use cases. We provide an end-to-end exercise of ERC-4337 transactions and explain the differences between it and standard ETH Block transactions to highlight the underlying mechanisms.

We learn and evaluate our experiments with ERC-4337 by deploying Paymaster contracts to investigate their potential utility in addressing real-world problems and significantly enhancing customer experience through on-chain interactions, focusing on two distinct use cases. For companies working on this cutting-edge technology, our product, research, and engineering teams are happy to discuss ideas about Programmability payments.

Contact Visa Crypto at GDLVisaCryptoResearch@visa.com for more details on our research interests and activities in the encryption ecosystem.

This document is for illustrative purposes only. It contains descriptions of products under development and should be understood as representing the potential functionality of the fully deployed product. The final version of this product may not include all the features described in this presentation. In our writing, we adhere to clearly distinguish conceptual terms such as entry points, paymasters, and user operations, as well as their corresponding on-chain entities EntryPoint, UserOperation, and Paymaster. This approach follows the conventions specified in the original ERC-4337 proposal.

Thank you to Cuy Sheffield, Andrew Beams, Mahdi Zamani, Mohsen Minaei, Aaron Salot, and Stackup Co-founder John Rising for their review.

MEME1.08%
SATS2.19%
TAO-0.28%
View Original
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
  • Reward
  • 1
  • Repost
  • Share
Comment
0/400
Ladlajuttvip
· 2024-08-09 14:44
Buy the Dip 🤑
Reply0
Trade Crypto Anywhere Anytime
qrCode
Scan to download Gate App
Community
English
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)