How hashtopolis/server works
Hashtopolis is a multi-platform client-server system for distributing hashcat work across computers, with multi-user and group management. The main workflow is users organizing hash data and cracking work in the server, which assigns work to agents; agents report progress and results. The graph also includes the web interface, both documented API surfaces, permissions, and the persistence layer. Some connections reflect README-level product behavior; source excerpts and the index show additional internal relationships, but many runtime routes were not sampled.
Main entry points: index.php Web Pages · AbstractModelFactory.php Model Persistence · tasks.php Work Setup · Login.php Session Login
Components 20
Cracking Workflow
- Work Setup
src/tasks.php - Hash Data
src/inc/utils/HashlistUtils.php - Task Models
src/dba/models/Task.php
Agent Communication
- Cracking Agents
- Agent API
src/inc/agentapi/AgentApiApp.php - Agent Actions
src/inc/agentapi/model/GetTaskAction.php - Agent State
src/dba/models/Agent.php - Agent Protocol
src/inc/agent/PQuery.php
Users And UI
- Web Pages
src/index.php - Session Login
src/inc/Login.php - Access Control
src/inc/utils/AccessControl.php - Template Rendering
src/inc/templating/Template.php
Persistence
- Factory Registry
src/dba/Factory.php - Query Filters
src/dba/QueryFilter.php - Model Persistence
src/dba/AbstractModelFactory.php - Domain Records
src/dba/models/AccessGroup.php - Database
Other components
- Operator
Connections 18
- Operator → Web Pages: uses
- Web Pages → Session Login: authenticates
src/inc/Login.php - Session Login → Factory Registry: loads sessions
src/inc/Login.php - Web Pages → Template Rendering: renders
- Web Pages → Work Setup: manages work
- Work Setup → Task Models: creates tasks
src/tasks.php - Work Setup → Hash Data: uses hashlists
src/tasks.php - Cracking Agents → Agent API: requests work
- Agent API → Agent Actions: dispatches actions
- Agent Actions → Agent State: uses agent state
- Cracking Agents → Agent Protocol: exchanges protocol
- Operator → User API: calls
- Operator → API v2: calls
- Access Control → Session Login: checks login
src/inc/utils/AccessControl.php - Factory Registry → Model Persistence: provides factories
src/dba/Factory.php - Model Persistence → Query Filters: applies filters
src/dba/AbstractModelFactory.php - Model Persistence → Database: reads and writes
src/dba/AbstractModelFactory.php - Model Persistence → Domain Records: hydrates records