FPGA ಬೆಂಬಲದೊಂದಿಗೆ ಜಾನ್ ದಿ ರಿಪ್ಪರ್ 1.9.0-ಜಂಬೋ-1 ಬಿಡುಗಡೆ

ಬಿಡುಗಡೆಯಾಗಿದೆ новая версия старейшей поддерживаемой программы для подбора паролей John the Ripper 1.9.0-jumbo-1 (проект развивается с 1996 года). C выхода прошлой версии 1.8.0-jumbo-1 прошло 4.5 года, за которые было внесено более 6000 изменений (git commits) от более 80 разработчиков. Благодаря ನಿರಂತರ ಏಕೀಕರಣ, включающей предварительную проверку каждого изменения (pull request) на многих платформах, в течение этого срока разработчики рекомендовали использовать GitHub ನಿಂದ ಪ್ರಸ್ತುತ ಆವೃತ್ತಿ, состояние которой поддерживалось стабильным несмотря на вносимые изменения. Основной код проекта ವಿತರಿಸುವವರು под лицензией GPLv2+, а код некоторых компонентов под лицензией BSD.

Особенностью новой версии является появление поддержки FPGA (в дополнение к CPU, GPU и Xeon Phi). Для плат ZTEX 1.15y, включающих по 4 чипа FPGA и исходно использовавшихся в основном для майнинга Bitcoin, теперь реализованы 7 типов хешей паролей: bcrypt, классический descrypt (включая bigcrypt), sha512crypt, sha256crypt, md5crypt (включая Apache apr1 и AIX smd5), Drupal7 и phpass (используется, в частности, в WordPress). Некоторые из них реализованы на FPGA впервые.

Для bcrypt, достигнутая производительность в ~119k c/s при 2^5 итераций («$2b$05») с потребляемой мощностью около ~27 ватт существенно превосходит результаты для новейших GPU в расчете на плату, на цену оборудования и на ватт. Также поддерживаются ಸಮೂಹಗಳು из плат этого типа, что проверено вплоть до 16 плат (64 чипа FPGA), контролируемых с одного Raspberry Pi 2. Поддерживается обычная функциональность John the Ripper, включая все режимы подбора паролей и одновременную загрузку большого количества хешей.

Для ускорения работы реализовано применение маски (режим «—mask», в том числе в комбинации с другими режимами) и сравнение вычисленных хешей с загруженными на стороне FPGA. С точки зрения реализации, во многих из дизайнов (например, для sha512crypt ಮತ್ತು Drupal7ಕ್ರಿಪ್ಟೋಗ್ರಾಫಿಕ್ ಕೋರ್‌ಗಳೊಂದಿಗೆ ಸಂವಹನ ನಡೆಸುವ ಬಹು-ಥ್ರೆಡ್ ಪ್ರೊಸೆಸರ್ ಕೋರ್‌ಗಳನ್ನು (ಸಾಫ್ಟ್ ಸಿಪಿಯು ಕೋರ್‌ಗಳು) ಒಳಗೊಂಡಿರುವ ಬ್ಲಾಕ್‌ಗಳನ್ನು ಬಳಸಲಾಗುತ್ತದೆ. ಈ ಕಾರ್ಯದ ಅಭಿವೃದ್ಧಿಯನ್ನು ಡೆನಿಸ್ ಬುರಿಕಿನ್ ಅವರು ಇತರ ಜಂಬೋ ಡೆವಲಪರ್‌ಗಳ ಸಮನ್ವಯದಲ್ಲಿ ಮುನ್ನಡೆಸಿದರು.

Другие важные изменения:

  • Поддержка большого количества дополнительных типов хешей, шифров и т.п., включая как классические хеши паролей (например, от новых версий QNX), так и кошельки криптовалют, шифрованные архивы и шифрованные файловые системы (например, Bitlocker и FreeBSD geli), а также поддержку новых разновидностей форматов, поддерживаемых ранее (например, добавлена поддержка bcrypt-pbkdf для OpenBSD softraid) и многое другое. В общей сложности, добавлено 80 форматов на CPU и 47 на OpenCL. Общее количество форматов теперь 407 на CPU (или 262 не включая «dynamic» форматы, настраиваемые из файлов конфигурации) и 88 на OpenCL.
  • OpenCL ಪರವಾಗಿ CUDA ಭಾಷೆಯನ್ನು ಬೆಂಬಲಿಸಲು ನಿರಾಕರಣೆ, ಇದು NVIDIA GPU ಗಳ ಸಂಪೂರ್ಣ ಬಳಕೆಗೆ ಯಾವುದೇ ರೀತಿಯಲ್ಲಿ ಅಡ್ಡಿಪಡಿಸುವುದಿಲ್ಲ (ಮತ್ತು ಈ ಹಿಂದೆ ಎರಡು ಅಳವಡಿಕೆಗಳ ಬದಲಿಗೆ GPU ಗಾಗಿ ಪ್ರತಿ ಸ್ವರೂಪದ ಒಂದು ಅನುಷ್ಠಾನದ ಮೇಲೆ ಅಭಿವೃದ್ಧಿ ಮತ್ತು ಆಪ್ಟಿಮೈಸೇಶನ್ ಅನ್ನು ಕೇಂದ್ರೀಕರಿಸಲು ಸಹ ಸಹಾಯ ಮಾಡುತ್ತದೆ).
  • ಹೊಸ SIMD ಸೂಚನಾ ಸೆಟ್‌ಗಳಿಗೆ ಬೆಂಬಲ - AVX2, AVX-512 (ಎರಡನೇ ತಲೆಮಾರಿನ Xeon Phi ಸೇರಿದಂತೆ) ಮತ್ತು MIC (ಮೊದಲ ತಲೆಮಾರಿನವರಿಗೆ) - ಹಾಗೆಯೇ ಬಳಕೆ ಸೇರಿದಂತೆ ಹಲವು ಸ್ವರೂಪಗಳ ಅನುಷ್ಠಾನಗಳಲ್ಲಿ SIMD ನ ಹೆಚ್ಚು ಸಾರ್ವತ್ರಿಕ ಮತ್ತು ಸಂಪೂರ್ಣ ಬಳಕೆ x86(-64) ನಲ್ಲಿ AVX ಮತ್ತು XOP ಗೆ ಹಿಂದೆ ಬೆಂಬಲಿತ ಸೂಚನೆಗಳು ಮತ್ತು
    NEON, ASIMD и AltiVec на ARM, Aarch64 и POWER, соответственно.

  • CPU ಮತ್ತು OpenCL ಗಾಗಿ ಹಲವಾರು ಆಪ್ಟಿಮೈಸೇಶನ್‌ಗಳು, ಹೆಚ್ಚಿನ ಸಂಖ್ಯೆಯ ಹ್ಯಾಶ್‌ಗಳೊಂದಿಗೆ ಏಕಕಾಲದಲ್ಲಿ ಹೆಚ್ಚು ಪರಿಣಾಮಕಾರಿಯಾಗಿ ಕೆಲಸ ಮಾಡಲು (ಉದಾಹರಣೆಗೆ, GPU ನಲ್ಲಿ 320 ಮಿಲಿಯನ್ SHA-1 ಹ್ಯಾಶ್‌ಗಳನ್ನು ಲೋಡ್ ಮಾಡುವುದನ್ನು ಪರೀಕ್ಷಿಸಲಾಗಿದೆ), ಮತ್ತು ಹ್ಯಾಶ್ ಲೆಕ್ಕಾಚಾರಗಳ ವೇಗವನ್ನು ಹೆಚ್ಚಿಸಲು. ಈ ಆಪ್ಟಿಮೈಸೇಶನ್‌ಗಳಲ್ಲಿ ಕೆಲವು ಸಾರ್ವತ್ರಿಕವಾಗಿವೆ, ಕೆಲವು ಸ್ವರೂಪಗಳ ವಿವಿಧ ಉಪವಿಭಾಗಗಳನ್ನು ಒಳಗೊಂಡಿರುತ್ತವೆ ಮತ್ತು ಹಲವು ಪ್ರತ್ಯೇಕ ಸ್ವರೂಪಗಳಿಗೆ ನಿರ್ದಿಷ್ಟವಾಗಿರುತ್ತವೆ.
  • (Авто-)настройка оптимальной буферизации проверяемых паролей на CPU («—tune=auto —verbosity=5») и оптимальных размерностей задания на OpenCL (включена по умолчанию), в том числе с учетом медленного выхода на полную рабочую частоту GPU серии NVIDIA GTX 10xx и новее. Использование реально загруженных хешей и реальной длины проверяемых паролей (когда она известна заранее) для такой авто-настройки.
  • Добавление компилятора «динамических выражений», указываемых прямо на командной строке и реализующих новые гибридные типы хешей, например «—format=dynamic=’sha1(md5($p).$s)'», вычисляемые на CPU с использованием SIMD. В качестве компонентов таких выражений поддерживаются десятки быстрых хешей (от распространенных вроде MD5 до умеренно экзотических вроде Whirlpool), объединение подстрок, кодирование и декодирование, преобразование регистра символов, ссылки на пароль, соль, имя пользователя и строковые константы.
  • ಹಿಂದಿನ ಹ್ಯಾಶ್‌ಕ್ಯಾಟ್-ನಿರ್ದಿಷ್ಟ ನಿಯಮಗಳಿಗೆ ಬೆಂಬಲವನ್ನು ಒಳಗೊಂಡಂತೆ ಹ್ಯಾಶ್‌ಕ್ಯಾಟ್‌ನಿಂದ ಅನಗತ್ಯ ವ್ಯತ್ಯಾಸಗಳ ನಿರ್ಮೂಲನೆ (ವರ್ಡ್‌ಲಿಸ್ಟ್ ರೂಲ್ ಕಮಾಂಡ್‌ಗಳು), 1 ರಿಂದ ಓಪನ್‌ಸಿಎಲ್ ಸಾಧನ ಸಂಖ್ಯೆಗೆ ಪರಿವರ್ತನೆ, ಕಾರ್ಯಕ್ಷಮತೆ ಪರೀಕ್ಷೆಗಳಿಗಾಗಿ ಅದೇ ಪಾಸ್‌ವರ್ಡ್ ಉದ್ದಗಳ ಡೀಫಾಲ್ಟ್ ಬಳಕೆ (ಸಾಮಾನ್ಯವಾಗಿ ಉದ್ದ 7).
  • ಹ್ಯಾಶ್‌ಕ್ಯಾಟ್‌ನಿಂದ PRINCE ಸೇರಿದಂತೆ ಪರಿಶೀಲಿಸಬಹುದಾದ ಪಾಸ್‌ವರ್ಡ್‌ಗಳನ್ನು (ಕ್ರ್ಯಾಕಿಂಗ್ ಮೋಡ್‌ಗಳು) ಉತ್ಪಾದಿಸಲು ಹೊಸ ಮೋಡ್‌ಗಳು (ಒಟ್ಟು ಉದ್ದದ ಕ್ರಮದಲ್ಲಿ ಹಲವಾರು ಪದಗಳನ್ನು ಸಂಯೋಜಿಸುವ ಮೂಲಕ "ಪದಗಳನ್ನು" ರೂಪಿಸುತ್ತದೆ), ಉಪವಿಭಾಗಗಳು (ಈ ಅಕ್ಷರಗಳು ಬಂದರೂ ಸಹ ಸಾಕಷ್ಟು ಸಂಖ್ಯೆಯ ವಿಭಿನ್ನ ಅಕ್ಷರಗಳೊಂದಿಗೆ ಪಾಸ್‌ವರ್ಡ್‌ಗಳನ್ನು ತರುತ್ತದೆ ಸಂಭವನೀಯವಾದವುಗಳ ದೊಡ್ಡ ಗುಂಪಿನಿಂದ) ಮತ್ತು ಹೈಬ್ರಿಡ್ ಬಾಹ್ಯ (C-ರೀತಿಯ ಭಾಷೆಯಲ್ಲಿ ಕಾನ್ಫಿಗರೇಶನ್ ಫೈಲ್‌ಗಳಲ್ಲಿ ವಿವರಿಸಲಾದ ಬಾಹ್ಯ ವಿಧಾನಗಳನ್ನು ಅನುಮತಿಸುತ್ತದೆ, ಇನ್ನೊಂದು ಮೋಡ್‌ನಿಂದ ಸ್ವೀಕರಿಸಿದ ಪ್ರತಿಯೊಂದು ಮೂಲ "ಪದ" ದ ಆಧಾರದ ಮೇಲೆ ಅನೇಕ ಪರಿಶೀಲಿಸಬಹುದಾದ ಪಾಸ್‌ವರ್ಡ್‌ಗಳನ್ನು ರಚಿಸಲು). ಅಲ್ಲದೆ, ಹಲವಾರು ಹೊಸ ಪೂರ್ವನಿರ್ಧರಿತ ಬಾಹ್ಯ ವಿಧಾನಗಳು.
  • ಹಲವಾರು ವಿಧಾನಗಳನ್ನು ಏಕಕಾಲದಲ್ಲಿ ಬಳಸುವುದಕ್ಕಾಗಿ ಹೆಚ್ಚುವರಿ ವೈಶಿಷ್ಟ್ಯಗಳು (ಒಂದರ ಮೇಲೊಂದರಂತೆ - ಪೇರಿಸುವಿಕೆ), ಹಾಗೆಯೇ ನಿಯಮಗಳ ಸೆಟ್ಗಳನ್ನು ಬಳಸುವುದಕ್ಕಾಗಿ (ಪದಪಟ್ಟಿ ನಿಯಮಗಳು ಪೇರಿಸುವಿಕೆ).
  • ಮಾಸ್ಕ್ ಮೋಡ್‌ಗಳಿಗೆ ಸುಧಾರಣೆಗಳು (ನಿರ್ದಿಷ್ಟ ಶ್ರೇಣಿಯ ಉದ್ದದಲ್ಲಿ ಮುಖವಾಡವನ್ನು ಕ್ರಮೇಣ ವಿಸ್ತರಿಸುವುದು, ಓಪನ್‌ಸಿಎಲ್ ಸಾಧನ ಅಥವಾ ಎಫ್‌ಪಿಜಿಎ ಬೋರ್ಡ್‌ನ ಬದಿಯಲ್ಲಿ ಮುಖವಾಡವನ್ನು ಅನ್ವಯಿಸುವುದು) ಮತ್ತು ಏಕ ಕ್ರ್ಯಾಕ್ (ಹೆಚ್ಚಿನ ಸಂಖ್ಯೆಯ ಹ್ಯಾಶ್‌ಗಳನ್ನು ಸಮಾನಾಂತರವಾಗಿ ಲೆಕ್ಕಾಚಾರ ಮಾಡುವ ಸಾಧನಗಳಲ್ಲಿ ಸಮಂಜಸವಾದ ನಡವಳಿಕೆ , ಇದಕ್ಕಾಗಿ ಹಿಂದೆ ಈ ಮೋಡ್‌ನಲ್ಲಿ ಸಾಕಷ್ಟು ಪರಿಶೀಲಿಸಬಹುದಾದ ಪಾಸ್‌ವರ್ಡ್‌ಗಳು ಇರಲಿಲ್ಲ ಮತ್ತು ಮೆಮೊರಿ ಬಳಕೆಯ ಮೇಲಿನ ನಿರ್ಬಂಧಗಳು).
  • ವಿವಿಧ ಉಪವ್ಯವಸ್ಥೆಗಳಲ್ಲಿ ಯುನಿಕೋಡ್ ಮತ್ತು ಇತರ ಎನ್‌ಕೋಡಿಂಗ್‌ಗಳನ್ನು ಬೆಂಬಲಿಸಲು ಹಲವು ಸುಧಾರಣೆಗಳು.
  • *2john ಪ್ರೋಗ್ರಾಂಗಳಿಗೆ ಹಲವು ಸುಧಾರಣೆಗಳು (ವಿಭಿನ್ನ ಸ್ವರೂಪಗಳ ಫೈಲ್‌ಗಳನ್ನು ಪರಿವರ್ತಿಸುತ್ತದೆ
    ಜಾನ್ ಜೊತೆಗೆ ಬಳಸಿ), ವಿಶೇಷವಾಗಿ wpapcap2john (ವೈಫೈ ಟ್ರಾಫಿಕ್ ಅನ್ನು ನಿಭಾಯಿಸುತ್ತದೆ).

  • ಹಲವು ಹೊಸ ಕಮಾಂಡ್ ಲೈನ್ ಆಯ್ಕೆಗಳಿವೆ, john.conf ನಲ್ಲಿ ಸೆಟ್ಟಿಂಗ್‌ಗಳು, ಸ್ಕ್ರಿಪ್ಟ್ ಆಯ್ಕೆಗಳನ್ನು ಕಾನ್ಫಿಗರ್ ಮಾಡಿ ಮತ್ತು ಅನುಗುಣವಾದ ಹೊಸ ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಇಲ್ಲಿ ಉಲ್ಲೇಖಿಸಲಾಗಿಲ್ಲ.
  • AddressSanitizer (ಹಿಂದೆ) ಮತ್ತು UndefinedBehaviorSanitizer (ಸೇರಿಸಲಾಗಿದೆ) ನೊಂದಿಗೆ ಡೀಬಗ್ ಬಿಲ್ಡ್‌ಗಳಿಗೆ ಅಂತರ್ನಿರ್ಮಿತ ಬೆಂಬಲಕ್ಕಾಗಿ ಕೋಡ್ ಗುಣಮಟ್ಟವನ್ನು ಸುಧಾರಿಸುವುದು, ಅಂತರ್ನಿರ್ಮಿತ ಫಾರ್ಮ್ಯಾಟ್ ಫಜರ್ ಅನ್ನು ಸೇರಿಸುವುದು (GSoC 2015 ರ ಭಾಗವಾಗಿ), ನಿರಂತರ ಏಕೀಕರಣವನ್ನು ಬಳಸುವುದು (ಡಜನ್ ಗಟ್ಟಲೆ ಆಪರೇಟಿಂಗ್ ಸಿಸ್ಟಮ್ ಮತ್ತು ಸಂಕಲನಕ್ಕಾಗಿ ನಿರ್ಮಿಸುತ್ತದೆ ಸಂಯೋಜನೆಗಳು ಮತ್ತು ಎಲ್ಲಾ ಸ್ವರೂಪಗಳಿಗೆ ಸರಿಯಾದ ಬೆಂಬಲಕ್ಕಾಗಿ ಅವುಗಳನ್ನು ಪರೀಕ್ಷಿಸುವುದು).

ಮೂಲ: opennet.ru

ಕಾಮೆಂಟ್ ಅನ್ನು ಸೇರಿಸಿ