Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: odkodowanie danych z kodowania md5
Forum PHP.pl > Forum > Przedszkole
_Cartman
Cze

czy da się odkodowac dane ktore wczesniej zostay zakodowane przez funkcje md5? czy jest jakies wyrazenie przeciwne??
Nievinny
md5 jest algorytmem jednostronnym...
dasko
Nie. Poczytaj sobie gdzieś najpierw co to jest hashowanie.
hmmm
zawsze mozna przejsc na bazy danych tongue.gif
Coyote
nie da sie tego odkodowac...
Vir
http://www.hakin9.org/pl/attachments/md5_pl.pdf

Pozdrawiam
_Cartman
a czy przyt kodowaniu sha1() rowniez rzecz ma sie tak samo?? tez jej nie mozna odkodowac questionmark.gif
strife
Cytat(_Cartman @ 2005-02-26 19:58:16)
a czy przyt kodowaniu sha1() rowniez rzecz ma sie tak samo?? tez jej nie mozna odkodowac questionmark.gif

To też jest hash.. więc raczej nie.

[patrz też] - SHA-1 złamane?
sobstel
Cytat(scarface @ 2005-02-26 21:06:22)
[patrz też] - SHA-1 złamane?

co nie znaczy ze wynalezniono funkcje dekodujaca ;-)

zreszta bardzo ladnie jest to wytlumaczone w artykule do ktorego link dal kolega @Vir
XaVeR
Ej ludzie ! napewno da sie to odkodowac exclamation.gif!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
mam IPB i w bazie sa przechowywane hasla usewoa a sam swoje zgubilem tongue.gif Da sie to jakia zdekodowac zeby haslo pokazalo questionmark.gifquestionmark.gifquestionmark.gifquestionmark.gif
Darti
no tak - da się (ze słownikiem i w trzy lata później - joke) ale się da smile.gif
sobstel
Cytat(Darti @ 2005-03-10 13:17:56)
no tak - da się (ze słownikiem i w trzy lata później - joke) ale się da smile.gif

3 lata? oczywiscie ze da sie "odkodowac" poprzez atak brute-force tylko zacznij juz teraz, to moze juz twoje prawnuki poznaja to haslo heh
Vertical
Trochę wyjaśnię:
Kodowanie to taki proces, w którym dane są kodowane (masło maślane), a haszowanie to proces stratny, czyli z ciągu bitów wybierane są tylko niektóre i nie da się tego "odhaszować" (to mniej więcej tak, jakbyś chciał z 50 losowych literek odczytać "Pana Tadeusza"). Nie mówię tutaj o haszu sha-1, którego ponoć da się "odhaszować", ale istnieją takie, których po prostu nie da się złamać
dr_bonzo
@Vertical: sam sobie zaprzeczasz, raz piszesz ze hasha nie da sie odhashowac a drugi raz piszez ze sha1 jest hashem i da sie go odhashowac. Oni _chyba_ (nie pamietam) odnalezli sposob na wygenerowanie ciagu znakow ktory daje taki sam hash.
Vertical
Teoretycznie się nie da. Poza tym, z tego co słyszałem to oni też nie do końca zdołali go odhaszować (nie napisali funkcji "odhaszowującej")
bregovic
Bo nie możliwe jest odkodowanie zhashowanych danych. Możliwe jest wyprodukowanie ciągu który posiada kolidujący hash.
Jedyny rodzaj rozkodowania md5 to brute force - ale trzeba mieć bardzo dobry słownik i bardzo dużo cpu, i bardzo dużo czasu.
Cysiaczek
hmmm. Spoko. Algorytm jednostronny, ale zauważcie,że te same litery sa zapisywane jako kilka znaczków. Zauważyłem, że jdna literka ma na stałe przypisany jakiś ciąg znaków. Nie wierzycie- sprawdzcie. Niniejszym uważam, że mając dostęp do zakodowanego hasła jesteś w stanie metodą prób i błędów odkodować je.
Darti
blink.gif
zrobiłem tak:
  1. <?php
  2. $a = 'abc';
  3. $b = 'abcd';
  4.  
  5. print md5($a).'<br>';
  6. print md5($b).'<br>';
  7. print sha1($a).'<br>';
  8. print sha1($b);
  9. ?>

wyrzuciło mi to:
Kod
900150983cd24fb0d6963f7d28e17f72
e2fc714c4727ee9395f324cd2e7f331f
a9993e364706816aba3e25717850c26c9cd0d89d
81fe8bfe87576c3ecb22426f8e57847382917acf
gdzie tutaj widzisz podobieństwa?

Niniejszym uważam, że metoda brute-force polega na próbach i błędach (głównie błędach) smile.gif

ps: w manualu jest napisane "Calculates the MD5 hash of str[...]" i analogicznie przy sha1, więc nie wiem o co się spieracie (kodowanie czy haszowanie) - Manual explains any doubts
Cysiaczek
Ok. Powiedz jeszcze na podstawie czego jest dokonywany wybór bitówbo nie na podstawie czasu.

  1. <?php
  2. $a = 'a';
  3.  
  4. print md5($a).'<br>';
  5. for ($i=1; $i<100000; $i++)
  6. {
  7. print &#092;"$i<br>\";
  8. }
  9. print md5($a).'<br>';
  10.  
  11.  
  12. ?>
FiDO
Na podstawie wielu operacji matematycznych (w tym i troche na bitach) ale na calym ciagu.. algorytm jest dostosowany do hasowania strumieniowego. Jakiego duzego bufora nie podasz i tak operacje sa wykonywane na kazdym znaku z osobna, przy kazdym znaku korzystajac z informacji juz obliczonych (na podstawie wszystkich poprzednich znakow) i 'aktualnego', dlatego wlasnie zmiana jednego znaku powoduje tak duze zmiany hasha.
Cysiaczek
Ok. Zgadzam się. Mam tylko jeszcze jeden problem. Dlaczego tylko brute force może to złamać? na pewno da się te zmiany przewidzieć. Owszem najprostszy jest po prostu chamski atak ze słownikiem w bazie, ale skoro jeden ciąg znaków zawsze daje identyczny wynik hashowania, to na pewno można go złamać. No chyba że się mylę...
orson
witam ...

tak jeden ciag skladajacy sie z jednego znaku ... to jakies 100 prob [alfanumeryczne, duze/male, specjalne itp] ... ale jak dodasz nastepny znak to juz nie jest tak latwo ... a moje hasla maja 10 znakow alfanumerycznych, znaki specjalne, kilka duzych, kilka malych ... zgaduj

ps. w technikach hash nic nie moze sie opierac na czasie ... poniewaz glowna zaleta hashowania jest to ze z takiego samego stringu [a czesciej strumienia danych] zawsze dostaniesz taki sam hash ... i wiesz ze dane sie nie zmienily

pozdrawiam
tts
uzupelniajac Verticala: model matematyczny tworzenia hashu zaklada, ze istnieje niezerowe prawdopodobienstwo, iz dwa rozne ciagi znakow beda mialy ten sam hash.
Gligamesh
odblokowac sie da napweno, nawet forum pbbh ktore koduje w md5 ma przypomnienie hasla czyli jaks musi byc na to sposob
orson
witam ...

na pewno ma w md5 ? a moze przysylaja nowe ? a moze maja w encode questionmark.gif

pozdrawiam
sobstel
Cytat(Gligamesh @ 2005-03-12 10:10:39)
odblokowac sie da napweno, nawet forum pbbh ktore koduje w md5 ma przypomnienie hasla czyli jaks musi byc na to sposob

przeczytaj caly watek i potem dawaj posty - poszukaj sobie skrypt/funkcje/sposob odkodowania md5 (mozesz wyciac z cytowanego przez ciebie forum tongue.gif) - milego szukania.

przypominanie hasla polega na wygenerowaniu nowego albo haslo nie jest zahashowane funkcją jednokierunkową typu md5 czy sha1.
Nievinny
w przypadku phpBB jest hashowane md5, ale przed tym wysyłane do usera e-mailem...

I to już chyba koniec "głópich" winksmiley.jpg (głupich) postów...
hwao
Temat uwazam za wyczerpany.
Zadnego hashu nie da sie "odkodowac" poniewaz klucze ktore sa przy jego towrzeniu zostaja zniszczone przez co jest to tylko w 1 strone(jakby sie dalo 2 to md5 i inne hashe byly by najlepszymi algorytmami kompresujacymi ;-) )

Zamykam.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.