Хакерам предложили взломать интернет-голосование в Москве. Когда это сделали, мэрия перестала подводить итоги конкурса

Источник: GitHub

Департамент информационных технологий мэрии Москвы во время очередной публикации задания для проверки надежности интернет-голосования не выложил на GitHub ответы к предыдущему заданию. Публичные ключи и зашифрованные сообщения (задание) на 18 августа уже опубликованы, а приватные ключи и исходные сообщения (ответы) к задаче от 7 августа — нет.

«Медуза» использовала задание от 7 августа как пример того, что мэрия использует ненадежный (слишком короткий) ключ для шифрования голосов в интернет-голосовании. В карточках, опубликованных 16 августа, даны ответы на это задание, по которым можно было бы проверить правильность расшифровки.

Раньше новое задание всегда публиковалось вместе с ответом к предыдущему. Мэрия подчеркивала, что именно расшифровка ответов до их публикации на GitHub — критерий успешного взлома системы. На момент выхода карточек «Медузы» (как и на момент выхода этой заметки) ответ опубликован не был.

В задании от 18 августа есть еще одно отличие. Длина публичного ключа изменилась. Теперь это не три ключа по 256 бит, а один — длиной 1024 бита, как и обещали в мэрии. При этом код смарт-контракта для использования нового ключа пока не поменяли (он все еще рассчитан на три ключа по 256 бит).

Обновление. Изменения в коде смарт-контракта для работы с ключом длиной 1024 бита были опубликованы вечером 20 августа.

Проблему с шифрованием голосов для интернет-голосования обнаружил французский криптограф Пьеррик Годри. Он представил скрипт, позволяющий взломать шифр за 20 минут на бытовом компьютере.

В мэрии настаивают, что Годри не взломал систему, а лишь указал на недочеты.

Magic link? Это волшебная ссылка: она открывает лайт-версию материала. Ее можно отправить тому, у кого «Медуза» заблокирована, — и все откроется! Будьте осторожны: «Медуза» в РФ — «нежелательная» организация. Не посылайте наши статьи людям, которым вы не доверяете.