Сбой с выписками из системы онлайн-голосования произошëл из-за неудачной попытки ДИТ изменить формат данных

Организаторы плебисцита не рассчитали размер файлов и забыли, что при многодневном голосовании следует обозначать не только время, но и дату

С вечера первого дня голосования по поправкам к Конституции департамент информационных технологий Москвы (ДИТ) больше 12 часов публиковал пустые выписки из блокчейн-системы для наблюдения за ходом электронного голосования, обнаружили «Открытые медиа». Как удалось выяснить изданию, неполадка произошла из-за проблем, связанных с размером файла.

На сайте для наблюдения за ходом электронного голосования можно в режиме реального времени отслеживать количество выданных и принятых бюллетеней, там же показывается число зарегистрированных на онлайн-голосование и считается явка. Кроме того, на нём каждые полчаса формируются файлы в формате csv, представляющие из себя «слепок» всех записанных в системе голосов (транзакций в блокчейн-системе) на момент публикации файла, которые можно скачать.

Начиная с 20:30 в четверг, 25 июня и до 9:30 утра 26 июня на сайте публиковались файлы, которые при скачивании оказывались пустыми. За этот промежуток времени число проголосовавших увеличилось до более чем 600 000, в то время как последний доступный на тот момент файл с зашифрованными голосами от 20:00 25 июня насчитывал 497 000 принятых голосов. То есть более 100 000 принятых бюллетеней не записывались или не отображались в публичных выписках из системы.

Позже начальник управления смарт-проектов правительства Москвы Артём Костырко признал неполадку, но заверил, что запись голосов в систему производилась, а сложность возникла именно с «экспортом данных в файлы». По его словам, любой наблюдатель имел доступ к статистике и блокам транзакций.

Однако, как отметил в разговоре с ОМ член технической рабочей группы Виктор Толстогузов, ДИТ не предоставил способов записи блоков транзакций, в то время как сами блоки представляют из себя лишь цепочки символов (хэши), «мигающие» на сайте в режиме реального времени, то есть без регулярных отчётов собирать эти данные для последующего анализа наблюдателям затруднительно.

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

Как выяснили ОМ, в ДИТ в тот же вечер стали разбираться с неполадкой, а ночью чиновники сообщили в техническую рабочую группу, что данные о голосовании фиксируются и при желании их можно самостоятельно забирать с сайта (при помощи программного кода). Файлы же с записями, по словам сотрудников ДИТ, перестали формироваться после того, как подчинённые по их просьбе не смогли «нормально» добавить в качестве переменных для записи в отчëты дату принятия голоса — наряду с точным временем.

Как полагают собеседники ОМ в технической рабочей группе, в департаменте, вероятно, не сразу поняли, что в отчëтах помимо времени необходимо прописывать и дату — из-за того, что голосование идёт не один, а несколько дней — и решили исправить это уже в ходе голосования. По их словам, пустые файлы начали появляться чуть раньше, чем сотрудники ДИТ объявили о том, что намерены добавить дату.

Но это, как выяснилось, не единственная возникшая проблема. Член технической рабочей группы Олег Артамонов, обратившийся в ДИТ за пояснениями, чтобы составить рабочий отчëт о поломке, сказал ОМ, что организаторы объяснили ему сбой проблемами с размером файлов: вечером их создание остановилось из-за того, что в какой-то момент время выгрузки данных стало превышать установленный лимит на соответствующий запрос в системе блокчейн. По его словам, днём 26 июня проблемы с выгрузкой повторились, когда размер файлов стал приближаться к 200 Мб.

Как убедились ОМ, записи дат так и не были добавлены в отчёты для наблюдения. «Я подозреваю, что исправление формата они отложили пока в сторону: банально на фоне проблем с генерацией и выкладкой файлов неподходящее время, чтобы ещë и внутрь этим файлам лезть», — заключил Артамонов.

Разблокировать push-уведомления

Следуйте инструкциям, чтобы активировать push-уведомления