/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
kan man skelne mellem store og små bogstav~
Fra : Jens R. rasmussen


Dato : 04-04-09 14:01

Hej/

Jeg bruger en accessdatabase, hvor jeg har lagt brugerne id og
password ind. De er lagt ind med både store og små bogstaver.

Når en bruger så logger sig på fx JENS01, så holder jeg det
indtastede op mod accessdatabasen.

Til min overraskelse godkendes såvel JENS01, som jenS01, når jeg
spørger på om det indtastede er lig indholdet i databasen.

Kan jeg på nogen måde ændret det, så kun korrekte upper- og
lovercase tegn accepteres?

mvh

/Jens

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
Jørn Andersen (04-04-2009)
Kommentar
Fra : Jørn Andersen


Dato : 04-04-09 14:54

On 04 Apr 2009 13:01:22 GMT, Jens R. rasmussen
<Jens.R.Rasmussen@uni-c.dk> wrote:

>Jeg bruger en accessdatabase, hvor jeg har lagt brugerne id og
>password ind. De er lagt ind med både store og små bogstaver.
>
>Når en bruger så logger sig på fx JENS01, så holder jeg det
>indtastede op mod accessdatabasen.
>
>Til min overraskelse godkendes såvel JENS01, som jenS01, når jeg
>spørger på om det indtastede er lig indholdet i databasen.
>
>Kan jeg på nogen måde ændret det, så kun korrekte upper- og
>lovercase tegn accepteres?

Det må være en indstilling i din database. Spørg i dk.edb.database.

Men der er et andet problem - og hvis du løser det, så får du også løst
ovenstående problem.

Problemet er, at du gemmer passwords i klar tekst i databasen. Det bør
man absolut ikke gøre - heller ikke selv om det ikke er Nationalbanken,
du vil beskytte.

Problemet er, at folk ofte bruger samme password til såvel ubetydelige
ting som ting, hvor det faktisk gør en forskel.

Lad os sige, at en af dine brugere får misbrugt sit password til noget
helt andet - men at det tilfældigvis er samme pw, som vedkommende bruger
i dit system. Så kan *du* faktisk være (uforskyldt) under mistanke.

Hvis du derimod "hasher" passwordet og gemmer den hashede værdi i
databasen, så er du (stort set) uden for mistanke, da det kræver ret
meget at bryde en hash-værdi.

Hashing er en-vejs-kryptering - man kan altså ikke (særligt let og med
sikkerhed) komme tilbage til den oprindelige værdi ud fra hash-værdien.

Så det du gør er, at du gemmer hash-værdien i databasen - og
sammenligner denne med den hashede værdi af indtastningen, når brugeren
logger sig ind.

Det har så samtidig den fordel, at hashing af "JENS01" og "jenS01" giver
to vidt forskellige hash-værdier

De mest almindeligt anvendte hash-funktioner er MD5 og den noget
stærkere SHA1.
Se fx:
<url: http://www.asp-faq.dk/article/?id=52>
- hvor du også kan hente ASP-kode til de to hash-funktioner.

Der er mere på Wikipedia om hashing, MD5 og SHA1.

Det kan godt være det lyder svært med hashing, men det er det
overhovedet ikke: Download filen og lav en include til den, hvor du har
brug for den, og brug funktionen som fx:
strPwMd5 = MD5(strPw)

Good luck!

--
Jørn Andersen,
Brønshøj

Jens R. rasmussen (05-04-2009)
Kommentar
Fra : Jens R. rasmussen


Dato : 05-04-09 22:55

Jørn Andersen wrote in dk.edb.internet.webdesign.serverside.asp:
> On 04 Apr 2009 13:01:22 GMT, Jens R. rasmussen
> <Jens.R.Rasmussen@uni-c.dk> wrote:
>
> >Jeg bruger en accessdatabase, hvor jeg har lagt brugerne id og
> >password ind. De er lagt ind med både store og små bogstaver.
> >
> >Når en bruger så logger sig på fx JENS01, så holder jeg det
> >indtastede op mod accessdatabasen.
> >
> >Til min overraskelse godkendes såvel JENS01, som jenS01, når jeg
> >spørger på om det indtastede er lig indholdet i databasen.
> >
> >Kan jeg på nogen måde ændret det, så kun korrekte upper- og
> >lovercase tegn accepteres?
>
> Det må være en indstilling i din database. Spørg i dk.edb.database.

Tak for rådet. Jeg fandt nogle lignende spørgsmål/svar, som ledte mig hen
til funktionen string compare i VBscripting. Og en match kræver at
StrComp(streng1, streng2, vbBinaryCompare) = 0
Der laves altså en binær sammenligning, og der a <>A


> Men der er et andet problem - og hvis du løser det, så får du også løst
> ovenstående problem.
>
> Problemet er, at du gemmer passwords i klar tekst i databasen. Det bør
> man absolut ikke gøre - heller ikke selv om det ikke er Nationalbanken,
> du vil beskytte.
>
> Problemet er, at folk ofte bruger samme password til såvel ubetydelige
> ting som ting, hvor det faktisk gør en forskel.
>
> Lad os sige, at en af dine brugere får misbrugt sit password til noget
> helt andet - men at det tilfældigvis er samme pw, som vedkommende bruger
> i dit system. Så kan *du* faktisk være (uforskyldt) under mistanke.
>
> Hvis du derimod "hasher" passwordet og gemmer den hashede værdi i
> databasen, så er du (stort set) uden for mistanke, da det kræver ret
> meget at bryde en hash-værdi.
>
> Hashing er en-vejs-kryptering - man kan altså ikke (særligt let og med
> sikkerhed) komme tilbage til den oprindelige værdi ud fra hash-værdien.
>
> Så det du gør er, at du gemmer hash-værdien i databasen - og
> sammenligner denne med den hashede værdi af indtastningen, når brugeren
> logger sig ind.
>
> Det har så samtidig den fordel, at hashing af "JENS01" og "jenS01" giver
> to vidt forskellige hash-værdier
>
> De mest almindeligt anvendte hash-funktioner er MD5 og den noget
> stærkere SHA1.
> Se fx:
> <url: http://www.asp-faq.dk/article/?id=52>
> - hvor du også kan hente ASP-kode til de to hash-funktioner.
>
> Der er mere på Wikipedia om hashing, MD5 og SHA1.
>
> Det kan godt være det lyder svært med hashing, men det er det
> overhovedet ikke: Download filen og lav en include til den, hvor du har
> brug for den, og brug funktionen som fx:
> strPwMd5 = MD5(strPw)

Tak igen. Jeg har fundet det, og kan let include den i min kode. Hashing
bliver det næste jeg gør - selvom jeg sådan set har løst mit konkrete
problem med vbBinaryCompare - men jeg erkender fuldt ud dit råd om hashede
databaser.

>
> Good luck!
>
> --
> Jørn Andersen,
> Brønshøj

mvh
Jens R. Rasmussen, Værløse

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Søg
Reklame
Statistik
Spørgsmål : 177579
Tips : 31968
Nyheder : 719565
Indlæg : 6409073
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste