Мы уже несколько раз писали на Хабре про российские системы дистанционного электронного голосования (ДЭГ) – сравнивали с эстонскими и рассматривали, как в них реализуют сохранение тайны голосования.
Тем не менее, до сих пор это оставалось чисто теоретическим материалом: если вы ранее не интересовались темой ДЭГ, то попробовать это всё руками ни в каком виде не могли.
В принципе, все мы – и наблюдатели с экспертами тоже – ждали официального тестирования ДЭГ 7-9 сентября.
Однако сегодня вечером, практически «без объявления войны», Ростелеком объявил о запуске в эти выходные, то есть 4-5 сентября, публичного технического теста ДЭГ, более того – назвав его хакатоном.
Ну, ладно, будем честны: на внутренних совещаниях в ЦИК России разговоры о возможном тесте ходили уже несколько недель, просто до последнего момента не было понятно, состоится ли он.
Итак: в субботу и воскресенье все желающие, обладающие верифицированный записью на Госуслугах, могут лично посмотреть, как работает федеральная ДЭГ – и действительно ли она соответствует тем принципам, про которые мы рассказывали.
Более того: так как это технический тест, он же хакатон, то с участников не просто официально снимается ответственность за попытки ДЭГ поломать, но и назначается призовой фонд для тех, у кого получится. Два миллиона рублей.
Регистрация: https://bb.gosuslugi.ru
С одной стороны, конечно, вряд ли за два дня удастся достичь многого, с другой – ну попробовать-то можно!
Мы же завтра с утра сами туда сходим — и выложим статью о том, как оно всё выглядит и работает.
Комментарии (70)
S_V
03.09.2021 22:41+1Есть ли какие либо ограничения на пенетрейшин тестирование к примеру разрешено ли сканирование или DDoS атака.
Разрешено ли подбирать пароли к экакунтам других пользователей?
Было бы интересно узнать больше деталей по условиям конкурса.
AnalogBytes Автор
03.09.2021 22:41Есть же по ссылке правила.
Нет, DDoS не разрешён.S_V
04.09.2021 04:16+1Вы бы не могли прокомментировать еще одно правило - запрещение получения доступа к серверам системы?
Что, очевидно, делает все это действо заурядной пиар акцией.
AnalogBytes Автор
04.09.2021 14:06Мы не Ростелеком, так что не знаем — но можем предположить, что сервера, стоящие в ЦОД, нереально вывести из-под законодательного регулирования даже на два дня.
И почему «заурядной пиар-акцией»? Вы всерьёз надеялись сломать сервера Ростелекома, а всякая ерунда типа поиска уязвимостей в протоколах шифрования вас не интересует?
S_V
06.09.2021 00:29+2Так как ограничения соотвествуют "пиар акции" с тестированием секьюрити это не имеет никакого отношения.
Что касается Ростелекома, то они уже публиковали подробную статью год назад
Обзор системы дистанционного электронного голосования ЦИК РФ
Где так и не сумели ответить на довольно простые вопросы по безопасности.
Что Вас побудило очередной раз пропиарить явно технически недоработанный проект?
4aba
06.09.2021 06:49Под получение доступа к серверам можно многое подставить, sql-инъекция, ssh доступ, сформировать кривой запрос и завершить процесс, который система не перезапустит, не знаю насколько это возможно, но попадает под доступ к серверам.
А если сложно вывести из законодательства, то , я так понимаю это в их интересах, можно вне своей сети поднять аналогичный сервер под растерзание, с подробным реалтайм логгированием
semenovs
05.09.2021 14:11+3Судя по правилам, любые активности подходящие под определение "тестирование безопасности" запрещены :) Тестируйте без тестирования ;) Но отчетаются что публичный аудит безопасности прошли :)
semenovs
22.09.2021 00:11Лол нашёл свой комментарий) А я тогда не понял что за система. Правила почитал, понял что херня и дальше пошёл. То есть у такого важного компонента по сути не было публичного аудита безопасности. Красиво)
Wesha
03.09.2021 23:01+9Астрологи объявили
неделюдва дня теста ДЭГ.Спецслужбисты приготовили блокнотики.Перепись хакеров объявлена открытой.
Sabubu
04.09.2021 01:38+22Во-первых, насчет исходников. На Гитхаб выложены лишь:
- утилита на Electron для создания и разделения ключей
- код некоего сервиса на Scala, который принимает по gRPC различные запросы вроде "добавить userId в список" или "голос", делает минимальные проверки и отправляет обратно успешный или неуспешный результат
- несколько фронтенд-проектов
- REST-сервис, который позволяет сделать несколько действий (вроде начать голосование) и следит за очередью событий
Но система построена из кучи микросервисов и код многих из них отсутствует. Например: отсутствует код, который принимает и проверяет заявки на участие в электронном голосовании.
Также, интересно, что в сервисе rtk-decrypt предусмотрена операция "отката" транзакций:
При получении события rollback:
удаляются все блоки с указанной высоты
удаляются все транзакции и бюллетени с указанной высоты
эмитится событие startSync с предыдущего блока, либо с genesisBlockТакже, я не понимаю, зачем здесь нужен блокчейн с майнингом если 100% серверов контролируется организатором и, как мы видим, он может еще и что-то там откатывать.
В электронном голосовании есть зияющая уязвимость: нет никакого контроля за оформлением заявок на электронное голосование. Невозможно убедиться, что в нем будут принимать участие реальные люди, а не фейковые аккаунты. Это позволяет организаторам голосования незаметно добавить огромное количество голосов. При этом в блокчейне все будет выглядеть корректно. Нет возможности просмотреть списки избирателей, технические данные (IP-адреса, номера телефонов, с которых оформлялись заявки).
Вы скажете: ну, ЦИК такого не допустит. Но давайте не смотреть на авторитет ЦИК, а на реальные дела. Вспомним, например, выборы в Приморье, где были огромные фальсификации, и никаких последствий для исполнителей. ЦИК найти и наказать виновных "не смог", правоохранительные ограны тоже. Или выборы в Мосгордуму, где ЦИК по надуманным причинам снимал подписи у кандидатов. Или выборы 2019 года в Петербурге, где избирательные комиссии закрывались, прятались от кандидатов, создавали фейковые очереди и всячески препятствовали регистрации кандидатов. Опять же, никто за это не сел. Или как в 2018 через "мобильного избирателя" сотни тысяч человек отписали из Петербурга в отдаленные регионы. Я не понимаю: если в 2018 году смогли отписать сотню тысяч человек, и никто за это не сел, то что помешает добавить миллион фейковых избирателей?
Нет никакой возможности проверить, что голосуют реальные люди. Вместо этого нам показывают игрушечный блокчейн и предлагают "поверить джентльменам на слово".
S_V
04.09.2021 04:05+1На выложенный код без слез смотреть нельзя. ReadMe файлы написаны на английском. В коде довольно редко, но встречаются комментарии на русском языке.
При всем желании выложенный код назвать проектом нельзя. Это даже на PoC (Proof of Concept) ака пилотный проект не тянет.
sirocco
04.09.2021 08:01+3Ну вы подтвердили мои сомнения, что это тоже фуфло, а не выборы. Ну и действительно, что мы как дети, ну кто при текущем режиме даст право выбора? Это невозможно. Да ещё модное слово "блокчейн" прикручено - попытка убедить в честности происходящего людей средних лет? У меня некоторые знакомые так и рассуждают, раз криптовалюты уже 10 лет держатся на блокчейне и никаких проблем, то и тут блокчейн панацея. Но не все понимают, что он тут просто рядом стоит и в главном алгоритме не учавствует.
kranid
04.09.2021 09:25+3Власть хочет чтобы вы так думали. Они намеренно сушат явку. Чем больше поверит в то, что выборы фуфло, чем меньше придет голосовать, тем проще им будет превратить выборы в настоящее фуфло. А вот электронное голосование - это действительно фуфло. Голосуйте на участках.
anonymous
00.00.0000 00:00AnalogBytes Автор
04.09.2021 14:13+2Например: отсутствует код, который принимает и проверяет заявки на участие в электронном голосовании.
Ну, это код интерфейса к СМЭВ, отправляющий заявки на проверку личных данных в МВД, ГАС Выборы и куда там ещё. Что конкретно в нём вы надеялись проверить?
Также, я не понимаю, зачем здесь нужен блокчейн с майнингом если 100% серверов контролируется организатором и, как мы видим, он может еще и что-то там откатывать.
Блокчейн и смарт-контракты — это средство разработки. Вопрос примерно такого же класса, как «зачем здесь нужен Apache, если организатор может прописать ему любой конфиг».
Ну, можно было бы сделать то же самое без блокчейна, потратив массу человеко-часов на вещи, которые в блокчейне есть из коробки. А зачем?
В электронном голосовании есть зияющая уязвимость: нет никакого контроля за оформлением заявок на электронное голосование. Невозможно убедиться, что в нем будут принимать участие реальные люди, а не фейковые аккаунты. Это позволяет организаторам голосования незаметно добавить огромное количество голосов.
Но ведь это не так.
Все подавшие заявки вносятся в списки откреплённых на УИКах по месту жительства, чтобы они не смогли там проголосовать.
Суммируете данные по УИКам по конкретной территории, сравниваете со статистикой голосования по этой территории в ДЭГ, voila.
Нет никакой возможности проверить, что голосуют реальные люди. Вместо этого нам показывают игрушечный блокчейн и предлагают "поверить джентльменам на слово"
Вместо этого вам дают сильную криптографию и алгоритмы, которые математически гарантируют и позволяют даже вам лично проверить, что ваш голос принят, учтён и посчитан, а не спущен в шредер на УИКе.
Вот последнего вы как раз проверить не можете никак вообще.
php_freelancer
04.09.2021 14:26Суммируете данные по УИКам по конкретной территории, сравниваете со статистикой голосования по этой территории в ДЭГ, voila.
Что конкретно сравнивать?) Кол-во голосов?)
AnalogBytes Автор
04.09.2021 16:50Да. Если есть массовый вброс голосов со стороны — не будут сходиться данные по открепившимся от обычных УИКов и проголосовавших в ДЭГ.
Чтобы они сходились, придётся масштабно фальсифицировать бумажные книги избирателей, но тогда они перестанут биться с ЦИКовской статистикой по числу избирателей.
Чтобы сошлось всё, надо предположить заговор, в котором эти фейковые избиратели ещё и в ЦИКовской статистике заранее учтены — но тогда простой вопрос: а нафига такие сложности с ДЭГ, если можно просто бумажных бюллетеней в урну всыпать?
semenovs
22.09.2021 08:50blockchainConnector.js
// TODO: check whether hash really gives correct transaction hash
Надеюсь я ошибаюсь. Но этот как раз и есть Доказательство выполнения работы. Принцип защиты сетевых систем от злоупотребления услугами. Если его нет то 2 миллиона мои системе вообще нельзя верить.
[править | править код]
semenovs
22.09.2021 08:23Извините. Но мне казалось что для таких проектов должны соблюдаться ГОСТы и тех нормы которые у нас есть. Просто я не вижу методик испытания хотя бы. Как проверяли работоспособность и обоснования вычислительной части или испытания её. Впринципе её проверили что она считает правильно?)
WebWC
04.09.2021 14:13+2Человеку премию!
ЦИК сам по себе через раз работает, а раз открылись и в правилах запретили DDOS, то знают, что не выдержит. Распределенная микра их не спасет.
Вот если бы на самом деле, все гос проекты были бы на *open sourse, проблем бы не было. А доверие возросло.
vvzvlad
04.09.2021 17:23+4ЦИК сам по себе через раз работает, а раз открылись и в правилах запретили DDOS, то знают, что не выдержит. Распределенная микра их не спасет.
А что было бы, если бы DDOS разрешили? Это как-то помогло найти уязвимости?AnalogBytes Автор
05.09.2021 11:41А также интересно, что надеялись заддосить любители, когда система с очевидностью рассчитывается под атаки людей, способных не моргнув глазом ввалить в организацию DDoS десятку тысяч долларов, потому что для них это небольшие деньги.
Ну то есть даже в рамках региональной избирательной кампании в любом из регионов, где ДЭГ будет работать, десятка — это не особо-то много.
S_V
06.09.2021 04:53+1Базовый принцип хакеров несколько отличается от того, чтоб дешево попиариться при обнаружении уязвимости. Хакер в первую очередь работает на максимальный урон веб сайту или сервису. Технически все возможные варианты давно уже подробно освещены на owasp.org. (К слову сказать 9 сентября этого года празднуют свое 20 летие.)
Понятно речь не идет о классическом ддосе типа : Volumetric, Protocol атаках. Интересно было разрешить ДДоС по Апп атаке. Так как судя по тому уровню кода выложенного в общий доступ там действительно есть огромный потенциал атаковать ресурсы.
semenovs
22.09.2021 00:18Суть в том что мутные правила отбили желание тратить ресурсы на это тестирование. ТикТок платит честно и проверен. Я лучше свободный комп на него натравлю. А что бы было уже никто не узнает. Ограничений в публичном аудите минимум должно быть. Если так страшно, можно как Oracle делать. Баг принимать но в выплате отказывать. Написав спасибо в карму)
Ctacfs
04.09.2021 14:39+2Помимо банальной двойной игры, я вижу у сторонников честных выборов только одну причину топить за электронное голосование. Оно сильно увеличивает доступность голосования (не нужно никуда ходить), а значит и явку. И я не интересовался, но насколько я знаю, позволяет избирателю провалидировать свое участие: даже если голос отзовут, человек это сможет увидеть. Нынешняя выборная система фальсифицируется за счет двух вещей: заложников-бюджетников, которые делают, что им скажут, и людей с неявкой, чьи бюллютени вбрасывают с нужным голосом. Электронное голосование в будущем должно избавить от второй проблемы, если голосовать будут все или очень большой процент. Надеяться на это при нашей жизни было бы большой глупостью. Но видимо некоторая часть оппозиции (я так понимаю, больше всего Венедиктов) хочет поиграть в многоходовочки со властью.
Самая большая проблема в том, что электронное голосование дофорсили до этих выборов. В краткосрочной перспективе оно запросто может сыграть в колено организаторам, если они будут фальсифицировать, так как механизм новый и довольно сложный. Но вот к следующим выборам сами понимаете кого у фальсифицирующих появится возможность исправить ошибки, которые их выдали.
AnalogBytes Автор
04.09.2021 16:52И я не интересовался, но насколько я знаю, позволяет избирателю провалидировать свое участие: даже если голос отзовут, человек это сможет увидеть.
Да, это есть.
и людей с неявкой, чьи бюллютени вбрасывают с нужным голосом
Нет, технологий фальсификации больше. Можно, например, при подсчёте помарки на бумажных бюллетенях ставить, а потом их недействительными признать.
я так понимаю, больше всего Венедиктов
Венедиктов вообще не оппозиция, ни разу же.
ads83
04.09.2021 19:37+2Нынешняя выборная система фальсифицируется за счет двух вещей
Как минимум, есть еще одна: сговор ТИКа и отправка протокола с теми цифрами, что были спущены сверху председателю. И пусть в комиссии формально сидят члены КПРФ и ЛДПР. Во-первых, на уровне города/региона эти партии вполне могли сговориться (что крайне сложно доказать). Во-вторых, если все члены ТИКа — бюджетники, то партийная принадлежность начинает конфликтовать с приказом директора школы. И часто в таком случае выбирают директора.
Как косвенное, но весомое доказательство — попытки избавиться от независимых наблюдателей на куче участков и расхождения по голосам между участками, соседними территориально, но "с наблюдателями" и "без". Ну и личный опыт и разговоры :) Хотя последнее, конечно, субъективно.
AnalogBytes Автор
06.09.2021 18:04Также, интересно, что в сервисе rtk-decrypt предусмотрена операция "отката" транзакций:
И вторая часть ответа, которую можно опубликовать сегодня, потому что https://evoting.digitaldem.ru/2021/09/06/op-rf-predstavila-instrumenty-nablyudeniya-za-elektronnym-golosovaniem/
«Цифровой сейф-пакет» будет утилитой, в реальном времени сохраняющей транзакции блокчейна на внешнюю флэшку. Поэтому да, но нет: даже если оператор с таким действием уложится в 15 минут между выгрузками на публичный портал (то есть откатываемые транзакции ни в одну выгрузку не попадут), то в «цифровой сейф-пакет» в ОП РФ они всё равно сохранятся, и на сверке данных после окончания голосования вылезет нестыковка.
kranid
04.09.2021 09:26-2Надеюсь хакеры не будут сообщать об уязвимостях, а будут ими пользоваться, кажется, сломать эту систему - единственный шанс остановить этот цирк с электронным голосованием.
AnalogBytes Автор
04.09.2021 14:15Вы, наверное, сторонник старых добрых бумажных голосований, где наблюдатели могут всё проверить, а бюллетени можно пересчитать и убедиться, что результат абслютно честен, да?
ifap
04.09.2021 13:13+1Что не принимается в качестве уязвимостей
— Сообщения об отсутствии механизма защиты или несоответствия рекомендациям без указания на реально существующие негативные последствия
— Уязвимости в партнерских сервисах и продуктах, которые непосредственно не затрагивают безопасность сервисов компании
Т.е. загрузка на сайтах электронного голосования неконтролируемого кода Гугла и Яндекса уязвимостью априори не считается, браво!
И TLS_RSA — тоже не уязвимость, т.к.Сообщения об уязвимости, основанные на версиях ПО или протокола, без указания реального применения
Ну пусть живут в своем выдуманном «безопасном» мире, где в 2021 году есть клиенты, умеющие только в TLS_RSA_WITH_CAMELLIA_128_CBC_SHAAnalogBytes Автор
04.09.2021 14:16Т.е. загрузка на сайтах электронного голосования неконтролируемого кода Гугла и Яндекса уязвимостью априори не считается, браво!
А вы нам покажете конкретную уязвимость, с этим связанную?
Ну то есть где именно там грузится код гугла и яндекса и что именно он может сделать.
ifap
04.09.2021 15:04Эм… Вы сомневаетесь, что код Гугла и Яндекса там грузится? Не верьте мне на слово — проверьте сами. А сделать он может все, т.к. ни CSP, ни тем более SRI там не применяется.
AnalogBytes Автор
04.09.2021 16:54Ок, начнётся второй раунд голосования (сегодня после перерыва), тщательно всё проверим и доложим.
ifap
04.09.2021 16:59Зачем ждать второго раунда, если можно проверить прямо сейчас?
AnalogBytes Автор
04.09.2021 17:09Надо найти того, кто ещё не проголосовал в первом, а у нас в редакции уже все.
Ну или вы нам покажите, какой конкретно там код гугла на https://vybory.gov.ru/elections/ и далее при выдаче бюллетеня и в анонимной зоне.
ifap
04.09.2021 17:24fonts.googleapis.com/css2?family=PT+Sans:wght@400;700&display=swap
Интересно, что если раньше Вы говорили о коде гугла и яндекса, то теперь только о коде гугла. Т.е. Вы знаете, что код яндекса (метрики) уже убрали с сайтов.AnalogBytes Автор
04.09.2021 17:31Укажите конкретно, где именно в процессе голосования вы видите код Яндекса или Гугла.
Страница, скриншот с подтверждением.
AnalogBytes Автор
04.09.2021 17:14+1Так, где нам здесь искать код гугла и яндекса?
ifap
04.09.2021 17:25-2Где искать уязвимости
Домены: vybory.gov.ru, edg.gov.ruAnalogBytes Автор
04.09.2021 17:29+2Ок, сформулируем понятнее: на скриншотах отладочный режим браузера на доменах ДЭГ.
Покажите, где вы видите на них код Яндекса или Гугла, либо приведите свои скриншоты соответствующих ресурсов, где этот код будет виден.
ifap
04.09.2021 17:36-3Да мне и так все понятно было, это Вы чего-то не улавливаете…
Чтоб два раза не вставать:
1. TLS_RSA_ убрали, значит зачли за уявзивмость? Куда за 2 млн. зайти?
2. TLS_*_CBC из каких соображений оставили? Можете назвать клиента, который без этого не сможет зайти?AnalogBytes Автор
04.09.2021 18:03+2Хм. Вы отдаёте себе отчёт, что вы ищете «уязвимости» не в системе голосования, а в лендинге с красивыми картинками?..
И что именно вы там планируете этими «уязвимостями» сделать? Картинки на менее красивые подменить?ifap
04.09.2021 18:07Хм, Вы отдаете себе отчет, что согласно ТЗ:
Где искать уязвимости
Домены: vybory.gov.ru, edg.gov.ru
?
А если ТЗ врет и я не там искал, то поясните, почему с «лендинга» убрали уязвимые шифронаборы?
AnalogBytes Автор
04.09.2021 18:24-1(пожав плечами) Нет, если вам нравится устраивать глуповатую клоунаду, то пожалуйста.
ifap
04.09.2021 18:34-1Нет, если Вы выражаете не свое ИМХО, а официально разъясняете и уточняете ТЗ, то я прислушаюсь.
AnalogBytes Автор
04.09.2021 18:39Простите, вы где-то в названии или описании аккаунта видите слово «Ростелеком»? Или раз начав клоунаду, трудно остановиться? Это, конечно, так.
ifap
04.09.2021 18:51-2Не вижу, потому и уточняю. ОК, Ваше ИМХО — это Ваше ИМХО, неудобные вопросы — это вопросы, на которые я не дождусь ответа. Всех благ!
Xambey
05.09.2021 12:07Извините, а почему запрещена социальная инженерия? Вы же понимаете, что этим способ 'ломают' самые защищенные системы уже лет N-цать?
P.S Я понимаю, что это больше технический тест, но все же...
Jetmanman
08.09.2021 16:30+1Все таки спрошу еще раз как в прошлой статье. Кто имеет доступ к аккаунту пользавателя? Есть ли супер админ, который за нас от нашего имени сможет эти галки поставить? Если да, то какая разница, что там реализовано после этого.
Я уверен в вашей реализации голосования и даже в том, что никто не станет надеятся на подделку голосов сложным способом путем добавления бэкдоров или сложных программных схем обмана, так как требуеися гарантированный и понятный власти результат, а не блеяние исполнителя фальсификатора про то как там бэкдоры работать будут.
Как можно проконтролировать кто именно сидит за устройством? Вполне возможно, что работодатель потребует прямо при нем кнопку нажать и доказать правильность голосования за нужного кандидата. Админ ресурс используется для фальсификаций на каждый выборах и голосованиях. Про подготовку в Королеве на бумажном голосовании уже новая газета писала. Отсюда внезапно у меня появляется больше доверия к электронному голосованию, чем к бумажному, но все равно я в нем не уверен.
Ничего лучше бумажного голосования не придумали, если конечно оно контролируется наблюдателями.
А что если один из родственников проголосует за всю свою семью как он хочет? Уж доступ к их устройствам он вполне может иметь. Это также нельзя проконтролировать. В кабинку толпой ни с родственником, ни с работодателем на нормально проведенных выборах не пустят.
alexeyrom
18.09.2021 16:25+1Мы же завтра с утра сами туда сходим — и выложим статью о том, как оно всё выглядит и работает.
Не выложили, насколько вижу?AnalogBytes Автор
21.09.2021 23:09Загрузка всех участников процесса... несколько превзошла ожидаемую.
Сейчас наконец немного выспались и готовим материал по методам независимого сохранения данных в федеральной ДЭГ и их анализу на аномалии и т.п.
zikasak
Еще и исходники выложили https://github.com/cikrf/deg2021
gennayo
Извините за глупый вопрос, но какие гарантии, что в продуктив пойдёт ПО, собранное именно из этих исходников?
zikasak
понятное дело - никаких.
AnalogBytes Автор
Так все значимые с точки зрения секьюрности процедуры выполняются на устройстве пользователя, в браузере: формирование бюллетеня, слепая подпись ключа, шифрование бюллетеня и его подпись.
На них можно просто глазами посмотреть. Сможете показать, как можно любым вненшим (читай: серверным) кодом сломать этот алгоритм — можете смело претендовать на свою долю в призовом фонде.
VitalKoshalew
А зачем? Что мешает просто показать 146%? А трижды-слепо-с-подвывертом подписанные суперпакеты — ну пусть лежат себе в базе.
Я уже не говорю о том, что скачанный с сервера JavaScript вещь такая — сегодня одному один код отдать, а завтра другому — другой.
Protos
Тем кто состоял в базе Навального скинут нормальный JS, остальным модифицированый?
AnalogBytes Автор
Скачиваете выгрузку блокчейна, считаете сами и сравниваете. Не верите финальной выгрузке — скачиваете скриптом 15-минутные выгрузки и сравниваете с финальной.
Объединитесь с друзьями и сравните ваш код.
Хотя, конечно, стоять в позе «я никому не верю!» удобнее и проще.
AM87
А вы тестировали только систему Ростелекома, или с московской тоже имели дело? Хотел разобраться с московской, и столкнулся с тем, что по ней очень мало технической информации.
AnalogBytes Автор
Мы — только Ростелекомом занимались, на две системы не хватает людей (с учётом, что мы ещё и Общественной палате РФ помогали их наблюдение поднимать).
Сейчас пытаемся найти, кто из независимых экспертов и наблюдателей серьёзно занимался московской, но там грусть и печаль, примерно так (цитата из сегодняшней «Новой газеты»):
В свете того, что скандал случился именно с московской системой, есть желание заняться разбором её результатов, но вряд ли получится раньше чем через неделю.
AM87
В общем, что удалось выяснить к настоящему моменту:
Дампы на этом сайте, по свидетельствам из сети, выкладывались на протяжении всего голосования. Однако живого дампа, который был бы сделан за некоторое время до конца голосования, пока найти не удалось. Возможно, он есть у наблюдателей? Можно было бы, как минимум, убедиться, что транзакции не подменялись.
Возможно, вам известно, что при голосовании есть возможность через окно отладки браузера сохранять хэш транзакции и мониторить затем свой расшифрованный голос в базе. Нашлось в сети несколько хэшей, по тем из них, что расшифрованы - люди подтверждают, что выбор сохранился правильный. Могу поделиться хэшами, если интересно.
До сих пор в дампе по одномандатным, который лежит в открытом доступе, отсутствует значительное количество расшифрованных голосов. Расшифровано 1,3 миллиона, хотя должно быть почти 2. Соответственно, многие проголосовавшие не видят расшифровку своего голоса.
Мониторинг по отдельным округам так же показывает, что расшифрованных голосов на треть меньше, чем в итоговом протоколе. Например, за Брюханову в расшифровке 16948 голосов, за Хованскую 27150. А в протоколе 23359 и 38459 соответственно. Откуда взялись итоговые цифры, если остаток так и не расшифрован - не понятно.
Венедиктов говорит, будто любой может взять опубликованный ключ и всё самому расшифровать. На самом деле это, конечно, не совсем так. Техническое описание не опубликовано, поэтому неизвестен ни конкретный алгоритм шифрования, ни что именно расшифровывать. Например, в каждой зашифрованной транзакции есть поле encrypted_message, однако так же есть поля nonce и public_key. nonce, очевидно, нужен, чтобы одинаковый выбор имел разный зашифрованный текст, но как именно его употреблять при расшифровке? Куда пристегнуть public_key, и нужен ли он для расшифровки, тоже непонятно.
Я, конечно, не супер спец по криптографии, поэтому надеюсь, что кому-то удастся разобраться. Но по уму, конечно, документация такого рода должна быть в открытом доступе.
AnalogBytes Автор
Третий день пытаемся выяснить, есть ли у кого-то из наблюдателей дамп. Предварительный вывод — нет, никто из них к наблюдению не готовился, дампы не сохраняли, пресловутая «нода наблюдения» на самом деле представляла собой веб-интерфейсик с какой-то статистикой, был ли реальный доступ к API блокчейна — никто не знает.
Да, это есть, но это anecdotal evidence.
ДИТ пока не объяснил аномалию.
См. п. 3
Может быть, наша группа это сделает, но не раньше чем мы закончим с анализом выгрузок из федеральной системы. По предыдущим выборам московским Алексей Щербаков делал функции расшифровки.
danzalux
Вы ведь видели уже статью:
https://habr.com/ru/post/579350/
?
danzalux
del
UserAd
И ни одного теста
zikasak
Тесты, вроде, есть. Но их столько, что считай, что нет.
fransua
Возможно удалили перед публикацией, разработка явно в другом репозитории была.