Comment le mauvais est 3 comme un RSA publique exposant
Je suis en création d'une application où je dois utiliser RSA pour crypter certaines choses en utilisant une clé publique. Je veux que ce cryptage pour être vraiment rapide. D'abord, j'ai essayé avec une clé de 2048 bits avec F4 (=65537) l'exposant, mais il n'est pas assez rapide. Alors maintenant, je suis en train d'étudier les 2 options suivantes:
- De 2048 bits module d'élasticité, e=3
- 1024 bits module d'élasticité, e=65537
À la fois satisfaire mes exigences de performance, mais qui assure une meilleure sécurité? Je tiens également à noter que j'utilise le PKCS#1 le protocole de remplissage.
OriginalL'auteur safsaf32 | 2009-12-28
Vous devez vous connecter pour publier un commentaire.
Si vous utilisez aléatoire rembourrage comme OAEP. dans PKCS#1, la plupart (tous?) des faiblesses connues de l'aide de faible exposants ne sont plus pertinents.
Aussi avez-vous essayé d'utiliser e=17? Il n'y a aucune règle en disant que vous avez à choisir, soit 3 ou 65537.
Vous êtes de droite. C'est juste que je suis en utilisant openssl pour générer la clé et de 0.9.8 il ne prend pas en charge l'utilisation de toutes les autres exposants.
Gardez à l'esprit également, "théorique matériel périphérique nommé TOURNOYER et décrit par Shamir et Tromer, en 2003, ont remis en question la sécurité de 1024 bits pour les clés. Il est actuellement recommandé de n être d'au moins 2048 bits." en.wikipedia.org/wiki/RSA#Security_and_practical_considerations
Je viens de constater que les clés openssh (généré avec la commande ssh-keygen) l'utilisation de e=35 (qui est réellement inhabituel depuis 35 n'est pas premier). Cela signifie qu'une petite exposant est probablement pas un gros problème (quand un bon rembourrage système est utilisé).
PGP utilise e=17 par défaut.
OriginalL'auteur Mark Byers
À condition que vous utilisez un bon rembourrage régime, il n'y a pas de raison pourquoi e=3 doit être le pire de sécurité que n'importe quel autre public exposant. À l'aide d'un court exposant a des problèmes si vous n'utilisez pas non plus un bon rembourrage régime, mais le problème réside dans le rembourrage schéma que dans l'exposant.
Le "feeling" de nombreuses chercheur est que e=3 n'est pas mieux que tout autre public, exposant, et e=3 est peut-être légèrement plus faible à certains quelconque date ultérieure, bien que rien de points à une faiblesse pour l'instant.
La longueur de la clé a beaucoup plus d'impact pratique sur la sécurité. 768 bits de clé RSA a été piraté récemment (ce qui n'était pas facile ! Quatre années de travail avec des gros ordinateurs et des cerveaux plus gros). Une résolution de 1024 bits est considéré comme suffisant pour le court terme, mais à long terme, utilise (par exemple, les données chiffrées a une grande valeur et doit être encore confidentielle en l'an 2030) serait mandat quelque chose de plus grand, par exemple, de 2 048 bits. Voir ce site pour beaucoup d'informations sur la façon dont la robustesse cryptographique peut être estimée et a été estimée par différents chercheurs et des organisations.
Si vous êtes après un très rapide de cryptage asymétrique, vous pouvez étudier les Rabin-Williams schéma de chiffrement qui est plus rapide que le RSA, tout en fournissant au moins le même niveau de sécurité pour la même longueur de sortie (mais il n'est pas facile-à-utilisation détaillée de la norme pour ce régime, contrairement aux RSA avec PKCS#1, si vous êtes un peu sur votre propre ici).
OriginalL'auteur Thomas Pornin
Dans leur livre"Pratique De La Cryptographie', Bruce Schneier et Niels Ferguson suggérons d'utiliser un public exposant de 3 pour les signatures et 5 pour le chiffrement. Vous devriez vérifier sur les autres critères, ils recommandent d'éviter les catastrophes. L'article 13.4 couvre ce (p229ff), et discute de la pas très complexe exigence que soit n = pq (où p et q sont aléatoires de nombres premiers), ni (p-1) ni (q-1) peut être un multiple de 3 ou de 5. Mais toujours vérifier le livre pour plus de détails.
(Je crois qu'il est nouvelle édition du livre à paraître en 2010.)
OriginalL'auteur Jonathan Leffler
Alors qu'on ne connaît actuellement aucune attaque contre si le rembourrage est utilisé, les petits exposants sont plus susceptibles de conduire à des exploits en cas d'erreurs de mise en oeuvre. Et la mise en œuvre des erreurs sont malheureusement encore une menace. E. g. cette est une vulnérabilité qui a été assez "populaire". (Note, c'est pour les signatures. Je veux juste montrer que même un logiciel commercial peut avoir de graves bugs.)
Si vous devez couper les coins ronds, puis vous devez considérer les implications potentielles de vos actions. I. e. le choix d'un petit module ou un petit exposant les deux ont leurs propres inconvénients.
Si vous choisissez un petit (1024 bits) module alors vous ne pouvez pas supposer que vos données peuvent être gardées confidentielles pour des décennies.
Si vous choisissez un petit exposant de vous pourrait être plus sensibles aux erreurs de mise en oeuvre.
Dans le premier cas, vous avez assez bien de savoir quand vos secrets sont en danger, car il est très facile de suivre les progrès réalisés dans l'affacturage. (Cela suppose bien sûr que les organismes qui ne sont pas de publier par exemple, la NSA n'est pas votre ennemi).
Dans le second cas (erreurs de mise en oeuvre), vous ne savez pas quand vous avez fait une erreur. Vous pourriez être en sécurité à l'aide de e=3 ou vous avez fait une grosse bourde. I. e. dans un cas, vous avez une assez bonne estimation de vos risques, et dans l'autre cas, vous n'avez pas.
Par conséquent, je vous recommande de ne pas utiliser e=3.
Je ne l'utiliserais plus de marge de sécurité contre les menaces qui sont difficiles à prévoir, que les menaces qui sont largement médiatisé.
OriginalL'auteur Accipitridae
Si votre exposant est faible et la valeur de m*e < module, vous pouvez simplement prendre l'epf racine du texte chiffré à déchiffrer.
C'est à partir de mes notes sur les crypto y a deux ans. Mais, pour répondre à votre question, il semblerait que l'option 2, c'est mieux.
Quelqu'un qui est plus envie de faire des maths pourriez être en mesure de vous donner une meilleure explication.
OriginalL'auteur Ritwik Bose
Pour info, voir ce pour un peu d'histoire:
http://chargen.matasano.com/chargen/2006/9/18/rsa-signature-forgery-explained-with-nate-lawson-part-iv.html
OriginalL'auteur Yuhong Bao
De citer Don Coppersmith 1997 papier "Petites Solutions d'Équations Polynomiales, et Faible Exposant RSA Vulnérabilités":
Même si cela peut ne pas être un problème si le RSA-OAEP. le protocole de remplissage est utilisé, le fichier PKCS#1 le protocole de remplissage (op est utilisé) est vulnérable si le public en exposant 3 est utilisé.
La référence dans ma réponse à une attaque spécifique. S'il vous plaît montrer où Don (et, par conséquent, I) eu tort. Répéter la fausse déclaration n'est pas la vérité.
Assez juste, puisque l'OP n'a pas précisé s'il était le cryptage de clés ou autre chose, il n'y a aucune garantie qu'il serait assez aléatoires, rembourrage de PKCS #1.
OriginalL'auteur FaST4