Introduction au chiffrement à clé publique

Le chiffrement à clé publique est également appelé chiffrement à clé asymétrique. Comme le nom lui-même dit une clé asymétrique, deux clés différentes sont utilisées pour le cryptage de la clé publique. Une clé est utilisée pour le processus de cryptage et une autre clé est utilisée pour le processus de décryptage. Une fois que la clé est décidée pour le cryptage et le décryptage, aucune autre clé ne sera utilisée. À partir de ces deux clés, une clé est appelée clé publique et une autre est appelée clé privée.

Supposons que vous souhaitiez communiquer avec des amis sur Internet, pour démarrer la communication en toute sécurité, vous devez obtenir la clé publique et la clé privée. La clé privée est une clé secrète, vous devez la garder secrète. Si la clé privée est cédée à une autre partie, il y a un risque d'attaque par l'intermédiaire de la tierce partie.

Supposons que X veuille communiquer avec Y en toute sécurité, alors X et Y doivent avoir une clé publique et une clé privée.

  • X devrait garder sa clé privée secrète.
  • X devrait informer sa clé publique de Y.
  • Y devrait garder sa clé privée secrète.
  • Y devrait informer sa clé publique de X.

Comment fonctionne le cryptage à clé publique?

Le fonctionnement du chiffrement à clé publique est expliqué ci-dessous:

Cas 1

Lorsque X veut communiquer avec Y, X utilise la clé publique de Y pour crypter le message, cela est possible car Y partage sa clé publique avec X.

  • X envoie le message crypté à Y.
  • Y reçoit le message de X.
  • Y déchiffre le message en utilisant sa clé privée, c'est-à-dire Y.

Remarque: Seul Y connaît sa clé privée et son message peut être déchiffré à l'aide de la clé privée de Y. L'avantage est que la partie ne peut pas déchiffrer le message car elle ne connaît pas la clé privée de Y. Seule la clé privée de Y peut déchiffrer le message.

Cas 2

Lorsque Y souhaite communiquer avec X, Y utilise la clé publique de X pour crypter le message. Cela est possible car X partage sa clé publique avec Y.

  • Y envoie le message crypté à X.
  • X reçoit le message de Y
  • X déchiffre le message à l'aide de sa clé privée, c'est-à-dire X.

Composants

Voici les composants du chiffrement à clé publique:

  • Texte brut: le texte qui est dans un format lisible et qui peut être compris par n'importe qui est appelé texte brut. Le texte brut est utilisé comme entrée pour le processus de cryptage.
  • Ciphertext: C'est le texte qui est converti en format lisible dans un format non lisible en utilisant l'algorithme de cryptage est appelé un ciphertext. Le texte chiffré est une sortie du processus de cryptage. Il est dans un format non lisible et n'est compris par personne.
  • Clé publique: la clé connue de tous est connue sous le nom de clé publique. Une clé publique est généralement utilisée pour le processus de chiffrement du côté de l'expéditeur.
  • Clé privée: La clé qui n'est pas connue de tout le monde, qui est gardée secrète est connue comme une clé privée. La clé privée est utilisée pour le processus de décryptage côté récepteur.
  • Algorithme de chiffrement: l'algorithme utilisé pour convertir le texte brut en texte chiffré est appelé algorithme de chiffrement.
  • Algorithme de déchiffrement: l'algorithme utilisé pour convertir le texte chiffré en texte brut est appelé algorithme de déchiffrement.

Algorithmes de chiffrement à clé publique

Voici les algorithmes de chiffrement à clé publique.

Algorithme RSA

RSA est l'algorithme de chiffrement à clé publique le plus populaire. L'algorithme RSA est basé sur le calcul mathématique où l'identification et la multiplication d'un grand nombre premier est facile mais difficile à factoriser leur facteur. Les clés privées et publiques utilisées dans le RSA sont de grands nombres premiers.

Étapes pour les algorithmes RSA:

  • Sélectionnez deux grands nombres premiers X et Y.
  • Calculez le produit N = X * Y.
  • Choisissez la clé publique E de telle sorte qu'elle ne soit pas un facteur de (X - 1) et (Y - 1).
  • Choisissez la clé privée D de telle sorte que l'équation suivante devienne vraie.
  • (D * E) mod (X - 1) * (Y - 1) = 1
  • Pour le chiffrement, calculez CT comme CT = PT E mod N.
  • Envoyez le CT au récepteur.
  • Pour le décryptage, calculez PT comme PT = CT D mod N.
Remarque: Dans l'algorithme RSA, la sélection et la génération d'une clé publique et de la clé privée est une tâche critique.

Algorithme de cryptographie ElGamal

ElGamal est un autre algorithme de cryptage à clé publique populaire.

ElGamal Key Generation:

  • Sélectionnez un grand nombre premier P comme clé publique et Q comme clé privée.
  • Sélectionnez la deuxième clé de cryptage comme E1.
  • Sélectionnez la troisième clé de cryptage comme E2 de telle sorte que E2 = E Q mod P Cryptage de la clé ElGamal.
  • Sélectionnez le nombre aléatoire R.
  • Calculez le texte chiffré comme CT = E1 R mod P.
  • Calcul du deuxième texte de chiffrement CT2 = (PT * E2 R) mod P déchiffrement de la clé ElGamal
  • Calculez le texte brut comme PT = (CT2 * (CT Q) - 1) mod P.

Articles recommandés

Ceci est un guide sur le chiffrement à clé publique. Nous discutons ici du chiffrement à clé publique, de ses composants et de son fonctionnement, ainsi que d'exemples. Vous pouvez également consulter les articles suivants pour en savoir plus -

  1. Que pouvez-vous faire avec le chiffrement à clé symétrique?
  2. Cryptographie vs cryptage
  3. Types d'algorithmes symétriques
  4. Les principales fonctionnalités de Dropbox