Pagina de start a forumului Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc
Comunitatea PHP Romania
 

MD5 length
Vezi mesajul original

 
       Pagina de start a forumului Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc -> Dezvoltare
Subiectul anterior :: Subiectul următor  
Autor Mesaj
adyre



Data înscrierii: 06/Dec/2004
Mesaje: 440
Locație: Buzau

Trimis: Joi Aug 30, 2007 9:31 am    Titlul subiectului: MD5 length  

Sunt curios de un lucru.

Pentru o buna optimizare a unei baze de date SQL e bine sa anticipezi length-ul fiecarui column pentu a nu face uz de spatiu.

Problema e ca tot cautand pe net despre md5 length gasesc numai aproximari (usual 32 digits length). Stie cineva concret cate caractere poate avea un string encriptat MD5?

Multumesc anticipat!
Sus  
Pirahna



Data înscrierii: 22/Aug/2004
Mesaje: 4341
Locație: la birou

Trimis: Joi Aug 30, 2007 10:11 am    Titlul subiectului:  

Uite o solutie ca sa te prinzi singur ...

Faci un script php ...

Cod: <?php

$md5 = "cuvantul_tau";
$md5_ul_meu = md5($md5);

echo $md5_ul_meu;

?>

si le numeri.
Asta in caz ca functia strlen da rateuri.
Sus  
adyre



Data înscrierii: 06/Dec/2004
Mesaje: 440
Locație: Buzau

Trimis: Joi Aug 30, 2007 10:15 am    Titlul subiectului:  

Da, asta facusem

print strlen(md5("texte multe");

si la toate iese rezultatul 32 (si pentru stringuri mai lungi de 32 de caractere si pentru stringuri mai scurte de 32 de caractere, insa am nevoie de certitudine ca ce vreau sa fac nu trebuie sa aibe nici cea mai mica problema ca nu iese bine pt mine.

Ms oricum. Credeam ca stii SIGUR ca atat contine. :D
Sus  
sharp20



Data înscrierii: 12/Iul/2007
Mesaje: 36
Locație: sushiava

Trimis: Joi Aug 30, 2007 10:41 am    Titlul subiectului:  

http://en.wikipedia.org/wiki/MD5

Citat:
MD5 (Message-Digest algorithm 5) is a widely used cryptographic hash function with a 128-bit hash value.


Un char e reprezentat pe un octet(8 biti) => 132 / 8 => 32. deci 32 de biti. SIGUR.

Totusi s-au descoperit vulnerabilitati mari pentru MD5. Poate fi decriptat.
http://www.phorum.ro/archive/index.php/t-5488.html
Sus  
adyre



Data înscrierii: 06/Dec/2004
Mesaje: 440
Locație: Buzau

Trimis: Joi Aug 30, 2007 10:43 am    Titlul subiectului:  

Ms mult.

Pai e cea mai recunoscuta metoda de criptare (sau cel putin a fost... nimic nu este pentru totdeauna).

Vreun sfat pentru un alt tip de criptare? (Care oricum nu e chiar atat de importanta la ce vreau eu sa folosesc .. cred )
Sus  
sharp20



Data înscrierii: 12/Iul/2007
Mesaje: 36
Locație: sushiava

Trimis: Joi Aug 30, 2007 10:51 am    Titlul subiectului:  

Cu placere.

Cea mai sigura din cate am citit eu e SHA-256.
SHA-1 e sigur mai buna decat MD5.

http://www.php.net/sha1

Poti incerca sa citesti si comentariile. Stiu aia mai multe acolo :).

Dar intr-adevar dupa cum ai spus - daca nu ai nevoie de prea mare securitate - MD5 e suficient.
Sus  
chronos



Data înscrierii: 28/Dec/2006
Mesaje: 156

Trimis: Joi Aug 30, 2007 12:10 pm    Titlul subiectului:  

Citat: Asta in caz ca functia strlen da rateuri. =)) nice :)
Sus  
Amenthes



Data înscrierii: 12/Dec/2005
Mesaje: 354

Trimis: Mar Sep 04, 2007 2:16 am    Titlul subiectului:  

Consider ca e mai bun SHA-1 din trei motive:

1. Nu s-au gasit vulnerabilitati asa mari fata de MD-5
2. Genereaza 40 de caractere in loc de 32, deci risc mai mic de coliziune
3. Inca nu stiu de nici un proiect pentru un rainbow table bazat pe SHA-1, in schimb MD-5 are o groaza.

Acum, trecand peste cele de mai sus, e si mai bine sa folosesti (hash_hmac) impreuna cu SHA-1. Asta daca iti suporta versiunea de PHP, daca nu, faci tu "manual" ce face hash_hmac, encripteaza un string rezultat din concatenarea parolei plus un "salt", saltul putand fi o constanta pe care sa o tii intr-un config file.
Sus  
Garfield



Data înscrierii: 17/Oct/2005
Mesaje: 1
Locație: Ia$i

Trimis: Vin Sep 14, 2007 12:50 pm    Titlul subiectului:  

sharp20 a scris:
Totusi s-au descoperit vulnerabilitati mari pentru MD5. Poate fi decriptat.
MD5 nu poate fi decriptat fiindca nu este un algoritm de criptare!
MD5 calculeaza semnatura (hash-ul) unui sir de intrare. Vulnerabilitatea de care vorbesti o reprezinta coliziunile (mai multe siruri pot avea aceeasi semnatura). Un exemplu practic ar fi: daca cineva are o baza de date (obtinute prin diverse metode) cu parolele in MD5 atunci poate gasi (mai greu sau mult mai greu) un sir cu aceeasi semnatura pe care sa-l foloseasca drept parola si sa intre in respectivul cont.
Insa in niciun caz nu se cheama decriptare fiindca nu afla niciodata sirul de intrare (decriptarea asta presupune, sa obtii informatia originala).
Sus  
mihaitha



Data înscrierii: 04/Mai/2007
Mesaje: 1395
Locație: Sibiu

Trimis: Vin Sep 14, 2007 1:59 pm    Titlul subiectului:  

sharp20 a scris: http://en.wikipedia.org/wiki/MD5

Citat:
MD5 (Message-Digest algorithm 5) is a widely used cryptographic hash function with a 128-bit hash value.


Un char e reprezentat pe un octet(8 biti) => 132 / 8 => 32. deci 32 de biti. SIGUR.

Totusi s-au descoperit vulnerabilitati mari pentru MD5. Poate fi decriptat.
http://www.phorum.ro/archive/index.php/t-5488.html

Vezi ca bagi lumea in ceata. 128 biti / 8 = 16 octeti, fiecare reprezentat de cate 2 caractere hexa (0 - 9 si A - F). De acolo dau 32 de caractere.

// LE : niciodata nu mi s-a potrivit semnatura mai bine ca la postu asta :D

P.S. daca va uitati in explicatiile de pe wikipedia si in mecanismul de lucru al md5 va dati seama ca este un algoritm ireversibil (foloseste ca si date de intrare pentru criptarea unui bloc datele obtinute pana in acel moment), deci dupa cum a spus si garfield, nu a fost spart, ci i-au fost descoperite vulnerabilitati (i.e. generare de coliziuni).
Sus  
Poyo



Data înscrierii: 08/Iun/2008
Mesaje: 29
Locație: Rm. Valcea

Trimis: Dum Iun 08, 2008 4:29 pm    Titlul subiectului:  

Pentru o siguranta mai mare : sha1(md5("Sir"));
Sus  
vectorialpx



Data înscrierii: 01/Mar/2005
Mesaje: 2889
Locație: țopăi pe tasta DELETE

Trimis: Dum Iun 08, 2008 7:16 pm    Titlul subiectului:  

mihaita si poyo, nu mai fiti copii

PS: poyo, mihaita are dreptate... e inutil
PPS: sa lasam offtopic-urile pentru Discutii generale ;)
Sus  
PHPRomania Bot
Bot Member


Data înscrierii: 27/Dec/2007
Mesaje: 1
Locaţie: Server Google
Trimis: Mie Dec 26, 2007 7:01 pm   Titlul subiectului: Ad  

Sus  
 
       Pagina de start a forumului Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc -> Dezvoltare
Pagina 1 din 1


Powered by phpBB 2.0.22 © 2001, 2002 phpBB Group
Varianta în limba română: Romanian phpBB online community