Je souhaite chiffrer un fichier avec AES-256. Comment puis-je le faire rapidement et facilement, et comment puis-je - ou quelqu'un d'autre - le déchiffrer à nouveau?
la source
Je souhaite chiffrer un fichier avec AES-256. Comment puis-je le faire rapidement et facilement, et comment puis-je - ou quelqu'un d'autre - le déchiffrer à nouveau?
Malheureusement, il n’existe pas de solution simple pour sécuriser vos documents. Pensez à votre cas d'utilisation, peut-être que quelque chose d'autre que AES est mieux adapté.
Si vous souhaitez un cryptage très simple, indépendant de la plate-forme, vous pouvez utiliser openssl .
Si vous voulez toujours utiliser openssl:
Chiffrement:
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 obtenir openssl pour base64
coder le message en utilisant le -a
commutateur pour le chiffrement et le déchiffrement. De cette façon, vous pouvez coller le texte chiffré dans un courrier électronique, par exemple. Ça va ressembler à ç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 des chiffrements et des modes de fonctionnement. Pour une utilisation normale, je recommande aes 256 en mode CBC. Voici les modes de chiffrement dont vous disposez (uniquement en comptant 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 également:
Notez s'il vous plaît:
OpenSSL vous demandera un mot de passe. Ce n'est pas une clé de cryptage, elle n'est pas limitée à 32 octets! Si vous voulez transférer des fichiers avec quelqu'un d'autre, votre secret partagé devrait être très fort. Vous pouvez utiliser ce site pour avoir 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 dev tools / inspector et vérifiez s’ils envoient quoi que ce soit avant de saisir votre mot de passe fort.
openssl aes-256-cbc
est plus court queopenssl enc -aes-256-cbc
et fonctionne aussi. La page de manuel pour cela est disponible en cours d'exécutionman enc
. Ne jamais utiliserecb
pour des données qui ne doivent pas être tempérées, utilisez toujourscbc
.-salt
est redondant puisqu'il est par défaut. Si vous omettez,-out filename
la sortie sera écrite sur la sortie standard, ce qui est utile si vous avez juste besoin d'analyser des données, mais pas de les écrire sur le disque. La commande suivante montre la cound de ligne pour le texte brut:openssl aes-256-cbc -d -in filename | wc -l
. ( une autre utilisation, la lecture d' un fichier:openssl aes-256-cbc -d -in filename | less
)/usr/bin/openssl enc -aes-256-cbc -a -salt -in $1 -out ${1}.enc
avec l'inverse comme on peut s'y attendre.openssl
outil de ligne de commande est principalement une preuve de concept pour tester la bibliothèque OpenSSL. La bonne réponse à cette question est soit GPG, soit un archiveur tel que 7z .openssl enc
n’est vraiment pas sûr si vous avez un mot de passe faible. J'ai déjà recommandé une certaine utilisation deopenssl enc
, mais suggère maintenant d'utiliser à lagpg
place car il utilise un KDF d'une meilleure façon. Voir cette réponse .J'aime utiliser la
gpg
commande:Crypter:
Sténographie:
Cela vous demandera un mot de passe.
Décrypter:
Sténographie:
Vous pouvez également ajouter
cipher-algo AES256
à~/.gnupg/gpg.conf
pour faire de AES256 la valeur par défaut. (Selon la page de manuel, il s’agit de CAST5 )la source
AES
(signifiant AES-128). AES-128 est légèrement plus rapide et n'est pas moins sécurisé.gpg
de mettre en cache le mot de passe?7z (lorsque l' option de mot de passe est utilisée) utilise un cryptage AES 256 bits (avec étirement de clé SHA256 ).
Installez-le (
p7zip-full
), cliquez avec le bouton droit sur un fichier ou un répertoire que vous souhaitez chiffrer, puis choisissez Compresser , .7z et Autres options / Mot de passe .Pour le déchiffrement, cliquez avec le bouton droit sur le fichier .7z et choisissez Extraire ici .
la source
cryptographie
Le site Web lié contient un outil de chiffrement / déchiffrement aes 256 bits open source et est multiplateforme - MacOs, Windows, Linux et autres par le biais de Java.
Crypter:
aescrypt -e <file>
Décrypter:
aescrypt -d <file>
Vous pouvez sauvegarder et chiffrer votre dossier personnel en utilisant la syntaxe suivante:
installation d'ubuntu
Téléchargez et extrayez le source
autres plateformes
Téléchargez les fichiers binaires ou le code source à partir du site Web.
la source
Beaucoup de suggestions que j'aurais faites ont déjà été avancées dans ce fil. En fait, openssl est le moyen le plus simple de chiffrer un fichier ou un script. Cependant, je vous déconseille d'utiliser AES-256 simplement parce qu'il n'est pas disponible dans toutes les versions d'OpenSL sur certaines plates-formes. La plupart des nouveaux systèmes d'exploitation ... c'est-à-dire que Linux en sont dotés. Mais d'autres, comme AIX 5.3, ne le font pas (je pense également à HP-UX). Si vous souhaitez utiliser votre fichier ou votre script sur différentes plates-formes, je vous recommande vivement d'utiliser AES-128 car celui-ci est disponible partout.
Comment pouvez-vous "rapidement et facilement" chiffrer un fichier avec AES-128?
Un site comme www.ShellScrypt.com utilise openssl AES-128 de manière assez intensive pour chiffrer les scripts shell, puis rend les copies chiffrées des scripts exécutables. Tout ce que vous avez à faire est de coller le script 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 script) de votre fichier. Cela vous permet de chiffrer " facilement " et " commodément " un fichier / script sans satisfaire à aucune exigence de paquet ou de module sur chaque système pour lequel vous souhaitez utiliser le script ni exécuter plusieurs incantations complexes et déroutantes de commandes openssl.
Ci-dessous, une commande de base cryptage / décryptage openssl utilisant AES-128:
la source
En ajoutant à la réponse de Stefano Palazzo, j'ai créé une petite fonction bash qui fonctionne de manière similaire à la commande base64.
Il va aes256 chiffrer un fichier, puis base64 le coder. En effectuant l'inverse, il va décoder, décrypter, puis cracher le texte en clair d'origine en base64.
Usage:
la source