Autor Zpráva
peta
Profil *
<- souki http://www.root.cz/vyhledavani/?qs=md5&search=Hledej&kde%5Bvsude%5D=1
<- S4X http://www.zive.cz/h/Bleskovky/Ar.asp?ARI=122232

protoze to tema do prace a zakazky nepatri, tak sem zkopiruji par veci..., ktere by mohli nekoho zajimat, mne osobne by zajimal ten algoritmus.
a ten je dokonce na te strance...
<- http://cryptography.hyperlink.cz/MD5_collisions.html

Dekodovat MD5 neni problem, vzhledem k tomu, ze mne podobna tematika zajima.
1. V podstate jde o to, ze obvykle je dane heslo srozumitelne, cimz lze Brute-force celkem s prehledem najit heslo.
2. Tuto metodu lze urychlit, vime-li
- delku hesla, max delku
- znaky
- jine veci (oblibeni zpevaci, kapely, tel. cislo...)
3. Pokud je to chytry clovek, tak bod 1,2 nam je houby platny a zustaneme u Brute-force na nekolik hodin, protoze v podstate staci prvni nesmyslne heslo.
A nebo hledame jeho skutecne, kvuli bankovimu uctu, treba a pak se to muze protahnout na dny.
ALE
Protoze algoritmus pro MD5 je znamy, a protoze je to vicemene souctovy algoritmus, pak lze tvrdit, ze nektere znaky se v MD5 meni malo nebo vubec, pripadne nabyvaji urcitych hodnot. Cimz lze v podstate odhadnout, zda bude nejaka posloupnost znaku na n-te pozici mezi [a-f][b-d][c-x].
Tim padem uz nemusime do metody davat vsechny znaky.

Dalsi zajimavou zalezitosti, jak uz bylo psano, je vygenerovani si hashu a hesel a dohledavani treba pres SQL. Tady bych to videl opravdu na zalezitost par minut, pri obrovske tabulce. Ale mozna, ze by bylo mozne vyuzit nejaky SQL prikaz pro porovnavani a cyklus a transakce a tim padem by tabulky nebylo treba.

Cili ja bych na prolamovani md5() nevidel nic tak genialniho, proste je to obycejny souctovy algoritmus a jestli je to 1+2+3+4=10 nebo 5+5=10 tak neni tak tezke si postavit rovnici, ktera to dopocita pro tre ba 1-100 znaku, kdyz ma vysledek jen 16b. Ta desitka ma uz 0.5b
Bubák
Profil
www.root.cz/clanky/tunely-v-hasovacich-funkcich-kolize-md5-do-minuty/
peta
Profil *
Bubák
Ja nevim, jak ty, ale ja tomu clanku vubec nerozumi. To psal nejaky iq tykve, neco napul matematik a si myslim, ze kdybych mu tam primichal nejake jeho mat. vyrazy, ze by se z toho nevymotal :)
Ja preferuji jasny priklad vstup vystup, jednoduche rovnice.
Ale dik. V podstate z toho chapu, ze nejakym dosazovanim hodnot do vysledku dostane nejakou kolizi.
Coz je sice pekne, ale jako hackera na vybileni bankovniho konta by mne zajimalo spise to prave heslo, ne prvni kolize :)
peta
Profil *
Bubák
Nicmene, kdybych chtel neco zabezpecit, urcite zkombinuji vice sifrovacich metod, mne se md5 nezdala bezpecna uz od doby, co mi to nekdo predkladal jako super. Jedine pozitivni na tom je, ze hned neodhali prave heslo, pouze jednu z moznosti.

V podstate by stacilo udelat soucet pismen (n) a pricist k tomu nahodne cislo, ktere je prave n-te v rade v generatoru :)
Bubák
Profil
Jedine pozitivni na tom je, ze hned neodhali prave heslo, pouze jednu z moznosti.
Protože MD5 není šifra, ale hash.
Joker
Profil
peta
Ja nevim, jak ty, ale ja tomu clanku vubec nerozumi.
To že článku nerozumíte ještě neznamená, že autor je blb :D

Ja preferuji jasny priklad vstup vystup, jednoduche rovnice.
To je sice bezva, ale ne všechno se dá popsat jednoduchými rovnicemi. A kdyby šlo prolomení hashovacího algoritmu popsat jednoduchou rovnicí, tak ten algoritmus ani nemá smysl :D

Coz je sice pekne, ale jako hackera na vybileni bankovniho konta by mne zajimalo spise to prave heslo, ne prvni kolize :)
MD5 už je docela označená za ne zcela bezpečnou a v bankovnictví by jí používal leda sebevrah.

A jak píše Bubák, MD5 není šifra, ale hash.
Princip šifry je ten, že z otevřeného textu dostanete šifrováním zašifrovaný text. Ten pošlete příjemci a příjemce ze zašifrovaného textu dostane dešifrováním zase otevřený text.

U hashe je dešifrování nemožné- ze samotného hashe nelze rekonstruovat řetězec, ze kterého byl hash vytvořen.
Proto se ho používá u ověřování hesel. V databázi máte uložený hash hesla. Jak už bylo řečeno, z hashe nelze rekonstruovat původní heslo. Ze zadaného hesla uděláme hash a pokud je různý, heslo je určitě nesprávné. Pokud je hash stejný, heslo je s velkou pravděpodobností správné.
Joker
Profil
Jo, ještě mě napadlo- co "salted hash"? Na ten by ta popsaná metoda nefungovala, ne?
Když bych se chtěl třeba nabourat do nějakého hesla, tak v tomhle případě mi kolize bude k ničemu, já bych potřeboval řetězec, který teprve po rozšíření o tu "sůl" dá kolizi.
souki
Profil
peta
přesunout ten OT byl moudrý krok, ale mohl si o tom v původním topicu dát vědět..... takhle mi ujel vlak :(
peta
Profil *
Joker
> Ja nevim, jak ty, ale ja tomu clanku vubec nerozumi.
>> To že článku nerozumíte ještě neznamená, že autor je blb :D
- Psal jsem neco takoveho? Jenom tvrdim, ze to neumi podat tak, aby tomu rozumnel clovek hned a ne az po 10tem precteni. Mimochodem stejny problem jsem mel se 777zip a BWT transformaci.

> Ja preferuji jasny priklad vstup vystup, jednoduche rovnice.
>> To je sice bezva, ale ne všechno se dá popsat jednoduchými rovnicemi. A kdyby šlo prolomení hashovacího algoritmu popsat jednoduchou rovnicí, tak ten algoritmus ani nemá smysl :D
- Nastesti mam jiny nazor.

> Coz je sice pekne, ale jako hackera na vybileni bankovniho konta by mne zajimalo spise to prave heslo, ne prvni kolize :)
>> MD5 už je docela označená za ne zcela bezpečnou a v bankovnictví by jí používal leda sebevrah.
- Jako hacker by ses neuzivil :)
Kdyz uz si dam praci najit prave heslo (nikoliv 1 z alternativnich koliznich reseni) tak ne proto, ze banka pouziva md5, ale proto, ze totez heslo, treba "anicka" pouziva pro sve bankovni ucty.

>> A jak píše Bubák, MD5 není šifra, ale hash.
To je jen slovickareni, ala autor toho clanku. Tak tomu rikejme kod. Ale 0 sifra zni rozhodne lepe nez kod a nez hash a rozumi tomu spoustu lidi.

>> U hashe je dešifrování nemožné- ze samotného hashe nelze rekonstruovat řetězec, ze kterého byl hash vytvořen.
- Dooobre, tak budeme slovickarit. Jestlize u hashe MD5 existuje jedno z koliznich reseni, ktere odpovida originalnimu retezci, lze tvrdit, ze MD5 je sifra. Ne? (viz nejaky recky filozof)

soukiTo nebyl muj napad, oni to tam zamkli nebo co. Jsem tam chtel napsat, a cosi, ze nemam opravneni.
Mne to proste zaujalo, osobne jsem to nikdy nezkoumal, ani jak md5 funguje, pouze podle JS kodu jsem videl, ze je to fakt nejaky soucet. a protoze u mych pokusu s siframi jsem parkrat zkousel soucty a xory, tak vim, ze pri jistych chybach v kodu mi v podstate vznikal original text s chybami.
a take vim, ze se xor pouziva pro opravne mechanismy:
vstup: a, b, c
vystup: a, b, c, d (d = a xor b xor c)
chyba = b
b = a xor b xor d
jinymi slovy, xor pocita sudy/lichy a vpripade, ze nejak chytre si zabezpecim soucty a,b,c,d a nenastane hodne chyb naraz, tak dokazi rekonstruovat obsah.
Treba zajimave je reseni na CD, kde z neco 1G CD dostanes 650M , ale je mozne osetrit skrabance. takze tam jsou docela zajimave souctove algoritmy, kdyz dokazi rekonstruovat hodne chyb.
Acci
Profil
Protože MD5 není šifra, ale hash.
Taky jsem si to myslel, ale na Wikipedii se píše: MD5 is a widely-used cryptographic hash function...
Takže IMHO hashe patří také do šifer.
Joker
Profil
peta
- Jako hacker by ses neuzivil :)
Kdyz uz si dam praci najit prave heslo (nikoliv 1 z alternativnich koliznich reseni) tak ne proto, ze banka pouziva md5, ale proto, ze totez heslo, treba "anicka" pouziva pro sve bankovni ucty.

To je dost odvážné tvrzení. Připouštím, že pokud odhalíte heslo dotyčného třeba do e-mailu nebo na diskusním fóru, má logiku totéž heslo vyzkoušet při hackování bankovního účtu, ale 1) když si někdo dá na bankovní účet stejné heslo jako na diskusní fórum tak dobře mu tak :) a 2) vyhledáním kolize v MD5 to heslo nezjistíte

To je jen slovickareni, ala autor toho clanku. Tak tomu rikejme kod. Ale 0 sifra zni rozhodne lepe nez kod a nez hash a rozumi tomu spoustu lidi.
To mi připomíná úsloví "Hodinky nebo holinky, obojí se to natahuje" :)
Takhle:
Když se Vám smaže harddisk a máte jeho šifrovaný obsah, se znalostí příslušného klíče bez problému obnovíte ten původní obsah. Když se Vám smaže harddisk a máte hash jeho obsahu, původní obsah už nikdy neobnovíte.
Připadá Vám, že je to totéž? :)
Joker
Profil
Ještě jsem zapomněl:
Jestlize u hashe MD5 existuje jedno z koliznich reseni, ktere odpovida originalnimu retezci, lze tvrdit, ze MD5 je sifra. Ne?
Ne. Označil byste třeba strlen() (funkce, vracející délku řetězce) za šifrovací funkci?
Myslím si tajné heslo a víte, že strlen(heslo) = 11. Jaké heslo si myslím? Tak co, přišel jste na to, že heslo je "Ema má maso"? ;-)

Šifru dělá právě to, že existuje algoritmus, kterým oprávněný příjemce zprávy může převést zprávu zase do původní podoby.

Acci
Nojo, je tam slovo "cryptographic", že... přitom stačí na ten výraz jen kliknout a dostaneme se na to, co to je "cryptographic hash function": Je hašovací funkce s určitými bezpečnostními vlastnostmi, které ji dělají vhodnou pro použití v různých informačně-bezpečnostních aplikacích, jako třeba autentifikace anebo kontrola integrity zpráv.
Je mi líto, zase žádné šifrování.
Bubák
Profil
Nový článek: www.root.cz/clanky/totalne-nebezpecne-certifikaty-s-md5/
thingwath
Profil
Funkce MD5 není šifra ani kdybyste se na hlavu stavěli.
peta
Profil *
Bubák
Jestli to chapu spravne, tak vyuzili Newtonovi metody Leva = Prave, pro 2 ruzne kolize. To je mozna to, co jsem myslel uz kdysi, kdyz jsem to videl, jen jsem to nerozvijel. :)

Pro ty ostatni se jedna o takovou hracku, kdy preba pocitate rovnici:
x^3 + x - 6 = 0
L = x^3 + x - 6
P = 0
upravime:
x^3 = 6 - x
L = x^3
P = 6 - x
A nyni zkousime dosazovat nahodne cisla, treba 1, 10 ... a sledujeme narust ci pokles L proti P strane.
Cimz se vlastne dopocitava PI na n desettinnych mist.
Bubák
Profil
peta
Škoda, žes to nerozvíjel, mohl jsi být slavný :o)
Toto téma je uzamčeno. Odpověď nelze zaslat.

0