2009-12-20 3 views
0

Java에서 Web Anonymizer (ktunnel과 같은)를 구현하려고하지만 실제로 아이디어를 얻을 수 없으며 웹 익명 처리 도구의 작동 방식에 대한 정보가 필요합니다. 필자는 소스 나 샘플 애플리케이션, anonymizer 아이디어를 설명하는 아이디어 또는 자습서가 실제로 필요하지 않습니다. 감사합니다. .Java의 웹 익명 처리자

+0

이 부분 주위에는 질문에 대한 답변 중 하나를 받아 들일 수있는 일반적인 예의가 있습니다. 질문에 대한 답변이 충분하지 않은 경우가 아니면. – BobMcGee

답변

2

기본 익명 처리기는 암호화 된 "프록시"역할을하며 프록시 서버와 클라이언트간에 암호화 된 "터널"을 생성합니다. 여기서 클라이언트의 모든 트래픽은 프록시를 통과합니다. 이는 다음 세 가지를 수행합니다.

  1. 클라이언트는 프록시와 엔드 포인트 간의 트래픽을 조사하여 결정할 수 없습니다. 다른 쪽 끝의 호스트는 프록시 서버를 보게됩니다.
  2. 프록시에 대한 연결이 암호화되어있어 클라이언트의 트래픽 내용이 모니터링되지 않습니다.
  3. 클라이언트에서 발생하는 트래픽의 끝점을 결정하는 것은 불가능합니다. 모든 트래픽이 프록시로만 전송되기 때문입니다.

실제로 클라이언트와 프록시 사이의 트래픽 양과 프록시와 다양한 사이트 간의 트래픽을 살펴보면 간단한 익명 사용자는 완전한 보호를 제공하지 않습니다. 따라서 특정 클라이언트를 그들의 트래픽. 이를 트래픽 분석이라고합니다.

Tor와 같은 세련된 익명 사용자는 트래픽 분석 및 익명 성을 없애는 많은 다른 기술에 대한 보호 기능을 제공하지만 실제로는이 질문의 범위를 벗어납니다.

귀하의 관점에서 중요한 것은 프록시 소프트웨어를 작성하는 것입니다. 프로그램은 클라이언트에 대한 암호화 된 연결을 생성하고 관리 할 수 ​​있어야합니다. 즉, 호스트에 대한 암호화 된 연결을 (안전하게) 시작하고 외부 호스트에 대한 연결을 전달한 다음 트래픽을주고받을 수 있어야합니다. 기본적으로 라우터 역할을해야합니다.

이 작업을 수행하는 방법에 대한 프로토콜이 있습니다. SOCKS 프로토콜 또는 Tor를 읽는 것이 좋습니다. 가장 좋은 방법은 학습 프로젝트라면 기본 SOCKS 프록시 소프트웨어를 작성하는 것입니다. 이것이 실제 사용을위한 것이라면 이 필요한 서비스를 제공하는 Java 라이브러리 여야합니다.

편집 : Ktunnel 덜 화려한 프록시 - 그것은 앞뒤로 URL에서 정보를 리디렉션하는 CGI 스크립트를 사용합니다. 기본적으로 주소를 입력하면 해당 주소의 페이지를 가져와 사용자에게 보냅니다. 상당히 간단합니다.

0

저는 ktunnel을 모르지만 익명 성 네트워크에 대한 기본 정보는 Tor at wikipedia입니다.

+0

Tor가 인상적이지만이 질문에는 조금 복잡합니다. 내가이 질문을 읽었을 때, 익명성에 관한 기본 원칙 *에 대해서만 묻고 성숙한 체계의 모든면에 대해서는 묻지 않는다. – BobMcGee

+0

You 're absolutely right BobMcGee, 웹 페이지의 내용 만 표시하고 "a"또는 "img"와 같은 일부 html 태그를 다시 작성합니다. – fsonmezay