Advertisement
Ali-S0

vigenere_cipher

May 5th, 2018
270
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.13 KB | None | 0 0
  1. //package vigenere;
  2.  
  3. import java.awt.GridLayout;
  4. import java.awt.event.ActionEvent;
  5. import java.awt.event.ActionListener;
  6.  
  7. import javax.swing.JButton;
  8. import javax.swing.JFrame;
  9. import javax.swing.JLabel;
  10. import javax.swing.JTextField;
  11.  
  12. public class Vigenere {
  13.     static String alp = "abcdefghijklmnopqrstuvwxyz";
  14.     public static void main(String[] args) {
  15.         // TODO Auto-generated method stub
  16.         JFrame frame = new JFrame("Vigenere");
  17.         frame.setLayout(new GridLayout(5, 2));
  18.         frame.setSize(500, 150);
  19.         JTextField plaintext = new JTextField();
  20.         JTextField key = new JTextField();
  21.         JLabel plaintxt = new JLabel("Plaintext");
  22.         JLabel ky = new JLabel("key");
  23.         JLabel encrypted = new JLabel("Encrypted");
  24.         JLabel decrypted = new JLabel("Decrypted");
  25.         JButton encrypt = new JButton("Encrypt");
  26.         JButton decrypt = new JButton("Decrypt");
  27.         frame.add(plaintxt);
  28.         frame.add(plaintext);
  29.         frame.add(ky);
  30.         frame.add(key);
  31.         frame.add(encrypt);
  32.         frame.add(encrypted);
  33.         frame.add(decrypt);
  34.         frame.add(decrypted);
  35.         frame.setVisible(true);
  36.         encrypt.addActionListener(new ActionListener() {
  37.             @Override
  38.             public void actionPerformed(ActionEvent arg0) {
  39.                 // TODO Auto-generated method stub
  40.                 int k, p;
  41.                 char m;
  42.                 String enc="";
  43.                 if(key.getText().length() < plaintext.getText().length()) {
  44.                     key.setText(key.getText()+key.getText());
  45.                 }
  46.                 for(int i = 0; i < plaintext.getText().length(); ++i) {
  47.                     k = alp.indexOf(key.getText().charAt(i));
  48.                     p = alp.indexOf(plaintext.getText().charAt(i));
  49.                     m = alp.charAt((k+p)%26);
  50.                     enc += m;
  51.                 }
  52.                 encrypted.setText(enc);
  53.             }
  54.         });
  55.         decrypt.addActionListener(new ActionListener() {
  56.             @Override
  57.             public void actionPerformed(ActionEvent arg0) {
  58.                 // TODO Auto-generated method stub
  59.                 String dec = "";
  60.                 int k, p, tmp;
  61.                 char m;
  62.                 for(int i = 0; i < encrypted.getText().length(); ++i) {
  63.                     k = alp.indexOf(key.getText().charAt(i));
  64.                     p = alp.indexOf(encrypted.getText().charAt(i));
  65.                     tmp = p - k;
  66.                     if (tmp < 0) tmp += 26;
  67.                     m = alp.charAt(tmp);
  68.                     dec += m;
  69.                 }
  70.                 decrypted.setText(dec);
  71.             }
  72.         });
  73.     }
  74. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement