2009-08-29 6 views
4

내 사이트에서 설문 조사를 한 결과 투표에 등록하지 않아도되지만 각 방문을 원할뿐입니다. 어떻게해야합니까?익명 사용자 확인

IP 123.34.243.57의 방문자가 사이트를 방문하고 투표한다고 가정 해 봅니다. 그런 다음 123.34.243. *의 사람을 투표에서 제외시키는 것이 안전할까요? 이것은 좋은 전략입니까?

또 다른 것은 무엇입니까?

답변

5

이것은 인터넷상의 모든 투표 사이트에서 근본적인 문제이며, 문제의 표면을 깬 것입니다.

"각 방문을 한 번만 허용하고 싶습니다."[투표]는 브라우저를 열고 사이트를 방문 할 때마다 한 번 투표 할 수 있음을 나타냅니다. 나는 이것이 당신이 추구하는 것이 아닐 것이라고 생각합니다.

당신이 원하는 것은 의심됩니다. 주어진 개인 사람은 한 번만 투표 할 수 있습니다 (설문 조사마다).

문제는 제대로 질문을 짜면 문제가 훨씬 명확 해집니다. 인터넷 노드 (IP 주소), 방문 (세션 쿠키), 브라우저 인스턴스 (영구 쿠키) 또는 컴퓨터 (식별하기 어려움)를 식별하려고하지 않습니다.

쿠키와 함께 기술을 사용할 수 있으며 일반 사용자에게 적합합니다. 브라우저에서 쿠키를 불허, 는 - - 다른 브라우저, 열기 - 브라우저에서 쿠키를 삭제 - 쉽게 으로이 기술을 전복하는 것은 다른 컴퓨터로 걷기를, 이 - anonimizer, 사용하기 - ... 다른 끝 방법.

전자 메일 주소로 유효성을 검사 할 수 있지만 등록을 원하지 않는다고 표시 했으므로 문제가 해결되지 않는다고 생각했습니다.

투표 시스템에 고유 한 사용자를 확인해야하는 경우 특정 사용자의 신원을 보증하거나 신뢰할 수있는 플랫폼에서만 소프트웨어에 액세스 할 수있는 권한이 있어야합니다. .

첫 번째 기술은 실제 법적인 이름과 개인의 위치를 ​​확인하는 등록 (종종 비용이 많이 들고 시간이 많이 걸리는 등록)이 필요합니다. 그런 다음 공개 키 인프라 (디지털 인증서라고도 함)를 사용하면 자신이 제공 한 자격 증명을 기반으로 개별 사람을 식별 할 수 있습니다.

신뢰할 수있는 플랫폼을 요구하는 두 번째 기법은 특정 미리 결정된 동작에 따라 하드웨어를 사용합니다. 예를 들어, XBox 360 또는 iPhone을 통해 작동하는 투표 사이트를 만들 수 있습니다. 해당 장치 중 하나에 설치된 응용 프로그램을 만듭니다. 플랫폼이 보호되는 방식에 따라 XBox 360의 하드웨어 주소 나 라이브 ID 또는 iPhone의 하드웨어 주소 나 전화 번호와 같은 고유성 특성을 사용하여 사용자가 동일한 사람이라는 일반 보증을받을 수 있습니다 전에 방문했다. 신뢰할 수있는 플랫폼의 성격으로 인해 응용 프로그램을 제어 할 수 있고 사용자가 특별히 그렇지 않기 때문에 대부분의 사용자가 응용 프로그램의 의도를 뒤집을 수 없다는 합리적인 확신이 있습니다.

나는 이것이 당신이 할 수 있다고 말하고있는 긴 생각이 드는 방법이라고 생각하지만, 해결하기가 쉽지 않습니다.

정치 선거와 많은 자원과 에너지가 공정하고 익명 성을 갖출 수있는 방법을 생각해보십시오. 여전히 매우 어려운 문제입니다.

2

공용 IP를 사용하면 나쁜 생각 일 수 있습니다. 이 방법을 사용하면 동일한 회사 LAN의 고유 방문자가 모두 한 명의 사용자로 보입니다.

아마도 쿠키입니까? 나는 그것이 대부분의 사이트가 사용하는 것이라고 믿습니다.

일종의 모니터링 (자동 또는 수동) (예 : 로그 파일 분석)과 결합하십시오. 스크립트를 나타내는 트래픽 패턴을 의심하십시오.

0

차단 IP 범위가 좋은 전략이 아니므로 이미 투표 한 사용자, IP 및 쿠키를 식별 할 수있는 2 가지 옵션을 사용할 수 있습니다. 투표 한 후 쿠키를 설정하고 다시 투표하도록 허용하지 마십시오. 당신이 더 나은 전략을 원하는 경우

가 쿠키를 삭제하고 IP를 변경하지만, 익명 투표에 대한 허용의 수, 당신은 단지 특정 IP가 아닌 전체 IP 범위를 차단해야의 그들에게 투표

0

에 등록하자!

등록하지 않은 경우이 방법이 가장 적합하지만 사용자에게는 적합하지 않습니다.

다른 사람이 여러 번 투표하지 못하게 할 수 있습니다. 하지만 투표로 인해 다른 사용자를 차단할 수도 있습니다. NAT 때문입니다.

Network Address Translation (또는 NAT)을 사용하면 여러 사용자가 단일 IP를 사용하여 인터넷에 액세스 할 수 있습니다.

하지만 NAT가 많이 사용되지 않고 투표를 거부하는 사용자가 거의 없기 때문에 괜찮습니다.

그러나 쿠키는 좋은 해결책이 아닙니다. 사용자가 쉽게 브라우저 쿠키를 지우고 다시 투표 할 수 있기 때문입니다. 더 나쁜 것은, 그/그녀는 자동으로 여러 번 투표하는 스크립트를 작성할 수 있습니다!

+0

나는 NAT *가 상당히 많이 사용됩니다. 적어도 내 경험에서. 내가 만난 모든 직장 네트워크는 사설 IP 범위와 NAT/IP 위장을 사용합니다. – codeape

+0

NAT와 같이 특정 사용자를 식별하는 대학에서 자주 사용되는 NAT는 그렇지 않습니다. NAT를 사용하면 TCP/IP 접근 방식 (모든 IP가 단일 스테이션을 식별해야 함)을 사용하여 이와 같은 부작용이 발생할 수 있으므로 관리자가 NAT를 사용하려는 경우 사용자에게 강제되는 제한 사항을 수용해야합니다. – Isaac

+0

Re : _NAT가 많이 사용되지 않음 _ _ "우리는 DSL 회선의 90 % 이상이 인터넷에 연결하기 위해 NAT 게이트웨이를 사용하고 DSL 회선의 10 %가 동시에 활성화되는 여러 호스트를 가지고 있음을 확인했습니다. 최대 52 %의 회선에 여러 호스트가 있습니다 .IP를 호스트 식별자로 사용하면 상당한 오류가 발생할 수 있으므로주의해서 사용해야합니다. "_ - http://www.icir.org/gregor/ papers/pam11-nat.pdf – Molomby

1

아니요, 고유 사용자를 식별하기 위해 IP 주소 또는 IP 범위를 사용할 수 없습니다. 몇 가지 이유로 :

  1. 전체 스팬을 중지하면 투표하지 않은 사용자가 중단됩니다.
  2. IP 주소를 동적으로받는 사람들은 나중에 다른 IP 주소를 받게됩니다.
  3. 로컬 네트워크에있는 사람들 (예 : 대기업)은 동일한 공용 IP 주소를 공유합니다.

쿠키를 사용하여 누가 투표했는지 표시 할 수 있습니다. 그것은 맹목적으로 맞지 않기 때문에 훨씬 나아질 것입니다. 그러나 사람들이 쿠키를 지우고 둘 이상의 브라우저로 브라우징 할 수 있기 때문에 완전히 정확하지는 않습니다.

사용자를 완전히 정확하게 식별하여 아무도 투표하지 않는 것이 확실한 경우 사용자에게 로그인해야합니다. 글쎄, 사람들이 물론 하나 이상의 계정을 만들 수 있다는 사실을 제외하고 ...

+0

특정 IP 차단 (전체 IP 범위가 아님)이 더 좋습니다. 사용자가 다른 솔루션을 속일 수는 있지만 IP는 변경할 수 없기 때문에! 최악의 경우 그들은 한 번 이상 투표하기 위해 일부 프록시 웹 사이트를 사용할 수 있습니다. – Isaac

+0

@Isaac : 실제로 유동 IP를 사용하는 경우 특정 시간, 예를 들어 한 시간 동안 만 사용할 수 있습니다. 그 후에는 새로운 IP를 얻게되며 대부분의 시간이 이전과 같아 지더라도 변경 될 수 있습니다. 또한 방화벽 뒤의 모든 사용자가 동일한 IP를 공유하므로 단일 IP에 수백 명의 사용자가있을 수 있습니다. – Guffa