


Rainbow tables: Because mission-critical and security-oriented applications seldom store passwords in plaintext and instead store their fixed-length hashes, rainbow tables can be efficient especially if a large list of hashed passwords is available (for example, from a leaked data dump).This is why you hear security professionals suggest all the time to choose a long and complex password that consists of a combination of different character types. For example, a nine-character password comprising a mix of upper- and lowercase letters along with digits and special characters will take over nine years to be guessed by a computer, making it virtually uncrackable. The process can be effective but excruciatingly slow. On a successful match, user is notified of the correct password. The tool then guesses every combination of password possible within this range and specified by the criteria. It takes a bit of guesswork and expertise to find the ideal brute-forcing configuration. Brute-force attack: In this type of attack, the tool asks the user to configure a few settings, for example, the minimum and maximum lengths the correct password may fall into and what types of characters it could possibly consist of (e.g., letters only, letters and numbers, or special characters) and at what positions (say, for every password it generates, first four would be alphabets followed by two digits and two special characters).The tool enters every single password in the application from the list, in an attempt to find the correct one. Dictionary attack: In this type of attack the tool tries passwords provided in a pre-fed list of large number of words, phrases and possible passwords derived from previously leaked data dumps or breaches.The common objective in all these is ultimately to correctly guess (“crack”) a password: Password crackers and cryptanalysis tools typically work in three different ways.
