"Niels Andersen" <niels-usenet@myplace.dk> wrote in
<rNSA6.33008$o4.2336244@news010.worldonline.dk>:
>"Jesper Stocholm" <spam@stocholm.dk> skrev i en meddelelse
>news:9aulss$ol$1@sunsite.dk...
>> Den streng du
>> ser på siden er mit brugernavn og password, der er kørt igennem en
>> hash-funktion. Som du kan se, så mister jeg ikke noget sikkerhed ved
>> at offentliggøre disse værdier - da det er mindst lige så svært at
>> gætte mit password som at gætte en streng, der laver den samme
>> hash-streng.
>
>Det er vi så ikke helt enige om. :)
så er det fordi du ikke er klar over, hvad jeg taler om
>Hvis jeg nu finder ud af hvordan du hasher brugernavn og kodeord, så kan
>jeg tage din hashværdi og sætte et program til at finde password via
>"brute force" - altså at prøve sig frem.
OK ... mine passwords-brugerID er sendt igennem en 128-MD5-hashfunktion -
fire away ! Strengen på min hjemmeside er en simple concatenering af de to
strenge, der fremkommer ved MH5(brugerid)+MD5(password)
>Det kan jeg også gøre på din login-side, men så bliver alle mine forsøg
>logget.
>
Det kan jeg ikke se er relevant her ... vi taler om at prøve at bryde den
kryptering jeg anvender til at hashe mine passwords. For min skyld kunne du
gøre hjemme ved mig - det ville ikke rigtigt gøre mig noget.
>Nu kan jeg kopiere din hash-værdi, og lave millioner af forsøg på at
>bryde den, uden du på nogen måde kan se det.
>
millioner ? Prøv 2^128 =~ 10^38
>Altså, mit eneste problem er, at finde ud af hvilken algoritme du hasher
>med. Måske er det bare en MD5-sum af kodeordet, måske er af
>"brugernavn:kodeord", men jeg kan jo bare prøve mig frem med de mest
>almindelige.
>
Nej ... for den information /har/ jeg givet dig. Der er intet som helst
hemmeligt i hverken funktioner eller algoritmer.
>Det korte af det lange er, at selv de krypterede passwords skal man
>passe på med. Det er også derfor man i Linux er gået over til "shadow
>passwords". Engang lå det krypterede kodeord sammen med de andre
>brugeroplysninger, som er tilgængelig for alle der har adgang til
>maskinen. Nu er man gået over til at selve kodeordet ligger i en anden
>fil, som kun systemet kan læse.
>
Nej ... det eneste du skal passe på med er, at dit password skal have tilpas
"entropi" for at kunne give tilstrækkeligt med sikkerhed - det vil sige, at
passwordet i sig selv skal have en entropi på i størrelsesordenen 1128 bits.
Hvis man regner med, at man bruger karakterer i "hele" 255-karakterspektret
(hedder det ikke US-ASCII?), så vil det svare til, at man skal have 2^128 /
2^8 = 128/8 = 16 tegn i password for at det giver mening. Dette siger sig
selv - da det ikke giver mening af beskytte et 20 bits password med en 128
bits hashfunktion - da det derved vil være nemmere at foretage et dictionary
attack.
Mht til det med Linux ... kunne det ikke skyldes, at der i hvert fald
tidligere kun blev brugt 7 tegn af passwordet til at udregne hash-værdien
(UNIX)? Det er vel meget rimeligt, at man ikke bare stør omkring sig med
hashværdier på kun 56 bits.
Det er vigtigt at bide mærke i, at jeg bruger en "rigtig" hash-funktion -
dvs en "kryptografisk sikret kollisionsfri hash-algoritme" til at udregne
hash-værdien - og ikke en tilfældig (ikke sikker) hashalgoritme som fx Crypt
() på UNIX.
--
Mary had a scrambler prog, equipped with key recovery, the snoops,
her data, they did log, much to her shock discovery!
(AMAN, 22 September, 1998)
- Jesper Stocholm -
http://stocholm.dk