Account abstraction (AA) allows smart contracts to own & control their own accounts on the blockchain and abstracts away EOAs.
Before getting started we highly recommend reading out launch thread for context on what Rainmaker is.
The Rainmaker Official Launch Tweet
Account abstraction is a powerful set of tools that we use to provide everyone with a more efficient and cost-effective way to transact across networks. In this whitepaper, we will explain how Rainmaker uses account abstraction to bundle many transactions into a single transaction and allow the platform to sponsor gas on behalf of users.
At Rainmaker we leverage account abstraction to enable gas-less transactions and 1-click DeFi.
What is Account Abstraction?
Account abstraction is a concept which allows transactions to be processed without the need for the sender to have native network tokens to pay fees. With account abstraction, the sender of a transaction can specify a "paymaster" contract that will sponsor the gas costs of the transaction.
By using account abstraction, Rainmaker can bundle many transactions into a single transaction and allow the platform to pay for the gas costs on behalf of users. This allows Rainmaker to provide a more cost-effective and efficient way to transact on the Ethereum network.
Bundling Transactions with Rainmaker
Rainmaker leverages account abstraction to bundle many transactions into a single transaction. This is achieved by using a "bundler" contract that collects transactions from users and then creates a single transaction that includes all of the bundled transactions.
When a user wants to make a transaction on the Rainmaker platform, they submit their transaction to the bundler contract. The bundler contract then adds the transaction to a queue of pending transactions. Once the queue reaches a certain size, the bundler contract creates a new transaction that includes all of the pending transactions in the queue.
The bundler contract then sends the new transaction to the Ethereum network for processing. Because the new transaction includes multiple transactions, it is more efficient and cost-effective than sending each transaction individually. Additionally, because Rainmaker is sponsoring the gas costs of the transaction, users do not need to have a balance of Ether to pay for gas fees.
Sponsoring Gas with Rainmaker
Rainmaker also leverages account abstraction to allow the platform to sponsor gas on behalf of users. This is achieved by using a "paymaster" contract that is responsible for paying the gas fees associated with a transaction.
When a user submits a transaction to the Rainmaker platform, they specify the paymaster contract that will be responsible for paying the gas fees. The paymaster contract then pays the gas fees associated with the transaction, and the transaction is processed by the Ethereum network.
Because Rainmaker is sponsoring the gas costs of the transaction, users do not need to have a balance of Ether to pay for gas fees. This makes it more cost-effective for users to transact on the Rainmaker platform.
Rainmaker is an all-in-one DeFi platform and mobile cryptocurrency wallet that leverages account abstraction to provide users with a more efficient and cost-effective way to manage their assets and interact with various decentralized finance protocols on the Ethereum network. By using a bundler contract to bundle many transactions into a single transaction and a paymaster contract to sponsor gas on behalf of users, Rainmaker is able to provide users with a more seamless and cost-effective experience when using the platform. We believe that this approach will help to drive adoption of decentralized finance protocols and make them more accessible to users around the world.