Je lisais CLRS et on me dit:
Si la factorisation de grands nombres entiers est facile, alors la rupture du cryptosystème RSA est facile.
Ce qui a du sens pour moi car avec la connaissance de et , il est facile de créer la clé secrète que la connaissance de la clé publique. Cependant, cela explique la déclaration inverse, que je ne comprends pas très bien:q
L'inverse, si la factorisation de grands nombres entiers est difficile, alors la rupture de RSA est difficile, n'est pas prouvée.
Que signifie formellement la déclaration ci-dessus? Si nous supposons que l'affacturage est difficile (d'une manière formelle), pourquoi cela n'implique-t-il pas que la rupture du système cryptographique RSA est difficile?
Considérez maintenant que si nous supposions que l'affacturage est difficile ... et que nous avons découvert que cela signifiait que le cryptosystème RSA est difficile à briser. Qu'est-ce que cela signifierait officiellement?
la source
The converse statement -- that if factoring large integers is hard, then breaking RSA is hard -- is unproven.
Réponses:
La façon la plus simple d'y penser est de penser à la contrapositive.
La déclaration:
est équivalent à ce qui suit:
Cette déclaration n'a pas été prouvée.
Ce qu'ils disent, c'est que nous avons un algorithme qui résout la factorisation en temps polynomial. Ensuite, nous pouvons l'utiliser pour construire un algorithme qui résout RSA en temps polynomial.
Mais, il pourrait y avoir une autre façon de casser RSA qui n'implique pas la factorisation d'entiers. Il est possible que nous découvrions que nous pouvons casser RSA d'une manière qui ne nous permet pas de factoriser les entiers en temps polynomial.
Bref, nous savons que RSA est au moins aussi simple que l'affacturage. Il y a deux résultats possibles: RSA et l'affacturage sont de difficulté équivalente, ou RSA est un problème strictement plus facile que l'affacturage. Nous ne savons pas quel est le cas.
la source
L'existence d'une voie dure ne signifie pas qu'il n'y a pas de voie facile.
Il peut y avoir un certain nombre de façons de rompre le RSA et il nous suffit d'en trouver un.
L'une de ces façons consiste à factoriser un grand entier, donc si c'est facile, nous pouvons le faire de cette façon et RSA est cassé. C'est aussi le seul moyen que nous connaissons encore. S'il est impossible de le faire, nous pouvons toujours trouver un autre moyen, moins exigeant en termes de calcul, d'effectuer notre tâche sans avoir besoin de calculer explicitement p et q à partir de n .
Pour prouver RSA est cassé, nous devons prouver que l' une façon de le faire est facile.
Pour prouver que RSA est sûr, nous devons prouver que toutes les façons de le faire sont difficiles.
Enfin, votre déclaration n'est pas prouvée car il n'est pas prouvé qu'aucune autre méthode plus simple n'existe pour extraire des informations d'un texte crypté.
la source
Une autre façon de voir les choses est que la rupture du RSA ne nécessite qu'un cas spécial d'affacturage, qui peut ou non être facile quelle que soit la question générale de l'affacturage.
la source
Cela signifie que le problème RSA semble (à l'heure actuelle) être plus spécifique que l'affacturage.
Le problème de l'affacturage est le suivant: connaître un semi-premier trouver à la fois et .p qpq, p q
Si vous pouvez résoudre efficacement le problème d'affacturage, alors vous pouvez résoudre efficacement le problème RSA: prenez le semi-premier, factorisez-le, utilisez certains théorèmes sur les modules premiers pour calculer un exposant inverse qui révèle tous les textes chiffrés comme . (En fait, ces théorèmes expliquent comment fonctionne la configuration pour RSA: nous connaissons les deux nombres premiers pendant la phase de configuration.)m ≡ v dd m≡vd
Cependant, on ne sait pas que la résolution de ce problème ci-dessus pour les messages arbitraires vous dira quoi que ce soit sur les facteurs du module ou les exposants impliqués. Cela pourrait ou non; nous ne savons pas. De nombreuses personnes intelligentes ont vraisemblablement examiné le problème, mais rien d’évident n’a sauté aux yeux. On ne sait donc pas que le problème de l'affacturage est résolu par des solutions au problème RSA (plus l'effort polynomial), mais seulement que le problème RSA est résolu par des solutions au problème de l'affacturage (plus l'effort polynomial).m
En fait, en 1998, Boneh et Venkatesan ont publié une preuve qu'une certaine classe simple d'algorithmes (plus, temps, exposants, aucun élément de type XOR / NAND) ne peut pas être utilisée pour transformer une solution à problème RSA en algorithme d'affacturage. L'argument avait une ingéniosité simple: en manipulant mathématiquement ces opérations arithmétiques, nous pouvons découvrir que "l'algorithme de réduction" (pour plus de précision: c'est l'algorithme qui utilise un "oracle" RSA pour un semi-prime pour factoriser ce semi-premier) tourne être un algorithme de factorisation à part entière, afin que nous puissions le modifier en une variante qui n'appelle pas son oracle. Nous avons donc une trichotomie: soit (a) il n'y a pas un tel algorithme de réduction, ou (b) l'algorithme de réduction n'a pas une bonne interprétation arithmétique ou (c) la factorisation est en temps polynomial, tout comme l'algorithme de réduction l'était.
la source
RSA dépend de deux tâches mathématiques abstraites qui sont considérées comme difficiles: l'affacturage entier, comme vous le savez, mais aussi le problème du logarithme discret . Vous pouvez casser RSA si vous pouvez rapidement factoriser un nombre qui est le produit de deux grands nombres premiers inconnus; mais vous pouvez également casser RSA si vous pouvez trouver rapidement dans le groupe fini , où et sont l'exposant et le module RSA public, et est le texte chiffré.Z m e m ClogeC Zm e m C
Ces deux tâches mathématiques sont liées, mais (si je me souviens bien), on pense qu'une solution à l'une n'impliquerait pas une solution à l'autre. Je ne sais pas si ce sont les deux seules façons de casser RSA mathématiquement.
la source