web-dev-qa-db-fra.com

Cryptage / décryptage d'un seul fichier dans Ubuntu 12.04 LTS

Je dois pouvoir chiffrer/déchiffrer un seul fichier texte stocké sur mon disque dur externe dans 12.04 LTS, de préférence une application à interface graphique, le cas échéant, ou la ligne de commande sinon. Je vous remercie.

34
user75345

Un moyen simple de chiffrer un seul fichier consiste à utiliser openssl:

openssl des3 < youfile.txt > yourfile.txt.des3

Cela vous demandera une phrase secrète, que vous devrez entrer plus tard lors du déchiffrement du fichier.

openssl des3 -d < yourfile.txt.des3 > yourfile.txt.decrypted

Pour que cela soit "graphique", vous pouvez le mettre dans un script Nautilus et le rendre accessible depuis le menu contextuel. (Voir la documentation de Nautilus pour cela.)

UPDATE

des3 est juste un exemple. Exécutez openssl list-cipher-algorithms pour voir la liste complète des chiffrements.

43
janos

Supposons qu'une personne veuille chiffrer un fichier appelé 'message.txt':

1. Crypter un fichier avec GPG, pour un usage personnel

I. Utilisation d'un mot de passe pour chiffrer le fichier (et non la clé privée)

I.i. La commande: gpg -c message.txt le fait; il demande un mot de passe (et une confirmation du mot de passe) et génère un 'message.txt.gpg' chiffré, qui est binaire.

I.ii. Si vous voulez générer un fichier chiffré ASCII, qui est en base64 (je pense) de ce fichier, vous pouvez utiliser gpg -c --armor message.txt Ceci générera un 'message.txt.asc', identique à la valeur générée. par la commande avant, mais codée en base64, c’est-à-dire le fichier crypté en mode texte (. asc, pas binaire comme . gpg serait).

II. Utiliser une clé privée pour chiffrer un fichier

II.i. Si vous souhaitez chiffrer un fichier à l'aide de votre clé, utilisez plutôt la commande gpg -e -r 'yourname' message.txt au lieu d'un mot de passe. L'argument 'votrenom' doit contenir une partie du nom que vous avez utilisé pour créer la clé privée. Si vous ne spécifiez pas le paramètre -r, gpg vous le demandera. Vous pouvez alors saisir notre nom (le même que vous taperiez sur la ligne de commande).

II.ii. Point II.i vous donnerait un fichier binaire. Si vous voulez obtenir un fichier ASCII, utilisez --armor. gpg -e -r 'yourname' --armor message.txt.

2. Déchiffrer le fichier chiffré avec GPG

Pour déchiffrer le fichier, utilisez la commande gpg -d --output OUTPUTFILE message.txt.gpg. Ceci demandera la phrase secrète, puis décryptera le fichier message.txt.gpg à FICHIER_SORTIE, si la phrase secrète est correcte. Cette phrase secrète est celle que vous avez utilisée directement (point I., paramètre -c) ou via votre clé privée (point II., Paramètre -e). Cela fonctionne à la fois pour les fichiers binaires (.gpg) ou ascii (.asc). Si vous supprimez le --output FILE, il est envoyé à la console (stdout). Vous pouvez également le faire, c’est-à-dire le rediriger vers un fichier: gpg -d message.txt.gpg > OUTPUTFILE.txt Les deux font la même chose. 8)

24
Iacchus

Essayez http://www.aescrypt.com/ cela fonctionne très bien.

3
Goddard

https://stackoverflow.com/questions/2811528/can-i-use-my-ssh-public-key-to-decrypt-a-file Est une question sur un sujet connexe. Vous pouvez utiliser les mêmes principes de cryptage si je ne me trompe pas.

1
Sam Mercier

Pour (GnuPG) 1.4.16

gpg -a --output outfile.txt --encrypt infile.txt

Vous serez ensuite invité à:

Enter the user ID.  End with an empty line:

où "l'ID utilisateur" peut être trouvé en exécutant

gpg --list-keys
0
T. Webster