В связи с пандемией Covid-19 как никогда остро стал вопрос о поддержании безопасности людей. Безусловно, самым главным правилом является следование рекомендациям Всемирной Организации Здравоохранения. Однако не менее важно применять и другие доступные инструменты. В частности, мобильные приложения, позволяющие отслеживать взаимодействие с потенциально заражёнными людьми. Сегодня мы расскажем, как такие приложения помогают в борьбе с Covid-19.

Принцип работы

Как только пользователь заходит в приложение, оно просит разрешение на работу Bluetooth и пуш-уведомлений. Затем по Bluetooth начинается поиск находящихся рядом устройств, на которых также установлено это приложение.

В памяти телефона остаётся вся информация о синхронизированных устройствах. Если человек заболевает коронавирусом, он по собственному желанию может указать это в программе. В таком случае идентификаторы всех сохранившихся девайсов будут автоматически отправлены разработчикам.

Все пользователи, которые контактировали с заражённым, получат уведомления, что они находятся в зоне риска.

Приложение для борьбы с Covid-19

Технические подробности

Устройства обмениваются следующими параметрами:

  • временный id;
  • сила сигнала Bluetooth (определяет расстояние между людьми);
  • модель телефона.

Ежеминутно в течение 10 секунд телефон работает как центральное Bluetooth устройство, а в остальное время – периферийное. Центральное запрашивает сведения у периферийного и записывает на него свои данные.

Если говорить более подробно, то Bluetooth работает следующим образом. В периферийном режиме устройство обнаруживает себя, а в центральном сканирует другие устройства. Некоторые устройства не могут работать в центральном режиме и функционируют только в периферийном. Как только два устройства обнаружили друг друга, они обмениваются специальным пакетом данных с информацией.

Работая в центральном режиме, устройство дополнительно записывает силу сигнала Bluetooth. Эти данные позволяют в дальнейшем вычислить предположительное расстояние между двумя устройствами и, соответственно, людьми.

Однако стоит отметить: сейчас в iOS существует ограничение, запрещающее использовать Bluetooth в фоновом режиме, если со смартфона могут быть перемещены какие-либо данные. Поэтому, когда пользователь находится в людных местах, рекомендуется не блокировать телефон и держать приложение открытым.

Помимо этого, принцип работы таких приложений предполагает, что iOS устройства могут обмениваться информацией по Bluetooth с Android устройствами.

Безопасное соединение

Как же обеспечивается безопасность пользователя? Ключевая особенность протокола заключается во временном id. После регистрации устройство получает уникальный идентификатор (Google Firebase FCM Token) и отправляет его на сервер. Тот возвращает набор временных id, которые действуют всего 15 минут.

Если бы у устройства был постоянный id, при встрече его можно было бы считать и использовать. Если же изменять id каждые 15 минут, то злоумышленник не сможет имитировать встречи дольше этого периода времени.

Обновление данных

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

Если после встречи с кем-либо прошло больше 21 дня, эти данные удаляются, т.к. за это время ни одна из сторон не сообщила о заболевании (симптомы заболевания появляются через 14 дней после заражения).

Устройства, с которыми происходил обмен, также добавляются в локальный чёрный список на два цикла работы. Это происходит для того, чтобы девайсы не сканировали друг друга постоянно в целях экономии энергии и места.

Главная цель

Таким образом, главная цель в разработке проектов такого рода лежит в обеспечении мощной и своевременной поддержки в борьбе с коронавирусом. Такие приложения помогают в борьбе с Covid-19, выявляют возможные очаги заражения и быстро реагируют, заботясь о здоровье и состоянии пользователей.

Есть идея для проекта? Пишите нам и мы качественно её реализуем!