Securing Digital Democracy

V průběhu září a října jsem se zúčastnil dalšího kurzu na Coursera. Tentokrát šlo o kurz Securing Digital Democracy, o který jsem se zajímal hlavně proto, že mě zajímaly kryptologické otázky hlasování přes internet. V tomto ohledu jsem byl trochu zklamán, protože hlasování přes internet tvoří jen velmi malou část předmětu, a ta by se ještě dala shrnout do stručného „zapomeňte na to“, ale přesto stráveného času nelituji – dozvěděl jsem se řadu zajímavých věcí, které se ještě budou hodit (možnost elektronických voleb se zvažuje i u nás).

Kurz začíná rychlým seznámením s problematikou voleb z bezpečnostního pohledu: Volby mají pět základních požadavků, které je v nich třeba dodržet. Patří mezi ně integrita (výsledek voleb odpovídá záměrům voličů, tzn. zejména to, že volič hlasoval tak, jak měl v úmyslu, a že hlasy byly sečteny tak, jak byly podány), tajnost volby (nikdo nemůže odhalit, jak volič hlasoval, a ještě lépe, ani volič nemůže nikomu prokázat, jak hlasoval), ověření voličů (hlasovat může jen ten, kdo je k tomu oprávněn, a jen tolikrát, kolikrát je oprávněn), enfranchisement (všichni oprávnění voliči mají možnost hlasovat) a dostupnost (volby proběhnou v daném čase a v rozumné době vyprodukují výsledky). Toto platí pro všechny typy voleb, následující lekce ukazují, jak se strojově podporované hlasování (včetně počítačového) s těmito požadavky vypořádává, a speciálně, kde naráží na problémy.

Součástí úvodu je také zdůraznění, co to je bezpečnostní pohled na věc: Ten, kdo zkoumá bezpečnostní aspekty jakéhokoliv systému, musí být schopen přemýšlet o situaci nejméně ze dvou pohledů: z pohledu útočníka (kde má systém slabé stránky, jak by se dal napadnout – a to s ohledem na všechny bezpečnostní parametry, ne si jen vybrat jeden parametr, který se mi líbí, zjistit, že ho napadnout nejde, a spokojeně prohlásit, že systém je bezpečný) i z pohledu obránce. Celý kurz je protkán odkazy na tuto myšlenku, v každé části vyučující nejméně jednou dává k zamyšlení, „jak by se tento systém dal napadnout“.

V dalších lekcích provádí profesor J. Alex Halderman (to jméno mi nic neříkalo, ale dodatečně jsem ho našel pod řadou výzkumných projektů – mimo jiné se podílel na cold-boot útocích v Princetonu) studenty tím, jak se hlasování ve volbách postupně vyvíjelo, od původního ústního hlasování přes papírové hlasovací lístky nebo mechanické hlasovací stroje až po modernější technologie postavené na bázi počítačů – ať už na bázi optického skenování (základním podkladem je hlasovací lístek, stroje slouží jen k jejich efektivnějšímu zpracování, ale v případě potřeby se lze vrátit k původnímu papíru a vše spočítat ručně), nebo čistě elektronické technologie (něco zhruba ve stylu počítače s dotykovou obrazovkou, na které jsou tlačítka pro jednotlivé možnosti volby), nebo internetového hlasování. Zajímavé je, že všechny tyto technologie se snaží reagovat na nedostatky v technologiích předcházejících a všechny vytvářejí nedostatky nové, často vážnější než ty, které napravují. (Pro zajímavost, „prehistorický“ papírový systém používaný v našich volbách vůbec nevychází z bezpečnostního pohledu špatně. Má sice některá slabá místa, ale proti tomu, co předvádějí modernější technologie, jde o nečekaně solidní technologii.)

To, co mě zajímalo nejvíc, to jest hlasování přes internet, se probírá jen v jedné lekci, a jak už jsem psal v úvodu, Halderman se k tomu staví velmi skepticky. Zajímavé je, že příčinou nejsou ani tak technologické nedostatky, které dokážeme docela dobře řešit (demonstrovány jsou například některé protokoly, které umožní voliči ověřit si, že jeho hlas byl započítán správně, ale přitom mu znemožní dokázat, jak hlasoval), ale počítačová bezpečnost jako taková: Jak zajistit, aby někdo nemohl „ukrást“ hlas tím, že na klientskou stanici nainstaluje vhodný malware? Jak zabránit DoS (Denial of Service) útokům na volební servery? Jak zajistit nemožnost Man-in-the-Middle útoku v situaci, kdy jsou uživatelé systematicky učeni ignorovat varování o neplatných certifikátech? A když už se tohle všechno vyřeší, jak zajistit, aby v okamžiku mého hlasování za mnou nestál gangster, šéf nebo rodinný příslušník s výhrůžkou „koukej hlasovat pro X, nebo se ti stane Y“? Ve světle těchto už asi třicet let nevyřešených problémů vlastně ani pořádně nedošlo na kryptologické podklady pro celý proces, které by mě zajímaly nejvíc – ale je fakt, že pokud mám cedník, tak asi nemá příliš smysl detailně se zabývat tím, jak ucpat čtvrtou dírku od středu cedníku směrem k držadlu.

Zajímavou částí kurzu byly úseky, které se týkaly problematiky spolupráce úřadů s bezpečnostními experty. Možná to někde funguje i lépe, příklady z USA a Indie ale spíš naznačují, že obecný přístup úřadů je „My tu máme svoje skvělé stroje za spoustu milionů a do nich nám nikdo nebude rýpat. Co kdyby tam něco našel a ukázalo se, že jsou nepoužitelné? Tomu je třeba za každou cenu zabránit.“ Včetně zákazu vstupu do země a snahy o okamžitou deportaci Haldermana z letiště, když do Indie přiletěl podruhé.

 

Hodnocení, jestli jste v kurzu uspěli, se skládá ze tří částí: Za prvé, po každé lekci následuje test (s otázkami typu a), b), c), dobře může být libovolné množství odpovědí) z probrané látky. Stejně jako u Crypto-Class i tady je povoleno používat materiály, takže projít není velký problém. Ale ona ta látka není zase tak těžká, většina věcí je „samozřejmých“, když vám je někdo řekne, a dá se dosáhnout skoro plného počtu bodů i když test napíšete spatra.

Za druhé, po skončení kurzu jsme dostali úkol napsat esej na dvě zadaná témata. V tomto běhu kurzu šlo konkrétně o bezpečnostní analýzu fiktivního stroje pro bezpečné volby, který navrhl server The Onion (už z toho je asi zřejmé, že tato část byla spíš humorná – ale i takový přístroj jde seriozně zanalyzovat, a dokonce to má i smysl, když si člověk uvědomí bezpečnostní aspekty některých reálně používaných přístrojů) a o analýzu bezpečnostních aspektů projektu internetových voleb kanadského města Edmonton (jehož výsledky mají sloužit k rozhodnutí, jestli v budoucnu provádět přes internet i opravdové místní volby). Bylo to moc zajímavé, mě osobně ale dost omezoval striktní limit 500 slov.

Za třetí, po odevzdání všech esejí dostal každý účastník za úkol ohodnotit nejméně čtyři cizí práce podle dodaných kriterií. Tím se vysvětlila otázka, jak chce Halderman v rozumné době všech X tisíc prací přečíst a ohodnotit – on to vůbec dělat nebude, ohodnotíme si to vzájemně, a protože hodnocení každé práce bude několik, odpadnou výkyvy kvůli neseriozním hodnotitelům. Poté dostal každý možnost ohodnotit podle stejných kriterií i svoji práci, aby si mohl porovnat, co udělal dobře a co špatně.

 

Celkově hodnotím kurz velmi pozitivně. Sice jsem byl zklamán tím, jak bylo na vedlejší kolej odsunuto kryptologické pozadí celého problému, ale přesto jsem se dozvěděl spoustu zajímavých věcí. A to málo z kryptologie, co do kurzu přece jenom proniklo, za to stálo. Platit bych asi tento kurz nechtěl (na rozdíl od Crypto-Class, které by za to stálo, i kdyby bylo placené), ale zadarmo není nad čím váhat.

Certifikát o úspěšném dokončení kurzu.

Podobné příspěvky:

4 Responses to “Securing Digital Democracy”

  1. avatar xpckar napsal:

    V ČR je zásadní věta:
    „Pokud mám cedník, tak asi nemá příliš smysl detailně se zabývat tím, jak ucpat čtvrtou dírku od středu cedníku směrem k držadlu.“

    Příkladem budiž teprve nabíhající Základní registry (tj. jakou hrůzu se o nich ještě dozvíme) a již čile proudící, ale naprostej bezpečnostní a obecně technologickej paskvil Datový schránky. Co za tím vším je, a proč je to takovej šmejd, si každej domyslí. A stejně tak by technologicky dopadly elektronický volby. Úplně stejně. Bezpečnostní otázky by se ignorovaly, a když, tak by se řešila jedna ze sta, a to právě taktéž zabugovaným lepením jedný díry cedníku, při kterym by vznikly dvě další, přičemž by se to oslavovalo jako geniální úspěch.

  2. avatar čwojke napsal:

    Tak věc s gangsterem lze vyřešit jednoduše, internetové volby budou doplňkem normálních. Hlasuj si kolikrát chceš, ale stále máš možnost využít klasické místnosti, což zneplatní hlas elektronický. DoS… nepomohlo by, pokud by elektronické volby trvaly delší časový okamžik a začaly před normálními?

  3. avatar pepak napsal:

    Cejvik: Pokud tě to zajímá, tak si ten kurz dej, až se bude příště opakovat. Jak píšu, stojí to za to.

    (Tajnost voleb je potřeba taky jako obrana proti uplácení voličů někým jiným než politickými stranami v jejich programech – když mi někdo dá stovku za hlas, tak mu ho můžu slíbit, ale on nemá možnost si ověřit, že jsem to dodržel…)

    (Zrovna tak dobře to jde řešit bez PINu tak, že se může hlasovat několikrát a počítá se jen poslední hlas.)

    (Že jsou ty věci dávno funkční, to bych si dovolil pochybovat. Asi jsou implementované, to ano, ale funkční? Leda pokud mám na „funkční“ hodně nízké nároky.)

  4. avatar Cejvik napsal:

    Ahoj, pěkné čtení. S těmi aspekty mě to právě nejde do hlavy, raději bych se zbavil anonymity koho volím za pohodlí hlasovat např. z domova. Je pravda že mi může být pak vyhrožováno, ale je to něco jako znásilnění – i po můžeš podat trestní oznámení. Asi nejlepší metoda mi vychází hlasování pomocí strojově čitelných kupónů, podobně jako to má např. Sazka, nebo pomocí klíče na USB s tím, že pokud zadám správný PIN tak volba je platná, nebo mohu pomocí zadání modifikovaného PINu pod nátlakem a spustí se tzv. tichý poplach – hlasování napíše že je OK, ale hlas nebude započten a k dotyčnému může být např. poslána bezpečnostní služba. Všechny tyto věci přeci jsou už dávno funkční, jen na místech, kde je nehledáme 🙂

Leave a Reply

Themocracy iconWordPress Themes

css.php