Pull to refresh
0
0
Send message

Вот, смотрите, что написано на сайте mos.ru в разделе "Ответы на вопросы":


Откуда я знаю, что вы посчитали все голоса, которые поступали онлайн?

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

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


То есть, на сайте mos.ru написана ложь. Блокчейн, в котором считали голоса, был приватный, и подключиться к нему было нельзя.


Еще, кстати, непонятно, почему на федеральных выборах и в Москве использовались разные блокчейны — Москва это что, отдельное государство со своими правилами? Хотя в Москве хотя бы выложили публичный блокчейн, а федеральный на https://stat.vybory.gov.ru вообще не выложен.


P.S. Я заметил, что тут вставляют ссылки на видео об обнаруженных аномалиях голосования (% голосования за ЕР растет и падает по одному графику). Не надо вставлять видео, никто не будет его смотреть, надо вставлять ссылку на текстовый пост: https://www.facebook.com/maxim.gongalsky/posts/10224328921105036

Обратите внимание, что в документах содержится явная ложь. В документе от Прокуратуры написано:


информация, размещенная на информационном ресурсе ..., содержит призывы к осуществлению экстремистской деятельности

То есть предложение пойти на участок и проголосовать против Единой России — это призыв к экстремистской деятельности? Может, тогда правоохранительным органам стоит пойти к избирательному участку и там ловить экстремистов с поличным?


Далее, в другом уведомлении написано, якобы распространяются материалы якобы "экстремистских" организаций "ФБК", "Фзпг", и Штаба Навального. Однако если посмотреть документ со списком кандидатов, там нет наименования этих организаций. Следовательно, Роскомнадзор направил требование, содержащее ложные сведения.


Отдельно хочется обозвать идиотами тех хабрапользователей, кто утверждал, что не нужно собирать email при регистрации на сайте "Умного Голосования" и что можно просто зайти и посмотреть список. Ну попробуйте сейчас без использования технических средств зайти на сайт. Трудно поверить, вроде сайт для айтишников, неглупых людей, а извилин на то, чтобы понять, что власти заблокируют сайт, у них не хватает. Откуда такие берутся.


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

Уже не первый инцидент с решетом под названием ElasticSearch. Это показывает, что подход, выбранный разработчиками ES — пусть пользователь сам фаерволлами закрывает доступ — не работает в реальности. Не надо делать сервисы без авторизации. Надо делать только с авторизацией и не разрешать ставить пароль короче 16 символов. Сделать примитивную авторизацию по прописанному в конфиге паролю несложно.


Ну и "Билайн" тоже хорош. Как делать правильно: хранить ПД в отдельной, хорошо защищенной базе, а во всякие логи и сторонние базы писать не сами данные, а лишь идентификатор пользователя. А Билайн, сделал ровно наборот. Хотя, как я понимаю, в России большинство программистов пишут в таком же стиле и в вашей компании, уважаемый читатель комментария, делают точно так же.

Регистрация торгового знака незаконна, и не надо быть юристом, чтобы это понять:


ГК РФ Статья 1483.


9. Не могут быть зарегистрированы в качестве товарных знаков обозначения, тождественные:

1) названию известного в Российской Федерации на дату подачи заявки на государственную регистрацию товарного знака (статья 1492) произведения науки, литературы или искусства, персонажу или цитате из такого произведения, произведению искусства или его фрагменту, без согласия правообладателя, если права на соответствующее произведение возникли ранее даты приоритета регистрируемого товарного знака;

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

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


Только тут есть один подвох. Это абсолютно незаконно. Нельзя просто так затребовать список заходивших на сайт и нельзя просто так получать персональные данные пользователей, а тем более их куда-то выкладывать.


Аналогично незаконной является блокировка сайта. На сайте не содержится каких-либо экстремистских материалов, призывов или чего-то, за что можно блокировать сайт.


Доказать, что данные выложило государство очень просто: выложенные данные не собираются в приложении и достать их можно лишь из государственных баз. Например, судя по заголовкам колонок, база данных содержит данные полученные из Сбербанка. Каким образом можно их законно получить? Или где можно законно взять ФИО и дату рождения?


Напомню, что в предыдущий раз публикации данных в свойствах файла стояло "ГУ МВД по Москве". Также, ранее был случай, когда Яндекс передал властям, а те передали посторонним лицам данные жертвователей на кампанию Навального.

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


Во-первых, в государстве здесь нет необходимости. Если банк хочет аутентифицировать граждан по биометрии, то он может создать свою закрытую систему для этого, за свой счет. Вместо этого почему-то он обязан использовать государственную систему, созданную за счет налогоплательщиков, и сдавать все собранные данные государству.


Вы скажете: но тогда надо по-новой регистрироваться в каждом банке. Я, честно говоря, не вижу тут проблемы. Это не такая сложная процедура, чтобы тратить бюджетные деньги на ее упрощение. Но если уж мы решили их тратить, правильно было бы сделать систему добровольной: гражданин по желанию может передать свои данные государству, а может не передать. Справедливо? Вместо этого государство обязывает передавать ему данные. На каких основаниях? Почему у гражданина нет возможности отказаться от передачи данных?


Во-вторых, нет возможности контроля государства. Как мы можем проверить, что доступ к данным осуществляется только по установленным законом процедурам с соблюдением всех требований? Никак. Следовательно, государство может игнорировать требования закона и никто этого не узнает, и ничего ему за это не будет. Опять же, решением проблемы было бы сделать передачу данных государству добровольной.


Если сложить эти факты, то остается одно объяснение: государство создает эту систему, чтобы собирать биометрические данные граждан, которые можно использовать для слежки за ними. За счет этих же самих граждан, что интересно.


Более того, в планах, как я понимаю, обязать собирать данные со всех граждан:


Как пояснил представитель «Ростелекома», использование Единой биометрической системы для банков будет обязательным при совершении юридически значимых действий, например открытии счета

Более того, некоторые банки уже принудительно делают фото клиента.


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

Не могу пройти мимо. По моему, вы в статье немного манипулируете, рассчитывая на то, что читатель не сможет разобраться и поверит вам на слово. Вы сравниваете 2 примера кода сортировки и пытаетесь на их примере показать недостатки архитектуры VLIW в сравнении с архитектурой Интел. Что динамическое планирование, осуществляемое процессором Интел, эффективнее статического планирования компилятором.


Но код этого не показывает.


Действительно, в коде процессора Эльбрус мы видим много NOP'ов:


  • 2 ненужных NOP в начале цикла. Это, очевидно, ошибка компилятора, так как никакой нужды в них нету. Их нужно вынести за цикл.
  • 2 NOP после операции чтения из памяти
  • 3 NOP после сдвоенной операций записи в память

В то же время процессор Интел выполняет итерацию за 3 такта. Процессор Интел, видимо, не делает пауз после операции работы с памятью (если бы он делал, он бы не уложился в 3 такта). Также, я подозреваю, он делает спекулятивную запись в память (которая будет отменена при выполнении перехода jle .L7).


Последние 5 NOP вставлены не из-за того, что архитектура VLIW или статическое планирование плохи. Нет, они вставлены из-за того, что в Эльбрусе медленная подсистема работы с памятью. Он, получается, не умеет быстро читать данные и быстро записывать, и, видимо, не умеет записывать спекулятивно.


Но это не недостаток архитектуры VLIW или статического планирования. Это недостаток конкретного процессора Эльбрус. Архитектура VLIW не запрещает и не мешает вам сделать работу с памятью/кешем быстрой. А статическое планирование позволяет уложить цикл в 3 такта.


Если бы у нас был процессор, который быстро работает с памятью, то этот цикл можно было бы статически скомпилировать в 3 такта:


L1: mov edx, [rax] | tmp = rax + 4 | cmp rsi, rax | подготовка перехода к L8
L2: (спекулятивно) mov [tmp], edx | cmp edx, ecx | jne .L8 | подготовка перехода к L7 и к L1
L3: (спекулятивно) mov [rax], ecx | jle .L7 else jmp .L1 | (спекулятивно) sub rax, 4


То есть, в теории архитектура VLIW и статическое планирование позволяют достичь той же производительности, что и Интел. А если бы процессор позволил нам совместить в одной команде cmp с jmp и делать 2 операции записи за такт, то может быть этот цикл можно было бы ужать и в 2 такта.


Да, сложно сделать такой компилятор. Но сделать аналогичный "оптимизатор" в железе может быть еще сложнее и дороже.




Далее, про Интел. Архитектура x86 это как раз слабое место Интел. Эта архитектура была придумана для 16-битного процессора, а часть команд в ней (вроде add bl, al) вообще была введена для совместимости с 8-битным 8080. То есть, эта архитектура содержит 50-летнее легаси, разрабатывалась для медленных процессоров без распараллеливания операций, без кеша.


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


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




Что касается "сложности" ассемблера. Я это вообще не считаю недостатком. Если мы можем упростить процессор путем усложнения ассемблерного кода, то это однозначно выигрыш. Так как написать код дешево, просто и быстро, а проектировать железо дорого и сложно.




Ну и еще одна мысль. Допустим, Интел потратил миллиард долларов и сделал быстрый процессор. А мы потратили 10 миллионов и сделали процессор в 5 раз медленнее. Но в пересчете на затраченный доллар мы выиграли в 20 раз.

Вообще, статья названа неправильно. Не "суд запретил", а "Путин запретил". Надеюсь, что Гугл не станет выполнять это идиотское решение.


А также процитирую законы:


ГК РФ Статья 1483.


  1. Не допускается государственная регистрация в качестве товарных знаков обозначений, не обладающих различительной способностью или состоящих только из элементов:


1) вошедших во всеобщее употребление для обозначения товаров определенного вида;
2) являющихся общепринятыми символами и терминами;

Хотя там есть еще п. 1.1:


1.1. Положения пункта 1 настоящей статьи не применяются в отношении обозначений, которые:

1) приобрели различительную способность в результате их использования;

Также, есть такой пункт:


9. Не могут быть зарегистрированы в качестве товарных знаков обозначения, тождественные:

1) названию известного в Российской Федерации на дату подачи заявки на государственную регистрацию товарного знака (статья 1492) произведения науки, литературы или искусства, персонажу или цитате из такого произведения, произведению искусства или его фрагменту, без согласия правообладателя, если права на соответствующее произведение возникли ранее даты приоритета регистрируемого товарного знака;

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

Во-первых, насчет исходников. На Гитхаб выложены лишь:


  • утилита на Electron для создания и разделения ключей
  • код некоего сервиса на Scala, который принимает по gRPC различные запросы вроде "добавить userId в список" или "голос", делает минимальные проверки и отправляет обратно успешный или неуспешный результат
  • несколько фронтенд-проектов
  • REST-сервис, который позволяет сделать несколько действий (вроде начать голосование) и следит за очередью событий

Но система построена из кучи микросервисов и код многих из них отсутствует. Например: отсутствует код, который принимает и проверяет заявки на участие в электронном голосовании.


Также, интересно, что в сервисе rtk-decrypt предусмотрена операция "отката" транзакций:


При получении события rollback:

удаляются все блоки с указанной высоты
удаляются все транзакции и бюллетени с указанной высоты
эмитится событие startSync с предыдущего блока, либо с genesisBlock

Также, я не понимаю, зачем здесь нужен блокчейн с майнингом если 100% серверов контролируется организатором и, как мы видим, он может еще и что-то там откатывать.


В электронном голосовании есть зияющая уязвимость: нет никакого контроля за оформлением заявок на электронное голосование. Невозможно убедиться, что в нем будут принимать участие реальные люди, а не фейковые аккаунты. Это позволяет организаторам голосования незаметно добавить огромное количество голосов. При этом в блокчейне все будет выглядеть корректно. Нет возможности просмотреть списки избирателей, технические данные (IP-адреса, номера телефонов, с которых оформлялись заявки).


Вы скажете: ну, ЦИК такого не допустит. Но давайте не смотреть на авторитет ЦИК, а на реальные дела. Вспомним, например, выборы в Приморье, где были огромные фальсификации, и никаких последствий для исполнителей. ЦИК найти и наказать виновных "не смог", правоохранительные ограны тоже. Или выборы в Мосгордуму, где ЦИК по надуманным причинам снимал подписи у кандидатов. Или выборы 2019 года в Петербурге, где избирательные комиссии закрывались, прятались от кандидатов, создавали фейковые очереди и всячески препятствовали регистрации кандидатов. Опять же, никто за это не сел. Или как в 2018 через "мобильного избирателя" сотни тысяч человек отписали из Петербурга в отдаленные регионы. Я не понимаю: если в 2018 году смогли отписать сотню тысяч человек, и никто за это не сел, то что помешает добавить миллион фейковых избирателей?


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

…а что с приёмом СМС?
Ни один из купленных телефонов не предоставляет полноценный AT-порт через USB или Bluetooth. Чтение SMS-сообщений с компьютера не реализовано нигде.

Если вас интересует прием СМС как можно дешевле, посмотрите в сторону GSM-модемов вроде A6, A7, SIM900. У них SPI-интерфейс, есть возможность отправки СМС, GPRS и даже звонки. На алиэкспрессе от 350 р. Правда, они новомодные 4G не поддерживают. Правда, я их не тестировал и гарантировать что-то не могу.


Ну и DNS, конечно, разочаровал. Вроде приличный магазин был.

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


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


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


Если бы в программе справа была панелька для просмотра букв в тексте, это было бы легко заметить.

Что-то у меня вызывает сомнение оценка разработки EDA Tools в тысячи человеко-лет. Что там такого на тысячу лет? Формулы переключения транзисторов составить и подставить в программу?


Что касается архитектур:


  • x86 не стоит даже рассматривать, она придумана в эпоху последовательных 16-битных процессоров и безнадежно устарела
  • ARM с их хотелками стоит сразу отказать

Архитектура должна разрабатываться с учетом современных реалий: многопроцессорные системы с out-of-order исполнением. Не нужны древние архитектуры, рассчитанные на in-order процессоры.


Также, мне кажется, нужно готовиться к NUMA (когда у каждого процессора своя память). Частота процессора больше не растет, следовательно единственный способ повысить производительность — это ставить больше ядер: 64, 128, 256. Кому нужны убогие 4/8-ядерные процессоры когда можно сделать 128-ядерный?


Но они будут конкурировать за доступ к памяти, потому единственный вариант — дать каждому ядру свою память.

Вообще, gdb позволяет при срабатывании брейкпойнта вывести значение переменной и продолжить выполнение автоматически. Это довольно удобная опция.


Но я себе это представляю немного по-другому: мы просто в исходном коде ставим аннотацию Log(HL) и эмулятор, когда доходит до этого места, выводит в консоль значение HL. При этом это именно аннотация, то есть она не создает кодов команд в объектном файле, и не тратит циклы процессора. Аналогично должна работать аннотация assert HL > 0x2000 — она отсутствует в бинарном файле и присутствует только в метаданных к файлу. Аннотации используются только эмулятором и игнорируются на реальном железе.


Аналогично с помощью аннотаций можно собирать метрики и размечать код для профайлинга.

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


  • профайлинг кода с точностью до такта
  • сбор метрик и телеметрии. Например, мы можем в игре собирать статистику, сколько спрайтов отображается на экране, сколько времени это отняло. И естественно, отлавливать случаи, когда пропускается кадр из-за нехватки времени. Более того, мы можем написать скрипт, который будет проходить по уровню и замерять производительность каждого экрана в игре. Затем строить тепловую карту. Это поможет увидеть "тяжелые" места в игре и может быть, что-то поменяв, мы сможем от них избавиться.
  • возможность выполнять юнит-тестирование кода
  • возможность расстановки ассертов вроде assert HL >= 0x2000. Такие ассерты могут найти ошибку.
  • возможность реализовать защиту памяти при косвенной адресации (вроде LD (HL), A) и косвенных переходах. Например, мы можем указать, что эта команда LD (HL), A пишет только в буфер экрана и если программа из-за ошибки попытается произвести запись в другую ячейку, это будет обнаружено.

А что касается ручной отладки, то я gdb не люблю. Я им пользовался несколько раз, но команды каждый раз забываю и гуглю. Неудобно. Мне как-то привычнее "отладка через printf".

Ещё раз, я указал, что в списке изначально может быть куча вписана чужих в тех местах, которые не проверишь.

Добавление людей в списки само по себе не дает вам голосов. Голоса дают бюллетени в урне.


Количество избирателей известно по каждому участку до выборов. Если вписать много людей, то будет видно, что неожиданно на всех участках откуда-то взялись новые записи. Очевидно, что количество избирателей не может само по себе увеличиться, например, на 10% между выборами. Это уже вызовет подозрение и заставит наблюдателей быть более бдительными.


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


То есть, масштабная фальсификация требует огромного количества людей. Чтобы вбросить миллион голосов, надо найти 100 000 — 200 000 фейковых "избирателей", готовых пойти на подлог. Это не такая простая задача. Если вам, например, предложат пойти на такое ради какой-то благородной цели спасения страны (и за небольшую доплату), вы согласитесь?


Конечно, ведь есть один суперадмин, который может всё в системе, где хранится всё государственное

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


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


ведь есть один суперадмин, который может всё в системе,

Я не знаю, как устроены госуслуги, но предполагаю, что там все строго регулируется и людей с административным доступом мало. Так же я предполагаю, что спецслужбы имеют доступ к госуслугам по служебной необходимости и никто им не будет задавать вопросы, что они делали с базой.


Никогда такого не было, что их подделывали, и вот опять.
При этом вдруг это стало самым безопасным!

Смотрите, у вас бинарная логика: бумажное голосование можно подделать. Электронное тоже. Значит у них одинаковый уровень безопасности: ее нету.


Это неправильное рассуждение. Бумажное голосование можно фальсифицировать, но это сложнее сделать и сложнее скрыть. За бумажным голосованием можно наблюдать, а за электронным (в нынешней форме) нет. Следовательно, уровень защищенности бумажного голосования выше.


Да нет, цифровое так же не такое простое, как «один сделал, что захотел». Оно так же требует кучу людей, кучу действий и прочее.

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


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

Чтобы такое голосование было прозрачным, требуется:


  • чтобы в блокчейне хранилась информация, с какого участка поступил голос. Чтобы можно было убедиться, что если на участок пришло 1000 человек, то и голосов в блокчейне с этого участка 1000, а не больше. Также, комиссия на участке после окончания голосования должна составлять и выдавать наблюдателям протокол о количестве получивших бюллетень. Который будет служить доказательством в случае каких-то расхождений.


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


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



У этого пункта появляется минус, что с его помощью можно оказывать давление на людей и требовать от них доказательства голосования за определенного кандидата (что практически невозможно на бумажных выборах). Но без возможности проверить свой голос нельзя доказать, что голос был учтен верно или нет.


А то, что есть в нынешнем виде это фикция, а не голосование.

Я не могу с вами согласиться. Бумажное голосование, на мой взгляд, намного прозрачнее, чем текущая версия электронного. Его фальсификация требует больших усилий и задействовать большое количество людей, в то время как фальсификацию электронного может провести один (1) человек с доступом администратора.


Ну тогда да, приходит кто-то, делает вид, что получает, кидает, уходит

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


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


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

Тут опять нужна сложная операция. На участке в списках обычно 2000 человек. Допустим, явка 50% и придет лишь 1000 из них. Чтобы перевесить их голоса, вам нужно найти где-то 200 человек и возить их по участкам. И соответственно на каждом участке будет 100 недовольных, от чьего имени проголосовали. Такую операцию провернуть трудно, а незаметно ее сделать не получится.


При этом у нас есть вещественное доказательство фальсификации: список избирателей, в котором стоит 200 чужих подписей.


А теперь сравним с электронным голосованием в текущей версии: в список избирателей добавляется миллион мертвых душ, голосуют как хотят и никаких следов сторонний наблюдатель увидеть не может. Допустим, в городе Москва 7,5 млн избирателей, из которых на выборы придет 50%. Это значит, что мы можем, не нарушая статистики, вбросить через госуслуги до 3,75 млн голосов что составляет 100% от реально пришедших людей и позволяет "перевесить" любой их выбор. Конечно, 100% явка будет выглядеть подозрительно, потому можно не наглеть и вбросить 1-2 миллиона — тут ничего не обнаружить.


К примеру, СМИ сообщают, что на электронное голосование записалось 2 миллиона человек. Проверить эту информацию невозможно.


В списке на таких-то квартирах будет не по одному инвалиду, а по десятку «родственников». Вы ж не можете проверить все списки?

Кандидат или партия имеет право направить на каждый участок члена с ПСГ. Он имеет право просмотреть списки перед выборами. В списке видны ФИО, год или дата рождения, адрес прописки. Обычный избиратель имеет право просмотреть информацию лишь о себе.


Участки обычно делают по 2000-2500 человек, и известно количество избирателей на предыдущих выборах. Чтобы добавить посторонних, вам надо либо создавать новые участки, либо расширять существующие и это будет заметно. Более того, мало добавить 500 людей в список, надо еще где-то найти 500 человек, которые проголосуют от имени "мертвых" душ и не сдадут вас, и не запишут разговор с вами на телефон. А что, если оппозиционеры услышат об этом и зашлют своих людей к фальсификаторам?


Итого, люди по паспорту приходят, получают в 4-5 местах, голосуют и норм. Изредка меняя куртки, шапки и штаны.

Ну вот смотрите, допустим мы хотим вбросить в Москве 1 млн голосов. Для этого нам надо найти и уговорить на незаконные действия в составе организованной группы лиц 200 000 человек. И чтобы об этом никто не узнал. И при этом будет 100 000 человек, которые обнаружат, что за них расписались. Останутся списки с фальшивыми подписями. Я не думаю, что это можно сделать незаметно, и не слышал про "карусели" таких масштабов.


И при этом вам надо, чтобы оппозиция не узнала об этом и не заслала в ваши ряды своих шпионов.


А теперь сравните это с электронными выборами: один (1) администратор добавляет на госуслуги милллион человек и голосует скриптом от их имени. Все. Задача решена. Фальсификация электронного голосования очень проста, дешева, необнаружима и не оставляет вещественных доказательств при текущей системе.


что мы надеемся, что все набираемые с улицы партиями наблюдатели честные, не подкуплены так же государством и постараются отследить происходящие вбросы

Если партия заинтересована в результате, то она будет проводить отбор, отдавая предпочтение тем, с кем работали раньше. Опять же, довольно трудно найти где-то множество людей и уговорить их делать что-то незаконное. Как вы себе представляете: приходит, допустим, директор школы и объявляет: дорогие учителя, завтра вы все будете участвовать в спецоперации по фальсификации выборов, притворяясь наблюдателями. Очевидно, что не все люди (да и директора) согласятся на такое, а кто-то запишет речь этого директора на телефон и выложит в интернет.


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


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

Интересно почитать, как устроены измерители напряжений и параметров деталей. Немного неожиданно, что для измерения напряжения можно использовать не специализированный АЦП, а счетчик потребляемого электричества. А у меня возникли такие вопросы:


  • при измерении емкости цепь R23-C9 не будет вносить искажения?
  • у вас есть массивы резисторов. А есть ли гарантия, что микросхема, подающая на них напряжение, выдает одинаковое напряжение и ток на всех выводах?
  • ну и конечно, интересно, где вы взяли устройство оцифровки с временем 50 нс (для осциллографа 20 Мгц). Чтобы строить осцилограммы с высоким разрешением в единицы или десятки наносекунд на Адруино, я хотел бы найти дешевое и быстрое устройство Sample-and-Hold, желательно в DIP корпусе, но поиск выдает в основном микросхемы вроде LF398 с временем выборки в 10 мкс. Не нужен быстрый АЦП, нужно лишь быстрое устройство S-and-H и АЦП от Ардуино. Не знаете ли вы таких устройств?

Это сложно провернуть. Давайте разберем, как проходит голосование.


1) Перед открытием участка председатель сообщает, например, что у него 2000 бюллетеней (конечно, фактически это может быть не так). Наблюдатели убеждаются, что урна пуста.


2) Далее идет голосование, люди получают бюллетени. Наблюдатель видит, что бюллетени выдаются разным людям по одной штуке. Далее люди либо опускают бюллетень в урну, либо уносят и делают с ним что хотят. В теории они, например, могут отдать его кому-то и тот проголосует за них, принесет бюллетень и положит в урну. Но это легко заметить: человек с улицы подходит сразу к урне.


Принести бюллетень с другого участка или отнести на другой не выйдет: на них стоит печать с номером участка.


При этом наблюдатель видит процесс выдачи бюллетеней и может считать, сколько их было выдано. Или вместо этого он может считать, сколько опущено в урну (кстати, на урнах с КОИБ есть удобный счетчик).


Кто-то может незаметно передать председателю дополнительные бюллетени, но какой в этом смысл? Если председатель попробует всю эту стопку запихнуть в урну, его поймают с поличным. То есть мало пронести на участок лишние бюллетени, их еще надо как-то незаметно положить в урну.


3) Голосование завершилось. Собираются неиспользованные бюллетени, пересчитываются и гасятся. Теперь мы знаем, сколько бюллетеней было выдано: начальная цифра минус сколько осталось. В урне не может оказаться больше бюллетеней, чем получившаяся цифра. Наблюдатель может сверить эту цифру со своими подсчетами.


4) После этого производится подсчет подписей в списках. Это число должно сойтись с полученным на этапе 3 числом.


5) И только после этого бюллетени высыпаются на стол и начинается подсчет. Их может оказаться меньше, чем было выдано, но не может быть больше. Даже если председатель умудрится как-то незаметно на глазах у всех подкинуть стопку бюллетеней (это надо быть фокусником, бюллетени большие и заметные), цифры после подсчетов не сойдутся. Не может оказаться в урне больше бюллетеней, чем было выдано.


Получается, чтобы провернуть описанный вами трюк, надо:


  • уговорить большое число людей унести бюллетени
  • после подсчета подписей вычислить количество, отсчитать и незаметно при всех подкинуть на стол стопку бюллетеней.

Мне кажется, это сложно реализовать.


Есть еще такой трюк, когда приходят фейковые избиратели и им выдают бюллетени без паспорта. Но его сложно реализовать: вам нужно взять большую толпу людей, возить их с участка на участок, и не вызвать подозрения наблюдателей, у которых есть чат для обмена такой информацией и фотографиями подозрительных групп людей. Я согласен, что это возможно в принципе, но требует больших усилий (и наиболее эффективно при низкой явке: вот почему не надо пропускать выборы). Плюс, фейковые избиратели должны расписываться в списке, и если потом придет гражданин, и увидит что за него расписались, он устроит скандал. Особенно если таких граждан окажется много. При этом список с фальшивыми подписями послужит вещественным доказательством фальсификации.


Как видите, бумажная процедура хорошо продумана и защищена от фальсификаций. Мы имеем возможность видеть весь процесс, начиная от пустой урны и заканчивая подсчетом. Остается бумажный след. Пожалуйста, если вы видите тут какие-то просчеты, укажите на них.


В сравнении с ней электронное голосование не наблюдаемо: на нем голосует неизвестно кто и неизвестно как. Проверить, кто отправляет голоса, нельзя. Увидеть списки избирателей нельзя. Вам просто в конце выносят листочек и зачитывают результаты. И показывают блокчейн, по которому нельзя проверить, что голосовали реальные люди, а не боты.

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


Вместо того, чтобы обвинять меня в "политоте", укажите пожалуйста ошибки в моих рассуждениях. Покажите, что описанный в статье подход решает две задачи: 1) анонимизацию голосования (даже в ситуации, если код на серверах голосования будет подменен) 2) достоверный и прозрачный подсчет голосов в любой ситуации.

Выборы — это процесс, где никто никому не доверяет: власти, кандидаты, избиратели — все смотрят друг на друга с подозрением. Потому придуманы процедуры, которые позволяют убедиться в прозрачности их проведения и точности подсчета. Прозрачность — абсолютно необходима, без нее выборы лишаются смысла.


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


Вы пишете: возможности наблюдения не нужны, так как есть прокуратура, ФСБ, которые проследят за соблюдением закона. Но зачем тогда нужна криптография? Мы тогда можем просто сделать голосование на сайте прокуратуры без всякой криптографии. Дав туда доступ ФСБ для контроля за прокуратурой. Если мы доверяем прокуратуре и ФСБ, то никакой необходимости в криптографии вообще нет.


Объясните, какой тогда смысл в криптографии и блокчейне?


Бонус крипты в том, что сейчас местный начальник может (и приходит) на местные участки, которые задолбаешься контролировать

Местный начальник может заставить бюджетников зарегистрироваться на госуслугах и отдать ему пароли. И власть даже не может послать наблюдателей проконтролировать его. На бумажных выборах, кстати, наблюдатели от "Единой России" есть на многих участках, и получается, за бумажными выборами у власти возможностей наблюдения больше. Также, на бумажных выборах есть видеонаблюдение.


А на электронных выборах вы не видите: голосует реальный человек из дома или рабочий под присмотром начальника завода.


Вы пишете: есть наблюдатели от оппозиционных партий. Но как раз наблюдать за электронными выборами невозможно. Я привел конкретный пример: нет возможности наблюдать за составлением списков участников и нет возможности проверить, что там реальные люди. Нет возможности просмотреть ФИО, адрес, IP-адрес и телефон, с которого зарегистрирован участник голосования. На "устаревших" бумажных выборах возможность смотреть списки есть.


Если про онлайн, то, не поверите, тоже в интернете, в виде блокчейна, который будет потом всем доступен.

Так а как наблюдатель может убедиться, что один избиратель добавил одну запись в блокчейн и не больше? Что никто не может придти и вставить миллион записей в блокчейн? На "устаревших" бумажных выборах есть возможность в этом убедиться, на электронных нет.


Если вообще все эти люди сговорились, добро пожаловать в уютненькую диктатуру, и зачем им вообще выборы?

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

Information

Rating
Does not participate
Registered
Activity