Comments 42
Сравнивая данные, прозрачно обработанные этой утилитой, и данные блокчейна голосования, наблюдатели могли убедиться, что всё обрабатывается одинаково.
Вынося за скобки мошенничество на других этапах, для того, чтобы быть уверенным, что бюллетени в урне посчитаны правильно, достаточно уметь считать в пределах тысячи. Для того, чтобы быть уверенным в правильности подсчета электронных голосов, необходимо быть экспертом в области криптографии и блокчейна (так как я не эксперт, я даже не знаю, достаточно ли этого).
Чтобы наблюдатели могли быть уверенными в правильном подсчете голосов, мы сделали open-source утилиту для проверки голосования. Чтобы разобраться в коде надо иметь квалификацию. Но так работает любой open-source.
Не согласен. Проще не всегда значит лучше. На счетах считать - очень наглядно. Но вы считаете на компьютере, хотя и не понимаете что именно происходит внутри. Идеально если можно поднять тридцать рук и посчитать, но эта схема не масштабируется. Плюс нашем случае система гораздо прозрачнее условного "компьютера". А дальше дело за вами - доверять, как компьютеру, или разобраться как оно работает.
Ну и схема бумажного голосования проста только в очень первом приближеннии - "поставлю галочку, опущу в урну". Если взять этот процесс в целом - он очень непростой и с большим пространством для ошибок (не зря про 146% ниже вспомнили )))
При классическом голосовании нарушения и фальсификации видны сразу и многие из них фиксируются наблюдателяеми (я сам будучи студентом работал на выборах наблюдателем), т.е. видно живой человек пришел и бросил в урну, а в электронном у тебя от имени каких-то пользователей прилетели 100500 транзакции в секунду и невозможно убедиться в том что это не боты
"Проще не значит лучше" - некая околофилософкая сентенция, рождённая применительно к человеческим отношениям. Что же касается реального, окружающего мира, то проще, всегда лучше. То что лежит, уже не может упасть. Если же рассматривать более сложные явления, то необходимо определить критерии этого самого лучше.
Пример со счётами и компьютером плох именно по тому, что критерии оценки не определены. Но он ни коем образом не подтверждает того, что проще не всегда лучше.
Система бумажного голосования очень проста. Арифметика для детского сада. Даже человек обделённый интеллектом способен в ней разобраться. А если дотошно выполнять все шаги методических руководств, то никакого пространства для ошибок там нет. 146% - это следствие нарушения методики. Потому как, подтасовка результатов требует уже зачатков некоторого интеллекта. Но "и так сойдёт", очень часто побеждает здравый смысл. Особенно в этой стране. А как известно, от раздолбайства не спасает даже самая изощренная защита.
На контрасте с бумажным голосованием, чтобы разобраться в криптографии надо иметь интеллект гораздо выше зачаточного.
Конечно, если "дотошно следовать указаниям" то все будет хорошо. Но это же не так работает. Огромное количество людей по всей стране задействованы в организации и наблюдении за выборами. Именно эти люди являются "пространством для ошибок" - обычный человеческий фактор. Именно здесь сложность, а не в принипиальном устройстве бумажного голосования.
Разобраться в криптографии - да, нужны компетенции. Но это же не значит что не стоит искать более эффективные и в итоге даже более честные/прозрачные инструменты потому что это сложно?
Про честность и прозрачность электоральных инструментов можно говорить лишь в государстве, где существует и работает правовая система. В противном случае, создание какого-либо нового решения, это из разряда потешить свой интерес, да поднабраться опыта за чужие деньги.
Что касается человеческого фактора, то говорить о том, что некая электронная система абсолютна стойка к дуракам, это обманывать себя и других. В организации электронного голосования задействовано гораздо меньше людей, это да. Однако и сложность системы выше на несколько порядков. Соответственно, цена одной ошибки будет больше, чем цена одной ошибки при бумажном голосовании.
ну вот представим, что я тракторист, умею сидеть в одноклассниках и считать формулы в екселе. Как мне посчитать количество и распределение голосов на каждом участке по последнему голосованию? Есть достаточно подробная и понятная среднему пользователю пк инструкция? Надпись в какой-то программе "все ок" меня не устраивает ибо ничем не отличается от заявления в телевизоре, которое я и хочу проверить.
Экселя для проверки итогов голосования будет недостаточно. Чтобы трактористу подтвердить честность выборов ему нужно:
1) Попросить друга программиста посмотреть на исходный код утилиты наблюдения и подтвердить что там нет закладок вроде "Половину всех голосов начислить за Иванова"
2) Записаться в наблюдатели и получить доступ к выгрузкам
3) Запихнуть эти выгрузки в утилиту
Таким образом тракторист убедится не только в том, что на том участке где он дежурил никто не мухлевал, но и на всех остальных тоже.
Много сложных технологий, но где-то баг, ведь система очевидно не работает!
Скажите, пожалуйста, а каким образом наблюдатель может убедиться, что бюллетень выдан реальному человеку, а не боту?
Эта часть системы в большой степени работает по тем же принципам что и бумажное голосование. Там так же готовятся списки избирателей ДЭГ, они сверяются с "бумажными", проверяется что нет дублирования. Наша команда не очень погружена в этот процесс. Но наблюдатели имеют доступ к этим спискам, они могут сопоставить тех кто в них заявлен со счетчиками голосов и теми изберателями которые прошли авторизацию в ЕСИА и "получили бюллетень".
Спасибо за ответ. Но лично мне все-таки непонятно, что препятствует массовому вбросу. На реальном участке хотя бы можно за шиворот оттянуть уиковца с пачкой бюллетеней в руке, или зафиксировать цифры после подписания комиссией, наблюдая глазами за явкой и подсчётом.
За формированием списка ДЭГ наблюдают наблюдатели от разных партий как на обыкновенных выборах? Если нет - грош цена всей вашей системе т.к. в на этом этапе можно наделать кучу ботов с соответсвующим результатом голосования потом.
Кроме того, к системе были подключены ноды в режиме наблюдателей. Они не обрабатывают транзакции и не синхронизируют UTX, а просто получают данные из блокчейна и применяют их к стейту. Наблюдатели могли подключить к таким нодам свои инструменты мониторинга, сравнить их с общедоступными данными и убедиться, что все совпадает.
Да, мы помним как их отключали, как на них подавали данные не позволяющие декодировать...
Так же мы помним как доступ к нодам наблюдателей выдавался с крайне ограниченного количества компьютеров, на которых установка любого стороннего по была запрещена.
ну не смешите, а?
Сколько стоит?
А зачем там блокчейн?
Не увидел в схеме много независимых нод, и проверки консесуса.
Все ноды под единым контролем - а это уже вроде как главную фичу блокчейна(достоверность транзакций) ставит под сомненье.
Не увидел могу ли я себе качнуть всю цепочку голосования, поискать в ней свой голос и проверить, а не поменяли ли там чего. А по окончании процесса сравнить, что ничего не поменялось в цепочке.
Вот хоть убейте не пойму зачем там этот блокчейн, т.е. да понятно что это попытка связать все голоса одной цепочкой, чтобы нельзя было поменять что то посередине. Но братцы, как можно доверять черному ящику? Я доверяю блокчейн сетям, когда я могу подключить свой компьютер к этой сети и у меня будут те же данные, что и у всех и я также как и все буду проверять все транзакции и мы будем приходить к консенсус все вместе. Но когда у вас несколько узлов в одной централизованной p2p сети, то в чем смысл то?
PS я не блокчейн специалист, так что не отрицаю технические качества системы, но вот архитектурные явно вызывают вопросы, а они выше
Смысл в том, чтобы отработать технические и организационные решения. В 20-м году основной фокус был на том чтобы в принципе система полетела и не умерла под нагрузкой. В 21-м начали работать над инструментами наблюдения, но ими никто не заинтересовался. Наблюдателей было 5 человек и они не понимали что им нужно делать и за чем следить. В этом году и их экспертиза, и число выросли в разы.
А блокчейн здесь для того, чтобы автоматизировать и гарантировать корректный подсчет после попадания электронного бюллетеня в урну. То что ноды находятся под одной крышей, это конечно не идеальное решение, но уверен что оно временное. Чтобы от него отойти, необходимо чтобы нашлись компетентные участники, готовые гарантировать надежность своей инраструктуры. Очевидно же что такую систему не отдашь в полностью открытый доступ, где отдельные ноды, стоящие непонятно где, то потухнут, то погаснут. Идеальными участниками могли бы стать представители политических партий - они заинтересованы в том, чтобы система работала честно. Как только они будут готовы к такой ответственности, с точки зрения технологии преград не будет.
А пока этого не произошло, наблюдатели, получающие доступ к транзакциям в режиме реального времени, выполняют роль "независимых узлов" в "ручном режиме". Они не участвуют в создании блоков, но имея полную выгрузку данных в любой момент времени, могут обнаружить перезапись данных блокчейна, если она вдруг случится.
Просто продублирую мой прошлый комментарий на данную тему:
Без обязательного self-custody ключей и подробно описанного протокола для которого можно написать свой клиент доверия к системе априори быть не может. Причём ключи должны быть достаточно важными (на уровне возможности создания юридически значимых ЭЦП) дабы их нельзя было собирать или покупать пачками. Блокчейны тоже по сути дела не нужны и являются пусканием модной пыли в глаза.
По ссылке выше можно прочесть моё обсуждение с автором данной статьи. Думаю, не имеет смысл его повторять. Заинтересованные читатели могут сделать выводы самостоятельно.
А что касается «дырявости» — хотелось бы детального сравнения, какие изменения внесены в описываемую, чтобы избежать той же критики, которой подверглась московская. Именно сравнения, поскольку мы, читатели, не настолько специалисты, чтобы вникать в витиеватые технические формулировки.
Насколько помню к системе переголосования было больше всего вопросов, так как анализ показал, что больше всего переголосовывали за "ЕдРо", что выглядит как минимум странно и нельзя было проверить кто конкретно переголосовал.
Это понятно, я о другом, переголосование было не привязано к изначальному голосу, т.е. нельзя было отследить какой голос переголосовывался, что делало процесс вообще непрозрачным...
По мне, это и есть самая большая проблема в системе - ее непрозрачность
У нас есть два способа анонимизации. 1) Мы не расшифровываем конкретные голоса, они остаются зашифрованными навсегда. Итоги считаются в зашифрованном виде и только потом расшифровываются. В итоги мы получаем счетчики голосов за каждого кандидата, но не знаем кто за кого проголосовал (при этом можем математически доказать что все посчитано честно).
2) слепая подпись - ключ участника, которым он подписывает свой голос известен только ему, поэтому даже если будут расшифрованы все голоса, нет возможности установить связь между ключом, подписавшим голос и персональными данными участника
Как докажите, что перенолосовали избиратели, которые изначальный голос подавали?
Ключ участника которым он подписал первый голос известен только ему, больше ни у кого его нет. Повторный голос он подпишет им же. Оба голоса останутся на блокчейне, но мы будем учитывать только последний. Т.к. гомоморфное шифрование позволяет как "прибавлять", так и "вычитать" голоса, мы спокойно вычитаем его первый голос, и добавляем свежий.
Да, вы правы, это именно Федеральный ДЭГ, не Московский. Очень многие упускают этот момент ))
Непросто провести сравнительный анализ, т.к. нет описания того как реализована Московская система. Плюс реализация радикально меняется из года в год.
"Описания изменений" которые внесены в нашу систему в принципе нет, т.к. система создавалась самостоятельно, без огладки на московскую. Но материалы о том как устроен федеральный ДЭГ мы публикуем регулярно (кажется были и такие, которые написаны максимально просто).
По возможности переголосования - теоретически такая возможность есть, она может работать без "секретных вторых блокчейнов" и мы ее реализовали в своем сервисе для голосований ЮЛ (we.vote). В федеральном ДЭГ эта возможность отключена по техзаданию.
Ну как, пахнут денежки-то, или норм?
Самый важный нерешенный вопрос - каким образом обеспечивается условие, что 1 человек = 1 голос. Подозреваю, что никак. Тот кто отвечает за аутентификацию волен эмитировать столько учетных данных сколько пожелает в итоге он контролирует голосование. Зачем в таких условиях делать какой то блокчейн? Расчет на то что у людей есть ассоциация блокчейн = не обманывают? Или просто "технологичный" распил?
Как устроена федеральная система дистанционного электронного голосования в России