Wybory – zmiany

Korzystając z okazji nadchodzącej drugiej tury wyborów prezydenckich pozwolę sobie na podsumowanie zmian, które bym wprowadził w wyborach, gdyby to zależało ode mnie.

Zniesienie ciszy wyborczej. To jest fikcja, bo działa tylko w polskiej jurysdykcji, a wymiana informacji obecnie jest globalna. Jest to fikcja, bo plakat nakłaniający do oddania głosu na kandydata powieszony dziś będzie legalny. A gdyby był powieszony dzień przed wyborami, w tym samym miejscu – już nie. Dodatkowo cisza wyborcza nie obejmuje nawoływania do uczestnictwa, a w pewnych sytuacjach jest ono praktycznie jednoznaczne z agitacją za kandydatem. Przykładowo, jeśli mamy trzech kandydatów w pierwszej turze, do drugiej wchodzi dwóch, a z badań wynika, że kandydaci trzeciego raczej popierają (powiedzmy w stosunku 1:3) jednego z tych, którzy weszli do drugiej tury. No i są na świecie kraje, które ciszy wyborczej nie mają, a demokracja funkcjonuje.

Głosowanie tylko w kraju. Sporo Polaków mieszka za granicą, często mając podwójne obywatelstwo, ale w kraju nie bywa, albo bywa rzadko i krótko. Podatków tu nie płacą, nie mieszkają, czemu mieliby mieć wpływ na politykę? Jeśli jednak zechcą głosować – nie ma problemu, mogą przyjechać i zagłosować na miejscu. Pewnie kontrowersyjne, ale jest trochę krajów na świecie, które właśnie tak podchodzą do sprawy. Przy okazji nieco obniży koszt organizacji wyborów. Oczywiście to tylko co do zasady, bo co z personelem dyplomatycznym, marynarzami itp.? Nie wiem, nie zastanawiałem się.

Dodanie osobnego kwadratu z podpisem „nie odpowiadał mi żaden z pozostałych wyborów” na kartach do głosowania i uwzględniania go normalnie w wynikach. Miałem notkę o tym jak nie głosować w wyborach i kiepsko się zestarzała. Wynoszenie kart z lokalu wyborczego bywa ścigane. W sumie nie wiem dlaczego, bo nie przysparza to pracy komisji wyborczej, a nawet zmniejsza jej ilość. Taki dodatkowy wybór dałby lepsze rozpoznanie intencji obecnie niegłosujących, oddających głosy nieważne itd. To się oczywiście nie wydarzy, bo byłoby przyznaniem, że obecny system jest ułomny i w praktyce nie reprezentuje wszystkich obywateli. I byłby w pewien sposób pokazaniem, że dla wielu wyboru nie ma lub jest on iluzoryczny.

Postaw kawę

Przy pewnej okazji dostałem pytanie, czy korzystam z jakiegoś rozwiązania, gdzie można postawić mi wirtualną kawę. Pytający w przykładzie użył serwisu buycoffee.to. Nie miałem nic takiego. Kiedyś myślałem o Patronite, ale jakoś nie czułem, bym zasługiwał. Zerknąłem na buycoffee.to i stwierdziłem, że założę konto. Po pierwsze, kojarzyłem logo, po drugie, jest to ładnie umocowane legalnie i ma proste zasady, do tego jakoś tak przejrzyście opisane. Last but not least – firma jest z okolic Poznania.

Nadal uważam, że blog pewnie nie zaowocuje wpłatami, ale… robię jeszcze parę rzeczy (kapela, jakieś prezentacje, jakiś open source), więc niech sobie będzie, może komuś się działalność spodoba, uzna za ją za wartościową i zechce postawić kawę. Tym bardziej, że konto w serwisie nie kosztuje, a darowizny korzystnie się rozlicza. Może nie prosto, od strony obdarowywanego, bo trzeba pilnować ostatnich sześciu lat per darczyńca, ale w praktyce nie płaci się podatku. Zresztą, eksport do arkusza, tabela przestawna i gotowe. Gdyby kogoś temat interesował, to dają dobry artykuł nt. rozliczania darowizn.

Nie jest tak, że serwis od darowizn jest za darmo. Pobierają dwie opłaty – 2,5% kosztu transakcyjnego oraz 7,5% opłaty serwisowej. Patronite byłby nieco tańszy, ale różnica jest pomijalna. Ta opłata serwisowa wydaje mi się dość spora, jeśli ktoś ma większe obroty. Mogła by być górna kwota opłat, powyżej której opłata serwisowa nie jest pobierana. W sumie ciekawe czy nie właśnie dlatego Radio 357 zaczęło przyjmować wpłaty na własną rękę?

Zatem, po krótkiej walce z WordPressem[1], w paru miejscach (strona główna, sidebar na blogu) pojawiło się logo serwisu buycoffee.to, prowadzące do miejsca, gdzie można postawić wirtualną kawę. I zapewne zostanie tam na dłużej w ramach eksperymentu. Tym bardziej, że zamierzam wkrótce definitywnie i całkowicie rozstać się z reklamami Google AdSense. Ale o tym będzie już w innym wpisie…

[1] Dodanie jest w skrajnie nieintuicyjnym miejscu. I w skrajnie nieintuicyjny sposób. W ogóle dziwna organizacja tego wszystkiego, a jeszcze mam WordPressa po polsku… W każdym razie skończyło się dodaniem kodu HTML w sidebar. Znaczy wygląd -> widżety.

Potwierdź mój wiek, anonimowo

Pojawiło się zagadnienie weryfikacji wieku przyjaznego dla prywatności czyli anonimowej weryfikacji wieku. Czyli mamy serwis X, który chce potwierdzić, że użytkownik ma 18 lat, ale jednocześnie ma otrzymać możliwie mało danych na temat tego użytkownika. Idealnie: tylko wiek.

Rysiek zaproponował rozwiązanie, które zaintrygowało mnie na tyle, że postanowiłem przeanalizować, czy to ma szansę działać. Wyszło mi, że nie. W tym wpisie skupiam się wyłącznie na proponowanym opisie algorytmu, czyli punktach i akapicie w którym jest zawarty.

Podsumowując założenia, ma tam być tak, że jest serwis X, użytkownik U, oraz serwis potwierdzania identyfikacji EID. X ma nie wiedzieć, kim jest U (dane osobowe). EID jak najbardziej zna dane osobowe użytkownika U, ma potwierdzić wiek, ale ma nie wiedzieć, że potwierdzenie jest na potrzeby serwisu X.

Problemy, które tu widzę, są dwa. Pierwszy jest taki, że użytkownik U w pełni kontroluje komunikację pomiędzy X a EID. Najpierw wysyła dane (które może dowolnie ustalić przed wysłaniem), potem otrzymuje odpowiedź, którą przekazuje. Czyli mamy do czynienia z man in the middle. Nie byłoby tu wielkiego problemu, gdyby EID wiedziało, że rozmawia z X – wystarczyłoby wtedy użyć odpowiednich kluczy prywatnych i publicznych. Ale jest to sprzeczne z założeniami.

Drugi problem jest poważniejszy. Serwis X nie wie, jakiego użytkownika weryfikuje. W tej sytuacji dowolny „dowód osobisty” może posłużyć do weryfikacji użytkownika.

Przekładając to na bardziej tradycyjne okoliczności: osoba w kominiarce przychodzi kupić alkohol i w ramach weryfikacji wieku pokazuje na ekranie telefonu zdjęcie dowodu osobistego. Czy sprzedawca jest w stanie zweryfikować wiek osoby na tej podstawie? Wg mnie – nie bardzo. Zdjęcie na ekranie to tutaj odpowiednik MITM (nie wiemy nawet, czy dowód jest autentyczny). Natomiast kominiarka (ukrycie tożsamości, anonimowość) uniemożliwia sprawdzenie, czy dowód należy do danej osoby.

Czyli dokładanie kolejnych warstw, algorytmów, systemów, stron w komunikacji nie zwiększa nam tu pewności anonimowej weryfikacji wieku. Nie w stosunku do wybrania przez użytkownika na stronie opcji „potwierdzam, że mam 18 lat”.

Być może po prostu mamy problem z akceptacją faktu, że weryfikacja wieku nigdy nie była anonimowa? Bo sprzedawca w sklepie z alkoholem nie tylko sprawdza[1], czy osoba posiada dowód osobisty. Sprawdza też, czy jest on autentyczny. I czy należy do tej osoby. OK, do tego ostatniego nie potrzebuje tu kompletu danych z dowodu, wystarczy zdjęcie. Ale do pozostałych danych ma dostęp w trakcie sprawdzania autentyczności.

Na Mastodonie trwa dyskusja, pewnie warto zapoznać się z całością, a komentować czy sugerować działające rozwiązania można równie dobrze tam.

[1] A przynajmniej powinien to robić.