Hi, I have some questions regarding the Web3Auth’s wallet services:
Q:
Supported Blockchains: Does the Web3Auth wallet support both Bitcoin and Solana in addition to EVM chains? I noticed that the demo website (https://demo.web3auth.io/) only displays EVM chains under “Settings.”
Multi-Platform Integration: If we integrate Web3Auth into an app, can we also develop an extension or website that allows our users to seamlessly log in to the same wallet across these platforms? In other words, can users access their wallet from an extension or our website without having to switch to a app?
Wallet Creation and Linking: Is it possible for users to create their wallets on our website or extension, and then seamlessly connect the same wallet to our mobile app using their social login credentials?
Secure Key Sharing: Regarding key sharing and multi-device access, can you provide more details on how the Web3Auth wallet handles key distribution and recovery?
Specifically, we’re interested in understanding how key shares are stored when users create their wallets on a Chrome extension or website and then connect the same wallet to our mobile app. Can these key shares be securely stored within the phone’s secure enclave, in addition to being saved in the user’s device storage where they first created the wallet (e.g., Chrome on desktop) and linked to their social login authentication factors?
Moreover, can multiple devices (more than tree) be used for key storage and recovery? In other words, if a user creates a wallet on their desktop computer and then connects the same wallet to their mobile phone, will the key shares be accessible and recoverable from both devices?
Supported Blockchains: Yes, you will be able to interact and do blockchain interactions with Bitcoin and Solana as Web3Auth is chain agnostic. For some, we have documented the process; for others, you’ll have to do it yourself using their package, which would be similar to our non-evm approach.
For connecting to blockchains other than EVM, Solana, and XRPL, you need to use the private key from Web3Auth and manually make RPC calls to the blockchain. This flow is facilitated by @web3auth/base-provider package. You can read more here
Multi-Platform Integration: Yes, you can build your mobile app seperately with social/email passwordless/ SMS passwordless, etc and implement the same for Web extension seperately. Keep in mind , you can build a Browser extension only for Web not mobile app. You can read our detailed guide on how to set this up . You can look at a live example, Binance Extension Wallet which uses this approach
Wallet Creation and Linking: Yes, you will be able to do so by using the same Client ID /Verifier/Network across your SDK implementation for Website and extension. As mentioned earlier, browser extenstions are not supported for mobile apps. However, you will be able to implement social/passwordless/SMS login etc., seperately with a mobile app. If you use the same verifier across every SDK your wallet address will not change, since all SDKs support all the same verifier information. When you use different login providers, verifiers do change, even though the id, sub, email etc fields remain the same. For such cases, you can use an Aggregate Verifier. Do check out the Interoperability feature as well to manage user wallets via Torus Wallet.
This will need to be handled on a case by case basis and the kind of setup as key storage differes from SDK to SDK. Using the Chrome Storage Module, you have the capability to add or remove a share from the Chrome Extension storage.
Yes, if you build your app for Web and Mobile using our SDKs, provided the Client ID/verfier/Network remain the same, users will be able to access and recover the same keys on multiple devices. There are multiple factors that can be implemented across devices with MFA
Please read more on how the same private keys should be maintained across SDKs and devices.
To better understand your requirements, you may schedule a call with our business team at Calendly - Web3Auth