Viper 1.4 - Cracking UNIX Passwords Brute Force - Page 2
combinations we need to check. Using the example of a password with max. 8 characters (all lower case), we can calculate the total number of combinations (example for the 26 lowercase letters of the english alphabet):

(26)+ 261+
(26x26)+ 262+
(26x26x26)+ 263+
(26x26x26x26)+ 264+
(26x26x26x26x26)+ 265+
(26x26x26x26x26x26)+ 266+
(26x26x26x26x26x26x26)+ 267+
(26x26x26x26x26x26x26x26) 268

= 217,180,147,158 combinations!

Considering that passwords not only have lowercase characters, but can be a mixture of lowercase, uppercase, numbers and special characters, the number of combinations to search increases drastically (see table).
Search spaces for other character sets:

character set 1: (62 characters): a-zA_Z0-9
character set 2: (93 characters):
a-zA_Z0-9!@#$%^&*()_+-=[]{}\|;':",./<>?`


Password Length Combinations for Character Set 1 Combinations for Character Set 2
1 62 93
2 3844 8649
3 238328 804357
4 14776336 74805201
5 916132832 6956883693
6 56800235584 646990183449
7 3521614606208 60170087060757
8 218340105584896 5595818096650401
total 221919451578090 5656642206396600
In order to go through the vast search space as fast as possible, it is important to increase the hash computation speed. For the standard UNIX 'crypt' hash generation, the UFC-crypt package is optimized for different hardware with 32-bit and 64-bit CPU's. Adding a counter and a timer to the crack program will tell how many 'crypts' (and comparisons) can be done per second, giving us a estimate of the total time needed to search through all combinations of a character set. Compiling the program on different hardware and operating systems will give us an idea how systems compare in their
speed for cracking passwords. The first results on a 650 Mhz Pentium III system showed consistent 50,000 c/s (cracks per second). Let's calculate the time for all combinations:

total # combinations / 50,000 cracks/sec = total number of seconds needed

5656642206396600 / 50,000 cracks/sec = 113132844128 secs, / 86,400 (secs per day) = 1309408 days, / 365 (days per year) = 3587 years !!! <page 3>

Toggle Language