На следующей неделе пройдут выборы в Координационный совет. 14 мая КС анонсировал релиз приложения Belarus ID, через которое и нужно будет голосовать. «Зеркало» поговорило с руководителем команды разработчиков Павлом Либером о том, почему процесс выглядит таким сложным, зачем избирательная комиссия КС будет собирать фото паспортов беларусов и точно ли личные данные людей будут в безопасности.
«На любых настоящих выборах сегодня используются паспорта»
— Почему для голосования на выборах в КС вы решили сделать новое приложение, а не воспользоваться протестированным в 2020 году чат-ботом «Голоса» или приложением «Новая Беларусь», над которым вы долго работали?
— Мы не можем использовать «Голос», потому что это совершенно другой продукт. Его задачей было нахождение фальсификаций на участках через фотографии бюллетеней избирателей. В нем не была предусмотрена возможность полноценной идентификации личности и использования паспортов. Поэтому этот продукт мы сразу отмели.
Экосистема приложения «Новая Беларусь» сегодня используется для информирования о выборах в КС, там можно увидеть все избирательные списки и имена кандидатов. Но это больше информационная система, созданная вокруг афиши, событий бизнеса и какой-то пользы для людей.
Для голосования было решено сделать отдельную систему.
— Для голосования надо загрузить в приложение фотографию паспорта. Как вы считаете, это не испугает беларусов, которые остаются в стране?
— Нам нужно было решить очень нестандартную задачу — провести выборы полностью онлайн, без использования каких-либо центральных реестров данных, потому что никто никому не доверяет. При этом нам нужно быть уверенными, что в приложение пришли действительно беларусы и беларуски и что они не могли проголосовать дважды.
К сожалению, со всеми этими входными условиями мы очень сильно ограничены в инструментарии, который можем использовать. Поэтому вариант с предоставлением паспорта является самым простым и надежным. Это тот вариант, которому будут доверять люди со стороны, например, наблюдатели. Потому что есть очень понятное объяснение, кто у нас голосует.
Если мы говорим, что хотим провести полноценные выборы так, чтобы все остальные были уверены в их надежности, то нам приходится использовать механизмы, которые действительно близки к настоящим выборам. На любых настоящих выборах сегодня используются паспорта. С точки зрения безопасности, это отдельный очень большой вопрос, которому мы посвятили достаточно много времени.
У нас нет никакого центрального реестра данных. Не будет какой-то базы, которую можно украсть. Нельзя подкупить кого-то или угрожать кому-то, чтобы он ее украл. Мы понимаем, что КГБ сегодня может проникать куда угодно и как угодно. Поэтому пользователь сканирует свои данные, они остаются у него в приложении и никуда не отправляются.
За несколько дней до выборов приложение будет выложено в общий доступ в виде открытого кода. Плюс к этому сейчас проводится независимый аудит безопасности — это делает небеларусская компания. Каждый сможет прийти, перепроверить, ознакомиться со всеми результатами, с аудитом и кодом, провести свою независимую оценку. Мы делаем это специально, чтобы исключить человеческий фактор, потому что мы понимаем, что до сих пор находимся в условиях противодействия со стороны беларусского государства.
— Как вы будете проверять, что именно владелец паспорта решил проголосовать?
— Для этого будет использоваться система эстонской компании Veriff. У нее достаточно большой опыт в верификации документов. Они умеют определять, что человек в режиме реального времени предоставил паспорт и что это не его фотография или видео. Компании Veriff доверяют банки, они используют ее технологии для того, чтобы выдавать людям деньги. Соответственно, мы можем доверять им верификацию избирателей.
— Получается, если у человека на руках нет оригинала паспорта, то он не сможет проголосовать, предъявив его фото?
— Человек не сможет проголосовать, если попытается загрузить фото или видео паспорта. В таком случае система выдаст сообщение об ошибке. Система умеет определять, живой ли это процесс.
— На сайте Veriff есть прайс: верификация одного пользователя стоит от 0,80 до 1,89 доллара. Во сколько оценена проверка одного избирателя на выборах в КС?
— Я не могу это озвучивать, потому что у нас с ними свой договор, финансовую информацию я не могу разглашать.
— Что делать людям, срок действия паспортов которых истек?
— По моей последней информации, избирательная комиссия готова принимать просроченные паспорта. Поэтому технически мы включим эту опцию — будут приниматься и действительные, и просроченные документы.
Другое дело, что будет приниматься именно беларусский паспорт. Нельзя будет предъявить иностранный вид на жительство, водительское удостоверение и документ беженца, потому что нам все-таки нужен какой-то стандартизированный документ, чтобы исключить повторное голосование.
«В дни выборов речь будет идти о десятках тысяч человек. Не думаю, что будут сотни тысяч»
— Какие альтернативные способы верификации вы рассматривали и почему решили от них отказаться?
— Расскажу о тех, которые практически дошли до финала. Одним из них было использование исторической базы «Голоса», сформированной в 2020 году. Мы могли бы воспользоваться этим опытом, и путь был бы гораздо проще: человек мог бы просто проголосовать в чат-боте, а мы бы проверили, был ли он в «Голосе» в 2020 году, то есть действительно ли он является избирателем.
Но проблема заключается в том, что в случае со смешанной системой, т. е. с возможностью голосования и по паспорту, мы бы не смогли исключить возможность дублей: тот, кто проголосовал в «Голосе», мог бы сделать это еще раз на другой платформе.
Еще одним вариантом была возможность использования частичных паспортных данных, которые можно было бы сравнивать с базой паспортов, которая есть у демсил. Минус этого варианта в том, что у беларусского государства тоже есть эта база паспортов, что допускает возможность манипуляций с его стороны. Поэтому была проделана достаточно сложная комплексная работа, чтобы понять, как сделать нашу платформу универсальной и инклюзивной, но при этом безопасной.
Есть много способов, чтобы обезопасить людей внутри страны, но все они будут работать, только если люди будут следовать инструкциям, которые мы им дадим. Приложение можно скачать и после этого по инструкции удалить так, чтобы оно не отображалось в памяти телефона. Если все будут следовать указаниям, то это будет безопасно.
— Почему эти инструкции по удалению до сих пор не выложены в открытый доступ?
— Потому что не вышло само приложение. Пока оно доступно для раннего тестирования, которое проводят представители избирательных списков и журналисты.
Мы его не выкладываем сейчас для всех, чтобы не дать слишком большой коридор для беларусского государства, которое может начать выпускать поддельные копии, похожие на оригинал, или забрасывать магазины приложений жалобами.
— Какая явка на выборах в КС устроит вас как разработчика?
— С технической точки зрения у нас нет больших ограничений по количеству пользователей, потому что все сегодняшние системы позволяют поддерживать достаточно высокую нагрузку. На текущий момент внутреннее тестирование прошло с участием нескольких сотен человек.
Думаю, в дни выборов речь будет идти о десятках тысяч человек. Не думаю, что будут сотни тысяч, если честно. Но с технической точки зрения ограничений нет.
«Беларусский режим будет нам активно мешать»
— Приложение выйдет только 20 мая, за пять дней до начала голосования. Вы уверены, что за такой короткий срок успеете все протестировать и учесть выявленные проблемы?
— Мы тестируем приложение с апреля на разных аудиториях. Сначала оно проходило в закрытом режиме, сейчас проходит в полуоткрытом. Поэтому какое-то количество проблем мы уже успели найти и починить.
Мы постоянно должны держать в голове, что беларусский режим будет нам активно мешать. Для того, чтобы минимизировать его участие, нам приходится принимать такие решения.
— Вы тестируете приложение с апреля, но вчера появилась инструкция по его использованию, состоящая из 12 пунктов, практически каждый из которых сопровождается дополнительным текстом. Почему не получилось сделать ее более компактной и доступной?
Изначально мы разместили изображение с инструкцией из телеграм-канала Координационного совета здесь. Однако, протестировав его видимость в мобильной и десктопной версиях нашего сайта, а также в приложении, пришли к выводу, что едва ли вы сможете что-либо разобрать без дополнительных манипуляций с изображением: иллюстрация имеет слишком низкое разрешение, при этом на ней размещено очень много текста мелким шрифтом. Нажмите сюда, чтобы понять, что мы имеем в виду.
— Просто мы решили выложить очень подробную инструкцию. Если написать инструкцию о том, как зайти в TikTok и поставить там лайк, то ее тоже можно уместить в 20 пунктов. Но в реальности все эти действия займут несколько секунд.
У нас есть результаты тестов, которые достаточно четко показывают, что вместе с установкой приложения, верификацией и голосованием весь процесс занимает пять минут. Это не очень много и визуально выглядит достаточно просто.
«Механизм общественного контроля в данном случае — доверять специалистам»
— Вы утверждаете, что данные беларусов, которые примут участие в голосовании, будут храниться в блокчейне децентрализованно. Но известны случаи утечки или кражи данных из блокчейна. Почему беларусы могут быть уверены, что в вашем случае этого не произойдет?
— В нашем случае в системе не будут храниться персональные данные. Мы используем достаточно интересную технику, она называется blind signatures. После прохождения верификации у себя в телефоне человек передает в систему только хеш от своих данных, сами же они остаются у него на устройстве. Причем этот хеш будет еще раз дополнительно зашифрован для того, чтобы максимально разорвать связь между данными и тем, кому они принадлежат. Ее нельзя будет восстановить даже в случае утечки из блокчейна.
Мы используем блокчейн достаточно надежной компании Vocdoni. В конце голосования каждый пользователь получит код, с которым он может пойти напрямую к владельцу блокчейна и убедиться в том, что все операции с этим кодом были произведены корректно.
Постараемся очень просто объяснить, о чем же идет речь выше.
Хеш — это уникальный цифровой отпечаток, который можно присвоить любому файлу: фото, песне, программе или банковской транзакции.
Приложение Belarus ID отсканирует ваш паспорт и возьмет из него только личные данные в текстовом виде: имя, дату рождения, номер документа, срок его действия. Уже они, а не само изображение, и будут захешированы на вашем устройстве и переданы в онлайн-базу данных.
Когда ей для учета вашего голоса будет необходимо удостовериться, что вы — это действительно вы, она запросит у вашего приложения не скан паспорта или ваши персональные данные в текстовом виде, а только лишь тот самый хеш. Если кто-то взломает онлайн-базу, то не сможет только лишь из хеша восстановить ваши персональные данные: ни в текстовом виде, не в виде изображения.
— Для человека без специальных знаний код приложения — это просто набор букв и цифр. Как в нем разобраться?
— Для этого будет инструкция. Действительно, код — это просто набор букв и цифр, но его можно скопировать. В инструкции будет информация, куда его вставить, чтобы все перепроверить.
— Этого достаточно, чтобы обеспечить общественный контроль за голосованием?
— Механизм общественного контроля в данном случае — доверять специалистам. Общественность совершенно спокойно может самостоятельно привлечь любую компанию для проведения аудита. Либо люди могут довериться аудиту компании, которая делает это сейчас.
— Как можно убедиться, что во время голосования не было манипуляций и фальсификаций?
— Решение работает по алгоритмам с минимальным человеческим фактором. То, что оно работает как надо, — это результат аудита и проверок.
Во время голосования в режиме реального времени будет проходить мониторинг всех транзакций, мы будем отслеживать любые аномальные всплески и странную активность. Этот мониторинг будет доступен наблюдателям.
Но мы хотим исключить человеческий фактор, поэтому наблюдатель не сможет взять какую-то транзакцию и увидеть, кому она принадлежит. То, что эта транзакция от реального человека, можно будет убедиться на уровне аудита всей системы.
— Правила выборов в КС постоянно менялись. Сначала сообщалось, что выборы пройдут в марте, а у каждого избирателя будет три голоса, потом решили: все-таки в мае и голос будет один. Такая нестабильность мешала разработке приложения?
— Да. Потому что нам как разработчикам очень важно иметь какое-то хотя бы приблизительное финальное техническое задание.
Очень хороший пример — три голоса или один. Когда ты работаешь с децентрализованной системой голосования, то это достаточно важное изменение. Если по нему долго не принимают решения либо принимают одно решение, а потом его меняют, то это приводит к трате времени и сил.
Я рад, что наконец определились. Мы должны были сделать платформу, которая поможет провести голосование, в организации самого процесса мы старались не участвовать.
«Зеркало» открыто и полно говорит о беларусской политике. Мы задаем сложные вопросы и в первую очередь заботимся о безопасности людей. Это важно, даже когда вы не находитесь в Беларуси постоянно.
Поддержите редакцию, чтобы мы продолжали говорить о важном
Станьте патроном «Зеркала» — журналистского проекта, которому вы помогаете оставаться профессиональным и независимым. Пожертвовать любую сумму можно быстро и безопасно через сервис Donorbox.
Всё о безопасности и ответы на другие вопросы вы можете узнать по ссылке.