The WalletConnect v2 rollout happened earlier this week and the migration was big news in the web3 sphere. The new version promises better functionality, upgraded security protocols and improved user interface, among other features. Let’s break down the features and key changes involved in the migration from v1 to v2.
For those new to this, let’s first look at what WalletConnect is - it’s an open-source technology that allows users to connect their cryptocurrency wallets with dApps, or decentralised applications, seamlessly and interact with them securely, thus providing a superior user experience.
Why the Change?
With WalletConnect v1 being widely used as one of the prominent types of wallet connections, there were issues where certain connection types were unable be made - particularly where QR codes were not displayed due to restrictions imposed on smartphones operating systems.
What’s the change?
The most prominent difference between the two versions is multi-chain compatibility. v1 was similar to Metamask's browser extension, where each session tracked only one chainId, whereas v2.0 allows dApps to request a set of chains and confirms compatibility. Additionally, the wallet no longer controls the chainId but instead tracks multiple chainIds within each session.
Chain Agnostic Interface
WalletConnect v1 supported only EVM-compatible wallets and dApps which presented difficulties for external chain ecosystems. The v2 rollout fixed this by introducing support for multiple blockchain networks, allowing for a more inclusive and versatile experience for users.
Improved Pairing Process
In the previous version of WalletConnect, users had to manually scan a QR code with their wallet app every time they wanted to connect to a dApp. In v2, instead of this cumbersome process, you only need to approve the connection once during the initial setup; this simplifies the process and saves time whenever you want to use different dApps.
An inconvenience that v1 presented was that if you closed the app/browser tab or lost connectivity while your wallet was connected, you had to start a new session and reauthorize it each time. The new version will remember your session and eliminate the need for constant reauthorization, thus ensuring a consistent connection and no hassle or interruptions.
Decentralised Message Relaying
In v1, user messages went through several relays (servers) before reaching the dApp, which raised concerns about privacy and security since these relays could potentially access or manipulate data. With v2, this problem was solved by introducing end-to-end encryption, which effectively meant no one in between, including the relays, could read or modify sensitive information. Additionally, v2 also made significant improvements in terms of performance and speed, reducing latency during communication between the wallet and the DApp by optimising how messages are processed and delivered.
Multiple Entry Points
WalletConnect v1 had a limitation where only one device or app could connect to a wallet at a time, which was inconvenient for users who wished to access their wallet from different apps or devices. The v2 model resolved this by introducing session management that allows multiple connections to interact with the same wallet simultaneously. This allowed for secure and flexible digital asset management across various platforms and devices securely.
Better User Experience
One of the primary reasons for rolling out v2 was to improve the user experience for those interacting with the protocol. The new version allows faster connections between users’ wallets and dApps, leading to more seamless transactions. This means users will no longer have to wait through long load times or other possible issues that could cause frustration.
A significant demerit of v1 was that there was no way to ensure that server messages were acknowledged by clients or to track JSON-RPC request history. v2 solved this by introducing ‘message reply signing’, a feature which allows the recipient to know if a message was successfully received and processed by the user's wallet. By implementing this, WalletConnect ensures clear communication between applications and wallets.
The Final Word
In conclusion, Walletconnect v2 was released to simplify the experience of using crypto wallet based dApps, and to make them more secure and convenient. Since v2 is not backwards- compatible with v1, the migration is essentially mandatory for all users. Only time will tell if the changes are an improvement on the platform or not.
What do you think about the migration? Are there other features that you feel should have been added, removed or changed? Let us know through our feedback form or through our social media handles!
References: Walletconnect Docs