Updated Jul 15, 2026

Passwords

Generate target-specific brute-force wordlists

Rule-driven wordlist builder for brute-force pipelines.

Agent

overview

What pydictor does

pydictor is the wordlist stage before a cracker. Set -base and --len, optionally --head, --tail, and --leet, to emit a dictionary tuned to the target instead of a generic dump.

Modes via -tool such as combiner, uniqifer, and comparer clean lists you already hold. -extend permutes a seed file; --encode can emit md5, sha256, or base64 of each entry.

Trickest runs pydictor as a managed Passwords node that writes a folder of results. Feed the list to hydra or another brute-forcer. Prefer cewl when the list should come from site content instead of rules.

source github.com/LandGrey/pydictor

use cases

Where pydictor fits

Build a target-specific password list

Combine a base character set, a length range, and prefixes or suffixes drawn from the target so the brute force tries likely passwords first.

Generate lists from identity data

Use the birthday or ID-card plugins to turn known facts about a target into candidate passwords for a focused attack.

Merge, dedupe, and filter existing lists

Run combiner and uniqifer modes with regex or character-type filters to clean and consolidate wordlists you already hold.

Encode wordlists for hash-oriented attacks

Apply --encode to emit md5, sha256, base64, or other encodings of each entry when the attack surface expects hashed or encoded values.

reference

pydictor inputs and flags

34 inputs
NameTypeFlagDescription
modeSTRING-toolMode: handler, shredder, hybrider, comparer, combiner, uniqbiner, counter, or uniqifer.
base-typeSTRING-baseBase character set (d, L, c, dL, dc, Lc, dLc).
lengthSTRING--lenMinimum and maximum password length.
add-prefixSTRING--headPrefix added to every generated item.
add-suffixSTRING--tailSuffix added to every generated item.
enable-leetSTRING--leetApply 1337 substitutions by code (0, 1, 2, 11-19, 21-29).
encode-typeSTRING--encodeEncode each entry (md5, sha256, b64, des, and more).
wordlist-to-permutateFILE-extendExtend an existing wordlist based on rules.

Showing key inputs. pydictor exposes 34 inputs in total.

Full flag reference (34 inputs)
NameTypeFlagDescription
modeSTRING-toolSpecify mode. [handler,shredder,hybrider,comparer,combiner,uniqbiner,counter,uniqifer]
plugSTRING-plugSpecify plugin. (pid4,scratch,birthday,pid8,ftp,pid6) [e.g pid6(id card last6 char wordlist)]
chunkSTRING-chunkSpecify chunk. [chunk1] [chunk2] ...
d-m-ySTRING--dmyUse ddMMyyyy format date, default date format: yyyyMMdd
lengthSTRING--lenSpecify length of password. [e.g (minlen) (maxlen)]
base-typeSTRING-baseBase type. Choose from [d, L, c, dL, dc, Lc, dLc]. (d=digital [0 - 9], L=lowercase letters [a - z], c=capital letters [A - Z], dL=mix d and L [0-9 a-z], dc=Mix d and c [0-9 A-Z], Lc= Mix L and c [a-z A-Z], dLc= Mix d, L and dL [0-9 a-z A-Z])
set-levelSTRING--levelSet the word list rule level.
add-prefixSTRING--headAdd items prefix.
add-suffixSTRING--tailAdd items suffix.
custom-charSTRING-charCustom char
enable-leetSTRING--leetEnable 1337 mode [code] (0, 1, 2, 11-19, 21-29)
encode-typeSTRING--encodePlease specify encodee type. [test,b16,sha512,des,md516,rsa,b64,b32,none,execjs,url,hmac,sha1,sha256,md5]
pattern-fileFILE--patternPlease specify pattern file
filter-by-occurSTRING--occurPlease specify occur filter. [letter] [digital] [special]
filter-by-regexSTRING--regexPlease specify regex filter.
filter-by-typesSTRING--typesPlease specify filter types. [letter] [digital] [special]
filter-by-repeatSTRING--repeatFilter by consecutive repeat times of letter, digital, special chars
counter-mode-fileFILE·Specify the counter mode file.
counter-mode-modeSTRING·Specify the counter mode. ['v','s','vs']
handler-mode-fileFILE·Specify the handler mode file.
shredder-mode-dirFOLDER·Specify the shredder mode dir.
configuration-fileFILE--confSpecify configuration file.
pattern-expressionSTRING--patternPlease specify file with pattern expression.
shredder-mode-fileFILE·Specify the shredder mode file.
uniqbiner-mode-dirFOLDER·Specify the uniqbiner mode dir.
uniqifer-mode-fileFILE·Specify the uniquer mode file.
counter-mode-numberSTRING·Specify counter mode number. [view_num]
hybrider-mode-file1FILE·Specify the hybrider mode first file.
hybrider-mode-file2FILE·Specify the hybrider mode second.
combiner-mode-folderFOLDER·Specify directory for combiner mode.
wordlist-to-permutateFILE-extendExtend wordlist based on rules. [e.g names.txt]
configuration-expressionSTRING--confSpecify configuration expression.
comparer-mode-minuend-fileFILE·Specify the minuend file for comparer mode.
word-to-create-password-ofSTRING-extendExtend wordlist based on rules. [e.g bob]

example

Run pydictor

pydictor · command
# generate a short lowercase+digit list with a company prefix and leet variantspydictor -base dL --len 4 6 --head acme --leet 1
sample output
[+] start generating wordlist...[+] base=dL len=4-6 head=acme leet=1acme1234acme123aacme12abacmea1b2acme2024acme@123[+] 18432 lines written to results/wordlist.txt

guidance

Choosing pydictor

Use pydictor to build a custom wordlist before a brute-force run, especially when a target-specific list beats a generic dump. It produces lists; it does not attack. Feed output to hydra or a panel brute-forcer.

cewl

Scrapes a website to build a wordlist from page content. pydictor generates from rules and plugins instead.

clean-wordlist

Cleans and dedupes an existing list. pydictor can also do this via comparer and uniqifer modes.

hydra

Brute-force engine that consumes a pydictor list against a login.

faq

pydictor questions

Set -base dL for digits plus lowercase letters, then bound size with --len, for example pydictor -base dL --len 4 6 --head app.

Run pydictor yourself

Rules and a base set feed pydictor, which generates a custom wordlist for hydra to brute-force a login before any valid credential lands as output.

Facts on this page come from the live Trickest tool library.