Kategorie
Administracja publiczna Android Epidemia iOS

Aplikacja ProteGO Safe nie działa. Czas zatrzymać tę inwestycję.

Teza niniejszego artykułu jest prosta: ProteGO Safe nie działa i najbardziej racjonalną decyzją będzie natychmiastowe zatrzymanie prac nad nią, by zaoszczędzone pieniądze wydać na “ręczne” śledzenie kontaktów osób zarażonych. Kilka miesięcy temu wielu z nas wierzyło, że aplikacje do śledzenia interakcji mogą pomóc w ograniczeniu propagacji koronawirusa. Spróbowaliśmy, aplikacja powstała, dziś mamy już dowód, że jest całkowicie nieskuteczna.

Niniejszy wstępniak piszę wieczorem 10 lipca 2020. ProteGO Safe nie dystrybuuje obecnie ani jednego klucza pozwalającego użytkownikom dowiedzieć się, że przebywali w pobliżu osoby z potwierdzoną diagnozą koronawirusa. Powód? W ciągu minionych dwóch tygodni ani jeden z 4000 nowych nosicieli SARS-CoV-2 nie wysłał do serwera ProteGO Safe informacji o swoich kontaktach społecznych. Aplikacja za grubo ponad dwa miliony złotych nie spełnia swojej roli, czas uciąć dalsze bezcelowe wydatki.

Inne teksty związane z epidemią koronawirusa

[13.03.2020] o projekcie „Stop the pandemic” i tym, że jego autorzy prosili o znacznie więcej danych niż powinni
[20.03.2020] w którym zaglądam do środka aplikacji „Kwarantanna Domowa” i opisuję, co znalazłem w środku
[29.03.2020] w którym opisuję dlaczego smartfony nie bardzo nadają się do śledzenia interakcji między ludźmi
[03.04.2020] w którym piszę o zapowiadanej przez Ministerstwo Cyfryzacji apce „ProteGO” i o tym, że nie zadziała ona zgodnie z oczekiwaniami
[21.04.2020] w którym piszę o protokole Contact Tracing autorstwa Apple+Google i projekcie OpenTrace
[26.04.2020] w którym opowiadam, jak można sprawdzić, co robi aplikacja mobilna i dlaczego otwarte źródła to nie wszystko
[29.04.2020] w którym mając umowę szacuję koszty napisania od zera aplikacji Kwarantanna Domowa
[09.05.2020] w którym pokazuję, jak sprawdzić zawartość komunikatów wysyłanych w eter przez ProteGO Safe
[04.06.2020] w którym opisuję kontrowersyjną architekturę aplikacji ProteGO Safe 4.1.0-rc.1
[16.07.2020] w którym pokazuję, że aplikacja ProteGO nie działa
[31.08.2020] w którym podaję statystyki ProteGO Safe u progu nowego roku szkolnego
[27.10.2020] w którym podaję statystyki STOP COVID (dawniej ProteGo Safe) przed Wszystkich Świętych
[05.11.2020] w którym opisuję, co będzie, jeśli apka STOP COVID (dawniej ProteGo Safe) stanie się obowiązkowa

Aplikacja nie jest używana nawet przez tych, którzy ją zainstalowali

Przypomnijmy sobie, jak działa protokół Exposure Notification: telefony użytkowników z aplikacją do śledzenia kontaktów stale rozgłaszają losowe identyfikatory kanałem radiowym modułu Bluetooth. Jednocześnie prowadzą też nasłuch a każdy cudzy identyfikator jest zapamiętywany, bo to oznacza, że drugie urządzenie znajduje się w odległości kilku-kilkunastu metrów. W ten sposób urządzenia rejestrują, że się “usłyszały”. Nadawane identyfikatory są losowe i zmieniają się co kwadrans, więc właściciele tych urządzeń pozostają anonimowi.

Gdy użytkownik aplikacji zostanie zdiagnozowany jako nosiciel koronawirusa, wraz z diagnozą dostanie kod PIN który pozwoli mu wysłać swoje “identyfikatory chorego” na serwer ministerstwa. Stamtąd automatycznie ściągną je telefony pozostałych użytkowników. U nich aplikacja sprawdzi, czy pobrane “identyfikatory chorego” występują na liście identyfikatorów usłyszanych w ciągu minionych dwóch tygodni. Jeśli tak, użytkownik zostanie powiadomiony o wcześniejszym kontakcie z kimś, kto został zdiagnozowany pozytywnie.

Co poszło nie tak w aplikacji ProteGO Safe? Od 23 czerwca do 14 lipca “identyfikatory chorego” trafiły na serwer jedynie 7 razy. Co więcej – po dwóch tygodniach od wydania wersji 4.1 (która korzysta z protokołu Exposure Notification) spodziewalibyśmy się, że osoby o potwierdzonej diagnozie będą wysyłać pełną dwutygodniową historię swoich identyfikatorów. Tak nie było – w przypadku ProteGO Safe mieliśmy 4 wysyłki identyfikatorów z jednego dnia zaś rozmiar największej paczki nie przekroczył 10 dni.

Notka techniczna

Unikalne identyfikatory nadawane przez Bluetooth, zmieniające się co 15 minut, bazują na liczbie odnawianej losowo raz na dobę. Dzięki funkcjom jednokierunkowym (opowiadam o nich więcej w Kursie Obsługi Menedżera Haseł) co kwadrans z tej liczby i bieżącej godziny tworzony jest nowy identyfikator do nadawania. Dlatego właśnie wystarczy, że osoba zarażona udostępni swoje liczby losowe z minionych dwóch tygodni (będziemy je też nazywać kluczami) a ProteGo Safe w telefonach pozostałych użytkowników obliczy wartość identyfikatorów i sprawdzi, czy któryś z nich został wcześniej odebrany

Cztery wysyłki po jednym kluczu. Taka statystyka sugeruje, że te osoby tak naprawdę nie używały aplikacji ProteGO Safe przed otrzymaniem diagnozy. Moja spekulacja: osoby te instalowały aplikację w dniu pobrania wymazu a następnego dnia wraz z diagnozą odbierały numer PIN i wysyłały informację o zarażeniu. Oczywiście takie użycie aplikacji nikomu nie pomoże, bo osoba podejrzewana o bycie nosicielem raczej nie ma już styczności z przypadkowymi ludźmi – siedzi na kwarantannie lub leży w szpitalu.

Jest i druga możliwość – może ktoś zainstalował sobie ProteGO Safe wcześniej, ale z jakiegoś powodu nie włączył procesu rozgłaszania?

Czy użytkownicy ProteGO Safe aktywowali Exposure Notification?

Do statystyk użycia jeszcze wrócimy, na razie przyjrzyjmy się komunikatom Ministerstwa Cyfryzacji. Na stronach aktualności oraz stronie aplikacji widzimy komunikaty:

  • Aplikacja nie wymaga od nas żadnych dodatkowych działań. Wystarczy ją pobrać, zainstalować i uruchomić, a później tak naprawdę możemy o niej zapomnieć.
  • pobierz i zapomnij
  • Pobranie i instalacja ProteGO Safe trwa 2-3 minuty. To nic nie kosztuje, a może nam bardzo pomóc.
  • Zachęć znajomych do pobrania, zainstalowania i korzystania z aplikacji.

Spójrzmy też na reklamę wideo. Nigdzie nie ma informacji, że po pierwszym włączeniu aplikacji trzeba jeszcze wyrazić zgodę na rozpoczęcie rozgłaszania przez Bluetooth. Na stronach ministerstwa brak jakiekolwiek obrazkowej instrukcji przejścia przez ekrany początkowe.

Postanowiłem sprawdzić, przez ile ekranów trzeba przejść w wersji 4.2.1 (najnowszej dostępnej), by aktywować owo rozgłaszanie. Oto rezultat z Androida, zrzuty ekranu robione przed każdym naciśnięciem klawisza ekranowego:

Na coś takiego nie byłem gotów. Aktywacja protokołu Expose Notification możliwa była po tym, gdy użytkownik przeszedł przez SZESNAŚCIE ekranów, następnie zauważył mały napis, kliknął go i wyraził zgodę na aktywację. Taki proces wygląda jak najgorszy koszmar projektanta interfejsów użytkownika i jest na dobrą sprawę gwarancją, że do osiemnastego obrazka doczołga się kilka procent użytkowników.

W tym miejscu byłem gotów wytoczyć najcięższe działa, oburzyć się, zacytować mędrców UI/UX, sięgnąć po statystyki pokazujące procent odpadnięć na kolejnych krokach ankiety, zagrzmieć o kompletnym niezrozumieniu imperatywów i innych mądrych słów, ale… na wszelki wypadek uruchomiłem aplikację na jeszcze jednym telefonie. I okazało się, że tam trzy pierwsze ekrany wyglądają o tak:

Mamy więc do czynienia z usterką, która przynajmniej na części telefonów z Androidem sprawi, że aktywacja rozgłaszania Bluetooth na samym początku zostaje pominięta i pojawi się mimochodem kilkanaście ekranów później. Łatwo zgadnąć, że wielu użytkowników, którzy aplikację “zainstalowali i zapomnieli”, nigdy nie dotrze do tego ekranu – wymaga to sporej dozy cierpliwości i dociekliwości. Na pozostałych urządzeniach też nie jest dobrze, bo środkowy ekran pojawia się tylko jeden raz, przy pierwszym uruchomieniu programu – potem nie jest pokazywany już nigdy.

Ministerstwo, mamy problem!

Dla porządku sprawdziłem jeszcze kilka urządzeń, do których miałem dostęp i poprosiłem o to samo czytelników mojego Twittera i Facebooka.

Statystyki: osobiście sprawdziłem pięć telefonów, czytelnicy jeszcze dziewięć. Tylko na JEDNYM z nich propozycja aktywacji rozgłaszania pojawiła się na drugim ekranie po uruchomieniu – był to zrootowany Nexus 5X ze stockowym oprogramowaniem Android 8.1. Oznacza to, że znakomita większość użytkowników musi pokonać 16 ekranów (lub 9, jeśli pominą test oceny ryzyka) aby MIEĆ SZANSĘ na włączenie funkcji rozgłaszania mało widocznym przyciskiem. Przypomnijmy narrację Ministerstwa Cyfryzacji: “pobierz i zapomnij”.

Wniosek: istnieje bardzo duże prawdopodobieństwo, że spora część użytkowników ProteGO Safe na systemie Android nie aktywowała funkcji rozgłaszania losowych identyfikatorów przez Bluetooth.

W typowym “biznesowym” projekcie mobilnym mielibyśmy zaimplementowane funkcje śledzenia i telemetryczne statystyki pozwalające na bieżąco wyłapać anomalie, ale w przypadku szczególnym, jakim jest ProteGO Safe, takie raportowanie nie wchodzi w grę.

Czy można było zapobiec takiej usterce? Tak. Jedna z metod to przygotowanie automatycznych testów regresji, które pozwalają upewnić się, że zmiana w jednym miejscu nie psuje czegoś gdzie indziej. Przygotowanie takich testów to oczywiście dodatkowy koszt, ale zdecydowanie warto było objąć nimi działanie przynajmniej tych kilku krytycznych ekranów ścieżki nowego użytkownika.

Czy istnieje sposób na sprawdzenie skali problemu?

Wbrew temu, jak można było zrozumieć pierwszą, kwietniową wersję dokumentu opisującego Exposure Notification (“no data will be shared by the system with public health authority apps unless […]”), “identyfikatory chorych” są przechowywane na serwerach Ministerstwa Cyfryzacji. Trudno powiedzieć, czy koncepcja Apple i Google zmieniła się podczas prac na protokołem, czy też pierwotny plan nie był przedstawiany czytelnie – ja zorientowałem się dopiero z wydaniem ProteGO Safe w wersji 4.1.

Jeśli więc sądziliście, drodzy czytelnicy, że jako pasywni użytkownicy ProteGO Safe nie zdradzacie rządowi RP faktu instalacji apki – spójrzcie w lustro i powiedzcie do siebie “nie przeczytałem polityki prywatności, paragraf 2, punkt 9; ani regulaminu, paragraf 2, punkt 15”. Tam jest wszystko napisane.

Dzięki temu jednak twórcy aplikacji mogą sprawdzić, ile aktywnych instalacji raportują sklepy Google Play i AppStore oraz z ilu różnych numerów IP przychodzą zapytania o nowe “identyfikatory chorych”. To pozwoli im oszacować, u ilu użytkowników aplikacja niczego nie nadaje, i być może jakoś zaradzić temu problemowi.

Ocena skuteczności aplikacji ProteGO Safe

Wróćmy do liczb. Liczby nie kłamią. Nie wtedy, gdy ja je prezentuję. Aplikacja w wersji 4.1, wyposażona w rozgłaszanie Bluetooth w standardzie przygotowanym przez konsorcjum Apple i Google, została wydana na obu platformach w pierwszym tygodniu czerwca. Rządowa kampania informacyjna ruszyła 9 czerwca, od tego dnia możemy więc liczyć szeroką dostępność docelowej wersji ProteGO Safe (we wcześniejszych wersjach działał jedynie moduł samooceny stanu zdrowia).

Jeśli ktoś zainstalował aplikację 9 czerwca i aktywował w niej rozgłaszanie, to w razie zakażenia koronawirusem 16 czerwca będzie mógł wysłać na serwery swoje “identyfikatory chorego” (klucze diagnostyczne, po angielsku Diagnosis Keys) z siedmiu minionych dni. Jeśli otrzyma diagnozę 23 czerwca lub później – będzie mógł wysłać klucze diagnostyczne z 14 dni.

Dane z pierwszej połowy czerwca są zaśmiecone kluczami datowanymi na końcówkę maja, prawdopodobnie są to pozostałości po testowym rozruchu części serwerowej. Przyjrzyjmy się więc okresowi od 23 czerwca do 14 lipca. Są to trzy tygodnie, podczas których ProteGO Safe działało pod pełną parą:

23 czerwcabrak nowych kluczy
24 czerwcabrak nowych kluczy
25 czerwcabrak nowych kluczy
26 czerwca3 jednodniowe klucze od 3 osób, wszystkie klucze z 25 czerwca
27 czerwcabrak nowych kluczy
28 czerwcabrak nowych kluczy
29 czerwcabrak nowych kluczy
30 czerwcabrak nowych kluczy
1 lipcabrak nowych kluczy
2 lipcabrak nowych kluczy
3 lipcabrak nowych kluczy
4 lipcabrak nowych kluczy
5 lipcabrak nowych kluczy
6 lipcabrak nowych kluczy
7 lipcabrak nowych kluczy
8 lipcabrak nowych kluczy
9 lipcabrak nowych kluczy
10 lipcazestaw 10 kluczy: od 26 do 30 czerwca oraz od 3 lipca do 9 lipca (dwie osoby? jedna wyłączająca na dłużej telefon?)
11 lipca1 klucz z 10 lipca, od 1 osoby
12 lipcabrak nowych kluczy
13 lipcabrak nowych kluczy
14 lipcazestaw 7 kluczy: od 7 do 13 lipca, jedna osoba

Podsumowanie: w czasie trzech tygodni ProteGO Safe dystrybuowało w sumie 21 kluczy wysłanych przez 6 lub 7 osób.

Chciałem w tym miejscu rzucić bonmocik, że więcej osób wygrało w tym czasie milion w Lotto, ale to by była nieprawda, bo totolotkowych milionerów przybyło wówczas raptem czworo.

Żarty na bok, utrwalmy sobie fakty

Fakt 1: system kosztujący miliony złotych – o tym za chwilę – uzyskał po okresie rozruchu sprawność zbierania i rozsyłania informacji o kontaktach społecznych JEDNEJ zarażonej osoby dziennie. Średnio, bo wartość ta wahała się od zera do trzech osób.

Fakt 2: masz szansę 1 na 38 milionów, że spotkasz osobę która używa ProteGO Safe, jest zainfekowana koronawirusem, dowie się o tym w ciągu najbliższych dwóch tygodni i wyśle na serwer zestaw swoich kluczy dziennych uwzględniających wasze spotkanie (masz też szansę 1 na 14 milionów, że trafisz szóstkę w Lotto).

Fakt 3: aplikację zainstalowało do tej pory około 250 tysięcy użytkowników (zakładam, że dostałem informację o aktywnych instalacjach). W Polsce żyje ponad 38 milionów ludzi, czyli aplikacja osiągnęła penetrację rzędu 0,66%. Dziennie w Polsce koronawirusa diagnozuje się u około 280 osób, łącznie 5000 osób podczas omawianych trzech tygodni. Spośród tych 5000 osób jakieś 33 osoby mają ProteGO Safe, ale tylko 6-7 z nich wyśle swoje klucze.

Jeśli to nie jest dowodem, że aplikacja się nie sprawdziła, to ja nie wiem, co jest.

Krótka piłka – czas przestać wydawać pieniądze na ProteGO Safe. To nie jest tak, że ułożymy dłonie w serduszko i wyszepczemy, że jeśli uratowaliśmy choć jedno życie to było warto. Zarządzający ochroną zdrowia na poziomie krajowym muszą robić co innego – brać pod uwagę koszt alternatywny. Czy warto dziś wydać milion złotych na promocję, by podwoić lub potroić penetrację aplikacji ProteGO Safe? A może społeczeństwu bardziej przydadzą się dwa łóżka na OIOM-ie albo specjalistyczna karetka dla noworodków albo rok pracy ośmiu lekarzy specjalistów albo 30 operacji serca albo wiele innych rzeczy, które można mieć za milion złotych?

Dla mnie odpowiedź jest jasna – zatrzymujemy inwestycję, anulujemy planowane reklamy prasowe i telewizyjne, wstrzymujemy prace nad tak bezsensownymi wynalazkami jak transgraniczna wymiana kluczy Exposure Notification i wprowadzamy projekt w stan hibernacji. Nie trzeba usuwać aplikacji ze sklepu, będzie z wolna popadać w zapomnienie, jak miliony innych.

Koszty produkcji ProteGO Safe

Ustawa o dostępie do informacji publicznej zadziałała po raz kolejny – z Ministerstwa Cyfryzacji otrzymałem następujące umowy i aneksy:

  • umowa nr 7/DRU/2020 o produkcję aplikacji ProteGO Safe z modułem samodiagnozy stanu zdrowia – 123.000 złotych brutto
  • umowa nr 12/DRU/2020 o produkcję modułów do śledzenia kontaktów protokołem OpenTrace, modułu do nieszczęsnych QR-kodów, modułu dla operatorów Centrum Kontaktu, testowanie jakości, testy penetracyjne, przygotowanie elementów komunikacji wizualnej itp. – 2.317.320 zł brutto
  • aneks do umowy 12/DRU/2020 – wylatują QR-kody, wylatuje OpenTrace, pełna przesiadka na Exposure Notification – cena bez zmian
  • aneks którego nie mam bo był później – osadzenie modułu wykonawczego PWA wewnątrz aplikacji zgodnie z tezami mojego artykułu (przekaz wzmocniony przez szerzej czytanych), retesty itp. – dodatkowe 110.700 zł

W sumie ponad dwa i pół miliona złotych. Czy jestem oburzony? Czy wkurza mnie, że kosztorys zawiera takie pozycje jak “stworzenie diagramu przepływu danych w module Open Trace; dostawa w pliku formatu JPG; wycena 20.000 zł +VAT”?

Nie jestem i nie wkurza.

Po pierwsze: tworzenie oprogramowania na zamówienie jest bardzo kosztowne. Pisałem o tym w artykule o kosztach produkcji Kwarantanny Domowej (tak, tam byłem oburzony).

Po drugie: w projekcie programistycznym nie da się tak planować prac, jak np. przy budowie mostu. Mógłbym napisać obszerną blogonotkę, dlaczego tak się dzieje i dlaczego jest to nieuniknione więc dziś pohamuję szarpiącą się dygresję. Jeśli ktoś chciałby o tym przeczytać – zapraszam do napisania komcia. Tak po prostu jest a ta cytowana pozycja kosztorysu była pewnie pojemnikiem na inne pokrewne rzeczy, których nie warto było na przyjętym poziomie szczegółowości wymieniać i wyceniać.

Po trzecie: aplikacja do śledzenia kontaktów jest bytem, który jeszcze kilka miesięcy temu nie istniał. Nie było nikogo, komu można byłoby zlecić produkcję ProteGO Safe wiedząc, że zrobił już ileś podobnych aplikacji więc sobie poradzi. Projekt był więc z definicji skazany na eksperymenty i ładowanie się w ślepe uliczki – z powodu nagłych zwrotów akcji w obszarze technologii (OpenTrace kontra Exposure Notification), polityki (QR-kody) i pewnego nieogarnięcia przez autorów kwestii prywatności (PWA).

Po czwarte: jako publiczność widzimy aplikację mobilną na dwie platformy, nie widzimy natomiast pracy włożonej w implementację części serwerowej i wdrożenia oprogramowania dla operatorów Centrum Kontaktu (oraz wdrożenia w temat samych operatorów).

Podsumowując – kwestionuję wartość i użyteczność aplikacji ProteGO Safe; nie oburza mnie koszt jej dotychczasowej produkcji; postuluję jednak natychmiastowe wstrzymanie dalszego inwestowania w rozwój i promocję tego produktu.

Czy ten wydatek miał sens?

Minęło raptem kilka miesięcy a już zacierają się wspomnienia tego, jak żyliśmy i co myśleliśmy w marcu i kwietniu Anno Domini 2020. Największy wpływ na nastroje miało zamknięcie szkół 12 marca, niecałe dwa tygodnie później obowiązywały już ograniczenia w przemieszczaniu się, zamknięto restauracje, kina, potem także parki i lasy.

Ponieważ przez długie lata odpowiedzią na niemal każde wyzwanie była dedykowana aplikacja, na całym świecie zaczęło się intensywne zmóżdżanie, jak w walce z COVID-19 może pomóc nowoczesna technologia. Liczne hackatony zaowocowały eksplozją aplikacji mobilnych i webowych, w znakomitej większości należących do dwóch kategorii – samooceny stanu zdrowia lub śledzenia kontaktów społecznych.

Pierwszą i najgłośniejszą aplikacją tego typu był singapurski TraceTogether, wydany już 20-go marca. Wielka metropolia na małej wyspie, skrajnie wysoka gęstość zaludnienia, rekordowo duża popularność aplikacji. Niemal wszystko sprzyjało sukcesowi, z wyjątkiem… telefonów komórkowych, które zbyt często przechodzą w stan uśpienia.

Robimy teraz przeskok do czerwca – Singapur publikuje swój produkt jako Open Source, niektóre rządy (w tym polski) już wtedy inwestują w aplikacje do śledzenia kontaktów. Dzień później Google i Apple zapowiadają powstanie nowego protokołu śledzenia interakcji społecznych, niewrażliwiego na ograniczenia dotykające TraceToghether. Odbija się to szerokim echem także poza branżą IT. Rządy kolejnych krajów deklarują tworzenie własnych aplikacji, aby nie zostać w tyle.

Tutaj jest moment, w którym należało się zatrzymać i powiedzieć: “przeprowadźmy eksperyment, czy to może zadziałać; weźmy kilkadziesiąt telefonów ze średniej półki bo i tak je kupujemy do ministerstwa więc się nie zmarnują, zróbmy w tydzień na brudno i na szybko eksperymentalne oprogramowanie, zaaranżujmy typowe scenki w typowych wnętrzach i zobaczmy, czy Bluetooth rzeczywiście wykryje kontakt z drugim urządzeniem; poprośmy matematyków o określenie potencjalnych korzyści przy różnej penetracji rynku; poprośmy marketingowców specjalizujących się w mobilkach by oszacowali możliwy do osiągnięcia udział” i tak dalej, i tak dalej. To by było fajnie, gdyby rządy prowadziły politykę opartą na wiedzy, prawda? Mam dla was ćwiczenie – powiedzcie na głos zdanie “politycy szanują zdanie naukowców i inżynierów”.

Przestaliście się już śmiać? Idźmy dalej. Polityk działa inaczej, on sobie myśli “jeśli ja nie zlecę produkcji aplikacji a to jednak gdzie indziej zadziała, to będzie ambaras a ja osobiście wpadnę w opały” (domniemany dobór słów). Im większy ogień pod czterema literami tym chętniej wydawane są pieniądze – np. Niemcy wywalili na swoją aplikację ponad 20 milionów Euro a na jej utrzymanie gotowi są wydać do 2022 roku drugie tyle. Kto bogatemu zabroni, na tym tle budżet ProteGO Safe może wręcz uchodzić za ascetyczny.

Choć interesowałem się tematem aplikacji “koronawirusowych”, nigdzie nie znalazłem informacji o eksperymentach mierzących skuteczność śledzenia kontaktów z udziałem aktorów. Autorzy TraceTogether przeprowadzili statyczne testy (pisałem o nich tutaj) z których wynika, że nie jest dobrze i bez Exposure Notification lepiej nie będzie. Naukowcy z Trinity College w Dublinie pokazali z kolei, że z EN też nie będzie za dobrze, bo zmiany w przestrzennej orientacji dwóch smartfonów nawet w idealnych warunkach testowych skutkują znaczącymi różnicami siły odbieranego sygnału. Szacowana odległość telefonów może być przez to zawyżona i niebezpieczny kontakt, choć zarejestrowany, nie będzie skutkował powiadomieniem użytkownika o ryzyku zarażenia. Zwróćmy uwagę, że Google i Apple nie reklamowały swojego rozwiązania jako coś, co będzie działać dobrze, lecz jako coś, co zagwarantuje użytkownikom przyzwoity poziom anonimowości. Motywacje osób kierujących wielkimi korporacjami pozostają nieznane.

Czy więc było warto? Trudno robić rządowi zarzuty, że prace zostały podjęte, ale czas by Ministerstwo Zdrowia oceniło stosunek korzyści do kosztów i podjęło bazującą na faktach, publicznie uzasadnioną decyzję. Czy tak się stanie? Spytajmy doradców ministra Szumowskiego, smutna_panda.jpg

A jak radzą sobie zagraniczne odpowiedniki ProteGO Safe?

Najpierw zastrzeżenie – porównanie skuteczności aplikacji między różnymi krajami nie jest łatwe. Po pierwsze: liczba osób mogących w danym kraju wysłać na serwer swoje klucze będzie zawsze równa lub mniejsza od liczby osób zdiagnozowanych pozytywnie. W Polsce są to setki ludzi dziennie ale w takiej Estonii to raptem jedna lub dwie osoby. Po drugie: liczba mieszkańców też się różni, co utrudnia porównania. Zaradzimy temu biorąc średnią liczbę kluczy aktywnych w dniach od 1 do 14 lipca (czyli ostrzegających o kontakcie z zarażonymi w lipcu) i przyrównując tę wartość do 10 milionów mieszkańców danego państwa.

Spójrzmy na wykres z 15 lipca publikowany przez Financial Times. Widzimy na nim liczbę nowych przypadków koronawirusa w przeliczeniu na milion mieszkańców w następujących krajach: Polska (7.7), Dania (4.3), Niemcy (4.1), Irlandia (3.9), Włochy (3.3), Łotwa (3.3). Dane potwierdzają, że porównujemy państwa zmagające się z podobną skalą problemu.

źródło: Financial Times
Wykres z 15 lipca, na wykresie średnia krocząca z minionych 7 dni. Uwaga na skalę logarytmiczną, odległość na osi Y między 10 a 20 jest taka, jak między 100 a 200

Informacje o liczbie kluczy w aplikacjach Exposure Notification z poszczególnych krajów pobrałem ze strony internetowej grupy roboczej cytowanych już dublińskich naukowców, dla Niemiec poprawne dane pobrane stąd

Oto metryki skuteczności poszczególnych aplikacji

Polska – 0.26 klucza na 10 mln osób (1 klucz dziennie, 38 milionów mieszkańców)
Włochy – 0.43 klucza na 10 mln osób (2.6 klucza dziennie, 60 milionów mieszkańców)
Łotwa – 6 kluczy na 10 mln osób (1.2 klucza dziennie, 2 miliony mieszkańców)
Niemcy – 11 kluczy na 10 mln osób (92 klucze dziennie, 83 miliony mieszkańców)
Dania – 17 kluczy na 10 mln osób (10 kluczy dziennie, 5.8 miliona mieszkańców)
Irlandia – 24 klucze na 10 mln osób (11 kluczy dziennie, 4.7 miliona mieszkańców)

Metrykę dla Irlandii obliczono na bazie 9 dni, dla Łotwy – 11 dni, reszta krajów – 14 dni lipca

Nie jest jakoś super, prawda? A przynajmniej nie słyszy się, aby ktoś gdzieś był zadowolony ze śledzenia kontaktów społecznych przy użyciu aplikacji. Rzućmy okiem na dane z Niemiec, które przodują w bezwzględnych wartościach aktywnych kluczy (średnio 92 aktywne klucze dziennie). Z całą pewnością wrażenie robi tempo pobierania aplikacji, która w ciągu miesiąca osiągnęła penetrację niemal 20%. Teraz wylosujmy dwóch Niemców – szansa, że obaj mają zainstalowaną aplikację a ich kontakt zostanie zarejestrowany, wynosi już tylko 4%. Matematycy twierdzą, że pierwsze wymierne korzyści z aplikacji dałoby się spostrzec, gdyby używało jej 60% społeczeństwa.

autor Michael Böhme, https://micb25.github.io/dka/
liczba pobrań aplikacji Corona-Warn-App w milionach

Duża liczba aktywnych instalacji w Niemczech sprawia, że codziennie kilkanaście-kilkadziesiąt osób po otrzymaniu informacji o zarażeniu wysyła swoje klucze

autor Jan Pfister, https://ctt.pfstr.de/
Szacowana liczba osób wysyłających swoje klucze po otrzymaniu diagnozy

Podobnie, jak w Polsce, tylko jeden na czterech domniemanych zarażonych użytkowników aplikacji Corona Warn-App decyduje się na wysyłkę swoich kluczy (20% penetracji apki kontra 5% zarażonych wysyłających dane na serwer)

autor Michael Böhme, https://micb25.github.io/dka/
procent zarażonych wysyłający swoje klucze na serwere Corona Warn-App

Czy na świecie mamy w ogóle jakieś przykłady sukcesu aplikacji do śledzenia kontaktów?

Problem w tym, że nie bardzo. Oto stronniczy przegląd prasy złożony z tekstów, na które wpadłem zbierając przez miesiąc informacje do niniejszego tekstu:

11 maja – MIT Technology Review – mimo instalacji przez 40% populacji, islandzka aplikacja przydała się “jedynie w kilku przypadkach

15 maja – Dagbladet – mimo 700 tysięcy użytkowników, norweska aplikacja nie wskazała ani jednej osoby zarażonej

24 maja – The Guardian – sześć milionów Australijczyków zainstalowało aplikację, ta wskazała jednego nosiciela

15 czerwca – ZDNet – Norweski inspektor ochrony danych osobowych nakazuje wstrzymanie eksploatacji norweskiej aplikacji do śledzenia kontaktów z powodu zbyt dużej ilości danych gromadzonych centralnie bez wystarczającego uzasadnienia

23 czerwca – Techcrunch – francuską aplikację zainstalowało 1.800.000 ludzi, ale wysłała tylko 14 ostrzeżeń

ProteGO Safe to pierwsza poważna aplikacja na otwartej licencji wydana przez polski rząd!

Na koniec fakt, który nie był do tej pory odpowiednio eksponowany – ProteGO Safe to oprogramowanie wydane na otwartej licencji GNU GPL 3.

Jest to model tworzenia i dystrybucji oprogramowania, w którym nie tylko wszyscy mają zagwarantowany dostęp do kodu źródłowego, ale każdy zainteresowany ma prawo do uruchamiania programu, analizowania jak działa, rozpowszechniania kopii oraz dystrybuowania własnych zmian (obowiązkowo pod tą samą licencją). Do najbardziej znanych projektów korzystających z licencji GNU GPL należą: jądro systemu Linux, repozytorium kodu Git, baza danych MySQL czy internetowy system publikacji WordPress.

W przeciwieństwie do wielu krajów, w Polsce nie ma tradycji otwierania źródeł oprogramowania tworzonego za pieniądze publiczne. W przeszłości było jeszcze gorzej – kilkanaście lat temu specyfikację formatu danych wymienianych przez Program Płatnika trzeba było wyrywać z ZUS-u przy pomocy sądu administracyjnego. Dziś dokumentacja tego rodzaju jest jawna zaś lista usług online pozwalających na integrację z własnymi rozwiązaniami systematycznie rośnie.

Aplikacja gromadząca informacje, gdzie i kiedy byliśmy oraz z kim się spotkaliśmy, budzi zrozumiałe obawy, bo przy jej użyciu władze mogłyby popełniać daleko idące nadużycia. Otwarta specyfikacja i dostęp do źródeł redukują przynajmniej część obaw. Choć zwykły użytkownik nie przeprowadzi samodzielnie audytu bezpieczeństwa oprogramowania, to możliwość taką mają organizacje pozarządowe i niezależni specjaliści (jak Wasz uniżony autor). Tym samym więc potencjalni użytkownicy mogą podjąć decyzję w oparciu o wiele źródeł informacji.

Trzeba zauważyć, że dla strony rządowej względnie otwarty model rozwoju aplikacji był trudną lekcją pokory. Dotąd Ministerstwo Cyfryzacji zamawiało oprogramowanie, przedstawiało specyfikację a później odbierało dostarczony projekt – kontrolując cały proces od początku do końca. Podczas prac nad ProteGO Safe okazało się, że społeczność patrzy na ręce i protestuje przeciwko np. obowiązkowemu podawaniu w aplikacji numeru telefonu.

Na dalszych etapach też nie zabrakło kiksów. Plan użycia QR-kodów i preferencji dla posiadaczy apki sprawił, w ciągu kilku godzin media wytoczyły ciężkie działa i rozpoczęły ostrzał. Ministerstwo wycofało się na upatrzone pozycje udając, że nikt nigdy nie planował żadnych QR-kodów. Aha, aha. Zajrzyjcie sobie do umowy nr 12/DRU/2020, strona 35-38, rozdział 2.3 „Etap 3 – wersja aplikacji 3.1 kody QR”. Nieporozumienia powstały też na tle tego, czy moduł wykonawczy ProteGO Safe może być pobierany z sieci – tu także Ministerstwo musiało nagiąć się do opinii ekspertów i zlecić implementację odpowiednich zmian. Po premierze apki odpalono żenującą kampanię, w której konta botów wychwalały w social mediach zalety aplikacji i deklarowały jej natychmiastową instalację.

W wyraźnie niekomfortowej sytuacji znaleźli się programiści realizujący ProteGO Safe czyli – z ich punktu widzenia – kolejne komercyjne zlecenie tworzone według dostarczonej specyfikacji. W dyskusjach na GitHubie (repozytorium kodu i dokumentacji projektu) siłą rzeczy występowali jako reprezentanci zleceniodawcy, choć nie do nich zależało podejmowanie decyzji mających często zabarwienie polityczne. Repozytorium zostało zalane opiniami, dyskutanci spierali się o pryncypia i w wielu przypadkach oczekiwali od wykonawców aplikacji rzeczy niemożliwych (np. z powodu właściwości protokołu Exposure Notification) albo pozbawionych sensu (jak porzucenie części serwerowej i przejście na rozproszony sieciowy system plików). Sytuacja poprawiła się z upływem czasu – najaktywniejszym dyskutantom zeszło ciśnienie a twórcy nabrali dystansu do komentarzy światopoglądowych. Z całą pewnością jednak zabrakło w dyskusjach choć jednej osoby reprezentującej wprost Ministerstwo Cyfryzacji i uzasadniającej podjęte decyzje.

Wszystkie te problemy wiązały się raczej z kontrowersyjną tematyką aplikacji niż modelem jej tworzenia i licencjonowania. Byłoby niedobrze, gdyby pracownicy Ministerstwa Cyfryzacji zapamiętali sobie skojarzenie “otwarte źródła = awantury”. W przypadku ProteGO Safe właściwe jest raczej skojarzenie “otwarte źródła = kilka spornych kwestii dzięki nim w ogóle nie zaistniało”.

Podsumowanie

Od moich pierwszych tekstów o ProteGO Safe i śledzeniu kontaktów przy użyciu telefonów komórkowych minęły ponad trzy miesiące. Produkcyjna wersja aplikacji jest w sklepach od pięciu tygodni, możemy więc pokusić się o ocenę realizacji siedmiu filarów zaufania opisanych przez Fundację Panoptykon:

  1. Minimalizacja i poprawność danych – spełniona dzięki prawidłowym decyzjom MC
  2. Ograniczenie czasu przechowywania danych – spełnione dzięki protokołowi Exposure Notification, który przechowuje dane o kluczach jedynie przez 14 dni
  3. Dane przechowywane na urządzeniu obywatela – spełnione
  4. Bezpieczeństwo, szyfrowanie i anonimizacja danych – spełnione
  5. Czytelna informacja dla obywateli – spełnione, choć pierwsza reklama wideo była nieco zbyt poetycka, druga jest lepsza
  6. Otwartość kodu i przejrzystość algorytmów – finalnie spełnione na poziomie krajowym (rzutem na taśmę, wersja z PWA moim zdaniem nie spełniałaby kryteriów); Google i Apple trzymają swoje kawałki Exposure Notification w sekrecie [dodano 23.07.2020 – Google i Apple opublikowały swoje źródła tutaj i tutaj]
  7. Publiczna kontrola nad narzędziami – spełnione w zakresie formalnym (DPIA i inne dokumenty tutaj), nie opublikowano jeszcze wniosków z zewnętrznych testów bezpieczeństwa [dodano 23.07.2020 – raport z zewnętrznych testów bezpieczeństwa jest już dostępny]

Koniec końców aplikacja ProteGO Safe spełniła oczekiwania stawiane przez obrońców prywatności. Zabrakło jednak zaufania społecznego i wiary w skuteczność instytucji państwowych – pisze o tym Sylwia Czubkowska w świetnym artykule na Spider’sWeb+.

Bądźmy szczerzy – gdy dowiadywaliśmy się o chaosie w instytucjach odpowiedzialnych za walkę z koronawirusem a na jaw wychodziły i wychodzą kolejne nadużycia w zakupie środków ochronnych od zaprzyjaźnionych instruktorów narciarstwa i sprzętu medycznego od przechodzącego akurat z tragarzami handlarza bronią, to ciężko uwierzyć, że w przypadku powiązanej tematycznie aplikacji mobilnej wszystko zostało zrobione jak należy.

Statystyki zachorowań w różnych krajach oraz wskazane wyżej metryki skuteczności różnych aplikacji pokazują, że nie ma związku między jednym a drugim. A może używanie ProteGO Safe – produktu bądź co bądź profilaktycznego! – czyni użytkownika bardziej beztroskim i lekkomyślnym? Wówczas większa popularność aplikacji miałaby skutek odwrotny do zamierzonego.

Tego się jednak nie dowiemy.

Aplikacja ProteGO Safe nie działa i najbardziej racjonalną decyzją będzie natychmiastowe zatrzymanie prac nad nią.


Dodatek

Kilka linków, do których warto zajrzeć

Jarek Potiuk u Artura Kurasińskiego po raz pierwszy i po raz drugi

Adrian Brzeziński i Szymon Teżewski rozkminiają brzegowe przypadki zachowania EN

Adrian Brzeziński o deanonimizacji użytkowników aplikacji korzystających z EN

New York Times o tym, jak nie organizować ręcznego śledzenia kontaktów na przykładzie Wielkiej Brytanii

Opis singapurskiego urządzenia Trace Together Token do śledzenia kontaktów, które ma zastąpić aplikację na telefony:

Inne teksty związane z epidemią koronawirusa

[13.03.2020] o projekcie „Stop the pandemic” i tym, że jego autorzy prosili o znacznie więcej danych niż powinni
[20.03.2020] w którym zaglądam do środka aplikacji „Kwarantanna Domowa” i opisuję, co znalazłem w środku
[29.03.2020] w którym opisuję dlaczego smartfony nie bardzo nadają się do śledzenia interakcji między ludźmi
[03.04.2020] w którym piszę o zapowiadanej przez Ministerstwo Cyfryzacji apce „ProteGO” i o tym, że nie zadziała ona zgodnie z oczekiwaniami
[21.04.2020] w którym piszę o protokole Contact Tracing autorstwa Apple+Google i projekcie OpenTrace
[26.04.2020] w którym opowiadam, jak można sprawdzić, co robi aplikacja mobilna i dlaczego otwarte źródła to nie wszystko
[29.04.2020] w którym mając umowę szacuję koszty napisania od zera aplikacji Kwarantanna Domowa
[09.05.2020] w którym pokazuję, jak sprawdzić zawartość komunikatów wysyłanych w eter przez ProteGO Safe
[04.06.2020] w którym opisuję kontrowersyjną architekturę aplikacji ProteGO Safe 4.1.0-rc.1
[16.07.2020] w którym pokazuję, że aplikacja ProteGO nie działa
[31.08.2020] w którym podaję statystyki ProteGO Safe u progu nowego roku szkolnego
[27.10.2020] w którym podaję statystyki STOP COVID (dawniej ProteGo Safe) przed Wszystkich Świętych
[05.11.2020] w którym opisuję, co będzie, jeśli apka STOP COVID (dawniej ProteGo Safe) stanie się obowiązkowa


Drogi czytelniku/czytelniczko – mam prośbę. Jeśli podobał Ci się niniejszy artykuł, prześlij go kilku innym osobom którym też może się spodobać. Przygotowanie tekstów o takiej długości i różnorodności trwa wiele godzin rozłożonych na wiele wieczorów, więc nie pojawiają się one jakoś strasznie często. Mam jednak nadzieję, że – podobnie jak ja – lubisz długie teksty pełne odnośników do różnych zasobów dodatkowych. Daj znać w komentarzu, jeśli udało ci się dotrzeć aż tu.

Dla chętnych jest też Twitter, Facebook i Linkedin, gdzie anonsuję każdy kolejny artykuł i czasem dorzucam dodatkowe informacje czy linki, w zamian przyjmując skromne ilości lajków. Poniżej możesz zapisać się na newsletter, tam NIE daję znać o nowych tekstach. Dostaniesz jednego maila na wiele tygodni ale o tym, o czym koniecznie będę chciał poinformować. Na razie!



O autorze: zawodowy programista od 2003 roku, pasjonat bezpieczeństwa informatycznego. Rozwijał systemy finansowe dla NBP, tworzył i weryfikował zabezpieczenia bankowych aplikacji mobilnych, brał udział w pracach nad grą Angry Birds i wyszukiwarką internetową Microsoft Bing.

51 odpowiedzi na “Aplikacja ProteGO Safe nie działa. Czas zatrzymać tę inwestycję.”

Zła władza i tak śledzi lokalizację wszystkich obywateli poprzez namierzanie zalogowanych do sieci telefonów (którzy nie wyłączą telefonu). Co gorsza dane te są utrwalane na nie wiadomo ile czasu do późniejszej analizy zautomatyzowanej.
Dlatego wywaliłam Google z telefonu (system /e/ ) i wychodząc telefon wyłączam lub zostawiam go w domu.

Hahahaha,
Kartę debetową też zostawiasz czy zawsze płacisz gotówką? Bo też karty namierzają pamiętaj. Albo jak wypłacasz pieniądze to wypłacaj z bankomatu o 20km dalej bo tam też mogą Cie namierzyć, nie zapominaj że jest kamerka w bankomatach, no i że chodząc po ulicy miasto jest monitorowane, to musisz założyć duży kapelusz.

Dzięki za tekst, jeśli można by to byłbym ciekawy o różnicach w planowaniu w projekcie programistycznym a budową przysłowiowego mostu (czy innej inwestycji o podobnym rozmachu). I jedno i drugie to całkiem nie moja dziedzina.

Nie mogłem się tego doszukać – skąd zdobył Pan dane o wysłanych kluczach? Nasłuchiwał Pan protokół czy one są gdzieś publiczne dostępne poprzez API?

A ja mam pytanie o sam BT. Każdy ogarnięty użytkownik smartfona wie, żeby BT wyłączać, gdy się go nie używa, czyli nie jest się połączonym z innym potrzebnym urządzeniem (słuchawką, komputerem rowerowym itp.), bo jest to protokół dziurawy i niebezpieczny, a w dodatku pobiera energię z aku. Czy ProteGO włącza go na jakiejś innej warstwie systemu, żeby nie dało się go wyłączyć? Czy włączenie tego BT następuje właśnie na tym 16. ekranie i potem autor aplikacji ufa, że użytkownik po prostu nie wyłączy BT w ustawieniach telefonu?

Nie wiem, czy to dobra odpowiedź, ale po wyłączeniu Bluetooth dostaję systemowe powiadomienie o wyłączonych powiadomieniach o ryzyku ekspozycji.

BLE nie żre baterii, to jakaś bujda na resorach, chyba, że używasz telefonu z przed 10 lat. Bezpieczeństwo zaś zawsze opiera się o świadomość użytkownika.

Do działania potrzebny jest włączony BT oraz usługi lokalizacyjne. Jak wyłączysz jedno z dwojga to telefon przestaje rozsyłać powiadomienia.

Wspaniały artykuł, bardzo dziękuję. Od początku pomysłu z apliacjami tego typu zastanawiałem się czemu to wszystko jest tak mało globalne. W idealnym świecie wszyscy powinniśmy używać jednej i tej samej aplikacji, albo najwyżej kilku (jednej dla Unii Europejskiej, jednej dla Azji, Ameryki itp) bo granice dla Koronawirusa nie istnieją, a gdy odwiedzasz inny kraj tego typu aplikacje są bezużyteczne. W dodatku takie ProteGo to trochę odkrywanie koła na nowo za pieniądze podatnika.

Zgłaszam chęć przeczytania dlaczego w projekcie programistycznym nie da się tak planować prac jak przy budowie mostu 🙂

„Mógłbym napisać obszerną blogonotkę, dlaczego tak się dzieje i dlaczego jest to nieuniknione więc dziś pohamuję szarpiącą się dygresję. Jeśli ktoś chciałby o tym przeczytać – zapraszam do napisania komcia.”

Oto „komć” 😂

Zapomniałeś, że zadaniem aplikacji jest szpiegowanie użytkowników a nie ostrzeganie o ryzyku zarażenia koronawirusem.

Mam nadzieję, że rząd wyciągnie wnioski. Ale swoją drogą nawet jeśli aplikacja nie działa to jest to dobry przykład, że model zlecania aplikacji OpenSource może działać dobrze, chociaż nie jest w stanie uchronić aplikacji przed wadliwymi założeniami. Musiano by wprowadzić obowiązek użytkowania aplikacji, żeby miała jakąś skuteczność.

Obowiązek nic by nie dał bo aplikacja nie jest dostępna na telefony Huawei ani nie działa na zrootowanych.

Rząd przywołany w Twoim pierwszym zdaniu wyciągnie wnioski ze zdania ostatniego….

Super robota. Dziękuję.
Do artykułu p. Czubkowskiej się zabieram…
Czy teraz, jak z MC odeszli Kawecki i Okoński, to ktoś poza Buk (i może Koślą) jest tam ogarnięty i z siła przebicia? Kto przeczyta ten artykuł, zrozumie, i wyciągnie wtyczkę?
A zresztą, przecież sam autor już napisał, że to decyzja polityczna, a nie merytoryczna ;-(
PS biedne przecinki, i autor artykułu i autor(rzy) aplikacji traktują je per noga

Alfiku! Autora się czepiasz, a sam zapomniałeś, iż według wytycznych PWN przed każdym zastosowanym przez Ciebie „i” w P.S.-ie takowy być powinien.
Pozdrowienia.

Ja wciąż żyję i obserwuję ten śmietnik na GitHubie 🙂

> Bezpieczeństwo, szyfrowanie i anonimizacja danych – spełnione

Niespełnione, bowiem wiemy, że są jakieś bugi, których nie opublikowano. Nie ma ANI JEDNEGO raportu z audytu bezpieczeństwa. Nie przeprowadzono ani jednego audytu prywatności. Bluetooth wciąż jest dziurawy i niepołatany a musi być włączony by osiągnąć „sukces”.

Umów jeszcze nie przeczytałam – ale postaram się zrobić to w ciągu 30 dni. Teraz się nie pali bo ta „epidemia” to bardziej wygląda jak fałszywie dodatnie testy niż faktyczna zaraza. Wybory nie spowodowały wzrostu zakażeń. Zaiste dziwne. Strajki Obrońców Dobrowolnych Szczepień – COVID-1984 również nie – jeszcze dziwniejsze, bo skupisko ludzi ogromne i długoczasowe.

Sprawdzenie spełnienia 7 filarów zaufania – do powtórki – powtórka wykaże dlaczego ludzie nie ufają (prócz kłamstw MC z przeszłości tego projektu i siostrzanej Kwarantanny Domowej) – warto prócz tytułów przeczytać treść tych 7 filarów i tak:

2 – nie wiemy ile czasu Google i Apple przechowują dane i nie jesteśmy w stanie tego sprawdzić – zamknięty kod Exposure Notification (dalej: EN) – nie wiemy i się nie dowiemy a na słowo nie wierzymy.

3 – niespełnione w wersji Web – zapytania jeszcze kilka dni temu (nie sprawdzam często) – leciały na serwer jako „diagnosis”. Część ludzi sprawdzi wersję Web bo ją jest prościej sprawdzić niż natywną aplikację na androida. Wciąż gdzieś w polityce prywatności mamy jakieś linki prezentowane użytkownikom i jakieś UUID do badania skuteczności aplikacji – statystyki. Dla mnie to oznacza nie tylko niespełniony, ale BAN.

4 – NAJWYŻSZE STANDARDY BEZPIECZEŃSTWA – wrzucona wersja 4.2 z ukrytymi bugami i brak ujawnionego raportu nie służą temu – niespełnione NAJWYŻSZE standardy.

5 – znów czepię się UUID i linków które aplikacja może prezentować. Może to być nieczytelne, gdy użytkownik nagle wyląduje na innej stronie a tam może być ankieta lub cokolwiek innego. Co z ciasteczkami i technologiami śledzącymi takich obcych stron?

6 – otwartośc algorytmów – algorytm zasadniczy, czyli EN jest zamknięty – niespełnione, BAN.

7 – brak audytu bezpieczeństwa i brak audytu prywatności. Nie zostało zweryfikowane, toteż niespełnione i brak zaufania. „W przypadku rozwiązań, których kod jest niedostępny do publicznej analizy, to państwo musi wykazać, że standardy bezpieczeństwa danych i ochrony prywatności są spełnione.” – życzę powoidzenia w wykazaniu tego odnośnie EN.
„W sytuacji, gdy takie rozwiązanie ma być wykorzystywane do zbierania danych osobowych obywateli, organ administracji musi mieć też pełną kontrolę nad systemem” – spełnienie wątpliwe jako, że Android jest znany z poyskiwania dużej ilości danych użytkownika.

Jest lepiej niż było, gdy się pierwszy raz zainteresowałam tematem, ale do ogłaszania sukcesu jest niezmiernie daleko, szczególnie, gdy EN nie przestanie być tajemnicą Google, ale jak pokazały przeprowadzone przez „ardb” i innych analizy – to co google pisze na temat EN a to co robi, nie jest z sobą zgodne.

Świetny artykuł, przeczytałam z zapartym tchem! Już dawno nie widziałam w polskim necie tak ciekawej narracji, rzetelnie udokumentowanej, z własnymi badaniami, na dodatek klarownej i zrozumiałej dla laika.

Co do konkluzji: no cóż, liczby opowiadają jedną historię, ale ja opowiem inną.

Po pierwsze Covid19 to niezwykły eksperyment na ludzkości i trudność w oszacowaniu prawdopodobieństwa przebiegu zdarzeń nie dotyczy tylko programistów. Sugerujesz, że rząd mógłby poprosić ”marketingowców specjalizujących się w mobilkach by oszacowali możliwy do osiągnięcia udział”. Hm, oszacowanie udziału tak nowatorskiej aplikacji przypominałoby bardziej wróżenie z kuli. Zresztą najpopularniejsze polskie aplikacje komercyjne mają po kilka/naście milionów pobrań (niewystarczająca penetracja), na dodatek ich launch nie przebiegał w atmosferze skandalu, niechęci do inicjatyw rządowych oraz podejrzeń o inwigilację. Nie wspominając już o wzbierającej fali opinii kwestionujących istnienie samej epidemii;)

Po drugie: otwierając ten projekt Ministerstwo Cyfryzacji zamówiło sobie jednostkę badań i rozwoju, która pracuje na oczach publiczności prawie tak jak kucharze przygotowujący pizzę na oczach wygłodniałych klientów. Moim zdaniem (długotrwałe) efekty tej ekspozycji przewyższają koszty. Co do Twojego przelicznika: akurat łóżek szpitalnych mamy w Polsce dostatek, w przeliczeniu na milion mieszkańców jest ich dużo więcej niż np. w bogatej Szwecji, a w wydatkach na badania i rozwój ciągniemy się w ogonie.

Po trzecie: wirus jest ciągle z nami, a prawdopodobnie pojawią się następne. Poczucie bezpieczeństwa to jest towar, którego notowania rosną, tak jak usług, które będą takie bezpieczeństwo zapewniać. Kilka lat temu oglądałam dokument z koreańskiego miast Songdo, którego głównym założeniem jest funkcjonalność i bezpieczeństwo. Każdy mieszkaniec ma tam dostęp do Internetu. Systemy monitoringu pozwalają obserwować mieszkańców na ulicach i w parkach, bo prywatność jest tu mniej istotna niż bezpieczeństwo. Nie ma tu praktycznie zbrodni ani wypadków. Łatwo też zapanować nad epidemią.

Podsumowując: ten wydatek to inwestycja, kopalnia insightów, przebicie się ze specjalistycznym tematem do opinii publicznej oraz dowód na to, że jesteśmy cywilizowanym krajem.

Trochę o zaufaniu – może warto zrobić z tego oddzielny artykuł?

Dlaczego ProteGO-Safe się nie przyjęło i nie przyjmie się wiele aplikacji. Niżej wymieniam realne powody.

1. Polscy programiści (mówię o większości) nie przykładają wagi do bezpieczeństwa, a już prawie żaden nie wie co to jest prywatność i innych nazywa aluczapkami, gdy o tym wspomną. To tyle o zespołach w których pracowałam – z czasem sama przestałam o tym mówić widząc reakcję. Wyglądało to jakby oni celowo zostawiali sobie dziury. Cóź – póki sporo płacili robiłam, a kiedy wychodziło na jaw, że nie lubili kobiet i ich nie szanowali (tak samo jak w Polsce nie szanuje się LGBT, a tak na prawdę nie szanujemy po prostu odmienności – kobieta w programowaniu to też odmienność), zaczęłam sama programować i programy piszę w pojedynkę lub z innymi kobietami (przepraszam tu za dyskryminację, ale w zespole z większością mężczyzn nie potrafię się odnaleźć), w tych projektach dbam o prywatność i bezpieczeństwo, uczę tego też koleżanki i jakoś wychodzi… Wygląda nieprawdopodobnie, ale niestety tak jest. Dochodziło w mieszanych zespołach z przewagą mężczyzn wręcz do niezauważania kobiet i zwracania się przez szefów projektów i firm zwrotem „Szanowni Panowie”, „Szanowni Koledzy”… Godność swoją mamy jako programistki. Podpowiem tylko, że godniej jest otwarcie przy ubieganiu się o stanowisko powiedzieć „to stanowisko przeznaczone jest dla mężczyzny”, przynajmniej nikt nie będzie sobie robił nadziei, że ma stabilny dochód i nie popadnie w depresję o brak poszanowania.

2. Gdzie się nie zadzwoni: „uprzejmie informujemy, że rozmowa jest nagrywana (i tu powód z d**y)” i jeszcze gorzej „uprzejmie informujemy, że rozmowa MOŻE być nagrywana (i tu powód z p***y)”. Dalej „Jeżeli nie wyrażasz zgodny na nagrywanie rozłącz się”… zamiast „Jeżeli nie wyrażasz zgody wciśnij 1, (poczym dalej słychać by było rozmowa nie będzie nagrywana)”. Co mogę o tym powiedzieć szanowny rządzie i szanowne firmy – SAMI NAS WYTRESOWALIŚCIE I POKAZALIŚCIE JAK NAM UFACIE!!! Wszędzie kamery, bywa rozpoznawanie twarzy, do pracy obowiązkowa fotka, nawet bywa pisane „CV bez zdjęcia nie przyjmujemy”. Czyli gdzie nie pójdę zbierane są moje dane osobowe i to biometryczne – głos i wizerunek twarzy… Mam dość, przepraszam, że nie ufam i nie zaufam. Mam dość takiego bespieczeństwa (literówka celowa). Zapytałam raz taką firmę, która mnie nagrywała – ile czasu przechowuje dane do celów „zapewnienia właściwego przeprowadzenia umówienia się na wizytę” – otóż otrzymałam odpowiedź że tajemnica firmowa, a po skierowaniu sprawy do UODO – dowiedziałam się, że 3 LATA!!! Od tamtego czasu oficjalnie żyję bez telefonu, a telefon zarejestrował mi nieznajomy za wódkę i kartę mi użyczył. 🙂

3 – aby zasłużył sobie ktoś na zaufanie musi mieć nieskazitelną opinię. Obecny rząd nie należy do takich. Przejęcie aplikacji przez rząd było właśnie tym momentem który przelał szalę goryczy. Gdyby aplikacja została projektem w pełni obywatelskim, pewnie bym się nawet nie przyglądała, bo co robię – kontroluję kontrolujących i depczę po tropach rządu i firm współpracujących z nim – tak trafiłam na ProteGO (wiedziałam wcześniej o projekcie koronazglowy i się nie odzywałam) i dlatego nie było wcześniej mojej aktywności. Podpisywanie umów, specjalnych oświadczeń przez autorów dla rządu i NDA, które wciąż nie są w pełni jawne – dało sygnał „spalić! i patrzeć czy nie wyrośnie z tego kolejny rak”. NA ZAUFANIE NALEŻY SOBIE ZASŁUŻYĆ. Niestety MC jest skompromitowane po dziurawym Profilu Zaufanym, / ePUAP (nie wiem gdzie się jeden kończy a drugi zaczyna, bo to strasznie mętne). Skompromitowanym o wycieki PUE-ePUAP (dało się przejąc konto przez ZUS IIRC), Skompromitowane po podpisaniu się MC za Pocztę lub odwrotnie (jest na NBZP o tym) podczas wyborów i skompromitowany ostatecznie rząd po tym jak promował prezydenta wręczając czeki i robiąc wiele innych rzeczy. W końcu ePUAP skompromitował też osoby wpisujące się do spisu wyborców – osoby większościowo niewpisane fizycznie, a w marcu był to jedyny kanał! Brzmi to wręcz jak korupcja… Przepraszam, ale „spalić! spalić! spalić!” a nie ufać. Kolejno Kwarantanna Domowa miała być zawsze dobrowolna i stała się tydzień później obowiązkowa. Ludzie zmuszani do wysyłania danych biometrycznych na serwer po raz kolejny „spalić tym razem telefon i kupić starą Nokię 3310 i mieć spokój!”.
Czy po tych krokach, które zrobiła osoba odpowiedzialna i podająca się za administratora danych tej aplikacji nie jest już na tyle skompromitowana by przewidzieć fail aplikacji? Do tego jeszcze mającej na baker z prywatnością wcześniej i zapowiadanej przez Tarvalda – tego nie zrobimy, tego nie da się zrobić, tam jest zaawansowana stuczna ynteligencja, gdy tak na prawdę był prosty graf przepływów co pokazała firma In*****dica (cenzuruję nazwę na prośbę firmy – szanuję zdanie podmiotów godnych zaufania, umiejących otworzyć swój kod). Przepraszam, ale mam dość kłamstw, w tym okłamywania przez rząd na każdym kroku, nawet na tym, że „nie planowali wpuścić 10% więcej klientów do sklepu i kłamali bo było im WStYD…

4 – Nie ufam Gapple – szczególnie Google – to ma w d**ie moją prywatność, a więc czemu mam używać ProteGO, skoro nie mogę mieć jednocześnie Linuxa i w pełni funkcjonalnego ProteGO (zwyczajnie nie mam na czym zainstalować)?

5 – „W Polsce nie zwykło się otwierać kodu źródłowego” – trafne spostrzeżenie, w sam raz do nieograniczonego zaufania Może pora otworzyć kod źródłowy eDO, mDokumenty i innych aplikacji i otworzyć się na obywatelski audyt bezpieczeństwa i prywatności?

6 – Polski rząd już jest zainteresowany zakupem systemu do rozpoznawania ludzi nie tylko z twarzy – zakupu od Chińczyków. Jak ja miałam zaufać? Dobrze, że już jestem poza graniczami Polski. Poczekam na obywatelstwo innego kraju i złożę wypowiedzenie Andrzejowi Dudzie (lub kto tam wygra po protestach wyborczych) – mam nadzieję, że uszanuje moją decyzję i wypisze mnie z Polski. Na razie potrzebuję tej umowy przynależności, ponieważ obywatelstwo polskie oznacza też obywatelstwo Unii Europejskiej. Gdzieś żyć trzeba.

Na koniec: precz z informatyzacją Polski – nigdy nie zamierzam z tych usług korzystać, bo dowody (chodzi o potwierdzenie, nie ID) elektroniczne są zbyt ulotne, że cokolwiek zrobiłam, zbyt łatwo je sfałszować (podpisane MC za PP lub odwrotnie na jednym z dokumentów – o tym na NBZP). Złożę dokument elektronicznie i nie mam nic w ręku a podpisując się gdziekolwiek elektronicznie skąd mam wiedzieć czy nad oknerm aplikacji która czeka na podpis zupełnie czego innego nie ma oby obrazka z tym co rzekomo podpisuję? Do tego nie dostają potwierdzenia. Papier ciężej zhakować i sfałszować i przynajmniej grafolog mógł się wypowiedzieć. Tak wiem, jestem technologicznym neandertalczykiem, ale chcę by tak pozostało i wolę korzystać z papieru. Elektronika tylko do niezobowiązujących rzeczy, bez danych osobowych.

Użycie do przekazu wiadomości, rozmowy z bliskimi, zapytania na forum, obejrzenia filmu, pogadania przez Signal czy WIRE na szyfrowanym połączeniu – OK (tak – ufam Szwajcarom, bo przynajmniej gdy mówią o prywatności i szyfrowaniu end-to-end na prawdę to robią…).

Używanie technologii do podpisywania, składania dokumentów, identyfikacji (nawet nie możemy zasłonić części danych, do tego jeszcze szpiegujące technologie w tle – Android i Google) – rak niesamowity.

Użycie do kupowania przez internet – tylko z fałszywymi danymi i płatnością papierem w drzwiach. Wtedy najwyżej wycieknie adres zamieszkania, jeżeli paczkomat niedostępny. Systemy są za mało wytestowane, aby dawać im dane osobowe, za dużo wycieków, nawet z morele.net, a jak widać skoro kupuję na fałszywe dane i udaje mi się dostać towar, paragon i zapłacić papierową kasą – CAŁKOWICIE ZBĘDNE do celu. To też wpływa na nasze zaufanie, szczególnie gdy informacja o wycieku przychodzi nie po 24h ale po kilku miesiącach wraz z windykacją pożyczki, której nie pamiętamy, bo jej nie było…

Znaczy każdy kraj stworzył od zera swoją własną, niespecjalnie niedziałającą appkę? Ciekawe ile z nich jest przy tym open source i można było po prostu wykorzystać, dodając tłumaczenie i ew. lokalne grafiki. Jasne, różne kraje mogą mieć różne wymagania, zwłaszcza dotyczące przechowywanych danych, ale akurat w Europie jest to dość spójne, ale nawet w skali świata nie jest to nic, czego kilka instrukcji warunkowych by nie załatwiło.

Zupełnie gratis byłyby wersje językowe – widzę, że w Google Play sporo ludzi słusznie narzeka na brak wersji angielskiej.

Jeśli chodzi o liczbę pobrań – skoro opłacone trolle nabijały w SM komentarze, to może i pobrania nabijane?

Ciekawy byłby szacunek z natury, ilu użytkowników aplikacji się „widziało”. Ponieważ sami nadają kody, wystarczy posniffować na BT i zliczyć ich ilość. Zostawiam jako pomysł na następny wpis. 😉

Ciekawe spostrzeżenie. Zamiast pisać jedną wspólną aplikację dla EU i tylko dopasować przesył kluczy na odpowiedni serwer oraz numery kontaktowe, każdy robi własną, chyba po to aby zbierać z niej dane. Z bardzo wielkim wysiłkiem zespół ProteGO porzucił online PWA oraz wersję będącą nakładką na stronę safesafe.app.

Jeżeli każdy będzie robił sobie, to takim działaniem nic nie osiągniemy. Mamy teraz pewnie 10-20 zespołów które równolegle piszą dosłownie to samo, zamiast rozwijać, testować, robić audyty tego co inni już napisali. Że tak powiem – trochę wstyd i bardzo niewydajna jest taka praca tysiąca programistów.

Mam pomysł – wymyślmy na nowo kwadratowe koło i napiszmy linuxa od nowa XD.

Wielce podoba mi się ten artykuł! Zwłaszcza szczegółowość, konkret i własne badania. Podziwiam profesjonalizm. Rispekt!
Również chętnie przeczytam o wspomnianej szarpiącej się dygresji, jak i o różnicach w budowie mostów. 🙂

Zastanawiam się nad niską liczbą instalacji. Popytałem znajomych pracujących w korporacjach, sektorze publicznym i spółkach z udziałem skarbu państwa. Na żadnym ze służbowych telefonów administrator który ma dostęp do aplikacji i ustawień telefonu nie zainstalował ProteGo Safe. Nie wiem jak z tabletami posłów ale wygląda na to że ten projekt nie ma wsparcia rządu. Jest bo wypada mieć aplikację ale o wdrożeniu nikt nie pomyślał. Było trochę reklam. SMSy z ePuapu też miały informację o aplikacji ale to wszystko za mało. Bo świadomość ludzi o istnieniu ProteGo jest zerowa. Co innego kwarantanna domowa, o której sporo osób słyszało.

Przydałby się sposób na weryfikowanie działania aplikacji przy wchodzeniu zamkniętych do miejsc publicznych takich jak biura, sklepy, urzędy, przychodnie czy pojazdy komunikacji. Co i rusz słuchać o tym że PKP poszukuje osób które jechały pociągiem z zarażonym. A tak przynajmniej było by wiadomo ile takich osób jest.

OT:
Zna ktoś jakieś sensowne rozwiązanie w zakresie zarządzania flotą telefonów służbowych?

Od podstaw takich jak lokalizacja oraz niszczenie zawartości jak telefon się zgubi, bo instalacje „firmowych” aplikacji.

Klucze do samodzielnej analizy jak zawsze z https://exp.safesafe.app/%2Findex.txt
(czyli np. https://exp.safesafe.app//1597363200-00001.zip)

Liczbę ostrzeżeń z kontaktów z danego dnia można znaleźć tutaj: https://down.dsg.cs.tcd.ie/tact/tek-counts/ – trzeba tylko pamiętać, że liczby z ostatnich 2 tygodni mogą rosnąć, tzn. jeśli ktoś dziś zgłosi swoją listę kluczy z powiedzmy tygodnia, to liczniki siedmiu ostatnich dni skoczą o jeden w górę. Wartości starsze niż 2 tygodnie są już zamrożone.

Czyli można domniemywać, w wielkim skrócie, że jeżeli przez kilka dni w systemie zarejestrował się jeden klucz to tylko jedna zdiagnozowana pozytywnie osoba aplikacji, czyż nie?

Jeden klucz dotyczy zawsze jednego dnia. Jeśli masz więcej niż jeden klucz danego dnia, to wiadomo, że na pewno zgłoszenie pochodziło od więcej niż jednej osoby.

Zestawu kluczy nie da się powiązać, jednak w praktyce zawsze zgłaszane będą serie „od wczoraj wstecz”. Jeśli więc mamy X kluczy w dniu Y, to wiadomo że w ciągu 2 tygodni po dniu Y co najmniej X różnych osób wysłało swoje klucze.

Dziękuję za artykuł. Dotarłam do niego – i dotarłam do końca – bo dziś została ogłoszona laurka… yyy, przepraszam, list szefów MEN i GIS, który zawiera zachętę dla rodziców, żeby instalowali tę aplikację i jej używali. Artykuł pomoże mi uzasadniać odmowę, gdyby ktoś nalegał.

Świetny artykuł, po przeczytaniu podjąłem dwa nastepujące działania. Po pierwsze usunąłem protegoSafe bo od momentu aktywacji na iPhone zjadało mi bardzo baterię, a drugie to puściłem totolotka. Pozdrawiam

[…] z pierwszą wersją aplikacji ProtegoSafehttps://informatykzakladowy.pl/aplikacja-protego-safe-nie-dziala-czas-zatrzymac-te-inwestycjeOraz dane z międzynarodowego serwera wymieniającego dane z systemu […]

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *