Читаем Взломать всё. Как сильные мира сего используют уязвимости систем в своих интересах полностью

Однако это не значит, что подобное никогда не происходит. Увидев, как Ральф Нейдер повлиял на выборы 2000 г., республиканские активисты по всей стране попытались воспользоваться кандидатами от Партии зеленых{184}, чтобы переманить голоса от демократов. В Сиэтле 18-летний бывший волонтер Нейдера по имени Янг Хан подумывал о том, чтобы принять участие в выборах 2002 г. в Законодательное собрание штата. Некий «г-н Шор» помог Хану организовать кампанию, а также сделал пожертвование на нее. На самом деле этот человек был республиканским стратегом из Вашингтона, округ Колумбия. Его жена аналогичным образом поддерживала кандидата от Партии зеленых в предвыборной гонке в Сиэтле. Позже нечто подобное происходило в Аризоне в 2010 г., в Нью-Йорке в 2014 г. и в Монтане в 2018 и 2020 гг. Республиканцы помогли Канье Уэсту попасть в бюллетень президентских выборов 2020 г., надеясь, что он оттянет голоса у Джо Байдена. В итоге эти хакерские попытки провалились: в теории все куда проще, чем на практике.

С помощью хакинга можно также внести неразбериху и облегчить себе победу. В 2020 г. на выборах в конгресс во Флориде «бывший» республиканец по имени Алекс Родригес выдвинул свою кандидатуру против однофамильца{185}, сенатора-демократа от штата Флорида Хосе Родригеса, и присвоил себе коронную тему сенатора – изменение климата. Алекс не имел достаточного политического опыта и фактически не проводил полноценную кампанию, но в результате путаницы он получил целых 3 % голосов, и в результате после ручного пересчета с перевесом в 32 голоса победила республиканка Илеана Гарсия. Кампания Алекса Родригеса была поддержана пожертвованием в $550 000 от недавно созданных компаний Proclivity, Inc. и PAC, аффилированных с представителями Республиканской партии.

Стратегия разделения голосов может быть доведена до крайности. В Индии довольно часто простым гражданам с такими же именем и фамилией, как у политического оппонента, предлагают баллотироваться на тот же пост{186}

. Например, на парламентских выборах 2014 г. 5 из 35 кандидатов, претендовавших на конкретный пост, носили имя Лакхан Саху, и только один из них был реальным политиком с законодательным послужным списком. Кандидат от основной противоборствующей партии назвал тот факт, что так много Лакханов Саху вступили в борьбу в одно и то же время, «простым совпадением».

В США общей уязвимостью является сама двухпартийная система, но не меньшую опасность в плане хакинга представляет система выборов, в которой победитель получает все. Поскольку мы не требуем, чтобы кандидаты набирали абсолютное большинство голосов, ограничиваясь большинством относительным, у кандидата меньше шансов на победу, если другой кандидат имеет схожий политический профиль (или даже просто похожее имя) и разделяет голоса потенциальных сторонников.

Одним из способов решения проблемы является рейтинговое голосование, при котором избиратели ранжируют кандидатов. Кандидат, набравший наименьшее количество баллов, исключается, а голоса за оставшихся кандидатов перераспределяются в последующих турах на выбывание, пока один из них не наберет абсолютное большинство. Система рейтингового голосования нейтрализует вред, наносимый кандидатами-спойлерами (голоса потенциального спойлера просто перераспределяются в пользу другого кандидата – как правило, именно того, у кого он хотел отнять голоса), и гарантирует, что на выборах победит наиболее приемлемый для реального большинства избирателей кандидат. Показательны парламентские выборы в Австралии в 2022 г.: многие сторонние кандидаты получили поддержку в первом туре, но в последующих голоса не были «потрачены впустую».

42

Хакинг на разрушение системы

В 1729 г. Париж объявил дефолт по своим муниципальным облигациям, поэтому правительство организовало лотерею, в которой каждый держатель облигаций мог купить столько билетов, сколько позволяли его облигации. Каждый билет стоил одну тысячную стоимости облигации, и каждый месяц правительство случайным образом выбирало одного победителя и выдавало ему номинальную стоимость облигации плюс бонус в размере 500 000 ливров.

Вольтер (тот самый) заметил, что размеры выплат превышали количество билетов в обращении, поэтому он пошел на хитрость и вместе с несколькими богатыми покровителями создал синдикат, чтобы скупить все необходимые облигации и билеты. Месяц за месяцем они получали свои выигрыши и менее чем за два года заработали около 7,5 млн франков ($100 млн в сегодняшних долларах).

Перейти на страницу:

Похожие книги

Программирование. Принципы и практика использования C++ Исправленное издание
Программирование. Принципы и практика использования C++ Исправленное издание

Специальное издание самой читаемой и содержащей наиболее достоверные сведения книги по C++. Книга написана Бьярне Страуструпом — автором языка программирования C++ — и является каноническим изложением возможностей этого языка. Помимо подробного описания собственно языка, на страницах книги вы найдете доказавшие свою эффективность подходы к решению разнообразных задач проектирования и программирования. Многочисленные примеры демонстрируют как хороший стиль программирования на С-совместимом ядре C++, так и современный -ориентированный подход к созданию программных продуктов. Третье издание бестселлера было существенно переработано автором. Результатом этой переработки стала большая доступность книги для новичков. В то же время, текст обогатился сведениями и методиками программирования, которые могут оказаться полезными даже для многоопытных специалистов по C++. Не обойдены вниманием и нововведения языка: стандартная библиотека шаблонов (STL), пространства имен (namespaces), механизм идентификации типов во время выполнения (RTTI), явные приведения типов (cast-операторы) и другие. Настоящее специальное издание отличается от третьего добавлением двух новых приложений (посвященных локализации и безопасной обработке исключений средствами стандартной библиотеки), довольно многочисленными уточнениями в остальном тексте, а также исправлением множества опечаток. Книга адресована программистам, использующим в своей повседневной работе C++. Она также будет полезна преподавателям, студентам и всем, кто хочет ознакомиться с описанием языка «из первых рук».

Бьерн Страуструп , Бьёрн Страуструп , Валерий Федорович Альмухаметов , Ирина Сергеевна Козлова

Программирование, программы, базы данных / Базы данных / Программирование / Учебная и научная литература / Образование и наука / Книги по IT
Фундаментальные алгоритмы и структуры данных в Delphi
Фундаментальные алгоритмы и структуры данных в Delphi

Книга "Фундаментальные алгоритмы и структуры данных в Delphi" представляет СЃРѕР±РѕР№ уникальное учебное и справочное РїРѕСЃРѕР±ие по наиболее распространенным алгоритмам манипулирования данными, которые зарекомендовали себя как надежные и проверенные многими поколениями программистов. По данным журнала "Delphi Informant" за 2002 год, эта книга была признана сообществом разработчиков прикладных приложений на Delphi как «самая лучшая книга по практическому применению всех версий DelphiВ».Р' книге РїРѕРґСЂРѕР±но рассматриваются базовые понятия алгоритмов и основополагающие структуры данных, алгоритмы сортировки, поиска, хеширования, синтаксического разбора, сжатия данных, а также многие другие темы, тесно связанные с прикладным программированием. Р

Джулиан М. Бакнелл

Программирование, программы, базы данных