Skip to content

digkill/Wormhole

Repository files navigation

🌌 Wormhole Messenger

A peer-to-peer, end-to-end encrypted messenger built with ❤️ in Rust.
Private. Offline-friendly. Hacker-vibe. No surveillance.

Wormhole Mascot


🚀 Features

  • 🔐 End-to-end encryption with sodiumoxide (NaCl/box)
  • 💬 Real-time chat via WebSocket
  • 🧠 Public key generation and auto-saves
  • 💾 Message history stored locally in messages.json
  • 📦 Manual encrypt / decrypt CLI
  • 🧙 Telegram notifications for incoming messages
  • 🦀 Written entirely in idiomatic Rust

📦 Requirements

  • Rust 1.75+
  • .env file (for Telegram bot, optional)
TELEGRAM_TOKEN=123456789:ABCDefGhIjKlmnOpQrStUvWxYz
TELEGRAM_CHAT_ID=123456789

🧪 Commands

🧑‍💻 Run secure chat client:

cargo run -- client <your_username>

Example

cargo run -- client Aliceclear

🔐 Encrypt a message for someone:

cargo run -- encrypt <recipient_username> "your secret text"

💡 Output is base64 payload — send it via any medium (email, carrier pigeon, Morse code).

🔓 Decrypt a message:

cargo run -- decrypt "<base64_payload>"

💡 Works if your private key (wormhole_keys.json) is present.

📜 Show local chat history:

cargo run -- history

💡 Prints out all previously decrypted messages.

🧠 Public Key Management

  • Each user has a .pk file (e.g. Aliceclear.pk) for easy encryption.
  • Keys are automatically saved on first use.
  • If a new user sends you a message — their public key is saved too.

🧙 Telegram Alerts (optional)

On new messages, you get Telegram alerts in your private bot.

To use it:

  • Create a Telegram bot via @BotFather
  • Get your chat_id via /getUpdates
  • Set the .env as above

✨ Mascot This project’s spirit animal is a Rust-powered wormhole core spirit 💫 A creature that lives in encrypted tunnels of hyperspace and delivers your secrets.

🦀 Powered by:

  • tokio
  • axum
  • sodiumoxide
  • tokio-tungstenite
  • dotenv
  • serde
  • reqwest

💛 Made with rust and love by @digkill No tracking. No backend. Just ✨ encrypted p2p hyperspace.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages