Chinhu chakakosha cheiyo vhezheni nyowani kutaridzika kweFPGA rutsigiro (kuwedzera kune CPU, GPU uye Xeon Phi). Zvemapuranga
Kune bcrypt, iyo yakaitwa ye ~ 119k c/s ine 2 ^ 5 iterations ("$ 2b $ 05") ine simba rekushandisa ~ 27 watts inodarika zvakanyanya mhedzisiro yeazvino maGPU pabhodhi, pamutengo wehardware, uye pawatt. . Uyewo inotsigirwa
Kuti tikurumidze basa, takashandisa kushandiswa kwemask (iyo "-mask" modhi, kusanganisira pamwe nemamwe modhi) uye kuenzanisa kweakaverengerwa hashes neaya akaremerwa parutivi rweFPGA. Kubva pakuona kwekuita, akawanda emagadzirirwo (e.g.
Dzimwe shanduko dzakakosha:
- Tsigiro yehuwandu hukuru hwemamwe marudzi ehashes, ciphers, nezvimwewo, kusanganisira ese ari maviri echinyakare password hashes (semuenzaniso, kubva kushanduro itsva dzeQNX), pamwe nekriptocurrency wallet, encrypted archives uye encrypted file system (semuenzaniso, Bitlocker uye. FreeBSD geli), pamwe nerutsigiro rwemhando nyowani dzefomati dzakambotsigirwa (semuenzaniso, yakawedzera rutsigiro rwebcrypt-pbkdf yeOpenBSD softraid) nezvimwe zvakawanda. Pakazara, makumi masere mafomati akawedzerwa paCPU uye makumi mana nemanomwe paOpenCL. Huwandu hwemafomati hwave 80 paCPU (kana 47 isingasanganisire "simba" mafomati akagadziriswa kubva kumafaira ekugadzirisa) uye 407 paOpenCL.
- Kuramba kutsigira mutauro weCUDA uchifarira OpenCL, iyo isingakanganise kushandiswa kwakazara kweNVIDIA GPUs (uye inotobatsira, nekuda kwekutarisa kusimudzira uye optimization pane imwe chete yekuitwa kwega rega fomati yeGPU pane maviri ekuita kare).
- Tsigiro yemaseti matsva emirairo yeSIMD - AVX2, AVX-512 (kusanganisira yechizvarwa chechipiri Xeon Phi) uye MIC (yechizvarwa chekutanga) - pamwe nekushandiswa kwepasirese uye kwakazara kweSIMD mukuita mafomati akawanda, kusanganisira kushandiswa kwe. raimbo rakatsigirwa rairo rinoisa kuAVX uye XOP pa x86 (-64) uye
NEON, ASID uye AltiVec paARM, Aarch64 uye POWER, zvichiteerana. - Kwakawanda optimizations yeCPU neOpenCL, zvese kushanda nesimba nehuwandu hukuru hwehashi panguva imwe chete (semuenzaniso, kurodha 320 miriyoni SHA-1 hashes paGPU yakaedzwa), uye kuwedzera kukurumidza kwekuverenga hashi. Mamwe eaya ma optimizations ari epasirese, mamwe anovhara akasiyana mafomati mafomati, uye mazhinji akananga kune ega mafomati.
- (Otomatiki-) gadziriso yeyakakwana buffering yemapassword akatariswa paCPU (ββtune=otoβverbosity=5β) uye akakwana saizi yebasa paOpenCL (inogoneswa neyakagadzika), kusanganisira kurangarira inononoka rampu kusvika kuzere kushanda frequency. yeNVIDIA GTX yakatevedzana GPUs 10xx uye nyowani. Kushandisa maheshi akaremerwa uye hurefu chaihwo hwemapassword ari kutariswa (kana achinge azivikanwa pachine nguva) kune akadaro auto-tuning.
- Kuwedzera compiler ye "dynamic expressions" inotsanangurwa zvakananga pamutsetse wekuraira uye kushandisa mhando nyowani dzehybrid hashi, semuenzaniso "-format=dynamic='sha1(md5($p).$s)'", yakaverengerwa paCPU uchishandisa SIMD. . Sezvikamu zvekutaura kwakadaro, akawanda ekukurumidza hashe anotsigirwa (kubva kune akajairwa seMD5 kune ane mwero ekunze seWhirlpool), substring concatenation, encoding uye decoding, hunhu kutendeuka, mareferensi epassword, munyu, zita rekushandisa uye tambo zvinoramba.
- Kubvisa misiyano isingadikanwi kubva kuhashcat, kusanganisira tsigiro yeyaimbova hashcat-yakananga mitemo (wordlist mutemo mirairo), shanduko kuenda kuOpenCL mudziyo wenhamba kubva pa1, default kushandiswa kwehurefu hwepasiwedhi imwechete (kazhinji kureba 7) yebvunzo dzekuita.
- Mamiriro matsva ekugadzira mapassword anovimbiswa (mamodhi ekupwanya), kusanganisira PRINCE kubva kuhashcat (mafomu "mitsara" nekubatanidza mazwi akati wandei mukuwedzera kurongeka kwehurefu hwakazara), subsets (inounza mapassword ane nhamba isina kukwana yemavara akasiyana, kunyangwe mavara aya akauya. kubva kune yakakura seti yezvinogona kuitika) uye yakasanganiswa yekunze (inobvumira ekunze modhi, inotsanangurwa mumafaira ekugadzirisa mumutauro wakafanana neC, kuburitsa akawanda evhavhavha anovimbika zvichibva pane imwe neimwe yekutanga "izwi" rinogamuchirwa kubva kune imwe modhi). Zvakare, akati wandei matsva akafanotsanangurwa ekunze modhi.
- Kuwedzera masimba ekushandisa akawanda modes panguva imwe chete (imwe pamusoro peimwe - stacking), pamwe nekushandisa seti yemitemo (wordlist mitemo stacking).
- Kuvandudzwa kwemasiki modhi (zvishoma nezvishoma kutambanudza mask mune yakatarwa huwandu hwehurefu, kushandiswa kwemask padivi peOpenCL mudziyo kana FPGA bhodhi) uye kutsemuka kamwe chete (kune musoro maitiro pamidziyo inoverenga nhamba huru yehashi zvakafanana. , iyo yaimbove isina mapassword akakwana anogoneka mune iyi modhi, uye zvakare kurambidzwa pakushandisa ndangariro).
- Mazhinji kuvandudzwa kutsigira Unicode uye mamwe encodings mune akasiyana subsystems.
- Magadzirirwo mazhinji kune *2john zvirongwa (zvinoshandura mafaera emhando dzakasiyana dze
shandisa naJohn), kunyanya wpapcap2john (inobata WiFi traffic). - Kune mitsva mitsva yemirairo sarudzo, marongero mujohn.conf, gadzirisa script sarudzo uye inoenderana maitiro matsva, kwete ese akataurwa pano.
- Kuvandudza kodhi yemhando yekutenda kune yakavakirwa-mukati tsigiro yedebug inovaka neAddressSanitizer (yaimbova) uye UndefinedBehaviorSanitizer (yakawedzerwa), ichiwedzera yakavakirwa-mukati fomati fuzzer (sechikamu cheGSoC 2015), uchishandisa inoenderera kubatanidzwa (inovaka akawanda ekushandisa system uye compiler. kusanganisa uye kudziyedza kuti iwane rutsigiro rwakakwana kune ese mafomati).
Source: opennet.ru