All streams
Search
Write a publication
Pull to refresh
5
0
Андрей @UncleAndy

User

Send message
«Результаты в целом» должны публиковаться в виде базовых голосов. Если ЦВК публикует только сводные результаты — это не голосование, а фарс. Публикация голосов должна быть вообще базовым требованием ко всем голосованиям. Выше в комментариях я описал способ при котором ЦВК в принципе не сможет что-либо изменить. Т.к. при первой публикации зашифрованных результатов, ЦВК не будет знать сколько голосов за кого отдано. А мошенничать на более позднем этапе он не сможет, т.к. для этого понадобятся закрытые одноразовые ключи пользователей, которые, даже сам пользователь лучше-бы уничтожал сразу после отправки голоса.
ЦИК не сможет «подделать» ЭЦП реального пользователя. В принципе, не сможет.
Есть две, почти не взимосвзанные проблемы:
1. Верификация голосующих;
2. Защита голосов от модификации владельцем системы голосований;

Мое предложение выше касается только проблемы 2. Проблема 1 решается совершенно другими средствами — сетью взаимного доверия (http://habrahabr.ru/post/156097/#comment_5331929).
Хочу, как один из авторов идеи, пояснить что подразумевается под сетью доверия и как она должна работать.

Сеть доверия — это группа людей, которые собираются голосовать, как минимум, в одном субъекте голосования. Т.е. это те, которые заинтересованы в том, что-бы в голосованиях принимали участие только «правильные» голосующие.

Сеть доверия работает независимо от способа ее реализации и транспорта, который используется для ее работы.

Средством для технической реализации сети доверия была выбрала ЭЦП. Для каждого человека будет существовать несколько уровней доверия по критериям:
1. «Верификация». Уровень доверия к тому, что данный ключ ЭЦП принадлежит данному человеку и человек — реален;
2. «Доверие». Уровень доверия к тому, что данный человек честно удостоверяет чужие «верификации».
3. «Принадлежность конкретному субъекту голосования». Уровень доверия тому, что данный голосующий может голосовать в определенном субъекте голосования.

Эти три критерия — основа. Критерии 1 и 2 — это основа самой сети доверия. Критерий 3 — уже более практический критерий для использования в системах голосования.

Такая сеть — не панацея от мошенников. Она всего-лишь переносит в электронную форму взаимоотношения, существующие в реальном мире. Человека называют определенным именем лишь потому, что большинство согласно его так называть. Здесь используется тот-же принцип.

Да, эта система не будет работать, если большинство в ней окажутся мошенниками. Но если таковых будет не очень много — они будут выявляться и «изолироваться» в сети так, что они не смогут больше вести деструктивных действий. Т.к. все будут знать что данному человеку доверять нельзя.

Как понятно из описания, сеть доверия — это механизм с обратной связью. Как он будет функционировать и будет-ли от него польза, в большей степени зависит от ее пользователей.
Интересный момент. Сделать не нулевой «стоимость» верификации. Это нужно обдумать. Спасибо за идею.
Верификация — это вообще отдельная от самого голосования задача.

«Подтверждать принадлежность этих данных и ключа определенному человеку будут обычные участники этой системы. Для этого им необходимо будет очно проверить соответствующие документы данного человека, проверить соответствие идентифицирующего хэша указанным документам и, при совпадении, произвести в системе процедуру удостоверения этих данных с помощью своей ЭЦП. Таким образом, сообщество будет само контролировать идентификацию пользователей.»

Т.е. идентификация человека будет производится с помощью сети взаимного доверия. Да, может быть такое, что какой-то группе захочется наплодить виртуалов для какого-то голосования. Сделать это они смогут. Но в сети взаимного доверия должна существовать обратная связь. В конечном итоге, такие виртуалы обнаружатся и те, кто их создал больше никогда никого не смогут заверить (что не исключает их участие в голосованиях).
«реально лечится только дублирующей системой голосования и сверкой результатов.»

Не согласен. Эта проблема решается использованием криптографии. Выше я предложил способ, который именно эту проблему вполне успешно решает.
Голос можно шифровать не основным, а одноразовым ключем пользователя, который тот сгенерирует именно для данного голосования.

В таком случае порядок голосования следующий:
— пользователь отправляет «расписку об участии», подписанную своей персональной ЭЦП;
— пользователь отправляет свой, зашифрованный своим одноразовым ключем, голос;
— по окончанию голосования, ЦВК публикует все пришедшие голоса в зашифрованном виде;
— после такой публикации все пользователи отправляют в ЦВК свой одноразовый ключ, которым можно расшифровать его голос;
— ЦВК публикует все поступившие ключи и результаты по расшифрованным с их помощью голосам;

В таком варианте что-то подделать через ЦВК будет практически невозможно. Т.к. после публикации зашифрованных голосов любые махинации будут раскрыты.

В этом методе нет прямого решения проблемы вброса. Но, как здесь уже отмечали, она решается другими методами. И я лично считаю, что вброс можно усложнить настолько, что он будет очень сложно осуществимым.
Для общественного контроля кроме кода, общественности придется давать постоянный доступ на сервер (или сервера), на котором он работает. Только так можно получить гарантию что в реальности работает тот-же код, который открыт.
Станислав, главная ваша ошибка в том, что вы опять (как и многие до вас) не рассматриваете вариант «владельца системы голосований — злоумышленника». Если его рассматривать, то предложенные вами меры по предотвращению вбросов бессмысленны. А без них остается банальная задача идентификации своего голоса голосующим в бюллетене с результатами.

Вообще, что-бы не допускать вброса, можно использовать другую систему. За счет некоторого снижения анонимности.

При голосовании пользователь отправляет в систему последовательно два документа: подписанную личной ЭЦП «расписку об участии» в выборах и непосредственно голос с уникальным идентификатором (можно использовать и предлагаемый вами способ его формирования).

При таком голосовании можно делать просто — не пускать в систему голоса, которые увеличивают их количество на величину, большую чем количество имеющихся «расписок об участии».

Конечно, это не панацея.Возможен «перехват» голоса мошенником если он сможет отправить свой голос в промежутке между отправкой пользователем «расписки» и своего голоса. На уровне сервера возможно косвенное раскрытие тайны голоса по таймингу поступивших «расписок» и голосов. Такой способ, конечно, можно дорабатывать.
Я не совсем понял. Для использования этого протокола необходим апгрэйд ПО на всем оборудовании между конечными точками или достаточно поставить его на конечные точки?
Понятно. Спасибо за ответ. К сожалению, ваш вариант дороговат для широкого применения. А я ищу именно такой — который без особых проблем мог-бы приобрести средний человек в России.
Я имею ввиду именно фабричный дефект. Если вдруг обнаруживаются проблемы с чтением с правильным паролем.
В связи с высокой ценой такой вопрос — какая гарантия на эти флэшки? Что будет если в один «прекрасный» момент флэшка перестанет читаться?
Нет. Я имею ввиду проекты, которые в принципе не принесут дохода ни автору, ни партнерам. Например, система электронных голосований, не привязанная ни к владельцу, ни к серверу, ни к кому-бы то ни было.
На счет сети доверия… Идея намного глубже чем просто техническая. Она говорит о том, что каждый гражданин общества должен быть ответственным и обязан прилагать определенную долю усилий для управления им. Конечно, намного проще «выбрать» представителя и свалить всю работу на него. Но такой подход уже отлично показал чего он стоит. А стоит он потери свободы и невозможности ее вернуть. Конечно, в любом обществе будут те, кто не захочет утруждаться его управлением. Однако, у любого должна быть возможность вмешаться, если происходит что-то, что ему не нравится.

И на самом деле, сеть доверия — это просто техническое воплощение существующих принципов «работы» общества. Именно то, что большинство граждан считают правильным и является правильным в данном обществе.
Хорошая архитектура. В ней есть единственная дыра — Центры авторизации. Если они будут управляться заинтересованными лицами (а это очевидно), то ни о какой защите голосований от вбросов речи быть не может. И тут плохо то, что при наличии большого количества таких «центров авторизации» повышается и вероятность мошенничества, и сильно усложняется процедура обнаружения такого мошенничества.

Голосующие должны удостоверяться исключительно через сеть взаимного доверия. С обратной связью, естественно.
А вы собираете идеи, которые не принесут финансового дохода?
Ну, я-то имею ввиду то-же самое. Единственное, что я не хотел-бы свою сеть нагружать при этом лишним функционалом.
Схожая по сути, но немного о другом. О том, что реальность человека в сети можно проверить только если его реальность подтвердят другие. И о том что человек является мастером в какой-то теме тоже могут судить только другие. И таким образом формировать о человеке в сети некое подобие «паспорта». С одной стороны, который принадлежит реальному человку, а с другой, имеет в себе информацию о различных компетенциях данного человека.

Естественно, с регулированием самим человеком открытости или закрытости той или иной информации о себе.

Information

Rating
Does not participate
Location
Подгорица, Подгорица, Черногория
Date of birth
Registered
Activity

Specialization

Backend Developer, Database Developer
From 500,000 ₽
Golang
Docker
PostgreSQL
Git
Nginx
High-loaded systems
Kubernetes
Linux
MySQL
Redis