Skip to content
/ wispyr Public

Wispyr is a messaging app that uses RSA encryption 🛡️ to keep your communications private 🤫, with messages that self-destruct after 1 minute ⏱️💥.

Notifications You must be signed in to change notification settings

oviozz/wispyr

Repository files navigation

Wispyr - RSA Encryption Messaging Web App

Wispyr App Banner

🌟 Overview

Wispyr is a cutting-edge secure messaging application designed to prioritize user privacy through robust RSA encryption. With end-to-end encryption and a unique 1-minute message retention policy, Wispyr ensures your communications remain confidential and ephemeral.

🚀 Key Features

Unbreakable Security

  • End-to-End RSA Encryption: Every message is encrypted using public/private key pairs
  • 1-Minute Message Retention: Messages automatically self-destruct after 60 seconds
  • Secure Key Exchange: Safe friend discovery and public key sharing

📸 App Screenshots

RSA Encryption Messaging

Messaging Interface

Find Your Friends

Friend Discovery

🛠 Technology Stack

  • Frontend: React.js, TailwindCSS
  • Backend & Database: ConvexDB
  • Encryption: RSA
  • Hashing: Blowfish Cipher

🔐 How It Works

  1. User Registration

    • Generate unique RSA key pairs
    • Store public key on server
    • Keep private key secure on client-side
  2. Secure Messaging

    • Encrypt messages with recipient's public key
    • Only recipient can decrypt with their private key
    • Automatic message deletion after 1 minute

Installation Steps

  1. Clone the Repository

    git clone https://github.com/yourusername/wispyr.git
    cd wispyr
  2. Configure Environment Create a .env file with the following:

    # Deployment used by npx convex dev
    AUTH_SECRET=your_auth_secret
    CONVEX_DEPLOYMENT=your_convex_deployment
    NEXT_PUBLIC_CONVEX_URL=your_convex_url
  3. Run the Application

    # Start Convex
    npx convex dev
    
    # Run Backend
    cd backend
    npm start
    
    # Run Frontend
    cd ../frontend
    npm run dev

🔒 Encryption Technical Overview

Key Generation

const { publicKey, privateKey } = generateKeyPair();

Message Encryption

const encryptedMessage = encryptWithPublicKey(message, recipientPublicKey);

Message Decryption

const decryptedMessage = decryptWithPrivateKey(encryptedMessage, recipientPrivateKey);

🗺 Roadmap

  • Integrate Voice Messaging

About

Wispyr is a messaging app that uses RSA encryption 🛡️ to keep your communications private 🤫, with messages that self-destruct after 1 minute ⏱️💥.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published