Also, wenn eine CPU pro Sekunde 3000 Passwörter berechnen kann, sind es nach einer Minute 180 000, nach 60 Minuten 10,8 Mio, und nach 24 Stunden 259,2 Mio - dann kann es doch nicht sein, dass es Millionen von Jahren dauert, auch wenn es Trilliarden an Möglichkeiten gibt
Und wieder, was alter_Bekannter schon sagte und was auch ich schon mehrfach gesagt habe:
20.896.178.655.943.101.411.324.274.803.736.576 / 260 millionen
= 80.369.917.907.473.474.625.994.752 Tage
Crypto wird so entwickelt, dass du stets mit
gängiger Hardware nicht in absehbarer Zeit die Möglichkeit hast, Schlüssel zu bruteforcen.
Da auf Dauer gesehen die Rechenleistung (noch) stetig steigt, heißt das im Umkehrschluss natürlich auch, dass immer mal wieder Crypto-Algorithmen verbessert oder Schlüssellängen vergrößert werden müssen. Hatte man früher noch Schlüssellängen von <100 bit, so erzeugt man heute gewöhnlich Schlüssel mit 1024, 2048, 4096 bit.
In ein paar Jahren werden es dann Schlüssel mit 8192 bit sein.
Die meisten Angriffe finden auch nicht offline statt, also so, dass der Angreifer direkt das System vorliegen hat (eine Festplatte), sondern online. Zum Beispiel über das Internet. Hierbei kommt natürlich zur Generierung des Passworts auf dem PC auch noch die Übertragung über das Internet und das Warten auf eine (positive oder negative) Antwort. Die allermeisten Dienste verweigern nach mehrfachen fehlerhaften Loginversuchen weitere Anfragen. Man muss dann bspw. 30 Minuten warten, bevor man erneut versuchen kann sich einzuloggen. Entsprechend dauert ein Bruteforce-Angriff länger.
Und das ist eben auch keine 100% konstante, je mehr Daten bei dir erzeugt und auf der Gegenseite verarbeitet werden müssen desto theoretisch langsamer wird dein Angriff. Kommt aber auch darauf an was dort wo du deine Eingabe überprüfen lässt, mit dem Wert gemacht wird. Aber rein praktisch muss eine längere Eingabe verarbeitet werden. Selbst wenn das nur Bruchteile dauert., es wird langsamer weils einfach ein längeres Wort ist was "transformiert" werden muß von der Entschlüsslungssoftware und dann mit dem Schlüssel abgeglichen wird; ohne jetzt darauf einzugehen welche und wieviele Zwischenschritte da noch kommen, was die Prüfzeit auch erhöht und dich als Angreifer künstlich ausbremsen kann. Das heißt deine CPU kann selbst mit viel Performance im Leerlauf sitzen wenn die Anfrage nicht "direkt" (zeitlich) beantwortet wird.
Der Faktor, dass schlicht längere Schlüssel mehr Zeit benötigen, um verarbeitet zu werden, ist keineswegs zu missachten. Selbst wenn es sich bei einem Schlüssel nur um wenige Nanosekunden handelt, so muss man beachten, dass ein Bruteforce-Angriff mehrere Milliarden/ Billiarden Schlüssel generiert, für die alle ein paar Nanosekunden anfallen. Aus Nanosekunden werden so schnell Stunden und Tage.
Abgesehen davon sollte man auch bedenken, dass bei einem auf Hochbetrieb laufenden System die Temperatur ansteigt. Während ein "gut gekühltes" System deutlich schneller arbeiten kann, sinkt die Arbeitsgeschwindigkeit deutlich mit steigender Temperatur. Auch das verlangsamt den Bruteforce-Angriff, pro generiertem Schlüssel um wenige Nanosekunden, auf Milliarden und Billiarden Schlüssel eben wieder um Stunden und Tage.