As part of my UNIX course in the spring of 2016, my fellow peer and I created a program that could take advantage of the power of multiple machines to crack more than 10,000 passwords in a reasonable amount of time. Using Python, we created a work queue application that coordinated “workers” running on different machines to improve the speed of the program. All of the passwords were decoded using the MD5 hash system.
More specifically, this project was completed with the collaboration of two different Python files. The first was the basic brute-force password cracker that attempted every permutation of letters from an alphabet up to a specified length. The second application was a Work Queue application that coordinated the workers running on different machines to execute the first program fast and simultaneously so that the passwords could be cracked more efficiently.