Custom Wildcard Lists
BTCRecover allows you to pass an argument to a standard text file containing a list of items that can be used as an expanding wildcard.
If you attempt to use a custom wildcard without first having passed an argument to a list file, that wildcard will simply return a single blank string. (So will be ignored)
If you make use of this feature, it is wise to check that your custom wildcards are being correctly loaded and behave as you expect through use of the --listpass argument.
Repeating String Wildcards
Repetition Behaviour
The %e
and %f
wildcards are special in that when they appear multiple times in a given candidate password, they will have the same value.
What this means is that they are useful for situations where you may have used some character (or string) which is repeated multiple times throughout a password.
Example 1:
You can see an example of this behaviour with the following command which loads a demo file for the %e
wildcard
python btcrecover.py --listpass --passwordlist ./docs/custom-wildcard-lists/demo_passwordlist.txt --wildcard-custom-list-e ./docs/custom-wildcard-lists/strings.txt --has-wildcards
Example 2
Likewise this works file for full strings, as you can see with a command like this:
python btcrecover.py --listpass --passwordlist ./docs/custom-wildcard-lists/demo_passwordlist.txt --wildcard-custom-list-e ./docs/custom-wildcard-lists/string.txt --has-wildcards
Wildcards within Wildcards
These two types of wildcards are also extra special in that the strings used for them can also include other expanding wildcards.
Example 3
You can see an example of this behaviour with the following command which loads a demo file for the %f
wildcard
python btcrecover.py --listpass --passwordlist ./docs/custom-wildcard-lists/demo_passwordlist.txt --wildcard-custom-list-f ./docs/custom-wildcard-lists/wildcard.txt --has-wildcards
Standard String Wildcards
The %j
and %k
wildcards behave in a simmilar manner to normal expanding wildcards.
Example 4
You can see an example of this behaviour with the following command which loads a demo file for the %j
wildcard
python btcrecover.py --listpass --passwordlist ./docs/custom-wildcard-lists/demo_passwordlist.txt --wildcard-custom-list-j ./docs/custom-wildcard-lists/strings.txt --has-wildcards
If you compare the output of example 4 to that of example 2, you can see how these two different types of wildcards are handled.