# ZK Login

Web3 applications often present a steep learning curve for new users. Wallet setup, seed phrase management, and unfamiliar authentication flows introduce friction that limits real-world adoption.

**ZK Login addresses this challenge by enabling users to interact with the Vola Network using familiar Web2 authentication methods, without exposing private keys or requiring traditional wallet management.**

ZK Login uses [Google OAuth](https://developers.google.com/identity/protocols/oauth2/javascript-implicit-flow) as the initial authentication layer. From this authentication, a unique on-chain address is deterministically derived and used by the Vola Network to identify the user. This address allows users to interact with the chain and its components while preserving privacy through Zero-Knowledge mechanisms.

<figure><picture><source srcset="/files/09QIrv6mIRAPHuGaqkvO" media="(prefers-color-scheme: dark)"><img src="/files/SJK87Z0R3wbG5InWQLf9" alt=""></picture><figcaption></figcaption></figure>

#### How ZK Login Works

**1. User Authentication (Web2 Layer)**

The user authenticates using Google OAuth, confirming control over their Google account through standard OAuth flows. **At no point does Vola receive or store the user’s Google password.**

**2. Zero-Knowledge Identity Proof**

Following successful authentication, a Zero-Knowledge proof is generated that attests to the validity of the OAuth session without revealing personal identity data, account details, or authentication secrets.

**3. Address Derivation**

Using the verified authentication context, a deterministic on-chain address is derived for the user. This address serves as the user’s identity within the Vola Network and is used for all interactions with the chain and its components.

**4. On-Chain Interaction**

The derived address allows the user to interact with applications, storage services, and other network features just like a traditional wallet, without requiring seed phrases, private key storage, or manual wallet setup.

**5. Ongoing Access**

As long as the user retains access to their Google account, they can securely access their Vola account. Authentication can be repeated when needed without relying on passwords or recovery phrases managed by the protocol.

{% hint style="success" %}

#### ZK Login bridges the usability gap between Web2 and Web3 by combining ease of access with strong cryptographic guarantees. It allows users to enter the decentralized cloud ecosystem without the risks and complexity traditionally associated with wallet-based authentication, while still preserving user sovereignty and security.

{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://wp.vola.network/architecture-overview/security-and-audits/zk-login.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
