Quis custodiet ipsos custodes? (Кто устережёт самих сторожей?). Мы сделали многое, чтобы в нашей системе голосования не допустить накруток и ботов, но не раз задавался старый как мир вопрос «а кто устережёт самих сторожей?» Чтобы повысить доверие к нашей системы, мы решили ввести механизм «чека» для проголосовавших, а также частично раскрыть списки избирателей, разумеется, вымарав персональные данные.
Что такое «чек»?
Чек — это цифробуквенный код из 8 символов, который уникален для каждого избирателя и по которому он может найти себя в опубликованном списке избирателей, проверив, реально ли машина учла его голос, не обманула ли, написав «голос учтен», а также человек может пройтись по другим кандидатам и посмотреть, не использовался ли его голос за другого кандидата. При этом, если начальник заставляет вас голосовать за какого-то кандидата на наших праймериз (как это бывает в реальной жизни), то вы сможете на странице того кандидата, за которого заставляют голосовать, взять код другого избирателя, похожий по типу устройства и региону на его собственный, дать начальнику — пусть проверяет, а сами с чистой совестью и в полной безопасности можете поддержать того, кто вам реально нравится.
Разумеется про два, три и более голоса за одного кандидата при такой системе речи идти не может. Любой студент легко проверит, чтобы коды были уникальны. Хотя на тему уникальности есть небольшая загвоздка. С технической точки зрения, чек — это вырезанные 8 символов из результата MD5 от уникального номера пользователя в системе. Можно было бы и просто номер дать, но тогда было бы видно, насколько пользователь новый или старый в системе, а так получается код совершенно не информативен и дешифруем, но поскольку это лишь 8 символов, то теоретически возможны совпадения кодов у разных избирателей, но вероятность такого исхода 1 к 4 294 967 295.
Что в списках избирателей?
В списке есть тот самый чек-код, дата и время голосования, причем машина автоматом подсвечивает голоса в период с 2 ночи до 5 утра, так как они подозрительные. Нет проблем, если таких 2-3 у раскрученного кандидата, но — очевидный фейк, если у кандидата исключительно ночные голоса (у нас было такое на президентских праймериз).
Также публикуется электронная почта, замазав адрес до @ примерно в таком виде ***********@gmail.com, но только для популярных почтовых сервисов. Для почты типа info@vasiaivanov.ru машина по понятным причинам вымарает и домен, оставив лишь ****@***********.ru. IP-адрес публикуется в режиме 192.168.*.***, оставляя желающему «вычислить по IP» 65 тысяч вариантов.
Еще мы публикуем регион или страну, которые удалось вычислить по IP-адресу. Если регион проведения праймериз совпадает с регионом избирателя, то он подсвечивается зеленым. Если же это заграница — то красным, что позволяет легко визуально оценить общую картину, но сам по себе IP ничего не говорит. WiFi в московском метро даст один и тот же IP тысячам пользователей, в то же время если кто-то болеет безопасностью и использует VPN или TOR, то Германия или Нидерланды вовсе не говорят, что человек находится за границей.
Следующим пунктом мы публикуем оператора сотовой связи и регион, выявленный по номеру телефона, а если телефон заграничный, то показываем код страны. Как и география по IP, сам по себе регион, определенный по телефону, ничего не дает, однако если IP вологодский и телефон вологодский, то очевидно, что это не москвич. Вариант, что это житель Москвы, который 10 лет назад оформил, живя в Вологде, телефон, а сейчас приехал в гости к родителям и проголосовал от них — маловероятен, хотя и возможен. Такие голоса мы не убираем, главное, чтобы за кандидата в мэры Москвы не было значимого количества голосов из другого региона, и особенно подряд.
Ну и в конце публикуется картинкой тип устройства (компьютер, мобильный или планшет) и указывается тип браузера. Эти данные скорее для красоты, но на самом деле для демонстрации нашего метода анализа по совокупности параметров. И тут прошу учесть, что опубликованные данные – это не то, что видят организаторы, а весьма урезанная их версия, организаторы видят на порядок больше и анализируют множество других взаимосвязей, процентные соотношения параметров, а также есть и жесткая аналитика для отсева клоунов, у которых на стационарном компьютере браузер IEMobile, равно как и пользователей «мобильных» с разрешением экрана 1600х900.
Если у кого-то из программистов появится желание сделать выгрузку этих данных для анализа, убедительная просьба — не надо делать разбор текста, напишите не tech@leftfront.org и мы сделаем систему выгрузки в удобном формате.
Резюме
Вышеописанная система не является сама по себе системой анализа, она создана для повышения доверия, чтобы всякие дотошные «критики» не позволяли себе называть нашу систему «лохотроном». А еще тот факт, что мы сделали такую защиту, говорит о том, что если у организаторов выборов есть желание сделать их прозрачными и честными, они работают в этом направлении, используя все возможные средства, а если у ЦИК РФ нет такого желания, то отклоняются законопроекты о ручном пересчете КОИБов…
Так что голосуйте на праймериз «МосСовет-2018» http://www.moscow2018.org без всяких сомнений. Чистоту процесса гарантируем!
Алексей Коваленко