IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Java Discussion :

Problème de facteurs premiers RSA-2048 avec le code java


Sujet :

Java

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Java
    Inscrit en
    Avril 2015
    Messages
    405
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Guinée

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Avril 2015
    Messages : 405
    Points : 0
    Points
    0
    Par défaut Problème de facteurs premiers RSA-2048 avec le code java
    Bonjour à tous;
    J'ai fait un code java permettant de calculer les facteurs premiers d'un nombre composé;
    pour le moment l'algo semble correct car c'est basé sur ma formule2 calculant les nombres premiers et un test sur les petites valeurs: RIEN A SIGNALER;

    voici quelques essais :

    Code JAVA : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
     
    Entrez votre RSA nombre pour chercher ses facteurs premiers:
    22
    Recherche des facteurs premiers:
     
    [2, 11]
     
    Entrez votre RSA nombre pour chercher ses facteurs premiers:
    25
    Recherche des facteurs premiers:
     
    [5, 5]
     
    Entrez votre RSA nombre pour chercher ses facteurs premiers:
    55
    Recherche des facteurs premiers:
     
    [11, 5]
     
    Entrez votre RSA nombre pour chercher ses facteurs premiers:
    11831
    Le nombre est premier; Impossible de decomposer
     
    Entrez votre RSA nombre pour chercher ses facteurs premiers:
    11227
    Recherche des facteurs premiers:
     
    [109, 103]

    Mais quand je lance le nombre RSA-2048:

    Code JAVA : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    25195908475657893494027183240048398571429282126204032027777137836043662020707595556264018525880784406918290641249515082189298559149176184502808489120072844992687392807287776735971418347270261896375014971824691165077613379859095700097330459748808428401797429100642458691817195118746121515172654632282216869987549182422433637259085141865462043576798423387184774447920739934236584823824281198163815010674810451660377306056201619676256133844143603833904414952634432190114657544454178424020924616515723350778707749817125772467962926386356373289912154831438167899885040445364023527381951378636564391212010397122822120720357

    la machine s'éteint au bout de 7 à 10 minutes:

    Code JAVA : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Entrez votre RSA nombre pour chercher ses facteurs premiers:
    25195908475657893494027183240048398571429282126204032027777137836043662020707595556264018525880784406918290641249515082189298559149176184502808489120072844992687392807287776735971418347270261896375014971824691165077613379859095700097330459748808428401797429100642458691817195118746121515172654632282216869987549182422433637259085141865462043576798423387184774447920739934236584823824281198163815010674810451660377306056201619676256133844143603833904414952634432190114657544454178424020924616515723350778707749817125772467962926386356373289912154831438167899885040445364023527381951378636564391212010397122822120720357
     
    Recherche des facteurs premiers:

    Je sais que ça doit prendre énormément de temps mais je ne m'attendais pas à une extinction de machine quand même;

    Comme je n ai pas assez d’expérience avec ce genre d’opération;

    Ma question est : est ce que c'est sur des gros serveurs qu'on doit faire ce genre d’opération ?
    ou bien s agit t il d'un problème de code ?

    Merci !

  2. #2
    Membre régulier

    Inscrit en
    Novembre 2010
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Novembre 2010
    Messages : 44
    Points : 124
    Points
    124
    Par défaut
    Bonjour
    J'ai eu un problème similaire : Ma machine rebootait quand un jeu faisait trop d'effets graphique. J'ai changé de machine et ca a fonctionné. Il y avais plusieurs autres problèmes sur cette machine tel que des ports USB grillés, une sortie vidéo grillée aussi. Un peu de surchauffe et c'était le reboot. J'ai changé de PC et tout va bien maintenant. Tu as peu être un problème matériel, tel que de la mémoire défaillante ou une surchauffe.
    Il faut aussi vérifier les mises en veilles automatique : Est-ce que la machine s'éteint toute seule au bout de 7/8 minutes même si le programme ne tourne pas ?
    A ta place, je tenterai d'afficher ou de logger des traces d'exécution au risque de perdre le disque si la machine se coupe pendant l'écriture du log.
    En tout cas, cela risque de prendre du temps si il faut 7/8 minutes pour chaque test.

    Si tu fournis le source complet, je peu éventuellement tenter de l'exécuter sur ma machine.
    Bon courage

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Java
    Inscrit en
    Avril 2015
    Messages
    405
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Guinée

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Avril 2015
    Messages : 405
    Points : 0
    Points
    0
    Par défaut
    Bonsoir Monsieur seroze;
    Citation Envoyé par seroze Voir le message
    Bonjour
    Si tu fournis le source complet, je peu éventuellement tenter de l'exécuter sur ma machine.

    Bon courage
    C'est une bonne nouvelle ça!!

    Ici je vis dans le tiers monde donc le courant n'est pas sur et mon ordinateur fait Défaut aussi vue votre réponse car j'ai un ordinateur de 2007; je l'ai eu en récompense après ma soutenance de 2006;
    ça s’éteint cas même après un long travail mais aussi après un plantage et immobilisation de la souris;

    Je suis content qu'un expert me sollicite d’exécuter mon programme à ma place(me réduisant la tache) pour me sauver de plus;

    Sauf que même si mon programme n'est pas costaux, il y a tout de même une récompense ouverte pour ceux qui réussissent à trouver ces foutu facteurs premiers de RSA Security;

    Donc dites moi comment nous allons faire quand vous trouverez ces facteurs?
    Je vais donc vous envoyez la source en message privé;

    Soyez sur que mon programme trouvera; mais la question est pour combien de temps la machine doit tourner? ça doit travaillez 24h/24 sans arrêt et peut être pour des jours voir des semaines;

    Mais le code trouvera tout seule sans manuel;

    Merci pour votre aide;

  4. #4
    Membre régulier

    Inscrit en
    Novembre 2010
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Novembre 2010
    Messages : 44
    Points : 124
    Points
    124
    Par défaut
    Dans ces conditions, il vaut mieux que le programme puisse sauvegarder son état toutes les minutes pour pouvoir être relancé par la suite en cas d'arrêt. De cette manière il peut être coupé et relancé à tout moment en repartant des valeurs sauvegardés.
    De plus, si il faut des calculs rapides, il vaut mieux alors considérer un langage compilé comme Pascal. Lazarus IDE est très bien et il est téléchargeable gratuitement. Ne pas oublier de retirer les informations de débogage dans les options pour une compilation optimisée qui produira un programme plus rapide.

  5. #5
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    On va quand même préciser des choses :

    • A ma connaissance, la récompense pour factoriser ce nombre a expiré en 2007, et sans surprise personne n'y est arrivé. Je suppose qu'il n'est pas impossible que d'autres concours aient étendu la date limite pour une récompense, mais je ne suis pas au courant.
    • "Tourner des jours, voire des semaines." Hum. En principe on est plutôt censé compter en millions d'années. Et on est censé savoir que ce nombre n'a pas été factorisé par des CPUs/GPUs, parce que les océans n'ont pas encore été vaporisés par la chaleur émise par des CPUs/GPUs. Certes le défi consiste à trouver des optimisations pour faire mieux que ça. Mais la théorie est que personne n'en a trouvé.
    • Je ne pense pas qu'il existe "des machines appropriées pour ce genre de choses", car on n'est pas censé faire ce genre de choses. L'idée est tout de même de casser une clé de chiffrement. Alors bon, là c'est un défi, on s'amuse entre cryptographes, mais en général on ne conçoit pas des machines pour faire mumuse (ou alors ce sont des machines conçues pour le jeu vidéo, rien à voir.) Cela fait donc partie du défi de réfléchir à ce qui peut être une machine appropriée.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  6. #6
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Java
    Inscrit en
    Avril 2015
    Messages
    405
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Guinée

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Avril 2015
    Messages : 405
    Points : 0
    Points
    0
    Par défaut
    Bonsoir et merci pour votre intervention;

    Mr seroze je veux bien vous envoyer mon code en privé ça doit boucler entre 308 chiffres à 309 chiffres dont les deux facteurs sont compris;
    si ça fonctionne sans amélioration ou que vous l'améliorez le code et que vous craquez ce fameux nombre alors je veux trouver mon compte dedans aussi;

    de toute façon j'ai compris votre conseil, je voulais travailler en pascal mais les virus avais supprimé le turbo que j'avais et en commençant ce travail, j'avais tenté de télécharger sans succès;

    je vais donc télécharger Lazarus IDE;

    j'espère que c'est une version de pascal?


    Citation Envoyé par thelvin Voir le message
    On va quand même préciser des choses :

    • A ma connaissance, la récompense pour factoriser ce nombre a expiré en 2007, et sans surprise personne n'y est arrivé. Je suppose qu'il n'est pas impossible que d'autres concours aient étendu la date limite pour une récompense, mais je ne suis pas au courant.
    • Je ne pense pas qu'il existe "des machines appropriées pour ce genre de choses", car on n'est pas censé faire ce genre de choses
    Quels qu'un vient de me dire sur un autre forum que <<Je ne sais plus qui a dit "un bon algorithme vaut mieux qu'un bon ordinateur'>>
    Mais je ne rejette pas aussi votre idée car la résolution d'un problème nécessite parfois de nouvel outils ou un concept nouveau;
    comme nous ne somme pas des fabricants d'ordinateurs pour concevoir un model capable de craquer ces nombres;on a cas même l'algo à notre porté;

    voilà une récompense de 2009

    RSA-768 232 768 (50 000 $) 12 décembre 2009 Thorsten Kleinjung et al1

    sur le site moi je vois bien que c'est ouvert avec prix pour certain tels que RSA-2048

    RSA-2048 617 2048 (200 000 $) ouvert

    Merci pour votre aide

  7. #7
    Expert éminent sénior
    Avatar de Mat.M
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    8 361
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8 361
    Points : 20 381
    Points
    20 381
    Par défaut
    Citation Envoyé par sandaff Voir le message
    Je sais que ça doit prendre énormément de temps mais je ne m'attendais pas à une extinction de machine cas même;
    dans le code ( ça serait bien de l'avoir ) y'a sûrement une fonction récursive est-ce le cas ?
    Donc vous bouclez indéfiniment dépassement de pile,exception non contrôlée et plantage.
    Apparemment vous gérez mal les exceptions...mais sans code on peut pas en dire plus

  8. #8
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Java
    Inscrit en
    Avril 2015
    Messages
    405
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Guinée

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Avril 2015
    Messages : 405
    Points : 0
    Points
    0
    Par défaut
    Citation Envoyé par Mat.M Voir le message
    dans le code ( ça serait bien de l'avoir ) y'a sûrement une fonction récursive est-ce le cas ?
    Donc vous bouclez indéfiniment dépassement de pile,exception non contrôlée et plantage.
    Apparemment vous gérez mal les exceptions...mais sans code on peut pas en dire plus
    soit c'est le virus; soit le surchauffe;
    hier son état s'est empiré car ça s'est arrêter deux fois après le démarrage et avant le lancement du programme;

    mais aussi dire :
    Code JAVA : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    i=1;
    while (i<=n){
    traitement if uniquement;
    }
    il n y a pas plus compliquer que ça;
    donc il n y a aucune récursivité sauf une boucle sur une grande plage de valeurs comme il s'agit de RSA bits

    Merci pour votre intervention!

  9. #9
    Expert éminent sénior
    Avatar de Mat.M
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    8 361
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8 361
    Points : 20 381
    Points
    20 381
    Par défaut
    Citation Envoyé par sandaff Voir le message
    il n y a pas plus compliquer que ça;
    donc il n y a aucune récursivité sauf une boucle sur une grande plage de valeurs comme il s'agit de RSA bits
    est-ce que vous gérez les exceptions comme j'ai écris dans mon premier message ?
    Est-ce que vous faites un fichier log pour voir ce qui ne va pas ?
    Sinon comme l'écrit thelvin il faudrait envisager de faire du code GPU pour faire diminuer la charge sur le CPU

  10. #10
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Java
    Inscrit en
    Avril 2015
    Messages
    405
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Guinée

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Avril 2015
    Messages : 405
    Points : 0
    Points
    0
    Par défaut
    Je viens de voir le message d'erreur dans la bulle d'info sur la barre des taches;
    un problème de batterie a été détecté;
    votre ordinateur risque de s'arrêté subitement;
    voici donc le message!

    je suis aller changer les paramètres sur le secteur au lieu de la batterie puis sur économie maximal et d'autres paramètres aussi;

    je vais l'essayer avec ça d'abord;
    avant de continuer sur le code je vais finaliser la traduction de mon manuscrit sur ma découverte en anglais qui a été exigé par l'éditeur qui prêt a publier;
    je vais revenir demain sur ça en téléchargeant le pascal comme recommander par seroze;
    je peut le faire avec java aussi mais en procédant l'affichage des valeurs trouvées à chaque fois et à chaque affichage d'une valeur je la copie dans word puis plus le nombre augmente je procède manuellement le seconde test, mais manuel; et a la reprise donc après un arrêt, je change manuellement le paramètre de parcourt pour prendre le dernier affiché;

Discussions similaires

  1. imprimer une page word avec de code java
    Par AmineDev9 dans le forum Débuter avec Java
    Réponses: 1
    Dernier message: 21/09/2008, 20h38
  2. Exécution d'un script ant avec un code JAVA
    Par nibor2luxe dans le forum ANT
    Réponses: 1
    Dernier message: 23/01/2008, 13h32
  3. Créer une classe .java avec un code java
    Par demcoul dans le forum Langage
    Réponses: 10
    Dernier message: 03/01/2008, 00h06
  4. probléme avec mon code JAVA et MYSQL
    Par ulysse031 dans le forum JDBC
    Réponses: 5
    Dernier message: 10/05/2007, 00h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo