Existe-t-il un outil pour chiffrer un fichier ou un répertoire?


66

Quel est le moyen le plus populaire de chiffrer des fichiers ou des dossiers individuels?


La question est un peu obscure. Voulez-vous chiffrer et déchiffrer manuellement des fichiers, ou à la volée?
Psusi

4
Au lieu de «plus populaire», adapter une solution à vos besoins pourrait être utile (selon la question de psusi). Recherchez-vous une combinaison de sources open source faciles, fiables, natives, sécurisées et rapides? Tous ou certains d'entre eux?
Belacqua

7
J'aimerais ajouter la remarque selon laquelle, contrairement à ce que prétendent certaines réponses, TrueCrypt n'est pas considéré comme un logiciel libre ou Open Source par Debian / Ubuntu / Fedora / Red Hat / Arch Linux / OpenSuse / Gentoo / etc.
jan.

Réponses:


46

GnuPG (GPG) peut utiliser le cryptage asymétrique et symétrique. La cryptographie asymétrique implique deux clés, une clé publique pour le chiffrement et une clé privée pour le déchiffrement. Voir la réponse de djeikyb sur cette page pour l'utilisation des clés asymétriques.

Pour le chiffrement symétrique, les clés de chiffrement et de déchiffrement sont égales. Il est important de réaliser que la plupart des gens choisissent très mal les mots de passe forts. Ainsi, un schéma de chiffrement utilisant des mots de passe devrait utiliser une fonction de dérivation de clé nécessitant plus de ressources (temps, mémoire) pour ralentir les attaques par force brute.

Pour une description du fichier KDF de GnuPG, voir cet article Crypto Stack Exchange . Exemple d'utilisation du chiffrement symétrique:

gpg --symmetric < unencrypted_file > encrypted_file

Décryptage:

gpg --decrypt < encrypted_file > decrypted_file

Notez que gpgcache la symkey par défaut (comportement documenté). Afin d’éviter cela, utilisez l’ --no-symkey-cacheoption décrite dans une réponse connexe .

Page de manuel de gpg .


ancienne réponse pour les utilisateurs capables de choisir de bonnes clés, voir la note ci-dessous

Pour les fichiers uniques, opensslest très utile, en particulier lors de l’envoi du fichier sur un canal non sécurisé (par exemple, un courrier électronique). C'est gratuit (en argent et en liberté), contrairement à Truecrypt, qui n'est gratuit qu'en argent.

REMARQUE : le mot de passe que vous entrez ici sera traité par une itération MD5 1 . Si vous choisissez un mot de passe "123456", vous aurez très peu de sécurité.

Crypter:

openssl aes-256-cbc -salt -in unencrypted_file -out encrypted_file

On vous demandera un mot de passe que vous devrez saisir deux fois.

Décrypter:

openssl aes-256-cbc -d -in encrypted_file -out unencrypted_file

Page de manuel pour le programme enc .

1 openssl enc utilise la fonction digest définie par l' -mdoption (par défaut, md5) et appelle la fonction EVP_BytesToKey()avec un nombre d'itérations égal à 1. Cela peut être trouvé dans le source openssl à l'adresse apps/enc.c.


Y a-t-il un moyen de faire cela sans passe-passe?
Assaf Lavie

@Assaf Lavie: OpenSSL ne prend pas en charge les fichiers de clés si vous voulez dire cela, bien qu'il puisse lire un mot de passe à partir de la première ligne d'un fichier. Lisez la page de manuel sur openssl, section Arguments de phrase de passe .
Lekensteyn

En outre, vous pouvez utiliser l'indicateur "-a" qui vous permet de copier le texte crypté, comme suit: "openssl aes-256-cbc -a -salt -in unencrypted_file -out crypté_file"
v2r

@ v2r Pour ajouter d'autres lecteurs: -abase64-code l'entrée (alias de -base64), pour le déchiffrer, vous devez également ajouter l' -aoption.
Lekensteyn

1
@Lucio aes-256est un alias pour aes-256-cbc, il n'y a pas de différence. CBC est un mode de fonctionnement pour les chiffreurs de blocs. Voir la page de manuel de enc(1)pour une liste des chiffrements supportés.
Lekensteyn

30

J'utilise Seahorse pour cela. C'est un frontal Gnome pour GnuPG et s'intègre bien avec Nautilus:Intégration de Nautilus

Pour obtenir l'intégration Nautilus, installez le package à seahorse-nautiluspartir du Centre logiciel: seahorse-nautilus Installer hippocampe-nautile


3
cela ne fonctionne que si vous avez créé une clé
GPG

3
@hhlp: La réponse de djeikyb explique comment faire cela.
Idbrii

1
Je veux chiffrer ma clé GPG.
KI4JGT

19
  • Applet de la barre d'état système EncFS pour le chiffreur GNOME

TrueCrypt : logiciel de cryptage de disque gratuit et non sécurisé , disponible auprès d’une source non sécurisée .


2
+1, encfs - avec ou sans interface graphique - est très utile et suffit dans la plupart des cas.
Loevborg

3
Cryptkeeper est génial - simple, puissant et facile à configurer avec Dropbox ( askubuntu.com/questions/19613/… ).
Scaine

TrueCrypt n'est pas packagé dans Ubuntu (ni dans aucune autre distribution majeure) pour des problèmes de licence.
MagicFab

2
TrueCrypt n'est pas cette source ouverte. en.wikipedia.org/wiki/…
Yuric

4
'AVERTISSEMENT: l'utilisation de TrueCrypt n'est pas sécurisée' - TrueCrypt
user457015

16

Une méthode cli serait GnuPG , et peut-être tar. Ceci est un guide court pour référence, vous devriez vraiment lire la documentation.

Première course gpg --gen-key. Suivez les instructions pour générer votre paire de clés publique / privée. Maintenant , vous pouvez crypter des fichiers: gpg -e foo.txt. Cela va créer un fichier appelé foo.txt.gpg. GnuPG ne supprime pas le fichier d'origine non chiffré, c'est à vous de décider si vous le souhaitez ou non. Pour décrypter foo.txt.gpg, exécutez gpg foo.txt.gpg. Le décryptage vous le demandera avant de remplacer les fichiers existants.

Si vous avez besoin de chiffrer un répertoire, commencez par le tar:

tar -cf foo.tar foo/
gpg -e foo.tar

Vous pouvez renommer le fichier crypté comme bon vous semble. Une fois déchiffré, le nom du fichier d'origine est conservé.


2
Les avantages de cette méthode sont les suivants: premièrement, elle ne nécessite pas l’installation de packages supplémentaires; Deuxièmement, il ne nécessite pas d’accès root. J'ajouterais une compression à la commande tar (xz ou gz).
Panther

12

Il existe également eCryptfs , utilisé par Ubuntu pour chiffrer les répertoires de départ.

Vous pouvez sélectionner le chiffrement du répertoire de base lors de l'installation ou configurer un seul répertoire, $HOME/Privatepar défaut, à l'aide de l' utilitaire ecryptfs-setup-private . Ce dossier peut être configuré pour monter automatiquement à la connexion et démonter à la déconnexion. Chaque fichier et dossier au sein de celui-ci $HOME/Private, de manière récursive, sera chiffré.


Malheureusement, eCryptfs est TRÈS lent. Il y a aussi quelques bugs dans la dernière version
ruX

Au contraire, eCryptfs est plus rapide que gpg. Par défaut, gpg tente de compresser avant le cryptage. Et eCryptfs est maintenant aussi utilisé par la plupart des Android
Xen2050

2

Vous pouvez également utiliser "Academic Signature" pour utiliser la cryptographie à courbe elliptique avec une interface graphique wxWidgets. C'est open source mais pas dans les dépôts. Il utilise principalement le cryptage asymétrique ECC, les signatures et les horodatages. Mais l'outil dispose également d'une entrée de menu permettant d'appeler Gnupg (RSA) et d'accéder directement à un cryptage / décryptage symétrique de fichiers offrant AES et d'autres algorithmes. Sa page d'accueil est ici: https://www.academic-signature.org

Je l'utilise beaucoup pour protéger les fichiers en transit et pour signer numériquement des documents académiques (relevés de notes, lettres de recommandation, listes de notes, etc.)


1

J'ai pris certaines des autres suggestions et créé un wrapper de script shell simple (pour les paresseux)

https://github.com/orionM/ssl-crypt-tools

prendre plaisir


1
hmm, bash script using openssl aes-256-cbc ...Vous savez, au lieu d'utiliser, if [ $? -ne 0 ] ; then... fivous pouvez simplement utiliser ||? Et il y a des gens qui pensent qu'OpenSSL "* a eu plusieurs failles majeures de sécurité au cours de la dernière année [ Heartbleed ], alors que les documents Snowden montrent que GPG est l'un des rares programmes qui pourrait bloquer la NSA lorsqu'elle est utilisée correctement. Le code OpenSSL est également un cloaque complet et une couverture de test épouvantable. (Divulgation: [il] travaille sur un projet "OpenSSL craint; corrigeons-le".) - jbarlow * "
Xen2050
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.