Advertisement
Guest User

Exor Class

a guest
Oct 2nd, 2012
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.74 KB | None | 0 0
  1. package Exor;
  2.  
  3. import java.io.BufferedReader;
  4. import java.io.CharArrayReader;
  5. import java.io.CharArrayWriter;
  6. import java.io.IOException;
  7. import java.io.InputStreamReader;
  8.  
  9. public class Exor {
  10.     String key;
  11.    
  12.     public Exor(String key) {
  13.         this.key = key;
  14.     }
  15.  
  16.     public void encrypt() {
  17.         try {
  18.             char[] buffer = new char[1];
  19.              BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
  20.             int i = 0;
  21.             while (in.read(buffer) != -1) {
  22.                 buffer[0] = (char) (buffer[0] ^ key.charAt(i));
  23.                 i = (i+1) % key.length();
  24.                 System.out.print(buffer[0]);
  25.             }
  26.         } catch (IOException e) {
  27.             System.err.println("Exception found in Encrypt: ");
  28.             System.err.println(e);
  29.         }
  30.     }
  31.    
  32.     public void decrypt()
  33.     {
  34.         try {
  35.             CharArrayWriter file = new CharArrayWriter();
  36.             BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
  37.          
  38.            
  39.             char[] c = new char[1];
  40.             while (in.read(c) != -1) {
  41.                 file.append(c[0]);
  42.             }
  43.            
  44.             char[] full_file = new char[file.size()];
  45.             full_file = file.toCharArray();
  46.            
  47.             for (int key_value = 0; key_value < 100000000; key_value++) {
  48.                 String temp_key = String.format("%08d", key_value);
  49.                
  50.                 // KEY IS WORKING, TIME TO HACK IT ALL UP!
  51.                
  52.                 CharArrayWriter poss_out = new CharArrayWriter();
  53.                 CharArrayReader poss_in = new CharArrayReader(full_file);
  54.                
  55.                 int i = 0;
  56.                 while(poss_in.read(c) != -1) {
  57.                     c[0] = (char) (c[0] ^ temp_key.charAt(i));
  58.                     i = (i+1) % temp_key.length();
  59.                     poss_out.append(c[0]);
  60.                 }
  61.                
  62.                 String f_me = poss_out.toString();
  63.                
  64.                 // WE'VE GOT THE POSSIBLE OUTPUT, TIME TO CHECK IF IT'S RIG"HT!
  65.                 // hogy, nem, az, ha
  66.                
  67.                 CharSequence val1 = " hogy", val2 = " nem", val3 = " az", val4 = " ha";
  68.                 if (f_me.contains(val1) && f_me.contains(val2) && f_me.contains(val3) && f_me.contains(val4)) {
  69.                     System.out.println(temp_key + " ... " + f_me);
  70.                 }
  71.                 else
  72.                 {
  73.                     System.out.println("HIBAS: " + temp_key + " ... " + f_me);
  74.                 }
  75.             }
  76.         } catch (IOException e) {
  77.             System.err.println("Exception found in Encrypt: ");
  78.             System.err.println(e);
  79.         }
  80.     }
  81. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement