This is an old revision of the document!
John the Ripper 1.7.9-jumbo-6 supported GPUs for the following hashes and non-hashes:
Reasonably efficient:
phpass | sha256crypt | sha512crypt | md5crypt | bcrypt | MSCash2 | WPA-PSK | RAR | Password Safe | |
CUDA | Yes | Yes | Yes | Yes | Yes | Yes | Yes | ||
OpenCL | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
Notes:
Currently inefficient because the candidate passwords are generated on CPU only:
NT | raw-MD4 | raw-MD5 | raw-SHA1 | raw-SHA256 | raw-SHA224 | raw-SHA512 | XSHA512 | MSCash | NSLDAP | MySQL 4.1 | |
CUDA | Yes | Yes | Soon | Yes | Yes | Yes | |||||
OpenCL | Yes | Soon | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
Notes:
Previously, some of these things were available as patches, but starting with 1.7.9-jumbo-6 they're integrated into the jumbo tree.
amd-driver-installer-12-4-x86.x86_64.run
) and AMD APP SDK (e.g., AMD-APP-SDK-v2.6-lnx64.tgz
)make linux-x86-64-opencl
for 64-bit systemsmake linux-x86-opencl
for 32-bit systems-opencl
suffix with -gpu
to build with CUDA support as well (if you have NVIDIA's CUDA SDK installed as well)../run/john –test
to make sure everything is OKrun
directory and run opencl-test.sh
(note: it tests a subset of OpenCL-using formats only)Add OpenCL and CUDA support.
For 64 bits
Install GPU driver (e.g., NVIDIA-Linux-x86_64-340.32.run
) and CUDA SDK (e.g., cuda-repo-7.0-28_amd64.deb
)
http://www.yourownlinux.com/2014/12/how-to-install-nvidia-340-65-stable-graphics-drivers-in-linux.html For Nvidia Driver Install http://docs.nvidia.com/cuda/cuda-getting-started-guide-for-linux/ For Cuda Install
Exports variables to terminal or add to ~/.bashrc (If you add to bashrc file remember to reload terminal –> source ~/.bashrc)
export PATH=$PATH:/usr/local/cuda-7.0/bin export LD_LIBRARY_PATH=:/usr/local/cuda-7.0/lib64 export PATH=$PATH:/usr/local/cuda-7.0/targets/x86_64-linux/include export LD_LIBRARY_PATH=:/usr/local/cuda-7.0/targets/x86_64-linux/lib
Build John: 1.7.9-jumbo-7
make linux-x86-64-cuda for 64-bit systems make linux-x86-cuda for 32-bit systems
Build John: 1.8.0-jumbo-1
./configure && make clean && make -sj4 That should detect automatically Nvidia Opencl and CUDA
Check the output in the terminal, you should see:
.... Opencl .... yes CUDA ...... yes ....
Check formats supported:
../run/john --list=formats --format=cuda #for CUDA ../run/john --list=formats --format=opencl #for Opencl
Test John
Run ../run/john --test to make sure everything is OK Actually, some tests will likely fail because there are currently no "format destructors". you'd need to test the individual formats on their own, not all at once, to really make sure that everything is OK (or to find out if not, for real). So run commands like e.g. "../run/john --test --format=wpapsk-opencl". Optionally download {{john:john_test_data:john-opencl-tester.tar.gz|john opencl tester}}, extract to run directory and run opencl-test.sh (note: it tests a subset of OpenCL-using formats only)
Now you are ready to go
For 32 bits
Do the same as 64 bits but choose the correct files.
List available GPUs
../run/john --list=opencl-devices
Select specific GPU (in this example device #3)
../run/john --devices=3
Select multiple GPUs (set fork to the number of GPUs selected)
../run/john --devices=0,1,4 --fork=3
As of 1.7.9-jumbo-6:
OpenCL version of MSCash2 supports cracking on multiple GPUs. For more detail see common_opencl_pbkdf2.h
.
Benchmarks: AMD Radeon HD 7970: 92.5K c/s real ATI Radeon HD 4890: 19.9K c/s real Nvidia GTX 570 : 26.7K c/s real AMD Radeon HD 7970 + Nvidia GTX 570: 113.5K c/s real
The old content of this page has been moved to GPU development.