Existuje protiklad k funkci MD5() ?

Zdárek všichni,

chtěl jsem se zeptat, když zašifruju text pomocí fce md5() a vložím si ho do databáze, je potom nějaká možnost ho opět rozšifrovat?

A když ne, tak existuje jiná fce, která toto umí ? Nemám zrovna na mysli URLEncode() a URLDecode().

Prosím, pomozte

Díky, Petr
No, pokud ja vim, tak inverzni funkce (tedy ten tvuj protiklad) k fci MD5 NEEXISTUJE! Prave proto se pouziva pro zasifrovani dat jako jsou hesla atd. :-)
1) md5() "zasifruje" lubovolne dlhy text do "32-character hexadecimal number". Teda jednoznacne to nemoze byt bijektivna funckia, pretoze viacej roznych textov sa moze "zasifrovat" na to iste cislo.

2) Sposob dekodovania je mozny, cez "bruteforce", ked mas predstavu o dlzke spravy a hlavne nesmie byt prilis velka.
1) neni to zadny sifrovani... to co se sifruje se da desifrovat!
2) je to otisk retezce (hash)
3) brute force je k nicemu... stejnemu hashi muze odpovidat nekolik retezcu
4) md5 neni spolehliva metoda... pouzivejte crypt (dle ukazky v ONLINE manualu)
Brute force lze využít úspěšně v některých případech jako třeba že zjistím md5 hash a potřebuji zadat nějaké heslo do formuláře, aby mě to prošlo s tím md5 (předpokládám porovnání hashe). Pak nemusím znát pravé heslo, ale jeho ekvivalent, aby to vyšlo.
Master:
1) a 2) suhlasim, preto som to pisal v ""
3) to som tam napisal tiez
Co to je?
Maset - este som sa zabudol opytat, co znamena to:
"md5 neni spolehliva metoda"
z jednoho duvodu...
muzes zjistit jeji puvodni original .. mozna hooooodne slozite a pres bruteforci ale jde to.. na internetu je par online serveru co to delaji a divil by ses jak rychle ti vyhodi 5milionu kombinaci (za 1sekundu)


pouzivej crypt a nebude diskuzi...
upozornuji: pouzivat ji jen tak jak je uvedeno v manualu zadny speciality nedoporucuji
Mehm, který třeba servery?
Jo a originál nězjistěj, jen jeho alternativu...
Aha, to hej.
Ale pokial viem tak MD5 je urceny na otisk, ci fingerprint, teda na moznost overenia spravy.
A tam je vacsinou ta spravu spolu s otiskom, takze zistenie spravy nevadi.

A divit sa nebudem, lebo 5 milionov kombinacii vobec nie je vela (teda kym to nemusim pocitat rucne).
no a uz se slovickari...
Ehm, md5 má 16 na 32 možností, takže 5 milionů je protitomu nic. Těch možností je (po výpočtu...) 3,4*10^38, což je víc...
ak ti niekdo da do regist. formularu heslo a ti ho zasifrujes pomocou MD5 tak ho nerozsifrujes - teda ak sa chce prihlasit musis to znova zasifrovat a porovnat

PS: mozno to tu uz niekdo pisal - nemal som cas si vsetky komentare prejst
ps.. uz jsme rikal ze to neni sifrovani... proto se neda rozsifrovat
jdou pouze porovnavat otisky
Všechno jde kyž se chce...
Mike: Všechno ne. Přečti si někde jakej je rozdíl mezi hashováním a šifrováním. Na většině fór to prošlo několikrát.
1)Nkedo tu psal, ze je bezpecnejsi funkce crypt.
nemyslim si, ze je to pravda. Funkce crypt je taky k nicemu.
2)Slovo zahesovane pomoci MD5 jde rozsifrovat i jinak nez pomoci
brutal force. Staci k tomu "trochu" matematiky a vypocetni techniky.
Příklad 1. crypt() příklad

<?php
$heslo = crypt("MePrvniHeslo"); # necháme vygenerovat salt

if (crypt($uziv_vstup, $heslo) == $heslo) {
echo "Heslo ověřeno!";
}
?>

jestli te ani tohle nepresvedcilo tak uz potom nevim
ufoun: Nevíš co řikáš, hash nikdy nejde rozsšifrovat.
kdo rozsifruje hash tak ma u me korunu
<HTML>jen korunu?
ja mu dam svoje PC a zaplatim 100Mbit pripojeni na 5let dopredu</HTML>
Kdo rozšifruje hash tak mu předplatim kurz Zvyš si své IQ, konkrétně z 5 na 10...
(jestli jsem spravne pochopil)k 1) To neni pravda-je to sifrovani. Sifra muze byt neprolomitelna a to i samotnym autorem.
Tak to pravda není, pochopils to špatně. Šifra je k tomu aby někdo data zakódoval, poslal, cestou kdyby je někdo odchytil tak je neměl šenci přečíst (v lepším případě) a cíl si je zase dešifroval, takže získá ty data. Zašifrování dat by jak to říkáš ale ztratilo smysl.