# Superball
![superball](super_ball.jpg)

Superball provides remailer-like location privacy for Nostr users. A **Superball** is a wrapped nostr event, similar to a TOR onion packet, that bounces between nostr relays and **Throwers**.

A **Thrower** is a nostr-capable daemon that monitors nostr nodes, looks for superballs posted for them, grabs them, cryptographically unwraps them, rewraps them potentially with padding, then throws the superball to relay(s) that it is instructed to, when it is instructed to.

## How It Works

1. **User creates content** - Normal signed Nostr event with their real pubkey
2. **Wrap as Superball** - Bundle event + routing instructions, encrypt to Thrower daemon
3. **Anonymous bouncing** - Superball bounces through multiple Throwers with delays and padding
4. **Final posting** - Original event appears on target relay with user's identity but from Thrower's location

## Key Features

- **Location Privacy**: Hide your network location while preserving your identity
- **Traffic Analysis Resistance**: Random delays and size padding prevent correlation
- **Simple Protocol**: Uses NIP-44 encryption with new kind 22222 for routing
- **Flexible Routing**: Support for multi-hop paths through multiple Throwers
- **Signature Preservation**: Original event signatures maintained for authenticity
- **Audit Security**: Detect and avoid malicious Throwers through cryptographic verification



## Documentation

- [`THROWER.md`](THROWER.md) - Rules and behavior for Thrower operators
- [`EXAMPLE.md`](EXAMPLE.md) - Complete walkthrough example
- [`SUPs.md`](SUPs.md) - Superball Upgrade Proposals

Perfect for journalists, activists, or anyone who needs to protect their physical location while maintaining accountability for their public statements.

