March 15, 2023

The importance of Sign In With Ethereum

The importance of Sign In With Ethereum

Sign In With Ethereum

What it is, Why it's important, and How to add it to your dapp

Sign-In With Ethereum (SIWE) has become an essential tool for creating rich and contextual user experiences in a safe manner. SIWE is built and supported by SpruceID, ENS Domains, and Ethereum. Let's dive into what SIWE is and why it's important.

Wallet Connection

Connecting your Ethereum wallet to a dapp to enable the dapp to identify which account you claim to be using. However, it doesn't allow the dapp to remember or store anything about your identity. This limitation was initially acceptable because dapps could ask users to sign for every on-chain transaction. However, as dapps evolved, they started to store user preferences and other contextual information, which necessitated creating user sessions.

Sign In With Ethereum

SIWE allows dapps to create a standard for authenticating and creating user sessions for wallets in a completely self-custodial manner without relying on centralized providers. By doing so, it ensures that users' private keys never leave their wallets, reducing the risk of theft or compromise. Additionally, SIWE improves the user experience by simplifying the login process, allowing users to log in using just their Ethereum wallets rather than remembering and managing multiple usernames and passwords. SIWE is built on the Ethereum Name Service (ENS), which is a decentralized domain name system for the Ethereum network. ENS provides human-readable domain names that can be linked to Ethereum addresses, making it easier for users to interact with dapps without the need to copy and paste long, complex addresses.

If you're a dapp developer, be sure to check out the documentation at https://login.xyz to get started using SIWE. If you're a user, keep an eye out for dapps that support SIWE or wait for some 0xPass updates!