Sam: WEP Schlüssel so ok?

Moin

ich abe mir in PHP schnell diese Funktion geschrieben um einen 128bit WEP Schlüssel zu erstellen. Werden so halbwegs sichere Schlüssel generiert oder ist das lächerlich, sowas selbst erstellen zu wollen?

function create_wep() {

srand( (double)microtime() * 1000000);

$final_wep = strtoupper(substr(md5(rand()), 0, 26));

return $final_wep;
}

Gruß, Sam

  1. Hallo,

    Wenn die Zufalls-Funktion einigermaßen zufällige Zahlen erzeugt (ausprobieren!),
    sollten auch die Schlüssel zufällig und damit sicher werden.

    Gruß
    Alexander Brock

    --
    Selfcode: ss:{ zu:| ls:# fo:| de:] va:} ch:? sh:( n4:? rl:? br:> js:) ie:{ fl:| mo:}
    Deshalb können Pinguine nicht fliegen:
    Was nicht fliegt kann auch nicht abstürzen
    1. Also rein optisch sieht der Schlüssel jedes Mal komplett anders aus.

      1. Hallo Sam,

        Also rein optisch sieht der Schlüssel jedes Mal komplett anders aus.

        Dann meine ich, dass er den Kriterien für einen vernünftigen Schlüssel,
        der ja eigentlich "nur" ein Passwort ist, voll und ganz entspricht,
        wenn nicht "zufälligerweise" ein Schlüssel mit lauter gleichen Zeichen herausgekommen ist.

        Gruß
        Alexander Brock

        --
        Selfcode: ss:{ zu:| ls:# fo:| de:] va:} ch:? sh:( n4:? rl:? br:> js:) ie:{ fl:| mo:}
        Deshalb können Pinguine nicht fliegen:
        Was nicht fliegt kann auch nicht abstürzen
        1. wenn nicht "zufälligerweise" ein Schlüssel mit lauter gleichen Zeichen herausgekommen ist.

          damit würde ich ins Buch der Rekorde kommen :)

          1. wenn nicht "zufälligerweise" ein Schlüssel mit lauter gleichen Zeichen herausgekommen ist.

            damit würde ich ins Buch der Rekorde kommen :)

            Ja, die Wahrscheinlichkeit ist 1 : 340.282.366.920.938.000.000.000.000.000.000.000.000

            In Worten: eins zu dreihundertundvierzig Sextillionen

            Gruß
            Alexander Brock

            --
            Selfcode: ss:{ zu:| ls:# fo:| de:] va:} ch:? sh:( n4:? rl:? br:> js:) ie:{ fl:| mo:}
            Deshalb können Pinguine nicht fliegen:
            Was nicht fliegt kann auch nicht abstürzen
    2. Hallo Sam und Alexander!

      Wenn die Zufalls-Funktion einigermaßen zufällige Zahlen erzeugt (ausprobieren!),

      Sich visuell einzelne ergebnisse anzuschauen ist sinnlos ;-) - die werte schauen immer anders aus

      eine einfache möglichkeit zu überprüfen ob die angeblichen zufallszahlen halbwegs stochastisch sind, ist folgende:
      x) erzeuge so 10.000 zufallszahlen (oder mehr) zwischen 0 und 1
      x) erstelle ein historgramm mit einer schrittweite pro balken von so 0.01 oder 0.005 (einfach etwas herumprobieren)

      Dieses ergebnis kann man dann visuell analysieren - es sollte sollten alle Werte gleich verteilt sein - ein typischer fehler eines schlechten zufallsgenerator ist, daß es sich bei 0 und 1 die werte häufen, oder wenn irgendewie eine glockenkurve zu sehen ist...

      Abgesehen von der visuellen betrachtung, kann man sich zB den mittelwert von den zufallszahlen ausrechnen - sollte dann ziehmlich genau 0.5 sein.

      Auch einen blick auf den sourcecode für die generierung der zufallszahlen kann sinnvoll sein. wenn wird die zahl erzeugt indem sie durch einen crc geschickt wird, dann wiederholen sich die zahlen irgendwann (schleife) - ist dann die frage, ob die ordnung des polynoms, das den crc bildet, hoch genug ist bzgl. der gewünschten sicherheit

      ich hoffe das hilft.

      CU Roman