Как освободить умные часы Garmin от неработающих облачных сервисов | ВесьТоп создание и продвижение сайтов

Поддержка сайта

Высокие позиции в поисковой системе, на прямую зависят от развития вашего сайта.

Продвижение сайтов

Эффективность стратегий продвижения подтверждается сотрудничеством с крупными клиентами и отзывами о нашей работе.

Создание сайтов

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

Как освободить умные часы Garmin от неработающих облачных сервисов

Как освободить умные часы Garmin от неработающих облачных сервисов

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

На момент написания Garmin был атакован очень неприятной программой-вымогателем. Это коснулось и меня, потому что у меня есть умные часы Garmin Instinct. Я очень доволен ими, и во многом эти часы просто волшебные — в таком маленьком устройстве реализовано столько возможностей.

Кроме того, у меня есть хобби — гребля на каноэ.

Я считаю, что часы с GPS — это незаменимый элемент безопасности, особенно в навигации, потому что трудно определить скорость воды, когда вы находитесь в сотнях метров от берега. А если вы окажетесь в одном из опасных течений, не понимая и не осознавая ситуации, вы можете оказаться далеко в море и во что-то гораздо худшее.

Вокруг Сингапура всегда могут возникнуть быстрые и опасные течения. Когда прилив сменился отливом, Южно-Китайское море в конечном итоге попало в Андаманское море через Сингапурский пролив, образуя опасные течения, которые со временем меняли направление. Вот почему после каждой гребли мои данные GPS загружаются в электронное облако Garmin Connect для последующего просмотра маршрута и отметки наиболее важных изменений в этих приливных течениях.

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

До вчерашнего дня.

Именно это и произошло — мы попали в очень необычное течение, и мой напарник хотел узнать, какова скорость в некоторых особенно сложных местах. Я запустил приложение для получения этих данных и обнаружил, что Garmin подвергается атаке.

Как освободить умные часы Garmin от неработающих облачных сервисов

В заложники были взяты данные Garmin, в том числе личные данные о моей гребле. Так небольшая часть моей жизни стала заложницей технологий.

Программа-вымогатель WastedLocker была использована против Garmin, и портал опубликовал скриншоты зашифрованных файлов, а также текст с просьбой о большом выкупе. Хакерам нужны колоссальные 10 миллионов долларов на расшифровку файлов.

Друзья посоветовали мне воспользоваться веб-сервисом Strava. Хорошей новостью в этой ситуации является то, что Strava позволяет загружать данные с часов Instinct, а затем эти данные могут обрабатываться различными онлайн-сервисами. Часы необходимо подключить к простому USB-порту, после чего устройство будет отображаться как запоминающее устройство.

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

Как освободить умные часы Garmin от неработающих облачных сервисов

Нажмите «Отмена»…

Как освободить умные часы Garmin от неработающих облачных сервисов

Нажмите «Запретить доступ»…

Как освободить умные часы Garmin от неработающих облачных сервисов

Здесь мы уже выбираем «ОК»…

Три клика — запретить доступ, и если вы по неосторожности продолжите нажимать эту кнопку внизу окна, вы сделаете другой выбор — случайно. Затем появляется длинный список людей (как им удалось узнать обо мне так много всего с одним адресом электронной почты?) И затем умное диалоговое окно, в котором, если вы ответите неправильно, они попросят вас ввести данные вашей кредитной карты. в рамках «бесплатной пробной версии».

Я думал, что Garmin уже выиграл 200 долларов после продажи мне этого устройства, и сбор моей личной информации будет мне на десерт. Но для Стравы это главное блюдо. Для меня совершенно очевидно, что Strava показывает своим инвесторам, что они могут получать хорошую прибыль от продажи моих личных данных, включая информацию о моем здоровье.

Для меня это абсолютно неприемлемо. Вместо того, чтобы публиковать мои данные, мне нужно переключиться с Garmin на Strava, что означает прыжок из кастрюли прямо в огонь.

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

Я был счастлив найти альтернативу gpsbabel с открытым исходным кодом (большое спасибо разработчикам! Я пожертвовал необходимую сумму!), Которая конвертирует данные Garmin с собственным форматом в совместимый формат .GPX. Оттуда я смог извлечь фрагменты синтаксического анализа XML и объединить их с OpenStreetMaps через Folium API, чтобы создать свои собственные карты с моими данными.

Даже с учетом того, что я допустил много ошибок, используя API Карт Google, который ставит ужасные водяные знаки, предназначенные только для разработчиков, на все плитки на карте, работа заняла всего одну ночь. Было потрачено много времени, но в целом это был правильный способ найти наиболее подходящие фрагменты с открытым исходным кодом и вставить их с помощью Python. Кстати, Python — отличный клей, но ужасный конструкционный материал — не используйте его для больших проектов. Качество кода не на должном уровне, но Python позволяет это делать и делает свое дело. Следуя этим советам, вы можете использовать их как отправную точку для поиска и поиска чего-то лучшего.

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

Как освободить умные часы Garmin от неработающих облачных сервисов

Именно эти данные мне нужны — ни больше, ни меньше. Кроме того, все представляет собой простой html-файл, на который может быть дана прямая ссылка. Нет ни аналитики, ни текстовых файлов cookie — ничего подобного. Только данными я решил поделиться со всеми.

Вот фрагмент исходного кода, который я использую для построения картографии:

def plot_osm_map (track, output = ‘speed-map.html’, hr = None): for i in range (len (track [‘speed’])): track [‘speed’] [i] = speed_conversion (track [ ‘скорость’] [i]) скорости = трек [‘скорость’] минимум = минимум (скорости) максимум = максимум (скорости)
norm = matplotlib.colors.Normalize (vmin = minima, vmax = maxima, clip = True) mapper = cm.ScalarMappable (norm = norm, cmap = cm.plasma) m = folium.Map (location = [track [‘lat’) ] [0], дорожка [‘lon’] [0]], zoom_start = 15) для индекса в диапазоне (len (track [‘lat’])): если дорожка [‘speed’] [index] == 0: track [‘speed’] [index] = 0,01 else: track [‘speed’] [index] = track [‘speed’] [index] if hr: try: tooltip = str [track [‘speed’] [index] ) + » + str (hr [‘hr’] [index]) + ‘bpm’ за исключением: tooltip = str (track [‘speed’] [index]) else: tooltip = str (track [‘speed’] [ index]) folium.CircleMarker (location = (track [‘lat’] [index], track [‘lon’] [index]), radius = track [‘speed’] [index] ** 2/8, tooltip = всплывающая подсказка, fill_color = matplotlib.colors.to_hex (mapper.to_rgba (track [‘speed’] [index])), fill = True, fill_opacity = 0.2, weight = 0,) .add_to (m)
m.save (вывод)

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

Лучше всего то, что я не загружаю данные ни в какое облако. Это особенное удовольствие — убрать еще один канал для мониторинга приватности без потери качества и удобства.

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

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

Читайте так же:
Not found

Нам доверяют

Интернет магазин