Anonymous Identity

ZKAP replaces the traditional blockchain identity model with an entirely new concept: anonymous, ephemeral, zero-knowledge identities. These identities allow users and agents to interact with applications without ever revealing who they are, while still proving that their action is valid.

This section explains what ZKAP-ID is, how it works, and why it is fundamental to the protocol.


1. Traditional Blockchain Identity is Not Private

On all major blockchains today:

  • your address is public

  • your signature is public

  • all transactions are linked to you

  • every action contributes to an on-chain profile

Even if the user is pseudonymous, long-term address activity reveals:

  • trading behavior

  • preferences

  • risk profile

  • wallet clustering

  • patterns that identify the human behind the wallet

This breaks privacy and makes true anonymity impossible.


2. ZKAP introduces a new identity model

ZKAP identities are:

  • ephemeral (exist for one action or session)

  • non-EOA (not tied to a wallet or keypair)

  • zero-knowledge–derived

  • unlinkable between requests

  • invisible to the blockchain

  • never stored on-chain

The blockchain never sees any identity.

Only the ZK circuit sees the identity — and only to verify that it is valid.


3. How ZKAP-ID is generated

A ZKAP identity is computed using a ZK-friendly hash function such as Poseidon.

Conceptually:

ZKAP_ID = Hash(random_seed || timestamp || entropy)

Meaning:

  • random_seed adds entropy

  • timestamp prevents reuse

  • entropy ensures unpredictability

This identity is used only inside the zero-knowledge proof.

No private key is generated. No signature is required.


4. Why there is no public key or private key

In ZKAP:

  • identity does NOT come from ECDSA or EdDSA

  • identity does NOT require a wallet

  • identity does NOT depend on any private key

The identity exists only to create:

  • a nullifier

  • a validity proof

Because the proof verifies identity structure, users do not need signatures.

This makes the identity:

  • impossible to track

  • impossible to link

  • impossible to cluster


5. How the identity is used in the protocol

The identity contributes to:

  1. nullifier generation (prevents replay)

  2. zero-knowledge proof construction

  3. session binding for optional ephemeral state

After the frame is submitted:

  • the identity is never transmitted

  • the identity is never stored

  • the identity is never revealed

It effectively disappears.


6. Benefits of Anonymous Identity

6.1 True anonymity

No address, no public key, no linkage.

6.2 No behavioral tracking

Multiple actions cannot be correlated.

6.3 No deanonymization vectors

Graph analysis becomes impossible.

6.4 Perfect for autonomous agents

Agents don’t need wallets, keys, or signatures.

6.5 Removes wallet fingerprinting

Since there is no wallet, nothing can be fingerprinted.


7. Difference between ZKAP-ID and normal blockchain addresses

Property
Blockchain Address
ZKAP-ID

Persistent identity

Yes

No

Publicly visible

Yes

No

Derives from keypair

Yes

No

Traceable

Yes

No

Used for signature

Yes

No

Used for proving validity

No

Yes (inside ZK)

Tied to a wallet

Yes

No

Anonymous

No

Yes

Last updated