Skip to content

Latest commit

Β 

History

46 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ›‘οΈ PrivyChat - The Zero-Trace Ephemeral Spy Messenger

PrivyChat Banner

Node.js License Security P2P Mesh RAM-Only

"Privacy is not a crime. It is a fundamental human right."

PrivyChat is an open-source, ultra-secure, RAM-only ephemeral messaging platform engineered for journalists, whistleblowers, activists, and security-conscious individuals. Built under a "Zero-Trust" philosophy, PrivyChat guarantees that no message, packet, or metadata touches a database or disk.

Every communication channel is shielded with hardware-accelerated AES-256-GCM encryption, Ephemeral ECDH Key Handshakes, Anti-Shoulder-Surfing OPSEC Tools, Invisible Ink Steganography, and a brand-new Nearby WiFi & Bluetooth Tactical Mesh Radar for 100% offline, air-gapped communication.


πŸ“‘ Table of Contents


🧠 Core Architectural Guarantees

                                  [ ZERO-TRUST ARCHITECTURE ]
                                  
   +------------------+         Blind Encrypted Relay         +------------------+
   |   Sender Node    |  ---------------------------------->  |  Receiver Node   |
   | (Browser Client) |  <----------------------------------  | (Browser Client) |
   +------------------+           (No Plaintext Stored)       +------------------+
            |                                                           |
   +------------------+                                        +------------------+
   | Client-Side E2EE |                                        | Client-Side E2EE |
   |  β€’ AES-256-GCM   |                                        |  β€’ AES-256-GCM   |
   |  β€’ ECDH P-256    |                                        |  β€’ ECDH P-256    |
   |  β€’ Volatile RAM  |                                        |  β€’ Volatile RAM  |
   +------------------+                                        +------------------+

1. 100% Volatile RAM Lifecycle

  • Traditional messaging apps record conversations in persistent databases (MongoDB, PostgreSQL, Redis).
  • PrivyChat Guarantee: All active rooms and user states live exclusively in the volatile heap memory of the Node.js process.
  • Forensic Resistance: If power is cut, the server restarts, or a container is destroyed, 100% of room history is irrecoverably obliterated.

2. Zero-Knowledge Server Blindness

  • Encryption and decryption happen solely within your browser via the native Web Crypto API.
  • The server functions as a blind WebSocket/WebRTC relay, routing binary cipher blobs without holding decryption keys.

3. Absolute Zero-Log Policy

  • 🚫 No IP Logging: Connection IP addresses are discarded immediately.
  • 🚫 No Metadata Retention: Timestamps, sender relationships, and session metrics are never archived.
  • 🚫 Zero Third-Party Trackers: Free of Google Analytics, Meta Pixels, tracking cookies, and advertising telemetry.

🌟 Feature Suite

πŸ“‘ Air-Gapped & Nearby Tactical Mesh Radar (New!)

  • 360Β° Sonar Radar HUD: Animated radar canvas tracking active peer nodes within local proximity.
  • Triple-Vector Discovery: Connect via local WiFi/Hotspot subnets (zero internet required), Web Bluetooth Low Energy (BLE), or camera-to-screen QR Code optical beams.
  • P2P Direct DataChannels: Serverless peer-to-peer data streams (RTCDataChannel) with ephemeral ECDH P-256 key exchange.

πŸ•΅οΈ Physical OPSEC & Counter-Surveillance

  • Stealth Calculator Mode: Transforms the entire interface into a functional scientific calculator. Unlock code: 1337=.
  • Decoy Vault Redirection: Type weather, guest, aether, or 1234 in the search bar for instant plausible deniability with a working weather app.
  • Ghost Mode: Heavily blurs messages to thwart physical shoulder-surfers; reveals text only on direct hover or tap.
  • Invisible Ink Steganography: Hide encrypted secret payloads inside innocent PNG/JPEG image carrier pixels using Least Significant Bit (LSB) encoding.
  • Emergency Panic Purge: Destroys browser memory keys, purges storage, scrubs the DOM, and immediately redirects to Google.

πŸ’¬ Ephemeral Rich Messaging & Calling

  • Self-Destruct Timers: Messages burn after 5s, 15s, 30s, 60s, or upon initial viewing (Burn on Read).
  • Encrypted Voice Notes & Masking: Record voice memos with real-time pitch-shifting disguises.
  • Secure WebRTC Calling: Direct peer-to-peer voice and video calls with DTLS 1.2 & SRTP encryption.
  • Encrypted File Sharing: Share documents and photos encrypted client-side chunk-by-chunk.

πŸ“‘ Nearby WiFi, Bluetooth & Air-Gapped Mesh

Discovery Vector Connectivity Required Range Security Protocol
Local WiFi / LAN Shared WiFi Router or Mobile Hotspot (No Internet) 50–100m WebRTC DataChannels + AES-256-GCM
Web Bluetooth (BLE) Bluetooth Radio (navigator.bluetooth) 10–30m BLE GATT Proximity + ECDH Handshake
Air-Gapped QR Beam Device Cameras (Zero RF Radiation / Air-Gapped) Line of Sight Optical SDP Handshake + AES-256-GCM

πŸ” Cryptographic Specification

Component Standard & Configuration Security Assurance
Symmetric Encryption AES-256-GCM Authenticated encryption preventing ciphertext tampering
Initialization Vector (IV) 96-bit (12 bytes) CSPRNG per message Guarantees semantic security; eliminates nonce reuse
Key Derivation Function PBKDF2 (SHA-256, 100,000 rounds) Mitigates brute-force and dictionary attacks
Asymmetric Key Exchange Ephemeral ECDH (NIST P-256 Curve) Perfect Forward Secrecy per peer session
MITM Verification 6-Block Hex Fingerprint + 4 Safety Emojis Visual out-of-band verification against MITM interception
Calling Media Stream DTLS-SRTP (WebRTC) Zero-server audio/video encryption

πŸ“± Desktop & Mobile Responsiveness

PrivyChat is built using a mobile-first responsive architecture:

  • Dynamic Viewport Height: Uses 100dvh to ensure zero keyboard clipping on mobile browsers (iOS Safari, Android Chrome).
  • Touch-Friendly Controls: Minimum 44px hit targets with haptic visual feedback.
  • Adaptive Radar Canvas: Automatically scales the 360Β° sonar radar between desktop HUD and compact mobile viewports.
  • PWA Ready: Installable as a progressive web app with offline cache fallback.

πŸ’» Project Directory Structure

PrivyChat/
β”œβ”€β”€ public/
β”‚   β”œβ”€β”€ index.html          # Main Global Lobby Entry Point
β”‚   β”œβ”€β”€ style.css           # Modern Cyber-Tactical Design System & Glassmorphism
β”‚   β”œβ”€β”€ app.js              # Lobby, Room Handlers, OPSEC & Chat Logic
β”‚   β”œβ”€β”€ nearby.html         # Nearby WiFi & Bluetooth Tactical Mesh Radar
β”‚   β”œβ”€β”€ nearby.css          # Radar HUD & P2P Terminal Stylesheet
β”‚   β”œβ”€β”€ nearby.js           # WebRTC DataChannels, Web Bluetooth, QR Engine & ECDH
β”‚   β”œβ”€β”€ about.html          # Architecture Documentation & Creator Spotlight
β”‚   β”œβ”€β”€ manual.html         # Comprehensive Tactical User Manual
β”‚   β”œβ”€β”€ crypto-utils.js     # Web Crypto AES-GCM / PBKDF2 Helper Engine
β”‚   β”œβ”€β”€ sound-utils.js      # Web Audio Synthesizer (Pings, Beeps, Voice Disguise)
β”‚   β”œβ”€β”€ steg-utils.js       # Invisible Ink LSB Canvas Steganography Library
β”‚   β”œβ”€β”€ manifest.json       # Progressive Web App (PWA) Manifest
β”‚   └── logo.png            # PrivyChat Shield Identity Asset
β”œβ”€β”€ server.js               # Node.js Server (RAM-Only State, WebSockets, LAN Signaling)
β”œβ”€β”€ package.json            # Node.js Dependencies & NPM Scripts
β”œβ”€β”€ render.yaml             # Render.com Cloud Infrastructure-as-Code Spec
β”œβ”€β”€ vercel.json             # Vercel Serverless Configuration
└── README.md               # Technical Specification & Documentation

πŸš€ Local Installation & Setup

Prerequisites

  • Node.js (v18.0.0 or higher)
  • NPM (v9.0.0 or higher)

Setup Steps

# 1. Clone the repository
git clone https://github.com/rajpratham1/PrivyChat.git
cd PrivyChat

# 2. Install dependencies
npm install

# 3. Start the application
npm start

Open your browser at:


☁️ Production Deployment Guide

Deploying to Render.com (Recommended)

  1. Push your repository to GitHub.
  2. Link your repository on Render.com as a Web Service.
  3. Configure the following build settings:
    • Environment: Node
    • Build Command: npm install
    • Start Command: npm start
  4. Set the Environment Variables:
    • PORT: 10000 (or leave default)
    • RENDER_EXTERNAL_URL: https://your-service-name.onrender.com (activates built-in keep-alive pings)

Docker Deployment

FROM node:20-alpine
WORKDIR /app
COPY package*.json ./
RUN npm ci --only=production
COPY . .
EXPOSE 3001
CMD ["node", "server.js"]

πŸ‘€ Admin & Lead Developer

Pratham Kumar

Pratham Kumar

Founder, Admin & Lead Cryptography Engineer

GitHub (@rajpratham1) β€’ PrivyChat Repository


βš–οΈ License

PrivyChat is distributed under the open-source MIT License. See LICENSE for details.

Copyright (c) 2026 PrivyChat β€’ Pratham Kumar
Zero Logs. Zero Traces. Pure Volatile Memory.

About

PrivyChat was born from the need for simple, quick, and anonymous communication. In an age of surveillance capitalism, we wanted a tool that respects your right to whisper.

Resources

Stars

8 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages