Wie wird der Schlüssel zu einer Datei mit OpenSSL angezeigt?

634
user577439

Ich bin ein Neuling in der Verschlüsselung, also könnte ich etwas Hilfe gebrauchen:

Ich versuche, einem Tutorial auf der MariaDB-Website zu folgen, um einen aes-256-cbc-Schlüssel zum Verschlüsseln meiner ruhenden Daten zu erstellen.

Die Zeile, in die ich kopieren und einfügen soll, lautet:

enc -aes-256-cbc -md sha1 -k secret -in keys.txt -out keys.enc 

Was mir in diesem Fall dies zurückgegeben hat.

Salted__›­}´3`ìe›‚Å)l‘»ŽWݧ 

Ich brauche es nicht.

Wenn ich den Druckbefehl verwende, wird der von mir benötigte Schlüssel ausgedruckt. Der Schlüssel ist jetzt zu lang, um ihn von Hand zu kopieren, daher muss ich die Schlüsselausgabe in eine Datei umleiten. Kann mir jemand helfen, den richtigen Befehl zum Schreiben des Schlüssels in die Datei zu schreiben?

Der Schlüssel sieht ähnlich aus:

770A8A65DA156D24EE2A093277530142 

BEARBEITEN: Ich kann auch nicht von der CMD-Eingabeaufforderung kopieren.

2
Wenn Sie möchten, dass die Ausgabe von "-p" / "-P" in eine Datei geschrieben wird, können Sie etwas wie "enc ...> name.txt" tun. Tom Yan vor 8 Jahren 0
Zum ** Kopieren von der Windows CMD-Eingabeaufforderung ** (eigentlich Konsolenfenster) klicken Sie auf das Symbol links neben der Titelleiste (oder ALT + SP) oder klicken Sie mit der rechten Maustaste auf eine beliebige Stelle in der Titelleiste. Wählen Sie Bearbeiten / Markieren. Halten Sie die Maus gedrückt, während Sie über den gewünschten Text ziehen ODER auf ein Ende klicken und dann auf das andere Ende klicken. drücke Enter. dave_thompson_085 vor 8 Jahren 1
* "Außerdem kann ich nicht von der CMD-Eingabeaufforderung kopieren ..." * - Sie müssen den *** Quick Edit-Modus aktivieren. Siehe auch [QuickEdit-Modus der Eingabeaufforderung ist standardmäßig deaktiviert] (https://support.microsoft.com/en-us/kb/282301) auf MSDN. jww vor 8 Jahren 0

1 Antwort auf die Frage

2
Tom Yan

Der von Ihnen verwendete Befehl verschlüsselt die Datei keys.txtmit einem Schlüssel, der aus der von secretIhnen angegebenen Passphrase ( ) generiert wurde (und einem zufällig generierten "Salt", sofern Sie nicht auch die -nosaltOption verwenden).

Ich bin mir nicht sicher, was Sie wirklich wollen. Wenn Sie möchten, dass openssl den aus Ihrer Passphrase generierten Schlüssel / für die Verschlüsselung anzeigt, können Sie die Option verwenden -p(oder -Pwenn die tatsächliche Verschlüsselung nicht fortgesetzt werden soll). Sie werden feststellen, dass sich der Schlüssel bei jeder Ausführung des Befehls ändert, sofern Sie ihn nicht verwenden -nosalt.

Oder vielleicht möchten Sie das, was Sie wollen -base64(obwohl dies gemäß dem angezeigten Ergebnis nicht der Fall zu sein scheint), wodurch die verschlüsselte Datei mit einem bestimmten Algorithmus weiter codiert wird, sodass die Ausgabe als ASCII-Zeichenfolge ausgegeben wird: https: // de.wikipedia.org/wiki/Base64

Wie Sie vielleicht bereits bemerkt haben, wenn Sie nicht möchten, dass die Quelle mit einem "Salt-Header" "kontaminiert" wird, möchten Sie möglicherweise auch, -nosaltwenn Sie sie verwenden -base64.

Wenn Sie nur einen zufälligen Schlüssel wünschen, sollten Sie Folgendes tun:

enc -aes-256-cbc -pass file:/dev/urandom -P 

Übrigens, wenn Sie -p/ verwenden -P, sehen Sie neben a key(und a salt) auch ein iv, das für Initialisierungsvektor steht .