molily: Statt md5(str) - Das, was heise vorschlug in einf. Code gegossen

Beitrag lesen

Hallo,

Wenn man mit srand() seedet, erzeugt rand() immer die gleiche Zufallszahlenreihenfolge.

Ich sehe ganz deutlich das Wort "wenn". Ich sah in meinem Beispiel kein srand().

»The random number generator is seeded automatically.« (http://de2.php.net/rand)

Im PHP-Code:

if (!BG(rand_is_seeded)) {  
    php_srand(GENERATE_SEED() TSRMLS_CC);  
}

#define GENERATE_SEED() (((long) (time(0) * getpid())) ^ ((long) (1000000.0 * php_combined_lcg(TSRMLS_C))))

php_combined_lcg

selbst ETWAS wie ein simples

srand(microtime(true) - intval(str_replace(' ','', str_replace('.','', file_get_contents('/proc/uptime')))));


> dürfte einen Angreifer vor erhebliche Probleme stellen.  
  
Etwas ähnliches macht PHP intern, siehe oben.  
  
Trotzdem ist es relativ einfach, den Seed des Zufallszahlengenerators herauszubekommen, siehe bspw. <http://crypto.di.uoa.gr/CRYPTO.SEC/Randomness_Attacks_files/paper.pdf> und <http://blog.ptsecurity.com/2012/08/not-so-random-numbers-take-two.html>. Von solchen Attacken habe ich immer wieder gehört.  
  
Und wieder ist die Moral von der Geschicht’: Verwende (mt\_)rand() für Krypto nicht.  
  
Mathias
0 55

Unterschied zwischen Firefox und anderen Browsern?

Klaus
  • browser
  1. 0
    Matze
    1. 0
      molily
      1. 0
        Matze
        1. 0
          Klaus
          1. 0
            Matze
            1. 0
              Klaus
              1. 0
                Matze
  2. 0
    Felix Riesterer
    1. 0

      Zustimmung: Einfach MD5-gehaschte Passwörter sind unsicher

      Jörg Reinholz
      • programmiertechnik
      1. 0
        Klaus
        1. 0
          Matze
          1. 0
            Klaus
          2. 0
            MudGuard
        2. 2
          molily
          1. 0
            Klaus
            1. 0

              Statt md5(str) - Das, was heise vorschlug in einf. Code gegossen

              Jörg Reinholz
              1. 0
                molily
                1. 0
                  Jörg Reinholz
                  1. 0
                    Jörg Reinholz
                  2. 2
                    molily
                    1. 0
                      molily
                    2. 0
                      Jörg Reinholz
                      1. 0
                        molily
                        1. 0
                          Jörg Reinholz
                          1. 1
                            dedlfix
                            1. 0
                              Jörg Reinholz
                              1. 0
                                molily
                                1. 0
                                  molily
                                  1. 0
                                    Jörg Reinholz
                                2. 0
                                  Jörg Reinholz
                              2. 1
                                Sven Rautenberg
                                1. 0
                                  Jörg Reinholz
                        2. 0
                          Jörg Reinholz
                          1. 2
                            molily
                            1. 0
                              Jörg Reinholz
                              1. 0

                                Kostenloses Bildungsangebot

                                molily
                                1. 0
                                  molily
                                  1. 0

                                    Unbrauchbares Bildungsangebot

                                    Jörg Reinholz
                                  2. 0

                                    Kostenloses Bildungsangebot - jetzt für Dich

                                    Jörg Reinholz
                                2. 0

                                  Kostenloser Hinweis auf Deinen Denkfehler

                                  Jörg Reinholz
              2. 0
                Der Martin
              3. 1
                Sven Rautenberg
                1. 0
                  Matthias Apsel
    2. 0

      Verschlüsselung clientseitig. Kann mir das mal einer erklären ?

      Siri
      1. 0
        misterunknown
        1. 0
          Siri
      2. 0
        Jörg Reinholz
        1. 0
          Siri
      3. 0

        Noch ne Frage: Wo wird eigentlich der Schlüssel hinterlegt?

        Siri
  3. 0
    Jörg Reinholz
    1. 0
      Klaus
  4. 0
    molily
    1. 1

      Session-Konfiguration

      Matze
    2. 0
      Klaus