Solskinnshistorie ;) - god løsning

Sjefskoder

Sjefskoder
Hollooo på morrakvisten alle morgenfugler !!

Fikk i oppdrag her å komme opp med en idè til hvordan gjøre innlogging sikrere..

Klienten min kjørte idag et enkelt system som sjekket om brukeren fantes i databasen og om passordet stemte overens med brukernavnet..
passordet var forresten selv-valgt av bruker og slik skulle det være..
Jeg grublet lenge og frem å tilbake..
Klienten min ville ikke ha noe sms-greier for da hadde det jo vært enkelt..
Hadde bare vært å sende en kode til mobilnumeret også måtte kunden ha skrevet inn dette i tillegg.
meeeeen, han ville ikke ha noe som kostet han eller kunden noe som helst..
md5-kryptering hadde han hørt at var avanserte greier, så noe slikt skulle han heller ikke ha :p
men så helt plutselig slo det meg..

"hva med å lage en kode som autogenerer en tegn-kombinasjon da?
Når kunde har skrevet inn brukernavn og passord og klikker på "videre"-knappen, så sendes disse tegnene til kunde pr. epost også lagres samme tegnkompbinasjon i databasen.
Også sjekkes koden opp mot denne kundens unike id når han skriver inn denne koden i neste felt..

Er kombinasjonen korrekt sendes han videre og er det ikke det så får han beskjed om at det er feil tegnkombinasjon."

helt genialt, sa kunden, kjør på!! ;)

og koden jeg kom frem til for å generere forskjellige kombinasjoner av tegn var følgende:

PHP:
//følgende tegn som skal brukes
$tegn = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnoprstuvwxyz?%/';
//antall tegn som skal vises
$lengde = 7;
//litt magi ;)
$max_i = strlen($tegn)-1;
$verdi = '';
for ($i=0;$i<$lengde;$i++)
{
$verdi .= $tegn{mt_rand(0,$max_i)};
}
echo $verdi;
?>

Tekte dele denne kundehistorien med dere og løsningen med koden.
Her kjører den bare en echo av tegnkombinasjonen (trykk f5 i nettleseren din flere ganger om du vil teste ut dette og se hva som skjer..!)

Men, dette kan enkelt lagres i database og sjekkes opp mot kundes unike id :)

Skal ikke alltid være enkelt med kunder som veit hva de ikke vil ha, og heller ikke hva, egentlig :p..

Men heldigvis så er det kun fantasien som setter grenser for hva man kan få til..

/S
 

Pong

Jeg selger sʇɥƃıluʍop :)
Yep, bra med sjekk om at eposten eksisterer!

Ellerst tenkte jeg på at det hadde vært bra å ikke bruke ?%/
De er jo ikke lov å bruke i URL så da må de urlencodes etc.

Tallene 0 og 1 kan lett forveksles med O og storbokstav i eller liten bokstav l, samt V, W og Y kan være vanskelige å forstå over telefonen, så hvis du har et litt annet bruksområde så hadde jeg nok gått for kun små bokstaver og utelukke vanskelige bokstaver og tall.

Jeg tror du kan også forbedre den litt med å ikke tillate dobbel bruk av tegn. Det er f.eks. mulig å få 'erdudum', som er maks uheldig :p
 

Sjefskoder

Sjefskoder
Tonny skrev:
Herlig Sjefskoder. Enkelt og genialt, akkurat slik det skal være.

Jepp! :)

Pong skrev:
Yep, bra med sjekk om at eposten eksisterer!

Ellerst tenkte jeg på at det hadde vært bra å ikke bruke ?%/
Dette slo meg og her i stad å så det fjernet jeg ;)
Pong skrev:
Tallene 0 og 1 kan lett forveksles med O og storbokstav i eller liten bokstav l, samt V, W og Y kan være vanskelige å forstå over telefonen
Når du sier det så stemmer jo dette igrunn da..
Fjernet de jeg ;)
Pong skrev:
Jeg tror du kan også forbedre den litt med å ikke tillate dobbel bruk av tegn.
Det er f.eks. mulig å få 'erdudum', som er maks uheldig :p

Det gidder jeg ikke engang å bekymre meg for da sjansen for at du skal få ordet "erdudum" er 1 til "veeeeldi" mye ;)

/S
 
Topp