Электронное голосование в Москве 8 сентября: только факты (часть 1)

Crypto Tyan
6 min readSep 12, 2019

--

Что это было?

Впервые в России система удалённого электронного голосования была применена в ходе выборов в Московскую городскую думу, прошедших 8 сентября. Эксперимент проводился в трёх округах столицы:
№1 (Крюково),
№10 (Северный, Лианозово, Бибирево)
№30 (Чертаново). Для этого нужно было заранее зарегистрироваться на портале мэрии Москвы и лично подтвердить своё намерение в МФЦ.

Электронное голосование должно соответствовать тем же требованиям, что и обычное проставление галочек за ширмой: свободное и тайное волеизъявление граждан.

Система электронного голосования должна отвечать следующим минимальным требованиям:

1. Предусматривать, что только имеющие право голоса могут голосовать
2. Гарантировать подсчет каждого отданного голоса и только единожды
3. Удовлетворять право избирателя формировать и выражать свое мнение свободно, без какого-либо принуждения или воздействия
4. Гарантировать тайну голоса на всех стадиях голосования
5. Предоставлять доступ к системе максимально широкому кругу избирателей, в особенности избирателям с ограниченными возможностями
6. Усиливать доверие избирателей посредством предоставления исчерпывающей информации о функционировании системы

Краткая хронология событий. Ключи шифрования

Середина июня 2019 — Дит опубликовал исходный код. Всем желающим предложили попробовать его взломать. Ссылка на гитхаб

Венедиктов сказал, что выплатит гонорар тому, кто вскроет шифр.

14 августа. Уязвимость ключа шифрования, позволявшую заранее узнать результаты голосования (назовем это модуль контроля голоса), выявил криптограф из Франции Пьеррик Годри. В итоге разработчики обещали улучшить код шифрования, увеличив его с 256 бит до 1024 бит. (запомните, мы еще услышим эту цифру)

Это приватные ключи, которые разработчики разместили в репозитарии Гита, уже после обещания усложнить алгоритм шифрования:

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

Годри уже более 20 лет изучает различные системы шифрования, в 2015 году он входил в группу ученых, впервые описавшую уязвимость Logjam. С помощью нее злоумышленники могли взламывать шифрование в интернет-браузерах и операционных системах. По итогам публикации Годри и его коллег патчи для своих продуктов выпустили Microsoft, Apple и Mozilla.

В 2012 году Годри заинтересовался электронным голосованием. Он участвует в разработке системы голосования Belenios, которая предназначена для выборов в небольших организациях — научных советах и спортивных ассоциациях. Из описания системы на сайте следует, что она гарантирует тайну голосования и устойчивость от различных форм обмана.

Приведу немного циат из этой статьи:

Определить, какая длина ключа подходит для данного уровня безопасности, нелегко … Тем не менее консенсус в том, что ключи должны быть длиннее 1024 бит. Считается, что 1024-битные ключи можно взломать с помощью современных технологий и знаний, хотя такие публичные вычисления еще не проводились. Текущий публичный рекорд — взлом ключа длиной 768 бит.

Есть полезный онлайн-инструмент под названием Keylength.com, где приводятся различные минимальные стандарты шифрования в отрасли. В случае с московским интернет-голосованием нужно смотреть в столбец “дискретный логарифм/группа” (discrete logarithm/group). Как видите, никто уже не считает 1024-битные ключи безопасными.

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

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

Поясню, у системы нет технической документации, опубликованной в сообществе, нет публичной архитектуры системы, и самое неприятное, нет утвержденной и согласованной документации по безопасности системы электронного голосования в России.

Я считаю, что самая продвинутая страна в этом плане — Швейцария. С интернет-голосованием там связывают большие ожидания. Тем не менее, недавно в системе интернет-голосования Swiss Post (разработанной испанской компанией Scytl) нашли критические ошибки, хотя она гораздо лучше, чем многие другие системы.

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

Ссылка на оригинал его исследования: https://arxiv.org/pdf/1908.05127.pdf

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

У нас это были так называемые “7 хранителей ключей”. Кто же эти люди? Знакомьтесь!

Хранители ключей:

  1. Первой ключ получила председатель ЦИКа Элла Памфилова.
  2. Затем председатель МГИК Валентин Горбунов,
  3. Эксперт движения за права избирателей «Голос» Григорий Мельконьянц
  4. Глава СПЧ Михаил Федотов.
  5. Также конверты с флеш-картами получили председатели избирательных комиссий. (6 и 7 )

Нельзя не упомянуть о феномене шифрования. В России все применяемое шифровальное оборудование регулярно проходит аккредитацию ФСБ. А фирмы, его применяющие должны получать соответствующий сертификат. Таких компаний довольно много, это все кто работает с персональными данными, государственной и банковской тайной. От ФСБ есть четкие инструкции по установке такого оборудования. Там не супер ключи, довольно слабенькие, но архитектура системы позволяет обеспечить достаточное надежное хранение наших данных. И вот компания “Крипто про” поставляет свое сертифицированное оборудование в ДИТ Москвы (департамент информационных технологий, тот который поддерживает портал moc.ru).

«…использованное оборудование и программное обеспечение было развернуто и эксплуатировалось с нарушениями правил эксплуатации, утвержденных ФСБ России при сертификации данных изделий», — говорится в сообщении «КриптоПро», поступившем в РБК.

В частности, в компании указали, что система электронного голосования не была настроена на использование резервного контура при отказе основного, несмотря на то, что в распоряжении столичного департамента информационных технологий (ДИТ) имелись необходимые оборудования и программное обеспечение.

Замглавы ДИТ отметил, что у департамента «есть все логи с несрабатывания этого оборудования», и ведомство готово их выложить. Так что же они до сих пор их не предоставили?

Итак уже на стадии подготовки к выборам мы видим грубейшие нарушения:

  1. устаревшие слабое шифрование от 256 до 1024 бит
  2. неправильная установка шифровального оборудования, несоответствующая инструкциям ФСБ РФ
  3. отсутствие резервного контура
  4. закрытые данные о разработке
  5. отсутствие утвержденной документации об обеспечении безопасности системы
  6. отсутствие общественного контроля результатов голосования
  7. отказ от использования, т.н. модуля контроля отданных голосов
  8. афилированность лиц, являющихся гарантами надежности и неизменности результатов голосования с коррупционными структурами и обвиняемыми ранее в подтасовке результатов выборов
  9. отсутствие логов голосования в общем доступе
  10. отсутствие логов технических сбоев
  11. передача пароля для голосования пользователям по средствам СМС (об этих странных смсках и паролях в день голосования мы еще вспомним отдельно)
  12. отсутствие аудита системы голосования международным академическим сообществом экспертов до ее запуска

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

P.S. если кому-то интересно по ссылке ниже очень хороший и грамотный комментарий гуманитария

--

--

Crypto Tyan

Trader, business analyst. Interested in blockchain, big data, automaising business processing, decentralised networks, p2p services, DAO