HomeJavaModsAuthBased
AuthBased - Sistema de Autenticación Avanzado

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

Características Principales

️ Seguridad de Nivel Militar

Soporte Multi-Base de Datos

Protección Anti-Ataques

Sistema de Logging Centralizado

Protección de Jugadores

Instalación

Requisitos

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

Comandos de Admin

Permisos


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


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:

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


‍ 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.  ║
╚═══════════════════════════════════════════════════════════════╝
Quick facts

Install steps are the general flow for this file type — How to install Minecraft Java mods & modpacks walks through it step by step.

AuthBased is a free Minecraft Java mod. Compatible with Minecraft 1.21. Downloaded 19 times (via Spigot). Download it and open it directly in the game.

Explore more