ืึฐืฉืืึผืืจึธืจ ืืจืกื ืืืฉื ืฉื ืชืืื ืืช ื ืืืืฉ ืืกืืกืืืืช ืืืืชืืงื ืื ืชืืืช John the Ripper 1.9.0-jumbo-1. (ืืคืจืืืงื ืืชืคืชื ืืื 1996.) ืืืื ืขืืื ืืคืจืืืงื ืืงืืจืืช ืืืื ืื ืืืืจืื, ืืื ืื ืืจืืืืช ืืืื ืืช ืขืืืจ Windows.
ืืฆืืื ืื ืืืคื 1.8.0 ืฉื ืื ืืื ืืฆืืืช ืืจืกื 1-jumbo-4.5, ืืืืืื ืืืฆืขื ืืืชืจ ื-6000 ืฉืื ืืืื (ืืt commits) ืืืืชืจ ื-80 ืืคืชืืื. ืืืืื ืชืงืืคื ืื ืืืืืฆื ืืืคืชืืื ืืืฉืชืืฉ ืืจืกื ื ืืืืืช ื-GitHub, ืฉืืฆืื ื ืฉืืจ ืืฆืื ืืืจืืช ืืฉืื ืืืื ืฉื ืขืฉื ืืืืืช ืืื ืืืจืฆืื ืืชืืฉืืช, ืืืืื ืืืืืช ืจืืฉืื ื ืฉื ืื ืฉืื ืื (pull request) ืืคืืืคืืจืืืช ืจืืืช. ืชืืื ื ืืืืืืช ืฉื ืืืจืกื ืืืืฉื ืืื ืืืคืขืช ืืชืืืื ื-FPGA (FPGA) ืื ืืกืฃ ืืืขืื, GPU ื-Xeon Phi.
ืขืืืจ ืืืืืช Ztex 1.15y, ืืืื 4 ืฉืืื FPGA ืืืฉืืฉืื ืืืงืืจ ืืขืืงืจ ืืืจืืืช ืืืืงืืื, ืืืืฉืืื ืืขืช 7 ืกืืืื ืฉื ืืืืื ืกืืกืืืืช: bcrypt, classic descrypt (ืืืื bigcrypt), sha512crypt, sha256crypt, md5crypt (ืืืื Apache apr1 ื-AIX smd5), Drupal7 ื-phpass (ืืฉืืืืฉ , ืืืืืื ืืืืจืืคืจืก). ืืืงื ืืืืฉืืื ื-FPGA ืืคืขื ืืจืืฉืื ื. ืขืืืจ bcrypt, ืืืืฆืืขืื ืฉืืืฉืื ืฉื ~119k c/s ืขื 2^5 ืืืืจืฆืืืช ("$2b$05") ืขื ืฆืจืืืช ืืฉืื ืฉื ื-27 ืืืื ืขืืืื ืืฉืืขืืชืืช ืขื ืืชืืฆืืืช ืขืืืจ ื-GPUs ืืขืืื ืืื ืืืืชืจ ืืืื, ืืืืืจ ืืืืจื ืืืืืื. ื ืชืื ืื ืืฉืืืืืช ืฉื ืืืืืช ืืกืื ืื, ืฉื ืืืงื ืขื 16 ืืืืืช (64 FPGAs) ืื ืฉืืืื ื-Raspberry Pi 2 ืืืื. ืืคืื ืงืฆืืื ืืืืช ืืจืืืื ืฉื John the Ripper ื ืชืืืช, ืืืื ืื ืืฆืื ื ืืืืฉ ืืกืืกืื ืืืืจืื ืื-ืืื ืืช ืฉื ืืกืคืจ ืจื ืฉื hashes. ืืื ืืืืืฅ ืืช ืืขืืืื, ืืืฉืื ื ืฉืืืืฉ ืืืกืื (ืืฆื ื-"--mask", ืืืื ืืฉืืืื ืขื ืืฆืืื ืืืจืื) ืืืฉืืืื ืฉื ืืืืืืืื ืืืืืฉืืื ืืืื ืฉืืืขืืกื ืืฆื ื-FPGA. ืื ืงืืืช ืืื ืฉื ืืืฉืื, ืจืืื ืืืขืืฆืืืื (ืืืฉื. sha512crypt ื-Drupal7) ืืฉืชืืฉื ืืืืงืื ืืืืจืืืื ืืืืืืช ืืขืื ืืจืืืืช ืืืืืืช (ืืืืืช CPU ืจืืืช) ืืืงืืืืืช ืืื ืืจืืงืฆืื ืขื ืืืืืช ืงืจืืคืืืืจืคืืืช. ืืช ืืคืืชืื ืฉื ืคืื ืงืฆืืื ืืืืช ืื ืืืืื ืื ืืก ืืืจืืงืื ืืชืืืื ืขื ืืคืชืื ื'ืืื ืืืจืื.
ืฉืื ืืืื ืืืืืื ื ืืกืคืื:
- ืชืืืื ืืืกืคืจ ืจื ืฉื ืกืืืื ื ืืกืคืื ืฉื ืืืืื, ืฆืคื ืื ืืื', ืืืื ืื ืืืืื ืกืืกืืืืช ืงืืืกื (ืืืืืื, ืืืจืกืืืช ืืืฉืืช ืฉื QNX), ืืื ืื ืืจื ืงื ืืืืขืืช ืงืจืืคืืืืจืคืืื, ืืจืืืื ืื ืืืฆืคื ืื ืืืขืจืืืช ืงืืฆืื ืืืฆืคื ืืช (ืืืืืื, Bitlocker ื FreeBSD geli), ืืื ืื ืชืืืื ืืกืืืื ืืืฉืื ืฉื ืคืืจืืืื ืฉื ืชืืื ืืขืืจ (ืืืืืื, ืืืกืคืช ืชืืืื ื-bcrypt-pbkdf ืขืืืจ OpenBSD softraid) ืืขืื ืืจืื ืืืชืจ. ืืกื ืืื, ื ืืกืคื 80 ืคืืจืืืื ื-CPU ื-47 ื-OpenCL (ืืืกืคืจ ืงืื ืฉื ืืฉื ืื ืืืกืจื ืืฉืื ืืฉืืืืื ืืืืฉืื ืืืืืฉื ืื). ืืืกืคืจ ืืืืื ืฉื ืืคืืจืืืื ืืื ืืขืช 407 ืืืขืื (ืื 262 ืื ืืืื ืคืืจืืืื "ืืื ืืืื" ืืืืืืจืื ืืงืืืฆื ืชืฆืืจื) ื-88 ื-OpenCL.
- ืืกืจืช ืชืืืื ืืฉืคืช CUDA ืืืืืช OpenCL, ืฉืืื ื ืืคืจืืขื ืืื ืืคืืืช ืืฉืืืืฉ ืืืื ื-NVIDIA GPU (ืืืคืืื ืขืืืจ, ืืืืืช ืืืืงืื ืืคืืชืื ืืืืืคืืืืืืฆืืืช ืืืืฉืื ืืื ืฉื ืื ืคืืจืื ืืชืืช ื-GPU ืืืงืื ืฉื ืืื ืืืฉืืืื ืืคื ื).
- ืชืืืื ืืขืจืืืช ืืืจืืืช SIMD ืืืฉืืช - AVX2, AVX-512 (ืืืื ืขืืืจ ืืืืจ ืืฉื ื ืฉื Xeon Phi) ื-MIC (ืืืืจ ืืจืืฉืื) - ืืื ืื ืฉืืืืฉ ืืื ืืืจืกืื ืืืื ืืืชืจ ื- SIMD ืืืืืขืืช ืฉื ืคืืจืืืื ืจืืื, ืืืื ืืฉืืืืฉ ืฉื ืืขืจืื ืืืจืืืช ืฉื ืชืืื ืืขืืจ ื-AVX ื-XOP ื-x86(-64) ื
NEON, ASIMD ื-AltiVec ืขื ARM, Aarch64 ื-POWER, ืืืชืืื. (ืืืงืืช ืืืืง ื- GSoC 2015.) - ืืืคืืืืืืฆืืืช ืจืืืช ืขืืืจ CPU ื-OpenCL, ืื ืืื ืืขืืื ืืฆืืจื ืืขืืื ืืืชืจ ืขื ืืกืคืจ ืจื ืฉื hashes ืื-ืืื ืืช (ืืืืืื, ืืขืื ืช 320 ืืืืืื hashes ืฉื SHA-1 ืขื ื-GPU) ืืื ืืื ืืืืืืจ ืืช ืืืืจืืช ืืืฉืื ืืืืืื. ืืืง ืืืืืคืืืืืืฆืืืช ืืืื ืื ืืื ืืืจืกืืืืช, ืืืงื ืืืกืืช ืชืช-ืงืืืฆืืช ืฉืื ืืช ืฉื ืคืืจืืืื, ืืจืืืช ืืื ืกืคืฆืืคืืืช ืืคืืจืืืื.
- (ืืืืืืื) ืชืฆืืจื ืฉื ืืืกืื ืืืคืืืืื ืฉื ืกืืกืืืืช ืฉื ืืืงื ืืืขืื ("-tune=auto -verbosity=5") ืืืืืื ืืืคืืืืืืื ืฉื ืขืืืื ื-OpenCL (ืืืคืขื ืืืจืืจืช ืืืื), ืืืื ืืชืืฉืืืช ืืืืืจื ืืืืืืช ืฉื NVIDIA GTX ืกืืจืช GPUs ืืชืืจ ืืคืขืื ืืื 10xx ืืืืื. ืฉืืืืฉ ื-hash ืฉื ืืขื ืืคืืขื ืืืืืจื ืืืืืชื ืฉื ืืกืืกืืืืช ืื ืืืงืืช (ืืืฉืจ ืื ืืืืข ืืจืืฉ) ืืืืื ืื ืืืืืืื ืืื.
- ืืืกืคืช ืืืืจ ืขืืืจ "ืืืืืืื ืืื ืืืื" ืฉืฆืืื ื ืืฉืืจืืช ืืฉืืจืช ืืคืงืืื ืืืืืขืช ืกืืื hash ืืืืจืืืืื ืืืฉืื, ืืืฉื "-format=dynamic='sha1(md5($p).$s)'", ืืืืืฉื ืืืขืื ืืืืฆืขืืช SIMD . ืืืจืืืืื ืฉื ืืืืืืื ืืืื, ื ืชืืืื ืขืฉืจืืช ืืืืื ืืืืจืื (ืืืืื ื ืคืืฆืื ืืื MD5 ืืขื ืืงืืืืืื ืืื ืื ืืื ืืื Whirlpool), ืฉืจืฉืืจ ืชืช-ืืืจืืืืช, ืงืืืื ืืคืขื ืื, ืืืจืช ืจืืฉืืืช ืฉื ืชืืืื, ืืคื ืืืช ืืกืืกืื, ืืื, ืฉื ืืฉืชืืฉ ืืงืืืขื ืืืจืืืช.
- ืืืืื ืืืืืื ืื ืจืฆืืืื ื-hashcat, ืืืื ืชืืืื ืืคืงืืืืช ืืืืื ืฉื ืจืฉืืืช ืืืืื ืกืคืฆืืคืืืช ืืขืืจ ื-hashcat, ืืขืืจ ืืืกืคืืจ ืืืฉืืจื OpenCL ื-1, ืฉืืืืฉ ืืืืจืื ืืจืืจืช ืืืื ืฉื ืกืืกืื (ืืืจื ืืื ืืืจื 7) ืขืืืจ ืืืื ื ืืืฆืืขืื.
- ืืฆืื ืคืืฆืื ืืืฉืื, ืืืื PRINCE ื-hashcat (ืืืฆืจ "ืืืืืืื" ืขื ืืื ืฆืืจืืฃ ืืืืื ืืจืืืืช ืืกืืจ ืขืืื ืฉื ืืืจื ืืืื), ืชืช-ืงืืืฆืืช (ืืืื ืกืืกืืืืช ืขื ืื ืืกืคืืง ืชืืืื ืฉืื ืื ืื ืื ืืชืืืื ืืืื ืืืืขืื ืืงืืืฆื ืืืืื ืฉื ืชืืืื ืืคืฉืจืืื) ืืืขืจืืืช ืืืฆืื ืืืช ืืืืจืืืืืช (ืืืคืฉืจ ืืืฆืืื ืืืฆืื ืืื, ืืืชืืืจืื ืืงืืืฆื ืชืฆืืจื ืืฉืคื ืืืืืช C, ืืืฆืืจ ืกืืกืืืืช ืจืืืช ืื ืืชื ืืช ืืืืืืช ืืืชืืกืก ืขื ืื "ืืืื" ืืกืืกืืช ืฉืืชืงืืื ืืืฆื ืืืจ). ืืื ืื, ืืกืคืจ ืืฆืืื ืืืฆืื ืืื ืืืฉืื ืืืืืจืื ืืจืืฉ.
- ืชืืื ืืช ื ืืกืคืืช ืืฉืืืืฉ ืืืกืคืจ ืืฆืืื ืื-ืืื ืืช (ืืื ืขื ืืื ืืฉื ื - ืขืจืืื), ืืื ืืฉืืืืฉ ืืื ืืขืจืืืช ืืืืื (ืขืจืืืช ืืืงืื ืฉื ืจืฉืืืช ืืืืื).
- ืฉืืคืืจืื ืืืฆืื ืืืกืื (ืืชืืืช ืืกืื ืืืจืืชืืช ืืืืื ืืืืจืืื ืฉืฆืืื, ืืืืช ืืืกืื ืืฆื ืฉื ืืืฉืืจ OpenCL ืื ืืื FPGA) ืืกืืง ืืืื (ืืชื ืืืืช ืกืืืจื ืืืืฉืืจืื ืฉืืืฉืืื ืืกืคืจ ืจื ืฉื hashes ืืืงืืื, ืฉืืขืืจ ืืืฆื ืื ืืกืจืืช ืกืืกืืืืช ืืืืืงื, ืืื ืืืืืืช ืขื ืฆืจืืืช ืืืืจืื).
- ืฉืืคืืจืื ืจืืื ืืชืืืื ื-Unicode ืืืงืืืืืื ืืืจืื ืืชืชื-ืืขืจืืืช ืฉืื ืืช.
- ืฉืืคืืจืื ืจืืื ืืชืืื ืืืช *2john (ืืืจืช ืงืืฆืื ืืคืืจืืืื ืฉืื ืื ื
ืืฉืชืืฉ ืขื John), ืืืืืื wpapcap2john (ืืืคื ืืชืขืืืจืช WiFi). - ืืคืฉืจืืืืช ืจืืืช ืฉื ืฉืืจืช ืคืงืืื ืืืฉืืช, ืืืืจืืช john.conf, ืชืฆืืจืช ืืคืฉืจืืืืช ืกืงืจืืคื ืืืชืืื ืืช ืืืืฉืืช ืืืชืืืืืช ืฉืืื, ืฉืื ืืืื ืืืืืจื ืืื.
- ืฉืืคืืจ ืืืืืช ืืงืื ืขืงื ืชืืืื ืืืื ืืช ืืื ืืืช ืืืืื ืขื AddressSanitizer (ืงืืื) ื-UndefinedBehaviorSanitizer (ื ืืกืฃ), ืืืกืคืช fuzzer ืคืืจืื ืืืื ื (ืืชืื GSoC 2015), ืชืื ืฉืืืืฉ ืืืื ืืืจืฆืื ืจืฆืืคื (ืืื ื ืืขืฉืจืืช ืฉืืืืื ืืขืจืืืช ืืคืขืื ืืงืืืคืืืืจ ื ืืืืงืื ืืืชื ืืชืืืื ื ืืื ื ืืื ืืคืืจืืืื).
ืืงืืจ: linux.org.ru