Closed h3ku closed 6 years ago
Yep, I think that the potfile should be implemented at Server level, not Worker, for example, saved with the Task Files or something like that.
If you work with non salted hashes is not a problem to start from cero a new task, but when you have salted hashes if you start a new task with another dictionary you lost a lot of performance breaking hashes that you already broke.
Basically what you said at the end sound like a good solution.
If you don't mind @h3ku, I'd like to hold off on this for now until we can do it the proper way. I can't say when I'll get around to it as it's approaching the holiday season here and I got a bunch of other stuff on my plate but we can document it and remove the configuration option for now.
Thoughts?
Edit: We'll create an issue and document the "ideal/correct" way to add a potfile-like feature if we close this up
Yep, I agree, if someone wants to use it on a personal fork assuming the problems of the potfile solution it's easy to implement. But for the main project, in my opinion, the best option is to wait for a better implementation.
The potfile was at one point a thing but then disabled (and should have been removed from the config). Bad Things™ can happen when you share a potfile and can potentially have more than 1 process writing to it at the same time.
Also, if you have gocrack workers on multiple machines - they will not benefit from a shared potfile. Ultimately, we could implement the same type of functionality by reading the incoming hashes when it's uploaded via the API and remove & note previously cracked passwords.