Głosowanie przez Internet – czy Blockchain może pomóc ??

Kiedy osiągnąłem wiek pełnoletności dostałem od naszego Państwa prawo do wybierania przyszłej władzy. Jako że uważam że każdy głos ma znaczenie zawsze chętnie uczestniczyłem w tego rodzaju wydarzeniach i jeździłem do swojego okręgu wyborczego który na szczęście był bardzo blisko mnie. Niestety w tym roku w dniu wyborów będę daleko po za Polską więc nie jestem w stanie statycznie przyjechać w miejsce gdzie powinienem oddać głos. Co w takiej sytuacji ??

Jak to wygląda w Polsce ??

Zdecydowałem się napisać do urzędu w mojej dzielnicy czy jest jakaś alternatywa co do możliwości głosowania. Sądziłem że w takich przypadkach powinna być możliwość oddania głosu przez internet lub wcześniej skoro mamy erę cyfryzacji i chcemy być wiodącym krajem w transformacji cyfrowej. Niestety, bardzo się myliłem. Po kilku godzinach dostałem odpowiedź. Niestety w Polsce nie ma żadnej innej możliwości na głosowanie po za fizycznym przyjechaniem w miejsce gdzie takie głosowanie może mieć miejsce. Dostałem propozycje że mogę się udać do konsulatu gdzie taki głos również można oddać. Niestety tam gdzie będę najbliższy konsulat jest 6 godzin drogi w jedną stronę więc mimo że uważam że to mój obywatelski obowiązek oddać głos raczej się nie zdecyduje.

Estonia – 15 lat skutecznego e-votingu

Po małym szoku jakiego doznałem zacząłem szukać w internecie czy faktycznie stworzenie takiego systemu jest bardzo wymagające i stanowiące duże wyzwanie przed prawie 38 milionowym krajem. Po 5 minutach miałem już odpowiedź. Niestety tak nie jest. Taki system już istnieje i jest on w Estonii od 2005 roku. Kraj w którym mieszka 1.5 miliona osób od 2005 roku umożliwił swoim obywatelom możliwość wyboru swoich przedstawicieli w parlamencie przez Internet. W wyborach w 2019 roku prawie 44% wszystkich głosów zostało oddane właśnie przez Internet i specjalną dedykowaną aplikację.  Obywatele Estonii podczas głosowania korzystają ze specjalnej karty ID która uprawnia ich do oddania głosów oraz jest oparta o technologie klucza publicznego. Brzmi znajomo ?? Sporym plusem tego rozwiązania jest również to że głos można oddać nawet 4 dni przed ostatecznym dniem zakończenia głosowania. Dają nam również możliwość zmiany naszego głosu aż do ostatecznego zatwierdzenia wszystkich głosów o określonej godzinie określonego dnia.

Polska jest obecnie prawie 15 lat w tyle z rozwiązaniem jakie oferuje swoim obywatelom Estonia chociaż z tego co udało mi się znaleźć pracujemy nad implementacją swojego rozwiązania. Pytanie tylko czy nie za późno. Jeśli chcemy być nowoczesnym krajem z silnie rozwiniętą gospodarką cyfrową musimy znacznie przyśpieszyć tempo i nie bać się ryzyka inwestowania w nowe technologie. Nawet jeśli kilka razy nie uda nam się osiągnąć sukcesu jestem przekonany że nauka jaką z tego wyciągniemy jako kraj zaowocuje w przyszłości.

Czy Blockchain może nam pomóc ??

W 2005 roku kiedy Estonia zainicjalizowała swoją aplikacje do głosowania przez internet nie było jeszcze działającej technologii blockchain. Udało im się to zrobić bez tego, natomiast ta technologia powinna bardzo pomóc w implementacji. Zapewnia ona niezmienność danych które do niego wchodzą oraz to że nikt nie może przy nich manipulować. Przykładową implementacje e-votingu można stworzyć na platformie Ethereum. Możemy stworzyć token który umożliwi nam wysłanie pewnej ilości tego tokenu co będzie definiować na kogo chcemy oddać głos. Wszystkie niewykorzystane tokeny przed rozpoczęciem głosowania trzeba by było spalić oraz ustalić w smart kontrakcie na jaki adres można tylko przesyłać te tokeny gdyż ludzie mogliby przysyłać te tokeny na inny adres i z niego głosować. Oczywiście takie rozwiązanie wiąże się z pewnymi komplikacjami. Jak zapewnić możliwość oddania tylko jednego głosu? Myślę, że taki problem jesteśmy w stanie rozwiązać poprzez odpowiednie zapisy w smart kontrakcie. Smart kontrakt jest to kod wykonywalny podczas jakiegoś zdarzenia na naszej sieci jak na przykład przesył jakieś transakcji w sieci. Każdy może sprawdzić jak taki kod wygląda i na jakich zasadach działa. Technologia Blockchain zapewniłaby nam transparentność oraz równe zasady na jakich będzie się opierało to głosowanie. Takie rozwiązanie wymagałoby od nas pełnego KYC (identyfikacji użytkowników) aby nie dopuścić do sytuacji w której ktoś będzie mógł oddać głos przez Internet oraz fizycznie w swoim okręgu wyborczym. Publiczna sieć Ethereum jest obecnie bezpieczna oraz niezwykle rozległa, natomiast nigdy nie wiemy jak w przyszłości zachowa się ten Blockchain po wprowadzeniu np. POS w najbliższym hardforku. Innym rozwiązaniem nieco bardzie skomplikowanym byłoby stworzenie własnego Blockchaina do tych celów. Wiązałoby się to z potrzebą tworzenia całej sieci od początku. Taka sieć byłaby kontrolowana przez kilka organizacji rządowych ale mogłaby udostępniać takie dane również zwykłym obywatelom którzy w ramach pomocy utrzymywaliby taką sieć. Drugim przykładem może być autonomiczna organizacja, która byłaby stworzona jako państwo i dołączyła do niego swoich wszystkich obywateli. W pewnym momencie na specjalnej aplikacji pojawiałoby się głosowanie z wyborem odpowiednich kandydatów, a dana osoba podpisując swoim kluczem transakację mogłaby na nich głosować. Wszystko to co wyżej napisałem wymagało by zdecydowanie dogłębniejszej analizy natomiast już w tym momencie możemy stworzyć takie proste rozwiązanie w 1 dzień. Przykładowy taki smart kontrakt można znaleźć np na https://github.com/Vote-On-Ethereum/Contract/blob/master/contracts/Poll.sol

Podsumowanie

Podałem tylko kilka przykładów jak taki problem można rozwiązać. Możliwości jakie dają nam obecnie nowe technologie są naprawdę spore i mam nadzieje że w przyszłości będzie to wykorzystywane do ułatwienia ludziom wykonywania pewnych czynności. Należy również pamiętać że nie można od razu wszystkiego robić przez internet, ale małymi krokami należy wdrażać takie rozwiązania. Małym krokiem w dobrą stronę jest wypuszczenie aplikacji mObywatel, w której możemy przechowywać nasze dokumenty takie jak dowód osobisty bądź legitymacje szkolną. Mam nadzieję że w najbliższej przyszłości ujrzymy również rozwiązanie które pozwoli nam oddać głos bez potrzeby wychodzenia z domu oraz że technologia Blockchain będzie jedną z głównych technologii wykorzystaną w tej implementacji.