Wie verschlüssle ich Dateien mit OpenSSL und AES-256 mit SHA-256?

2007
Vlastimil

System: Linux Mint 18.3 Cinnamon 64-Bit.

OpenSSL: 1,0,2 g

Normalerweise würde ich eine Datei folgendermaßen verschlüsseln:

openssl enc -aes-256-cbc -salt -in somefile -out somefile.enc 

Aber ich frage mich, mit welchem ​​Algorithmus ich mein Passwort hasse und ob ich es ändern kann?

0
Dupe https://superuser.com/questions/455463/openssl-hash-function-for-generating-aes-key, außer dass das bis jetzt veraltet war; Weitere Informationen finden Sie unter https://crypto.stackexchange.com/questions/3298/is-there-a-standard-for-openssl-interoperable-aes-encryption. Beachten Sie, dass jeder einzelne Hash ein fehlerhaftes PBKDF ist. SHA-256 ist nicht merklich besser als MD5. Und "-salt" ist seit über einem Jahrzehnt, fast zwei, der Standard. dave_thompson_085 vor 6 Jahren 0
@ dave_thompson_085: OpenSSL _ verwendet ein KDF anstelle eines einfachen Hash, obwohl es immer noch einheimisch und eher schwach zu sein scheint (siehe EVP_BytesToKey). grawity vor 6 Jahren 0
@grawity meine antwort auf das krypto-QI erklärt dies ausführlich. EVP_BytesToKey ist ein Tweak von PBKDF1 von PKCS5, aber die Befehlszeilen-Encoder verwenden EVP_BytesToKey mit Iterationszähler 1, so dass nur ein einzelner Hash pro Ausgabeblock ausgeführt wird. Iteriert jedoch nicht wie PBKDF. Der Bär stimmt zu: https://security.stackexchange.com/questions/29106/openssl-recover-key-and-iv-by- by-passphrase dave_thompson_085 vor 6 Jahren 1
Vlastimil: Sie benutzen das nicht für kugelsichere Sicherheit, oder? Betrachten Sie stattdessen GPG / PGP, sollte es die größten Spieler immer noch überlisten. @ dave_thompson_085 Sie iterieren immer noch nur einmal? Yowza Von MD5 wegzukommen ist zumindest ein kleiner Schritt. Verfolgen sie den verwendeten Hash und die Verschlüsselung oder müssen Sie sich auch noch daran erinnern? (Ich habe [auch den Bären zitiert] (https://stackoverflow.com/questions/28247821/openssl-vs-gpg-for-encrypting-off-site-backups/28248800#28248800) ;-) Xen2050 vor 6 Jahren 0

1 Antwort auf die Frage

0
Vlastimil

Ich fand durch Zufall heraus, hier, dass für opensslVersion 1.1.0:

-md digest Use the specified digest to create the key from the passphrase. The default algorithm is sha-256. 

Daher ist es nicht sinnvoll, den Message Digest-Algorithmus für die neuere Version von anzugeben, opensslda SHA-256 bereits verwendet wird.

Aber da es auf meinem System opensslVersion 1.0.2g gibt, habe ich weiter gegraben und hier herausgefunden, dass:

... In OpenSSL 1.1.0 we changed from MD5 to SHA-256 ... 

Im Wesentlichen bedeutet dies, dass mein opensslWille standardmäßig das alte und veraltete MD5 verwendet.

Zum Glück kann dies mit opensslVersion 1.0.2g in SHA-256 geändert werden:

openssl enc -aes-256-cbc -md sha256 -salt -in somefile -out somefile.enc 

Wenn Sie eine ältere opensslVersion als ich haben, möchten Sie vielleicht versuchen -md sha1, wenn die oben genannten Probleme auftreten.