Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.awt.EventQueue;
- import java.awt.Toolkit;
- import java.awt.datatransfer.Clipboard;
- import java.awt.datatransfer.StringSelection;
- import javax.swing.JFrame;
- import javax.swing.JRadioButton;
- import java.awt.event.ActionListener;
- import java.util.Random;
- import java.awt.event.ActionEvent;
- import javax.swing.JTextArea;
- import javax.swing.border.BevelBorder;
- import java.awt.event.KeyAdapter;
- import java.awt.event.KeyEvent;
- import javax.swing.JScrollPane;
- import javax.swing.JToolBar;
- import javax.swing.JMenu;
- import javax.swing.JPopupMenu;
- import javax.swing.JMenuItem;
- import java.awt.event.MouseAdapter;
- import java.awt.event.MouseEvent;
- import javax.swing.JMenuBar;
- import java.awt.Component;
- import javax.swing.Box;
- public class tool {
- // please note that spaces are ignored in the encryption process an spaces that
- // are present are there in the final message
- private JFrame frame;
- JTextArea Out = new JTextArea();
- JRadioButton deEncrypt = new JRadioButton("Decrypt");
- boolean consumed;
- int level = 50;
- String[] keys = { "f.z", "/?:", "bt8", "3nc", "yud", "l&.", "o9p", "up&", "yb0", "dyt", "&s7", "xg4", "16y", "ndo",
- "!g8", "6re", "zpz", "szq", "q1t", "s0s", "?32", "7dq", "8x8", "2sx", "hz4", "9.7", "k7w", "cjg", "a:7",
- "6&?", "bn6", "&0/", "av%", "ja5", "z/!", "z65", "rr,", "qb:", "cc7", "lhb", "4z2", "lbq", "df&", "c3j",
- "zmr", "=in", "q0b", "0?8", "vq4", "s3%", "uw:", "lme", "ofv", "83h", "xjq", "z1&", "!=2", "!ox", "465",
- "efg", "iz!", "0d6", "i3v", "?uh", "o.x", "eo9", "qc6", "qkw", "?gy", "u%w", "a!a", "k?8", "eeg", "ou0",
- "7dw", "/fl", "2yy", "g?z", ",18", "y10", "/sj", "20,", "gcg", "55/", "p9=", "8vs", "al.", "0/n", "u%&",
- "pxi", "52j", ",bg", "1l7", "fow", "igm", "8.7", "iw7", "r&v", "emp", "nhy" };
- char[][] mixedUps = {
- { '=', 'j', 'h', 'q', 'x', '1', 'm', 'o', '0', '3', 'v', '&', 'n', 'd', 'z', 's', '?', '5', ',', '9', '.',
- 'b', 'a', 't', '/', '!', 'l', 'g', '%', '6', 'c', 'e', 'w', 'u', ':', '7', '8', '2', 'p', 'y', 'i',
- 'r', 'k', '4', 'f' },
- { 'p', '1', '3', '!', ':', ',', 'j', '?', 'c', '0', 't', 'g', '&', '5', 'y', 'v', '6', 'q', '2', 'k', '%',
- 'r', 'm', 'o', '8', 'a', '4', 'x', '/', 'z', 'd', 'f', 'h', '9', 's', 'i', 'n', '.', 'w', 'e', 'b',
- 'l', '7', 'u', '=' },
- { '%', '9', ':', 'o', '2', 'g', '0', '6', 'c', 'x', 'l', 'e', '1', 'n', ',', 'h', 'v', 'r', '&', 'w', '7',
- 'f', '/', '!', 'u', '=', 'z', '5', 'b', 'k', 's', '?', 'p', '.', 'a', '8', 'i', 't', '4', '3', 'j',
- 'q', 'd', 'y', 'm' },
- { 'n', '9', '?', 't', 'c', 'z', '4', 'a', 'y', 'i', '/', '2', 'h', '%', 'k', 'p', '.', 'l', 'g', ':', '0',
- 'u', 'o', 'd', 'x', ',', 'b', '=', '5', '1', '8', '6', 'q', 'f', '3', 'v', '&', '!', 'm', 'r', 'w',
- 'j', 'e', '7', 's' },
- { '&', 'n', 'p', '=', 'b', '3', '4', 'f', 'm', '/', 'g', 't', 'q', 'l', '!', 'c', 'e', 'd', '9', '8', '?',
- 'y', 'j', '.', '5', '1', 'r', ':', 'i', 'h', 'a', '6', 'v', '2', '7', '0', 'k', 'z', 'x', 'w', 's',
- 'o', '%', 'u', ',' },
- { '0', 't', 'h', 'y', 'm', 'r', '=', '&', 'l', 'o', 'n', 'a', '9', ':', 'k', 'i', '1', '/', '.', '?', '!',
- 'p', 'b', '6', 'w', 'q', 'd', 'x', '3', 'u', '2', 'f', '7', 'c', 'g', '8', 'v', '5', ',', 'j', '4',
- '%', 's', 'e', 'z' },
- { '&', 'a', '8', 'v', 'x', 'w', 'b', 'h', '/', 'n', 's', 'k', 'f', '0', 'l', '1', '6', 'j', '?', 'm', '4',
- '9', ':', '3', 'p', 'i', '.', '2', 'd', 'g', '%', 'z', ',', 'c', 'y', 'q', '7', 'e', 't', '=', '5',
- 'o', 'r', 'u', '!' },
- { 'l', 'c', 't', 'x', 'i', 'f', '3', ':', '.', '2', '7', '8', '9', '5', 'd', '/', '4', 'p', 'b', 'k', 'h',
- 'j', 'z', '&', '%', ',', 'g', 'v', 's', 'q', 'e', 'a', '1', 'y', 'w', 'n', '6', 'u', 'o', '!', '?',
- 'r', '=', 'm', '0' },
- { '3', 'h', 'n', 'i', '/', 'q', '!', 'f', '0', '?', '9', ':', '&', '.', '4', '7', 'x', 'b', '6', 'l', 'c',
- 'v', 'r', 'a', 'g', 'p', 'y', 'e', '%', '8', ',', 'u', 'z', '1', 'j', '2', '=', 'd', 'k', 't', 's',
- '5', 'm', 'o', 'w' },
- { 'u', '.', 'q', '3', '1', '!', '2', 'l', 'g', 'm', 'e', '7', '8', 'f', '?', ':', 'k', '&', '0', 'v', 'z',
- 't', 'a', 'r', 'i', '=', '%', '4', 'j', ',', '/', '6', 'y', 'c', 'h', 'b', 'n', '5', 'w', 'd', 'p',
- 'o', 's', 'x', '9' },
- { 'f', 'm', 'n', '8', 't', 'y', 'u', 'i', 'c', '5', 'a', '7', 'z', '9', '&', '?', '=', ',', 'r', '.', '2',
- 'v', 'g', '%', '3', '1', '!', 'h', 'b', '0', 'o', 'x', 'w', 's', ':', 'p', 'l', '6', '/', 'q', 'd',
- 'e', 'j', 'k', '4' },
- { '6', 's', '7', 'p', 'x', 'h', 'b', ',', 'w', 'r', '!', 'a', '.', '8', '0', 'g', '?', 'q', '3', '&', '5',
- 'y', '9', '%', '1', '/', 't', 'e', ':', 'l', 'n', 'k', '4', 'z', 'i', '2', 'o', '=', 'd', 'f', 'v',
- 'j', 'm', 'u', 'c' },
- { 'p', '4', 'i', 'a', ',', 'v', '/', '?', 'f', '2', 's', 'x', 'c', '1', '3', '&', '7', 'j', 'l', 'o', 'k',
- 'h', ':', 'z', 'b', '9', 'n', 'w', 'r', 'u', 'y', '=', '0', 't', 'd', 'm', '!', '5', '8', '6', '.',
- '%', 'e', 'g', 'q' },
- { ':', 'x', '5', 'j', '2', 'q', 'n', 'w', ',', '7', '3', '6', '4', 'l', '?', 'f', '=', '&', '9', 'k', 't',
- 'o', 'p', 'y', 'z', 'i', '1', 'm', 'g', 'a', 'e', 's', '%', 'r', '.', '/', 'd', 'c', '!', 'v', 'u',
- 'h', 'b', '8', '0' },
- { 't', '?', '4', 's', 'k', 'i', 'w', '.', 'f', 'p', 'y', 'r', '2', 'x', 'h', '3', '6', 'c', '=', ':', 'j',
- '1', 'n', 'g', ',', 'o', 'm', '8', 'e', 'l', 'v', 'z', '9', '%', '/', 'd', 'q', 'u', '!', '5', '7',
- '0', 'b', 'a', '&' },
- { 'r', '2', '=', '1', 't', 'b', '%', 'e', 'g', 'm', 'y', 'c', '/', 'h', 'w', 'd', 's', 'q', '8', 'i', '7',
- 'p', '6', 'l', '?', 'a', 'j', 'f', 'v', '3', 'o', ',', ':', 'z', '5', 'n', 'k', '0', 'u', '!', '9',
- '&', '.', 'x', '4' },
- { '3', 'k', 'n', '4', 'h', '9', '&', 'e', ':', '1', '%', 't', 'l', 'b', '!', 'o', 'i', 'f', 'q', '7', '?',
- '5', 'g', '0', '8', '6', '2', 'r', 'u', 'd', 'a', 'v', 'x', 'p', 'j', ',', 's', 'y', 'w', '=', 'c',
- 'm', '.', 'z', '/' },
- { 'd', 's', 'g', 'v', 'n', 'w', 'l', '&', '?', 'c', 'r', 'f', '9', '0', 'p', 'z', '7', 'j', '%', '3', '2',
- 'e', ',', 'i', '/', 'k', 't', 'm', 'h', '1', 'o', '!', '8', 'u', 'q', ':', '=', 'b', 'a', '4', '.',
- 'x', '5', 'y', '6' },
- { 'q', 'f', 'b', '=', 'w', 'o', ',', 'g', '7', '5', 'z', '1', '!', 'n', '8', 'm', ':', 'r', '4', 'a', '0',
- 'h', '2', 's', '3', '9', '6', '.', 'y', 'v', 'c', '/', '?', 'i', 't', 'u', 'e', 'p', '%', 'l', 'k',
- 'd', '&', 'x', 'j' },
- { '?', 'x', 'q', 'p', '6', '0', '!', 'n', 'e', 'u', 'r', 'f', 'i', 'c', '2', 'd', ',', '1', '3', 'k', 's',
- '.', 'z', '9', 'w', '8', 'y', 'v', ':', '&', '=', 't', '5', 'l', '7', 'j', '%', 'g', '4', 'h', 'b',
- 'm', 'o', 'a', '/' },
- { '=', 'a', ',', 'n', 'f', '2', 'i', 'd', 'c', 'z', '6', 't', '7', 'g', 'o', 'x', '0', '%', 'j', 'w', 'b',
- ':', 'v', '5', 'h', 'u', '/', '!', '3', '?', 'k', 'e', '8', 'y', 'r', 'm', 'l', 'p', '.', 's', 'q',
- '&', '1', '9', '4' },
- { '.', '6', 'k', '0', 't', '!', '/', 'w', 'm', 'p', 'y', 'g', 'b', '=', ':', 'j', 'v', '3', 'a', 'l', '5',
- 'x', ',', '8', 'd', 'n', '&', 's', '1', '4', '?', 'c', 'o', 'q', 'h', 'r', 'e', 'u', '9', '%', 'z',
- '7', 'i', '2', 'f' },
- { 'r', '?', 'v', '&', 'b', 'o', 'c', '=', '!', '4', '5', 'u', 's', 'l', 't', '6', 'p', '8', ':', '/', 'd',
- '3', 'z', 'q', '%', 'j', '.', 'i', 'n', 'f', 'g', '1', 'y', 'a', 'x', ',', 'e', '9', 'h', '7', '2',
- 'm', 'w', 'k', '0' },
- { 'o', '.', '/', 'p', 'z', 's', 'l', 'j', 'q', 'r', 'v', '5', 'm', '9', '1', 'a', 'f', '3', 'c', 't', 'h',
- 'w', 'k', '&', '0', 'b', '6', 'u', '?', 'i', ':', 'n', 'y', '4', 'g', '2', 'd', 'x', '7', '!', '=',
- '8', '%', 'e', ',' },
- { 'q', ',', '4', 's', 'h', '2', '7', 'i', 'l', '8', 'e', '?', 'c', 'x', '!', '3', 'y', '6', 'd', '&', 't',
- 'm', 'j', 'n', 'k', '9', 'r', 'g', '5', 'w', 'v', '/', '=', '.', '%', 'b', ':', 'o', 'f', 'p', 'a',
- 'u', '0', '1', 'z' },
- { 'c', ',', 's', 'f', '1', 'm', 'l', ':', 'r', '8', 't', '9', '3', '=', 'e', '4', 'd', 'z', '!', '0', 'n',
- 'y', '&', 'u', '2', 'a', '/', 'w', 'x', 'q', 'h', 'o', 'g', 'v', '7', 'i', 'k', '?', 'p', '%', '6',
- '.', 'j', 'b', '5' },
- { '=', 'm', '!', 'f', ',', '9', 'n', ':', 't', '1', 'x', '&', 'e', '4', 'h', 'o', '/', 'q', 'c', '8', 'y',
- 'l', 'v', 'r', '2', 'a', '7', '?', '6', '5', 'd', '0', 'p', 'j', 'z', 'i', 'b', '3', '.', 's', 'u',
- 'g', '%', 'k', 'w' },
- { 'k', 'e', '6', 's', '&', 'o', 'a', '1', 'v', '%', '9', 'y', 'z', '8', 'x', 'i', ',', 'q', 'u', '7', '0',
- 'c', 'f', 'm', 'p', 'j', 'r', 'h', '5', 't', '/', '?', 'd', 'b', 'w', '4', 'g', '.', '3', '!', '=',
- 'n', 'l', ':', '2' },
- { '.', '3', 'v', '%', 'w', 'p', 'd', 'n', '&', 'z', 'g', 'e', 'q', 'f', '4', 'l', 'i', '7', 's', 't', 'x',
- '8', 'm', ':', 'r', 'j', '0', 'o', '?', ',', 'b', '=', 'k', 'c', 'u', '9', '6', '1', '5', 'a', '2',
- 'y', '/', '!', 'h' },
- { '%', '?', 'i', 'x', 'l', 'b', 'y', 'g', 'a', 'p', 's', '5', '=', 'r', 'o', '1', '2', ':', 'd', 'c', 'n',
- 'z', 'q', 'm', 'w', 'e', 'v', '7', '0', 'j', '9', '6', '8', '&', 'f', 'k', '.', '3', '/', 'h', '!',
- '4', 'u', 't', ',' },
- { '&', 'b', 'x', '=', 'h', 'f', '5', '7', ',', 'u', 'o', 's', 'd', 'i', 'z', '6', 'w', '/', '8', '2', 'q',
- 'l', 'k', 't', 'e', 'v', '!', 'n', 'y', '.', '9', 'p', 'c', 'j', '1', '?', '4', 'a', 'm', '0', 'r',
- ':', 'g', '%', '3' },
- { 'j', '9', 't', 'm', '=', 'l', '8', 'u', '!', 'f', 'c', '%', 'z', 'p', 's', 'x', 'h', '0', 'n', 'y', 'd',
- 'q', '6', '5', 'o', '?', 'b', 'r', 'v', '1', '3', 'e', 'g', 'a', ':', ',', 'i', 'k', '/', '7', '2',
- 'w', '.', '4', '&' },
- { 'l', 'n', 'w', '!', '8', '6', '5', 'e', 'v', 'p', '=', 'g', '/', '0', ':', 'o', 'm', '?', 't', 'q', 'd',
- 'c', 'j', '.', 'y', 'b', 'k', 'h', 'u', '%', '1', '7', 's', 'f', '2', '9', '4', 'z', ',', '3', 'x',
- 'a', '&', 'r', 'i' },
- { 'n', 'u', ':', 's', '=', 'a', '7', '/', 'h', '5', '6', '1', 'i', '3', 'v', 'y', 'q', 'p', ',', 'j', 'e',
- '.', 'w', 'c', 'x', '2', '%', 'd', 'f', '?', 'z', 'g', 'k', 'b', '8', '&', 'l', '0', '9', 'r', '!',
- 'm', 't', 'o', '4' },
- { '2', '=', 'h', '5', 'e', '4', 'o', 'i', '0', 'y', '!', 'b', 'c', '8', 'x', 'w', '%', '7', 'j', ':', '.',
- '?', '/', 'z', 'v', 'a', '1', 't', '6', 'n', 'f', 'm', 'g', '9', 's', 'k', ',', '3', 'l', 'p', 'q',
- 'r', 'u', 'd', '&' },
- { 'a', '!', 'k', '&', 'j', 'o', 'c', 'e', 'w', '/', '2', 'b', 't', 'p', 'f', '8', '.', '4', 'y', 'x', '7',
- 'v', 's', 'l', ':', '?', '=', '0', 'm', '3', '%', 'h', 'z', 'u', '1', 'd', 'i', 'r', 'q', ',', '6',
- 'g', '5', '9', 'n' },
- { '.', '7', '9', 'l', '3', 'a', 'p', 'v', 'm', 's', 't', 'z', 'u', '6', '/', '!', '1', '2', '4', 'h', '%',
- 'c', 'i', '&', ',', '5', 'x', 'f', 'n', 'g', 'd', 'o', 'j', '8', 'r', '=', ':', '0', 'q', 'y', '?',
- 'w', 'k', 'b', 'e' },
- { '3', '9', 'h', '&', 'z', 'e', '2', 'a', 'u', '8', 'l', 'p', '1', ':', '5', '%', 'b', 's', '/', '0', 'n',
- 'w', 'j', '.', '4', 'o', 'v', ',', 'x', 'f', '?', 'i', 't', '6', 'q', 'r', 'y', 'm', 'd', '7', 'c',
- '=', '!', 'k', 'g' },
- { 'e', ':', 'i', 'f', 'u', '/', 'j', '1', '=', 'r', '4', 'k', '5', 'g', 'o', 'y', 'a', 'm', 'n', 'w', 'z',
- ',', '3', '?', '9', 't', '%', 'q', 'x', '7', 'v', '&', 'p', 'h', '2', '8', 'd', 'l', 's', 'b', '6',
- '0', 'c', '.', '!' },
- { 's', '2', 'w', 'i', 'm', ',', 'b', 'd', '4', '8', 'g', '7', '6', 'k', 'q', '3', 'j', 'a', 'f', ':', '%',
- 'o', 'p', 'x', '.', '=', 'y', 't', '?', 'r', '0', 'c', '1', 'h', '9', 'e', 'z', 'v', '/', 'l', 'n',
- '&', '5', '!', 'u' },
- { '%', 's', 'b', ',', '?', '!', 'g', '.', 'k', 'x', 'o', 'i', 'q', '0', ':', '3', 'y', 'r', '=', 'e', '9',
- 'w', 'a', 'c', 't', 'f', '1', '7', 'd', 'u', 'z', '/', 'h', 'm', 'n', '6', '8', 'v', 'l', '4', '5',
- 'j', '2', 'p', '&' },
- { 'n', 'x', '4', 'm', 'p', 'y', 'b', 'w', '2', '/', 'a', 't', '3', 'o', 'r', '5', 'v', '!', '8', '6', '=',
- '1', 'u', '7', ',', 'c', 'd', '9', 'l', ':', 's', 'h', '&', 'i', 'g', 'k', 'q', 'e', 'z', '0', 'f',
- 'j', '%', '?', '.' },
- { 'a', 't', '1', ':', '/', 'c', 'q', 'n', 'z', 'p', 's', 'x', '&', '.', 'm', '2', 'k', 'b', 'g', ',', 'o',
- 'u', '6', 'y', '4', 'l', 'r', 'd', 'j', 'f', '%', 'i', 'w', '5', '=', '8', '!', '9', '?', 'h', 'v',
- 'e', '0', '3', '7' },
- { '5', 'p', '%', 's', '8', 'y', 'r', 'a', '3', ':', '=', 'd', 'h', 't', '!', 'b', 'j', 'g', '2', 'u', 'v',
- 'k', '1', 'w', 'o', 'f', 'm', '&', ',', 'x', '/', 'i', 'c', '7', 'n', '9', '?', '4', 'e', 'q', 'l',
- '0', 'z', '.', '6' },
- { 'd', '9', '1', '3', 't', 'g', ':', 'x', 'k', 'l', '8', ',', 'h', 'm', '4', '%', '2', 'w', 'e', '!', 'f',
- 'a', 'c', 'v', 'o', '.', 's', '&', 'y', '5', '7', 'i', 'n', '0', 'u', 'q', 'z', 'r', '=', 'j', 'b',
- '/', '6', '?', 'p' },
- { 'h', 'j', '?', '&', 'x', 'f', '!', 'n', '8', 'y', '%', 'u', 'k', 'm', ':', '4', 'e', '/', 'c', '3', 'o',
- '2', 't', '1', 'p', '5', 'q', 'v', 's', ',', '0', '.', 'g', 'b', '=', '7', 'a', '9', 'z', 'w', 'l',
- 'd', '6', 'r', 'i' },
- { '1', '6', 'f', 'x', '%', '=', 'g', 'k', 'j', 'w', 'd', '4', '.', ':', '/', 't', 'o', '2', 'm', 'r', '&',
- 'e', 'p', 'i', 'b', '8', '0', 'c', 'q', '9', 'y', '7', 'n', 'a', 'u', 'v', 'z', '5', '?', 'l', '3',
- ',', '!', 'h', 's' },
- { '1', 'h', 'g', 'f', 'z', '=', '%', 'b', 's', 'v', '.', '!', 'i', ':', 'k', 'm', '2', '&', 'c', 'u', '5',
- '7', '9', 't', 'r', 'w', 'y', '0', ',', '?', 'l', 'd', 'n', 'x', '3', 'q', '/', 'p', 'a', '4', 'e',
- 'o', 'j', '6', '8' },
- { 'w', 'z', '2', 'f', ':', 'g', '8', 'v', ',', 'x', 'n', '0', '6', '!', 'e', 'j', '9', 'd', 'u', 'm', 'i',
- 'l', 'c', '1', '?', 'k', '7', 'y', '/', 'b', 'o', '&', '3', 'q', '%', '=', 'h', 'r', 'a', '4', 's',
- 'p', 't', '.', '5' },
- { 'z', 's', '/', 'y', '2', 'f', 'o', '!', 'p', 'c', '4', 'a', 'w', '5', '.', 'm', 'e', 'k', '&', 'r', '8',
- '=', '1', ',', 'h', 'g', 'j', 'b', '?', 'q', '3', 'u', 'd', 'x', ':', 'n', '6', 'v', '7', 'l', '9',
- '0', 't', 'i', '%' },
- { '4', 'l', 'q', 'f', 'c', 'k', '0', 'y', 'j', '/', 'b', 'n', 'e', '5', 'p', 'r', 'i', 'o', 'h', 'x', 'm',
- 'a', '6', ':', 's', '%', 'u', 'v', '7', '.', '2', '&', '3', 'd', '!', '=', 'w', 'g', ',', '1', 'z',
- '8', '?', 't', '9' },
- { 'n', 'j', '0', '4', '3', 'f', '7', '9', 'x', '6', 'h', 'o', 'g', 'u', '/', 'v', '?', '=', '8', 'm', '1',
- 's', 'i', 'd', 'r', 'l', 'w', '%', 'q', '!', 'k', ':', '2', 'b', '.', 'a', 't', ',', 'c', '5', 'e',
- 'p', 'z', '&', 'y' },
- { '.', 'l', 'u', '9', '%', '/', '6', '3', 'f', 'r', 'o', '8', 't', 'j', 'x', 's', '&', '1', '!', '7', 'e',
- '0', 'h', 'c', 'd', '4', '5', 'k', 'a', '=', 'i', '2', ':', 'w', 'n', 'g', 'm', 'p', 'b', 'z', 'q',
- 'y', ',', 'v', '?' },
- { 'a', '9', 'k', '0', 'c', 'h', '.', 'x', 'j', '4', 's', 'b', 'y', '%', 'l', '7', 'r', 'e', '3', 't', '5',
- 'n', '2', 'v', '/', 'i', '?', ':', 'g', 'z', 'd', '!', '1', '8', 'f', 'q', '6', ',', '=', 'o', 'm',
- 'w', 'p', '&', 'u' },
- { '2', '0', ':', '1', '!', 'b', 'e', '/', 'x', '6', 's', '7', 'l', 'v', '&', 'r', 'k', '5', 't', '=', '?',
- '.', 'i', 'h', 'a', ',', 'g', 'p', 'o', 'j', 'q', 'm', 'u', '8', 'y', 'c', '9', 'z', 'd', 'n', 'w',
- '3', '4', 'f', '%' },
- { 'n', 't', 'a', 'c', 'f', 'l', 'r', '1', '6', 'u', '0', 'x', '=', ',', '8', '!', 'k', 'w', 's', 'm', 'g',
- '3', '4', '&', '5', 'b', 'p', '.', '/', 'z', '2', '7', 'v', 'h', 'e', 'i', 'o', 'd', '%', ':', '?',
- 'j', 'y', '9', 'q' },
- { '7', 's', 'r', '8', '0', '2', 'f', 'c', 'm', 'e', ':', '4', 'j', ',', 'd', 'y', '!', 'z', 'v', 't', 'x',
- 'p', 'w', '3', '%', '&', '1', '=', '5', 'a', 'l', '/', '.', '?', 'i', 'q', 'g', 'u', 'n', '6', 'o',
- '9', 'k', 'b', 'h' },
- { 'q', '8', 'g', 'w', 'm', 'c', 'e', 't', 'p', 'f', 'y', '%', ':', 'b', '&', 'd', '6', '5', 'j', '0', '1',
- 'o', 'r', ',', 'k', '=', '7', '.', 'u', '4', '2', 'h', '!', '3', 'v', '/', '?', 'a', 's', 'z', 'i',
- 'x', '9', 'n', 'l' },
- { '&', 'h', 'f', 'm', '6', '3', 'j', '?', 'n', ':', 'b', '0', 'c', 'u', 'w', ',', 's', 't', 'q', 'i', '9',
- 'g', '%', 'a', '8', 'z', 'd', '.', 'v', '4', '1', 'l', '!', 'y', 'e', '5', '=', 'x', 'o', '/', '2',
- 'r', 'k', '7', 'p' },
- { '2', 'b', 'r', 'm', '&', '5', 'u', '%', 't', 'k', 'f', '1', 'w', 'l', '8', ',', '/', '9', 'j', '.', 'y',
- '4', 'n', 's', 'v', 'i', '6', 'c', '!', '0', '=', 'h', '7', 'p', '3', 'e', 'x', 'a', 'o', 'z', 'g',
- 'q', ':', 'd', '?' },
- { ',', 'j', 'y', 'w', '%', 'a', 'i', '0', '7', '9', '8', '=', 'b', 'x', 'l', 't', 'c', 'v', 'e', '/', 'f',
- 'u', 'g', '3', 'p', 'q', 'm', 'h', '!', 'r', '1', '2', '5', 'o', 'z', 'k', 'd', '?', ':', 's', 'n',
- '&', '4', '6', '.' },
- { '4', 'e', '1', '?', 'h', 't', 'q', 'y', '2', '9', '!', '%', 'f', 'r', 's', 'j', 'd', 'k', 'u', '6', 'm',
- 'p', 'a', '8', 'x', '5', 'z', 'b', '=', '.', '/', ':', 'l', '&', 'n', 'o', 'v', '0', 'c', '7', ',',
- 'g', 'w', 'i', '3' },
- { ':', '1', 'e', 'd', '4', 'y', 'b', 'o', '&', 'r', '?', 'u', '=', 'n', '5', '0', '9', 'p', 'v', '/', '.',
- 't', 'x', 'i', 'c', '8', '3', 'w', 'a', 'g', '2', 'z', '6', 'q', 'm', '7', 'h', 'k', 's', ',', 'l',
- '%', '!', 'j', 'f' },
- { 'u', '/', 'r', 'n', '.', 'q', ':', 'b', '1', '%', 'h', '8', 'z', 't', '9', 'f', 'p', 'j', '2', '?', 'v',
- 'w', '7', 'c', ',', 'g', 'm', 'd', '6', 'a', 's', '5', '0', 'o', 'e', '!', '&', 'k', 'y', '4', '3',
- 'l', 'x', 'i', '=' },
- { 'h', 'f', '.', 'g', '9', '%', '!', 'v', 't', 'w', '8', '6', '/', 'b', 'm', 'z', 's', '2', '?', 'y', 'r',
- 'o', 'k', 'a', 'l', 'd', '1', '0', '4', '3', 'q', 'p', 'e', ':', 'x', 'c', 'u', '7', 'j', '5', 'n',
- ',', '&', 'i', '=' },
- { '&', '!', 'w', 'u', 'c', 'k', '0', '3', '6', '8', 'o', 'd', 'b', 'x', '?', ':', 'r', '7', 'y', 'g', '5',
- 'p', '/', 'l', '1', 'a', 'z', 't', 'j', 'e', '2', 'h', 'q', 'v', '=', '9', 'f', '%', '.', 'i', ',',
- 's', 'm', '4', 'n' },
- { 'e', 'q', '=', 'r', '5', 'x', 'f', ':', 'p', 'b', 'l', 'v', '1', '!', 't', 'g', 'n', '%', 'o', 'c', '4',
- '/', 'd', 'i', '9', '3', 'm', '0', '&', 'a', 'j', 'k', 'w', 'h', 'u', 'y', ',', '6', '2', 'z', '8',
- '7', 's', '.', '?' },
- { '=', 'g', 'z', 'q', ':', '%', '&', '?', 's', 'd', 't', 'a', 'j', 'b', 'w', '1', '4', '9', 'e', '5', 'n',
- '6', 'h', 'f', 'm', '.', 'k', 'c', 'y', 'u', '8', '2', ',', 'x', '0', '!', 'l', '3', 'i', '7', 'v',
- '/', 'o', 'p', 'r' },
- { 'a', 'l', 'e', '2', 'k', 'p', '/', 'n', 'i', 'g', '&', '0', '!', 'o', '1', '.', '8', 't', '7', 'c', '5',
- '?', 'r', 'd', 's', 'w', 'h', 'q', '3', 'f', '4', 'z', ',', '=', 'v', '6', 'j', 'b', 'y', 'u', '%',
- 'x', '9', ':', 'm' },
- { ':', '/', '6', 'k', '&', '%', 'f', 'c', '5', 'v', '1', '7', '?', 'j', 'h', 'p', ',', '4', 's', 'u', 'r',
- '0', 'm', 'b', 'x', '!', 'g', 'a', 'i', 'o', 't', 'z', 'd', '9', '2', '.', 'y', '=', '3', 'w', 'l',
- '8', 'n', 'e', 'q' },
- { 'i', 'x', 'b', 'd', 'j', ',', '0', 'y', 't', 'e', '6', '%', '8', '3', '.', 'f', 'l', 'h', 'q', '7', 'w',
- 'g', 'k', 'a', '?', '=', '9', '2', 'm', '&', '4', '/', 'n', 'v', 'u', 'p', ':', 'o', '5', 'c', '!',
- 'r', '1', 's', 'z' },
- { 's', '1', ':', 'r', 'l', 'b', 'u', 'q', 'y', 'j', 'h', 'k', 'i', 'w', 'v', 'm', '7', 'n', 'z', 'x', '0',
- '4', '!', 'o', '.', '2', 'a', 'c', '%', 'p', '&', ',', '6', '=', '8', 'g', '5', 'f', '9', '/', '?',
- 'd', 'e', 't', '3' },
- { '=', 'r', 'l', 'u', '.', 't', '6', '3', ':', '%', '/', '5', 'n', 'z', 's', '8', 'g', 'c', 'f', '9', 'b',
- 'a', 'y', '4', '2', 'd', 'i', '?', '7', '!', 'x', 'p', 'o', 'h', '0', 'm', 'e', 'q', 'v', 'k', ',',
- '&', '1', 'j', 'w' },
- { '%', 'l', 'u', 'g', 'z', '/', '8', 'j', '6', 'v', '&', 'r', 'c', '?', '9', 'm', 'e', 'b', '1', 'x', 'p',
- 'k', '=', 't', '3', 'f', 's', '7', '5', 'n', 'o', 'q', 'y', ',', '!', '2', 'a', '0', 'd', '.', 'w',
- 'h', 'i', ':', '4' },
- { 'x', 'v', 'j', 'n', '=', '9', 'w', '&', '4', 't', 'l', 'e', '0', '2', '1', 'g', 'p', 'q', 's', '?', '8',
- 'h', ',', '!', '5', '7', 'i', '/', 'y', ':', 'm', 'u', 'a', 'b', 'd', '.', 'o', '6', 'k', 'f', 'r',
- 'c', 'z', '%', '3' },
- { 'v', '?', '=', 'w', '4', 's', 'z', '3', '5', 'r', '1', 't', ':', ',', 'k', 'e', '&', 'a', '7', 'h', 'd',
- '0', 'l', '/', 'q', '!', 'c', 'g', '%', '8', 'n', '.', 'b', '6', 'x', 'm', '9', 'f', 'y', 'i', 'p',
- '2', 'u', 'j', 'o' },
- { 'w', 't', ':', 'e', 'u', 'n', 'v', '&', 'h', 'r', '2', 'm', 'o', 'j', '6', '!', '5', '1', 'p', 'd', '4',
- 'b', 'i', 'k', '9', 'c', 'x', '8', '%', 'q', 'y', '?', '=', '.', 'g', '0', 's', 'l', 'f', '/', '7',
- 'a', ',', '3', 'z' },
- { 'x', 'w', 'i', 'b', 'n', 'h', 'd', 'q', '/', '8', 'g', 'r', 'm', ',', 'j', 'a', 'y', '5', 'c', '?', 'u',
- 'p', '4', 's', 'k', 'e', '1', 't', 'f', '7', '&', 'z', '2', '!', '3', '6', '9', '.', ':', 'v', '0',
- '=', '%', 'o', 'l' },
- { '1', '=', '2', 'z', 'i', ',', 'c', 'w', 'k', 's', '0', 'q', 'u', '!', 'y', 't', 'm', 'v', 'e', 'j', 'h',
- 'b', '&', '4', 'p', 'n', 'g', '3', 'f', '.', ':', '5', 'x', 'l', '9', '8', '%', 'o', 'd', '7', '6',
- '/', 'r', '?', 'a' },
- { '=', 'w', '6', 'j', 'x', '1', 's', '9', '?', 'n', '0', 'k', 'v', '5', '!', '8', '/', 'p', '7', '4', '2',
- '&', 'h', 'y', 't', 'm', 'd', ':', 'z', 'l', 'i', '3', '.', 'e', 'b', 'c', 'a', '%', 'o', 'q', 'g',
- 'r', ',', 'f', 'u' },
- { 'g', 'x', '!', '?', '8', '=', ',', 'd', 'b', '9', '%', '&', '5', 'u', 'r', 'i', 'y', 'o', 'j', '.', 'e',
- 'w', '7', 'a', '6', 'p', 'm', '3', 'z', 'q', '0', 's', 'c', 'l', 'f', 'k', '4', '2', '1', 'v', ':',
- 't', 'h', '/', 'n' },
- { 'e', 'k', '7', 's', 'm', 'p', '8', 'u', 'r', 'a', '/', ':', 'h', '2', '4', '3', 'w', ',', 'i', '5', '.',
- 'f', 'o', 'x', 't', 'n', 'z', '6', 'j', 'v', 'c', '=', '!', '?', 'g', 'd', '9', '0', '&', 'b', 'l',
- 'q', '%', '1', 'y' },
- { '8', 'e', '?', 'r', '5', 's', '%', 'a', '1', 't', 'o', 'c', 'l', 'n', '0', '=', '.', 'v', '!', 'f', 'y',
- ',', 'p', '/', 'g', 'i', ':', 'j', 'h', '3', '2', 'z', 'k', 'x', 'm', '4', 'b', 'w', 'd', '6', '7',
- 'u', 'q', '9', '&' },
- { 'k', 'q', '9', 'j', 'd', 'y', 'l', '/', ':', 'a', 'p', ',', 'n', 'h', '!', '=', 'm', 'g', '5', 'i', 'c',
- '&', 'r', 'e', 'x', '2', 'u', '.', '0', 'o', '1', '6', '3', '%', 'v', '8', 'f', 't', 's', 'z', 'b',
- 'w', '?', '7', '4' },
- { 't', 'k', '5', '6', '=', '1', 'i', ',', 'h', 'g', 'a', 'u', 'r', 'b', '/', '9', 'q', '0', 'x', 'z', '%',
- '.', '?', 's', 'o', 'c', 'd', 'f', 'e', 'n', '2', 'w', 'm', '7', '3', 'p', '4', 'j', 'l', 'v', '&',
- ':', 'y', '!', '8' },
- { 'b', '?', '%', 'n', 'y', 'p', 'x', 'r', '5', '9', ',', '0', 'k', 'g', '3', '!', 'h', '.', 'e', 's', 'a',
- '/', 'i', '6', 'c', '&', '2', 'l', '=', 't', 'j', 'u', 'v', 'o', 'm', 'z', 'q', 'f', '8', 'w', '4',
- 'd', ':', '7', '1' },
- { '4', '5', 'e', '%', 'f', 'a', 'v', 't', ',', 's', 'o', 'i', 'r', 'y', '&', '3', 'l', 'g', 'p', '1', 'b',
- '9', 'z', '?', '0', ':', 'k', 'd', 'c', '.', 'q', '8', 'j', '2', 'u', 'n', '6', '!', '/', 'm', 'w',
- '=', 'x', '7', 'h' },
- { 'f', 's', ',', '.', 'd', 'm', '7', '%', 'x', 'k', 'i', '=', ':', 'l', 'v', '2', '1', 'u', '6', 'b', 'n',
- 'w', 'j', '/', 'p', 'o', '?', 'a', '0', 'h', 'e', 'c', '&', 'g', 'z', '9', 'r', 'y', '4', 't', '!',
- '3', 'q', '5', '8' },
- { 'k', 'd', '6', '5', 'r', 'm', '/', 'w', 'e', 'h', '&', 'v', 'l', '0', 'c', 'p', 'y', 'x', '%', '8', 'j',
- '2', 'f', 'u', 'i', '.', 'g', 't', '7', 'n', '9', '=', 'b', 'a', ':', 'q', 's', '3', 'o', '?', '1',
- '4', '!', ',', 'z' },
- { 'h', '0', '&', 'z', '%', '8', 'u', '7', 'k', 'l', '2', 'd', '?', 'y', 'n', 'f', '!', 'q', 'p', 'b', '6',
- 'g', 's', '3', 'w', ',', '4', '9', '.', 'i', '1', 'o', '/', 'x', 'j', ':', '=', 'a', 'c', 'm', '5',
- 'r', 'e', 't', 'v' },
- { 'f', 'n', 'z', '&', '?', 'd', '.', '1', 'k', 'q', '=', 'w', 'c', 'l', '2', ':', 'v', 'r', 'u', 'a', '4',
- 's', '7', 'm', 'p', '6', 'j', 'y', '8', 'e', '3', 'i', '!', '/', 'x', 'o', '%', 'g', '5', '9', ',',
- 'h', 'b', '0', 't' },
- { 'q', '2', '/', ',', '1', '5', 'x', '?', 'p', 'j', 'o', '3', 's', 'w', 'l', 'e', 'u', '=', '7', '.', 'y',
- 'v', '&', 't', 'c', 'f', '!', 'b', '%', 'm', 'i', 'r', '9', 'n', '8', '0', 'a', '6', 'h', 'd', ':',
- 'k', 'z', 'g', '4' },
- { 'f', 'r', 'p', 'j', 'n', '!', 'o', 'x', 'e', 'g', '7', '.', '2', 'v', '=', '0', 'a', '&', '5', '?', 'l',
- '8', 'i', '3', 'q', 'u', 't', '/', 'h', 'z', ',', 's', 'c', '4', '6', '1', 'b', '9', '%', ':', 'k',
- 'y', 'd', 'm', 'w' },
- { 'l', 'z', 'e', '=', '2', '/', '.', 'y', 'c', 'g', ',', '6', '0', '7', 'k', 'w', 'h', 's', '!', 'v', '8',
- 'i', 'b', 'q', 'u', '1', 'm', 'n', 'f', '&', 'p', ':', '4', 'd', '9', 'a', '3', '5', 'r', '?', '%',
- 'x', 'j', 'o', 't' },
- { 'e', 'c', 'w', '2', '6', '=', 'r', 'd', '.', 's', 'j', '4', '1', 'n', 'f', '8', 'l', 'y', 'g', '/', 'm',
- '?', 'k', 'u', '5', 'a', '9', '3', ',', ':', 'h', 'v', 'i', 'q', '0', '%', '!', 'z', 't', 'b', 'p',
- '&', '7', 'x', 'o' },
- { 'k', ',', 'h', 'j', '6', '4', ':', '0', '&', '5', '?', 'q', '=', 'g', 'w', '%', 'o', 'r', '8', 't', '/',
- 'v', 'y', '7', 'z', '3', '1', 'l', 'n', 'a', 'm', 'd', 'c', 'x', '9', 'u', 's', 'p', 'e', '.', '!',
- '2', 'b', 'i', 'f' },
- { 'o', '7', '2', 'l', 'q', ',', 'u', 'h', '5', 's', 'x', 'a', 'p', 'f', '0', 'z', 'v', '&', 'r', '?', 'w',
- '.', '6', '4', 'y', '%', 'k', '3', '9', '1', 'd', '!', 'b', ':', '/', 'e', '=', '8', 'i', 'm', 'n',
- 't', 'g', 'j', 'c' },
- { 'x', '6', 'k', 'f', 'e', 's', '&', 'g', 'a', '8', '.', 'b', 'o', 'l', 'u', 't', 'h', ':', '2', 'w', '9',
- 'c', 'j', '7', 'n', 'v', 'z', '5', '0', '/', 'd', 'y', 'q', '%', '3', '?', 'i', '=', 'm', 'p', 'r',
- '1', '4', '!', ',' },
- { '/', '2', 'u', 'o', 's', 'l', 'y', '3', 'a', 'b', '6', 'i', '4', '0', ':', 'h', '.', 'd', 'n', '5', 'p',
- '8', 'k', 'e', 'j', '9', 'x', '?', '1', '!', '7', ',', 'm', 'z', 'r', 'f', 'c', 'w', '&', 'q', '=',
- 'v', '%', 'g', 't' },
- { '&', '!', '4', '.', 'q', '0', 'm', '1', 'l', 'e', '9', 'u', 'k', 'd', 'i', '7', 'p', '%', '?', '6', 's',
- 'j', '/', 'z', '=', 'y', ':', 'b', 'n', 't', '8', 'x', 'g', 'v', '5', 'a', 'w', 'c', 'h', 'f', '2',
- ',', '3', 'o', 'r' } };
- int[] randomLevels = { 48, 36, 10, 23, 53, 39, 98, 33 };
- String[] levelKeys = { "=:", "tp", "f:", "%/", "mq", "?=", "nx", "g3" };
- char[] alphabet = { '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', ',', '.', '?', '&', '%', '!', '1', '2', '3', '4', '5', '6', '7', '8',
- '9', '0', '/', ':', '=' };
- /**
- * Launch the application.
- */
- public static void main(String[] args) {
- EventQueue.invokeLater(new Runnable() {
- public void run() {
- try {
- tool window = new tool();
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- });
- }
- /**
- * Create the application.
- */
- public tool() {
- initialize();
- }
- // shuffle char array
- char[] shuffle(char[] array) {
- Random rand = new Random();
- for (int i = 0; i < array.length; i++) {
- int randomIndexToSwap = rand.nextInt(array.length);
- char temp = array[randomIndexToSwap];
- array[randomIndexToSwap] = array[i];
- array[i] = temp;
- }
- return array;
- }
- public String setLevel(String textIn) {
- level = randomLevels[findInArrayString(levelKeys, textIn.substring(0, 2))];
- return textIn.substring(2, textIn.length());
- }
- private void initialize() {
- /* start of frame initialization */
- frame = new JFrame();
- frame.setBounds(100, 100, 857, 528);
- frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- frame.getContentPane().setLayout(null);
- JRadioButton encrypt = new JRadioButton("Encrypt");
- encrypt.setSelected(true);
- encrypt.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent arg0) {
- if (encrypt.isSelected()) {
- deEncrypt.setSelected(false);
- }
- }
- });
- encrypt.setBounds(366, 49, 155, 29);
- frame.getContentPane().add(encrypt);
- deEncrypt.setBounds(250, 49, 114, 29);
- deEncrypt.addActionListener(new ActionListener() {
- @Override
- public void actionPerformed(ActionEvent e) {
- // TODO Auto-generated method stub
- if (deEncrypt.isSelected()) {
- encrypt.setSelected(false);
- }
- }
- });
- frame.getContentPane().add(deEncrypt);
- JScrollPane scrollPane = new JScrollPane();
- scrollPane.setBounds(21, 85, 365, 369);
- frame.getContentPane().add(scrollPane);
- JTextArea In = new JTextArea();
- scrollPane.setViewportView(In);
- In.setLineWrap(true);
- In.setBorder(new BevelBorder(BevelBorder.LOWERED, null, null, null, null));
- JScrollPane scrollPane_1 = new JScrollPane();
- scrollPane_1.setBounds(409, 85, 405, 369);
- frame.getContentPane().add(scrollPane_1);
- scrollPane_1.setViewportView(Out);
- Out.setBorder(new BevelBorder(BevelBorder.LOWERED, null, null, null, null));
- Out.setLineWrap(true);
- Out.setEditable(false);
- JMenuBar menuBar = new JMenuBar();
- frame.setJMenuBar(menuBar);
- int mixUpKeyCount = 100;
- JMenuItem makeNewKeys = new JMenuItem("Make New Keys");
- // Generates new keys to be copied back into script for use
- makeNewKeys.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent e) {
- // make mix up keys
- String out = "String[] keys ={";
- for (int i = 0; i < mixUpKeyCount; i++) {
- String keyString = "";
- Random rnd = new Random();
- for (int j = 0; j < 3; j++) {
- keyString = keyString + alphabet[rnd.nextInt(alphabet.length)];
- }
- out += "\"" + keyString + "\"";
- if (i != mixUpKeyCount - 1) {
- out += ",";
- }
- }
- out += "};";
- // make mix ups
- out += "char[][] mixedUps = {";
- char[] temp;
- for (int y = 0; y < mixUpKeyCount; y++) {
- out += "{";
- // shuffles the alphabet
- temp = shuffle(alphabet);
- // prints to console with correct formating in case you would like to use new
- // keys
- for (int i = 0; i < temp.length; i++) {
- out += "'" + temp[i] + "'";
- if (i != temp.length - 1) {
- out += ",";
- }
- }
- out += "}";
- if (y != mixUpKeyCount - 1) {
- out += ",";
- }
- }
- // make random levels
- out += "};";
- out += "int[] randomLevels = {";
- for (int i = 0; i < randomLevels.length; i++) {
- String keyString = "";
- Random rnd = new Random();
- keyString = keyString + Integer.toString(rnd.nextInt(100 - 10) + 10);
- out += keyString;
- if (i != randomLevels.length - 1) {
- out += ",";
- }
- }
- out += "};";
- // make random level keys
- out += "String[] levelKeys ={";
- for (int i = 0; i < randomLevels.length; i++) {
- String keyString = "";
- Random rnd = new Random();
- for (int j = 0; j < 2; j++) {
- keyString = keyString + alphabet[rnd.nextInt(alphabet.length)];
- }
- out += "\"" + keyString + "\"";
- if (i != randomLevels.length - 1) {
- out += ",";
- }
- }
- out += "};";
- copyToClipBoard(out);
- }
- });
- menuBar.add(makeNewKeys);
- Component horizontalStrut = Box.createHorizontalStrut(575);
- menuBar.add(horizontalStrut);
- frame.setVisible(true);
- /* end of frame initialization */
- /* start of decryption/encryption logic */
- In.addKeyListener(new KeyAdapter() {
- @Override
- public void keyReleased(KeyEvent arg0) {
- /* pulls text from input and clears output */
- String inString = In.getText().toLowerCase();
- Out.setText("");
- /* decryption logic */
- if (deEncrypt.isSelected()) {
- String temp = inString;
- int ecyrtptionLevelIndex = findInArrayString(levelKeys, temp.substring(0, 2));
- temp = temp.substring(2);
- for (int i = 0; i < randomLevels[ecyrtptionLevelIndex]; i++) {
- try {
- temp = deEnccrypt(temp);
- } catch (IndexOutOfBoundsException e) {
- encrypt.setSelected(true);
- deEncrypt.setSelected(false);
- }
- }
- copyToClipBoard(temp);
- // clipboard.setContents(stringSelection, null);
- Out.setText(temp);
- } else {
- Random rnd = new Random();
- // select random lvl key
- int levelSelectedIndex = rnd.nextInt(levelKeys.length);
- String temp = inString;
- for (int i = 0; i < randomLevels[levelSelectedIndex]; i++) {
- temp = encrypt(temp);
- }
- copyToClipBoard(levelKeys[levelSelectedIndex] + temp);
- // clipboard.setContents(stringSelection, null);
- Out.setText(levelKeys[levelSelectedIndex] + temp);
- }
- }
- });
- }
- void copyToClipBoard(String str) {
- StringSelection stringSelection = new StringSelection(str);
- Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard();
- clipboard.setContents(stringSelection, null);
- }
- String encrypt(String message) {
- String inString = message;
- Random rndRandom = new Random();
- // chooses mix up index
- int mixUpIndex = rndRandom.nextInt(keys.length);
- String outString = keys[mixUpIndex];
- // chooses the key that will be used for this level of encryption
- char[] keyToUse = mixedUps[mixUpIndex];
- // encrypts the string with the chosen key
- for (int i = 0; i < inString.toCharArray().length; i++) {
- if (inString.toCharArray()[i] != ' ') {
- outString = outString + Out.getText() + keyToUse[findInArray(alphabet, inString.toCharArray()[i])];
- } else {
- outString = outString + " ";
- }
- }
- return outString;
- }
- String deEnccrypt(String in) {
- String out = "";
- // finds which key was used for this encryption
- char[] keyUsed = mixedUps[findInArrayString(keys, in.substring(0, 3))];
- for (int i = 3; i < in.toCharArray().length; i++) {
- if (in.toCharArray()[i] != ' ') {
- out = out + alphabet[findInArray(keyUsed, in.toCharArray()[i])];
- } else {
- out = out + " ";
- }
- }
- return out;
- }
- int findInArrayString(String[] array, String value) {
- for (int i = 0; i < array.length; i++) {
- if (array[i].equals(value)) {
- return i;
- }
- }
- return -1;
- }
- int findInArray(char[] array, char value) {
- for (int i = 0; i < array.length; i++) {
- if (array[i] == value) {
- return i;
- }
- }
- return -1;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement