Как стать автором
Обновить

Хэш-выборы, которые невозможно фальсифицировать

Время на прочтение2 мин
Количество просмотров3.9K

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

Невозможно фальсифицировать открытое голосование. Голос каждого избирателя заносится в таблицу, после чего каждый может проверить, что лично его голос учтён верно. Чтобы сохранить проверяемость результатов и сохранить тайну голосования предлагается воспользоваться методикой хэширования данных. Будем хэшировать данные об избирателях и выбранных ими кандидатах.

Предлагаю рассмотреть алгоритм хэш-выборов на простом примере. В небольшом городе Большие Волки проходят выборы мэра. На должность претендуют 2 кандидата: Иванов и Сидоров. Население города 30 тысяч человек, из них 20 тысяч избирателей. Голосование полностью электронное.

Чтобы проголосовать каждый избиратель должен скачать специальное ПО (с открытым исходным кодом). В интерфейсе ПО следует ввести личные данные, выбрать кандидата и придумать пин код. ПО на основе личных данных и пин кода генерирует уникальную хэш строку, которую вместе с выбранным кандидатом передаёт на сервер. Также ПО передает на Госуслуги информацию о том, что избиратель проголосовал.

Таблица 1. Информация кто и как голосовал. Нигде не хранится, никому не доступна.
Таблица 1. Информация кто и как голосовал. Нигде не хранится, никому не доступна.
Таблица 2. Информация кто голосовал. Хранится на сервере, доступна всем.
Таблица 2. Информация кто голосовал. Хранится на сервере, доступна всем.
Таблица 3. Обезличенная информация с выбранными кандидатами. Хранится на сервере, доступна всем.
Таблица 3. Обезличенная информация с выбранными кандидатами. Хранится на сервере, доступна всем.

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

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

Единственным способом вмешаться в результаты голосования будет добавить в таблицу 3 хэш-строки, не соответствующие реальным избирателям. Чтобы исключить подобные манипуляции заполняется и публикуется таблица 2. В ней содержится список жителей города, имеющих право голосовать, и информация о том, кто из них голосовал. Содержимое таблицы также может быть проверено любым жителем города, а количество голосовавших людей должно совпасть с количеством хэш-строк в таблице 3.

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

Теги:
Хабы:
Всего голосов 21: ↑7 и ↓14-4
Комментарии68

Публикации

Истории

Ближайшие события

12 – 13 июля
Геймтон DatsDefense
Онлайн