OkozukaiWallet is a product that creates an opportunity for mass adoption of Web3.
EOA will take care of the setup for entering the Web3 world, including the management of private keys, and users will be able to manage their tokens easily.
Although the technology has developed and various use cases have been created, the public still has a speculative and dangerous image of Web3.
The fact that private keys must be managed by individuals is also a major hurdle.
Therefore, we developed a prototype that combines Account Abstraction, The Graph, Polybase, Push Protocol, and Lit Protocol technologies to realize a smart contract wallet application that can be used even by children.
Someone who can properly understand the concept of EOA will manage the setup and financial resources. From there, assets are deposited into a contract wallet for the user.
The user has the authority to operate the deposited assets, and can transfer money at any time at the user's will. However, the private key signature is not required.
Polybase and Push Protocol technologies are also combined to provide instant access to information necessary for wallet management.
The front end was built primarily using React.js and TypeScript. The backend was built primarily using Hardhat and Solidity.
The technologies used to create this application are as follows
1 React.js
2 Tailwind CSS
3 ERC4337
4 ERC20
5 The Graph
6 hardhat
7 Alchemy SDK
8 TypeScript
9 Polybase SDK
10 Account Abstraction
11 Push Protocol SDK
12 openzeppelin
13 ethers.js
14 userOp.js
15 yarn workspaces
16 Spheron
17 LitProtocol
18 Alchemy SDK
Each SDK and other technologies related to the Prize are used as follows
・Polybase It is used to manage and query information on transactions sent from the contract wallet.
https://github.com/mashharuki/HackFS-2023/blob/main/pkgs/frontend/src/Components/Transfer/index.tsx#L46-L58
・Push Protocol Used to send out notifications to recipients when tokens are transferred from a contract wallet. https://github.com/mashharuki/HackFS-2023/blob/main/pkgs/frontend/src/Components/Transfer/index.tsx#L46-L58
・IPFS Upload and manage files for Subgraph.
https://github.com/mashharuki/HackFS-2023/blob/main/README.md#subgrph-info
・FileCoin Network We use FileCoin Network as the foundation for uploading our builds to spheron.
・Lit Protcol It is used to encrypt the signature key needed to use the bundler's functions.
https://github.com/mashharuki/HackFS-2023/blob/main/pkgs/frontend/src/hooks/useUserOp.ts#L19-L44
・Spheron A live demo of this product is being released using Spheron.