Antworten:
Ich denke es wäre gpg. Die Syntax für Dateien und Verzeichnisse unterscheidet sich jedoch.
Für Dateien (gibt Dateiname.gpg aus):
gpg -c filename
Für dirs:
gpg-zip -c -o file.gpg dirname
Für Dateien (gibt Dateiname.gpg aus):
gpg filename.gpg
Für dirs:
gpg-zip -d file.gpg
Edit: Korrigiert, da @ Mk12 auf den Fehler der Komprimierung / Dekomprimierung bei der Verschlüsselung / Entschlüsselung hinwies.
openssl des3 -salt -in unencrypted-data.tar -out encrypted-data.tar.des3
Entschlüsseln:
openssl des3 -d -salt -in encrypted-data.tar.des3 -out unencrypted-data.tar
aescrypt -e -p password file.jpg
Entschlüsseln:
aescrypt -d -p password file.jpg.aes
Dies ist meine Methode mit OpenSSL und TAR
Öffnen Sie das verschlüsselte Verzeichnis:
openssl enc -aes-256-cbc -d -in ~/vault.tar.gz.dat | tar xz; thunar ~/vault
Verschlüsseltes Verzeichnis sperren:
tar cz vault/ | openssl enc -aes-256-cbc -out ~/vault.tar.gz.dat; rm -r ~/vault
rm -r
löscht keine Daten; es hebt lediglich die Verknüpfung auf. Sie müssen so etwas wie srm
das Löschen der Daten von der Festplatte verwenden.
Ich persönlich benutze aescrypt
meistens.
aescrypt -e "File"
und entschlüsseln:
aescrypt -d "File"
Oder es gibt mcrypt:
mcrypt "File"
und entschlüsseln:
mcrypt -d "File"
Und für ein Verzeichnis schlage ich vor, das Verzeichnis zu tarieren und zu verschlüsseln. Dann entpacken Sie nach dem Entschlüsseln einfach die Datei:
tar -cf "Dir.tar" Dir/
und zu enttarnen
tar -xf "Dir.tar"
Wenn die höchste Sicherheitsstufe kein großes Problem darstellt (die Manpage von zip besagt, dass der Verschlüsselungsalgorithmus, der von zipfile-Dienstprogrammen verwendet wird, schwächer ist als PGP), bevorzuge ich zip und unzip. Es komprimiert meine Verzeichnisse und verschlüsselt gleichzeitig. Ich bevorzuge zip, weil Sie eine Art inkrementelles zip haben und verschlüsseln können, anstatt das Ganze erneut zu zippen und zu verschlüsseln. Besonders nützlich ist es, wenn das Verzeichnis sehr groß ist.
ZIP und verschlüsseln
zip file.zip file
zip -r directory.zip directory
zip --encrypt file.zip.enc file # prompt for password
zip --encrypt -r directory.zip.enc directory # prompt for password
Entpacken und entschlüsseln
unzip directory.zip.enc #Beware if any directory is present with the same name as the zipped file, then it would be overwritten. Hence I normally send the contents to another directory.
unzip directory.zip.enc -d directory-new # prompts for password
Vielleicht nicht sehr beliebt, aber ich habe an einem Projekt gearbeitet, bei dem mit wenigen Bash-Skripten alles mit minimaler Benutzerinteraktion verschlüsselt / entschlüsselt werden soll. Hier ist ein Link zum Hak5- Beitrag, der das Setup zum Testen erklärt.
Das Durchschneiden der Quellcodelogiken geschieht für jeden Datentyp, der von dem oben verknüpften Projekt verarbeitet werden kann
_gnupg_encrypt_opts="--always-trust --armor --batch --encrypt --recipient user@host.domain"
_bulk_output_dir="some_path"
_arbitrary_parsed_output="some_file.gpg"
## If file make encrypted time stamped file with similar name
_path_to_file="${_mapped_input}"
_path_to_output="${_bulk_output_dir}/$(date -u +%s)_${_path_to_file##*/}.gpg"
cat "${_path_to_file}" | gpg ${gpg _gnupg_encrypt_opts} > "${_path_to_output}"
## else if directory make compressed encrypted time stamped output file
_path_to_dir="${_mapped_input}"
_path_to_output="${_bulk_output_dir}/$(date -u +%s)_dir.tgz.gpg
tar -cz - "${_path_to_dir}" | gpg ${gpg _gnupg_encrypt_opts} > "${_path_to_output}"
## else if something else append encrypted output to file
_path_to_output="${_arbitrary_parsed_output}"
cat <<<"${_mapped_input}" | gpg ${gpg _gnupg_encrypt_opts} >> "${_path_to_output}"
Die ${_mapped_input}
Variable wird gesetzt, indem eine mkfifo
Named-Pipe-Datei gelesen und alles, was gelesen wird, auf ein Array gesetzt wird, mit mapfile -t _lines < "${_file_to_map}"
dem es später erweitert und in einem ${_mapped_input}
... etwas verschachtelten Format gespeichert wird. Experimentelle Funktionen können jedoch auf einzelne Zeilen angewendet werden. Als Endergebnis erhalten Sie ein Verzeichnis für verschlüsselte Dateien oder komprimierte Verzeichnisse sowie eine Datei mit verschiedenen Paketen verschlüsselter Daten.
Die Entschlüsselung für Dateien oder komprimierte Verzeichnisse ist auf einem Gerät mit einem privaten Schlüssel, der mit dem für die Verschlüsselung verwendeten öffentlichen Schlüssel zusammenhängt, recht einfach. Die Entschlüsselung mehrerer mit Panzerungen verschlüsselter Datenpakete war jedoch etwas schwieriger. Daher wurde Paranoid_Pipes_Scenario_One.sh
im obigen Projekt ein Skript geschrieben, das dies alles mit minimaler Benutzerinteraktion ermöglicht. Unten finden Sie eine vereinfachte Version des Hilfsskript-Quellcodes für normale verschlüsselte Dateien und Verzeichnisse.
_gnupg_decrypt_opts="--quiet --no-tty --always-trust --passphrase-fd 9 --decrypt"
_decryption_output_dir="some_directory"
# if file
exec 9<"${_pass[@]}"
_path_to_file="${_mapped_input}"
_output_name="${_path_to_file##*/}"
_output_name="${_output_name%.gpg*}"
cat "${_path_to_file}" | gpg ${_gnupg_decrypt_opts} > "${_decryption_output_dir}/${_output_name}"
# else if compressed file
_path_to_file="${_mapped_input}"
_output_name="${_path_to_file##*/}"
_output_name="${_output_name%.tgz.gpg*}"
mkdir -p "${_decryption_output_dir}/${_output_name}"
_old_pwd="${PWD}"
cd "${_decryption_output_dir}/${_output_name}"
cat "${_path_to_file}" | gpg ${_gnupg_decrypt_opts} | tar -xzf -
cd "${_old_pwd}"
# else if non-compressed directory
_path_to_file="${_mapped_input}"
_output_name="${_path_to_file##*/}"
_output_name="${_output_name%.tar.gpg*}"
mkdir -p "${_decryption_output_dir}/${_output_name}"
_old_pwd="${PWD}"
cd "${_decryption_output_dir}/${_output_name}"
cat "${_path_to_file}" | gpg ${_gnupg_decrypt_opts} | tar -xf -
cd "${_old_pwd}"
Wenn Sie sehen möchten, welche anderen Funktionen auf öffentlich überprüfbare Weise funktionieren und getestet werden, lesen Sie die Travis-CI- Erstellungsprotokolle (insbesondere am Ende der Protokolle) zur Ver- und Entschlüsselung nahezu beliebiger Daten.
Es erstellt One-Time-Pad-Schlüssel von selbst
java -cp FinalCrypt.jar rdj/CLUI --encrypt --password-prompt -k My-Key-Directory/ -t My-Test-Directory/
Passwort:
Begonnen 4 Dateien insgesamt 249,7 MiB zu verschlüsseln
🔒 "/home/ron/My-Test-Directory/Video/Eerebegraafplaats.mp4.bit" 🗝 ✔ 🖆 ✔ 🔒✔ ℄✔ 🗑✔ SHA-256: "C1E3F3A3545FEA026F3FB344F3D0798B54820B7F9AD9AAC4BE9FD1E955F947DA" -> "D53FCEADDF542AC3655B547778911F786C2C2BDD327E0618A9E7F77B57792DEA" 58,4% 🔒 „/ home / ron / Mein-Test-Verzeichnis / Video / castle-waxjo-sweden.mp4.bit /home/ron/My-Test-Directory/Brother_HL-2170W-usaeng_quick-setup.pdf.bit“🗝 ✔ 🖆 ✔ 🔒✔ ℄✔ 🗑✔ SHA-256: "0858D2D5A8CF118D40B517CD4A1F8D31D9F5A21221F75BD764B5E363FC1431FE" -> "266CE42027F891DECF109D7A9DD69E8B42C0E43D35E952BEB89F7C7EA2DBE92C" 95,7% 🔒 "/ Home / ron / My Test-Verzeichnis / Brother DSmobile 700d_uke_usr.pdf.bit“🗝 ✔ 🖆 ✔ 🔒✔ ℄✔ 🗑✔ SHA-256: "8D718D2F29EF05BEB347D6920B3BFF5269685421B428E8D3ADFF569F67A716E0" -> "88A98D893B6D1E540039D3E9BC0B0C19B46A10A209967F3235D5DEEBF073EC1E" 100,0%
Die Verschlüsselung von [4/4] Dateien [249,7 MiB / 249,7 MiB] in 7,3 Sekunden ist abgeschlossen (Durchschnitt: 34,2 MiB / s)
java -cp FinalCrypt.jar rdj/CLUI --decrypt --password-prompt -k My-Key-Directory/ -t My-Test-Directory/
Passwort:
Begann 4 Dateien zu entschlüsseln insgesamt 124,9 MiB
🔓 "/home/ron/My-Test-Directory/Video/castle-waxjo-sweden.mp4" 🖃 ✔ 🔓✔ ℄✔ 🗑✔ SHA-256: "323618B7ED12A1F92D8FFB306CEEC6DFFED6862B7BF3922902E8AED29DF57ECE" -> "8AEFC9744143451F32B82BBAC6A4291BC76C747A6DA1EA024702AA51A966F810" 32,8% 🔓 „/ home / ron / My Test-Verzeichnis / Video / Eerebegraafplaats.mp4" 🖃 ✔ 🔓✔ ℄✔ 🗑✔ SHA-256: "D53FCEADDF542AC3655B547778911F786C2C2BDD327E0618A9E7F77B57792DEA" -> "C1E3F3A3545FEA026F3FB344F3D0798B54820B7F9AD9AAC4BE9FD1E955F947DA" 91,2% 🔓 „/ home / ron / My Test -Directory / Brother dsmobile 700d_uke_usr.pdf "🖃 🖃 ℄✔ ℄✔ ℄✔ SHA-256:" 88A98D893B6D1E540039D3E9BC0B0C19B46A10A209967F3235D5DEEBF073EC1E "-> 8D718D5B5B5B5F569D2/home/ron/My-Test-Directory/Brother_HL-2170W-usaeng_quick-setup.pdf“🖃 ✔ 🔓✔ ℄✔ 🗑✔ SHA-256: "266CE42027F891DECF109D7A9DD69E8B42C0E43D35E952BEB89F7C7EA2DBE92C" -> "0858D2D5A8CF118D40B517CD4A1F8D31D9F5A21221F75BD764B5E363FC1431FE" 100,0%
Vollständige Entschlüsselung von [4/4] Dateien [124,9 MiB / 124,9 MiB] in 3,4 Sekunden (Durchschnitt: 36,3 MiB / s)
Ich versuche nur, der Community zu helfen ...