Zero Central Servers • End-to-End Cryptographic Sovereignty • Decentralized Kademlia Mesh • Stego-Carriers

🚀 GitHub Releases & Downloads • 📥 Download NodeX.exe • 📦 Download ZIP Archive • 🛡️ Security Model

NodeX is a sovereign, serverless, peer-to-peer (P2P) desktop communication platform written from the ground up in modern Rust.

Unlike conventional "secure" messengers that rely on centralized routing servers, phone number registrations, or proprietary cloud infrastructure, NodeX creates an autonomous distributed overlay network. Every client is an independent cryptographic node that participates directly in routing, distributed storage, and zero-knowledge message relaying.

graph TD

A[NodeX Client A] -->|1. Direct UDP Fast Path / 0-RTT| B[NodeX Client B]

A -.->|2. NAT Hole Punching STUN/ICE| B

A ==>|3. Blind 2-Hop Onion Circuit| R1[Relay Node 1] ==> R2[Relay Node 2] ==> B

A -->|4. Store & Forward Encrypted Mailbox| DHT[(Kademlia DHT Mesh)]

DHT -.->|Retrieve on Node Online| B

A -->|5. LSB Steganographic Image Carrier| B

- Asymmetric Identity: Native Ed25519 signing keys and X25519 key-agreement identities.

- Double Ratchet Engine: Forward Secrecy (PFS) and Break-in Recovery for every session using HKDF-SHA256 and ChaCha20-Poly1305 AEAD.

- Zero-Knowledge Addressing: User identities are 256-bit cryptographic public hashes (NodeId). No phone numbers, emails, or KYC required.

- Direct Fast-Path UDP (0-RTT): Low-latency direct socket transport for active peers.

- Autonomous NAT Traversal (ICE/STUN): Hole-punching mechanism resolving Symmetric and Cone NATs across diverse WAN topologies.

- Blind 2-Hop Onion Routing: Multi-layered payload encapsulation across random intermediary nodes, hiding IP origins from recipients and ISPs.

- Decentralized DHT Mailbox (Store-and-Forward): When a recipient is offline, encrypted blobs are sharded and deposited into Kademlia DHT neighborhood storage with time-to-live (TTL) expiration.

- Steganographic Crypto-Carriers: Out-of-band identity and credential transmission through covert LSB embedding inside standard images.

- Deep LSB Encoding: Embeds complete cryptographic contact descriptors (public keys, DHT rendezvous tokens, endpoints) invisibly inside 24-bit PNG/JPEG pixel matrices.

- Air-Gapped Contact Onboarding: Share your contact avatar across regular public image hosting platforms or social channels without triggering DPI surveillance or metadata scrapers.

- Direct Low-Latency Voice Calling: Low-overhead UDP fast-path with sub-50ms latency.

- Encrypted Media Buffering: Dedicated ring-buffer audio pipeline powered by cpalandrodiowith non-blocking audio capture and playback.

- Dynamic Connection Recovery: Seamless fallback if UDP ports or network interfaces switch mid-call.

The workspace is organized into clean, modular Rust crates:

NodeX/

├── nodex-gui/ # Native GPU-accelerated desktop interface (eframe/egui)

├── nodex-messenger/ # Double Ratchet, E2EE Session Engine, Audio Pipeline, Stego

├── nodex-kademlia/ # Distributed Hash Table, Routing Table (k-buckets), RPC

├── nodex-cli/ # Headless daemon, management CLI and automation harness

├── core-ffi/ # C-compatible FFI bindings for mobile/cross-platform embedding

├── assets/ # Vector diagrams, banners, and media showcases

├── .github/workflows/ # Automated CI/CD release build pipeline

├── LICENSE # GNU General Public License v3.0

└── Cargo.toml # Workspace root manifest

- Rust Toolchain: 1.75.0or later (rustup.rs)

- Build Tools: CMake, MSVC (Windows) or build-essential/libasound2-dev(Linux)

-

Clone the repository: git clone https://github.com/NetGadz/NodeX.git cd NodeX

-

Compile the Desktop Application in Release Mode: cargo build --release -p nodex-gui

-

Run NodeX: # Windows .\target\release\nodex-gui.exe # Linux / macOS ./target/release/nodex-gui

-

Run Headless CLI Node: cargo run --release -p nodex-cli -- --help

Contributions from the security, cryptography, and decentralized networking communities are welcomed.

- Fork the repository.

- Create your feature branch (git checkout -b feature/quantum-hardening).

- Ensure the workspace compiles cleanly (cargo check --workspace).

- Commit your changes (git commit -m 'feat: implement hybrid post-quantum ratchet').

- Push to the branch (git push origin feature/quantum-hardening).

- Open a Pull Request.

This project is licensed under the GNU General Public License v3.0 (GPL-3.0).

See the LICENSE file for full license text and permissions.

© 2026 NodeX Project Contributors