Partage
  • Partager sur Facebook
  • Partager sur Twitter

Cryptographie

Déchiffrement par césar

    20 mars 2010 à 22:32:56

    <code type="java"></code>
    salut je suis sur un projet de cryptographie sous eclipse,ça concerne le déchiffrement par césar je rencontre des problèmes dessus et également le chiffrement et déchiffrement de vigenère si quelqun peut m'aider s il vous plaît !!!!!!!!!!!!!
    • Partager sur Facebook
    • Partager sur Twitter
      21 mars 2010 à 1:14:25

      euh ... pour aider il faudrait déjà que l'on connaisse ton problème.
      • Partager sur Facebook
      • Partager sur Twitter
      J'ai tous les badges d'OpenClassrooms.
        21 mars 2010 à 13:08:38

        mon problème est le suivant:quand je clic sur le bouton décrypter je clic sur une lettre pr déterminer que c'est la clé le texte en clair apparait alors voici le code jettes en un coup d oeil stp :
        package SR;

        import javax.swing.JFrame;

        import java.awt.BorderLayout;
        import java.awt.Color;

        import java.awt.GridLayout;
        import java.awt.event.ActionEvent;
        import java.awt.event.ActionListener;

        import javax.swing.JButton;

        import javax.swing.JPanel;
        import javax.swing.JScrollPane;
        import javax.swing.JTextArea;

        public class Crypt extends JFrame implements ActionListener{
        static JTextArea txt1;
        private JTextArea txt2;
        private JButton a,b,c,d,e1,f,g,h,i1,j1,k1,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,u1;
        private JPanel p1,p2,p3;
        StringBuffer texte = new StringBuffer("le marchand de glace est passé au zoo pour vendre ses délicieuses glaces dans le zoo") ;
        StringBuffer texte2 = new StringBuffer("le marchand de glace est passé au zoo pour vendre ses délicieuses glaces dans le zoo") ;
        public Crypt(){

        txt1= new JTextArea(5,10) ;

        txt1.setText("Entrez Le texte à chiffré");
        txt1.setEditable(false);



        txt2= new JTextArea(5,10) ;
        txt2.setEditable(false);
        txt2.setText("Le texte chiffré:");
        JScrollPane scrollingArea1 = new JScrollPane(txt2);
        JPanel content1 = new JPanel();
        content1.setLayout(new BorderLayout());
        content1.add(scrollingArea1, BorderLayout.CENTER);
        /*this.setContentPane(content);
        this.setTitle("TextAreaDemo B");
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);*/
        this.pack(); this.setContentPane(content1);
        this.setTitle("TextAreaDemo A");
        char[] alphabet1={'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'};


        StringBuffer texte = new StringBuffer("Le marchand de glace est passé au zoo pour vendre ses délicieuses glaces dans le zoo") ;
        String T = new String(texte);
        txt1.setText(T);
        String T2=new String(texte2);
        txt2.setText("");
        u1=new JButton("Décrypter") ;
        content1.setBackground(Color.lightGray);

        a= new JButton("A");
        b= new JButton("B");
        c = new JButton("C");
        d= new JButton("D");
        e1= new JButton("E");
        f= new JButton("F");
        g = new JButton("G");
        h= new JButton("H");
        i1= new JButton("I");
        j1= new JButton("J");
        k1 = new JButton("K");
        l= new JButton("L");
        m= new JButton("M");
        n= new JButton("N");
        o= new JButton("O");
        p= new JButton("P");
        q= new JButton("Q");
        r= new JButton("R");
        s= new JButton("S");
        t= new JButton("T");
        u = new JButton("U");
        v= new JButton("V");
        w= new JButton("W");
        x= new JButton("X");
        y= new JButton("Y");
        z= new JButton("Z");
        a.addActionListener(this);b.addActionListener(this);c.addActionListener(this);
        d.addActionListener(this);e1.addActionListener(this);f.addActionListener(this);
        g.addActionListener(this);h.addActionListener(this);i1.addActionListener(this);
        j1.addActionListener(this);k1.addActionListener(this);l.addActionListener(this);
        m.addActionListener(this);n.addActionListener(this);o.addActionListener(this);
        p.addActionListener(this);q.addActionListener(this);r.addActionListener(this);
        s.addActionListener(this);t.addActionListener(this);u.addActionListener(this);
        v.addActionListener(this);w.addActionListener(this);x.addActionListener(this);
        y.addActionListener(this);z.addActionListener(this);u1.addActionListener(this);
        GridLayout g1 = new GridLayout(2,13);
        p1= new JPanel();
        p2 = new JPanel();
        p3=new JPanel();
        p1.setBackground(Color.lightGray);
        p2.setBackground(Color.lightGray);
        p3.setBackground(Color.lightGray);

        p1.setLayout(g1);
        p1.add(a);p1.add(b);p1.add(c);p1.add(d);p1.add(e1);p1.add(f);p1.add(g);
        p1.add(h);p1.add(i1);p1.add(j1);p1.add(k1);p1.add(l);p1.add(m);p1.add(n);
        p1.add(o);p1.add(p);p1.add(q);p1.add(r);p1.add(s);p1.add(t);p1.add(u);
        p1.add(v);p1.add(w);p1.add(x);p1.add(y);p1.add(z);
        p3.add(txt1);
        add(p1,BorderLayout.SOUTH);p2.add(u1);
        add(p2,BorderLayout.EAST);
        add(p3,BorderLayout.NORTH);


        }




        public static void main (String [] args){




        // TODO Auto-generated method stub

        Crypt c1=new Crypt();
        c1.setTitle("Cryptographie de Jules César");
        c1.setSize(650,400);
        c1.setLocation(30,70);
        c1.setVisible(true);
        c1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        }





        public void actionPerformed(ActionEvent e) {
        char[] alphabet1={'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'};
        int i=0;StringBuffer H;
        if(e.getSource()==a){
        int k=0;
        for(i=0;i<texte.length();i++){
        for(int j=0; j<26; j++){
        if(texte.charAt(i)==alphabet1[j])
        {
        texte2.setCharAt(i, alphabet1[(j+k)%26]);
        j=26;H=texte2;
        }

        }
        }txt2.setText(" "+" "+texte2);
        }
        else if(e.getSource()==b){
        String T = new String(texte);
        txt1.setText(T);
        int k=1;
        for(i=0;i<texte.length();i++){
        for(int j=0; j<26; j++){
        if(texte.charAt(i)==alphabet1[j])
        {
        texte2.setCharAt(i, alphabet1[(j+k)%26]);
        j=26;H=texte2;
        }

        }
        }txt2.setText(" "+" "+texte2);
        }

        else if(e.getSource()==c){String T = new String(texte);
        txt1.setText(T);
        int k=2;
        for(i=0;i<texte.length();i++){
        for(int j=0; j<26; j++){
        if(texte.charAt(i)==alphabet1[j])
        {
        texte2.setCharAt(i, alphabet1[(j+k)%26]);
        j=26;H=texte2;
        }

        }
        }txt2.setText(" "+" "+texte2);

        }else if(e.getSource()==d){String T = new String(texte);
        txt1.setText(T);
        int k=3;
        for(i=0;i<texte.length();i++){
        for(int j=0; j<26; j++){
        if(texte.charAt(i)==alphabet1[j])
        {
        texte2.setCharAt(i, alphabet1[(j+k)%26]);
        j=26;H=texte2;
        }

        }
        }txt2.setText(" "+" "+texte2);

        }else if(e.getSource()==e1){String T = new String(texte);
        txt1.setText(T);
        int k=4;
        for(i=0;i<texte.length();i++){
        for(int j=0; j<26; j++){
        if(texte.charAt(i)==alphabet1[j])
        {
        texte2.setCharAt(i, alphabet1[(j+k)%26]);
        j=26;H=texte2;
        }

        }
        }txt2.setText(" "+" "+texte2);

        }else if(e.getSource()==f){String T = new String(texte);
        txt1.setText(T);
        int k=5;
        for(i=0;i<texte.length();i++){
        for(int j=0; j<26; j++){
        if(texte.charAt(i)==alphabet1[j])
        {
        texte2.setCharAt(i, alphabet1[(j+k)%26]);
        j=26;H=texte2;
        }

        }
        }txt2.setText(" "+" "+texte2);

        }else if(e.getSource()==g){String T = new String(texte);
        txt1.setText(T);
        int k=6;
        for(i=0;i<texte.length();i++){
        for(int j=0; j<26; j++){
        if(texte.charAt(i)==alphabet1[j])
        {
        texte2.setCharAt(i, alphabet1[(j+k)%26]);
        j=26;H=texte2;
        }

        }
        }txt2.setText(" "+" "+texte2);

        }else if(e.getSource()==h){String T = new String(texte);
        txt1.setText(T);
        int k=7;
        for(i=0;i<texte.length();i++){
        for(int j=0; j<26; j++){
        if(texte.charAt(i)==alphabet1[j])
        {
        texte2.setCharAt(i, alphabet1[(j+k)%26]);
        j=26;H=texte2;
        }

        }
        }txt2.setText(" "+" "+texte2);

        }else if(e.getSource()== i1){String T = new String(texte);
        txt1.setText(T);
        int k=8;
        for(i=0;i<texte.length();i++){
        for(int j=0; j<26; j++){
        if(texte.charAt(i)==alphabet1[j])
        {
        texte2.setCharAt(i, alphabet1[(j+k)%26]);
        j=26;H=texte2;
        }

        }
        }txt2.setText(" "+" "+texte2);

        }else if(e.getSource()==j1){String T = new String(texte);
        txt1.setText(T);
        int k=9;
        for(i=0;i<texte.length();i++){
        for(int j=0; j<26; j++){
        if(texte.charAt(i)==alphabet1[j])
        {
        texte2.setCharAt(i, alphabet1[(j+k)%26]);
        j=26;H=texte2;
        }

        }
        }txt2.setText(" "+" "+texte2);

        }else if(e.getSource()==k1){String T = new String(texte);
        txt1.setText(T);
        int k=10;
        for(i=0;i<texte.length();i++){
        for(int j=0; j<26; j++){
        if(texte.charAt(i)==alphabet1[j])
        {
        texte2.setCharAt(i, alphabet1[(j+k)%26]);
        j=26;H=texte2;
        }

        }
        }txt2.setText(" "+" "+texte2);

        }else if(e.getSource()==l){String T = new String(texte);
        txt1.setText(T);
        int k=11;
        for(i=0;i<texte.length();i++){
        for(int j=0; j<26; j++){
        if(texte.charAt(i)==alphabet1[j])
        {
        texte2.setCharAt(i, alphabet1[(j+k)%26]);
        j=26;H=texte2;
        }

        }
        }txt2.setText(" "+" "+texte2);

        }else if(e.getSource()==m){String T = new String(texte);
        txt1.setText(T);
        int k=12;
        for(i=0;i<texte.length();i++){
        for(int j=0; j<26; j++){
        if(texte.charAt(i)==alphabet1[j])
        {
        texte2.setCharAt(i, alphabet1[(j+k)%26]);
        j=26;H=texte2;
        }

        }
        }txt2.setText(" "+" "+texte2);

        }else if(e.getSource()==n){String T = new String(texte);
        txt1.setText(T);
        int k=13;
        for(i=0;i<texte.length();i++){
        for(int j=0; j<26; j++){
        if(texte.charAt(i)==alphabet1[j])
        {
        texte2.setCharAt(i, alphabet1[(j+k)%26]);
        j=26;H=texte2;
        }

        }
        }txt2.setText(" "+" "+texte2);

        }else if(e.getSource()==o){String T = new String(texte);
        txt1.setText(T);
        int k=14;
        for(i=0;i<texte.length();i++){
        for(int j=0; j<26; j++){
        if(texte.charAt(i)==alphabet1[j])
        {
        texte2.setCharAt(i, alphabet1[(j+k)%26]);
        j=26;H=texte2;
        }

        }
        }txt2.setText(" "+" "+texte2);

        }else if(e.getSource()==p){String T = new String(texte);
        txt1.setText(T);
        int k=15;
        for(i=0;i<texte.length();i++){
        for(int j=0; j<26; j++){
        if(texte.charAt(i)==alphabet1[j])
        {
        texte2.setCharAt(i, alphabet1[(j+k)%26]);
        j=26;H=texte2;
        }

        }
        }txt2.setText(" "+" "+texte2);

        }else if(e.getSource()==q){String T = new String(texte);
        txt1.setText(T);
        int k=16;
        for(i=0;i<texte.length();i++){
        for(int j=0; j<26; j++){
        if(texte.charAt(i)==alphabet1[j])
        {
        texte2.setCharAt(i, alphabet1[(j+k)%26]);
        j=26;H=texte2;
        }

        }
        }txt2.setText(" "+" "+texte2);

        }else if(e.getSource()==r){String T = new String(texte);
        txt1.setText(T);
        int k=17;
        for(i=0;i<texte.length();i++){
        for(int j=0; j<26; j++){
        if(texte.charAt(i)==alphabet1[j])
        {
        texte2.setCharAt(i, alphabet1[(j+k)%26]);
        j=26;H=texte2;
        }

        }
        }txt2.setText(" "+" "+texte2);

        }else if(e.getSource()==s){String T = new String(texte);
        txt1.setText(T);
        int k=18;
        for(i=0;i<texte.length();i++){
        for(int j=0; j<26; j++){
        if(texte.charAt(i)==alphabet1[j])
        {
        texte2.setCharAt(i, alphabet1[(j+k)%26]);
        j=26;H=texte2;
        }

        }
        }txt2.setText(" "+" "+texte2);

        }else if(e.getSource()==t){String T = new String(texte);
        txt1.setText(T);
        int k=19;
        for(i=0;i<texte.length();i++){
        for(int j=0; j<26; j++){
        if(texte.charAt(i)==alphabet1[j])
        {
        texte2.setCharAt(i, alphabet1[(j+k)%26]);
        j=26;H=texte2;
        }

        }
        }txt2.setText(" "+" "+texte2);

        }else if(e.getSource()==u){String T = new String(texte);
        txt1.setText(T);
        int k=20;
        for(i=0;i<texte.length();i++){
        for(int j=0; j<26; j++){
        if(texte.charAt(i)==alphabet1[j])
        {
        texte2.setCharAt(i, alphabet1[(j+k)%26]);
        j=26;H=texte2;
        }

        }
        }txt2.setText(" "+" "+texte2);

        }else if(e.getSource()==v){String T = new String(texte);
        txt1.setText(T);
        int k=21;
        for(i=0;i<texte.length();i++){
        for(int j=0; j<26; j++){
        if(texte.charAt(i)==alphabet1[j])
        {
        texte2.setCharAt(i, alphabet1[(j+k)%26]);
        j=26;H=texte2;
        }

        }
        }txt2.setText(" "+" "+texte2);

        }else if(e.getSource()==w){String T = new String(texte);
        txt1.setText(T);
        int k=22;
        for(i=0;i<texte.length();i++){
        for(int j=0; j<26; j++){
        if(texte.charAt(i)==alphabet1[j])
        {
        texte2.setCharAt(i, alphabet1[(j+k)%26]);
        j=26;H=texte2;
        }

        }
        }txt2.setText(" "+" "+texte2);

        }else if(e.getSource()==x){String T = new String(texte);
        txt1.setText(T);
        int k=23;
        for(i=0;i<texte.length();i++){
        for(int j=0; j<26; j++){
        if(texte.charAt(i)==alphabet1[j])
        {
        texte2.setCharAt(i, alphabet1[(j+k)%26]);
        j=26;H=texte2;
        System.out.print(H);
        }

        }
        }txt2.setText(" "+" "+texte2);

        }else if(e.getSource()==y){String T = new String(texte);
        txt1.setText(T);
        int k=24;
        for(i=0;i<texte.length();i++){
        for(int j=0; j<26; j++){
        if(texte.charAt(i)==alphabet1[j])
        {
        texte2.setCharAt(i, alphabet1[(j+k)%26]);
        j=26;H=texte2;
        }

        }
        }txt2.setText(" "+" "+texte2);

        }else if(e.getSource()==z){
        int k=25;
        for(i=0;i<texte.length();i++){
        for(int j=0; j<26; j++){
        if(texte.charAt(i)==alphabet1[j])
        {
        texte2.setCharAt(i, alphabet1[(j+k)%26]);
        j=26;H=texte2;
        }

        }
        }txt2.setText(" "+" "+texte2);

        }else
        if(e.getSource()==u1){
        txt1.setText("");System.out.println("Hi");
        if(e.getSource()==z){System.out.println("Comment ça marche");int k=25;txt2.setText(""+texte2);
        for(i=0;i<texte2.length();i++){
        for(int j=0; j<26; j++){
        if(texte2.charAt(i)==alphabet1[j])
        {
        texte.setCharAt(i, alphabet1[(j+(26-k)%26)]);
        j=26;System.out.println("coucou"); }
        }
        }txt1.setText(" "+" "+texte);System.out.println("voici le texte en clair:"+texte);
        }

        }
        }


        }

        • Partager sur Facebook
        • Partager sur Twitter
          21 mars 2010 à 13:11:57

          Bon courage à celui qui va tremper ses neurones dans cette soupe.
          • Partager sur Facebook
          • Partager sur Twitter
            21 mars 2010 à 13:43:48

            mdrrrrrrrrrrrr merci de me décourager!:s o lieu d m aider :p
            • Partager sur Facebook
            • Partager sur Twitter
            Anonyme
              21 mars 2010 à 13:51:10

              C'est une blague?
              ...
              }else if(e.getSource()==y){String T = new String(texte);	
              txt1.setText(T);
              int k=24;
              for(i=0;i<texte.length();i++){
              for(int j=0; j<26; j++){
              if(texte.charAt(i)==alphabet1[j]) 
              {
              texte2.setCharAt(i, alphabet1[(j+k)%26]);
              j=26;H=texte2;
              }
              


              Y a le même code copié collé 26 fois pour chaque valeur de k.
              met le dans une fonction avec la valeur de k en paramètre.
              • Partager sur Facebook
              • Partager sur Twitter
                21 mars 2010 à 15:04:00

                Ouille :D

                Fais déjà ce qu'a dit Shakhal, ensuite mets à jour ton message et mets ton code dans les balises appropriées. :)
                • Partager sur Facebook
                • Partager sur Twitter
                  21 mars 2010 à 15:07:55

                  merci d vous marrez c sympa laissez tomber j abondonne
                  • Partager sur Facebook
                  • Partager sur Twitter
                    21 mars 2010 à 15:46:09

                    Sois pas susceptible :)

                    Mon message légèrement provocateur t'était destiné pour que tu lises ceci.
                    Le minimum acceptable est les balises code comme on t'a dit.
                    C'est aussi écrit : essayez de cibler votre problème. Là tu nous balances tout le code et paf démerdez-vous.
                    Tu ne programmes pas, mais alors pas du tout POO. Résultat, tu décuples ton code comme pas possible. On peut arriver au même résultat en environ 10 fois moins de lignes. De plus c'est quasiment illisible.

                    Allez, j'en rajoute un : y'a déjà eu un sujet avec le même problème que toi, si tu avais pris la peine de chercher, tu l'aurais trouvé.

                    En principe on ne répond pas aux messages comme le tien. Personne ne fera ton code (du moins gratuitement ^^) alors au lieu de t'apitoyer, rebooste-toi.
                    C'est pas le forum social ici mais bon.

                    Bonne chance.
                    • Partager sur Facebook
                    • Partager sur Twitter

                    Cryptographie

                    × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                    × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                    • Editeur
                    • Markdown