Welcher Algorithmus in Verbindung mit wie langem Passwort ist wie sicher?

Hallo zusammen,

ich habe ein paar ganz Konkrete Fragen zur Verschlüsselung! Und zwar möchte ich TrueCrypt verwenden in Verbindung mit AES und Blowfish da es als besonders sicher gilt, mir ist allerdings nicht ganz klar wie sicher!
Ich meine damit wie lange ein Handelsüblicher 3GHz PC mit Brute a Force Theoretisch benötigen würde um das Passwort zu brechen?

Man hört ja immer von Zahlen ? dass ein ?normaler? Supermarkt Computer teilweise 100 Jahre benötigen würde. Das hört sich auf den Blick ziemlich lange an, wenn man jetzt allerdings überlegt das ein Supercomputer z.B. der ?BlueGene/L? http://www.stern.de/computer-technik/computer/:Supercomputer-Schnell,-BlueGene-L/549419.html
35.000 x schneller ist als ein Supermarkt Computer bedeutet das, dass dieser Theoretisch einen Code für den einer Normaler Computer 100 Jahre braucht, nur einen Tag benötigen würde.

Um das mal kurz vor zu Rechnen:
100 Jahre braucht ein Normaler Supermarkt PC also sind das in Tage
100 x 360 das macht 36.000 Tage.

Ein Supercomputer ist 35.000 Fache schneller, was wiederum bedeutet:
36.000 : 35.000 = 1, 02857 ?also innerhalb von einem Tag würde so ein Supercomputer diese Verschlüsselung gebrochen haben.

Ich weiß nur nicht wie man Mathematisch eine Jahreszahl berechnet, es ist doch Primär davon abhängig wie ?gut? und lang das Passwort gewählt ist und nicht ob man AES, Blowfish oder Serpent oder sogar einen Mix aus allen dreien verwendet?

Um mal auf das Passwort zu kommen, um es zu vereinfachen gehe wir davon aus, dass das Passwort aus Groß und Kleinbuchstaben inkl. Zahlen besteht, also 26 + 26 + 10 = 62 Möglichkeiten Pro Zeichen.

Also mit einer Passwortlänge von:
x^n
um es mal an einem Beispiel aufzuzeigen?

62^1 Zeichen = 62 Möglichkeiten

62^10 Zeichen = 839.299.365.868.340.000 Möglichkeiten

62^30 Zeichen = 591.222.134.364.399.000.000.000.000.000.000.000.000.000.000.000.000.000 Möglichkeiten

62^64 Zeichen = 5.164.973.859.965.250.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000 !!! Wohlgemerkt ohne Sonderzeichen! :-O

Weil 64 Zeichen die maximale Passwortlänge ist die TrueCrypt anbietet habe ich diese mal mit aufgeführt ? was mich jetzt Interessieren würde, ist so etwas überhaupt Theoretisch möglich von einen Supercomputer zu brechen in einer annehmbaren Zeit?

Kann mir jemand mal eine Formel geben wie man berechnet wie lange ein Computer für X Möglichkeiten benötigt, weil man ja nicht einfach den Prozessor Takt als einzigen Indikator verwenden darf, weil ein Brute a Force Code x mal verschiedene Funktionen hintereinander aufruft und mehrere Prüfungen durchführt und somit mehr als ein Prozessor Takt in Anspruch genommen wird. Ich hoffe ihr versteht wie ich das meine?

Wäre nett wenn mir jemand weiterhelfen könnte

Schönen Grüße
 
Sagen wir, der BlueGene/L kann mit einem FLOP, einen Schlüssel testen und wir nehmen weiter einen Schlüssel der Länge 64 mit möglichen 62 verschiedenen Zeichen an. Er würde dann für alle Möglichkeiten immernoch 5,837*10^92 Jahre brauchen...
Bzw, da du auf ausgeschriebene Zahlen stehst:
5836787124058435223997648434957333796784100961476325149357238896045042657516286730317196075232

Wobei hier natürlich völlig ausser acht gelassen wurde, mit wievielen Schlüssel zB AES überhaupt arbeitet! (128, 192 oder 256 Bits) bei 256 wären es dann immernoch knapp 10^55 Jahre...

Also mit der heutigen PC-Technologie nicht zu knacken... aber evtl mit einem Quantencomputer, wenn er denn mal richtig funktioniert. Er würde einfach alle Möglichkeiten aufeinmal berechnen... 8)
 
Original von lagalopex
Also mit der heutigen PC-Technologie nicht zu knacken... aber evtl mit einem Quantencomputer, wenn er denn mal richtig funktioniert. Er würde einfach alle Möglichkeiten aufeinmal berechnen... 8)

Mit nem Quantencomputer nicht nur eventuell - wenn er denn mal funktioniert =)
 
und das sogar sehr schnell. irgendwo hab ich mal gelesen, dass der die lösung schon hat bevor man ihn startet (die korrekte konfiguration der fragestellung natürlich vorausgesetzt). aber ich vermute mal bis die technologie so weit ist, wird es noch ne weile dauern, auch wenn wobei es ja bereits den ersten quantencomputer gibt. aber da muss noch viel entwickelt werden in dem bereich
 
Ihr müsst bedenken, dass die Zeiten, die ihr hier berechnet die Zeiten sind, die die Computer jeweils im Worst-Case brauchen. Das heißt, wenn man Pech hat ist der Schlüssel gleich beim ersten Versuch geknackt.

MfG
justj
 
Ja. Also im Durchschnitt wird er nur die halbe Zeit brauchen... aber nach dieser Zeit, hat er das Ergebnis garantiert!
Und damit er es nicht schon im ersten Versuch knackt, sollte man schonmal auf jedenfall einen zufälligen Schlüssel verwenden... denn mit ganz ganz viel Glück, kann man alles im ersten Versuch knacken ;)
 
Ihr müsst bedenken, dass die Zeiten, die ihr hier berechnet die Zeiten sind, die die Computer jeweils im Worst-Case brauchen. Das heißt, wenn man Pech hat ist der Schlüssel gleich beim ersten Versuch geknackt.
Jep... solche Jahresberechnungen sind "komisch" ;)

Man bedenke einfach die Rechenkapazität vor 8-9 Jahren (da waren noch 300/400 Mhz das Neuste vom Neusten) und wie sie gewachsen sind (nicht nur die MHZ sondern auch die Optimierungen und Register"vergrößerung" (SSE2/3 bzw 64-Bit Prozessoren usw. ) - dann bitte schon die Tendenz mitrechnen.
Insbesondere die speziell darauf getrimmte Hardware dürfte noch schneller vorgehen:
http://www.copacobana.org/ (jetzt nur als Beispiel).
 
Hallo,
also normale (moderne) Supermarkt-Compzter schaffen ca. 20 Mio. Keys/Sekunde. Dann einfach die Kombinationen ausrechnen und dies durch 20 Mio. Teilen.
Dann noch durch (3600*24*365) teilen für Jahre.

Da bekommst du dann meistens sehr große Zahlen raus, und selbst mit 1 Mrd. "normalen" Computern würde es immer noch ewig dauern (bei guten PWs), denn pro zusätzlichem Zeichen erhöht sich die Anzahl an Kombinationen um den Faktor 62.

Original von lagalopex
. aber evtl mit einem Quantencomputer, wenn er denn mal richtig funktioniert. Er würde einfach alle Möglichkeiten aufeinmal berechnen...
Diese Aussage ist leider falsch.
Ein Quantencomputer kann große Zahlen sehr leicht faktorisieren (Komplexilität wächst linear zur verwendeten Key-Länge, also 2048 Bit Zahlen zu faktorisieren wäre nur doppelt so rechenintensiv wie 1024 Bit Keys. Bei heutigen Computern wächst der Zeitaufwand exponentiell zur Key-Länge) ) , so das alle asymmetrischen Verfahren hinfällig werden.
Dies trifft aber nicht die symmetrischen Verfahren.

Erst recht stellt man sich 256 Bit Keys (2,3*10^77 Möglichkeiten) vor.
Angenommen wir könnten quantenmechanische Effekte ausnutzen, die ein Elektron zur Dechiffriereinheit umfunktioniert, und jedes Elektron mit einer Taktfrequenz von 10^15 Hz arbeitet (das entspricht bereits der Frequenz von harten Röntgenstrahlen!). Dann müsste der so konstruierte Wundercomputer, der diese Aufgabe innerhalb 1 Jahres löst, eine Masse von 10^28g haben, (ein Elektron wiegt etwa 10^-27g), also wäre der Computer ca. so schwer wie die Erde.
Ersetzen wir die Elektronen durch Molekühle, landen wir beim Gewicht bei ca. 10^33g und das entspricht einer Sternenmasse. Bei unseren heutigen Vorstellungen würde der Computer dagegen so schwer sein, dass er ein schwarzes Loch bilden müsste, innerhalb unsere Aufgabe vielleicht gelöst würde, doch das Resultat könnten nie mehr nach außen dringen, wie es bei schwarzen Löchern so üblich ist.

Orginal in Abenteuer Kryptologie von Reinhard Wobst
 
Vielen dank für die Informativen Antworten.

Ich fasse das mal in meinen Worten zusammen:

Ein Passwort zu brechen das aus 64 Zufälligen Zeichen Groß-/ Kleinschreibung inkl. Ziffern besteht ist nahezu ?nicht? möglich in einer akzeptablen Zeitspanne. Auch mit Supercomputern wie sie nur Regierungen bzw. Geheimdiensten zur Verfügung stehen.
Die Wahrscheinlichkeit das ich mehrmals hintereinander im Lotto den Jackpot Knacke würde höher sein.

Was ich bis jetzt noch nicht so wirklich begriffen habe ist, in wie fern ist der verwendete Algorithmus ausschlaggebend?

Um das mal ganz Konkret zu formulieren:

Ich verwende zwei verschiedene Algorithmen in TrueCrypt:

A) Serpent
B) eine Kaskade aus AES und Blowfish


In beiden Verschlüsselungsalgorithmen verwende ich das gleiche Passwort. Vom Verstand her denke ich das Version B die bessere ist. Allerdings weiß ich nicht so wirklich warum.

Bzw. ich stelle mir das so vor das man bei Version A ?nur? einmal alle Möglichkeiten Versuchen muss. Und bei Version B einmal die erste Möglichkeit aus AES mit allen Möglichkeiten aus Blowfish, dann wieder von vorne also zweite Möglichkeit von AES dann wieder alle Möglichkeiten aus Blowfish testen. So ?ähnlich? wie zwei For Schleifen ineinander. Sehe ich das ungefähr Richtig?

Schönen Gruß

Patrick
 
Hallo,
Original von die-FreSSe
Was ich bis jetzt noch nicht so wirklich begriffen habe ist, in wie fern ist der verwendete Algorithmus ausschlaggebend?
Sehr wichtig.




Und bei Version B einmal die erste Möglichkeit aus AES mit allen Möglichkeiten aus Blowfish, dann wieder von vorne also zweite Möglichkeit von AES dann wieder alle Möglichkeiten aus Blowfish testen. So ?ähnlich? wie zwei For Schleifen ineinander. Sehe ich das ungefähr Richtig?
Ne leider total falsch. TrueCrypt hat bestimmt einen Mechanismus zu überprüfen, ob ein PW richtig oder falsch ist. Dies kann ein Hashwert am Anfang des Containers sein oder eine Prüfsumme am Anfang oder am Ende des Containers. Dies ist auch nicht weiter schlimm, beeinträchtigt die Sicherheit nicht weiter.
Wenn man jetzt die Prüfsumme hat kann man recht schnell testen, ob ein PW richtig oder falsch ist und man muss nicht erst den gesamten Container entschlüsseln und dann versuchen den zu mounten (bei falschem PW würde es fehlschlagen).
Auch ein Angreifer kann gleich testen, ob ein PW richtig oder falsch ist, aber bei einem guten PW ist das kaum relevant.

Dein Fall würde nur eintreffen, wenn du den Inhalt zuerst mit AES und dem Key A verschlüsselst, und dann das ganze nochmal mit Blowfish und dem Key B. Allerdings erhöht dies eigentlich kaum/nicht die Sicherheit.


Der Algorithmus ist soweit relevant, dass ein super Passwort keine Sicherheit birgt, wenn der Algorithmus schlecht ist, bzw. dieser eine Lücke aufweist.
Bei einer polyalphabetischen Substitution (altertümlicher Algorithmus) kann man einen Key aus 1000 zufälligen Buchstaben benutzen, dennoch kann ein "Supermarkt" Computer einen Text der damit verschlüsselt wurde in unter 1 Sekunde knacken. Selbst eine drastische Erhöhung des PW Länge (z.B. 1 Mio Zeichen) würde nicht weiter helfen.
Darum ist es wichtig, dass der Algorithmus keine Anfälligkeiten aufweist, wie es bei allen alten Verfahren heute der Fall ist.
Natürlich kann keiner in die Zukunft sehen, und evt. wird morgen AES geknackt so dass man es auch ohne Key entschlüsseln kann, allerdings ist dies eher unrealistisch, denn viele Experten haben den Algorithmus auf Schwachstellen untersucht und soweit nichts gefunden. Aber wer weiß, evt. findet ein Genie eine neue Attacke und bricht damit viele bekannte Verfahren.


Also persönlich würde ich dir zu Methode B raten. Blowfish und AES sind beides bekannte Verfahren, die relativ verschieden arbeiten und soweit keine Anfälligkeiten aufweisen (Serpent auch nicht, ist aber eher unbekannter).
Sofern die Kaskade richtig verwendet wird, kann es sogar sein, dass ein Attacke auf Blowfish oder AES keinen Einfluss auf die Sicherheit deines Containers hat.
 
Hallo

das "Problem" mit TrueCrypt ist die Begrenzung des Passes auf 100 Stellen. Eine Cascade hat eine Stärke von 756 bit, ein entsprechendes ASCII Passwort mit höchster Entropie, also ein völlig zufälliges passwort, müßte 116 Zeichen haben (jedes zufällige Zeichen hat eine Entropie von 6,5). Ein Pass wort mit bekannten Wörtern müßte außerdem noch viel länger sein, um einen echten 756 bit Masterkey daraus zu machen.

ach ja, der erste kommerzielle Quantenrecher kurz vor der Markteinführung:
http://www.dradio.de/dlf/sendungen/forschak/594967/
 
Zurück
Oben