Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.net.*;
- import java.io.*;
- import javax.crypto.Cipher;
- import javax.crypto.CipherOutputStream;
- import javax.crypto.SecretKey;
- import javax.crypto.SecretKeyFactory;
- import javax.crypto.spec.DESKeySpec;
- public class SimpleTcpClient {
- public final static String PASSWORD = "password";
- public static void main(String args[]) throws Exception {
- String message = "A Secret Message";
- // Create connection
- InetAddress serverAddress = InetAddress.getByName("localhost");
- int serverPort = 7896;
- Socket socket = new Socket(serverAddress, serverPort);
- // Create Key
- byte key[] = PASSWORD.getBytes();
- DESKeySpec desKeySpec = new DESKeySpec(key);
- SecretKeyFactory keyFactory = SecretKeyFactory.getInstance("DES");
- SecretKey secretKey = keyFactory.generateSecret(desKeySpec);
- // Init the Cipher
- Cipher desCipher = Cipher.getInstance("DES/ECB/PKCS5Padding");
- desCipher.init(Cipher.ENCRYPT_MODE, secretKey);
- // Create streams
- OutputStream os = socket.getOutputStream();
- CipherOutputStream cos = new CipherOutputStream(os, desCipher);
- // Print the message to the outputstream
- PrintWriter pw = new PrintWriter(new OutputStreamWriter(cos));
- pw.println(message);
- pw.close();
- // Send message
- cos.close();
- // close socket
- socket.close();
- }
- }
- import java.net.*;
- import java.io.*;
- import javax.crypto.Cipher;
- import javax.crypto.CipherInputStream;
- import javax.crypto.SecretKey;
- import javax.crypto.SecretKeyFactory;
- import javax.crypto.spec.DESKeySpec;
- public class SimpleTcpServer {
- public final static String PASSWORD = "password";
- public static void main(String args[]) throws Exception {
- // Create connection
- int serverPort = 7896;
- ServerSocket serverSocket = new ServerSocket(serverPort);
- Socket socket = serverSocket.accept(); // blocking call
- // Create Key
- byte key[] = PASSWORD.getBytes();
- DESKeySpec desKeySpec = new DESKeySpec(key);
- SecretKeyFactory keyFactory = SecretKeyFactory.getInstance("DES");
- SecretKey secretKey = keyFactory.generateSecret(desKeySpec);
- // Init the Cipher
- Cipher desCipher = Cipher.getInstance("DES/ECB/PKCS5Padding");
- desCipher.init(Cipher.DECRYPT_MODE, secretKey);
- // Create the encrypted inputstream
- InputStream is = socket.getInputStream();
- CipherInputStream cis = new CipherInputStream(is, desCipher);
- // Read the message
- BufferedReader br = new BufferedReader(new InputStreamReader(cis));
- System.out.println(br.readLine());
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement