Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.awt.GridLayout;
- import java.awt.event.ActionEvent;
- import java.awt.event.ActionListener;
- import javax.swing.*;
- public class Affine {
- static String alp = "abcdefghijklmnopqrstuvwxyz";
- public static void main(String[] args) {
- JFrame frame = new JFrame("Affine");
- frame.setLayout(new GridLayout(5, 2));
- frame.setSize(500, 150);
- JTextField plaintext = new JTextField();
- JTextField kl0 = new JTextField();
- JTextField kl1 = new JTextField();
- JLabel plaintxt = new JLabel("Plaintext");
- JLabel k1 = new JLabel("k1");
- JLabel k0 = new JLabel("k0");
- JLabel encrypted = new JLabel("Encrypted");
- JLabel decrypted = new JLabel("Decrypted");
- JButton encrypt = new JButton("Encrypt");
- JButton decrypt = new JButton("Decrypt");
- frame.add(plaintxt);
- frame.add(plaintext);
- frame.add(k0);
- frame.add(kl0);
- frame.add(k1);
- frame.add(kl1);
- frame.add(encrypt);
- frame.add(encrypted);
- frame.add(decrypt);
- frame.add(decrypted);
- frame.setVisible(true);
- encrypt.addActionListener(new ActionListener() {
- @Override
- public void actionPerformed(ActionEvent arg0) {
- // TODO Auto-generated method stub
- int k1 = Integer.parseInt(kl1.getText());
- int k0 = Integer.parseInt(kl0.getText());
- String cipher = "";
- char tmp;
- int tmp2;
- for (int i = 0; i < plaintext.getText().length(); ++i) {
- tmp = plaintext.getText().charAt(i);
- tmp2 = (alp.indexOf(tmp) * k1 + k0) % 26;
- cipher += alp.charAt(tmp2);
- }
- encrypted.setText(cipher);
- }
- });
- decrypt.addActionListener(new ActionListener() {
- @Override
- public void actionPerformed(ActionEvent arg0) {
- String dec = "";
- String cipher = encrypted.getText().toString();
- char tmp;
- int tmp2;
- int k0 = Integer.parseInt(kl0.getText());
- int k1 = Integer.parseInt(kl1.getText());
- for (int i = 0; i < cipher.length(); ++i) {
- tmp = cipher.charAt(i);
- tmp -= k0;
- tmp2 = (alp.indexOf(tmp) / k1) % 26;
- dec += alp.charAt(tmp2);
- }
- decrypted.setText(dec);
- }
- });
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement