LooneyTune Skrevet 1. januar 2007 Del Skrevet 1. januar 2007 md5('string') ville kryptere string til en hash på 32 tegn. Men vis raw settes til true, vil krypteringen bli 16 tegn. Hvordan kan jeg sette raw til true? Lenke til kommentar
kimla Skrevet 1. januar 2007 Del Skrevet 1. januar 2007 (endret) Vel, på http://no2.php.net/manual/en/function.md5.php så står det følgene: Description string md5 ( string str [, bool raw_output] ) Dette vil vel si noe som: $string = "string"; $hash = md5( $string, true ); Skal vel ikke være verre Litt nedover står det også: Agreed, tszming at gmail dot com. I did my own test using simple (letters) and complex (letters, numbers, symbols) strings of short, (6 characters), medium (a sentence), and long (three paragraphs) lengths. Overall, using <?php echo bin2hex( md5( $str, TRUE ) ); ?> versus just <?php echo md5( $str ); ?> ranges between 2x and 3x faster and yet return identical results. Good catch. Endret 1. januar 2007 av kimla Lenke til kommentar
LooneyTune Skrevet 1. januar 2007 Forfatter Del Skrevet 1. januar 2007 (endret) Jeg lager et php script som skal lage en hash ut fra hva brukeren skriver inn, her er scriptet mitt: <?php $text = $_post["text"]; $hash = md5($text, true ); print $hash; ?> Men jeg får bare denne feilmeldingen: Warning: Wrong parameter count for md5() in /home/insaine/www/md5calc/md5.php on line 3 Hva er galt? Endret 1. januar 2007 av LooneyTune Lenke til kommentar
Ernie Skrevet 1. januar 2007 Del Skrevet 1. januar 2007 Det som er galt er nok at du ikke har PHP 5.x Note: The optional raw_output parameter was added in PHP 5.0.0 and defaults to FALSE Lenke til kommentar
LooneyTune Skrevet 1. januar 2007 Forfatter Del Skrevet 1. januar 2007 har php 5.1... Lenke til kommentar
kimla Skrevet 1. januar 2007 Del Skrevet 1. januar 2007 Prøvd TRUE istedenfor true.. bare for å prøve liksom? Lenke til kommentar
Peter Skrevet 1. januar 2007 Del Skrevet 1. januar 2007 (endret) Prøvd TRUE istedenfor true.. bare for å prøve liksom? 7621719[/snapback] PHP gjør DESSVERRE ikke forskjell på store og små bokstaver. Prøvd TRUE istedenfor true.. bare for å prøve liksom? 7621719[/snapback] Sikker på at det er den versjonen som kjører? Det høres veldig merkelig ut. Sjekk med phpinfo(), ikke stol på det evt. webhotell sier i sin faq. Endret 1. januar 2007 av Nazgul Lenke til kommentar
kimla Skrevet 2. januar 2007 Del Skrevet 2. januar 2007 (endret) Kan stemme det, er jo noen hoster som krever at du aktiverer php5 på en måte... Endret 2. januar 2007 av kimla Lenke til kommentar
LooneyTune Skrevet 2. januar 2007 Forfatter Del Skrevet 2. januar 2007 "PHP Version 4.4.4-pl4-gentoo", ser ikke som noe php 5 her nei Men "md5(string)" leverer fortsatt en hash på 32 tegn... Hvorfor? Lenke til kommentar
Ueland Skrevet 2. januar 2007 Del Skrevet 2. januar 2007 Er målet bare at du skal ha 16 tegn, eller "må" du bruke raw md5? Lenke til kommentar
LooneyTune Skrevet 2. januar 2007 Forfatter Del Skrevet 2. januar 2007 (endret) Vis jeg kutter hash'en ned til raw (16 tegn) istedet for 32 tegn, vil det gå mye raskere å behandle... Jeg holder nå på med to script, et til å lage en md5 hash og et til å knekke en md5 hash. Her er scriptet til md5 knekkeren (bruker "dictionary attack"): <?php $hash = $_post["hash"]; $file = "wordlist.txt"; $wordlist = fopen($file, "r") or die ("could not open wordlist"); while (!feof($wordlist)){ $line = fgets($wordlist); $md5line = md5($line); if($hash == md5line){ print "hash: $hash"; print "word: $line"; } } ?> Og her er koden til md5 kalkulatoren: <?php $text = $_post["text"]; $hash = md5($text); print $hash; ?> Endret 2. januar 2007 av LooneyTune Lenke til kommentar
ZoRaC Skrevet 2. januar 2007 Del Skrevet 2. januar 2007 substr($hash, 0, 16); vil gi deg de første 16 tegn, om det er det du ønsker? Lenke til kommentar
LooneyTune Skrevet 2. januar 2007 Forfatter Del Skrevet 2. januar 2007 Nei, da ville ikke hash'en bli fulstendig. Jeg trenger raw formatet av hash'en, fordi det går raskere å jobbe med. Det går ikke an å jobbe med en halv hash. Lenke til kommentar
Peter Skrevet 2. januar 2007 Del Skrevet 2. januar 2007 (endret) Nei, da ville ikke hash'en bli fulstendig. Jeg trenger raw formatet av hash'en, fordi det går raskere å jobbe med. Det går ikke an å jobbe med en halv hash. 7626378[/snapback] echo md5('test', true); echo pack("H*", md5('test')); Men du burde legge ordlisten i et binært søketre, tror ytelsen du opplever da vil være ekstremt mye bedre enn den du får nå, særlig om du skal sjekke flere ord etterhverandre. Endret 2. januar 2007 av Nazgul Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå