Skip to content

h3n-x/chat-anonimo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🔒 Chat Anónimo

Comunicación Segura y Privada con Cifrado End-to-End

Security Privacy Database Auto Delete

Sistema de chat anónimo con cifrado militar, intercambio seguro de archivos y auto-eliminación inteligente

🚀 Demo en Vivo 📖 English 🔧 Instalación


📸 Vista Previa

Chat Anónimo - Vista Previa de la Aplicación

Interfaz moderna del chat anónimo con cifrado end-to-end


📋 Navegación Rápida

📑 Tabla de Contenidos Completa

🌟 Características Principales

🛡️ Seguridad de Grado Militar

Característica Descripción Estado
🔐 Cifrado AES-256-GCM Estándar militar para todos los datos ✅ Activo
🔑 Diffie-Hellman Intercambio seguro de claves ✅ Activo
🚫 Zero Database Sin persistencia de datos sensibles ✅ Activo
⏰ Auto-Eliminación Limpieza automática inteligente ✅ Activo

👤 Anonimato Absoluto

Característica Descripción Beneficio
🎭 Identidades Temporales Usuarios generados automáticamente Sin registro
🌈 Avatares Únicos Colores distintivos sin datos personales Identificación visual
🔄 Sesiones Efímeras Cada conexión es independiente Máxima privacidad
📊 Sin Tracking Cero recopilación de datos Anonimato total

📁 Intercambio Seguro de Archivos

Especificación Valor Seguridad
📏 Tamaño Máximo 15MB por archivo ✅ Optimizado
🗂️ Cantidad Límite 5 archivos por usuario ✅ Controlado
🔒 Cifrado AES-256-GCM completo ✅ Militar
⏱️ Retención 30 minutos máximo ✅ Auto-limpieza

🏗️ Arquitectura del Sistema

🔄 Flujo de Comunicación Segura

graph TB
    A[👤 Usuario] --> B[🌐 Next.js Frontend]
    B --> C[⚡ WebSocket Seguro]
    C --> D[🚀 FastAPI Backend]
    D --> E[🔐 Motor de Cifrado]
    D --> F[📁 Storage Temporal]
    E --> G[🔑 Gestión de Claves]
    F --> H[⏰ Auto-Limpieza]
    
    style A fill:#e1f5fe
    style B fill:#f3e5f5
    style D fill:#e8f5e8
    style E fill:#fff3e0
    style F fill:#fce4ec
Loading

📦 Arquitectura Multi-Repositorio

Componente Repositorio Tecnología Deploy Estado
🎨 Frontend chat-frontend Next.js 14 + TypeScript Netlify 🟢 Online
🚀 Backend chat-backend FastAPI + Python Render 🟢 Online
🔧 Stack Tecnológico Completo
Capa Tecnología Propósito Versión
🎨 Frontend Next.js + TypeScript Interfaz moderna y responsive 14.x
🚀 Backend FastAPI + Python API eficiente con WebSockets 3.11+
🔐 Cifrado AES-256-GCM + DH Seguridad de grado militar Nativo
🌐 Deploy Netlify + Render Infraestructura escalable Cloud
💾 Storage Memoria + Temporal Sin persistencia Efímero
🔄 Comunicación WebSocket + HTTPS Tiempo real seguro WSS/TLS

🚀 Instalación Rápida

Setup en 30 Segundos

# 1. Clonar repositorios
git clone https://github.com/h3n-x/chat-backend.git
git clone https://github.com/h3n-x/chat-frontend.git

# 2. Backend (Terminal 1)
cd chat-backend && pip install -r requirements.txt && python main.py

# 3. Frontend (Terminal 2)  
cd chat-frontend && npm install && npm run dev

🎉 ¡Listo! Accede a http://localhost:3000

🔧 Configuración Avanzada

🌐 Variables de Entorno

Backend (.env)

PORT=8000
CORS_ORIGINS=http://localhost:3000,https://write-ghost.netlify.app
MAX_FILE_SIZE=15728640  # 15MB
MAX_FILES_PER_USER=5
AUTO_CLEANUP_INTERVAL=300  # 5 minutos

Frontend (.env.local)

NEXT_PUBLIC_WS_URL=ws://localhost:8000
NEXT_PUBLIC_API_URL=http://localhost:8000
NEXT_PUBLIC_MAX_FILE_SIZE=15728640

🐳 Docker Setup

# Backend
cd chat-backend
docker build -t chat-backend .
docker run -p 8000:8000 chat-backend

# Frontend
cd chat-frontend  
docker build -t chat-frontend .
docker run -p 3000:3000 chat-frontend

📖 Guía de Uso

🎯 Acceso Inmediato - Sin Registro

Paso Acción Resultado
1️⃣ Accede a la aplicación Identidad anónima generada
2️⃣ Elige sala (General/Privada) Conexión cifrada establecida
3️⃣ Comienza a chatear Mensajes cifrados automáticamente
4️⃣ Comparte archivos (opcional) Contenido cifrado y temporal

🔐 Salas Privadas

Máxima privacidad con cifrado independiente

🚪 Crear Sala Privada
├── 🎲 Código único de 6 dígitos
├── 👥 Máximo 10 usuarios
├── 🔑 Claves de cifrado independientes
└── ⏰ Auto-eliminación al vaciar

📁 Intercambio de Archivos

Método Límites Seguridad Retención
🖱️ Drag & Drop 15MB/archivo AES-256-GCM 30 min
📎 Selector 5 archivos/usuario Metadatos cifrados Auto-limpieza
🖼️ Vista Previa Imágenes soportadas Sin cache persistente Temporal

🔍 Especificaciones de Seguridad

🛡️ Matriz de Protección

Elemento Cifrado Almacenamiento Retención Integridad
💬 Mensajes ✅ AES-256-GCM 🚫 Solo memoria ⏰ 10 min ✅ HMAC
📁 Archivos ✅ AES-256-GCM 📁 Temporal cifrado ⏰ 30 min ✅ HMAC
🏷️ Metadatos ✅ AES-256-GCM 🚫 Solo memoria ⏰ Con archivo ✅ HMAC
🔑 Claves ✅ Diffie-Hellman 🚫 Solo memoria ⏰ Por sesión ✅ PFS
🔐 Flujo de Cifrado Detallado
sequenceDiagram
    participant U1 as 👤 User 1
    participant S as 🚀 Server
    participant U2 as 👤 User 2
    
    Note over U1,U2: 🔑 Key Exchange
    U1->>S: Connect WebSocket
    S->>U1: Generate DH pair
    U2->>S: Join room
    S->>U2: DH exchange
    S->>U1: Shared key established
    S->>U2: Shared key established
    
    Note over U1,U2: 💬 Encrypted Communication
    U1->>U1: Encrypt message (AES-256-GCM)
    U1->>S: Send encrypted message
    S->>U2: Relay (without decrypting)
    U2->>U2: Decrypt message locally
Loading

🔒 Algoritmos Implementados

  • Cifrado Simétrico: AES-256-GCM (Galois/Counter Mode)
  • Intercambio de Claves: Diffie-Hellman Ephemeral (DHE)
  • Función Hash: SHA-256 para derivación de claves
  • Integridad: HMAC integrado en GCM
  • Aleatoriedad: CSPRNG para nonces y claves

🌍 Deployment

🎯 Infraestructura de Producción

Servicio URL Estado Uptime
🎨 Frontend write-ghost.netlify.app 🟢 Online 99.9%
🚀 Backend chat-backend-haeb.onrender.com 🟢 Online 99.5%
📊 Health Check /health 🟢 Online Monitoreado
📖 API Docs /docs 🟢 Online Swagger UI
⚙️ Configuración de Producción

🔧 Backend (Render)

# Configuración CORS
app.add_middleware(
    CORSMiddleware,
    allow_origins=["https://write-ghost.netlify.app"],
    allow_credentials=True,
    allow_methods=["*"],
    allow_headers=["*"],
)

About

chat online anonimo

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors