0
我已經建立了一個聊天應用程序,並且我使用PrintWriter
和Scanner
來讀取和寫入流。例如:Java安全套接字數據傳輸/接收器
Socket socket = new Socket(HOST, PORT);
Scanner IN = new Scanner(socket.getInputStream());
PrintWriter OUT = new PrintWriter(socket.getOutputStream());
String MESSAGE = "";
while(true){
if(IN.hasNext()){
MESSAGE = IN.nextLine();
OUT.println("RESPONSE: " + MESSAGE);
OUT.flush();
}
}
我都在想什麼,如果有人連接到我的服務器(ServerSocket的),就可以閱讀有我寫入流的所有數據。最糟糕的情況是,如果他寫入流中。
我在考慮加密。所有數據將被加密,「RECEIVER」將解密數據流。另外,我必須在加密字符串的開始或結尾處使用安全密鑰,以便將其寫入流中。如果安全密鑰有效,該字符串將被允許被接收器讀取。
這是一個很好的解決方案嗎?這足夠安全嗎?使用PrinterWriter和Scanner讀取/寫入流是足夠好的了嗎?那麼InputStreamReader和BufferedStream呢?