> ## Documentation Index
> Fetch the complete documentation index at: https://docs.shakesco.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Bitcoin Privacy

> Receive Bitcoin privately using a static address without notifications, address reuse, or extra fees.

<span style={{display:"none"}}>For the complete documentation index, see [llms.txt](/llms.txt).</span>

## The Privacy Problem Bitcoin Never Solved

When Satoshi wrote the [Bitcoin whitepaper](https://bitcoin.org/bitcoin.pdf), Section 10 was dedicated to privacy. The solution? Use a different address for every transaction.

This worked... until on-chain sleuths arrived.

<CardGroup cols={2}>
  <Card title="The Good" icon="check">
    **Low mental overhead** - One master secret recovers all your funds
  </Card>

  <Card title="The Bad" icon="xmark">
    **Traceable payments** - Anyone can link your transactions together
  </Card>
</CardGroup>

**The real problem:** If Alice sends Bitcoin to Bob, then uses the change to pay Charles, both Bob and Charles can track where the money went next.

***

## Previous Solutions (And Why They Failed)

### BIP 47: Payment Codes

Used by Samourai Wallet (#FREESAMOURAI), this approach required a **notification transaction** before sending funds.

<Warning>
  **Two fatal flaws:**

  <ol>
    <li>**Double fees** - You pay for notification + actual payment</li>

    <li>
      **Broken privacy** - The notification itself reveals you're about to
      receive Bitcoin
    </li>
  </ol>
</Warning>

***

## What We Actually Need

<Steps>
  <Step title="No extra fees">One transaction should be enough</Step>

  <Step title="Zero privacy leaks">
    No notification transactions or on-chain signals
  </Step>

  <Step title="Static addresses">
    Share one address, receive unlimited private payments
  </Step>
</Steps>

**Silent Payments delivers all three.**

***

## How Silent Payments Work

<Info>
  **Math notation:**

  <ul>
    <li>Lowercase (a, b, p) = private keys</li>
    <li>Uppercase (A, B, P) = public keys</li>
    <li>`G` = generator point on secp256k1 curve</li>
    <li>`·` = scalar multiplication</li>
  </ul>
</Info>

### The Magic Formula

<Tabs>
  <Tab title="Simple Version">
    **Alice publishes:** Public key `A`\
    **Bob computes:** `A + hash(b · A) · G` = `P` (destination address)\
    **Alice scans:** `A + hash(a · B) · G` = `P` ✓

    Where `b` is Bob's UTXO private key.

    <Accordion title="Why this works">
      Thanks to [ECDH](https://en.wikipedia.org/wiki/Elliptic-curve_Diffie%E2%80%93Hellman), both compute the same shared secret:

      `b · A == a · B`

      So they both derive the same address `P`, but only Alice can spend from it.
    </Accordion>
  </Tab>

  <Tab title="With Input Hash (Recommended)">
    To prevent address reuse when Bob spends from the same UTXO:

    **Bob computes:** `A + hash(input_hash · b · A) · G` = `P`\
    **Alice scans:** `A + hash(input_hash · a · B) · G` = `P` ✓

    The `input_hash` (transaction ID + output index) ensures every payment generates a unique address.
  </Tab>

  <Tab title="Spending & Viewing Keys">
    Alice generates two key pairs for safety:

    * `a_spend` / `A_spend` - Spending keys (keep secret!)
    * `a_view` / `A_view` - Viewing keys (safe to share)

    **Bob computes:** `A_spend + hash(input_hash · b · A_view) · G` = `P`\
    **Alice scans:** `A_spend + hash(input_hash · B · a_view) · G` = `P` ✓\
    **Alice spends:** `a_spend + hash(input_hash · B · a_view) mod n` = `p` (private key)

    <Tip>
      Alice can give her view key to a third-party scanner without risking her funds. They can detect payments but never spend them.
    </Tip>
  </Tab>
</Tabs>

***

## The Result

<CardGroup cols={3}>
  <Card title="One Address" icon="fingerprint">
    Share a static silent payment address forever
  </Card>

  <Card title="Zero Extra Fees" icon="coins">
    Same cost as a regular Bitcoin transaction
  </Card>

  <Card title="Perfect Privacy" icon="shield-check">
    Charles has no idea Alice received Bitcoin from Bob
  </Card>
</CardGroup>

***

## Ready to Integrate?

<Card title="Start Building with Silent Payments" icon="code" href="/silent-payments/integrate">
  Follow our integration guide to implement Bitcoin privacy in your app
</Card>

***

## Learn More

<CardGroup cols={2}>
  <Card title="BIP-352 Standard" icon="book" href="https://github.com/bitcoin/bips/blob/master/bip-0352.mediawiki">
    Read the official Bitcoin Improvement Proposal
  </Card>

  <Card title="Silent Payments Explained" icon="graduation-cap" href="https://silentpayments.xyz/docs/explained/">
    Deep dive into the protocol mechanics
  </Card>
</CardGroup>
