Bezpieczne głosowanie przez Internet – iVoting

Dodane:

Robert Hałuza Robert Hałuza

Bezpieczne głosowanie przez Internet – iVoting

Udostępnij:

Społeczeństwa państw rozwiniętych stoją przed wieloma wyzwaniami, które stawia przed nimi nowa sytuacja we współczesnym świecie. Praca zdalna stała się powszechna. Podobnie cyfrowe usługi elektronicznego podpisu dokumentów czy składania wniosków urzędowych. Powstaje coraz większa liczba startupów, które próbują stworzyć rozwiązanie informatyczne umożliwiające bezpieczne, anonimowe i zdalne głosowanie przez Internet. Jednym z takich startupów – a przy okazji odnoszącym coraz większy rozgłos wśród internautów i inwestorów – jest iVoting.

Platforma, którą buduje iVoting, może być wykorzystywana do głosowań w spółkach kapitałowych, stowarzyszeniach, fundacjach, uniwersytetach, szkołach czy w samorządach. iVoting nie ma ambicji, aby stać się systemem do głosowania w wyborach powszechnych, ale chce zagospodarować niszę, jaka powstała na rynku przez ograniczenia związane z pandemią i po prostu stworzyć wygodną dla klientów e-usługę.

Startup postawił na wykorzystanie technologii podpisów cyfrowych oraz blockchain w głosowaniach, którą możemy kojarzyć przede wszystkim z innym, bardzo popularnym obecnie, zjawiskiem technologicznym – kryptowalutami. Sam blockchain nie jest remedium na wszystkie bolączki w systemie głosowania przez Internet, dlatego system opiera się na specjalnych podpisach cyfrowych, które miksują i anonimizują głosy.

Oprócz tego, równolegle z pracami nad tą technologią, iVoting rozwija inne zaawansowane protokoły kryptologiczne oparte o zaawansowane rozwiązania matematyczne, teorię liczb pierwszych i chińskie twierdzenie o resztach, opracowywane przy udziale kryptologów i naukowców z Politechniki Częstochowskiej i Politechniki Wrocławskiej. Kierownikiem naukowym prac B+R jest światowej klasy specjalista od technologii blockchain, prof. dr hab. Krzysztof Piech.

Sama podstawowa technologia blockchain nie jest „Świętym Graalem” dla rozwiązania problemów informatycznych z głosowaniem przez Internet, ale łącząc ją z innymi protokołami i algorytmami kryptograficznymi można zapewnić akceptowalny poziom bezpieczeństwa i anonimowości, w obsłudze masowych głosowań w Internecie.

Skupmy się jednak na analizie protokołu blockchain, który buduje iVoting.

Dlaczego blockchain w głosowaniach?

Aby wytłumaczyć istotę głosowani przez Internet wykorzystującego technologię blockchain, wypada najpierw poznać znaczenie tego terminu. Jak sama nazwa wskazuje, blockchain to łańcuch bloków. Bloki te zawierają informacje o przeprowadzanych działaniach (transakcjach – w naszym wypadku oznacza to informacje o: nadawaniu, przekazywaniu i używaniu prawa głosu). Po skompletowaniu maksymalnej ilości transakcji lub po upływie wybranego czasu, następuje tworzenie następnych bloków. Obecnie technologia ta jest wykorzystywana przede wszystkim w transakcjach handlowych, gdzie z powodzeniem chroni operacje i majątki warte setki milionów dolarów. Nie jest to jedyna możliwość zastosowania blockchain w głosowaniach zdalnych. Ważnymi cechami tej technologii są: brak centralizacji danych, w zamian czego oferuje ona znaną, choćby z programów do pobierania torrentów, sieć P2P, a także szerokie zastosowanie metod kryptograficznych w uwierzytelnianiu wszelkich danych i nadanych uprawnień, co oznacza dużo większe bezpieczeństwo i integralność głosów. Uczestnicy wyborów podczas ich trwania sprawdzają poprawność bloków, a także każdą transakcję, która została w nich zawarta. Dzięki temu każdy wyborca wie, czy proces głosowania nie jest przez nikogo sfałszowany, a żadne głosy nie zostały dosypane do urny. Co więcej, każdy wyborca sam przeliczy wszystkie głosy i sam dojdzie do tego, jaki jest wynik głosowania! Te procesy weryfikacji odbywają się w tle, a zarządza nimi protokół informatyczny – algorytm, który odpowiada za bezpieczeństwo systemu. Dzięki temu nikt nie jest w stanie zmanipulować wyniku lub oddać głosu za innego głosującego.

Bloki opisane powyżej są tworzone przez specjalne komputery będące częścią systemu głosowania. Po takim potwierdzeniu nie ma już żadnej możliwości modyfikacji bloku, co podczas procesu głosowania oznacza, że nikt nie może fałszować dat ani zdarzeń wyborczych. Możliwa jest zatem ochrona przed atakami polegającymi na odmowie przyjęcia głosu od danego głosującego oraz przed atakiem w postaci dopisywania nieistniejących wyborców do systemu. Obrona ta opiera się na widoczności operacji w blockchain (jedynie częściowo utajnionych), dzięki temu każdy potencjalny atak można zauważyć. Mogą wykryć go sami głosujący lub poszkodowana osoba, co pozwala zawiadomić natychmiast odpowiednie organy, organizatorów głosowania lub administratorów systemu.

iVoting prowadzi badania nad cyberbezpieczeństwem i wylicza, że możliwości wpływania na wynik głosowania przez Internet jest bardzo wiele. Czy można spodziewać się zatem rozwiązań informatycznych, które mimo wszystko zapewnią bezpieczeństwo na poziomie na tyle akceptowalnym, aby móc z sukcesem wdrożyć cały system w masowej skali?

Przyznawanie uprawnień do głosowania

Jednym z dość oczywistych problemów, który wystąpi podczas przenoszenia głosowania do sieci, jest autoryzacja głosujących i przyznawanie im możliwości głosowania. Skąd wiemy, że Jan Kowalski to ten właściwy Jan Kowalski, który powinien zagłosować np. w wyborze zarządu spółki? Oszustwo w tym miejscu polega na przyznawaniu praw do głosu osobom, które go nie mają, a nawet nie żyją. Z regularnych doniesień prasowych wynika, że takie sytuacje pojawiających się podczas trwania ważnych w skali kraju wyborów np. ostatnio w USA.

Dosypanie głosów do elektronicznej urny też wydaje się dość proste w źle zabezpieczonym systemie wyborczym. Jak więc zapobiec takiej manipulacji podczas głosowania przez Internet, kiedy nie możemy zweryfikować przy urnie wyborcy, np. sprawdzając jego dowód osobisty?

iVoting proponuje następujące rozwiązanie np. dla głosowań w samorządach. Uczestnicy głosowań mogą zająć kilka ról, z czego każda ma inne możliwości. Użytkownik, który może tylko głosować (Voter), musi najpierw przejść przez weryfikację w urzędzie lub u notariusza, który ma wysokie uprawnienia systemowe – “autorytet prawny” (rola Organizatora głosowania).

Organizator ustala zasady głosowania – zaprasza uczestników, określa czas głosowania, datę rozpoczęcia i zakończenia, czy głosy są tajne czy jawne, czy wyniki widać w trakcie głosowania czy dopiero po jego zakończeniu oraz ustala konieczny poziom uwierzytelnienia głosującego.

Najwyższym poziomem uwierzytelnienia jest wspomniane wyżej “sprawdzenie dowodu tożsamości przy urnie”. W iVoting takie sprawdzenie to podpisanie krótkiego dokumentu (certyfikatu) i poświadczenie w formie papierowej cyfrowego prawa głosu. Prawo głosu ma być utworzone na parze kluczy cyfrowych (publiczny i prywatny), które zostaną zapisane w telefonie lub komputerze wyborcy. Odbywa się to podczas osobistej wizyty w urzędzie lub u notariusza (reprezentującego Organizatora głosowania), z pomocą zeskanowania kodu QR wyświetlonego w telefonie użytkownika (lub wydrukowanego z komputera). Czynności te realizowane są przez urzędnika lub notariusza, który ma status Issuera (emitenta reprezentującego Organizatora głosowania w systemie iVoting). W wyniku podpisania takiego dokumentu w obecności zaufanej dla organizatora głosowania osoby, powstaje ślad papierowy, potwierdzający uprawnienie do głosowania, a w systemie iVoting zostają uwierzytelnione specjalne klucze cyfrowe.

W ten sposób następuje sprawdzenie tożsamości i prawa głosu potwierdzone sprawdzeniem fizycznego dokumentu tożsamości. Przy okazji takiej wizyty w urzędzie lub u notariusza tworzy się cyfrowa tożsamość głosującego w systemie iVoting, do której ma dostęp wyłącznie Voter (wyborca), ponieważ dane osobowe znajdują się wyłącznie w jego urządzeniu i są zaszyfrowane.

Wyznaczanie trybu oraz osób weryfikujących tożsamość wyborcy leży w gestii organizujących takie głosowania. Dla spółek kapitałowych będą to notariusze, prawnicy, pełnomocnicy, członkowie zarządu czy komisji. Dla Uczelni mogą to być pełnomocnicy, prawnicy czy pracownicy organizacyjni rektoratu. Dla samorządu mogą to być wyznaczeni, zaufani urzędnicy.

W organizacjach takich jak fundacja czy stowarzyszenie może to być wybrana przez członków organizacji osoba zaufana.

Do cyfrowej tożsamości głosującego (Cyber ID), nad którą pracuje zespół iVoting, można uwierzytelniać kolejne dane osobowe potrzebne w różnego rodzaju głosowaniach takie jak PESEL, data urodzenia, adres zameldowania – jednak dane te docelowo nie będą zbierane od użytkowników, bo w blockchainnie nie ma potrzeby ich rejestrowania. Na przykładzie powszechnie organizowanych w Polsce głosowań w ramach budżetów obywatelskich, gdzie zamieszkujący w danej jednostce samorządu terytorialnego obywatele, którzy ukończyli 16 lat, mogą głosować na projekty i kierować publiczne pieniądze na ich realizację można pokazać jak działa cyfrowe prawo głosu. Organizator głosowania, np. miasto Warszawa, w panelu

Organizatora głosowania ustawia parametry głosowania w tym prawo głosu, które uzyskuje osoba np. wyłącznie zameldowana w Warszawie i taka, która ukończyła 16 lat, ponieważ takie zasady wynikają przykładowo z uchwały dotyczącej budżetu obywatelskiego podjętej przez radnych miejskich. System przy zalogowaniu głosującego będzie wymagał uwierzytelnienia tych dwóch danych podczas wizyty w urzędzie lub zdalnie. Dzięki uwierzytelnieniu system przydzieli prawo głosu zgodnie z wytycznymi dla danego klucza cyfrowego nie znając danych głosującego.

Uwierzytelnienie głosującego może się również odbywać zdalnie, np. poprzez zalogowanie się do konta bankowego (dyrektywa PSDII), czy potwierdzenie danych przez ePUAP lub dla mniej ważnych głosowań za pomocą kodu SMS. Występuje kilkanaście metod autoryzacji osób zdalnie i każdy organizator głosowania będzie mógł w iVoting wybrać metody jakie uzna za stosowne – zwiększając lub obniżając poziom bezpieczeństwa głosowania lub jego charakter. Oczywiście z poziomami autoryzacji wiąże się też wysokość opłaty za usługę głosowania przez iVoting.

Podsumowując – niepodważalnym i najbezpieczniejszym rozwiązaniem jest pozostawienie śladu papierowego uwierzytelnienia, który można poddać weryfikacji i audytowi w razie kontroli poprawności głosowania (potwierdzenie urzędowe lub notarialne w formie certyfikatu klucza cyfrowego).

Tajność wyborów

Istotną cechą dla wielu typów głosowań jest ich anonimowość. Nie lubimy przecież, gdy ktoś podgląda nasze karty do głosowania. Nie bez powodu – w szczególnych sytuacjach na podstawie niepomyślnych dla władz (np. firmy, miasta, państwa) wyborów, można by stosować wobec głosujących różne formy oddziaływania, jak np. mobbing, albo korupcja wyborcza polegająca na kupowaniu głosów. Skoro każdy użytkownik ma przypisaną swoją cyfrową tożsamość, w jaki sposób możemy zapewnić głosującym pewność, że po oddaniu głosu nikt nie będzie w stanie poznać danych głosujących i dokonanych przez nich wyborów? To prawdziwe wyzwanie dla systemów do głosowania przez Internet.

W tym przypadku rozwiązaniem w iVoting jest kryptograficznie zabezpieczone przetasowanie (miksowanie) nowych tożsamości przed przystąpieniem do głosowania. Po otrzymaniu możliwości głosowania, wszyscy uczestnicy głosowania (proces obsługuje protokół) muszą wyrazić zgodę na anonimowe wylosowanie nowego identyfikatora, co przy wysokim poziomie stosowanych metod kryptograficznych oznacza, że żaden z organizatorów nie może dowiedzieć się, kto głosował i w jaki sposób.

Zakładając, że głosowania odbywają się w gronie przynajmniej kilkudziesięciu osób, jest możliwe osiągnięcie wysokiego poziomu anonimizacji głosu. Zastosowane zostały niezbędne kroki informatyczne, aby tworzenie anonimowej listy głosujących było całkowicie poufne, nawet w przypadku próby oszustwa podjętej przez administratorów systemu. Cała komunikacja odbywa się przez sieci ukrywające adres IP, takie jak Tor (z dodatkowymi ulepszeniami).

Wszystkie dane są wysyłane w losowych odstępach czasu. Każdy program dba o to, aby nie zdradzić informacji w żadnym szczególe przed innymi wyborcami, ani nawet przed operatorami systemu. Program sprawdzi, czy przygotowane nowe cyfrowe prawo głosu jest całkowicie bezpieczne – i tylko jeżeli tak jest, protokół dopuści używanie nowego prawa w miejsce starego. W przeciwnym przypadku operacja powtarza się. Takie operacje są powtarzane wielokrotnie, z innymi grupami wyborców. W wyniku tego uzyskuje się odpowiedni poziom utajnienia głosu.

To podejście pozwala każdemu wyborcy zliczać głosy publicznie, a zarazem prawie niemożliwe jest określenie tego, kto jak głosował, ponieważ tworzenie grupowych list nowych identyfikatorów za każdym razem utrudnia możliwość śledzenia danego głosu. Jednocześnie proces ten nie wpływa na ilość oddanych głosów, która jest w dalszym ciągu prawidłowa. Natomiast każdy wyborca może sprawdzić, jak został oddany jego głos w publicznie dostępnym, zdecentralizowanym rejestrze blockchain w podobny sposób jak sprawdza się transakcje sprzedaży kryptowalut między portfelami, za pomocą przeglądarki internetowej.

Jeden głos to jeden uprawniony

W przypadku większości głosowań (choć nie jest to reguła, głosujący np. członkowie zarządu spółki – mogą dysponować większą ilością głosów – różną wagą głosu) ważne jest również zapobiegnięcie manipulacji, która ma polegać na oddaniu więcej niż jednego ważnego głosu przez jedną osobę.

Dlatego każdy użytkownik (Organizator głosowania), który przyznaje prawo do głosu, dysponuje określoną ilością tokenów – praw do głosowania, które może rozdać. Robi to na podstawie otrzymanych dokumentów np. z rejestru akcjonariuszy czy krajowego rejestru sądowego określając wagę głosu danego Votera (udziałowca czy akcjonariusza).

Bardzo ważne jest to, aby przy prowadzeniu kilku jednoczesnych głosowań, uniemożliwić wykorzystywanie głosu z jednego głosowania do powiększenia puli głosów w innych wyborach. iVoting uniemożliwia takie postępowanie. Wyborca może tylko raz dołączyć do danego procesu wyborczego (głosowania), a tokenów nie da się przenieść pomiędzy różnymi głosowaniami, gdyż każdy zawiera w sobie informację, do którego konkretnie głosowania należy.

Przyszłość e-głosowań

Choć na chwilę obecną iVoting ciągle rozwija swoją technologię w ramach prac badawczo-rozwojowych, już w tym momencie może pochwalić się dostępnymi za darmo narzędziami – iVoting Free (www.app.ivoting.pl) oraz usługą iVoting Business (www.ivoting.pl), a także narzędziami do konsultacji społecznych przez Internet w samorządach.

iVoting Free jest prostą aplikacją webową do tworzenia sondaży, ankiet, zbiórki podpisów pod petycjami czy prostych głosowań w grupach społecznych. Można jej użyć za darmo np. w edukacji do anonimowych ewaluacji grup studenckich, oceny pracy wykładowców przez grupę, ocen prezentacji prelegentów i wystąpień przez audytorium. Nie tylko uczelnie, ale też szkoły mogą skorzystać za darmo z narzędzia np. do anonimowych wyborów na stanowiska w samorządzie szkolnym lub wyborów klasowych. Aplikacji można użyć do oceny konkursowych wystąpień, wyboru najlepszego sportowca, nauczyciela, czy też do rozstrzygania konkursów śpiewu, tańca, aktorskich czy plastycznych, fotograficzny i różnych występów, gdzie potrzebny jest głos widowni. iVoting Free może być innowacyjnym narzędziem w nowoczesnej edukacji, które można zastosować efektywnie w grywalizacji czy tworzeniu rankingów lub do podejmowania decyzji w grach fabularnych. Darmowe użycie aplikacji może służyć oczywiście do badania opinii, ankietowania, czy tworzenia sondaży w grupach społecznych, ale też do sędziowania w różnych plebiscytach czy konkursach. Darmowa licencja obejmuje również usługę zarządzania przez głosowanie np. w firmach i organizacjach. Dzięki iVoting Free możesz konsultować decyzje w zespole pracowników, w tym anonimowo, oraz dokonywać ewaluacji satysfakcji klientów na podstawie ankietowania klientów. Aplikacja może też być za darmo używana w małych organizacjach non-profit np. w różnego rodzaju Towarzystwach, Kołach, Stowarzyszeniach Zwykłych, Związkach i klubach sportowych i wszędzie tam, gdzie można wykorzystywać głosowanie jawne lub tajne do podejmowania kolektywnych decyzji.

Narzędzie nie wykorzystuje jeszcze technologii blockchain, na tym etapie służy do testów interfejsu, który w przyszłości ma być użyty do wdrożenia usługi na rynku. Startup planuje przeprowadzić szeroko zakrojone testy systemu na przestrzeni kolejnych miesięcy, angażując w nie tysiące użytkowników w realnym środowisku – w Internecie. Obecnie opracowywane protokoły są w fazie badań w warunkach laboratoryjnych, które iVoting realizuje przy udziale środków z Narodowego Centrum Badań i Rozwoju. Cały projekt badawczy zaplanowany jeszcze na kolejne dwa lata pochłonie ponad 8 mln zł.

Dla biznesu przygotowano dedykowane narzędzie – iVoting Business. To usługa skierowana dla spółek kapitałowych, która umożliwia prowadzenie zdalne głosowań na Walnych Zgromadzeniach (tzw eWZ). W zeszłym roku zakończono testowe wdrożenie pierwszej wersji narzędzia i przeprowadzono z sukcesem kilka pilotażowych głosowań z wykorzystaniem aplikacji, w których wzięły udział m.in. Agencja Rozwoju Regionalnego w Bielsku-Białej, Urząd Miasta Bielsko-Biała, Ministerstwo Aktywów Państwowych. Ruszyła sprzedaż usługi w regularnej ofercie. Oprogramowanie iVoting Business pozwala na dużo sprawniejsze, szybsze i pozbawione manipulacji głosowania (w tym anonimowe) podczas Walnych Zgromadzeń Akcjonariuszy, czy w spółkach z ograniczoną odpowiedzialnością. Usługa może obejmować asystę eksperta, który pomoże w przeprowadzeniu elektronicznego Walnego Zgromadzenia (w tym wprowadzi dokumenty, uchwały oraz zaprojektuje porządek obrad, a także będzie obecny podczas głosowania pomagając w obsłudze programu), a także popularne wśród klientów przeprowadzenie symulacji poprzedzającej prawdziwe głosowanie na eWZ, dzięki której głosujący mogą zapoznać się z programem, uwierzytelnić się i przetestować system przed prawdziwym głosowaniem. Więcej na www.biznes.ivoting.pl.

Startup iVoting powstał w 2018 roku. Spółki związane z projektem w ciągu ostatnich dwóch lat zanotowały znaczący wzrost wartości nominalnej dzięki wypracowanym rozwiązaniom technicznym. Ostrożnie szacowana wartość IP (know how, kod komputerowy i własność intelektualna) na koniec 2020 roku wyniosła 3,6 mln zł. Wartość startupu w czerwcu 2023 roku, kiedy iVoting zakończy pozytywnie prace B+R może wynieść ponad 10 mln zł. Tworzone rozwiązanie ma szansę stać się liderem innowacyjności na powstającym rynku bezpiecznych głosowań internetowych i może być odpowiedzią na wyzwania w zakresie cyberbezpieczeńtwa dla korporacji i dużego biznesu w zakresie zarządzania i podejmowania decyzji w sposób zdalny. Żaden inny startup w Polsce nie doszedł tak daleko w rozwiązaniu problematyki poufności i cyberbezpieczeństwa głosowań zdalnych.

CEO projektu iVoting Marcin Gawlas zapowiada, że 2021 rok będzie kluczowy dla projektu:

“W drugim kwartale bieżącego roku powinniśmy osiągnąć nasz pierwszy kamień milowy w projekcie badawczym – planujemy w niedługiej przyszłości złożenie wniosku patentowego dotyczącego polskiego systemu do głosowania przez Internet. Obecnie konsultujemy nasze rozwiązanie w środowisku naukowym w Polsce i na świecie. Dokumentacja techniczna opisująca protokół to pokaźnej grubości książka o systemach do głosowania przez Internet. iVoting stara się opisać wszelkie potencjalne zagrożenia i sposób ich rozwiązywania przez protokoły, które tworzy tak, aby zapewniać wysoki poziom anonimowość i bezpieczeństwo bez potrzeby zaufania operatorom systemu. Do rozwiązania pozostało jeszcze kilkadziesiąt krytycznych problemów, ale jesteśmy dobrej myśli. Mamy najlepszy zespół specjalistów w naszym kraju i obiecujące wyniki badań.”

Zespół założył, że część kodu protokołu konieczna dla zapewnienia transparentności działania systemu zostanie opublikowana jako open source. Każdy będzie miał wgląd w tę właśnie część kodu programu i protokołu do głosowania, tak jak to ma miejsce z kodem Bitcoina. Programiści i eksperci będą mogli ocenić elementy niezbędne do upewnienia się, że głosowanie z użyciem protokołu nie zostało sfałszowane. Wykrycie potencjalnego oszustwa będzie dla informatyków intuicyjnie proste i oczywiste.

W drugiej połowie 2021 roku startup otworzy się na inwestorów. Obecnie trwają prace nad modelem współpracy z inwestorami, który będzie uwzględniał współpracę z private equity, tokenizację, ale również croudfounding udziałowy. W 2023 roku planowane jest wejście na giełdę New Connect. Niewykluczona jest też również współpraca z VC, a także akceleracja usługi w jednym z dużych banków w Polsce. iVoting widzi też swoje szanse na rynku amerykańskim, gdzie temat głosowania przez Internet ma olbrzymie perspektywy. Kierownictwo zdradziło również, że przygotowuje nowy projekt badawczy związany z odpornością systemu na ataki komputerów kwantowych i kryptografią post-kwantową.

Być może będziemy mieli do czynienia ze stworzeniem algorytmów, które mogą być swoistym game changerem również dla systemów politycznych. Koncepcje cyberdemokracji czy demokracji bezpośredniej z wykorzystaniem takich narzędzi, marzą się miłośnikom wolnościowych idei od lat 70 minionego wieku. Bill Gates tworzył Microsoft w garażu, może algorytmy bezpiecznego systemu do głosowania powstaną w umysłach polskich naukowców i startupowców łączących siły w największym w historii tego kraju projekcie badawczym dotyczącym systemu głosowania przez Internet?

Zachęcam do obserwowania startupu:

iVoting

Smart Gmina

Smart City

iVoting na Facebooku

Autor: Robert Hałuza, copywriter i marketingowiec. Współpracuje z wieloma startupami i pomaga firmom w tworzeniu przejrzystych propozycji wartości, strategii marketingowych i modeli biznesowych. Twórca marki Język Wartości.

 

Artykuł powstał we współpracy z iVoting