«Московские выборы можно взломать за 20 минут». Француз раскритиковал код системы интернет-голосования
На американском сайте появилось исследование системы интернет-голосования для выборов в Московскую городскую думу в сентябре 2019 года. Если верить автору публикации Пьеррику Годри, схема шифрования у этой системы, мягко говоря, слабовата.
В среду, 14 августа, на сайте arXiv.org была опубликована работа французского учёного Пьеррика Годри (Pierrick Gaudry), которая озаглавлена так:
Взлом схемы шифрования московской системы интернет-голосования (Breaking the encryption scheme of the Moscow internet voting system).
Сайт arXiv.org предоставляет пользователям интернета со всего мира открытый доступ к более, чем миллиону электронных материалов по физике, математике, информатике, экономике и другим наукам. В описании сайта указано, что «все публикации на сайте должны соответствовать академическим стандартам Корнеллского университета» и что arXiv.org принадлежит непосредственно университету, финансируется им и Фондом Саймонса.
Сам по себе Корнеллский университет или Корнелл — один из крупнейших и известнейших университетов США, который входит в элитную Лигу плюща. Но исследование Годри проводилось не в Корнелле, а на родине исследователя — во Франции. Слово CARAMBA в описании документа — название команды исследователей из французских исследовательских центров: научно-исследовательского института цифровых наук в Нанси (INRIA Nancy), лаборатории исследований по информатике Национального центра научных исследований (LORIA CNRS) и Университета Лотарингии (Université de Lorraine).
Команда CARAMBA («Карамба») занимается в том числе научными исследованиями в области криптографии и информационной безопасности. И именно к этой области относится документ, опубликованный Годри.
Исследование посвящено системе интернет-голосования, которую московское правительство планирует применить во время выборов в Московскую городскую думу в сентябре 2019 года. Ещё в начале марта 2019 года было объявлено, что на этих выборах будет проведён эксперимент по электронному голосованию. Госдума РФ окончательно приняла закон об экспериментальном интернет-голосовании в мае 2019 года, и тогда же его подписал президент Владимир Путин.
По словам автора исследования, эту систему голосования начали публично тестировать в конце июля, и тогда же часть исходного кода опубликовали на Github — веб-сервисе для хранения и разработки IT-проектов. Во время открытого тестирования перед его участниками стояла задача расшифровать данные менее, чем за 12 часов — именно столько будут проходить выборы в сентябре.
Годри утверждает, что доказал, что схема шифрования, используемая в коде, который был опубликован в открытом источнике, абсолютно небезопасна.
Его можно взломать примерно за 20 минут, используя стандартный персональный компьютер и общедоступное бесплатное программное обеспечение.
По словам исследователя, закрытые ключи (private keys) легко можно вычислить из предоставленных (public keys), а как только они становятся известны, любые зашифрованные по этой схеме данные могут быть моментально расшифрованы.
Годри предполагает, что данная схема шифрования будет использоваться для шифрования бюллетеней, а это значит, что, вполне возможно, голоса всех избирателей можно будет деанонимизировать. Перед тем как опубликовать свою работу, француз связался с разработчиками кода — и те уже дали ответ.
Они признают, что ключи слишком малого размера, и планируют обновить их до 1024 бит.
Впрочем, сам учёный считает, что этих мер всё равно будет недостаточно. Он указывает, что следовало бы обновить ключи хотя бы до 2048 бит, но подчёркивает, что, если его гипотеза верна, проблема состоит не только и не столько в этом.
Основная часть работы — описание стратегии, при помощи которой можно получить все закрытые ключи. Целиком с исследованием можно ознакомиться здесь. А в выводах Годри объясняет, как на практике мог бы быть применён его алгоритм:
Накануне дня выборов компьютеры должны быть подготовлены, программное обеспечение загружено, скомпилировано и протестировано. Как только начнутся выборы, открытые ключи станут доступны для шифрования избирательных бюллетеней. С помощью стратегии, которую мы только что описали, злоумышленник может получить все закрытые ключи менее, чем за 10 минут, используя три стандартных персональных компьютера, или даже меньше, если у него есть доступ к более мощной машине.
Впрочем, пока что московские власти беспокоятся из-за грядущих выборов по другим причинам. Начиная с конца июля, в столице каждую субботу проходят акции из-за недопуска независимых кандидатов. Несогласованный митинг 27 июля запомнился участникам и наблюдателям по-настоящему огромным количеством задержаний.
А согласованный митинг 10 августа стал крупнейшим протестным мероприятием в России с 2011 года. На проспект Сахарова вышли десятки тысяч человек — в том числе Face, Oxxxymiron, Юрий Дудь и Данила Поперечный.