Skip to content

drlecks/paranoia-chat

Folders and files

NameName
Last commit message
Last commit date

Latest commit

44ae64e Β· Mar 6, 2025

History

5 Commits
Mar 6, 2025
Feb 24, 2025
Feb 24, 2025
Feb 24, 2025
Feb 24, 2025

Repository files navigation

πŸ›‘οΈ Paranoia Chat

πŸ“– Description

This project enables secure, end-to-end encrypted communication between two users using a shared passphrase. It ensures privacy by leveraging cryptographic techniques to derive session tokens and encryption keys deterministically.

🎯 Purpose

This project is part of an initiative explained on Instagram @ciberconsulta. The goal is to showcase secure peer-to-peer communication mechanisms and educate users about encryption and privacy best practices.

πŸŽ₯ Instagram Videos

Below is a list of Instagram videos demonstrating how the system works (Spanish):

πŸ” How It Works

  1. User Agreement: Both users agree on a passphrase consisting of at least three words and a minimum of 16 characters.
  2. Session Token Generation: The passphrase is used to generate a deterministic session token for server authentication.
  3. Key Exchange: Public keys are exchanged securely between users through the server.
  4. End-to-End Encryption: Messages are encrypted using asymmetric encryption and only decrypted by the intended recipient.
  5. Secure Communication: Once established, users can send and receive encrypted messages securely.

πŸš€ Features

βœ… Secure passphrase-based session generation

βœ… Public-key cryptography (RSA)

βœ… End-to-end encrypted messaging

βœ… Automatic key exchange via the server

βœ… Cross-platform compatibility (browser & Node.js)

βœ… Esteganography

πŸ–₯️ Deploying the Server

To deploy the server locally, follow these steps:

# Clone the repository
git clone https://github.com/drlecks/paranoia-chat.git
cd paranoia-chat/server

# Install dependencies
npm install

# Start the server
node server.js

Also you can deploy the server on services like Render with this data:

 Repository: https://github.com/drlecks/paranoia-chat
 Branch: main
 Root directory: server
 Build command: npm install
 Start command: npm start

🌐 Running the Client (HTML)

To run the client locally:

cd paranoia-chat/client-html

# Open index.html in a browser

🀝 Contributing

We welcome contributions! Feel free to submit a pull request or open an issue if you have ideas or find bugs.

πŸ› οΈ Bug Bounty Rules

We appreciate security research and responsible disclosure. However, please adhere to the following rules:

  • Do not tamper with or access any personal accounts, including my GitHub account or any private data.
  • Do not attack the public test server. If you need to test exploits, please set up your own local instance.
  • No financial rewards: Since this is a non-commercial project, there will be no monetary compensation for findings.
  • Recognition: Valid security findings will be listed in the Hunters Hall of Fame section as a token of appreciation.

If you find a vulnerability, please report it responsibly by opening an issue or contacting us privately.

πŸ† Hunters Hall of Fame

  1. drlecks Project creator

The Hunters Hall of Fame is a recognition board for security researchers and contributors who responsibly disclose vulnerabilities in the project. Since this is a non-commercial initiative, there are no financial rewards, but your efforts will be publicly acknowledged here.

To earn a spot in the Hall of Fame:

  1. Find a valid security issue following the Bug Bounty Rules.
  2. Report it responsibly via an issue or private contact.
  3. Have your finding verified and confirmed as a legitimate vulnerability.

Once verified, your name (or alias) will be listed here as a Hall of Fame Hunter πŸ… along with a brief description of your contribution. We appreciate your efforts in making this project more secure! πŸš€

πŸ“œ License

This project is licensed under the MIT License.

Releases

No releases published

Packages

No packages published