Features
Passkey Authentication
Passkeys are a core feature supported by ZKsync SSO that enable secure, passwordless authentication for users interacting with applications on the ZK Chain. Stored on users' devices, these passkeys make for a self-custodial and secure solution to private key management. This standard also supports biometric authentication methods like Face ID and fingerprint recognition, utilizing the secp256r1 elliptic curve via native precompile in ZKsync.
Sessions
A session is a temporary key that grants limited permissions to an account, governed by a configurable policy set by the developer based on the needs of their application. These sessions require explicit approval from the account owners and can be revoked or removed at any time after creation. A session key holder can execute a restricted set of transactions from the account without needing the account owner’s signature for each action.
When an application requests a session, it specifies the desired policies that limit what that session key can do, which the account owner can approve. This ensures that even if the session key is compromised, the potential loss is capped.
Account Recovery
Multiple Devices with Passkey Synchronization
Users can synchronize their passkeys across multiple devices using services like iCloud Keychain for Apple devices or similar services on other platforms. This means if one device is lost, the passkeys are still accessible on other synchronized devices.
More account recovery options are coming soon
Modular
Developers can enhance the functionality of ZKsync SSO accounts by implementing compatible modules via smart contracts. The module interface is based on ERC-7579 to allow maximum flexibility while using ZKsync's powerful native account abstraction to developer overhead.
The existing passkey and session features are already implemented as modules, and installed by default for every new account deployment. Modules can be added or removed from the account, without having to migrate or upgrade the whole account!