2012-06-30 2 views
0

시뮬레이터 모의 위치에 의해 HTML5에서 GPS 스푸핑을 방지하는 방법을 생각 중입니다. HTML5에서 GPS 스프 루핑을 방지하는 방법은 무엇입니까?

  1. 하나 개 이상의 샘플을 채취 :

    내 아이디어의 일부입니다. 실제 상황에서는 GPS 위치가 이동해야합니다. 실제 상황에는 약간의 차이가 있어야합니다.

  2. 데이터를 암호화하는 데 키를 사용하여 스푸핑하는 사람이 서버로 보내는 것을 볼 수 없도록합니다. 그러나 코드에서 alogthrm을 보면 서버에 보내는 내용을 볼 수 있습니다.

실제 상황에서는 쉽지 않습니다. 하지만 여전히 일부 사례를 예방하고 싶습니다. 다른 제안이 있으십니까?

+3

사용자가 기기를 손에 들고 있거나 가방에 넣어두면 100 % 스푸핑을 피하기 위해 할 수있는 일은 없을 것입니다. 탐지 방법의 오판 (false positive)은 사람들을 화나게 할 것입니다. – Pointy

+0

아마도 잘못된 GPS 정보를 걸러 내고 싶을 수도 있습니다. 아마도 합법적 인 일일 것입니다. GPS 정보가 확실하지 않은 경우 일부 위치 기반 서비스를 비활성화하십시오. – Pointy

답변

4

이것은 근본적인 오해가있는 the spec을 기반으로합니다. 그것은 명시 적으로 상태 :

"위치 정보의 일반적인 소스는 IP 주소, RFID, 무선 랜 및 블루투스 MAC 주소 및 GSM/CDMA 세포 같은 네트워크 신호로부터 추론 글로벌 포지셔닝 시스템 (GPS) 및 위치를 포함 아이디뿐만 아니라 사용자 입력. 어떤 보장이 장치의 실제 위치를 반환 API를. "즉

, 당신은 무익 사양이 명시 적으로 허용 뭔가를 방지하기 위해 노력하고 주어진되지 않습니다.

기술적으로 임의의 사용자 입력을 만드는 것이 기술적으로 어렵지 않습니다. 일부 고속도로는 매우 직선이므로 작은 임의의 수직 오류가있는 직선 경로가 누군가가 차에 타고있을 가능성이 있습니다.

+2

좋은 답변입니다. 또한 왜 GPS 좌표가 스푸핑 가능하지 않아야합니까? 이처럼 스푸핑을 방지하는 것은 웹 페이지를 만들 때 뷰 소스 옵션을 막는 것과 같습니다. 완전히 불필요하며 사실 사용자를 제한합니다. – Chii

1

@Pointy는 단순한 기술적 인 관점에서 보면 어려운 일이지만, 나는 짧은 시간 안에 갑자기 '순간 이동'을 한 곳에서 다른 곳으로 모니터링하는 것을 살펴볼 것입니다. 1 분이 지나면 대학에 가고 1 분 후에 그들은 도시 건너편에있는 스타 벅스에 있거나 아니면 멀리 떨어져 있습니다.

간단한 검사는 각 사용자의 가장 최근의 '실제'위치를 추적 한 다음 이전 위치와 새 위치 사이의 시간 경과에 따른 거리 벡터가 특정 범위 내에있는 경우에만 해당 위치로 업데이트를 허용하는 것입니다 .

그러나 이것은 스푸핑을 방지하는 이유는 사람들이 계정을 손상시키고 자신의 위치 (게임 정사각형 등)에 근거하여 무언가를 주장하는 것을 막는 것이라고 가정합니다.

+0

나는 텔레포트에 동의하지만, 도시 지역 (고층 빌딩)에서는 GPS 수신기 (특히 전화가 많이있는 정말 나쁜 것들)는 항상 텔레포트하는 것으로보고합니다. 분명히 대륙에서 대륙으로 텔레포트하는 것은 의심 스러울 것입니다. – Pointy

+1

저는 10 제곱 법칙에 기초를 두었을 것입니다. 아마도 10 분 안에 누군가 반 마일 이내에, 아마도 몇 마일, 10 마일 20 마일, 시간 250 마일, 하루 5000 마일 이내에 이동할 수 있습니다. 이것은 '정확도가 높은 데이터'범위 내에서 대부분의 로컬 텔레포트를 잡지만 현실을 반영하기 위해 합리적인 업데이트를 허용합니다. –

+1

정확하지 않은 데이터를 설명하기 위해 Windows Mobile (초기 버전)의 XDA1에서 몇 년 전에 비슷한 것을 구현했습니다. 진절머리 나는 GPS 센서에 의해 되돌아와 우리 직원의 위치에 대한 지저분한 업데이트를 막을 수있었습니다. (또한 모든 판독 값을 통합하고 평균을 생성하여 약 10 피트로 위치를 조정하는 데 도움이되었습니다. 30 초 :)). –

관련 문제