why does -i paremeter not working while pipe?
#1
why does -i paremeter not working while pipe?
there should be  exist something like MASK:?l?l 1/5 or 2/5 ,but now there isn't
at first glance I think maybe a6 mode, then I tried another a6 attack and -i works fine.
So how can I make -i parameter working in pipe mode?
Atom suggest pipe many times and pipe really run fast,seldom drop speed too much.
Can anyone help? What's wrong in the code as follows with -i parameter? 

c:\hc>hashcat64 -a6 zm.txt ?l?l?l?l?l -i --stdout | hashcat64 -m 2500 -a0 --nonce-error-corrections=0 -w 3 -d 1,2 final26c4.hccapx
hashcat (v4.0.1) starting...
OpenCL Platform #1: NVIDIA Corporation
======================================
* Device #1: GeForce GTX 1060 6GB, 1536/6144 MB allocatable, 10MCU
* Device #2: GeForce GTX 1060 6GB, 1536/6144 MB allocatable, 10MCU
OpenCL Platform #2: Advanced Micro Devices, Inc.
================================================
* Device #3: Spectre, skipped.
* Device #4: AMD A10-7700K Radeon R7, 10 Compute Cores 4C+6G, skipped.
Hashes: 3 digests; 3 unique digests, 1 unique salts
Bitmaps: 16 bits, 65536 entries, 0x0000ffff mask, 262144 bytes, 5/13 rotates
Rules: 1
Applicable optimizers:
* Zero-Byte
* Single-Salt
* Slow-Hash-SIMD-LOOP
Password length minimum: 8
Password length maximum: 63
Watchdog: Temperature abort trigger set to 90c
Watchdog: Temperature retain trigger set to 75c
Starting attack in stdin mode...
Session..........: hashcat
Status...........: Running
Hash.Type........: WPA/WPA2
Hash.Target......: final26c4.hccapx
Time.Started.....: Sat Dec 02 20:37:19 2017 (9 secs)
Time.Estimated...: Sat Dec 02 20:37:28 2017 (0 secs)
Guess.Base.......: Pipe
Speed.Dev.#1.....:   174.0 kH/s (50.67ms)
Speed.Dev.#2.....:   170.6 kH/s (50.96ms)
Speed.Dev.#*.....:   345.0 kH/s
Recovered........: 0/3 (0.00%) Digests, 0/1 (0.00%) Salts
Progress.........: 5059830
Rejected.........: 2110710
Restore.Point....: 0
Candidates.#1....: lovewiee -> zhongeldr
Candidates.#2....: zhongwiee -> gunkaimnss
HWMon.Dev.#1.....: Temp: 56c Fan: 33% Util: 93% Core:1885MHz Mem:3802MHz Bus:16
HWMon.Dev.#2.....: Temp: 61c Fan: 52% Util: 78% Core:1873MHz Mem:3802MHz Bus:4

And here I tried another a6 attack and -i works fine.
c:\hc>hashcat64 -a6 -m 2500 --nonce-error-corrections=0 -w 3 -d 1,2 --session=final26c4 final26c4.hccapx sj.txt ?l?l -i
hashcat (v4.0.1) starting...
OpenCL Platform #1: NVIDIA Corporation
======================================
* Device #1: GeForce GTX 1060 6GB, 1536/6144 MB allocatable, 10MCU
* Device #2: GeForce GTX 1060 6GB, 1536/6144 MB allocatable, 10MCU
OpenCL Platform #2: Advanced Micro Devices, Inc.
================================================
* Device #3: Spectre, skipped.
* Device #4: AMD A10-7700K Radeon R7, 10 Compute Cores 4C+6G, skipped.
Hashes: 3 digests; 3 unique digests, 1 unique salts
Bitmaps: 16 bits, 65536 entries, 0x0000ffff mask, 262144 bytes, 5/13 rotates
Applicable optimizers:
* Zero-Byte
* Single-Salt
* Slow-Hash-SIMD-LOOP
Password length minimum: 8
Password length maximum: 63
Watchdog: Temperature abort trigger set to 90c
Watchdog: Temperature retain trigger set to 75c
Dictionary cache built:
* Filename..: sj.txt
* Passwords.: 6120000
* Bytes.....: 79560000
* Keyspace..: 159120000
* Runtime...: 1 sec
[s]tatus [p]ause [r]esume [b]ypass [c]heckpoint [q]uit =>
Session..........: final26c4
Status...........: Running
Hash.Type........: WPA/WPA2
Hash.Target......: final26c4.hccapx
Time.Started.....: Sat Dec 02 20:51:45 2017 (1 sec)
Time.Estimated...: Sat Dec 02 20:58:40 2017 (6 mins, 54 secs)
Guess.Base.......: File (sj.txt), Left Side
Guess.Mod........: Mask (?l) [1], Right Side
Guess.Queue.Base.: 1/1 (100.00%)
Guess.Queue.Mod..: 1/2 (50.00%)
Reply
#2
It's very easy to think about this:
you have 2 different processes
the 2 processes only communicate over the pipe
the second hashcat instance only knows that it gets some input from stdin (from an *external* command/process)


There is no way that the second hashcat instance could know what the first one is generating and therefore the second (main) hashcat process can't show how many candidates are left and on which mask it is currently working etc.

This is always true and this is the basic principle how pipes work in general

Short answer: everything is working correctly. 2 distinct processes only communicate by use of a pipe but where the only data that is sent is the password candidates and therefore the second process can't know at which mask position the first process currently is
Reply
#3
(12-02-2017, 03:35 PM)philsmd Wrote: It's very easy to think about this:
you have 2 different processes
the 2 processes only communicate over the pipe
the second hashcat instance only knows that it gets some input from stdin (from an *external* command/process)


There is no way that the second hashcat instance could know what the first one is generating and therefore the second (main) hashcat process can't show how many candidates are left and on which mask it is currently working etc.

This is always true and this is the basic principle how pipes work in general

Short answer: everything is working correctly. 2 distinct processes only communicate by use of a pipe but where the only data that is sent is the password candidates and therefore the second process can't know at which mask position the first process currently is
So according to your "Short answer: everything is working correctly" ,my code -a6 wordlist.txt ?l?l?l?l?l -i can cover all ranges from 
a
aa
......
zzzzz
Although I can't see the mask running progress.
Is that so? Sorry for my newbie question and thanks for your quick reply.
Thanks again
Reply