TLS 1.2를 사용할 때 Java 소켓을 통해 보내는 바이트 배열을 읽을 수 있는 방법이 있습니까?

TLS 1.2를 사용할 때 Java 소켓을 통해 보내는 바이트 배열을 읽을 수 있는 방법이 있습니까?

누군가가 나에게 대답할 수 있다면 나는 대답이 필요합니다. 나는 이것이 이 질문에 대한 정답이 아닐 수도 있다는 것을 알고 있습니다.

소켓을 사용하고 TLS 1.2를 사용하여 Java 8에서 채팅 애플리케이션을 만들었습니다. 내 질문은 누군가가 내가 보낸 데이터를 읽을 수 있는 방법이 있습니까(해독할 수 있는 데이터를 읽을 수 있습니까)? 아마도 중간자 공격 같은 것일 수도 있습니다. 제가 사용하고 있는 서버는 수신 메시지를 대상 클라이언트에 보내는 용도로만 사용된다는 점을 기억해야 합니다(아무것도 저장하지 않음).

소위 보호되는 앱을 사용하는 사람들이 왜 결국 적발되는지 항상 궁금했기 때문에 이 질문을 드립니다. 누군가 내 앱을 사용하여 불법 콘텐츠(실제로는 모든 콘텐츠)를 보내기 시작하면 어떻게 되나요? 내 서버에 데이터가 저장되어 있지 않으면 이 사람이 잡힐까요? 내 애플리케이션이 절대적으로 안전하다고 주장할 수 있나요?

어리석은 질문이었다면 죄송합니다

답변1

TLS 보호의사소통하다클라이언트와 서버 사이제대로 구현된다면. 이것은 의미한다

  • 서버나 클라이언트가 손상되지 않도록 보호하지 않습니다.
  • XSS, CSRF와 같은 응용 프로그램의 오류 또는 웹 응용 프로그램의 유사한 오류로부터 보호하지 않습니다.
  • 클라이언트가 실제로 서버에서 예상 인증서를 얻도록 강제하지 않는 한 MITM 공격으로부터 보호하지 않습니다.
  • 통신 끝점 중 하나가 손상된 경우 암호화 전이나 암호 해독 후에 일반 텍스트 통신이 차단될 수 있습니다.

관련 정보