Найти тему
Denis Silantev

Риски в системе электронного голосования

Оглавление

Консультировал журналиста, после чего вышла статья с некоторыми моими комментариями и ответами на них ДИТ г. Москвы. Получилось достаточно профессионально с их стороны. Не хотелось бы это портить дискуссией, поэтому просто выкладываю оригинал для сравнения.

Какие риски может содержать российская система электронного голосования с точки зрения информационной безопасности, анонимизации пользователей?

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

Риск изменения или создания голосов хозяином системы

Самый очевидный риск - это возможность бесконтрольного создания, изменения, удаления голосов владельцами системы. Об этом задумываются многие, поэтому в рекламе поправок можно встретить заявления в роде следующих: “Технология блокчейн позволяет надежно защитить процедуру при голосовании. Не допускает какие-либо вбросы или корректировки, то есть сама по себе технология дает стопроцентную защиту. ...” Почему же тогда остаются сомнения?

Дело в том, что мы никак не можем проверить данную информацию. Общественности не предоставили открытый исходный код, как это сделали, например, в Эстонии.

Если даже такая технология внедрена, то блокчейн используется только на этапе сохранения и считывания голоса. Авторизация и само голосование происходит на одном сервере, что дает владельцу возможность создания призрачных аккаунтов и отправки голосов от их имени или изменение существующих голосов до шифрования (если оно есть).

Теперь посмотрим на ту часть системы, где используется блокчейн. Одна из идей блокчейн в децентрализованном согласовании транзакции всеми участниками сети, права которых равны между собой. Например, Вася написал Вове нет, а Леше сообщили последнюю букву имени (я) и записки (т). После никто из троих не сможет заявить, что Вася сказал да, возможно, он написал самолеТ, но точно не дА. В нашей ситуации хозяин всей блокчейн-системы один. Получается, что Вася написал Вове нет, Вова запомнил и сказал, что 70% проголосовало да, 30% - нет, и где-то там в бумажках лежит голос Васи, но найти ее он не может потому, что для конфиденциальности на бумажках не написаны имена. Показывать листочек с последними буквами он тоже не будет потому, что... ишь, чего захотел.

Риск голосования без ведома гражданина

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

Интересно, что на множестве государственных сервисов используется цифровая подпись, которая однозначно подтверждает личность, например, с помощью похода в МФЦ. Почему технология не применяется в электронном голосовании - вопрос открытый.

Риск давления на голосующего

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

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

Риск идентификации личности и голоса

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

Какие технические ошибки были, на ваш взгляд, и устранены ли недочеты, обнаруженные при проведении электронного голосования по поправкам в Конституцию, выборам в Мосгордуму?

Об ошибках сложно говорить опять же из-за закрытости системы, но мы знаем некоторые последствия ошибок. Например, попадания базы паспортных данных в открытый доступ или истории, когда людям удавалось проголосовать дважды (удаленно и на участке).

Про устраненные недочеты можно было бы узнать от ответственных за связи со СМИ, вместо этого были заявления с отрицанием ошибок и заведением дел на тех, кто о них говорил. Возможно, так только со стороны пиара, а разработчики потрудились над устранением уязвимостей, будем надеяться.