92 votes

Comment crypter rapidement un fichier avec AES ?

Je veux crypter un fichier en utilisant AES-256. Comment puis-je le faire rapidement et facilement, et comment puis-je - ou quelqu'un d'autre - le décrypter à nouveau ?

103voto

andybee Points 497

Malheureusement, il n'y a pas de solution facile pour sécuriser vos affaires. Réfléchissez à votre cas d'utilisation, peut-être qu'une solution autre que le simple AES est mieux adaptée.


Si vous voulez un cryptage très simple et indépendant de la plateforme, vous pouvez utiliser openssl .

Remarque : Vous pouvez utiliser cette méthode pour cacher birthday-gift-ideas.txt à votre colocataire, mais ne vous attendez pas à ce qu'elle soit protégée contre un attaquant déterminé !

  1. Comme il a été souligné dans les commentaires, cette méthode utilise une fonction de dérivation de clé naïve, de sorte que votre mot de passe doit être superlativement bon pour avoir une chance d'être sécurisé.
  2. En outre, cette méthode n'authentifie pas le texte chiffré, ce qui signifie qu'un attaquant peut modifier ou corrompre le contenu sans que vous vous en rendiez compte.
  3. Pour de nombreux types de sécurité, le cryptage n'est tout simplement pas suffisant (par exemple, il ne suffit pas d'utiliser le cryptage pour communiquer en toute sécurité).

Si vous voulez toujours utiliser openssl :

  • Le cryptage :

    openssl aes-256-cbc -in attack-plan.txt -out message.enc

  • Décryptage :

    openssl aes-256-cbc -d -in message.enc -out plain-text.txt

Vous pouvez demander à openssl de base64 -encoder le message en utilisant le -a activer à la fois le cryptage et le décryptage. De cette façon, vous pouvez coller le texte chiffré dans un message électronique, par exemple. Ça ressemblera à ça :

stefano:~$ openssl aes-256-cbc -in attack-plan.txt -a
enter aes-256-cbc encryption password:
Verifying - enter aes-256-cbc encryption password:
U2FsdGVkX192dXI7yHGs/4Ed+xEC3ejXFINKO6Hufnc=

Notez que vous avez le choix entre plusieurs chiffrages et modes de fonctionnement. Pour une utilisation normale, je recommande aes 256 en mode CBC. Voici les modes de chiffrement dont vous disposez (en comptant seulement AES) :

aes-128-cbc  this is okay
aes-128-ecb
aes-192-cbc
aes-192-ecb
aes-256-cbc  this is recommended
aes-256-ecb

Voir aussi :

Veuillez noter :

OpenSSL vous demandera un mot de passe. Il ne s'agit pas d'une clé de chiffrement, elle n'est pas limitée à 32 octets ! Si vous voulez transférer des fichiers avec quelqu'un d'autre, votre secret partagé doit être très fort. Vous pouvez utiliser ce site pour vous faire une idée de la qualité de votre mot de passe :

Avertissement : J'ai vérifié que ces sites n'envoient pas votre mot de passe au serveur, mais cela peut changer à tout moment. Utilisez ces sites avec des outils de développement / inspecteur et vérifiez s'ils envoient quelque chose avant de taper votre mot de passe fort.

44voto

Ken Paul Points 2398

J'aime utiliser le gpg commandement :

Cryptage :

gpg --cipher-algo AES256 --symmetric filename.tar.gz

En abrégé :

gpg --cipher-algo AES256 -c filename.tar.gz

Il vous sera demandé de saisir une phrase de passe.

Déchiffrer :

gpg --output filename.tar.gz --decrypt filename.tar.gz.gpg

En abrégé :

gpg -o filename.tar.gz -d filename.tar.gz.gpg

Vous pouvez également ajouter cipher-algo AES256 à ~/.gnupg/gpg.conf pour faire de AES256 la valeur par défaut. (Selon la page de manuel, c'est CAST5 )

21voto

DublinJimbo Points 314

7z (lorsque le mot de passe est utilisée) utilise un cryptage AES 256 bits (avec SHA256 étirement clé ).

Installez-le ( p7zip-full ), cliquez avec le bouton droit de la souris sur un fichier ou un répertoire que vous souhaitez crypter, puis sélectionnez Compresser , .7z y Autres options / Mot de passe .

enter image description here

Pour le décryptage, faites un clic droit sur le .7z et choisissez Extrait ici .

6voto

Paul Beckingham Points 7460

aescrypt

Le site web lié contient un outil de cryptage/décryptage aes 256 bits à code source ouvert et est multiplateforme - MacOs, Windows, Linux et autres via Java.

Cryptage : aescrypt -e <file>

Déchiffrer : aescrypt -d <file>

Vous pouvez sauvegarder et crypter votre dossier personnel en utilisant la syntaxe :

tar -cvf - /home/<home_folder> | aescrypt -e -p <password_message> - > backup.tar.aes

installation ubuntu

Télécharger et extraire la source

make
sudo make install

autres plateformes

Téléchargez les binaires ou le code source depuis le site web.

4voto

Un grand nombre des suggestions que j'aurais faites ont déjà été présentées dans ce fil. Fondamentalement, openssl est vraiment le moyen le plus simple de crypter un fichier ou un script. Cependant, je vous déconseille d'utiliser AES-256 juste parce qu'il n'est pas disponible dans toutes les versions d'openssl sur un peu de plateformes. La plupart des nouveaux systèmes d'exploitation, comme Linux, en sont dotés. Mais d'autres comme AIX 5.3 ne le font pas (je pense que HP-UX aussi). Si vous avez l'intention d'utiliser votre fichier ou script à travers différentes plateformes, je recommande fortement d'utiliser AES-128 parce que c'est disponible partout.

Comment crypter "rapidement et facilement" un fichier avec AES-128 ?

Un site comme www.ShellScrypt.com utilise openssl AES-128 assez intensément pour chiffrer Shell Shell et rend ensuite les copies chiffrées des Shell exécutables. Tout ce que vous avez à faire est de coller le Shell sur le site, et un fichier zip sera généré pour vous. Ce fichier zip contiendra la version cryptée (et exécutable s'il s'agit d'un Shell) de votre fichier. Cela vous permet de " facilement " et " commodément " crypter un fichier/script sans avoir à satisfaire une quelconque exigence de paquetage ou de module sur chaque système sur lequel vous avez l'intention d'utiliser le script ou d'exécuter plusieurs incantations complexes et confuses de commandes openssl.

Vous trouverez ci-dessous un exemple de base crypter / décrypter openssl qui utilise AES-128 :

test@test-VirtualBox:~$ 
test@test-VirtualBox:~$ echo precious-content | openssl aes-128-cbc -a -salt -k mypassword
U2FsdGVkX1+K6tvItr9eEI4yC4nZPK8b6o4fc0DR/Vzh7HqpE96se8Fu/BhM314z
test@test-VirtualBox:~$
test@test-VirtualBox:~$ echo U2FsdGVkX1+K6tvItr9eEI4yC4nZPK8b6o4fc0DR/Vzh7HqpE96se8Fu/BhM314z | openssl aes-128-cbc -a -d -salt -k mypassword
precious-content
test@test-VirtualBox:~$ 
test@test-VirtualBox:~$

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X