Open Source · Tor-Powered · Zero Metadata

Peer-to-peer group chat that routes all traffic through the Tor network.
No accounts. No logs. No persistent keys. When the session ends, nothing remains.

E2E Encrypted
X25519 Key Exchange
Tor Network
0 Logs Stored
scroll

Built for Privacy by Design

Every architectural decision in Haze is made to protect your identity and communications.

Zero Identity

No usernames stored, no accounts, no registration. Your identity exists only for the duration of a session.

Tor-Only Transport

All traffic enters and exits through the Tor network via ephemeral hidden services. Your IP is never revealed.

End-to-End Encryption

X25519 ECDH key exchange, ChaCha20-Poly1305 cipher, HKDF-SHA256 key derivation with per-message nonces.

Ephemeral Sessions

Session keys are generated fresh each run and never written to disk. When the session ends, nothing persists.

Panic Button

One click wipes session keys, terminates all connections, and forces immediate exit via os._exit(0) — bypassing all cleanup handlers.

Multi-Language

English and Turkish interface support. Native desktop UI with animated Tor circuit visualizer.

How Haze Works

Anonymous peer-to-peer communication through layered encryption and Tor routing.

Client A
Tor Circuit
Encrypted + Anonymous
Host .onion hidden service
Tor Circuit
Encrypted + Anonymous
Client B
01

Host Starts a Session

The host launches a Tor ephemeral hidden service. A .onion address appears in the title bar — share it through a separate secure channel.

02

ECDH Handshake

Each client performs a one-pass X25519 key exchange. The session key is wrapped under a per-connection derived key — plaintext keys never appear on the wire.

03

Encrypted Messages

All messages are encrypted with ChaCha20-Poly1305 using per-message random 12-byte nonces and framed with a 4-byte length prefix.

04

Session Ends, Nothing Remains

When the session ends, the ephemeral hidden service is removed, keys are wiped, and the Tor data directory is deleted. No trace.

Every Layer Hardened

A rigorous security model with cryptographic guarantees at each level.

Property Implementation Status
Transport Anonymity Tor onion routing; client IP never revealed to host Verified
Message Confidentiality ChaCha20-Poly1305 with per-message nonces Verified
Forward Secrecy Ephemeral session keys; new key per session Verified
Key Exchange X25519 ECDH with HKDF-SHA256 derivation Verified
Persistent Storage None — no database, no files, no cookies Zero
Panic Wipe os._exit(0) — bypasses all Python cleanup handlers Verified
Hidden Service Key Never written to disk; held in Tor process memory only Verified
Key Exchange X25519 ECDH
Cipher ChaCha20-Poly1305
KDF HKDF-SHA256
Transport Tor SOCKS5
Nonce 12-byte random
Info String haze-protocol-v1

See It In Action

Desktop app and mobile client. Every pixel designed for operational security.

Haze login screen
Session Setup

Connect or Host

Choose to host a new session or join an existing one with a .onion address.

Haze protocol info
Protocol Info

Live Tor Visualizer

Animated circuit diagram showing real-time Tor routing status and encryption parameters.

Android App

Full-featured mobile client with the same zero-identity architecture.

Haze mobile join/host screen
Session

Join or Host

Connect to an existing session or host a new one — all routed through Tor.

Haze mobile Tor circuit
Tor Circuit

Live Status

Animated Tor circuit visualizer showing real-time routing and encryption details.

Get Up and Running

Install Haze on your preferred platform — Linux desktop or Android mobile.

paru
paru -S haze
yay
yay -S haze

Available on the Arch User Repository (AUR). Dependencies including Tor are installed automatically.

bash
# Install Tor
sudo apt install tor

# Clone and install Haze
git clone https://github.com/berk-kucuk/Haze
cd haze
bash installer/install.sh
bash
# Install Tor
sudo dnf install tor

# Clone and install Haze
git clone https://github.com/berk-kucuk/Haze
cd haze
bash installer/install.sh
bash
# Create virtual environment
python -m venv .venv
source .venv/bin/activate

# Install dependencies
pip install -e .

            # Launch
haze

Haze for Android

Full-featured mobile client. Tor bundled, zero config. Requires Android 8.0+.

Version 1.0
Size 32 MB
Platform Android 8.0+
Download APK

Verify your download with the SHA-256 checksum from the GitHub releases page.

Requirements

Python >= 3.11
Tor binary in PATH
PyQt6 >= 6.6.0
stem >= 1.8.2
cryptography >= 42.0.0
python-socks >= 2.4.4

Disclaimer

Haze is provided for research and educational purposes. It demonstrates privacy-preserving communication techniques. Tor provides strong anonymity at the network layer but does not protect against endpoint compromise, a malicious host, or physical device access. Users are responsible for understanding the legal implications of using anonymity tools in their jurisdiction.