Я пытаюсь использовать возможности MPI john 1.7.9 и тестирую с простым 4-символьным паролем на одной 8-ядерной серверной машине. Я заметил, чтопосле успеха, процесс, взломавший пароль, завершается, а остальные продолжают работать. Это известная проблема или новый баг? Также, есть ли обходной путь (кроме мониторинга времени каждого процесса и поиска различий, что на самом деле не является окончательным).
Подробности:
mpiexec --version
mpiexec (OpenRTE) 1.4.3
...
mpiexec -n 8 -host localhost ./run/john temp --format=raw-md5
...
mpiexec -n 8 -host localhost killall -s HUP john && mpiexec -n 8 -host localhost ./john --status
0: guesses: 0 time: 0:00:00:07 0.00% (3) c/s: 4424K
3: guesses: 0 time: 0:00:01:35 0.00% (3) c/s: 7985K
7: guesses: 0 time: 0:00:01:34 0.00% (3) c/s: 7190K
4: guesses: 0 time: 0:00:01:35 0.00% (3) c/s: 6643K
6: guesses: 0 time: 0:00:01:35 0.00% (3) c/s: 7319K
1: guesses: 0 time: 0:00:01:34 0.00% (3) c/s: 9367K
2: guesses: 0 time: 0:00:01:34 0.00% (3) c/s: 6774K
5: guesses: 0 time: 0:00:01:35 0.00% (3) c/s: 6740K
SUM: guesses: 0 time: 0:00:01:35 0.00% (3) c/s: 59635K avg 7454K
Обратите внимание на время выполнения процесса 0 и на то, что он по-прежнему сообщает о 0 догадках. Запуск john --status показывает следующее:
./run/john --show temp --format=raw-md5
?:asdq
1 password hash cracked, 0 left
решение1
Если вы используете OpenMPI вместо mpich2, сигнал SIGHUP не передается john. Вместо этого необходимо отправить SIGUSR1.