В течение последних 30 лет мир активно осваивал цифровую среду. Многие сервисы и услуги перешли в онлайн. Однако есть по крайней мере одна из сфер, в которой до сих пор используются исключительно традиционные инструменты — это голосование.
Стоит уточнить, что процедура голосования используется отнюдь не только в политическом процессе: голосуют акционеры компаний, члены профсоюзов и рабочих коллективов, участники ассоциаций и клубов — число потенциальных сценариев безгранично.
Однако за исключением нескольких стран онлайн-голосование так и не стало масштабным явлением и легальным способом выразить свою позицию. Основная причина: сложность самой системы, наличие множества равнозначных участников и необходимость в колоссальном уровне доверия между ними. Цифровые решения так и не смогли стать достойной альтернативой традиционным методам голосования.
В последние годы активно развивается блокчейн, который зарекомендовал себя как эффективное средство для создания доверия в цифровых приложениях. Еще одно направление технологий, которое может стать недостающим элементом для онлайн-голосования — «доказательство с нулевым разглашением» (zero-knowledge proof, ZKP), что необходимо для возможности верификации голосов без раскрытия личностей участников. Ведь анонимность — один из базовых принципов любой процедуры голосования.
Поэтому неудивительно, что сегодня сразу в нескольких экосистемах, например на Tron или Polygon, развивают проекты по блокчейн-голосованию на базе блокчейна и ZKP. В Everscale создали собственное приложение для онлайн-голосования под названием DeVote. На конференции Global Blockchain Association его представил один из лидеров проекта, Евгений Морозов.
В чем недостатки существующих цифровых систем для голосования и как их можно решить?
В начале презентации Морозов перечислил проблемы в существующих системах для онлайн-голосования:
- Недостаток анонимности. Во многих случаях организаторы голосования могут узнать, кто именно и как проголосовал.
- Централизация. Данные о голосовании собираются на нескольких серверах, используя ПО с закрытым кодом.
- Риски безопасности. Как процедура голосования, так и данные его участников уязвимы к хакерским атакам и манипуляциям.
- Трудности в верификации результатов. Централизация и закрытость ПО для голосования делает проверку результатов крайне сложной.
- Сложности в интеграции с традиционной системой голосования. Электронное голосование тяжело совместить с «бумажной» процедурой.
В начале февраля в DeVote выпустили мобильное приложения для голосований, в котором действия производятся в блокчейне с помощью смарт-контрактов. Морозов перечислил следующие ключевые характеристики DeVote, которые позволяют решить указанные выше проблемы:
- Высокая скорость и масштабируемость. DeVote может обрабатывать большое количество голосов одновременно. Приложение работает в сети Everscale, но предполагает возможность интеграции с другими блокчейнами.
- Настоящая анонимность. Организатор процедуры в протоколе DeVote не может получить какую-либо персональную информацию об участниках голосования.
- Возможность проверок результатов. В DeVote встроена функция, которая позволяет проводить аудит кампании голосования как перед ее началом, так и после подведения итогов.
Как работает онлайн-голосование в DeVote
Приложение DeVote предполагает две роли участника: администратор, которые может создавать новые кампании для голосования, а также пользователь, которые участвует в этих кампаниях, отдавая свой голос за один из вариантов.
Согласно презентации проекта, обмен данными в DeVote происходит полностью через смарт-контракты, а верификацию ZKP осуществляет специальная нода. Процесс обмен данными выглядит следующим образом:
- При регистрации для пользователя генерируются приватный и публичный ключи.
- При инициализации новой сессии в приложении происходит генерация ключей, деплой контракта и адреса для пользователя.
- Когда пользователь делает выбор, нужные данные загружаются в контракт через ончейн-транзакцию, система проверяет доказательство ZKP.
- По окончании дедлайна голосования система подсчитывает голоса. Результат публикуется с ключом расшифровки.
- Результаты подсчета также проходят верификацию.
В DeVote используется доказательная система groth16, необходимая для «разделения» личности голосующего и его выбора при голосовании. Подробнее об этой технологии в контексте проекта можно прочитать в блоге Бенджамина Бейтмана.
Сейчас проект ориентируется на рынок Соединенных Штатов. В конце июля 2022 года DeVote объявил о сотрудничестве с организацией WinterGreen Research.