-
Notifications
You must be signed in to change notification settings - Fork 0
adhfshi/ParDictAttack
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
The "hash_gen.cpp" file is used to generate hash values from plain text and store the data into hash_value.dat file. This is simluating that the database and OS in real world store user passwords. Compile "hash_gen.cpp" file by using command "g++ -o hash_gen hash_gen.cpp". If you want to generate hashs for different plain text, please modify the "hash_gen.cpp" directly. The "cracker.cpp" file is used to dictionary attack. We use "clock()" function to time the program. Compile the code using command "g++ -o cracker cracker.cpp" Using command "./cracker $dictionary_path $hash_value.dat_path" to crack the password hash that saved inside the .dat file. ================================================================= Update 3/17/2016 Add parallelized programe (openMP version) to github. Use command "g++ -fopenmp -o crackeromp cracker_omp.cpp " to compile "cracker_omp.cpp" file and submit bash "crackeromp.bash" to discovery cluster to run. output file can be found in output folder. ================================================================= Update 3/28/2016 Clean up folder. You can find sequential code in "seq_code" folder and Parallelized code in "par_code" folder. Fix errors in SHA256.h file and regenerate correct hash list. ================================================================== Update 3/29/2016 Added cracker.cu file. You can find it in "par_code/cudaonly" folder. To compile and run the program, please follow the below steps: 1. "nvcc -G -g -lineinfo -o crackercu cracker.cu" --- compile the .cu file 2. "bsub -Is -XF -q par-gpu-2 -n 1 /bin/bash" -- use par-gpu-2 queue since our program designed for Tesla K40 GPU (useing K20 GPU will lead a memory leak error) 3. "./crackercu $dictionary_path $hash_value.dat_path" --- run the program. Please use "10_million_password_list_top_10000.txt" as the dictionary and "hash_value.dat" as the input hash value. Make sure you put a correct path. Please load the following module: 1. gnu-4.4-compilers 2. fftw-3.3.3 3. platfor-mpi 4. cuda-7.0 5. oracle_java-1.7u40 ==================================================================== Update 12/4/2016 Added MPI+CUDA code, you can find them in "par_code/cudampi" To compile and run the program, please follow the below steps: 1. "mpicc -c mpi.c -o mpi.o" this well compile "mpi.c" file 2. "nvcc -c crackerMPI.cu -o cracker.o" this will comile .cu file 3. "mpicc mpi.o cracker.o -L/shared/apps/cuda7.0/lib64 -lcudart -lstdc++ -o final" this will combin mpi file and cuda file 4. "bsub < cudampi.bash" submit thie job. Please modify the bash file and make sure you put the correct path of both "hash_value.dat1" file and dictionary file. All dictionary files can be found in dictionary folder. If you can not run the cuda+mpi code, please let me know. And we will keep updating our github repo.
About
No description, website, or topics provided.
Resources
Stars
Watchers
Forks
Packages 0
No packages published