# Password Cracking with Brute Force Algorithm and Dictionary Attack Using Parallel Programming
## 2 Literature Review
This work can improve computer system security by identifying weak passwords and could be useful for processing huge amounts of data using MPI and CUDA. [PERSON] et al. [17] proposed a homogeneous parallel brute force algorithm that utilizes the GPU to crack passwords. They used the CUDA framework 3.0 to crack SHA1. In addition, they divided the passwords into five groups. The first group contains only numeric characters, the second group contains lowercase characters, the third group contains numeric and lowercase characters, the fourth group contains lower and uppercase characters (sensitive alphabet characters), and the last group contains numeric and case-sensitive characters. They measured the password cracking time for each group. The password contains six characters hashed using SHA1. Moreover, the proposed algorithm has a memory-consuming disadvantage. The test was performed on the Tesla C1060 with 240 cores and 1.3 GHz core clock speed and the Tesla C2050 with 480 cores and 1.15 GHz core clock speed. They were able to crack a six-character password in less than 1 s using the Tesla C2050. [PERSON] et al. [18] discussed that although the MD5 hash algorithm's FPGA implementation is quicker than its software equivalent, theoretically, 2128 iterations are required for a pre-image brute force attack on an MD5 hash. Their research makes an effort to accelerate hardware-implemented brute force attacks against the MD5 algorithm. For the generation of MD5 hashes, a complete 64-stage pipelining is used, and for the generation of a guessed password, three architectures are given. The MD5 hash generator and password generator pair are parallelized using 32/34/26 instances to find a hashed password with the use of the MD5 technique. A single Virtex-7 FPGA chap was used to attain a total of around 60 trials/s performance. In [7], [PERSON] et al. argued that a system's password data are often hashed. Tzhe data may fall into the hands of people who are not authorized to access them or even those who have malevolent intentions due to a variety of human errors and system vulnerabilities. Brute force and dictionary attacks are examples of attacks that might be made on hashed password data using a GPGPU-based system. The researchers' study describes the efficacy of brute force and dictionary attacks carried out using GPGPU-based machines on SHA-1 hashed passwords. The findings demonstrate that password cracking using brute force methods is more successful on passwords with shorter lengths (over 11% of them had seven characters or less) than dictionary attacks, which only cracked 3% of them. When compared to the best brute force attack scenario, which takes 491 passwords, a dictionary attack is more effective in breaking passwords with unsafe character patterns (5053 passwords). A more balanced technique for password cracking, regardless of how lengthy or secure a password is, is provided by the use of a combined attack strategy (brute force + dictionary). In [19], [PERSON] and [PERSON] published a paper about password recovery for WinRAR3 encrypted files without a file name encryption. The present cracking methods, which employ a single CPU or GPU platform, are constrained by the CPU's and GPU's sluggish decryption and decompression algorithms, respectively. This problem is addressed by the paper's efficient cracking approach, which uses CPU + GPU pipeline collaboration to speed up computation times and boost performance. In order to simplify the decompression computation, the approach additionally takes advantage of magic number matching. The testing findings demonstrate that the suggested strategy improves eight-digit password speed by 2.3 times. The study emphasizes the merits of WinRAR3's compression method and the significance of heterogeneous multi-core architecture for password cracking. The following phase in improvement entails further improving CPU and GPU collaboration as well as GPU and CPU performance. In a similar study to improve password recovery for archived files, ref.