Определите, издеваются ли над местом или нет


Я использую FakeGps приложение, которое подделывает ваше текущее местоположение. Я хочу создать приложение, которое сообщит мне, что перепрофилированное местоположение является поддельным.

Как я могу достичь этой функциональности? Любые идеи приветствуются

3 2

3 ответа:

Вплоть до версии 2.3 протокола NMEA не было возможности включить информацию об источнике информации GPS, однако из-за ввода от FAA это было добавлено к ряду типов сообщений NMEA, включая GLL и RMC, которые обычно используются для позиционирования общего назначения (см. этот документ для получения дополнительной информации).

Это новое поле добавляется в сообщение NMEA в качестве необязательного поля после всех старых полей данных.

Новые поля индикатора режима FAA (обычно называемые режимом) включают следующее:

  • A = автономный режим (почти по умолчанию)
  • D = дифференциальный режим (при использовании дифференциальной коррекции)
  • E = оценка (с помощью мертвого счета или аналогичных методов)
  • M = ручной ввод
  • S = Имитация
  • N = Недопустимый

Я не очень много знаю о приложении FakeGPS, но если он просто принимает текстовый файл сообщений NMEA, вы возможно, вы сможете добавить это поле (или, если оно уже существует, просто измените значение на "S" для simulated) - просто не забудьте изменить контрольную сумму одновременно.

При анализе данных вам просто нужно найти это поле, чтобы отличить имитированные сообщения от истинной информации на основе GPS, где это поле будет, скорее всего, либо A, либо отсутствует (в зависимости от приемника GPS и версии поддерживаемого протокола NMEA). Если вы разработали свой собственный парсер, то добавьте это функциональность действительно довольно проста, если вы используете сторонний парсер, то это может быть немного сложнее (надеюсь, он уже поддерживается).

Приемник местоположения не знает, является ли это фиктивным местоположением или реальным местоположением.

Я опубликовал свое наблюдение, чтобы избежать подмены GPS и сети.

Disable / Check for Mock Location (предотвращение подмены gps)