Amplifier - what is it?
#1
Could you explain me what is the amplifier? I couldn't find any information to understand it properly and source code couldn't help me to make this clean. Thank you
#2
Amplifier is anything to extend the keyspace, when doing a wordlist based attack you don't generate enough work for the gpu, so you need an amplifier like rules, combining with a mask or another wordlist.

For reference, older versions of oclHashcat came with a rule file full of ':' rules just to act as an amplifier.
#3
In order to gain acceleration when using compute devices such as GPUs, we have to actually give the device some work to do -- hashing alone is usually not enough to gain acceleration. For most formats, generating candidates on the host and transferring them to the device for processing is a lot slower than just processing on the host directly (e.g., straight wordlist attack against MD5 will be faster on CPU than GPU.)

To solve this problem, we need some sort of workload amplifier to ensure there's enough work available for our devices. In the case of password cracking, generating password candidates on the device provides precisely the sort of amplification we need. So we accomplish this by splitting attacks up into two loops: a base loop, and a modifier loop. The base loop is executed on the host and contains the initial password candidates. The modifier loop is executed on the compute device, and generates the rest of the candidates from the initial candidates on the device directly. The modifier loop is our amplifier, that's where our acceleration comes from.

What happens in the modifier loop depends on the attack mode. For straight mode, words from the wordlist are processed in the base loop, while rules are processed in the modifier loop. The on-device rule processing engine that executes in the modifier loop is our amplifier, that's where the acceleration comes from. For hybrid modes, words from the wordlist are processed in the base loop, while the brute force mask is processed in the modifier loop. Generating each brute force candidate is our amplifier, that's where the acceleration comes from. So on and so forth.

Hope that clarifies things.
#4
Many thanks for the explanation.