TOTP algorithms (RFC 6238) derive the OTP from the current Unix time divided by a time step (usually 30 seconds). $$OTP = Truncate(HMAC(K, T))$$ An advanced wordlist generation strategy involves predicting the server's time drift. If an attacker knows the precise server time, they can generate a targeted wordlist containing only the valid OTPs for the current and adjacent time windows (e.g., T-1, T, T+1), reducing the candidate list from 1,000,000 to typically 3 values.
A 6-digit OTP wordlist is a sequential or randomized list of every possible numerical combination from 000000 to 999999 .
The contents typically look like this (first 20 lines of a common list):
In the context of security auditing and brute-force simulation, a "wordlist" for a 6-digit OTP can be generated using three primary methodologies:
SecLists/Fuzzing/6-digits-000000-999999.txt at master - GitHub
An attacker with no rate limit can try all 1,000,000 codes in hours or minutes using automated tools. Even with a lockout after 5 failures per user, an attacker might target many different accounts simultaneously.