Datei verschlüsseln
Einzelne Dateien verschlüsseln
Der große Nachteil dieser Methode ist, dass man eine Datei jedes Mal manuell ver- und entschlüsseln muss. Außerdem muss man die Originaldatei jedes Mal löschen. Dies ist auf Dauer nicht nur etwas mühselig, auch sind die gelöschten Original-Dateien unter Umständen wiederherstellbar, wenn diese nicht mit [:wipe:] oder [:shred:] entsorgt werden.
GnuPG
Möchte man einzelne Dateien verschlüsseln, so kann man dies mit [:GnuPG:] realisieren. Das Verschlüsseln von Dateien findet im Terminal [3] statt. Durch Eingabe von
{{{#!vorlage Befehl gpg -c DATEINAME }}}
wird die Datei DATEINAME nach doppelter Eingabe eines Passwortes verschlüsselt.
{{{#!vorlage Experten Durch das Argument `--cipher-algo` kann der Verschlüsselungsalgorithmus manuell bestimmt werden, standardmäßig wird hier [wikipedia:CAST_(Algorithmus):CAST5] verwendet. Um eine Liste der unterstützten Algorithmen einzusehen, genügt die Eingabe von `gpg --version` im Terminal. Auch die Verschlüsselung von Dateien mit einem öffentlichen Schlüssel durch die Option `-e` ist möglich. }}}
Durch Ausführen von
{{{#!vorlage Befehl gpg -d DATEINAME.gpg > DATEINAME }}}
wird eine verschlüsselte Datei DATEINAME.gpg nach Eingabe des Passwortes wieder entschlüsselt und als DATEINAME gespeichert.
gpg-connect-agent ` ausführen.
ccrypt
Das Programm [sourceforge2:ccrypt:] {en} kann direkt aus den Paketquellen installiert werden.
* Verschlüsseln: {{{#!vorlage Befehl
ccencrypt foobar }}}
* Entschlüsseln: {{{#!vorlage Befehl
ccdecrypt foobar }}}
* Entschlüsseln – nur auf die Standardausgabe: {{{#!vorlage Befehl
ccat foobar }}}
Weitere Informationen bietet die [:man:Manpage] zur Anwendung.
OpenSSL
Hier helfen zwei kleine Skripte. Diese können z.B. als ssl-encode.sh und ssl-decode.sh gespeichert werden. Dazu bieten sich die Ordner ~/bin (für einen einzelnen Benutzer) oder /usr/local/bin (bei systemweiter Nutzung) an.
* Verschlüsseln: {{{#!code bash
- !/bin/bash
- make sure we get a file name
if [ $# -lt 1 ]; then
echo "Usage: $0 filename" exit 1
fi openssl enc -e -aes256 -in "$1" -out "$1".enc }}}
* Entschlüsseln: {{{#!code bash
- !/bin/bash
- make sure we get 2 files
if [ $# -lt 2 ]; then
echo "Usage: $0 encrypted_file decrypted_file" exit 1
fi openssl enc -d -aes256 -in "$1" -out "$2"
- openssl benutzt ab Version 1.1 (?) nicht mehr -md md5 als Default-Option, ohne diese Option kann eine mit
- Version 1.0 verschlüsselte Datei nicht entschlüsselt werden.
}}}