Voici quelques façons de le faire. Une chose à noter est que si vous utilisez des outils de compression et de cryptage distincts, vous devez toujours compresser avant le cryptage, car les données cryptées sont essentiellement non compressibles.
Ces exemples compressent et chiffrent un fichier appelé clear_text
.
En utilisant gpg
$ gpg -c clear_text #Compress & Encrypt
$ gpg -d clear_text.gpg #Decrypt & Decompress
gpg compressera le fichier d'entrée avant le cryptage par défaut, ce qui -c
signifie utiliser le cryptage symétrique avec un mot de passe. Le fichier de sortie sera clear_text.gpg
. L’un des avantages de l’utilisation gpg
est le fait qu’il utilise les formats OpenPGP standard. Ainsi, tout logiciel de chiffrement prenant en charge OpenPGP pourra le déchiffrer.
En utilisant mcrypt
$ mcrypt -z clear_text #Compress & Encrypt
$ mdecrypt -z clear_text.gz.nc #Decrypt & Decompress
L' -z
option compresse. Par défaut, cela génère un fichier appelé clear_text.gz.nc
.
En utilisant bcrypt
$ bcrypt -r clear_text #Compress & Encrypt
$ bcrypt -r clear_text.bfe #Decrypt & Decompress
bcrypt se compresse avant le cryptage par défaut, l' -r
option est que le fichier d'entrée ne soit pas supprimé du processus. Le fichier de sortie est appelé clear_text.bfe
par défaut.
Utiliser gzip
etaespipe
$ cat clear_text | gzip | aespipe > clear_text.gz.aes #Compress & Encrypt
$ cat clear_text.gz.aes | aespipe -d | gunzip > clear_text #Decrypt & Decompress
Cela ressemble à un programme, un programme qui prend une entrée sur stdin et génère des données cryptées sur une sortie standard. Il ne supporte pas la compression, vous pouvez donc diriger d'abord l'entrée via gzip. Comme la sortie va sur stdout, vous devrez le rediriger vers un fichier avec le nom de votre choix. Ce n’est probablement pas le moyen le plus efficace de faire ce que vous demandez, mais aespipe est un outil polyvalent, j’ai donc pensé que cela valait la peine d’être mentionné.
openssl aes-256-cbc -d -in out.tar.gz.enc -out decrypted.tar.gz