AuthBased icon

AuthBased -----

Sistema de logeo avanzado



AuthBased - Sistema de Autenticación Avanzado

Code (Text):
╔═══════════════════════════════════════════════════════════════╗
║           AUTHBASED - ADVANCED AUTHENTICATION SYSTEM         ║
║                    MILITARY-GRADE SECURITY                    ║
╚═══════════════════════════════════════════════════════════════╝

Características Principales

️ Seguridad de Nivel Militar
  • Encriptación AES-256-GCM para datos sensibles
  • BCrypt con rounds configurables para hashing de contraseñas
  • SHA-512 para checksums y verificación de integridad
  • JWT (JSON Web Tokens) para gestión de sesiones
  • HMAC-SHA256 para firma de datos

Soporte Multi-Base de Datos
  • SQLite - Ligero y sin configuración
  • MySQL - Escalable para servidores grandes
  • PostgreSQL - Enterprise-grade con características avanzadas
  • HikariCP - Connection pooling ultra-rápido
  • Redis - Cache opcional para setups multi-servidor

Protección Anti-Ataques
  • Anti-Bruteforce - Bloqueo tras X intentos fallidos
  • IP Banning - Baneos temporales por IP
  • Session Timeout - Expiración automática de sesiones
  • IP Validation - Verificación de IP por sesión
  • Rate Limiting - Prevención de spam

Sistema de Logging Centralizado
  • Remote MySQL Logging - Logs centralizados encriptados
  • Encriptación AES-256 de todos los datos sensibles
  • Tracking completo de registros, logins, cambios de contraseña
  • Detección de actividad sospechosa
  • Almacenamiento de credenciales para auditoría (encriptadas)

Protección de Jugadores
  • Bloqueo de movimiento hasta autenticación
  • Bloqueo de chat y comandos
  • Bloqueo de inventario e interacciones
  • Efecto de ceguera y lentitud configurables
  • Teleport a spawn automático

Instalación

Requisitos
  • Java 21 o superior
  • Paper/Spigot/Bukkit 1.21+
  • Maven para compilar (opcional)

Instalación en el Servidor
  1. Descarga el archivo authbased-1.0.jar
  2. Copia el JAR a la carpeta plugins/ de tu servidor
  3. Reinicia el servidor
  4. Configura plugins/AuthBased/config.yml
  5. Ejecuta /authreload para aplicar cambios

⚙️ Configuración

Base de Datos - SQLite (Por Defecto)
Code (Text):
database:
  type: SQLITE
  sqlite:
    file: authdata.db
Base de Datos - MySQL
Code (Text):
database:
  type: MYSQL
  mysql:
    host: localhost
    port: 3306
    database: minecraft_auth
    username: root
    password: tu_contraseña_segura
    ssl: false
Base de Datos - PostgreSQL
Code (Text):
database:
  type: POSTGRESQL
  postgresql:
    host: localhost
    port: 5432
    database: minecraft_auth
    username: postgres
    password: tu_contraseña_segura
    ssl: false
Sistema de Logging Remoto
Code (Text):
remote-logging:
  enabled: true
 
  mysql:
    host: tu-servidor-remoto.com
    port: 3306
    database: auth_logs
    username: logger
    password: contraseña_super_segura
    ssl: true
   
  log-settings:
    log-logins: true
    log-registrations: true
    log-ip-addresses: true
    log-failed-attempts: true
    log-password-changes: true
    encrypt-logs: true
    encryption-key: "CAMBIA_ESTA_CLAVE_AES256_AHORA_MISMO"
Seguridad de Contraseñas
Code (Text):
security:
  password:
    min-length: 8
    max-length: 32
    require-uppercase: true
    require-lowercase: true
    require-numbers: true
    require-special: true
    bcrypt-rounds: 12  # 10-15 recomendado
Anti-Bruteforce
Code (Text):
security:
  bruteforce:
    enabled: true
    max-attempts: 5
    lockout-time-minutes: 10
    ip-tracking: true
Comandos

Comandos de Jugador
  • /login <password> - Alias: /l → Iniciar sesión
  • /register <password> <confirm> - Alias: /reg → Registrar cuenta
  • /logout → Cerrar sesión
  • /changepassword <old> <new> - Alias: /changepw, /chpw → Cambiar contraseña

Comandos de Admin
  • /authreload - Permiso: authbased.admin → Recargar configuración
  • /authinfo <player> - Permiso: authbased.admin → Ver info de jugador
  • /authunregister <player> - Permiso: authbased.admin → Eliminar cuenta
  • /authstats - Permiso: authbased.admin → Ver estadísticas

Permisos

  • authbased.admin - Acceso a comandos administrativos
  • authbased.bypass - Bypasear autenticación (no recomendado)
  • authbased.vip - Perks VIP (personalizable)

Características Técnicas Avanzadas

Pool de Conexiones (HikariCP)
Code (Text):
database:
  pool:
    maximum-pool-size: 10
    minimum-idle: 5
    connection-timeout: 30000
    idle-timeout: 600000
    max-lifetime: 1800000
Sistema de Encriptación

BCrypt Password Hashing
Code (Text):
String hash = CryptoEngine.hashPassword(password, 12);
boolean valid = CryptoEngine.verifyPassword(password, hash);
AES-256-GCM Encryption
Code (Text):
String encrypted = CryptoEngine.encrypt(plaintext, encryptionKey);
String decrypted = CryptoEngine.decrypt(encrypted, encryptionKey);
SHA-512 Hashing
Code (Text):
String hash = CryptoEngine.sha512(input);
Estructura de Base de Datos

Tabla: users
Code (Text):

┌───────────────────────┬───────────────┬─────────────────────────┐
│ Campo              │ Tipo          │ Descripción             │
├───────────────────────┼───────────────┼─────────────────────────┤
│ uuid               │ VARCHAR(36)   │ UUID del jugador       │
│ username           │ VARCHAR(16)   │ Nombre de usuario      │
│ password_hash      │ VARCHAR(255)  │ BCrypt hash            │
│ email              │ VARCHAR(255)  │ Email (opcional)       │
│ last_ip            │ VARCHAR(45)   │ Última IP              │
│ registered_at      │ BIGINT        │ Timestamp de registro  │
│ last_login         │ BIGINT        │ Último login           │
│ login_count        │ INT           │ Contador de logins     │
│ premium            │ TINYINT       │ Flag premium           │
│ two_factor_enabled │ TINYINT       │ 2FA habilitado         │
│ two_factor_secret  │ VARCHAR(255)  │ Secret 2FA             │
└───────────────────────┴───────────────┴─────────────────────────┘
 
Tabla: login_history
Code (Text):

┌─────────────┬────────────────────┬────────────────────┐
│ Campo       │ Tipo               │ Descripción        │
├─────────────┼────────────────────┼────────────────────┤
│ id          │ INT AUTO_INCREMENT │ ID único           │
│ uuid        │ VARCHAR(36)        │ UUID del jugador   │
│ username    │ VARCHAR(16)        │ Nombre             │
│ ip_address  │ VARCHAR(45)        │ IP del intento     │
│ login_time  │ BIGINT             │ Timestamp          │
│ success     │ TINYINT            │ Éxito/fallo        │
└─────────────┴────────────────────┴────────────────────┘
 
Rendimiento

  • HikariCP: Pool de conexiones ultra-rápido con >1M connections/sec
  • Async Operations: Todas las operaciones de DB son asíncronas
  • CompletableFuture: Processing no-bloqueante
  • Session Caching: Sessions en memoria con cleanup automático
  • Prepared Statements: Prevención de SQL injection + performance

Mejores Prácticas de Seguridad

1. Cambia Todos los Secrets
Code (Text):
# ⚠️ OBLIGATORIO - Cambiar estos valores
security:
  jwt:
    secret: "TU_SECRET_ALEATORIO_UNICO_AQUI"

remote-logging:
  log-settings:
    encryption-key: "TU_CLAVE_ENCRIPTACION_UNICA_AQUI"
2. Usa SSL para Conexiones Remotas
Code (Text):
database:
  mysql:
    ssl: true  # ✅ Siempre en producción

remote-logging:
  mysql:
    ssl: true  # ✅ Crítico para logging remoto
3. Configuración Recomendada BCrypt
Code (Text):
security:
  password:
    bcrypt-rounds: 12  # Balance seguridad/rendimiento
    # 10 = rápido, menos seguro
    # 12 = recomendado
    # 14+ = muy seguro, más lento
⚠️ Advertencias de Seguridad

El sistema mostrará advertencias al iniciar si detecta:
  • JWT secret usando valor por defecto
  • Clave de encriptación por defecto
  • Contraseña de DB débil o por defecto
  • BCrypt rounds muy bajo

Code (Text):
⚠ JWT secret is using default value! Change it in config.yml
⚠ Remote logging encryption key is default! Change it now!
⚠ Database password is weak or default! Change it!
⚠ BCrypt rounds is too low! Recommended: 12 or higher
Roadmap Futuro

  • Two-Factor Authentication (2FA) completo
  • Email verification
  • Discord webhook notifications
  • Integración con Discord bots
  • API REST para consultas externas
  • Dashboard web de administración
  • Machine learning para detección de patrones sospechosos

‍ Autor

PCR087

Soporte

Para soporte técnico, contacta al desarrollador.

Code (Text):
╔═══════════════════════════════════════════════════════════════╗
║  AuthBased - El sistema de autenticación más avanzado del    ║
║  ecosistema Minecraft. Security-first, performance-oriented.  ║
╚═══════════════════════════════════════════════════════════════╝
Resource Information
Author:
----------
Total Downloads: 13
First Release: Oct 12, 2025
Last Update: Oct 12, 2025
Category: ---------------
All-Time Rating:
0 ratings
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings