FamilyGo: как мы храним секреты пользователей в мире открытых данных

Мы команда проекта FamilyGo. Работаем над семейным приложением, в котором пользователи смогут общаться и не переживать, что их данные попадут в руки таргетологов или героев даркнета. В статье расскажем, как появилась идея сверхбезопасного приложения для семьи и можно ли вообще сохранить хоть что-нибудь в секрете в мире открытых данных.

FamilyGo: как мы храним секреты пользователей в мире открытых данных

О приложении

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

У приложения несколько сценариев использования, но основной — семья и всё, что с ней связано, чтобы пользователь, захваченный семейными буднями, выдохнул и не волновался, все вопросы решал в режиме одного окна. А что-то и вовсе автоматизировал, например, контроль за безопасностью детей или пожилых родителей. Для этого есть трекер, который присылает уведомления, если кто-то из близких вышел за пределы определенной территории, или записывает историю перемещений, или сигнализирует о превышении скоростного режима тех, кто перемещается на автомобиле. А при нажатии кнопки SOS кем-то из близких — отправляет всем членам круга сигнал тревоги и точку с положением «потерпевшего» на карте.

Но главная особенность не в этом.

FamilyGo — полностью закрытое, автономное и независимое от внешнего мира приложение. Оно не собирает и не хранит данные о пользователях. Пересылаемая информация защищена е2е-шифрованием на базе протокола Signal. Сегодня эксперты называют его золотым стандартом безопасности. При передаче информации у отправителя и получателя генерируется специальный ключ, без которого невозможно расшифровать переписку.

Чтобы объяснить, зачем нам понадобилось изобретать такой велосипед, покажем немного цифр.

Почему важно скрывать данные

Один из главных критериев для оценки безопасности цифровых продуктов — рейтинг OWASP (Open Web Application Security Project). Отчет об уязвимостях OWASP формируется на основе консенсуса мнений экспертов по безопасности со всего мира.

Исследование BetaNews показывает, что 44% приложений содержат личные данные, требующие высокого уровня защищенности, 66% приложений используют функциональные возможности, которые могут поставить под угрозу конфиденциальность информации о пользователях. Среди лидеров по числу установок 94% мобильных приложений содержат по меньшей мере три уязвимости среднего риска (по девятибалльной шкале OWASP — от 3 до 6 баллов), а 77% — хотя бы две критичные (от 6 до 9 баллов).

Низкая безопасность приложений — проблема не только разработчиков, но и пользователей. Пользовательские данные ежедневно продают и покупают как самый ходовой товар.

Большинство пользователей сильно удивились бы, узнав, как много можно узнать о человеке по цифровому следу. Где вы живете, во сколько приходите домой, какие книги читаете во время отпуска. Пользовательские данные — большой бизнес, в котором легально участвуют информационные брокеры и крупные компании. Первые собирают цифровые досье, вторые выделяют целые бюджеты на получение данных для поведенческого таргета.

Над FamilyGo работает небольшая команда. Все мы давно в IT, но нам одинаково не по себе от того, что каждый оставляет свой цифровой след, к которому так легко получить доступ.

Утечку информации о любимой пицце еще можно пережить. Гораздо страшнее, что вместе с подобными несущественными фактами утекают другие, по-настоящему бесценные данные. Те, что касаются безопасности наших близких: номера телефонов и маршруты детей, любимого человека, пожилых родителей.

Как защитить данные пользователей

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

Поэтому основной принцип FamilyGo такой: чтобы у нас ничего не украли, мы ничего не берем и не храним.

Почему не берем. Чтобы начать пользоваться приложением, нужно его просто скачать и создать группу для общения. При создании группы генерируется случайный набор знаков, который используется для регистрации и лично с вами никак не связан. Другие пользователи — ваши близкие — могут вступить в группу только по приглашению. Это случайный одноразовый код, который действителен только один час и только для одного человека, или QR-код, который также генерируется для каждого индивидуально.

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

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

Вот выдержка из политики конфиденциальности семейного трекера, одного из представленных на рынке:

FamilyGo: как мы храним секреты пользователей в мире открытых данных
FamilyGo: как мы храним секреты пользователей в мире открытых данных

Вот выдержка из политики конфиденциальности FamilyGo:

FamilyGo: как мы храним секреты пользователей в мире открытых данных

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

Почему не храним. Сервер-маршрутизатор используется как почтальон. Он просто передает зашифрованные данные от одного пользователя к другому.

Математически доказано, что Signal — невзламываемый код, который использует асимметричные ключи. Но даже с учетом этого фактора говорить о том, что можно создать что-то гарантированно защищенное от взлома, невозможно. Просто усилия, затраченные на то, чтобы открыть данные, будут прямо коррелироваться со стоимостью проекта.

Стопроцентной безопасности не бывает. Устранить риск можно, только если данные будут отсутствовать на сервере.

Уровень безопасности приложения сейчас позволяет сказать, что большинство проблем безопасности закрыты. Мы дорабатываем отдельные задачи: например, недавно сделали двусторонний SSL Pinning. Не каждый банк сегодня имеет такую степень защиты. По методологии оценки рисков OWASP это проблема низкого уровня, не считающаяся критичной. Но для нас важно сделать приложение безопасным настолько, насколько это возможно.

С какими проблемами столкнулись

Проблема номер один — сама безопасность.

Никто из нас даже не думал, что создать защищенное приложение так сложно и дорого.

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

Проблема номер два — отсутствие возможности получить фидбек.

Мы создали настолько анонимное и защищенное приложение, что защитились сами от себя. Без пользовательских данных невозможно построить воронку продаж или четко определить массовые запросы. Единственное, на что мы пока можем ориентироваться, — локальные фокус-группы, коммуникация пользователей с поддержкой и оценки в сторах.

Последние, кстати, обнадеживают: есть вопросы по части технической реализации, но идея нашла отклик. Это же подтверждается статистикой платных подписок. За последний месяц только в AppStore получили прирост новых подписчиков в 25%. Это с учетом того, что в приложении вообще нет рекламы, а мы серьезно ограничены в возможностях прокачивания конверсии.

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

Проблема номер три — удобство.

Оказалось, что безопасность — это круто, но сложно не только для разработчиков, но и для пользователей. Нам проще «тапнуть» везде «разрешить», чем читать простыни соглашений и думать, зачем приложение по доставке лыж запрашивает доступ к фотографиям.

В нашем случае важно было сделать так, чтобы безопасность не требовала от пользователей усилий. Поэтому пошли по пути простого дизайна, не перегруженного лишними элементами. Для работы в приложении не нужна авторизация, ПИН-код можно использовать при желании: такая опция не предлагается по умолчанию, но «зашита» в настройки приложения.

Приложение запрещает делать снимки экрана. Пока только в Android
Приложение запрещает делать снимки экрана. Пока только в Android

Скачивания, пользователи, оценки

С идеями разобрались, теперь — к цифрам.

Официальный кроссплатформенный релиз состоялся в апреле 2021 года: сначала представили версию для Android, затем — для iOS. Сейчас приложение доступно еще и в Huawei AppGallery, Samsung Gallery, Amazon Appstore.

Прирост конверсии в октябре по сравнению с предыдущим месяцем в Google Play составил 129%. В iOS средняя конверсия в день — 3,4%.

Рейтинг на сегодняшний день — 4,2. Есть над чем работать: отзывы в Play Маркет, к примеру, 50/50: есть комплименты, а есть жалобы на отдельные баги.

Как хотим развивать приложение

В ближайшее время планируем добавить интеграцию с внешними устройствами — браслетами, часами, трекерами.

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

Отчасти мнение каждого члена команды — элемент product-market fit, так как мы сами со своими детьми и пожилыми родителями являемся целевой аудиторией своего приложения. Сверхзадача на будущее — создать из FamilyGo семейный суперапп.

Делитесь в комментариях, что бы вы хотели видеть в таком приложении, и мы добавим новые фичи в бэклог.

55
18 комментариев

У приложения несколько сценариев использования, но основной — семья и всё, что с ней связано

Я нашёл вам амбассадора.

1
Ответить

отличное предложение :)

1
Ответить

А телега со своими задачами уже не справляется?

Ответить

Ну телега точно также секьюрна, как и воцап. То есть никак. :)

1
Ответить

Бьются приложения за защиту, бьются, а мошенники все равно лазейку найдут. Кто кого?

Ответить

Вечный бой...

Ответить

А зачем таск-менеджер в таком приложении? Вы хотите охватить все, получится ли сделать такой же многофункциональный таск-менеджер, как, например, ToDoist?

Ответить