Ich habe eine Menge dBase-Dateien (.dbf) von einer Legacy-Anwendung geerbt und muss die Daten in MS SQL oder MS Access importieren. Ich weiß, dass diese Programme eingebaute "Import" -Funktionen haben, aber die dBase-Dateien sind mit einem Passwort geschützt, das niemand hier zu kennen scheint.
Wer kennt das Passwort oder knackt das Passwort?
(Bearbeiten: C # tag bc hinzugefügt, das ist die Sprache, die ich wahrscheinlich für jede programmatische Lösung verwenden werde)
Bounty ausgezeichnet: Ich habe noch keine wirklich gute Lösung, aber es dauert nur zwei Stunden, bis die Bounty geschlossen ist. Ich denke, ich sollte es der nützlichsten Antwort bis jetzt geben. Und in dieser Hinsicht denke ich, dass die kostenpflichtige Lösung mit 75 US-Dollar wahrscheinlich die zeit- und energieeffizienteste ist, auch wenn sie mir nicht die intellektuelle Befriedigung gibt, sie selbst zu knacken! :)
Ich werde die Frage in der Zwischenzeit "unbeantwortet" lassen, bis ich sehe, ob eine der Lösungen tatsächlich funktioniert ...
Es gibt wahrscheinlich einen Weg um das Passwort herum, und es gibt sicherlich einen Weg zum Brute-Force-Zugriff, wenn das Passwort nicht umgangen werden kann. Eine Website bietet einen Tipp zum Ändern bestimmter Binärdaten in Ihrer Datei mit einem Hex-Editor zum Deaktivieren des Passwortschutzes: Ссылка . Testen Sie das auf einer Kopie.
Es ist immer noch nicht ganz ungewöhnlich, Instanzen zu sehen, in denen eine Anwendung eine Sicherheitseinstellung respektiert, aber die Sicherheit ist nicht besonders relevant. Fälle würden einschließen, wo die Datei eine Markierung hat, die Schutz kennzeichnet, aber die Daten nicht wirklich verschlüsselt sind. Wenn das oben genannte nicht Ihr Problem löst, öffnen Sie die Datei in einem Hex-Editor und sehen Sie, ob Informationen im Klartext erkennbar sind.
Wenn das nicht funktioniert, würde ich vorschlagen, eine Kopie von John the Ripper zu nehmen und einen Bridge-Code zu schreiben, um die Ausgabe von JTRs Annahmen als Eingabe für die offenen Aufrufe einer dbase-Bibliothek zu verwenden.