hashcat Forum

Full Version: Specific amount of letters/digits
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
As asked and somewhat answered here; I'm looking to try and crack a hash I know to be 12 characters long, having 2 digits, and 10 letters, albeit in any position. The response linked seems like it'd work, however, doesn't when I attempt to parse the rejection rule, stating "No valid rules left" so I'm a little stumped. Is it just that the flow has changed since that post? Or is this typical noob user error?

Example of possible combinations, much like in the OP:
abc1defgh2ij
2zyxw1vutsrq
etc.
well i think the fastest way is to use a maskfile with all possible masks

starting with

Code:
?d?d?l?l?l?l?l?l?l?l?l?l

then shifting the second ?d until you reach the end so from 

Code:
?d?l?d?l?l?l?l?l?l?l?l?l
up to
?d?l?l?l?l?l?l?l?l?l?l?d

then start again with both ?d?d shifted once 

Code:
?l?d?d?l?l?l?l?l?l?l?l?l

and from there  again shift the second ?d until your reach the end

you should end up with 66 or 65 (11 +10 +9 ... + 1) masks, not quite sure about the last one, representing all possibilities

you can shuffle the resulting lines to achieve add some randomluck or just stay with this order
Hola, me podria ayudar?, requiero de un patron que yo mismo establezco para usar este comando ?d?d
?l?l?l?l?l?l?l?l?l?l?
Please use english as this is the used forum language.

Por favor, utilice inglés porque este es el idioma del foro.
Or use copilot to create a python script With requested limitations. So 12 character long wordlist, minimum and maximum number of digits is 2, all the rest are lower case letters and create a wordlist.txt.
And then you crack hash with that wordlist. But all combinations is 9x10^18 combinations. If your rig is capable to do 1billion per second, that would take few of your lifetimes
Also here should be a python combinations for all 66 combinations of masks

from itertools import combinations

# Define characters
letter = '?l'
digit = '?1'

# Number of positions (12 total)
positions = range(12)

# Find all ways to place two "1"s in 12 positions
combinations_list = list(combinations(positions, 2))

# Generate masks
masks = []
for digit_positions in combinations_list:
mask = [letter] * 12 # Start with all letters
mask[digit_positions[0]] = digit # Place first digit
mask[digit_positions[1]] = digit # Place second digit
masks.append(''.join(mask)) # Store mask as string

# Print all 66 masks
for m in masks:
print(m)

# Save to a file
with open("hashcat_masks.txt", "w") as file:
file.write("\n".join(masks))

print("\nGenerated all 66 masks and saved to 'hashcat_masks.txt'!")
thanks for sharing. I really like it