← Всички статии

Ако публиката, а не производител, притежаваше софтуера, който брои вашия глас?

Окръг Лос Анджелес построи първата публично собствена, отворена система за отчитане на гласовете, сертифицирана в Калифорния — и тя все още не решава най-трудния проблем. Ето какво доказва и не доказва.

Това е 21 август 2018 г., и офисът на държавния секретар на Калифорния токувa сертифициран нещо, което никога преди не е съществувало в историята на щата: система за отчитане на гласовете, която никоя частна компания не притежава.

Софтуерът, който ще брои бюлетините за приблизително 5,7 милиона регистрирани избиратели в окръг Лос Анджелес — най-голямата гласоподаваща юрисдикция в Съединените щати — принадлежи на публиката. Неговият изходен код не е търговска тайна, заключена в сървърна стая на производител. В принцип, всеки квалифициран инженер може да го прочете, провери и да ви каже какво прави.

Това е наистина значителен момент. Това е също началото на по-трудна дискусия.

Проблемът, който направи VSAP необходим

За да разберете защо публичното собственост на софтуер за гласуване е важна, трябва да разберете какво е произвело частното собственост.

През 2006 г. изследователи от Принстън Ариел Фелдман, J. Алекс Халдърман и Едуард Фелтен получиха Diebold AccuVote-TS — един от най-широко разпространени сензорни машини за гласуване в Америка — и прекараха около една минута с него. Това е била достатъчна. Те демонстрираха, че нападател с кратък физически достъп може да инсталира злонамерен код, който крадва гласове, докато променя всеки вътрешен дневник и броячка да изглеждат нормални. Дори построиха версия, която се разпространяваше автоматично от машина на машина. Софтуерът, работещ на тази машина, беше патентован. Никой извън Diebold не можеше да го провери. Когато изследователи най-накрая получиха един, резултатите не бяха успокояващи.

Патентованият модел създава структурна проблема: не можете независимо да проверите това, което не можете да видите. Твърдението на производител, че неговият код е сигурен, не е доказателство, че е сигурен. Правителствено удостоверение, което се разчита на собствената документация на производителя, не е независимо одит. Официално лице, което казва "ние го тестирахме", не е същото като това публиката да може да го тестира.

През 2005 г. Бюро за отчетност на правителството на САЩ изследва сигурността и надеждността на електронните системи за гласуване и откри, че ключни дейности останаха неполни — включително установяването на надлежни процедури за сертификация и хранилища за сертифициран софтуер. Това беше години след като Конгресът прие Закона за помощта при избора на Америка и финансира цялата агенция за надзор на тези системи. Апаратът за проверка, че машините за гласуване работят както се твърди, всё още се сглобяваше.

"Ние използваме сертифицирани системи" е твърдение. Това не е проверка.

Какво точно построи окръг Лос Анджелес

Програмата Voting Solutions for All People — VSAP — се роди от разочарование с точно тази динамика. Стареещите машини за гласуване Sequoia AVC Edge на окръг Лос Анджелес приближаваха края на живота си, а пазарът за системи за замяна беше доминиран от няколко частни производителя, чийто софтуер беше защитен като патентован. Окръгът реши да построи свой.

Резултатът, сертифициран от държавния секретар на Калифорния на 21 август 2018 г., беше VSAP Tally Version 1.0 — първата сертифицирана избирателна система на Калифорния, която използва отворена технология и, в думите на самия щат, "първата публично собствена, отворена избирателна система за отчитане, сертифицирана по стандартите на Калифорния за системи за гласуване."

Окръгът също установи отворена работна група, предназначена да позволи на други юрисдикции да се опират на публично собствения код. Визията беше обществена собственост: софтуер за гласуване, който принадлежи на демократичния процес себе си, а не на баланса на никоя компания.

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

Но си струва да бъдем точни относно това, което действително променя — и какво не.

Отвореният код премахва един проблем. Той не премахва проблема.

Ево какво откритото софтуер за гласуване наистина постига: означава, че софтуерът, който брои вашия глас, може да бъде прочетен, анализиран и критикуван от всеки с умения да го направи. Изследователи на сигурността, академици, конкуриращи производители, чужди правителства, любознателни граждани — всички те могат, в принцип, да проверят кода и да ви кажат дали нещо е грешка.

Това не е малко нещо. Това е точно как Швейцария открива опустошителен дефект в своята система за пощенско електронно гласуване през 2019 г. Когато швейцарската пощa публикува изходния код на система за интернет гласуване, построена на Scytl, независими изследователи Сара Джейми Люис, Оливие Перейра и Ванеса Тийг анализираха го и откриха криптографска задна врата: дефект в доказателството за разбъркване, което би позволило на орган да генерира трансцендент, който изглежда математически валиден, докато мълчаливо е променил гласовете. Системата твърдеше, че е универсално проверима. Не беше. Швейцарската пощa отпусна системата. Дефектът беше открит, защото изходът беше публичен.

Затворена система не може да бъде хвана по този начин. Задната врата остава скрита, докато някой с вътрешен достъп избере — или бъде платен — да я разкрие.

Но отвореният код е начално условие, а не финишна линия.

Обмислете какво все още трябва да е вярно, за да е надеждна отворена система за гласуване:

Първо, кодът, който работи на дня на избора, трябва действително да е кодът, който е публикуван. Отвореният софтуер е проверяем. Компилираният двоичен файл, работещ на конкретна машина в конкретна нощ, е различен артефакт. Ако не можете да проверите, че публикуваният изходен код и работещата програма са същите — чрез криптографски хешове, проверени спрямо публикувания код, запечатани преди разполагане и проверени след — тогава публикуването на изходния код е жест на прозрачност, а не гаранция.

Второ, физическата верига на отговорност все още управлява това, което софтуерът брои. Бюлетина, която е разменена, загубена или дублирана преди да стигне до сканера, не се интересува как отворен е софтуерът за отчитане. Когато Австрийския конституционен съд анулира президентските избори през 2016 г., не беше, защото софтуерът е грешен — беше, защото приблизително 77 000 пощенски бюлетини са обработени преди да разреши законът, от неоторизирани лица, без необходимите свидетели. Приблизително 30 000 гласа отделяха кандидатите. Софтуерът можеше да е бил перфектен и резултатът все още щеше да е неумерим, защото физическата верига е разкъсана. Нито един размер на отворен код не поправя затворена торба, отворена в грешната стая в грешния час от грешните хора.

Трето, одитирането на резултата все още изисква физически запис, който софтуерът не може да подправи. Отворена система за отчитане на гласовете, която произвежда само цифрово число — никоя проверена от избирател бумажна пътека, никой независимо проверяем артефакт — все още ви оставя да вярвате на резултата на машината. Германския федерален конституционен съд улови това в своя исторически решение от 2009 г.: избор е легитимен само когато "съществените етапи на гласуването и определяне на резултата могат да бъдат изследвани от гражданина надеждно и без специални познания по предмета." Четенето на изходен код изисква специални познания. Броенето на бумажни бюлетини не.

Одитът все още трябва да се случи — и все още носи грешка

Отвореният код прави системата проверяема преди избора. Одитите правят резултата проверяем след него.

И двете имат значение. Нито един самостоятелно е достатъчен.

Пълното ръчно броене на Джорджия през 2020 г. на приблизително пет милиона бюлетини потвърди машинно отчетения резултат в рамките на приблизително една десета от един процент — мощна демонстрация на това, което могат да постигнат бюлетини, маркирани от избирателя, плюс сериозен процес на одит. Колорадо е станал първия щат, който е завършил държавен рискови одит през 2017 г., вграждайки статистическа строгост, която фиксирани процентни точкови проверки не могат да съответстват.

Но одитите имат граници, които рядко се обсъждат честно.

В окръг Антрим, Мичиган, през 2020 г., ръчен брой, предназначен да проверка коригирани машинни резултати, отличава се от машинния брой с около дузина гласове от приблизително 15 700 излезли. Не защото на измама. Не защото на софтуер. Защото ръчният брой се прави от хора в 2 ч. сутринта под флуоресцентни светлини, четейки маркировки, които понякога са двусмислени, прилагайки преценки, които варират от маса на маса. Ръчният брой е золотният стандарт — и золотният стандарт е все още грешен с дузина гласове в малък окръг.

При раса, решена с по-малко гласове от това, "ръчният брой го потвърди" е успокояване. Това не е доказателство.

В Уиндъм, Ню Хампшър, държавноред одит откри значителен брой грешно счета при гънки през целевите области на бюлетиния — машина за сгъване под наем, която смачка пощенски бюлетини в овалната цел, която оптични сканери четат като маркирани гласове. Никоя малвер. Никоя измама. Механично взаимодействие между наемна машина за сгъване и оптична система на сканер на бюлетина, произвеждаща грешки в стотиците. Хвана само защото бумагата съществуваше и ръчният брой можеше да възстанови намерението на избирателя.

Урокът не е "бумага отказва." Урокът е, че всеки метод — машина, ръчен брой или оптичен сканер — носи неуменаляма грешка, и единственият честен система е този, при които тези грешки могат да бъдат независимо хванати и измерени, а не просто успокоени от официални лица.

Какво "публично собствена" все още не може да ви каже

Ето въпроса, който архитекторите на VSAP не можеха напълно да отговорят само като направиха кода публичен: кой го проверява, колко често и с каква независимост?

Публикуването на изходния код е необходимо. Не е достатъчно, ако някой действително го прочете — враждебно, с цел да намери какво е грешно, а не да потвърди какво изглежда правилно. Висшия избирателен съд на Бразилия приканва публиката да атакува своите машини за гласуване при официален годишен тест на сигурност, като квалифицирани външни тестери подават одобрени планове за тестване и находки, използвани за подобряване на системите преди всеки избор. Това е институционализиран враждебен преглед — не удостоверение, продължаващо предизвикателство. Това е модел, при който "вярвайте ни" се замяна с "опитайте да го разбивате."

Вашингтон D.C. открива нещо подобно, по трудния път, през 2010 г.: когато Округът откри пилот за връщане на интернет бюлетина за публично тестване преди разполагане, екип от Мичиганския университет придоби близо пълния контрол на сървъра в приблизително 48 часа, променя всички бюлетини, които бяха намачкани, и остана необнаружен за дни. Уязвимостите бяха хванати, защото тестирането беше отворено и реално. Системата никога не е използвана за живо гласуване. Публично враждебно тестване — не частно удостоверение — е това, което защити избирателите на D.C.

Работната група на VSAP за отворен код и публичното хранилище на код са стъпки в тази посока. Но хранилище на код не е същото като институционализирана програма за враждебно тестване с публични находки, задължителна коригиране и независимо потвърждение.

Въпросът, който си струва да се натисне: е ли работещата версия на VSAP Tally независимо и враждебно тествана от страни без финансова връзка с окръга или който и да е производител? Всеки план за тестване и неговите находки били ли са направени публични? Не кодът — специфичният двоичен файл, който е работил на последния избор, верига-на-отговорност дневници за всяка карта памет, хеш стойности, публикувани преди отварянето на полетата.

Това не са риторични въпроси. Това е списъкът за проверка, който отделя "отворен код" от "независимо проверяем."

Линията от 2000 г. до днес

Законът за помощта при избора на Америка прием през 2002 г. като федерален отговор на избора от 2000 г., в който Върховният съд установи, че идентични пробивни бюлетини се оценяват различно от различни преброиватели в различни окръги — вдълбавани гари преброени тук, отхвърлени там — без еднакъв, предварително публикуван стандарт за четене на намерението на избирателя. Проблемът не беше измама. Была е неясност, вградена в системата, разрешена от човешката преценка, приложена непоследователно, произвеждаща резултат, който зависи от това кой брои в коя стая.

HAVA финансира ново оборудване и創 Комисия за помощ на избирателите. Премести изискванията за система за гласуване към федерален базов план. Какво го направиха не — и какво GAO документира три години по-късно — е建築 пълния апарат за независимо проверка. Стандартите и сертификацията са само толкова силни, колкото институцията, която ги наринчва, и тази институция все още се сглобяваше.

VSAP е различен подход. Казва: вместо да те молим да вярваш на производителя, молим те да прочетеш кода. Това е напредък. Това не е дестинацията.

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

Софтуер за отчитане с отворен код е един кирпич в тази стена. Проверени от избирател бумажни записи са друго. Рутинни, независими, враждебни одити — не вътрешни точкови проверки — са трети. Криптографски ангажименти, които доказват публикуваният код е работещ код, са четвърти. Резултати в реално време, на ниво избирателен район, машинно четими, които всеки може да изтегли и независимо помирира, са пети.

Окръг Лос Анджелес построи нещо наистина важно. Това е също построило нещо, което все още може да бъде скрито от затворена стая, разкъсана верига на отговорност, или компилиран двоичен файл, който никой не е проверил спрямо публикувания изходен код.

Аргументът за VSAP е същия аргумент, който винаги е бил налице: прозрачност бива над тайност. Отворен надвиши затворен. Проверяемо надвиши вярвай-ми. Какво той не е пълен. И "пълен" е единственият стандарт, който позволява на публиката — не производител, не държавен секретар, не съдия — потвърди, че отчетът е правилен.


Какво все още не може да бъде проверено независимо: дали специфичните компилирани двоични файлове, които е работили на VSAP машини в някой дата на избори, са были криптографски проверени спрямо публикувания отворен код преди отварянето на полетата, и дали тези записи на проверка са публично налични в машинно четим формат. Какво би го направило проверяемо: задължителното издаване на хеш преди избора, публично враждебно тестване с публични находки, и резултати на ниво избирателен район, публикувани в момента, когато отчетът на всеки район е пълен — за да всеки може да ги помири.

Вижте как пролука на тайния изходен код се разпростира по целия свят →

Прочетете двуминутната версия на проблема с проверяемостта →

Проучете нашата пълна база данни на случаи →

Източници