hashtopolis / server

Hashtopolis - distributed password cracking with Hashcat
GNU General Public License v3.0
1.43k stars 213 forks source link

[FEATURE]: Assign task per videocard #1009

Closed fuad00 closed 10 months ago

fuad00 commented 11 months ago

Description

Let's say i have 1 agent with 16 videocards and the goal is to brute-force tasks in parallel, not agent per task. Goal is to precess small tasks and give result as fast as possible without creating queue

Brets0150 commented 11 months ago

As far as I know, Hashcat cannot do this. Hashtopolis is only a wrapper for Hashcat, so if Hashcat cannot do it then Hashtopolis can't do it.

You may consider splitting the GPUs up to multiple systems. Maybe install Proxnox on the system, Build 16 VMs, and passthrough 1 GPU to each VM; thus creating 16 Hashtopolis agents. This maybe okay with a high-performance(lots of ram and CPUs) host system. or it may be awful. ¯_(ツ)_/¯

fuad00 commented 11 months ago

Thanks for response!

Virtualization per hashcat probably bad idea

Build 16 VMs

I've tried to run hashcat with different hashmodes in parallel but looks like there some kind of pid lock protection:

CleanShot 2023-10-17 at 01 21 39

I will try to bypass it. If no success maybe i have to try multiple hashtopolis docker containers, but definitely not VMs because of performance

davidbolvansky commented 11 months ago

use —session flag to set different sessions

fuad00 commented 11 months ago

—session flag

Thanks for solution! @Brets0150, Looks like hashcat can do this!

CleanShot 2023-10-17 at 01 34 22

Maybe somewhere in hashtopolis code we need to add --session flag with random value in order to split one agent's videocards into their tasks

s3inlc commented 10 months ago

You can configure a hashtopolis agent to only use certain devices (using the -d flag) in the agent specific parameters.

Set up as many agents on the same machine (and in different directories) as you want to have it split into and adjust the agent specific parameters to distribute your GPUs among them. Then each of the agents can work on different chunks/tasks.

fuad00 commented 10 months ago

using the -d flag

!solved very uncommon and beautiful solution, thanks!