← Все уязвимости
💻 Программное обеспечение, которое нельзя проверить

Ничто не блокирует программное обеспечение до дня выборов

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

Видео-объяснение скоро

60 секунд простого объяснения этой уязвимости.

Что произошло на самом деле

Когда Washington, D.C. провел публичное тестирование системы интернет-голосования в 2010 году, команда J. Alex Halderman из University of Michigan захватила почти полный контроль над сервером за 36 часов — с возможностью изменять голоса — и пилотный проект был свернут. Это яркое напоминание о том, что система, «проверенная» в один момент, может работать совсем иначе, когда она действительно запущена.

Как обстоит дело сегодня

Этот пилотный проект интернет-голосования 2010 года — демонстрация принципа, а не система, которая используется сейчас. То, что актуально — это сам промежуток: большинство юрисдикций сегодня по-прежнему не требуют, чтобы машина доказала в день выборов, что она запускает то самое программное обеспечение, которое было проверено — это то, что показатель выше измеряет в современном законодательстве.

Проверка один раз — это не проверка в день выборов

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

Избирательное программное обеспечение часто работает так же. Оно может быть проверено и одобрено перед выборами. Но в большинстве мест ничто не заставляет машину доказать в день выборов, что она все еще запускает именно эту одобренную версию. Промежуток между «проверено» и «работает» остается без охраны.

Почему это важно

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

Как TrustVoting это закрывает

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

Как TrustVoting её устраняет

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