Skip to main content

Why Privacy Matters in Crypto

Cash still dominates everyday transactions. The reason? Privacy and finality. Blockchain nailed finality. Once a transaction is confirmed, it’s permanent. But privacy? That’s where things get tricky. When Bob knows Alice’s wallet address, he can track every payment she makes. Everything is public, transparent, and traceable.

The Good

Public transactions let us track malicious activity and investigate hacks

The Bad

Businesses can’t operate on-chain when competitors can monitor their financial moves
Stealth addresses solve this privacy puzzle while keeping blockchain’s transparency intact.

How Stealth Addresses Work

Math notation guide: - Lowercase letters (p, r, s) = private keys - Uppercase letters (P, R, S) = public keys - · symbol = scalar multiplication on elliptic curves

The Basic Concept

Imagine Charles wants to send Alice some funds without anyone linking the transaction to her known address.
1

Charles generates a random number

He creates a random private key r (called an ephemeral key)
2

He computes a one-time address

Charles multiplies Alice’s public key P by his random number: P · r = P' (a brand new public key) He sends funds to the address derived from P'
3

Alice can spend the funds

Thanks to elliptic curve math, Alice computes the private key for this new address: p · r = s (the private key for P') Now Alice controls this address, but Bob has no idea she received anything from Charles

The Enhanced Approach (EIP-5564)

The basic method has a problem: Alice needs to use her private key to scan for incoming payments. That’s risky. Following the EIP-5564 standard, Shakesco implements a safer approach using view and spending key pairs.
Alice’s Setup:
  • Generates two key pairs:
    • View keys: p_view (private) and P_view (public)
    • Spending keys: p_spend (private) and P_spend (public)
  • Makes both public keys available (P_view and P_spend)
Charles sends funds:
  1. Generates random number r
  2. Computes stealth address from P_spend · r
  3. Encrypts r using ECDH with:
    • Alice’s P_view (public view key)
    • His ephemeral private key
  4. Sends funds to stealth address
  5. Publishes encrypted r and ephemeral public key on-chain
Alice scans for payments:
  1. Uses her p_view (private view key) with Charles’s ephemeral public key to decrypt r
  2. Computes potential private key: p_spend · r
  3. Derives address from this private key
  4. If address matches the stealth address → she owns the funds! 🎉
Alice never exposes her spending private key during scanning. She only uses her view key to detect payments, making the process much safer.

The Privacy Advantage

With stealth addresses:
  • ✅ Every payment goes to a unique, unlinkable address
  • ✅ Only the sender and receiver know who’s involved
  • ✅ Third parties can’t track transaction patterns
  • ✅ Businesses can operate with financial privacy
  • ✅ Blockchain transparency remains for fraud detection

Learn More


Ready to implement stealth payments? Check out our integration guide to get started.