Cryptage RSA

Cryptage RSA , en cryptage Rivest-Shamir-Adleman complet , type de cryptographie à clé publique largement utilisé pour le cryptage des données des e-mails et autres transactions numériques sur Internet. Le RSA doit son nom à ses inventeurs, Ronald L. Rivest, Adi Shamir et Leonard M. Adleman, qui l'ont créé alors qu'il était à la faculté du Massachusetts Institute of Technology.

La table Vigenère Dans le cryptage en clair, la lettre chiffrée se trouve à l'intersection de la colonne en tête par la lettre en clair et de la ligne indexée par la lettre clé. Pour déchiffrer le texte chiffré, la lettre en clair se trouve en tête de la colonne déterminée par l'intersection de la diagonale contenant la lettre chiffrée et de la ligne contenant la lettre clé.En savoir plus sur cette rubrique Cryptologie: cryptage RSA Le schéma de clé publique le plus connu est le cryptoalgorithme Rivest – Shamir – Adleman (RSA). Dans ce système, un utilisateur choisit secrètement une paire de prime ...

Dans le système RSA, un utilisateur choisit secrètement une paire de nombres premiers p et q si grands que la factorisation du produit n = p q est bien au-delà des capacités de calcul projetées pour la durée de vie des chiffrements. À partir de 2000, les normes de sécurité du gouvernement américain exigent que le module soit d'une taille de 1 024 bits, c'est-à-dire que p et q doivent avoir chacun une taille d'environ 155 décimales, donc nest à peu près un nombre de 310 chiffres. Étant donné que les plus grands nombres fixes qui peuvent actuellement être factorisés ne sont que la moitié de cette taille, et comme la difficulté de factoriser environ double pour chaque trois chiffres supplémentaires dans le module, les modules à 310 chiffres sont censés être à l'abri de la factorisation pendant plusieurs décennies.

Après avoir choisi p et q , l'utilisateur sélectionne un entier arbitraire e inférieur à n et relativement premier à p - 1 et q - 1, c'est-à-dire que 1 est le seul facteur commun entre e et le produit ( p - 1) ( q - 1). Cela garantit qu'il existe un autre nombre d pour lequel le produit e d laissera un reste de 1 lorsqu'il est divisé par le plus petit commun multiple de p - 1 et q - 1. Avec la connaissance de p et q , le nombre dpeut facilement être calculé à l'aide de l'algorithme euclidien. Si l'on ne connaît pas p et q , il est également difficile de trouver e ou d étant donné l'autre quant au facteur n , qui est à la base de la cryptosécurité de l'algorithme RSA.

Les étiquettes d et e seront utilisées pour désigner la fonction à laquelle une touche est placée, mais comme les touches sont complètement interchangeables, ce n'est qu'une commodité pour l'exposition. Pour implémenter un canal de confidentialité en utilisant la version standard à deux clés du cryptosystème RSA, l'utilisateur A publierait e et n dans un annuaire public authentifié mais garderait d secret. Toute personne souhaitant envoyer un message privé à A l'encoderait en nombres inférieurs à n , puis le chiffrerait à l'aide d'une formule spéciale basée sur e et n . A peut décrypter un tel message en sachant d, mais la présomption - et la preuve jusqu'à présent - est que pour presque tous les chiffrements, personne d'autre ne peut déchiffrer le message à moins qu'il ne puisse également factoriser n .

De même, pour implémenter un canal d'authentification, A publierait d et n et garderait e secret. Dans l'utilisation la plus simple de ce canal pour la vérification d'identité, B peut vérifier qu'il est en communication avec A en regardant dans le répertoire pour trouver une clé de décryptage de d et l'envoi d' un message à chiffrer. S'il récupère un chiffrement qui déchiffre son message de défi en utilisant d pour le déchiffrer, il saura qu'il a été probablement créé par quelqu'un connaissant e et donc que l'autre communiquant est probablement A. La signature numérique d'un message est une opération plus complexe et nécessite une fonction de «hachage» crypto-sécurisée. Il s'agit d'une fonction publiquement connue qui mappe n'importe quel message en un message plus petit - appelé résumé - dans lequel chaque bit du résumé dépend de chaque bit du message de telle sorte que changer ne serait-ce qu'un bit dans le message est susceptible de changer , de manière crypto-sécurisée, la moitié des bits du condensé. Par cryptosecure, on entend qu'il est impossible pour quiconque de trouver un message qui produira un condensé préaffecté et tout aussi difficile de trouver un autre message avec le même condensé qu'un message connu. Pour signer un message - qui n'a peut-être même pas besoin d'être gardé secret - A crypte le résumé avec le secret e, qu'il ajoute au message. N'importe qui peut alors déchiffrer le message à l'aide de la clé publique d pour récupérer le condensé, qu'il peut également calculer indépendamment du message. Si les deux sont d'accord, il doit conclure que A est à l'origine du chiffrement, puisque seul A connaissait e et aurait donc pu chiffrer le message.

Jusqu'à présent, tous les systèmes de cryptage à deux clés proposés exigent un prix très élevé pour la séparation du canal de confidentialité ou de secret du canal d'authentification ou de signature. La quantité de calcul considérablement accrue impliquée dans le processus de cryptage / décryptage asymétrique réduit considérablement la capacité du canal (bits par seconde d'informations de message communiquées). Pendant environ 20 ans, pour des systèmes à sécurité comparable, il a été possible d'atteindre un débit 1 000 à 10 000 fois plus élevé pour les algorithmes à clé unique que pour les algorithmes à deux clés. En conséquence, la principale application de la cryptographie à deux clés est dans les systèmes hybrides. Dans un tel système, un algorithme à deux clés est utilisé pour l'authentification et les signatures numériques ou pour échanger une clé de session générée aléatoirement à utiliser avec un algorithme à clé unique à grande vitesse pour la communication principale.À la fin de la session, cette clé est supprimée.