Електронно гласуване
TRANSCRIPT
Електронно гласуванеБожидар Божанов
Vanity slide• все още програмис’че• http://blog.bozho.net• http://techblog.bozho.net• http://twitter.com/bozhobg• съветник за електронно управление на
вицепремиера Р.Бъчварова
Електронно гласуване• e-voting / i-voting / машинно гласуване /
дистанционно електроно гласуване• a.k.a. “да си гласувам от вкъщи”• звучи примамливо• ...и рисковано
Сложна задача• неконтролирана среда• еднократно гласуване И тайна на вота• защита от принуда• проверимост• независими наблюдатели• неподменяемост на резултатите• защита от вируси и атаки
Преди технологиятаФундаментален въпрос:
• Нужно ли е всеки да разбира целия механизъм на гласуване?
• В момента разбира ли го всеки?
Идентификация• необходимо условие• e-id (“чип в личната карта”)• други практики
• предварителна регистрация• скреч-карти• TAN
• реално използване: 2019
Кой би го разработил?• компании с експертиза в сферата
• Cybernetica AS (Естония)• Scytle (Швейцария, Франция, Норвегия)• ...
• важното е как
Как• open source от ден 1
• (според ЗИД на ЗЕУ)• peer-reviewed• одитирана• с пилотни проекти и поетапно използване
• първо присъствено• 7 дни преди хартиените избори
Чакай, чакай...
Има неотговорени въпроси.Има проблеми за решаване.Има много шум...
Невалидни аргументи “за”• щом електронното банкиране работи, и
електронното гласуване ще• пробиви и измами• различна задача
• ако някой може да хакне гласуването, по-добре да хакне банките• а защо не и двете?
Невалидни аргументи “за”• “какво толкова може да стане”
• всичко• имаме много добри софтуерни
специалисти• задачата е трудна и нишова
• ще реши проблемите на демокрацията ни• не, няма (но може да помогне)
Невалидни аргументи “против”• някой ще ви купи IP-то• творение на дявола е• трябва да е 100% сигурно
• хартиеното не е 100% сигурно• някой може да подмени всичко• няма гаранция за тайната на вота• няма гаранция за еднократно гласуване
Невалидни аргументи “против”• “В големите държави не се ползва”• “Германия го забрани”• “Естонското не работи”
• основно OpSec проблеми• client malware• пресконференция седмица преди изборите?
Бареков 2.0• “Наши хора ще го правят”
Въпроси• тайна на вота и еднократно гласуване• проверимост на валидността на
резултата• достъп на наблюдатели• защита от контролиран вот• ползваемост
Тайна на вота• принцип на двойния плик (double-
envelope)• разделянето на самоличностите преди броенето• гласовете са криптирани с публичен ключ на
броящия сървър• анонимизираните гласове се носят на диск • частният ключ се активира от няколко души
едновременно
Тайна на вота• blind signature
• индигиран плик с името ви и печат на секцията• потвърждава гласуването, без знание как• доверие в клиентския софтуер
Тайна на вота• Mixnets
• слоеве на декриптиране• получателят не знае кой е изпращачът• Tor-like
Прегласуване• е-гласуване преди хартиено
• ръчно премахване на електронния вот• автоматично гарантира 1 човек - 1 глас• при двоен плик
• неанонимизираната бюлетина се заменя• при blind signature и mixnet
• използване на разписка с код
Проверимост• E2E verifiable• “stored as cast”, “counted as stored”• разписка, вкл. на мобилен телефон
• проверка на гласа за ограничено време (риск за тайната на вота)
• проверка за съвпадение на кодове
Валидност на резултата• индивидуална проверка• независимо преброяване• публичен бюлетин
• bulletin board / public ledger (blockchain, votecoin?)• push към регистрирани наблюдатели?
Наблюдатели• следене на публичните логове (или
blockchain транзакции)• на място в “сървърното”• стрийминг
Защита от контролиран вот• panic/tamper PIN
• PIN-ът, написан наобратно :)• трудна имплементация
• камера с разпознаване на лице• частична гаранция, че няма друг пред
компютъра• cooldown период
• против гласуване от един компютър
Ползваемост• ако хартиеното бъде премахнато и от
секциите• touch-screen-ът е много интуитивен
• всеки може да се оправи. Дори полу-грамотни• UX-тестове
Проблеми• client-side malware• DDoS атаки• мрежови атаки (dropping packets)• remote penetration attacks• OpSec• вътрешни атаки• 0-day vulnerabilities
Client-side malware• desktop клиент vs браузър• промяна на гласа, неизпращане на гласа,
разкриване на гласа преди криптиране• решения:
• 2 factor (sms, app)• биометрично потвърждение• четец с хардуерна клавиатура и дисплей• гласуване от виртуализирана среда
DDoS атаки
DDoS атаки• атаките срещу ЦИК и други институции -
имиджов ефект• DDoS защита:
• подготвеност и адекватни процедури• tier 1 доставчици, телекоми• блокиране на command & control сървъри• scrubbing центрове• отрязване на външен трафик
Мрежови атаки• анализ на пакети => спиране на гласуване• решения:
• retry• откриваемо (не получаваш потвърждение)• Tor / mixnets• гласуване на хартия
OpSec• operational security
• пароли• DMZ• HSM• откриване на нахлуване, аномалии• audit trail
основните критики срещу Естонияпроверяемост на резултатите
Вътрешни атаки• OpSec, audit trail• проверимост чрез публичния “виртуален
paper trail” (напр. blockchain)• ДАНС
0-day уязвимости• ...кофти
• общи процедури за касиране, отлагане и др.• ако намесите са откриваеми => patch
Общи процедури• касиране на онлайн резултатите• уведомяване на гласувалите онлайн• отлагане на гласуването
(не са толкова скъпи и трудни, колкото при хартиеното)
Хартиено гласуване?• някои от горните проблеми важат и за
хартиеното гласуване• резултатите се агрегират и изчисляват
на компютър• с проверки и paper trail. • но какво ако “не излезе”?
Да бъдем параноични• всичко се обърква• вирусите са реалност• атаки от други държави са реалност• опитите за манипулации са реалност• “то си работи” не работи.• “изборната сигурност е национална
сигурност”
Оттук нататък?• не всички проблеми са 100% адресирани• няма 100% сигурно решение• търсим решение, което не позволява
мащабни манипулации• изглежда такова има
• нужда от още R&D• динамична/пряка демокрация• длъжни сме да го направим
Източнициhttps://eprint.iacr.org/2015/809.pdfhttps://www.usvotefoundation.org/sites/default/files/E2EVIV_full_report.pdfhttp://static.usenix.org/legacy/events/evtwote11/tech/slides/haenni.pdfhttp://www.e-voting.cc/wp-content/uploads/Proceedings%202010/8.1.Spycher_2010.pdfhttp://www.chaum.com/publications/Remotegrity-Design-and-Use-of-an-End-to-End-Verifiable-Remote-Voting-System.pdfhttp://www.scytl.com/wp-content/uploads/2014/11/IDC-report_Implementing-End-to-End-Verifiable-Online-Voting_Enabling-Secure-Transparent-and-Tamper-Proof-Elections.pdfhttps://www.informatik.tu-darmstadt.de/fileadmin/user_upload/Group_SECUSO/Papers/GI_Workshop_2014.pdfhttp://download.springer.com/static/pdf/730/chp%253A10.1007%252F3-540-45961-8_15.pdf?originUrl=http%3A%2F%2Flink.springer.com%2Fchapter%2F10.1007%2F3-540-45961-8_15&token2=exp=1446764746~acl=%2Fstatic%2Fpdf%2F730%2Fchp%25253A10.1007%25252F3-540-45961-8_15.pdf%3ForiginUrl%3Dhttp%253A%252F%252Flink.springer.com%252Fchapter%252F10.1007%252F3-540-45961-8_15*~hmac=a7540fc29317746377a541091e07619a274e2048dbbfeb46f2abf76a58bf9918https://vote.heliosvoting.org/http://e-collection.library.ethz.ch/eserv/eth:3046/eth-3046-01.pdfhttp://followmyvote.comhttp://www.scytl.com/wp-content/uploads/2014/11/IDC-report_Implementing-End-to-End-Verifiable-Online-Voting_Enabling-Secure-Transparent-and-Tamper-Proof-Elections.pdfhttp://www.bitcongress.orghttps://bitcoinmagazine.com/21031/blockchain-technology-key-secure-online-voting/https://people.csail.mit.edu/rivest/voting/papers/JakobssonJuelsRivest-MakingMixNetsRobustForElectronicVotingByRandomizedPartialChecking.pdfhttp://arxiv.org/abs/1401.4151https://www.regjeringen.no/globalassets/upload/krd/kampanjer/valgportal/valgobservatorer/2013/rapport_cartersenteret2013.pdfhttp://techblog.bozho.net/why-all-the-fear-in-electronic-voting/
Благодаря