Free 30-min Web3 Consultation
Book Consultation
Smart Contract Security Audits
View Audit Services
Custom DeFi Protocol Development
Explore DeFi
Full-Stack Web3 dApp Development
View App Services
Free 30-min Web3 Consultation
Book Consultation
Smart Contract Security Audits
View Audit Services
Custom DeFi Protocol Development
Explore DeFi
Full-Stack Web3 dApp Development
View App Services
Free 30-min Web3 Consultation
Book Consultation
Smart Contract Security Audits
View Audit Services
Custom DeFi Protocol Development
Explore DeFi
Full-Stack Web3 dApp Development
View App Services
Free 30-min Web3 Consultation
Book Consultation
Smart Contract Security Audits
View Audit Services
Custom DeFi Protocol Development
Explore DeFi
Full-Stack Web3 dApp Development
View App Services
the-cypherpunk-ethos-in-modern-crypto
Blog

Why Your SBTs Are Probably Leaking Your Identity Right Now

Soulbound Tokens (SBTs) promise non-transferable credentials, but their naive on-chain implementation creates a permanent, linkable identity graph. This analysis breaks down the deanonymization vectors and why current models fail the cypherpunk test.

introduction
THE LEAK

Introduction

Soulbound Tokens (SBTs) are failing their core privacy promise, exposing user identities through on-chain metadata and transaction patterns.

SBTs are not private by default. The ERC-721 and ERC-1155 standards used by most SBTs, including those from Gitcoin Passport and Optimism Attestations, store all metadata on-chain. This creates a permanent, public record of your credentials linked to your wallet address.

On-chain analysis deanonymizes SBT holders. Tools like Nansen and Arkham correlate SBT ownership with transaction history. Holding a specific university SBT reveals your entire financial footprint, from Uniswap swaps to Aave loans, defeating pseudonymity.

The attestation graph is a vulnerability. Protocols like EAS (Ethereum Attestation Service) create public, verifiable links between identities. A single leaked connection, like a KYC'd exchange withdrawal, maps your real-world identity to every SBT you own.

ON-CHAIN DATA LEAKAGE

SBT Privacy Model Comparison: Naive vs. Advanced

Compares the privacy and security characteristics of basic on-chain Soulbound Tokens against advanced cryptographic models like Semaphore and zk-SNARKs.

Privacy Feature / MetricNaive On-Chain SBTAdvanced Privacy SBT (e.g., Semaphore)Zero-Knowledge SBT (e.g., zk-SNARKs)

Identity Linkage to On-Chain Address

Graph Analysis Vulnerability

100%

< 1%

0% (theoretically)

Selective Disclosure of Traits

Proof Generation Gas Cost

~50k gas (mint)

~200k-500k gas

~500k-2M gas + trusted setup

Off-Chain Data Requirement

Interoperability with DeFi (e.g., Aave, Compound)

Conditional (via proof)

Sybil Resistance via Proof-of-Personhood

Primary Use Case

Public reputation, non-transferable NFTs

Private voting (e.g., DAOs), anonymous attestations

Private credit scoring, compliant DeFi access

deep-dive
THE IDENTITY LEAK

The Graph is Permanent, Your Alias is Not

Soulbound Tokens (SBTs) create permanent, linkable on-chain graphs that deanonymize pseudonymous wallets.

SBTs create permanent graphs. Each token is a verifiable, non-transferable node linked to your wallet address. This constructs a publicly queryable identity graph on-chain that persists forever, unlike a temporary alias.

Pseudonymity is not anonymity. Wallets like vitalik.eth are single-use pseudonyms. An SBT for a conference, a Gitcoin Passport stamp, or a POAP creates a permanent link between that alias and all future activity.

Cross-protocol activity links identities. Using an SBT-gated wallet on Aave and then on Uniswap allows any observer to correlate the two activity sets. The graph traversal between protocols is trivial.

Evidence: A 2023 study by Chainalysis demonstrated that 90% of 'anonymous' wallets can be linked to real identities using just three non-financial on-chain interactions, a vector SBTs massively expand.

counter-argument
THE METADATA LEAK

The Steelman: "But We Use Privacy Pools & ZK!"

Even with advanced privacy tech, your SBTs create a unique on-chain fingerprint that deanonymizes you.

Privacy pools like Tornado Cash only anonymize the value of a transaction, not the metadata of its endpoints. Your SBT's unique combination of mints, transfers, and interactions creates a persistent, linkable identity graph that ZK proofs cannot hide.

Zero-Knowledge proofs protect state, not behavior. A zk-SBT proves you hold a credential without revealing it, but the act of using it—its transaction timing, gas patterns, and counterparties—creates a behavioral fingerprint that is trivial to correlate across chains.

On-chain analysis firms like Chainalysis track these patterns, not just token flows. Your SBT's immutable history acts as a public ledger of associations, making pseudonymity a temporary state until one real-world link is established.

Evidence: Research from privacy protocols like Aztec and Zcash shows that without constant, proactive privacy (e.g., frequent shuffling in pools), even shielded transactions are vulnerable to heuristic clustering attacks over time.

protocol-spotlight
SBT PRIVACY FAILURES

Building the Anonymous Future: Protocol Spotlight

Soulbound Tokens promise decentralized identity, but naive implementations create permanent, linkable on-chain graphs.

01

The Graph is the Leak: On-Chain Linkability

Your SBTs are not islands. The transaction graph linking your wallet to minting contracts, airdrops, and interactions creates a permanent public dossier. This metadata is often more revealing than the token data itself.\n- Linkability Risk: A single on-chain action can deanonymize your entire SBT portfolio.\n- Permanence: Unlike cookies, blockchain data is immutable and public forever.

100%
Public
Immutable
Data
02

Semaphore & zk-SBTs: Zero-Knowledge Proofs for Identity

The solution is to cryptographically separate proof of credential from the holder's identity. Protocols like Semaphore and zk-SBTs allow users to generate a zero-knowledge proof that they hold a valid SBT without revealing which one.\n- Selective Disclosure: Prove you are a "verified developer" without leaking your GitHub handle.\n- Unlinkability: Multiple proofs from the same identity cannot be correlated on-chain.

zk-Proof
Core Tech
0 Link
Correlation
03

The Relayer Problem: Who Pays the Gas?

Even with zk-proofs, submitting a transaction to the blockchain requires a fee-paying wallet, which can be traced. Privacy requires solving the gas footgun.\n- Solution Pattern: Use a decentralized relayer network or paymasters (like EIP-4337 account abstraction) to sponsor meta-transactions.\n- Critical Detail: The relayer must not be able to link the sponsored transaction to the user's original request, requiring a privacy-preserving p2p network.

EIP-4337
Enabler
0 Gas
For User
04

Aztec & Noir: Programmable Privacy for SBT Logic

Simple holding proofs aren't enough. Real-world use requires private computation on your credentials. Aztec's zk-rollup and Noir language enable complex, private logic over SBT states.\n- Private Verification: Prove your reputation score is >X without revealing its value or history.\n- On-Chain Obfuscation: Execute governance votes or access gating with full privacy, moving beyond simple proof-of-holding.

zkVM
Execution
Noir
Language
05

Polygon ID vs. Worldcoin: The Centralization Trap

Privacy tech is meaningless if the issuer is a centralized oracle. Compare Polygon ID's decentralized issuers to Worldcoin's biometric orb. The threat model shifts from on-chain graphs to issuer coercion.\n- Decentralized Issuance: Trust-minimized credential issuance (e.g., via DAOs) reduces single points of failure.\n- Sybil Resistance vs. Privacy: Worldcoin's biometric approach solves Sybil at the cost of introducing a central, high-value attack target.

DAO-Based
Issuance
Biometric
Risk
06

The Endgame: Stealth Addresses & Full Abstraction

The final piece is breaking the link between your identity and your blockchain address. Stealth address systems (like Zcash's Sapling or ERC-5564) allow senders to generate a one-time address for each interaction.\n- Passive Privacy: Your SBTs can be sent to you without publicly associating them with your master address.\n- Composability Required: Must integrate with zk-SBTs and relayers for a complete privacy stack, a challenge for current EVM ecosystems.

ERC-5564
Standard
1-Time Use
Addresses
takeaways
SBT PRIVACY FAILURES

TL;DR for CTOs & Architects

Soulbound tokens promise persistent, non-transferable identity, but on-chain metadata and linkability create severe privacy leaks.

01

The On-Chain Metadata Trap

Storing credentials or attributes directly in SBT metadata is a permanent, public leak. This creates a global correlation database for any entity with an indexer.

  • Data is immutable and permanent
  • Exposes PII, affiliations, and reputation
  • Enables mass surveillance and profiling
100%
Public
Permanent
Leak
02

The Graph Linkability Problem

Even with private metadata, the transaction graph linking your SBT wallet to other activity (DeFi, NFTs, social) is fully exposed. This is the primary vector for deanonymization.

  • Connects pseudonymous identities across protocols
  • Reveals social graphs and financial behavior
  • Defeats the purpose of a 'soul'
~0.1 ETH
To De-anon
1 Hop
Linkage
03

Solution: Zero-Knowledge Credentials

Move verification logic off-chain with ZKPs. Store only a cryptographic commitment (e.g., a hash) on-chain. This proves credential validity without revealing the underlying data.

  • Leverage Semaphore, Sismo, or Polygon ID
  • Selective disclosure of attributes
  • Breaks on-chain linkability
ZK-SNARKs
Tech
~0.01 ETH
Verify Cost
04

Solution: Stealth Address Registries

Use a canonical registry (like Ethereum's ERC-5564) to generate a unique, unlinkable stealth address for each interaction. This severs the transaction graph.

  • Prevents graph analysis from the root
  • Each app interaction uses a fresh address
  • Integrates with existing SBT standards
1 Registry
Standard
N Addresses
Per User
05

The Privacy vs. Utility Trade-Off

Maximum privacy (ZK + Stealth) can reduce composability. Protocols like Worldcoin or Gitcoin Passport show that some linkability is often required for sybil resistance and reputation.

  • Architect explicit privacy tiers
  • Use attestation aggregators like EAS
  • Define clear data minimization policies
ZK
Privacy
Graph
Utility
06

Immediate Audit Checklist

If you're building with SBTs, audit this now:

  • Are any raw attributes stored on-chain?
  • Can user activity be linked across dApps?
  • Do you support revocation without revealing the holder?
  • Is your indexer leaking correlation data via API?
4
Critical Qs
Now
Action
ENQUIRY

Get In Touch
today.

Our experts will offer a free quote and a 30min call to discuss your project.

NDA Protected
24h Response
Directly to Engineering Team
10+
Protocols Shipped
$20M+
TVL Overall
NDA Protected Directly to Engineering Team