2. A program which attempts to break a password of known length by iterating thru all possible combinations of characters that could make up that password.
This approach is not feasable for cracking most passwords these days. However, as late as the mid-1980s, some long-distance companies required only very short numeric access codes (e.g. five digits) to verify the identity of their customers. Wardialers were created which would, running unattended, call up long-distance providers' local connect numbers and iteratively try possible access codes. Codes which worked were logged for later illicit use.
These wardialers had a high success rate because of the small range of possibilities to iterate through, e.g. 10000 for a five digit access code, compared to hundreds of trillions of combinations for an eight-character alphanumeric code.
Long-distance providers soon required longer passwords and took advantage of technology for rapidly tracing the phone numbers that wardialers were being run from, such that running wardialers became pointless and dangerous.