nouvelles
Serverspace Technologies aux Emirats Arabes Unis : Lancement de Falconcloud
RF
21 mars 2024
Mise à jour Mars 21, 2024

Créer un digital signature avec GPG

Linux Sécurité

Avec l'émergence des systèmes d'information, les activités organisationnelles, RH, comptables ou toute activité impliquant la transmission de documents se sont dégradées.gitAl. Il est devenu plus pratique de stocker, transmettre, modifier et traiter de gros flux de données. Cependant, l’information est devenue susceptible d’être attaquée sur ses propriétés fondamentales d’intégrité, de disponibilité et de confidentialité. Et il fallait une solution qui, comme un sceau ou une signaturenature, peut assurer la sécurité de ces propriétés !

Cette solution était la technologie de di électroniquegital signature, ou EDS. C'est un système qui effectue des transformations cryptographiques avec une partie de confiance, ce qui permet de confirmer l'authenticité et l'intégrité du message transmis !

Qu'est-ce qu'une signature GPGnathein ?

Signature GPGnature est un analogue d'un signe humain normalnature sur les documents. Ce n'est pas une image ou une signature graphiquenature, mais une séquence de chaînes qui a été générée par une fonction de hachage unidirectionnelle et un processus de cryptage par un algorithme cryptographique.

L'entrée dans un cryptosystème ou un programmerammoi qui permet les transformations cryptographiques, ce sont des informations qui doivent être signées. Le fichier ou la séquence de chaînes à signer passe par une fonction mathématique unidirectionnelle ou une fonction de hachage qui convertit les données en une séquence dénuée de sens. Mais unique pour le texte ou le fichier donné. Autrement dit, si vous modifiez un seul caractère, la fonction aura une signification différente. L'algorithme de cryptage asymétrique est responsable de la confidentialité.

Installer et configurer GPG

Prenons un exemple du processus de création d'une signaturenature pour un fichier ou un message afin que le destinataire puisse être sûr de l'intégrité, de l'authenticité et, dans certaines configurations, de la confidentialité des données transmises. Tout d'abord, mettons à jour les packages sur la machine afin que toutes les dépendances soient à jour et qu'il n'y ait aucun problème de connexion.

apt update && apt upgrade -y

Par défaut, les distributions incluent déjà la solution du package gnupg, qui permet d'effectuer des conversions cryptographiques. Cependant, si votre appareil ne l'a pas, spécifiez un gestionnaire de packages et une commande :

  • apte à Debian/Ubuntu;
  • miam/dnf pour Fedora/RedHat.
apt install gnupg -y
Installation
Capture d'écran №1 — Installation

Avant de démarrer une machine de test, que nous pouvons faire sur Serverspace plate-forme cloud qui facilitera le déploiement, vous pouvez également ignorer cette étape si vous disposez d'un serveur cloud. Pour créer le nœud, nous devons trouver la plate-forme cloud dans le menu de gauche que vous pouvez choisir en fonction de vos besoins. Nous choisissons vStack or VMware plate-forme et cliCliquez sur le bouton Créer un serveur.

Create machine
Capture d'écran №2 — Créer une machine

Le déploiement de la capacité du serveur prendra un certain temps. Après cela, vous pouvez vous connecter de n’importe quelle manière pratique. Revenons à notre terminal avec l'utilitaire déjà installé, pour nous familiariser avec la syntaxe nous écrirons les commandes :

gpg -h
Help command
Capture d'écran №3 – Commande d'aide

Comme nous pouvons le constater, la liste des options est assez longue. Par conséquent, concentrons-nous sur les principales options et fonctions de la commande, qui peuvent être nécessaires lors de l'exécution d'actions de base.

Comment créer des clés GPG ?

Afin de signer un message, une paire de clés doit être générée à l'aide d'un algorithme de chiffrement asymétrique :

gpg --full-generate-key --expert

Utilisez gpg avec --full-generate-key et de --expert options pour une configuration plus détaillée des clés et des utilisateurs. En sélectionnant l'algorithme de cryptage RSA, la longueur de clé 2048 et en définissant l'ID utilisateur, nous nous assurerons que les clés ont été créées. Par défaut, il est stocké dans un trousseau de clés ou une base de données de trousseaux de clés, qui est chiffré avec la clé utilisateur. En conséquence, l'authenticité du message et des fichiers dépend de la longueur de la clé et du mot de passe de l'utilisateur, lors de la transmission et du stockage. Par conséquent, il est nécessaire de définir un mot de passe complexe, de préférence à 14 caractères.

Regardons les paires de clés créées, pour public -k, pour private -K :

gpg -k
Показать ключи
Capture d'écran №4 — Afficher les clés

Afin que le destinataire puisse vérifier la signaturenatIl est évidemment nécessaire d'exporter puis d'importer les clés publiques chez le destinataire :

gpg -a -u Koldek --export > keys.asc
Export keys
Capture d'écran №5 — Exporter les clés

Pour afficher la clé, entrez la commande :

cat keys.asc

Il existe désormais deux options pour la distribution des données. En raison de la menace d'usurpation de la clé publique, lors de la transmission initiale, nous devons passer par des intermédiaires ou faire confiance à la clé source. Considérez le modèle Web-of-Trust, qui implique de faire confiance à des sources basées sur les évaluations des utilisateurs. Nous plaçons notre clé sur notre propre site ou sur WoT et la distribuons à la demande des utilisateurs.

Assurez-vous de vérifier les valeurs de hachage après avoir reçu la clé et l'avoir téléchargée : elles doivent correspondre !

Dans le schéma avec le centre de certification, nous devons enregistrer notre clé publique et obtenir un certificat, qui contiendra un nouvel EDS du centre de certification. Si l'utilisateur fait confiance à l'autorité de certification, la signaturenature est décrypté et vérifié en conséquence.

Une fois que vous avez la clé, vous devez l'importer avec la commande :

gpg --import key.asc
Import keys
Capture d'écran №6 — Importer des clés

Après l'importation, nous voyons le numéro et le nom de la clé, que nous pouvons également vérifier pour l'authentification :

Si nous essayons de vérifier un message de test, nous recevrons un avertissement concernant l'origine inconnue de la clé. Pour vérifier que les clés sont fiables, une base de données ou un gpg de confiance est utilisé pour stocker une liste de clés et leur niveau de confiance.

Untrusted keys
Capture d'écran №7 — Clés non fiables

Écrivons le niveau de confiance manuellement en changeant la clé parameters avec la commande :

gpg --edit-key Koldek

Et puis sélectionnez l'élément que vous souhaitez modifier - confiance :

Modification of trust level
Capture d'écran №8 — Modification du niveau de confiance

Pour faire pleinement confiance à la clé, vous devez sélectionner l'élément 5, mais avant cela, vérifiez les valeurs de hachage et les données de la clé ! Et confirmez votre choix :

Trust for keys
Capture d'écran №9 — Confiance pour les clés

En bas, nous voyons une note indiquant que la confiance de clé changera après le redémarrage de l'utilitaire, ce que nous ferons.

Comment puis-je créer et vérifier une signature GPGnathein ?

Revenons à la machine précédente où nous avons généré les clés et signons le premier message !

Il existe trois options pour signer un message :

  • créer une signature viergenature dans le message lui-même;
  • créer une signature séparéenature dans un fichier;
  • créer une signaturenature dans un fichier combiné avec du texte.

La première façon est un fichier dans lequel le message lui-même et la signaturenature sont séparés, aucun moyen spécial n'est requis pour lire le fichier. Seulement pour confirmer la signaturenatbien sûr. Écrivons la commande :

gpg -a -u Kolded --clear-sign target.txt
Clear sign
Capture d'écran №10 — Signe clair

Après la signature, transférez le fichier de la manière qui vous convient et vérifiez le message dans le fichier déjà du côté du destinataire :

gpg --verify target.txt.asc
Verification of clear sign
Capture d'écran №11 — Vérification du signe clair

Comme vous pouvez le constater maintenant, les avertissements et les erreurs n'apparaissent pas et la date de signature du message est définie. Cependant, sans serveur de temps, il est possible d'usurper ces valeurs, car elles sont stockées dans les métadonnées du fichier et ne sont pas vérifiées comme le message lui-même.

La méthode suivante, un fichier séparé avec la signaturenature, ce qui peut être pratique pour les progiciels lorsqu'il n'est pas nécessaire de les modifier avec une signaturenatbien sûr. Tout ce que vous avez à faire est de télécharger un fichier séparé pour vérification :

gpg -a -u Koldek -b target.txt > target.txt.asc

Par souci de clarté, vérifions immédiatement son authenticité avec une commande :

gpg --verify target.txt.asc
Detached sign
Capture d'écran №12 — Panneau détaché

Notez que nous devons maintenant transférer le message lui-même et sa signature.nature à la machine, de préférence dans le même dossier.

Mais comment garantir la confidentialité, l'intégrité et l'authenticité de la signature transmise ?nattu es en même temps ? Il suffit de le chiffrer après l'avoir créé ! Cela garantira la confidentialité de notre message, fichier ou document. Pour ce faire, écrivons la commande :

gpg -a -u Koldek -r Raider -se target.txt
Notez que le -u parameter est responsable de la clé à signer, et -r est responsable de la clé publique pour chiffrer le message

Un fichier sera généré dans lequel le message et la signaturenature sera déjà intégré, vous devez maintenant le vérifier et le déchiffrer avec la commande :

gpg -d target.txt.asc
Encrypt and sign
Capture d'écran №13 — Chiffrer et signer

Dans la création de digital signatEn utilisant GPG, nous voyons un outil puissant pour garantir la sécurité et la confiance dans l’échange d’informations. Ce processus garantit l'intégrité des données et confirme la paternité, ouvrant de nouvelles possibilités de messagerie sécurisée et de partage de fichiers dans le digittout le monde.

Voter:
5 sur 5
Note moyenne : 5
Noté par : 1
1101 CT Amsterdam Pays-Bas, Herikerbergweg 292
+31 20 262-58-98
700 300
ITGLOBAL.COM NL
700 300

Vous pourriez aussi aimer...

Nous utilisons des cookies pour rendre votre expérience sur le Serverspace meilleur. En poursuivant votre navigation sur notre site, vous acceptez nos
Utilisation des cookies et de Données privées.