John the Ripper 1.9.0-jumbo-1 tare da tallafin FPGA

An sake shi sabon sigar mafi dadewa da goyan bayan shirin tantance kalmar sirri John the Ripper 1.9.0-jumbo-1. (Aikin yana tasowa tun 1996.) Kunna shafi na aikin Akwai tushe don saukewa, da kuma shirye-shiryen taro don Windows.

An lura cewa shekaru 1.8.0 sun shude tun lokacin da aka fitar da sigar 1-jumbo-4.5, wanda sama da canje-canje 6000 (git aikata) aka yi daga sama da 80 masu haɓakawa. A wannan lokacin, masu haɓakawa sun ba da shawarar amfani da su bugu na yanzu daga GitHub, halin da ake ciki ya kasance mai dorewa duk da canje-canjen da aka yi godiya ga ci gaba da haɗin kai, wanda ya haɗa da tabbaci na farko na kowane canji (buƙatun ja) akan dandamali da yawa. Siffa ta musamman ta sabon sigar ita ce bayyanar tallafi ga FPGA (FPGA) ban da CPU, GPU da Xeon Phi.


Don alluna ZTEX 1.15y, ciki har da 4 FPGA kwakwalwan kwamfuta kuma an yi amfani da su musamman don ma'adinan Bitcoin, nau'ikan hashes 7 yanzu ana aiwatar da su: bcrypt, classic descrypt (ciki har da bigcrypt), sha512crypt, sha256crypt, md5crypt (ciki har da Apache apr1 da AIX smd5), Drupal7 da phpass (amfani da su. , musamman a cikin WordPress). Wasu daga cikinsu ana aiwatar da su akan FPGA a karon farko. Don bcrypt, aikin da aka samu na ~ 119k c/s tare da 2 ^ 5 iterations ("$2b$05") tare da amfani da wutar lantarki kusan watts 27 mahimmanci ya wuce sakamakon GPUs na baya-bayan nan a kowane jirgi, kowane farashin kayan masarufi da kowace watts. Hakanan ana tallafawa tari na allunan irin wannan, waɗanda aka gwada har zuwa allon 16 (64 FPGAs) sarrafawa daga Rasberi Pi 2 guda ɗaya. Ana tallafawa aikin John the Ripper na yau da kullun, gami da duk hanyoyin tantance kalmar sirri da zazzagewa lokaci guda na babban adadin hashes. Don hanzarta aikin, mun aiwatar da amfani da abin rufe fuska (yanayin "--mask", gami da haɗe tare da wasu hanyoyin) da kwatanta hashes da aka ƙididdige su tare da waɗanda aka ɗora a gefen FPGA. Daga mahangar aiwatarwa, yawancin ƙira (misali. Sha512crypt da Drupal7) ana amfani da tubalan da suka ƙunshi nau'ikan nau'ikan zaren na'urori masu yawa (mai laushi na CPU mai laushi) waɗanda ke mu'amala tare da ƙirar ƙira. Denis Burykin ya jagoranci ci gaban wannan aikin a cikin haɗin gwiwa tare da sauran masu haɓaka jumbo.

Wasu manyan canje-canje:

  • Taimakawa ƙarin ƙarin nau'ikan hashes, ciphers, da sauransu, gami da hashes na kalmar sirri (misali, daga sabbin nau'ikan QNX), da walat ɗin cryptocurrency, rufaffen kayan tarihi da tsarin fayil ɗin ɓoyayyen (misali, Bitlocker da FreeBSD geli), kazalika da goyan baya ga sababbin nau'ikan tsarin da aka goyi baya (misali, ƙarin tallafi don bcrypt-pbkdf don OpenBSD softraid) da ƙari mai yawa. Gabaɗaya, an ƙara nau'ikan nau'ikan 80 akan CPU da 47 akan OpenCL (kuma an cire ƙaramin adadin tsofaffi kamar yadda aka haɗa su cikin sababbi da waɗanda ba su da ƙarfi). Jimlar adadin tsarin yanzu shine 407 akan CPU (ko 262 baya haɗa da tsarin "tsauri" da aka saita daga fayilolin sanyi) da 88 akan OpenCL.
  • Ƙin tallafawa harshen CUDA don goyon bayan OpenCL, wanda ba ta da wata hanya ta tsoma baki tare da cikakken amfani da NVIDIA GPUs (har ma yana taimakawa, godiya ga mayar da hankali ga ci gaba da ingantawa akan aiwatar da kowane tsari na GPU maimakon aiwatarwa biyu a baya).
  • Taimako don sabon saiti na koyarwa na SIMD - AVX2, AVX-512 (ciki har da ƙarni na biyu Xeon Phi) da MIC (na ƙarni na farko) - da ƙari na duniya da cikakken amfani da SIMD a aiwatar da tsarin da yawa, gami da amfani da umarnin da aka goyan baya ya saita har zuwa AVX da XOP akan x86(-64) da
    NEON, ASIMD da AltiVec akan ARM, Aarch64 da POWER, bi da bi. (A matsayin wani ɓangare na GSoC 2015.)
  • Haɓakawa da yawa don CPU da OpenCL, duka don aiki da inganci tare da adadi mai yawa na hashes lokaci guda (misali, an gwada hashes miliyan 320 SHA-1 akan GPU), kuma don haɓaka saurin ƙididdige hash. Wasu daga cikin waɗannan haɓakawa na duniya ne, wasu suna rufe ɓangarori daban-daban na tsari, kuma da yawa sun keɓance ga tsarin mutum ɗaya.
  • (Auto-) daidaita mafi kyawun buffer na kalmomin shiga da aka bincika akan CPU ("-tune = auto -verbosity = 5") da mafi kyawun girman aiki akan OpenCL (wanda aka kunna ta tsohuwa), gami da la'akari da jinkirin haɓakar NVIDIA GTX. jerin GPUs zuwa cikakken mitar aiki 10xx da sabo. Yin amfani da hashes da aka ɗora a zahiri da ainihin tsawon kalmomin kalmomin da ake bincika (lokacin da aka sani a gaba) don irin wannan daidaitawa ta atomatik.
  • Ƙara mai tarawa don “ƙarfafa maganganu” ƙayyadaddun kai tsaye akan layin umarni da aiwatar da sabbin nau'ikan hash na matasan, misali “-format=dynamic='sha1(md5($p).$s)'”, ƙididdiga akan CPU ta amfani da SIMD . Kamar yadda aka haɗa nau'ikan irin waɗannan maganganun, ana samun goyan bayan hashes masu sauri (daga na gama gari kamar MD5 zuwa waɗanda ke da matsakaicin matsakaici kamar Whirlpool), haɗaɗɗun igiyoyi, ɓoyewa da yanke hukunci, jujjuya yanayin hali, nassoshi zuwa kalmar sirri, gishiri, sunan mai amfani da kirtani.
  • Kawar da bambance-bambancen da ba a so daga hashcat, gami da goyan baya ga ƙayyadaddun ƙayyadaddun ƙayyadaddun hashcat a baya (umarnin ka'idojin lissafin kalmomi), canzawa zuwa lambar na'urar OpenCL daga 1, tsohuwar amfani da tsayin kalmar sirri iri ɗaya (yawanci tsawon 7) a cikin gwaje-gwajen aiki.
  • Sabbin hanyoyi don ƙirƙirar kalmomin sirri masu tabbatarwa (hanyoyi masu fashewa), gami da PRINCE daga hashcat (samfuran "jumloli" ta hanyar haɗa kalmomi da yawa a cikin adadin tsayin jimlar), ƙayyadaddun bayanai (yana fitar da kalmomin shiga tare da ƙarancin adadin haruffa daban-daban, koda kuwa waɗannan haruffan sun zo. daga babban saiti na masu yiwuwa) da kuma matasan waje (yana ba da damar yanayin waje, wanda aka kwatanta a cikin fayilolin sanyi a cikin yare mai kama da C, don samar da kalmar sirri da yawa da za a iya tabbatar da su dangane da kowane ainihin “kalmar” da aka karɓa daga wani yanayin). Hakanan, sabbin hanyoyin waje da aka ƙirƙira.
  • Ƙarin damar yin amfani da hanyoyi da yawa a lokaci guda (ɗaya a saman wani - stacking), da kuma yin amfani da tsarin dokoki (ka'idojin lissafin kalmomi).
  • Haɓakawa ga yanayin abin rufe fuska (miƙewar abin rufe fuska a hankali a cikin kewayon tsayi, aikace-aikacen abin rufe fuska a gefen na'urar OpenCL ko allon FPGA) da fashe ɗaya (dabi'a mai ma'ana akan na'urori waɗanda ke ƙididdige adadin hashes a layi daya. , wanda a baya babu isassun kalmomin sirri da za a iya tabbatarwa a cikin wannan yanayin, da kuma ƙuntatawa akan amfani da ƙwaƙwalwar ajiya).
  • Yawancin haɓakawa don tallafawa Unicode da sauran rikodi a cikin tsarin ƙasa daban-daban.
  • Yawancin haɓakawa zuwa shirye-shiryen * 2john (mayar da fayiloli na nau'i daban-daban don
    Yi amfani da john), musamman wpacap2john (yana sarrafa zirga-zirgar WiFi).
  • Akwai sabbin zaɓuɓɓukan layin umarni da yawa, saituna a john.conf, saita zaɓuɓɓukan rubutun da sabbin abubuwa masu dacewa, ba duka aka ambata anan ba.
  • Haɓaka ingancin lambar godiya ga ginanniyar tallafi don gyara gyara gyara tare da AddressSanitizer (a da) da UndefinedBehaviorSanitizer (ƙara), ƙara ginanniyar tsarin fuzzer (a matsayin ɓangare na GSoC 2015), ta amfani da ci gaba da haɗin kai (gina ga yawancin tsarin aiki da mai tarawa). haɗuwa da gwada su don ingantaccen goyon baya ga kowane tsari).

source: linux.org.ru

Add a comment