Приложенията за проследяване на контакти с COVID-19 започнаха да се внедряват по целия свят, като приложения като Aarogya Setu и NHS Covid-19 сега възприемат подход с отворен код.
Новият коронавирус, известен още като SARS-CoV-2, предизвика хаос в целия свят. Няколко държави успяха да контролират разпространението на вируса, но много други се бориха и все още се опитват да го овладеят. Една от стратегиите, които се тестват за ограничаването му, е проследяване на контакти, т.е. проследяване на всички хора, които наскоро са влезли в контакт с лице с положителен тест за COVID-19 и след това предприемане на стъпки за изолиране на тези лица. Проследяването на контакти е решаваща задача, за да се постигне правилното решение, тъй като засяга поверителността и свободата на индивида в по-голям интерес за общественото здраве. Заплахата за неприкосновеността на личния живот беше достатъчно голяма Google и Apple да се обединят и си сътрудничат по API за проследяване на контакти и Bluetooth спецификация, която е проектирана да има минимално въздействие върху поверителността и сигурността на потребителите. Въпреки че тези усилия са похвални и някои страни са ги приели, доста малко нации също са предприели работа по свои собствени подобни решения. В тази част се опитваме да изброим някои от тези решения за проследяване на контакти, като се фокусираме върху онези, които имат отворен изходен код и са достъпни за обществеността за проверка и обратна връзка.
Независими решения
Австрия — Stopp Corona
Австрийското правителство прие Спрете Корона приложение, разработено съвместно с Австрийския червен кръст. Това приложение го прави не разчитайте на API на Google и Apple за уведомяване за излагане на опасност. Няма проследяване на местоположението, тъй като приложението използва Bluetooth. Приложението следи телефоните, които са били близо до потребителя. Ако потребител подозира инфекция с COVID-19 или е диагностициран положително с нея, информацията за близост се качва в това, за което се твърди, че е децентрализирана база данни. Сигналите се изпращат до всички потребители, които са имали история на близост. Съобщава се, че няма събрана лична информация и ако потребителят иска да се откаже от проследяването, той може просто да изтрие приложението и данните. За допълнително спокойствие, приложението също е с отворен код.
Изходният код на Stopp Corona в GitHub
Австралия — COVIDSafe
Австралия е приела COVIDSafe ап. Това приложение го прави не разчитайте на API на Google и Apple за уведомяване за излагане на опасност. При инсталиране потребителите трябва да регистрират своите име/псевдоним, възрастова група, пощенски код и телефонен номер, всички от които се съхраняват криптирани в правителството сървър. Приложението разчита на Bluetooth за проследяване на близостта, като обменя анонимни идентификатори, които се сменят на всеки два часа. Тези идентификатори се съхраняват криптирани на телефоните и се изтриват след 21 дни. Когато някой даде положителен тест за COVID-19, той получава уникален код от здравните служители, който след това качва списъка с анонимни идентификатори за последните 21 дни. Приложението също е с отворен код, така че се поддържа прозрачност.
Изходният код на COVIDSafe в GitHub
Чехия — eRouska
Чешката република е приела еРуска ап. Това приложение го прави не разчитайте на API на Google и Apple за уведомяване за излагане на опасност. Подобно на други изпълнения, които са Само с Bluetooth, eRouska сканира района за други потребители на приложението eRouska в близост и запазва данни за срещи локално на устройството. Когато даден потребител даде положителен тест, здравните служители се свързват с потребителя, за да качат данните за срещата по съгласие. Излъченият идентификатор на устройството се променя на всеки час и сканирането може също да се включва и изключва ръчно. Потребителите могат да изберат да премахнат всички свои събрани данни, включително телефонния номер. Приложението също е с отворен код.
Изходен код на eRouska в GitHub
Цена: Безплатно.
4.3.
Индия — Аарогя Сету
Правителството на Индия реши да не приеме решението на Google и Apple, но вместо това разработи собствено решение под формата на Приложение Aarogya Setu. След като потребителят настрои акаунта си в приложението, приложението иска непрекъснат Bluetooth достъп и данни за местоположението. Потребителите също трябва да предоставят информация като име, възраст, пол, здравословно състояние и други, за да изградят потребителски профил. Предлага се тест за самооценка, при който потребителят се пита дали показва някой от симптомите на COVID-19 заедно с други въпроси. Когато два смартфона с приложението Aarogya Setu се доближат един до друг, приложението събира информация. Ако един от контактите е дал положителен тест, приложението ще предупреди другия човек и ще предостави инструкции за помощ при самоизолация.
Използването на това приложение Aarogya Setu първо беше силно насърчено от правителството и след това разрешено в няколко случая. Индия обаче няма най-доброто отношение към поверителността на гражданите, тъй като в страната липсват ключови закони, които да регулират подобни случаи на употреба. Тъй като приложението събира данни за местоположение и споделя го с правителството— подход, който мнозина смятат за прекомерен и ненужен — той попадна в светлините на прожекторите заради това, че беше твърде натрапчиви в поверителността на потребителите и за липсата на прозрачност и отчетност в процеса. Последваха критики на тези подходи.
В някои добри новини в тази насока приложението Aarogya Setu за Android е направено с отворен код. Изходният код за приложението за Android вече е достъпен на GitHub. Загрижените власти обещават, че изходният код за версията на iOS и версията на KaiOS на приложението ще също така да бъде с отворен код "навреме". Политиката за поверителност на приложението също беше актуализиран, за да позволи обратно инженерство на приложението и докладване на грешки на правителството. Освен това има и a програма за награди за грешки на място, приканвайки разработчиците да идентифицират уязвимости, грешки и подобрения в кода.
Изходният код на Aarogya Setu в GitHub
Всичко това определено е добра новина, тъй като липсата на прозрачност беше доста тревожна. Все още има въпроси относно непрозрачната бек-енд инфраструктура и кода от страната на сървъра, но докладите предполагат че това също ще бъде с отворен код следващата седмица.
Цена: Безплатно.
3.3.
Сингапур — TraceTogether въз основа на протокола BlueTrace
Изпълнението на Сингапур е под формата на TraceTogether, което също е не разчита на приложните програмни интерфейси (API) за уведомяване за излагане на експозиция на Google и Apple, но също така е само с Bluetooth и не е базиран на местоположение. Приложението се нуждае само от мобилен номер, за да започне, и не се събира друга лична информация. Номерът е част от потребителския идентификатор, който след това се използва за генериране на временни идентификатори. Информацията за близостта на тези временни идентификатори се съхранява на 21-дневна текуща база на устройството. Данните се предават на сървър, когато даден потребител даде положителен тест. Освен това е обещано функционалността на TraceTogether да бъде спряна, когато ситуацията с пандемията отшуми.
Докато TraceTogether не е с отворен код сам по себе си, е публикувана обща кодова база под формата на OpenTrace. Тази обща кодова база включва референтната реализация на приложение за Android, приложение за iOS и централен сървър, изграден около Google Firebase. Също така е публикуван Протокол BlueTrace което формира основата за TraceTogether и OpenTrace. Протоколът BlueTrace се опитва да създаде оперативна съвместимост между юрисдикциите, така че други нации да могат да си сътрудничат в тези усилия.
Изходният код на OpenTrace в GitHub
Цена: Безплатно.
3.6.
Обединеното кралство — NHS COVID-19
Изпълнението на Обединеното кралство е под формата на NHS COVID-19 приложение, което в момента е в „бета тестване“ и е достъпно за жителите на остров Уайт (и ще бъде разширено до други региони в бъдеще). Приложението е не разчита на API на Google и Apple за уведомяване за излагане на опасност, но разчита и на Bluetooth. При настройка потребителите трябва да въведат първата половина от своя пин код, който се използва за идентифициране на избухване на горещи точки - не се изискват допълнителни подробности, освен ако не съобщите за симптоми. Bluetooth данните за близост се регистрират за 28 дни чрез анонимни идентификатори. Приложението също ще бъде прекратено, след като пандемичната ситуация приключи. Изходният код на приложението вече е отворен и достъпен за проверка.
Изходен код на NHS COVID-19 в GitHub
Решения, използващи API на Google и Apple за уведомяване за излагане на опасност от заразяване
Тези внедрявания са изградени върху приложния програмен интерфейс (API) на Google и Apple за уведомяване за излагане на опасност от заразяване. Google също пусна актуализация на услугите на Google Play, която включва новия API. Наличен е и референтен дизайн за приложение за Android, прилагащо API за известия за експозиция. На приложения, базирани на този API, е забранено да събират данни за местоположението на устройството. Вместо това, API използва Bluetooth Low Energy, за да открие дали сте били в близост до други, които са дали положителен тест. Приложният програмен интерфейс (API) ще сподели колко дни са изминали от отделно „контактно събитие“ заедно с оценка на времето на експозиция. Bluetooth метаданните ще бъдат AES криптирани.
Докато в случая с Google, потребителите на Android няма да трябва да инсталират приложение, тъй като API за известяване на излагане се доставя чрез актуализации на услугите на Google Play. Така че, докато имате устройство с Android с Android 6.0 Marshmallow или по-нова версия, трябва да имате достъп до услугата. Все пак Google ще подкани потребителите да изтеглят подходящо приложение за обществено здраве, ако бъде открито положително контактно събитие.
Италия — Имуни
Решението на Италия идва под формата на приложението Imuni, което се очаква да види по-широко публично пускане през следващите дни. Той разчита на системата за уведомяване за експозиция на Google и Apple, като използва Bluetooth Low Energy и не се събират никакви данни за геолокация.
Изходният код на Immuni в GitHub
Швейцария — SwissCovid DP-3T
Швейцария работи върху решение, наречено Decentralized Privacy-Preserving Proximity Tracing (DP-3T). Очаква се и приложението, и сървърът да бъдат с отворен код. Приложението все още не е завършено и пуснато за обществеността, но изходният код за приложението вече е активен, така че трябва да служи като основа.
Изходен код на SwissCovid DP-3T в GitHub
Това не е изчерпателен списък, но има за цел да подчертае решенията, които са налични под формата на код с отворен код за заинтересовани разработчици, които да проверяват и надграждат.