21.9.2020
Kategorie: Společnost

eRouška v mém telefonu nebude

Sdílejte článek:

KAREL ZVÁRA

Koronavirus může být nepříjemný. Nechci zbytečně riskovat zdraví své, ani jiných. Nejen z úst představitelů státu jsem zaslechl, že nová verze aplikace eRouška je už plně důvěryhodná. Že ji nelze využít k identifikaci člověka, který se setkal s nakaženou osobou. Tak jsem se rozhodl aplikaci eRouška trochu prozkoumat.

Vida, eRouška je opensource! Stáhnu si tedy projekt z GitHubu, podívám se do dokumentace, přečtu si kód, přeložím a když budu spokojený, prostě si vlastnoručně vytvořený balíček nainstaluji na telefon.

Začal jsem tedy na GitHubu. Do Android Studia jsem si naklonoval aplikaci a otevřel README.md. To je soubor, ve kterém se obvykle píšou informace užitečné pro vývojáře a další uživatele. Moje nadšení z opensource hned trochu ochladlo, protože jsem už v úvodu narazil na nepravdivé tvrzení. Píše se tam, že tým vývojářů je nyní placen NAKIT, tedy Národní agenturou pro komunikační a informační technologie. V závorce je však uvedeno (volně přeloženo) „nyní nás platí NAKIT (společnost českého Ministerstva zdravotnictví)“. Tím ale NAKIT skutečně není. Nakit je podnik, konkrétně státní podnik, ale nepatří pod Ministerstvo zdravotnictví. Patří pod Ministerstvo vnitra. Jen drobná chyba, mohl by si někdo říct, ale mezi těmi resorty je podstatný rozdíl.

Budiž, chyba se může stát, řekl jsem si. Otevřel jsem tedy webové stránky eRoušky a hledal něco, co by právě pošramocenou reputaci vývojářů vylepšilo. V zápatí jsem našel odkaz „Audit a kód“, tak jsem se tam šel podívat.

Dvě dobrozdání jsem hned přeskočil. Jejich autoři jsou totiž z Evropské komise a CERGE-EI. Těmto institucím nedůvěřuji. Ovšem z pěti „Auditů a posudků“ (všechny pro eRouška 1.0, nikoliv pro současnou verzi) byly tři označené „FIT ČVUT“. Budiž, sice preferuji matfyzáky, ale Fakulta informačních technologií ČVUT je pro mne autorita na úrovni. A tak jsem se podíval do posudků.

První posudek od FIT ČVUT je označen „Posudek mobilní aplikace eRouška ze dne 2. 4. 2020“. Dokument obsahuje dvě tvrzení:

  1. „Aplikace neodesílá data o setkáních mimo zařízení bez vůle uživatele. Až pouze ve chvíli, kdy uživatel stiskne odeslat data, dojde k jejich odeslání.“
  2. „Aplikace nesbírá údaje o GPS poloze telefonu.“

To je vše. Pod dokumentem je podepsáno pět lidí včetně děkana. Dokument je podepsaný platným elektronickým podpisem. Moc ujištěný tedy nejsem, ale je to dobrozdání od autority.

Když jsem otevřel další posudek, byl jsem překvapený. Je datovaný 8. dubna 2020, na hlavičkovém papíru společnosti Ackee, s.r.o. a je pod ním podepsán jen jeden z pěti signatářů předchozího dokumentu. A především – toto není dokument od ČVUT a obsah jeho tvrzení je téměř totožný (akorát namísto „nesbírá“ je napsáno „nevybírá“). Zřejmě jde o nová tvrzení platná pro novou verzi aplikace. Má důvěra k výrobcům eRoušky opět poklesla, tentokrát velmi hluboko.

Poslední dokument „od FIT ČVUT“ je z 5. května 2020. Tvrzení jsou opět stejná a opět jde jen o dokument společnosti Ackee, s.r.o., nikoliv FIT ČVUT.

S takovým entrée opravdu zatím instalovat nebudu. A to ani verzi, kterou si sám přeložím. Nejdřív se podívám na Google Exposure Notification API (které eRouška 2.0 používá), na soulad tvrzení o způsobu fungování se skutečností v kódu a úvahu, jak se to dá zneužít. Vůbec nechci být přísný. Chyby lidé dělají, nebýt dokonalý je dokonce předpokladem dalšího rozvoje. Nepřesnosti se člověk může také dopustit. Nicméně prohlašovat dvě tvrzení za „audit“ a ve dvou případech ze tří si nevšimnout, že dokument, který autor označil jako FIT ČVUT, je ve skutečnosti od nějakého s.r.o., které ani nepatří ČVUT, byť možná jeho zaměstnancům, to už není jen otázka nepozornosti. V tom vidím úmysl a je jedno, jestli jeho smyslem bylo třeba jen chlácholení uživatelů.

Důvěryhodnost je základem spolupráce. A v tomto případě byla v mých očích důvěryhodnost těžce poškozena ještě dříve, než jsem se dostal ke studiu kódu.

Výše jsem se věnoval věcným chybám v tvrzeních podporujících důvěryhodnost eRoušky. Nyní jsem aplikaci a příslušnou Google-službu zběžně prostudoval a rozhodl se eRoušku nepoužívat. Vám ale možná vadit nebude.

Předesílám, že nejsem asi typickým uživatelem. Téměř žádná aplikace na mém telefonu nemá povolení běžet na pozadí, a ještě méně jich má povolení používat polohu. Tedy ne že „jen nesdílím“ svoji polohu v aplikaci Mapy, ale když otevřu Mapy od Seznamu či od Googlu, nevědí, kde jsem.

eRouška využívá Google Exposure Notification API, což je služba, která by měla pomáhat právě při epidemiích. Je stavěná právě pro takové aplikace, jako je eRouška.

Podle toho, co jsem v kódu načetl, mají autoři pravdu, když tvrdí, že aplikace nesbírá téměř žádné údaje. Prostě jen sbírá identifikátory přes Bluetooth LE zachycených blízkých eRoušek a zapíše si tyto identifikátory společně s časem a sílou signálu. Nic víc.

Hlavně mě zajímalo, jestli se data o kontaktech ukládají jen lokálně a pošlou se na server Googlu až v případě oznámení nákazy, nebo se posílají Googlu průběžně, aby Google mohl informovat eRoušky kontaktů, jakmile uživatel oznámí nákazu. Google Exposure Notification API jsem doposud nepoužíval, tak jsem jej aspoň zběžně nastudoval. Vypadá to tak, že registraci jiných zařízení zajišťuje přímo služba Google (jako Google Play service). Aplikace tak jen zajišťuje, že je povolen Bluetooth a vyzývá uživatele k jeho zapnutí. Google služba, ke které je aplikace připojena, si informace o blízkých zařízeních s eRouškou bere sama. Aplikace tak službě Googlu údaje nepředává, Google si je bere sám. Aplikace je od Google jen získává. 

Potvrzuji tedy téměř všechna slova uvedená z webu erouska.cz, která jsou na obrázku. Kromě toho úplně prvního „Ne“. Proč? Protože uživatele pomocí aplikace eRouška někdo sledovat může. Kdo? Google.

Představme si, že jste podobně „opatrný“ uživatel jako já. Po odchodu z domova nemáte zapnuté Bluetooth, WiFi ani GPS. Lokalizační údaje tak má operátor, ale ne Google. S eRouškou Google získá plovoucí identifikátory a tedy informaci, kdy poblíž sebe byly telefony s těmito identifikátory. Jenomže Google má o uživatelích mnohem víc informací. eRouška je závislá na službách Google Play, tedy uživatel musí být přihlášen. Pro registraci potřebuje i telefonní číslo. Pokud bude Google chtít, v drtivé většině dokáže sestavit velmi přesný profil držitele identifikátoru. A jak si uživatele může spárovat, když v požadavku je jen ten plovoucí identifikátor? Třeba přes IP adresu. Telefon s Androidem totiž běžně často kontaktuje servery Googlu (v doméně 1e100.net). Pokud u těchto volání identifikuje účet uživatele, hlášení do Google Exposure Notification API už nelze považovat za anonymní.

Masovou aplikaci typu eRouška v dnešní době asi nelze napsat o mnoho lépe, než je eRouška s využitím Google Exposure Notification API. Pokud nelpíte na svém soukromí tak moc jako já, klidně si eRoušku nainstalujte. Já to neudělám.

Redakce
Sledujte PP

Sdílejte článek:
1 Star2 Stars3 Stars4 Stars5 Stars (20 votes, average: 4,80 out of 5)
Loading...