SmoothStore - how UX looks like with EIP-7702
SmoothStore is a chain agnostic decentralized application (dApp) designed to seamlessly onboard users to decentralized storage solutions. It allows users to store their files securely across various storage providers in the network while ensuring data privacy and user convenience. The core highlight of SmoothStore is the integration of EIP-7702, which revolutionizes user Wallet UX in the Web3 space.
🛠️ How It Works
-
User Onboarding:
- Users can choose to log in via their Web3 wallet (Metamask, WalletConnect, etc.) or through a Dynamic Wallet using their Google/GitHub credentials.
- Enable EIP-7702 for biometric authentication to streamline transaction approval.
-
Data Upload:
- Select files to store.
- Files are encrypted on your device using your wallet's private key.
- Encrypted files are distributed among supported decentralized storage providers.
-
Transaction Optimization:
- SmoothStore leverages EIP-7702 to batch all necessary transactions, so users only authenticate once using their biometrics.
- The Dynamic Wallet ensures easy onboarding for users not familiar with Web3 wallets.
Key features of Smooth Store are:-
- Client-Side Encryption: Ensures that files are encrypted locally on the user's device before being uploaded, preserving privacy.
- Multi-Provider Storage Support: SmoothStore connects with multiple decentralized storage providers, offering users flexibility and redundancy.
- Biometric Authentication via EIP-7702: Batch transactions using FaceID or fingerprint, streamlining the user journey.
- Dynamic Wallet Integration: Enables users to log in using Google, GitHub, and other OAuth providers, bridging Web2 and Web3 experiences.
- Google Drive-Like Interface: Provides a familiar, intuitive UI for Web3 users, simplifying the transition from traditional cloud storage platforms.
How SmoothStore is Made: A Comprehensive Overview
SmoothStore is designed to revolutionize the way users interact with decentralized storage solutions by providing a seamless, chain-agnostic onboarding experience with a focus on privacy, scalability, and user-friendliness. The project integrates cutting-edge technologies, protocols, and networks to deliver a cohesive storage solution that caters to both Web2 and Web3 users.
Making a decentralized drive in itself was tough task. We used filecoin's FVM to do that and made dapp chain agnostic so that it can be used by various networks.
1. Decentralized Storage via Filecoin
At the core of SmoothStore is the Filecoin network, a decentralized storage solution that allows users to store data with strong guarantees of immutability and redundancy. However, data stored on Filecoin is public by default, so we leverage client-side encryption to protect user privacy.
- Onramp Smart Contracts: We utilize Filecoin’s onramp contracts to efficiently store and retrieve data. These contracts enable seamless interaction between the dApp and the Filecoin network, ensuring users can easily upload files while maintaining privacy through encryption.
- Client-Side Encryption: Before any data leaves the user’s device, it is encrypted using the user's wallet private key, ensuring complete privacy. This encryption happens directly in the browser, leveraging tools like ethers.js for secure key management.
2. Dynamic Wallet for Web2 Users
To bridge the gap between Web2 and Web3, SmoothStore includes a Dynamic Wallet feature that allows users to log in using OAuth providers like Google or GitHub. This approach solves the onboarding challenge for non-crypto-savvy users, allowing them to leverage decentralized storage without having to manage complex wallet setups.
- Unified Experience: By combining Dynamic Wallet with EIP-7702, SmoothStore ensures that both new and experienced Web3 users can enjoy a smooth, secure, and intuitive interface.
3. Chain Agnostic Approach with Axelar
SmoothStore is made chain-agnostic by integrating with the Axelar network, which provides cross-chain interoperability. This design choice allows SmoothStore to leverage the strengths of multiple blockchains while catering to a wide audience.
- Core Chains Utilized:
- Linea: Offers scalability and low gas fees, making it ideal for high-throughput storage transactions.
- Base: Provides robust infrastructure and developer-friendly tools, helping onboard new users quickly.
- Cross-Chain Interoperability: Axelar ensures that SmoothStore users can seamlessly interact with different chains, accessing decentralized storage options and handling token transfers with ease. This cross-chain compatibility allows SmoothStore to scale across ecosystems, making it accessible to a broader user base.
4. Enhancing UX with EIP-7702 Integration
A major focus of SmoothStore is the integration of EIP-7702 on the Odyssey testnet to showcase how the user experience can be significantly improved in Web3.
- Biometric Authentication: EIP-7702 allows users to use biometric data (like FaceID or fingerprint) as their private key. This is a game-changer for complex applications like decentralized Google Drive, where users would typically need to approve multiple transactions.
- Odyssey Testnet Integration: By showcasing SmoothStore on the Odyssey testnet, we demonstrate how EIP-7702 can streamline interactions with the dApp. Users only need to authenticate once with their biometric data to batch all subsequent transactions, drastically reducing friction and making the process feel like a traditional Web2 application.
The Big Picture
SmoothStore is designed to be a comprehensive solution for decentralized storage, combining the security of Filecoin, the cross-chain capabilities of Axelar, and the user experience enhancements brought by EIP-7702. Whether you’re a Web2 user looking for an easy entry into Web3 or a seasoned Web3 enthusiast seeking better privacy and control, SmoothStore offers a robust and scalable solution.
This approach ensures that as EIP-7702 and other emerging technologies become mainstream, SmoothStore will be well-positioned to lead the way in making decentralized storage accessible to a wide audience.