For the complete documentation index, see llms.txt. This page is also available as Markdown.

πŸ““Smart Sign-On

​Cronos zkEVM Smart Sign-On is an extension of ZKsync Smart Sign-On (SSO), a user and developer friendly system designed to simplify authentication, session management, and transaction processing.

Built on the Cronos zkEVM chain, it enables users to interact with decentralized applications using passkeys, secure credentials stored on their devices, eliminating the need for traditional seed phrases. When a user signs up, their device creates a passkey (like a secure login), which links to a smart account on-chain. This smart account holds their assets and lets them interact with dApps. Through the SSO SDK, dApps can create short-term sessions where users can approve transactions using simple methods like biometrics or a PIN, instead of signing each one manually. This helps make the experience faster, safer, and more user-friendly.

Key Features

  • Passkey based authentication

  • Modular smart accounts

  • Configurable sessions

  • No installs required

  • No seed phrase or private key exposure

  • Accounts can easily be recovered

Auth Sever

The Cronos zkEVM SSO system simplifies account creation and login by leveraging passkeys and smart accounts, all managed through a secure and privacy-preserving authentication layer.

The authentication server is hosted at https://sso.zkevm.cronos.org/. This static web page acts as the central hub for managing user passkeys and smart account sessions.

When signing in for the first time, users will:

  • Create a passkey, which is stored securely on their device (e.g., in iCloud Keychain or Google Password Manager).

  • Automatically deploy a smart account on Cronos zkEVM linked to the passkey. The deployment fee is sponsored by Cronos zkEVM via a paymaster.

Passkeys are bound to the SSO domain (i.e., sso.zkevm.cronos.org) due to WebAuthn security constraints. This means:

  • Your passkey works across any DApp that integrates with Cronos zkEVM SSO.

  • You can use the same account across multiple DApps without re-registering.

Multi-Device Access

If your device supports passkey sync (e.g., through iCloud or Google Password Manager), your passkey can be securely shared across your other devices, allowing you to sign in with the same SSO account on each device.

Alternatively, if you sign in on a new device without syncing, you'll be prompted to create a new passkey. This also creates a separate smart account, since each passkey is treated as a distinct identity. In other words, registering a new passkey on a different device (without syncing) means starting with a new account.

Cronos SSO Dashboard

This Cronos zkEVM SSO dashboard serves as a unified interface for managing authentication and account operations on the Cronos zkEVM ecosystem. Acting as both an SSO Auth Server and a user dashboard, it enables users to securely interact with the Cronos zkEVM through a simple single-page application.

As a non-custodial intermediary, the Auth Server supports:

  • Passkey Creation: Generate and manage passkeys for secure, password-less authentication.

  • Session Display: Displays session keys configured with specific access permissions and spending constraints.

The user dashboard extends functionality by allowing users to:

  • View asset balances in Cronos zkEVM

  • Monitor and terminate active sessions

  • Manage passkeys and registered devices (Coming soon)

  • Set up account recovery options (Coming soon)

  • Review full transaction history (Coming soon)

  • Explore the NFT marketplace (Coming soon)

Note: Cronos zkEVM SSO is under development, and will be released in future updates.

Quick Start

This quick start is based on the ZKsync SSO Quick Start, adapted to use Cronos zkEVM blockchain specifications. For more details, please refer to the ZKsync SSO Quick Start and Session Interface documentation.

1. Install the ZKsync SSO SDK package

Note on peer dependencies:

  • @wagmi/core is required when using the ZKsync SSO connector (zksyncSsoConnector) in your app.

  • @simplewebauthn/browser and @simplewebauthn/server are required when using SDK passkey functionality directly inside your app.

2. Config Cronos zkEVM networks

3. Add ZKsync SSO connector to your app

1. Install the ZKsync SSO SDK package

2. Configure platform-specific settings

The React Native SDK currently supports iOS and Android only. Make sure your application is set up to create passkeys by following the platform-specific guidelines:

3. Set up the SDK and register an account

Deployed Contract Information:

SessionKeyValidator

0x084035cb30507CB7bF9e908Bd1e4514BcE594801

WebAuthValidator

0x141D9c2b49FdE9E6Ce89eCbdCFFde196D5c06161

AAFactory

0xFC5620d827b262Eb2133A8b64FB7E85682f717AC

AuthServerPaymaster

0xDeA0694F76babC82dc2A04fEB60cdFD17DD389E9

SessionKeyValidator

0xfebC82bBFC6FB8666AC45fa8a601DfA34Ce30710

WebAuthValidator

0x0A019BD60E42b9d18413C710992B96E69dFFC5A0

AAFactory

0x381539B4FC39eAe0Eb848f52cCA93F168a0e955D

AuthServerPaymaster

0xA7B450E91Bc126aa93C656750f9c940bfdc2f1e9

4. Send a transaction

More Examples

For more examples on how to build dApps with Cronos zkEVM SSO, please visit our GitHub repository:

https://github.com/cronos-labs/zksync-sso/tree/main/examples

Last updated