TrueCrypt Datei auf einem USB-Stick - Passwort teilweise vergessen

tnoay schrieb:
@
joe2100
wie kommst du eig. auf 3,2 mrd?

Oh, da habe ich mich vertan, es sind genau 1.302.061.344 Möglichkeiten.

Ein Wort 12 Möglichkeiten, 2 Wörter 132 Möglichkeiten (12x11), 3 Wörter 1320 Möglichkeiten (12x11x10) .... 12 Wörter 479.001.600 Möglichkeiten und alles addieren.
 
Naja wenns aber von 4 losgeht musst nun 12 und 132 und 12x11x10 abziehen .
 
joe2100 schrieb:
Ich meine irgendwo gelesen zu haben, dass ca 270000 Passwörter in der Sekunde geprüft werden können. Wenn ich jetzt die Hälfte (ca 130000) annehme sind das bei 3,2 Mrd. gerade mal 7 Stunden.

Das Programm TCBrute2 lade ich mir runter, erstelle eine Textdatei mit den Kombinationen und lehne mich zurück? Kann mir das jemand erläutern?
Lies doch einfach das Handbuch zu TCBrute2.




Hätte ich ein Passwort mit 5 Buchstaben, die ich kenne, wären es 120 Kombinationen. Mein Passwort besteht wahrscheinlich aus 6-8 Buchstaben (aus einem Pool aus 12). Bei 9 Wörter (Buchstaben) sind es 362880 Kombinationen - also für einen Rechner keine wirkliche Herausforderung. Es geht mir hauptsächlich um ein Programm, das dies bewerkstelligen kann. Einfach ausgedrückt Programm starten, meine vorbereitete Textdatei (Jedes mögliche Passwort in einer Zeile) angeben und nach xx Zeit mein vergebenes Passwort auf dem Schirm sehen. Ist wirklich vereinfacht ausgedrückt, jedoch so trivial ist es in meinem Fall.

Kann hier jemand kurz skizzieren wie ich vorgehen soll....

Ich hatte mal einen ähnlichen Fall wie deiner, nur hatte ich keine Wörter, sondern mein Passwort habe ich aus einem Algorithmus gebildet und bei dem Algorithmus war ich mir nicht mehr sicher, wie genau der das Passwort gebildet hat.

Also musste ich ein paar Tausend Kombinationen durchprobieren.
Dafür habe ich dann ein Programm in C geschrieben, dass mir gemäß einiger Algorithmusvarianten und verschiedener Zeichen immer ein Passwort bildet und dann mit einem system() Aufruf das Kommandozeilenprogramm von Truecrypt mit übergebenem Passwort aufruft, um das Passwort dann zu testen.
Wenn der Passworttest erfolgreich war, das TC Volume also gemountet wurde, war mein Passwort gefunden und mein C Programm beendete sich.

Mit dieser Methode ist es mir dann auch wieder gelungen, an mein Passwort zu kommen.
Der Rechner hat dafür AFAIK ca. 5 Minuten gebraucht um ein paar hundert Kombinationen durchzugehen.


Das eigentliche Problem war aber, dass die Übergabe mittels system() Aufruf und jedesmal ein Aufruf von Truecrypt nicht die schnellste ist. Ein Programm dass das PW direkt am verschlüsselten Header im RAM testet, ist mit Sicherheit wesentlich schneller.
Eine Parallelisierung um mehrere Kerne zu nutzen wäre sicher ebenfalls möglich.
TCBrute2 könnte so eines sein, ich kenne mich mit diesem Programm aber nicht aus.


Das was du also machen willst, halte ich prinzipiell für möglich.
Insbesondere dann, wenn du dich noch an die Wörter erinnern kannst.

Sollte aber nur ein Wort fehlen, dann wird es aufwendiger, denn dann müßtest du einen Wörterbuchangriff starten, dass an der Stelle alle Wörterbücher der Sprache, die in Frage kommen, durchprobiert.
Generell halte ich ein Passwort, dass nur aus bekannten Wörtern besteht, nicht für besonders sicher.
Denn es gibt Wörterdatenbanken, die Deutsche Sprache besteht nur aus ca. 75000 Standardwörtern.
Das macht 75000^n Möglichkeiten, wobei n die Anzahl der im Passwort verwendeten und aneinandergereihten Wörter ist.
Wenn die Wörter aber bekannt sind, und die Anzahl der möglichen Wörter nur 12 beträgt, dann reduziert sich die Anzahl der Möglichkeiten drastisch auf 12^n Möglichkeiten.
Hat dein Passwort also nur 4 Wörter insgesamt aus einem Wortschatz von 12 Wörtern, dann sind das 12^4=20736 mögliche Kombinationen.
Sollte das Passwort aber noch ein 5. Wort haben, dass du vergessen hast, also nicht in deinem Wortschatz von 12 Wörtern vorkommt,
dann sind es, falls du zumindest noch weißt, dass das 5. Wort ein deutsches Wort ist ca.
12^4*75000= 1555200000 Möglichkeiten

Mit jedem weiteren unbekannten Wort erhöht sich die Anzahl der Möglichkeiten drastisch.
Bsp:
12^n*75000^k

k ist die Anzahl der unbekannten deutschen Wörter.
Die 75000 stehen für den Standardwortschatz der deutschen Sprache.
Die 12 ist die Anzahl der Wörter, die dir bekannt sind.
n ist die Anzahl der Wörter die im Passwort vorkommen, abzüglich der Anzahl der im PW verwendeten unbekannten Wörter.


Um nochmal zum ersten Beispiel zurückzukommen, diese Zahl mit 1555200000 Möglichkeiten bei nur einem unbekannten 5. Wort lässt sich aber nochmals drastisch reduzieren, wenn du z.B. noch weißt, dass das Wort nur ein Substantiv sein kann.
Dann verkleinert sich der mögliche Wortschatz für das 5. Wort nochmals deutlich.


Die Suche so gut es eben geht einzuschränken ist also das sinnvollste was du machen kannst.
Und um die ganze Suche noch schneller zu machen, wäre es am sinnvollsten, wenn du zuerst die Wortkombinationen durchgehst,
deren Wörter am Wahrscheinlichsten für das Passwort sind.
Das Programm sollte aber danach nicht beendet werden, wenn es nichts gefunden hat, sondern danach sollte das Programm die Wortkombinationen dann nur automatisch erweitern, so dass du dir einen kompletten Neudurchlauf nach dem bereits gesuchten ersparst.


Möglichkeiten wie du das Lösen kannst gibt es viele.
Du hast davon geschrieben, die Wörterkombinationen in eine Textdatei zu schreiben und die Wortkombinationen dann Zeile für Zeile in der Textdatei durchlaufen zu lassen.
Das könntest du natürlich machen, mit einem Script, dass Zeile für Zeile die Textdatei durchläuft und dann Truecrypt aufruft wäre dies lösbar.
Nur würde ich das nicht machen, denn die Wortkombinationen zuerst in eine Textdatei zu schreiben und dann diese wieder alle auszulesen um dann jedes Wort durchzuprobieren kostet natürlich auch Zeit.
Stattdessen kannst du die Wortkombinationen von einem Programm auch on the fly zur Laufzeit bilden lassen, du müßtest dann nur dem Programm mitteilen, aus welchen Wörtern der Wortschatz besteht.
Programme die das können gibt es sicherlich.


Falls TCBrute2 aber eine Liste mit Kombinationen von Wörtern als Textdatei benötigt, wäre es dennoch am sinnvollsten, so eine Textdatei
einfach automatisiert mit einem kleinen Programm in Java oder irrgendeiner Scriptsprache wie z.B. Python erstellen zu lassen.
Denn dadurch sparst du dir den Weg herauszufinden, wo TC den verschlüsselten Header ablegt und wie der Verschlüsselungsalgorithmus anzuwenden ist, denn diese Arbeit hat TCBrute2 für dich bereits gemacht, auch sparst du dann den anderen Weg, den z.B. ich verwendet habe, Truecrypt per langsamen system() Aufruf aufzurufen.
Ergänzung ()

joe2100 schrieb:
Ein Wort 12 Möglichkeiten, 2 Wörter 132 Möglichkeiten (12x11), 3 Wörter 1320 Möglichkeiten (12x11x10) .... 12 Wörter 479.001.600 Möglichkeiten und alles addieren.


Ja, vorrausgesetzt, jedes Wort kommt nur einmal vor.
In meinem Beispiel oben habe ich das nicht berücksichtigt. Hier gehe ich vereinfacht davon aus, dass ein Wort auch mehrmals vorkommen kann. :)
 
Zuletzt bearbeitet:
PC_Geek schrieb:
* Überflüssiges Zitat editiert! *

Jedes Wort kommt nur max einmal vor. Ein Wort ist nicht dem Duden entnommen, z.B. Wäre "!Xvgf3#%jju" ein mögliches Wort.

Das mit dem Handbuch lesen ist sone Sache, da mich mein Englisch nicht wirklich weiterbringt -oder gibt es eine deutsche Übersetzung?
 
Zuletzt bearbeitet von einem Moderator:
Zurück
Oben