Maison  >  Article  >  Tutoriel système  >  Crypter et décrypter des fichiers à l'aide de GPG

Crypter et décrypter des fichiers à l'aide de GPG

WBOY
WBOYavant
2024-02-29 20:28:20524parcourir

使用 GPG 加密和解密文件

Objectif : Chiffrer les fichiers à l'aide de GPG

Distribution : fonctionne avec n'importe quelle distribution

Exigences : Linux avec GPG installé ou privilèges root pour l'installer.

Difficulté : Facile

Promesse :

  • # - Vous devez utiliser les privilèges root pour exécuter la commande spécifiée. Vous pouvez utiliser directement l'utilisateur root pour l'exécuter, ou vous pouvez utiliser la sudocommand
  • .
  • $ - Vous pouvez utiliser des utilisateurs ordinaires pour exécuter des commandes spécifiées
Présentation

Le cryptage est très important. Il est essentiel de protéger les informations sensibles. Vos fichiers privés doivent être cryptés et GPG constitue une excellente solution.

Installer GPG

GPG est largement utilisé. Vous pouvez le trouver dans le référentiel de presque toutes les distributions. Si vous ne l'avez pas encore installé, faites-le maintenant.

Debian/Ubuntu

$ sudo apt install gnupg

Fedora

# dnf install gnupg2

Arche

# pacman -S gnupg

Gentoo

# emerge --ask app-crypt/gnupg
Créer une clé

Vous avez besoin d'une paire de clés pour crypter et déchiffrer les fichiers. Si vous avez déjà généré une paire de clés pour SSH, vous pouvez l'utiliser directement. Sinon, GPG inclut des outils pour générer une paire de clés.

$ gpg --full-generate-key

GPG dispose d'un programme en ligne de commande qui peut vous aider à générer des clés étape par étape. Il dispose également d'un outil beaucoup plus simple, mais cet outil ne vous permet pas de définir le type de clé, la longueur de la clé et le délai d'expiration, cet outil n'est donc pas recommandé.

GPG vous demandera d'abord le type de clé. S'il n'y a rien de spécial, choisissez simplement la valeur par défaut.

L'étape suivante consiste à définir la longueur de la clé. 4096 est un bon choix.

Après cela, vous pouvez définir la date d'expiration. Réglez sur 0 si vous souhaitez que la clé n'expire jamais.

Ensuite, entrez votre nom.

Enfin, entrez votre adresse e-mail.

Vous pouvez également ajouter une note si vous en avez besoin.

Une fois tout cela terminé, GPG vous demandera de vérifier les informations.

GPG vous demandera également si vous devez définir un mot de passe pour la clé. Cette étape est facultative, mais augmentera le niveau de protection. Si vous devez définir un mot de passe, GPG collectera vos informations de fonctionnement pour augmenter la robustesse de la clé. Une fois tout cela terminé, GPG affichera des informations sur la clé.

Méthodes de cryptage de base

Maintenant que vous disposez de votre propre clé, crypter vos fichiers est simple. Utilisez la commande ci-dessous pour créer un fichier texte vierge dans le répertoire /tmp.

$ touch /tmp/test.txt

Ensuite, chiffrez-le avec GPG. Ici, le drapeau -e indique à GPG que vous souhaitez chiffrer le fichier, et le drapeau -r précise le destinataire.

$ gpg -e -r "Your Name" /tmp/test.txt

GPG a besoin de connaître le destinataire et l'expéditeur de ce fichier. Puisque ce fichier vous appartient, il n'est pas nécessaire de préciser l'expéditeur, et le destinataire est vous-même.

Méthode de base de décryptage

Après avoir reçu le fichier crypté, vous devez le décrypter. Vous n'avez pas besoin de spécifier une clé pour le décryptage. Ces informations sont codées dans le fichier. GPG tentera de déchiffrer en utilisant la clé qu'il contient.

$ gpg -d /tmp/test.txt.gpg
Envoyer des fichiers

假设你需要发送文件给别人。你需要有接收者的公钥。 具体怎么获得密钥由你自己决定。 你可以让他们直接把公钥发送给你, 也可以通过密钥服务器来获取。

收到对方公钥后,导入公钥到 GPG 中。

$ gpg --import yourfriends.key

这些公钥与你自己创建的密钥一样,自带了名称和电子邮件地址的信息。 记住,为了让别人能解密你的文件,别人也需要你的公钥。 因此导出公钥并将之发送出去。

gpg --export -a "Your Name" > your.key

现在可以开始加密要发送的文件了。它跟之前的步骤差不多, 只是需要指定你自己为发送人。

$ gpg -e -u "Your Name" -r "Their Name" /tmp/test.txt
结语

就这样了。GPG 还有一些高级选项, 不过你在 99% 的时间内都不会用到这些高级选项。 GPG 就是这么易于使用。你也可以使用创建的密钥对来发送和接受加密邮件,其步骤跟上面演示的差不多, 不过大多数的电子邮件客户端在拥有密钥的情况下会自动帮你做这个动作。


Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer