Přejít k navigační liště

Zdroják » Zprávičky » Distribuované prolamování hashů v JavaScriptu

Distribuované prolamování hashů v JavaScriptu

Zprávičky JavaScript, Různé

Nálepky:

Slova „prolamování hesel“ a „JavaScript“ se v jedné větě dohromady téměř nevyskytují. Pro potřeby lámání hesla má JavaScript zásadní nevýhody – je pomalý a nedokáže práci rozdělit do více vláken. Nebo ne?

Po pravdě řečeno tato tvrzení už tak moc neplatí. Díky WebWorkers můžeme spustit procesy v JavaScriptu „na pozadí“, a nejnovější JS interpretery jsou už velmi rychlé. Navíc je JavaScript jako stvořený pro distribuované výpočty na různých strojích – stačí, aby si vaši stránku otevřelo víc lidí.

Na blogu Andlabs vyšel článek, v němž autor popisuje postup distribuovaného prolamování MD5 a SHA hashů právě pomocí JavaScriptu. Využívá k tomu webové stránky a principu, podobného známému distribuovanému SETI@home.

Komentáře

Subscribe
Upozornit na
guest
7 Komentářů
Nejstarší
Nejnovější Most Voted
Inline Feedbacks
View all comments
paranoiq

brzo bude třeba blokovat stránky, které uživatelům kradou výpočetní výkon

aaa

a ako odlisime „slabo naprogramovane“ stranky od stranok ktore kradnu trochu vykonu?

blizzboz

nakoniec sa to začne hromadne zneužívať a JS si začnú ludia blokovať tak ako kedysi ActiveX

xvzf

Nie ze by to niektori nerobili uz aj dnes ;-)

andrejk

The network is the computer –John Gage, 21st employee of Sun Microsystems

lloopp

Uz v roku 2006 som zhodou okolnosti spolupracoval na projekte, v ktorom sa riesili distribuovane vypocty cez javascript. de facto jednoducha aplikacia, staci dostatocne navstevovana stranka a o vypoctovu silu je postarane. samozrejme, o pouzitelnosti by sa dalo diskutovat

v6ak

Dost závisí na typu aplikace, ale třeba prolamování hesel lze distribuovat krásně. Stačí rozdělit na bloky. Dokud stačí jediný server, tak je to vskutku triviální, spoň nějaký základ.

Před časem jsem zkoumal jednomu spolužákovi hrubou silou seznam tabulek na serveru pomocí slepé SQL injekce. Jako rychlé řešení jsem zkusil zbastlit jeden skript v PHP na pár řádků. Pak jsem chtěl požadavky posílat ve více vláknech, tak jsem to vyřešil spuštěním několika instancí a distribuovat mezi nimi scan bylo velmi snadné. Mít proměnlivý počet stanic, dělat to přes XHR a jednou za čas to syncovat je sice složitější, ale ne o moc.

Enum a statická analýza kódu

Mám jednu univerzální radu pro začínající programátorty. V učení sice neexistují rychlé zkratky, ovšem tuhle radu můžete snadno začít používat a zrychlit tak tempo učení. Tou tajemnou ingrediencí je statická analýza kódu. Ukážeme si to na příkladu enum.