selfhost-hibp-passwords
Herramienta Java para autogestionar la base de datos de contraseñas comprometidas de Have I Been Pwned. Incluye importador, librería de consultas y demo Spring Boot con endpoints HTTP.
Ficha actualizada 25 sept 2026, 4:51 · upstream 25 sept 2026, 4:42 · release importer-1.1.0
Qué es selfhost-hibp-passwords
Descripción editorial construida a partir del repositorio, su documentación y sus señales de mantenimiento.
Este repositorio proporciona herramientas para importar y consultar localmente la base de datos de contraseñas comprometidas de Have I Been Pwned (HIBP). Utiliza JetBrains Xodus como motor de base de datos persistente y ofrece una librería Java reutilizable junto con un demo Spring Boot que expone endpoints HTTP para consultas rápidas.
El proceso de importación requiere descargar los archivos de hashes SHA-1 organizados por prefijo de 5 caracteres, ejecutar el importador con la herramienta CLI y configurar un directorio de base de datos vacío. La librería permite consultas por contraseña plana, hash SHA-1 completo o rangos de k-anonimidad para optimizar búsquedas parciales.
El demo HTTP corre en puerto 8080 sin autenticación por defecto y se puede personalizar con argumentos de línea de comandos. Es adecuado para entornos controlados donde se requiere acceso directo a la base de datos local sin depender de servicios externos.
- Consultar si una contraseña está comprometida en aplicaciones Java personalizadas mediante librería o CLI
- Implementar rangos de búsqueda para optimizar consultas de hashes SHA-1 con k-anonimidad
- Servir un endpoint HTTP local para pruebas o integración con otros servicios internos
- Importar y mantener localmente la base de datos oficial de HIBP sin depender de APIs externas
- Base de datos Xodus optimizada para rendimiento en consultas locales persistentes
- Soporte nativo para k-anonimidad en rangos de hashes SHA-1 según API v3 de HIBP
- Librería Java reutilizable con métodos estáticos para integración directa en proyectos Maven/Gradle
- Demo Spring Boot con endpoints REST claros para pruebas rápidas sin dependencias adicionales
- No incluye contenedorización nativa (Docker, Dockerfile o compose)
- Requiere Java 25+, que aún no es estable universalmente en todos los entornos
- La base de datos local ocupa ~24 GB en operación y ~57 GB durante importación
- El demo HTTP no tiene autenticación por defecto, exponiendo datos sensibles si se publica
- No soporta consultas concurrentes masivas sin optimización adicional del entorno Xodus
Perfil de infraestructura
Estimación inicial derivada del repositorio y de los servicios detectados.
Despliegue detectado
Qué señales reales de instalación hemos encontrado.
Usar JDK 25 o superior; JRE suficiente para el importador. Asegurar al menos 10 GB libres en disco y 1 GB RAM mínimo. Proteger el demo HTTP si se expone públicamente (autenticación, firewall). No ejecutar la base de datos en directorios compartidos o montados en red sin optimización.
Stack y dependencias
Componentes inferidos a partir de manifests, configuración y documentación.
Puede sustituir a
Relaciones detectadas por el análisis del repositorio y su categoría.
Experiencia real de la comunidad
Ayuda a contrastar la estimación automática con instalaciones reales.
Todavía no hay datos comunitarios para este proyecto.