Ambire’s Signature Validator Library Unlocks Smart Wallet Support for dApps
Insights & Learnings from our Guild.xyz integration
🔥Ambire🔥 means getting most creative when hitting a true challenge.
This is the story of how one our solution can change a great deal for many.
Smart Wallets & dApps: a rollercoaster romance ❤️🎢 ❤️
As smart contract wallets made their way into the crypto scene, dApps were exploding and gave us a glimpse of what future Web3 could mean. Ambire was in the middle of it all: developed during 2021 and launched in December, we offered dApp connection from the get-go, via WalletConnect. The new year and our roadmap had us pumped 🚀
Yet as we gained more users, it became clear that there was a fundamental issue with some of the dApps not identifying smart (contract) wallet signatures. We started investigating, only to realize this was a recurring problem across our category — the same was happening to [Gnosis] Safe, Argent, Sequence etc. 😰
In short, some dApps are built without taking into account all signature formats, specifically those for smart contracts on Ethereum (namely smart contract on-chain verification).
The situation has two underlying issues, as we see it:
— back in 2020, smart contract wallets were a lesser known niche in the MetaMask & exchanges-dominated landscape of crypto wallets; devs just didn’t know 🤷
— the first also contributed to the second aspect, which was developers eager to build dApps without having full grasp of the Ethereum wallet space, with most developers only testing the dApps with MetaMask 🦊
Those factors grew to exclude smart contract wallet signature validations from a large number of dApps, such as OpenSea, Looksrare, Snapshot, Curve, Avalanche Bridge, Collab.land, Pangolin, dYdX, Loopring and many others.
However, in recent months we felt the winds changing 💨 Both online and at events we attended, we’re seeing the Ethereum community gradually embracing the power of account abstraction — and the possibilities it unleashes for smart wallets 🎇
🎯 Solution: Universal Ethereum Signature Library by Ambire
⏪Back to spring 2022 — we 🔥ambired-up 🔥and created a simple solution: an NPM library that enables universal EthSignature verification. ☑️
The library is open-source, easy to verify and audit — only 80 lines of code — and just as easy to implement.
- Standard message verification (eth_sign)
- 712 Typed data verification (eth_signTypedData_v*)
- 1271 Smart contract on-chain verification (isValidSignature)
- An optional smart contract signature off-chain verification (e.g. if the smart wallet is counterfactual and not deployed yet)
We shared it with our peers and by spring we were already pushing for dApps to integrate it — Guild.xyz was one of the first to implement easily.
💥 Guild siezes Ehereum with Ambire Sig Lib Integration
Guild.xyz is one of the most popular tokenized membership platforms on Ethereum, designed to manage access and create layers for communities, in a decentralized approach: an infrastructure for platformless membership. So it’s a must for them to be easily available to as many users as possible.
When our team reached out to Guild and suggested that they integrate the Ambire Signature Library, they started realising their own code was also gatekeeping users🚪They were open to understanding the situation and less frightened of ‘security issues’, as we found in discussions with less Ethereum-versed organizations:
Our team partnered-up with that of Guild for a smooth integration of the library and to ensure full Ambire Wallet support. The result is a clear success:
- Guild is now available to smart contract wallet users
- The Ambire users can now take full advantage of the numerous communities that utilize Guild 🎉
🔮 Next: we’re sure that more and more protocols will embrace our Universal Sig Lib and open-up to smart wallets also. It’s up to all of us to educate the industry about smart wallets, and now it’s also easy — after all, it’s obvious they are the future 😉
P. S. Hey, Ambire fam 🌈 here’s our short user guide for what to do when a dApp you want to use doesn’t support Ambire/smart wallet signatures:
- 📯Reach-out to the dApp team and let them know that their code excludes smart wallets like Ambire or [Gnosis] Safe, and share with them the solution: our Universal Signature Validator Library
- 🗣Give us a holler on any Ambire community channel so we can connect with the dApp team from our end to help speed integration
- ⏰Wait for integration announcement ➡️ enjoy the dApp using Ambire 🚀
P.P.S. If you’re a dApp developer, well… Vitalik says it best 😆:
SigTool for EVM
In the meantime, you can use another super useful tool we have created: the SigTool signature validator.
It lets you easily sign and verify regular, 721 and 1271 Ethereum signatures, check it out here:
Interested in Ambire? Follow us: