John the Ripper 1.9.0-jumbo-1 nga adunay suporta sa FPGA

Gipagawas bag-ong bersyon sa labing karaan nga gisuportahan nga programa sa pagtag-an sa password nga si John the Ripper 1.9.0-jumbo-1. (Ang proyekto nag-uswag sukad sa 1996.) Sa panid sa proyekto Ang mga tinubdan magamit alang sa pag-download, ingon man ang mga andam nga asembliya alang sa Windows.

Namatikdan nga 1.8.0 ka tuig na ang milabay sukad sa pagpagawas sa bersyon 1-jumbo-4.5, diin kapin sa 6000 ka kausaban (git commits) ang gihimo gikan sa labaw sa 80 ka developers. Niini nga panahon, girekomenda sa mga developer nga gamiton kasamtangan nga edisyon gikan sa GitHub, ang estado diin nagpabilin nga lig-on bisan pa sa mga pagbag-o nga gihimo salamat sa padayon nga paghiusa, nga naglakip sa preliminary verification sa matag pagbag-o (pull request) sa daghang mga plataporma. Ang usa ka espesyal nga bahin sa bag-ong bersyon mao ang dagway sa suporta alang sa FPGA (FPGA) dugang sa CPU, GPU ug Xeon Phi.


Alang sa mga tabla ZTEX 1.15y, lakip ang 4 ka FPGA chips ug orihinal nga gigamit alang sa pagmina sa Bitcoin, 7 ka matang sa password hash ang gipatuman karon: bcrypt, classic descrypt (lakip ang bigcrypt), sha512crypt, sha256crypt, md5crypt (lakip ang Apache apr1 ug AIX smd5), Drupal7 ug phpass (gigamit , ilabi na sa WordPress). Ang uban niini gipatuman sa FPGA sa unang higayon. Para sa bcrypt, ang nakab-ot nga pasundayag nga ~119k c/s nga adunay 2^5 nga mga pag-ulit (β€œ$2b$05”) nga adunay konsumo sa kuryente nga mga 27 watts mas labaw pa sa mga resulta para sa pinakabag-o nga mga GPU kada board, kada presyo sa hardware ug kada watt. Gisuportahan usab mga pungpong sa mga tabla niini nga matang, nga gisulayan hangtod sa 16 ka tabla (64 ka FPGA) nga kontrolado gikan sa usa ka Raspberry Pi 2. Ang naandan nga John the Ripper nga pag-andar gisuportahan, lakip ang tanang mga paagi sa pagtag-an sa password ug dungan nga pag-download sa daghang gidaghanon sa mga hash. Aron mapadali ang trabaho, gipatuman namo ang paggamit sa maskara (ang "--mask" mode, lakip ang kombinasyon sa ubang mga mode) ug pagtandi sa mga kalkulado nga hash sa mga gikarga sa FPGA nga bahin. Gikan sa panglantaw sa pagpatuman, daghan sa mga disenyo (e.g. sha512crypt ug Drupal7) mga bloke nga naglangkob sa multi-threaded processor cores (soft CPU cores) nga nakig-interact sa cryptographic cores gigamit. Ang pag-uswag sa kini nga pagpaandar gipangulohan ni Denis Burykin sa koordinasyon sa ubang mga jumbo developers.

Uban pang dagkong mga pagbag-o:

  • Suporta alang sa usa ka dako nga gidaghanon sa mga dugang nga mga matang sa mga hash, ciphers, ug uban pa, lakip na ang classic password hash (pananglitan, gikan sa bag-ong mga bersyon sa QNX), ingon man usab sa cryptocurrency pitaka, encrypted archives ug encrypted file system (pananglitan, Bitlocker ug FreeBSD geli), ingon man suporta alang sa bag-ong mga matang sa mga format nga gisuportahan kaniadto (pananglitan, dugang nga suporta alang sa bcrypt-pbkdf alang sa OpenBSD softraid) ug daghan pa. Sa kinatibuk-an, 80 ka mga format ang gidugang sa CPU ug 47 sa OpenCL (ug gamay nga gidaghanon sa mga daan ang gikuha ingon nga gisagol sa mga bag-o ug dili na magamit). Ang kinatibuk-ang ihap sa mga format karon 407 sa CPU (o 262 nga wala apil ang "dinamikong" mga format nga gi-configure gikan sa mga file sa pag-configure) ug 88 sa OpenCL.
  • Ang pagdumili sa pagsuporta sa CUDA nga pinulongan pabor sa OpenCL, nga sa walay paagi makabalda sa bug-os nga paggamit sa NVIDIA GPUs (ug gani makatabang, salamat sa pag-focus sa kalamboan ug pag-optimize sa usa ka pagpatuman sa matag format alang sa GPU imbis sa duha ka mga pagpatuman kaniadto).
  • Suporta alang sa bag-ong SIMD instruction sets - AVX2, AVX-512 (lakip na ang ikaduhang henerasyon nga Xeon Phi) ug MIC (alang sa unang henerasyon) - ingon man ang mas unibersal ug kompleto nga paggamit sa SIMD sa pagpatuman sa daghang mga format, lakip ang paggamit sa gisuportahan kaniadto nga panudlo nagtakda sa AVX ug XOP sa x86 (-64) ug
    NEON, ASIMD ug AltiVec sa ARM, Aarch64 ug POWER, matag usa. (Party isip kabahin sa GSoC 2015.)
  • Daghang mga pag-optimize alang sa CPU ug OpenCL, pareho aron mas episyente nga magtrabaho sa daghang gidaghanon sa mga hash nga dungan (pananglitan, gisulayan ang pagkarga sa 320 milyon nga SHA-1 nga mga hash sa GPU), ug aron madugangan ang katulin sa mga kalkulasyon sa hash. Ang pipila niini nga mga pag-optimize kay unibersal, ang uban naglangkob sa lain-laing mga subset sa mga format, ug daghan ang espesipiko sa indibidwal nga mga format.
  • (Auto-) nga pag-configure sa labing maayo nga buffering sa gisusi nga mga password sa CPU (β€œβ€”tune=auto β€”verbosity=5”) ug kamalaumon nga gidak-on sa trabaho sa OpenCL (enabled by default), lakip na ang pagkonsiderar sa hinay nga ramp-up sa NVIDIA GTX serye GPUs sa bug-os nga operating frequency 10xx ug mas bag-o. Gamit ang aktuwal nga loaded hash ug ang aktuwal nga gitas-on sa mga password nga gisusi (kung nahibal-an na daan) para sa maong auto-tuning.
  • Pagdugang og compiler alang sa "dynamic nga mga ekspresyon" nga direkta nga gitakda sa command line ug pagpatuman sa bag-ong hybrid hash type, pananglitan "-format=dynamic='sha1(md5($p).$s)'", kalkulado sa CPU gamit ang SIMD . Ingon nga mga sangkap sa ingon nga mga ekspresyon, daghang mga paspas nga hash ang gisuportahan (gikan sa kasagaran sama sa MD5 hangtod sa kasarangan nga mga exotic sama sa Whirlpool), substring concatenation, pag-encode ug pag-decode, pagbag-o sa kaso sa karakter, mga paghisgot sa password, asin, username ug string constants.
  • Pagwagtang sa dili gusto nga mga kalainan gikan sa hashcat, lakip ang suporta alang sa kaniadto nga hashcat-specific nga mga lagda (wordlist rule commands), pagbalhin ngadto sa OpenCL device nga nagnumero gikan sa 1, default nga paggamit sa parehas nga password nga mga gitas-on (kasagaran ang gitas-on 7) alang sa performance tests.
  • Bag-ong mga mode alang sa pagmugna og mapamatud-an nga mga password (cracking modes), lakip ang PRINCE gikan sa hashcat (mga porma nga "mga hugpong sa mga pulong" pinaagi sa paghiusa sa pipila ka mga pulong sa pagdugang sa han-ay sa kinatibuk-ang gitas-on), mga subset (nagdala sa mga password nga adunay dili igo nga gidaghanon sa lainlaing mga karakter, bisan kung kini nga mga karakter moabut. gikan sa usa ka dako nga hugpong sa mga posible) ug hybrid nga eksternal (nagtugot sa eksternal nga mga mode, nga gihulagway sa mga file sa pag-configure sa usa ka C-like nga pinulongan, aron makamugna og daghang mapamatud-an nga mga password base sa matag batakang "pulong" nga nadawat gikan sa laing mode). Usab, daghang bag-ong gitakda nang daan nga mga paagi sa gawas.
  • Dugang nga mga bahin alang sa paggamit sa daghang mga mode nga dungan (usa sa ibabaw sa lain - stacking), ingon man sa paggamit sa mga set sa mga lagda (wordlist lagda stacking).
  • Mga pag-uswag sa mga mode sa maskara (hinay-hinay nga pag-inat sa maskara sa usa ka piho nga gitas-on, paggamit sa maskara sa kilid sa OpenCL device o FPGA board) ug usa ka crack (makatarunganon nga pamatasan sa mga aparato nga nagkalkula sa daghang gidaghanon sa mga hash nga managsama. , nga kaniadto wala’y igo nga mapamatud-an nga mga password sa kini nga mode, ug usab mga pagdili sa pagkonsumo sa memorya).
  • Daghang mga pag-uswag aron suportahan ang Unicode ug uban pang mga pag-encode sa lainlaing mga subsystem.
  • Daghang mga pag-uswag sa *2john nga mga programa (nga nag-convert sa mga file sa lainlaing mga format para sa
    gamiton uban ni john), labi na ang wpapcap2john (nagdumala sa trapiko sa WiFi).
  • Adunay daghang mga bag-ong kapilian sa command line, mga setting sa john.conf, i-configure ang mga kapilian sa script ug katugbang nga mga bag-ong bahin, dili tanan nga gihisgutan dinhi.
  • Pagpauswag sa kalidad sa code salamat sa built-in nga suporta alang sa debug build uban sa AddressSanitizer (kaniadto) ug UndefinedBehaviorSanitizer (gidugang), pagdugang usa ka built-in nga format nga fuzzer (isip bahin sa GSoC 2015), gamit ang padayon nga panagsama (nagtukod alang sa daghang mga operating system ug compiler mga kombinasyon ug pagsulay kanila alang sa husto nga suporta alang sa tanan nga mga format).

Source: linux.org.ru

Idugang sa usa ka comment