Gjest Slettet-i6XWZnn85h Skrevet 7. september 2006 Del Skrevet 7. september 2006 Eg vil lage ulike ord av både store og små bokstave og tall fra 0 til 9 abcdefghijklmnopqrstuvwxyzæøåABCDEFGHIJKLMNOPQRSTUVWXYZÆØÅ1234567890 Å eg hat funne ut ein måte eg tru eg grei å gjøre dette på. Hvis man legger hver bokstav /tall inn slik $array[’1’] = ”1” $array[’2’] = ”2” Heilt opp til alle ord og bokstaver er brukt opp.. Med alle store og små bokstaver å tall så har man 68 stykk. Så starter problemet mitt då. Sånn som eg he tenkt å løyse dette bli som ein kodelås. Her ska eg løyse eit ord på 4 siffer så begynner eg sånn som dette: 1-1-1-1 De tallene er nummeret i arrayen. Så kommer 1-1-1-2 så 1-1-1-3 heilt til den er på 1-1-1-68. Etter at den har gjort dette så går den slik som dette 1-1-2-1 så 1-1-2-2 til slutt så er den på 1-1-2-68. skjønner dere hva eg meinere med dette? Noen som har ein grei måte å løyse denne på? For hvert ord den lager så legger eg det inn i ein ny array. Og for hver gang den passerer 68 ord så skal alle ordene settes inn i ein mysql database så fjernes ordene fra arrayen å fortsetter på å generere ord. Er det noen som kan komme med noen forslag på hvordan eg kan løse dette? Lenke til kommentar
gozzer Skrevet 7. september 2006 Del Skrevet 7. september 2006 Du skal brute force, med andre ord? Ingen ekspert på det området, men du trenger vel en løkke av et slag, og 4 variabler for å holde styr på hvor langt i prosessen du er kommet. Én for hver av de fire sifrene dine. Lenke til kommentar
Gjest Slettet-i6XWZnn85h Skrevet 7. september 2006 Del Skrevet 7. september 2006 Ja det er vel det det heite. Eg vil kunne gå opp til 5 tegn å 6 tegn også 7 8 9 10 etter hvert. Lenke til kommentar
Kellendil Skrevet 7. september 2006 Del Skrevet 7. september 2006 vel det fins vel smarte algoritmer for dette :] det enkleste, men ikke raskeste, er vel å lage fire løkker, den ene inni den andre. Lenke til kommentar
vidarlo Skrevet 7. september 2006 Del Skrevet 7. september 2006 Eg ser ikkje poenget med å finne opp hjulet på nytt. Til cracking er det få ting som overgår John the ripper, som kan gjere alt. Og php er notorisk uegna til slike ting som skal kjøre i løkker på den måten. Lenke til kommentar
Gjest Slettet-i6XWZnn85h Skrevet 7. september 2006 Del Skrevet 7. september 2006 (endret) Kan egentlig veldig lite ang andre språk.. Men hva lønner seg da? c++? å det er ikkje for å finne på noe som allerede finnes. det er for lære. Men veit du om noe som allerede eksisterer så spør vil eg se det om du ønsker å dele det? Endret 7. september 2006 av Slettet-i6XWZnn85h Lenke til kommentar
Arne Skrevet 8. september 2006 Del Skrevet 8. september 2006 Sa du ikkje 0-9? Du seier 1-1-1-68. Det blir vel berre 1-1-1-9. Viss det er slik, så er det 9^4=59049 kombinasjoner. (med berre tal, viss eg ikkje har rekna feil. ) Scriptet vil vel helde på så lenge at du må endre max-kjøretid viss du skal bruke PHP? Lenke til kommentar
xqus Skrevet 8. september 2006 Del Skrevet 8. september 2006 (endret) Kanskje dette kan hjelpe.. <?php $CFG['charset'] = "abcdefghijklmnopqrstuvwxyz1234567890"; $CFG['strlen'] = 4; $CALC['lastpos'] = strlen($CFG['charset']); $CALC['noStrings'] = pow($CALC['lastpos'],$CFG['strlen']); for($i=0; $i<$CFG['strlen']; $i++) { $CALC['char'][$i]['pos']=0; if($i>0) { $CALC['char'][$i]['int']=pow($CALC['lastpos'],$i); } else { $CALC['char'][$i]['int']=0; } $CALC['char'][$i]['inc']=0; } $allStrsings=array(); print_r($CALC); print_r($CFG); echo "Looks OK? Press CTRL+C to abort.. starting in 2 seconds.."; sleep(2); echo "\nStarting:\n"; for($i=0; $i<$CALC['noStrings']; $i++) { $str = ""; reset($CALC['char']); while(list($id, $charData)=each($CALC['char'])) { $str .= substr($CFG['charset'], $CALC['char'][$id]['pos'],1); $CALC['char'][$id]['inc']++; if($CALC['char'][$id]['inc']>=$CALC['char'][$id]['int']) { $CALC['char'][$id]['pos']++; $CALC['char'][$id]['inc']=0; } if($CALC['char'][$id]['pos']>=$CALC['lastpos']) { $CALC['char'][$id]['pos']=0; } } echo $str."\n"; $ii=$i+1; } ?> Bare noe jeg laget for lengesiden (litt modifisert). Skjønner ikke hva som er så gale å bruke PHP til slike ting.. fungerer utmerket.. Endret 8. september 2006 av xqus Lenke til kommentar
gozzer Skrevet 8. september 2006 Del Skrevet 8. september 2006 Funka ganske så greit den der. Vær dog obs på at å generere sånne lister tar litt tid. Mitt script tima ut etter 60 sekunder (default sikkerhets ting), og hadde da klart å lage drøye 1,5 millioner kombinasjoner. :-) Lenke til kommentar
Gjest Slettet-i6XWZnn85h Skrevet 8. september 2006 Del Skrevet 8. september 2006 (endret) herlig! det fungere jo perfekt! Grunnen til at man ikkje brurde å bruke php er at det finnes mange andre raskere språk som egner seg for sånne ting.. som kan generere opp til 5 mill ord i sek på denne lille maskinen min. men dette er supert. Lure på hvordan eg kan begynne på eeee? må eg bare forfalske $i? Endret 8. september 2006 av Slettet-i6XWZnn85h Lenke til kommentar
xqus Skrevet 8. september 2006 Del Skrevet 8. september 2006 Dette egner seg såklart best kjørt fra kommandolinje (php cli) og ikke gjennom mod_php er PHP CGI modulen. Lenke til kommentar
Gjest Slettet-i6XWZnn85h Skrevet 8. september 2006 Del Skrevet 8. september 2006 Selfølgelig gjør eg det Genialt at man får opp hva den holder på med øyeblikelig.. kan sitte å se på ordene den generere 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å