All pastes #740722 Raw Edit

Miscellany

public text v1 · immutable
·published 2007-10-18 04:46 UTC
rendered paste body
import java.io.*;
import java.lang.Exception;


class Encrypt {

	public static void main (String args[])  throws java.lang.Exception {
		long			n, e, d, ptext;
		int				pos;
		FileReader		in;
		BufferedReader	bufRead;
		String			line;
		char			charPtext[] = new char[3];
		
		
		n = e = d = ptext = 0;
		
		if(args.length < 2) {
			System.out.println("Usage:  Encrypt <plaintext> <keyfile>\n");
			System.exit(-1);
		}
		
		
		//Read keys
		in = new FileReader(args[1]);
		bufRead = new BufferedReader(in);
		
		//Read n
		line = bufRead.readLine();
		n = Long.parseLong(line);
		
		//Read e
		line = bufRead.readLine();
		e = Long.parseLong(line);
		
		//Read d
		line = bufRead.readLine();
		d = Long.parseLong(line);
		
		System.out.println("Keys\n----\n");
		System.out.println("n: "+n+"\ne: "+e+"\nd: "+d+"\n");
		
		in = new FileReader(args[0]);
		bufRead = new BufferedReader(in);
		
		//Read plaintext
		pos = 0;
		int temp = bufRead.read();
		while(temp > 0) {
			charPtext[pos%3] = (char)temp;
			if((++pos % 3) == 0) {
				//System.out.println("Encrypting: " + charPtext[0] + charPtext[1] + charPtext[2] + "\n");
				Encrypt(charPtext);
				//Write(M);
			}
			temp = bufRead.read();
		}
	} // end main


	public static void expMod(long b, long e, long n) {
		b = n = e = 0;
	}


	public static void Encrypt(char[] M) {
		String	bin;
		
		//Convert to long
		long v = ((int)M[0] * 65536) + ((int)M[1] * 256) + (int)M[2];
		
		
		expMod(v, e, n);
		
		bin = v.toBinaryString();
		
		System.out.println(v);
	}


}// end class Encrypt