la page de manuel de la ligne de commande gpg (Gnupg) contient des commandes permettant de chiffrer et de déchiffrer des fichiers. Voici une commande standard pour chiffrer/déchiffrer des fichiers avec gpg.
gpg --encrypt --recipient [email protected] ~/xxx/xxx.txt
- pour chiffrer
gpg --output ~/xxx/xxx.txt --decrypt ~/xxx/xxx.gpg
- décrypter
Mais si j'ai un dossier avec plusieurs fichiers et dossiers, comment puis-je le chiffrer avec la ligne de commande?
Solution 1:
Utilisez gpg-Zip.
Cryptez le contenu du répertoire mydocs pour que l'utilisateur Bob puisse classer test1:
gpg-Zip --encrypt --output test1 --gpg-args -r Bob mydocs
Répertoriez le contenu de l'archive test1:
gpg-Zip --list-archive test1
Ceci est un exemple directement à partir de Cryptez ou signez des fichiers dans une archive . Si vous lisez cette page en détail, cela vous aidera beaucoup.
Solution 2:
Transformer un répertoire en fichier
Si vous souhaitez chiffrer un répertoire, vous devez d'abord le convertir en fichier. Exécutez la commande:
tar czf myfiles.tar.gz mydirectory/
Cela vous donne un nouveau fichier 'myfiles.tar.gz' que vous pouvez ensuite chiffrer/déchiffrer. Pour transformer une archive dans un répertoire:
tar xzf myfiles.tar.gz
vous pouvez maintenant utiliser le cryptage de la même manière que ci-dessus. Alors:
gpg --encrypt --recipient [email protected] ~/xxx/xxx.txt
Ceci est directement tiré d'un exemple de berkeley cryptant , qui est aussi une lecture rapide et utile.
Vous pouvez consulter la page de manuel ici: gnu gpg man
cd
dans le dossier
encrypt: $ls | gpg --multifile --encrypt
ou $ls | gpg --encrypt-files
décrypte: $ls | gpg --multifile --decrypt
ou $ls | gpg --decrypt-files
gpgtar est une autre option également. gpgtar crypte ou signe des fichiers dans une archive. Il s'agit d'un fichier tar formaté utilisant le même format que celui utilisé par PGP Zip.
Il installe avec gnupg sur MacOS et Linux.
Répertoire de cryptage
gpgtar --encrypt --output <out_file_name> -r <recipient> <dir_name>
Déchiffrer le répertoire
gpgtar --decrypt <out_file_name>