Про электронное тайное голосование
Как обеспечить тайное голосование в электронной форме, онлайн, со своего компьютера, не выходя из дома? Так, чтобы один человек мог подать только один голос, причём тайно? Как сделать, чтобы он мог верифицировать результаты, то есть проверить, как учтён его голос?
Задачка не из легких, нужно:
- Убедиться, что человек авторизован и он имеет право голоса,
- Выдать ему строго один анонимный бюллетень,
- Заверить факт выбора конкретного кандидата,
- Анонимно принять его голос, с его личного компьютера,
- Сделать это удобно для избирателя.
Скажу честно, эту идеальную постановку задачи я не решил. Но получился алгоритм, дающий достаточную анонимность, точность и относительно небольшое неудобство для избирателей.
Сразу отклоним существующий алгоритм онлайн голосования с электронной подписью каждого голоса, как это сделано компанией Votenet в Эстонии – ни о какой анонимности и речи быть не может, все голоса подписаны ЭЦП, что исключает всякую анонимность. Надеяться на то, что «голоса» не вскроют ну… как-то не по политически….
Рассмотрим классическую, «бумажную» модель голосования с позиции ИТшников и сравним, что в ней изменится в онлайне…
- Приходит в избирательный участок человек, авторизуется. Это уже решено ЭЦП + биометрия, если нужно – видеоконференция с избирательной комиссией. Человек работает в защищённой среде, в своём кабинете.
- По результатам регистрации в общий доступ выкладывается список адресов избирателей. Уже на этом этапе каждый может проверить, что он внесен в списки, в его квартире не прописалось еще 146 человек, а по соседству за ночь не вырос новый микрорайон. (добавлено из поста AlexSkyhabrahabr.ru/post/156423. Спасибо за эту важную мысль!)
- Затем ему даётся один типовой, одинаковый бумажный бюллетень. В электронном виде заменяем его некоей произвольной, случайной и достаточно длинной символьной последовательностью, которую человек может скопировать со специальной страницы. Эти последовательности генерируются сериями, одинаковыми для всех, голосующих в данное время (см. ниже). К этой страничке избиратель получает доступ только 1 раз за голосование. Для повторного доступа ему придётся полностью снова пройти авторизацию, причём повторное голосование «стирает» результаты предыдущего (тут, как раз, опыт Эстонии ценен). Наверно, еще целесообразно давать человеку возможность переголосования не ранее, чем через сутки… Так защита от DDos надёжнее будет.
- Избиратель идёт в кабинку, где принимает решение, ставит отметку и опускает бюллетень в урну. А вот тут я предлагаю в электронной версии сделать так:
- «кабинка» — страница для голосования – находится в абсолютно свободном доступе. То есть избиратель может подключиться к ней со своего компьютера, используя любые мыслимые и немыслимые анонимайзеры. Это гарантирует анонимность.
- На странице – поля для ввода бюллетеней, по числу вариантов голосования. Никакой агитации, естественно…. Хотя смысла в этом ограничении я не вижу – ведь весь Интернет рядом. Система настроена так, что принимает только «бюллетени» — символьные последовательности, из шага 2.
- Избиратель копирует бюллетень в поле напротив выбранного варианта и жмет кнопку «Голосовать».
- Собственно, в бумажной версии на этом можно и закончить. Но в электронной версии грех не поставить верификацию голоса – некую отметку на бюллетене, подтверждающую что именно этот бюллетень проголосовал именно за этот вариант. Как это сделать анонимно? Добавить свою случайную цепочку символов в дополнительное поле – «Квитанция»! Это можно сделать просто попросив пользователя нажать 30-50 случайных клавиш или же, как это делается в банковских алгоритмах цифровых подписей, – поводить некоторое время мышкой по экрану. Получаем и уникальную подпись, и анонимность. Тогда в ответ избирателю выдаётся хэш от кода бюллетеня и квитанции. По этой квитанции человек всегда сможет узнать, как был учтён его голос. Эту идею я взял у Davidа Bismarkа: www.ted.com/talks/lang/eng/david_bismark_e_voting_without_fraud.html
- Ну и конечно, для отпугивания ботов (помним, что страничка –кабинка в свободном доступе) надо поставить ещё и длинную-предлинную CAPTCHу.
На первый взгляд, система, соответствует указанным в начале требованиям. Ура? Не совсем. Ясно, что систему будут ломать. Если «вброс бюллетеней» в «бумажных» выборах не составляет труда, то что же ждать, если можно просто скопировать и вставить строчку символов? Просто арендуем в Китае десяток бараков с «капча-кликерами» и ….profit!
Я предлагаю следующие механизмы защиты от «вбросов». Целых четыре.
Собственно, первое, самое очевидное, — счётчик выданных бюллетеней, поскольку мы точно знаем, сколько человек зашло на страничку получения бюллетеня в каждый момент времени. Так вот, если бюллетень конкретной серии получило N человек (а они могут находиться и в разных городах – анонимность соблюдается), то в «кабинке для голосования» можно организовать и обратный отсчёт. А как только ВНЕЗАПНО кто-то пытается подать N+1 -й бюллетень той же серии (то есть, прошёл «вброс»), вся серия аннулируется, бюллетенями даётся статус «испорченный» и, все голоса, кто голосовал этой серией, аннулируются тоже, людям предлагается проголосовать снова – начинаем с п.1.
Второе – Серии бюллетеней для голосования регулярно, но через случайные промежутки времени (30-60с), меняются. Совсем малым (секунды) это время быть не должно – возникнет угроза анонимности. В городе-миллионнике за одну секунду, при участии в выборах 50% избирателей, при продолжительности выборов 7 дней, как в Эстонии, каждую секунду будут голосовать всего 15-30 человек. Для обеспечения анонимности нужно всё-таки, что бы один бюллетень получили порядка 1000 избирателей, отсюда интервал в 30-60 с.
Третье. Одновременно «выдаётся» несколько «серий» бюллетеней. Зачем это нужно – чуть ниже, какую именно серию показать каждому следующему избирателю, выбирается, опять же, случайно.
Четвертое – каждая серия бюллетеней не вечная, а имеет «время жизни» — срок, когда её «принимает» «страничка-кабинка для голосования». Например, 20-30 минут. После этого бюллетень теряет силу и, при попытке голосовать просроченным бюллетенем, избирателю предлагается снова пройти авторизацию, см. п.1. Это позволит избежать махинаций с «отложенным» голосованием, когда кто-то набирает бюллетеней, чтобы потом вбросить их в конце. Ну а если честный человек не сможет за 30 минут определиться с выбором… то, наверное лучше ему зайти завтра ещё раз…
Модель случайного периода выдачи и смены серий введена для того, чтобы избежать атак вида «синхронного вброса». Например, если бы какие-то манипуляторы знали точный размер серий бюллетеней и эта серия выдавались бы все голосующим последовательно (изначально у меня была такая схема), то можно было бы отследить появление первого бюллетеня новой серии и организовать «вброс» ровно по «количеству» бюллетеней, тем самым не дав никому больше проголосовать в этой серии и количество бюллетеней совпадёт. При случайной смене бюллетеней это становится невозможным: точное количество «выданных» бюллетеней известно только в последний момент «выдачи» этой серии, так как промежуток времени случаен, а количество «выданных» бюллетеней определяется количеством избирателей, голосующих в этот промежуток. Достаточно стохастическая величина, я думаю.
Конечно, такая схема не совсем удобна избирателям, но позволяет исключить вбросы, так как делает их крайне затратными и рискованными – после каждого «вброса» придётся переголосовывать «до посинения». А, например, после 100 переголосований, уже можно будет выявить лиц, которые, почему-то, всегда «оказывались» в каждом переголосовании и начать с ними… индивидуальную работу.
Подтасовки тоже исключаются, по методу Дэвида Бисмарка – квитанциями.
Чтобы избиратели были дополнительно уверены в тайности голосования, надо публиковать все «просроченные» бюллетени, чтобы люди могли убедиться что у них действительно все они были типовыми.
Да, такое голосование может занять не один день, но для него не нужно держать открытой сеть избирательных участков по всей стране. Так что, как показывает опыт Эстонии, электронное голосование вполне может идти несколько дней…
Источник
За закрытыми дверями. Как огромная империя объявила войну коррупции, угрозам и доверилась жребию
Т айное голосование, когда участники голосуют анонимно, появилось еще в древности, когда политика уже стала важной частью общественной жизни. Известно о существовании тайного голосования в Древней Греции, однако наибольшее развитие оно получило в Римской республике (509-27 годы до н. э.), где шла борьба против коррупции и чрезмерного влияния аристократии на граждан с более низким статусом. Анонимная форма подачи голосов служила тому, чтобы защитить граждан от угроз и подкупа со стороны патронов и богатых землевладельцев, которые в случае открытого голосования не могли голосовать «по своей совести». Сейчас это все обеспечивается современными технологиями, а процесс голосования стал значительно проще, чем в Древнем Риме. «Лента.ру» рассказывает, как проводилось тайное голосование в Древнем Риме и к чему это привело.
С 17 по 19 сентября 2021 года в России пройдут выборы депутатов Государственной Думы. Впервые сразу в нескольких регионах страны избиратели смогут проголосовать не только опустив бюллетень в урну, но и через систему дистанционного электронного голосования.
Электронное голосование пройдет в Москве, Курской, Мурманской, Нижегородской, Ростовской, Ярославской областях и Севастополе.
Наиболее продвинутая система онлайн-выборов работает в столице. Тайну и достоверность выборов здесь обеспечит система блокчейн — та же технология, которая используется при майнинге биткоинов и других криптовалют.
Преимущества такого подхода очевидны: в блокчейне голоса хранятся в зашифрованном виде, благодаря чему их невозможно подделать или раскрыть личность конкретного избирателя.
Шифрование производится с помощью ключа, который публикуется в открытом доступе. Однако с помощью этого же ключа расшифровать результаты голосования нельзя. В итоге сохраняется тайна голосования и полностью исключается любая подтасовка.
Прием заявок на участие в онлайн-голосовании осуществляется со 2 августа по 13 сентября.
Как офлайн-, так и онлайн-голосование будет проходить в течение трех дней. Граждане, выбравшие возможность электронного голосования, смогут реализовать свое конституционное право с 8:00 17 сентября по 20:00 19 сентября (по московскому времени). Для всех регионов, кроме Москвы, онлайн-голосование будет проводиться на портале vybory.gov.ru, через Госуслуги. Москвичи смогут проголосовать на сайте mos.ru.
Избирателю необходимо быть зарегистрированным по месту жительства в субъекте России, который проводит дистанционное голосование, либо не зарегистрированным по месту жительства на территории России и получившим гражданство в упрощенном порядке. При этом гражданину должно исполниться 18 лет. Жители регионов должны иметь подтвержденную учетную запись на Госуслугах, а москвичи — полную учетную запись на mos.ru. Перед голосованием обязательно надо подать заявку — москвичи могут сделать это на сайте mos.ru.
Открытое голосование в Древнем Риме
В Риме была развита система покровительства, когда богатый человек помогает менее обеспеченным людям деньгами, едой, деловыми советами и юридической помощью. Взамен клиент оказывал покровителю услуги в личной и общественной жизни. Одной из наиболее значимых была политическая поддержка, которая включала агитацию за покровителя и голосование за него во время комиций.
В ранней Римской республике голосование было открытым и проходило во время народных собраний — центуриатных и трибутных комиций.
Центуриатные комиции созывались для избрания консулов, преторов (аналог гражданских городских судей) и цензоров (ведали переписью населения и имущества). Все население мужского пола подразделялось на центурии — всего их было 193, — и каждая центурия могла отдать один голос.
Перед тем как отдать голос, внутри каждой центурии проходило совещание. Важно то, что сначала голосовали центурии, в которые входили люди высокого статуса и богатства — например, крупные землевладельцы. Центурия первого класса, которой выпадал жребий подавать свой голос первой, называлась centuria praerogativa, и ее выбор объявляли до того, как проголосуют остальные центурии. Избиратели собирались за огороженной территорией и голосовали, помещая камешек либо избирательный бюллетень в урну. Голосование останавливалось, если первые 98 центурий оказывались единодушными в своем выборе.
Проводили также трибутные комиции, когда граждане Рима собирались по территориальным округам. Всего существовали 35 таких округов (триб). Голосовали они за принятие законов, судебные решения и избрание низших магистратов. Что любопытно, уже тогда голосование было очень похоже на современное. Избиратели заходили в большое деревянное сооружение без крыши, которое имело 35 закрытых помещений, или «загонов» — по числу округов. А голоса записывали отметками в восковых табличках специальные ответственные лица.
Совершенно естественно, что при открытых голосованиях возникала ситуация, когда объявленный результат влиял на голоса остальных центурий.
Мало кто хотел своим решением оскорбить не только своего патрона, который был кандидатом, но также землевладельца или военачальника, уже проголосовавшего за него. Кроме того, влиятельные люди могли прибегнуть к прямым угрозам. Тот, кто подсчитывал голоса, сам был влиятельным человеком, скорее всего, сенатором, и он видел, как и кто голосовал.
Война с коррупцией
Открытое голосование способствовало тому, что многие кандидаты прибегали к подкупу и открытой агитации, чтобы убедить людей отдать свои голоса именно за них. Это называлось ambitus — просьба о подаче голосов, и ее проявления могли быть достаточно широкими. Даже появление кандидата в белой тоге в общественных местах, в том числе на Марсовом поле, могло рассматриваться как попытка повлиять на голоса избирателей. Например, один из законов, направленных против ambitus, запрещал кандидатам надевать в преддверии выборов белые одежды. Кроме того, во время прогулки кандидата мог сопровождать номенклатор — специальный человек, который называл ему имена встречных людей — потенциальных избирателей. Обращение по имени служило косвенным комплиментом, который не мог не понравиться избирателям.
Кроме ambitus, существовали и другие способы получить голоса. В письме Марку Цицерону его брат Квинт описывал различные стратегии предвыборной кампании. Одним из самых важных советов считался заводить дружбу с людьми более высокого статуса, которые обладали значительным влиянием. Кроме того, нужно было напомнить всем должникам, чтобы они оплатили долги своей поддержкой. Также следовало быть вежливым и раздавать множество обещаний, даже если большинство из них заведомо невыполнимо.
Пытаясь подкупить голосовавших, кандидаты устраивали щедрые банкеты и игры или даже напрямую подкупали избирателей вином, маслом или деньгами. Например, Тит Анний Мило, агитируя за то, чтобы стать консулом, в 53 г. до н.э. пообещал каждому избирателю в трибах по тысяче ослов.
В течение II века до нашей эры был принят длинный ряд законов, направленных на подавление амбитуса и широко распространившейся коррупции.
Закон Lex Poetelia, принятый в 358 г. до н.э., запрещал кандидатам посещать многолюдные места. Те, кто был осужден за нарушение закона, не могли баллотироваться в течение десяти лет. Закон Orchia 182 г. до н.э. ограничивал сумму, которую можно было потратить на банкеты, а закон Baebia, принятый год спустя, был направлен на прямую борьбу с амбитусом. Позднее были введены другие антикоррупционные законы. Например, закон Туллия, принятый в 63 г. до н.э, запрещал гражданину устраивать публичные увеселительные мероприятия за два года до того, как он официально станет кандидатом.
Однако эти законы, похоже, не имели большого эффекта. Наконец, во второй половине II века до нашей эры появляется тайное голосование, также направленное против подкупа голосующих.
Законы о тайном голосовании
Тайное голосование было впервые введено законом Gabinia tabellaria 139 г. до н.э., который касался выборов магистратов во всех собраниях. Считается, что причиной принятия такого закона стал случай с консулом Луцием Аврелием Коттой, который привлекался к суду по обвинению в злоупотреблении властью, однако был оправдан, поскольку подкупил судей.
Тайные голосования при рассмотрении уголовных дел были введены законом Cassia tabellaria в 137 г. до н.э., предложенным трибуном Луцием Кассием Лонгином Равиллой. Тогда принятию закона воспротивился трибун Марк Анций Бризон, который пригрозил использовать свое право вето, однако в конце концов уступил — под влиянием консула Сципиона Эмилиана, который указал ему на широкую поддержку закона в обществе. Противостояние общественному мнению могло обернуться политическим самоубийством.
Третий закон о тайном голосовании был введен в 131 г. до н.э. Гаем Папирием Карбоном и применялся к ратификации и отмене законодательства.
Первые три закона о голосовании не были полностью эффективными, поэтому вслед за ними последовал ряд других законов, поддерживающих тайну голосования. В 119 году до н.э. трибун Гай Марий ввел закон, который сузил дорогу, ведущую к урне для голосования, чтобы люди, не участвовавшие в голосовании, не могли стоять на мостовой и запугивать избирателей. Цицерон негативно отзывался обо всех законах, предлагая их отменить.
Наконец, закон Caelia 107 г. до н.э. расширял закон Cassia и включал в него государственную измену. Закон был введен из-за сокрушительного поражения римской армии под командованием консула Луция Кассия Лонгина, легат которого Гай Попиллий Ленат заключил соглашение с галлами, чтобы спасти жизни солдат, что считалось неприемлемым в Риме. После принятия закона Попиллий был приговорен к ссылке.
Ход тайного голосования
В день голосования перед комицией проводились ауспиции — гадания по поведению птиц. Авгуры определяли, благоприятствует ли воля богов проведению выборов. Политически мотивированный авгур даже мог отменить комицию, чтобы отложить голосование. В Древнем Риме назначение и инаугурация любого магистрата, решения, принимаемые народным собранием, и продвижение любой кампании всегда требовали ауспиции. Если ауспиция была проведена неверно, это считалось оскорбительным для богов и могло служить поводом к отмене принятого решения. Ответственность за исполнение действий по результатам ауспиции лежала на магистратах.
Как и в случае открытого голосования, избиратели проходили по узкому деревянном помосту, после чего человек, следящий за выборами, вручал им бюллетени. После голосования бюллетень опускался в плетеную урну. За урной наблюдал рогатор или охранники — на эти почетные должности назначались выдающиеся люди. Избиратели выражали свои предпочтения, вписывая специальной палочкой — стилусом — инициалы предпочитаемого кандидата. Предполагалось, что они напишут имя собственноручно, и обнаружение нескольких бюллетеней с одинаковым почерком было доказательством подделки.
Историки не знают точно, могли ли граждане голосовать сразу за несколько должностей или могли вписывать только одно имя. Некоторые специалисты отстаивают теорию одного голоса, когда в одном туре голосования не всегда удавалось выбрать сразу десять трибунов или двух консулов. Однако центурия или триба, скорее всего, должны были предоставить столько имен, сколько было выборных должностей.
На судебных собраниях присяжным вручались бюллетени, на одной стороне которых была написана буква А (absolvo — я оправдываю), а на другой D (damno — я осуждаю). Присяжные должны были стереть одну из букв, не оглашая своего вердикта устно. Можно было стереть обе буквы, что указывало на то, что присяжный не мог принять решение. При голосовании за законы избиратели писали UR, что означает Uti rogas (как вы просите), или А — как antiquo (оставить в прежнем виде).
Голосовать могли только мужчины — граждане Рима. Женщины, рабы и те, кто жил за пределами Рима, к выборам не допускались. Историки предполагают, что приходилось отслеживать, кто имел право голоса, и велись централизованные списки избирателей, или гражданам выдавались какие-то формы, позволявшие их идентифицировать. Подсчитано, что на выборах могли проголосовать не более 6000-16800 человек. С учетом того, что количество избирателей составляет 910 000 человек, даже по самым смелым предположениям явка составляла всего лишь десять процентов.
Последствия реформ
Все законы о голосовании критиковал Цицерон в книге De Legibus. Знаменитый мыслитель изображал авторов избирательных бюллетеней демагогами, снискавшими расположение масс. Он также прошелся по политикам, принявшим законы, которые вводили тайное голосование. Например, трибуна Авла Габиния, который сыграл важную роль в принятии lex Gabinia tabellaria, Цицерон называл безвестным и подлым агитатором. Такое отношение к Габинию, возможно, было продиктовано тем, что он происходил из семьи с низким статусом — скорее всего, рабского происхождения. О законе Cassia tabellaria Цицерон отозвался как о «сильном потрясении устоев», а Гая Папирия Карбона, принявшего третий закон, он назвал «подстрекателем сброда».
По мнению Цицерона, «людям не следовало предоставлять возможность скрывать злые намерения при голосовании и держать оптиматов в незнании об их истинном мнении». Цицерону не нравилось, что голосующий может поступать так, как ему угодно, несмотря на ранее данные обещания. Это шло вразрез с традиционными патрональными отношениями и служило дополнительным препятствием для политиков, пытающихся заручиться широкой поддержкой своей кандидатуры.
Тем не менее законы о голосовании ограничили влияние аристократического класса и расширили свободу выбора для избирателей, а также затруднили взяточничество и попытки повлиять на электорат, хотя и не победили их до конца. В целом благодаря внедрению тайного голосования выборы стали более конкурентными.
Источник