[image]

Система криптовыборов

Биткоином навеяло
 
1 2 3 4 5 6 7

U235

старожил
★★★★★

hcube> Они - да. СНИЛС + 'соль' - нет. 'Соль' - длинную дополнительную строку - избиратель добавляет самостоятельно, и она хранится в базе системы авторизации.

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

hcube

старожил
★★
U235> Зачем чесать левое ухо правой пяткой? Пара публичный/секретный ключ, из которой секретный ключ никогда не покидает чипа, в котором сгенерирован, проще, многофункциональнее и надежнее. Все уже давно придумано.

Суть предложенной механики - не способ формирования хэша - его можно и высокосекретным способом делать. А логика обработки результатов голосования, с обязательной публичной 'засветкой' промежуточных результатов. Чтобы НИКАКОЙ лазейки по неконтролируемому добавлению/изъятию голосов не было.
   8.08.0

U235

старожил
★★★★★

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

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

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

hcube

старожил
★★
U235> Это невозможно, если список избирателей с их публичными ключами заверен электронными подписями наблюдателей всех участвующих в выборе сторон. Чтоб подменить обратно в уже выставленном на всеобщее обозрение и подписанном списке публичный ключ внезапно пришедшего избирателя, надо изменить список, а тогда "слетят" подписи не только жульничающего члена избиркома, но и наблюдателей, заверивших список.


А в чем проблема-то? В базе данных данный блок записей просто стирается. Одна команда delete. И пишется заново. Думаешь, наблюдатели всех избирателей помнят?

А внести запись ПОСЛЕ голосования - вообще полная лафа.

Еще раз. Система подсчета голосов должна быть построена так, чтобы ВНУТРИ нее был невозможен СКРЫТЫЙ мухлеж. В предложенном тобой варианте предлагается довериться том, что в ЗАКРЫТОЙ ГАС Выборы нету закладок. Слушай, у нас на судебных процессах открыто мухлюют. А тут - записи в базе данных. С ними будут мухлевать - 146%! Единственный вариант это предотвратить - это ВЫВЕСТИ подсчет из-под юрисдикции ГАС Выборы. Оставив там только саму функцию авторизации пользователя и его акт голосования - по физической аналогии - выдачу ему бюллетеня. А подсчет вести ПАРАЛЛЕЛЬНО несколькими серверами, принимающими массив хеш+id_голосования+id_участка+вариант_выбора в реальном времени. Там тоже есть свои проблемы, например - как обеспечить отсылку инфы на сервера ТОЛЬКО в случае акта голосования. Но их решить проще, чем обеспечить независимость единственной ГАС выборы под госконтролем.

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

Собственно, де-факто такая система уже есть - все наблюдатели пересылают инфу о результатах по участку в обход ТИК, на независимый подсчет. И эта мера дала на последних выборах процент нарушений в районе 0.5% примерно. Притом, что на выборах в 2011 было 5-7% по Москве и 15% по стране в целом.
   8.08.0
Это сообщение редактировалось 05.01.2015 в 19:14
+
-
edit
 

Wyvern-2

координатор
★★★★★
Во-1х: если уже десятилетие в электронных системах крутятся триллиарды долларов и прочих евро, то кто мешает применить это в системах голосования? Даже выдумывать ничего не надо -а хаЦкеры пускай довольствуются своими 0,3-0,5% - примерно столько теряют банки из за них.
Во-2х: если есть работоспособная система голосования (а она есть уже много лет) то нахрена ж "ВЫБОРЫ"? Что за страсть такая свое кровное кому то даром отдать? :per: Лишь бы лишний раз мозК не напрячь :( Нахрен они, парламенты эти думские с конгрессо-альтагами в hui дудели?
В-3х: и это несомненно, именно в этом направлении человечество и будет развиваться - Маркс Энгельсович с Ульяновым соврать не дадут и спираль диалектическая, опять таки не пальцем делана...
   29.029.0

U235

старожил
★★★★★

hcube> А в чем проблема-то? В базе данных данный блок записей просто стирается. Одна команда delete. И пишется заново. Думаешь, наблюдатели всех избирателей помнят?

Ты реально не понимаешь? ВЕСЬ файл с базой данных избирателей, устанавливающий их имена и соответствие публичных ключей избирателей конкретным именам, до начала выборов ПОДПИСЫВАЕТСЯ ЭЦП наблюдателей от всех участников выборов. Сам файл все заинтересованные лица могут взять себе на память. Если ты хоть что-то там поменяешь, удалишь запись или ее изменишь, файл поменяется и электронные подписи наблюдателей под этим файлом перестанут верифицироваться. Все. Приехали. Наблюдатели, проверив свои подписи под файлом БД избирателей, видят, что списки избирателей меняли на ходу без их ведома и строчат жалобы подтверждая их неопровержимыми докательствами несанкционированного изменения списка избирателей. Начальник избирательной комиссии пакует чемодан и едет в Магадан.

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

hcube> А внести запись ПОСЛЕ голосования - вообще полная лафа.

Ты о криптографических протоколах штампов времени что-нибудь слышал? :) Уже давно придумано, как проставлять метки времени так, что хрен смухлюешь.

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

hcube

старожил
★★
U235> Ты реально не понимаешь? ВЕСЬ файл с базой данных избирателей, устанавливающий их имена и соответствие публичных ключей избирателей конкретным именам, до начала выборов ПОДПИСЫВАЕТСЯ ЭЦП наблюдателей от всех участников выборов.

Ок. Со списком смухлевать нельзя. С нима правда и так никто не мухлюет. Хотя - кстати - в ходе голосования человек 10 из 2500 в основном списке не обнаружились, и пришлось их вностить в отдельный список. Учитывая, что проголосовало 20% - их было бы порядка 50 из 2500 - где-то около 2%.

Почему нельзя смухлевать с актом голосования? Например - записать все обмены с сервером в отдельную базу - и потом провести или не провести их в зависимости от потребности ЦИК. Напомню - всему что внутри системы, мы доверять не можем - тамошний программный код может быть злонамеренно построен так, чтобы исказить результат.
   8.08.0
+
+1
-
edit
 

Mishka

модератор
★★★
U235>>> Именно системы на криптографических принципах защиты наиболее защищены от фальсификаций.
И в ни в одном нет анонимности. И объяснение тому очень простое — голос должен быть учтён и легетимен. Для первого надо сообщение расшифровать (ага, становится известно, как кто-то проголосовал), а легитимность (и одноразовость) — это прямая привязка к голосуещему. Т.е. нет тайного голосования. Как это обойти — не видно. В случае голосования традиционного, когда выдают бумажку или отправляют в кабинку после удостоверения личности, происходит анонимизация — никто не знает, что на бумажке будет написано (какая кнопка нажата), т.е. мы знаем, что товарищ пришёл и проголосовал. Знаем результаты выборов. Всё. Понятно, что могут возразить, что можно устроить слежку и прочее. Но это уже та деятельность, за которую бьют по рукам. В случае удалённого электронного голосования такая инфа получается автоматически. Более того, без неё никак.
   34.034.0

U235

старожил
★★★★★

hcube> Ок. Со списком смухлевать нельзя. Почему нельзя смухлевать с актом голосования?

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

Mishka

модератор
★★★
AXT> Ты не прав. Фишка в том, что система МОЖЕТ быть построена так, что избиратель будет анонимным, но может проверить как был учтён его голос. И, при желании, деанонимизироваться и подать в суд, если его голос был учтён неверно.

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

AXT> И более того, система может быть проверена независимо, что особо ценно. То есть, система с гарантированно обнаруживаемыми фальсификациями вполне возможна.

Как в такой системе обнаружить продажу голоса? Никак. Т.е. фальсификации можно проверить только те, которые нарушают integrity. Всё.
   34.034.0

U235

старожил
★★★★★

Mishka> И в ни в одном нет анонимности. И объяснение тому очень простое — голос должен быть учтён и легетимен.

Ты почитай протоколы по ссылочкам. Все там нормально с анонимностью, хотя и приходится поизворачиваться :)
   34.034.0

U235

старожил
★★★★★

Mishka> Как в такой системе обнаружить продажу голоса?

Ну так продажу голоса ты и в обычной бумажной системе не обнаружишь
   34.034.0

hcube

старожил
★★
U235> Читай криптографические протоколы тайного голосования по моей ссылке. Там все описано. Правда нужно некоторое образование в области криптографии, чтоб все в них понять

Не. Не катит. Никто не гарантирует, что в системе нет уязвимости, которая не позволяет подпихнуть в базу свои голоса. Или просто тупо не прибавить к результату нужную константу. Оно там КАК-ТО считается ВНУТРИ. Без контроля со стороны пользователя.
   8.08.0
?? Татарин #05.01.2015 19:38  @hcube#05.01.2015 19:09
+
-
edit
 

Татарин

координатор
★★★★★
hcube> А в чем проблема-то? В базе данных данный блок записей просто стирается. Одна команда delete. И пишется заново. Думаешь, наблюдатели всех избирателей помнят?
Хэш (да хоть CRC) подписаного блока может (и должен) быть у наблюдателя. Подделать блок так, чтоб по определению высокоэнтропийный хэш остался бы прежним - нереально.

hcube> А подсчет вести ПАРАЛЛЕЛЬНО несколькими серверами, принимающими массив хеш+id_голосования
Не нужно. И более того - тупо опасно.
Потому что очевидный ход для желающего сорвать выборы или просто объявить их недействительными - сделать N своих (декларируемо - независимых, от разных "независимых" людей и организаций) серверов, которые посчитают результат так, как требуется. С последующим обвинением всех альтернатив в участии в подтасовке: у нас 67 серверов посчитало так, а у "вас" - всего-то 15 этак.
Государство мухлюет, пропутинцы всё подделали, а далее - обкатаный в Египте, Сирии и т.п. сценарий.

В принципе, такой атаке "на доверие" подвержена любая электронная система. Любая система вообще.
Но искусственно создавать слабое место разумным людям не стОит.
   39.0.2171.9539.0.2171.95

Mishka

модератор
★★★
AXT> Может, если каждый голосующий подписывает голос собственноручно сделанным ключом, и получает подписанный государством бюллетень. Тогда достаточно обеспечить случайность выдачи бюллетеня, и все, голосование анонимно.
Дык, пофиг, что случайным образом. Если ты не занёс в реестр этот номер бюллетеня и кому выдал, то карусель. Я могу требовать 50 бюллетеней. Если занёс, то подписывай-не-подписывай, а твой голос не анонимен — твоё решение известно. Провал.
   34.034.0

U235

старожил
★★★★★

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

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

Mishka

модератор
★★★
U235> Основная проблема с подобными системами, если реализуется удаленное голосование с компьютера избирателя, - это невозможность определить, не голосует ли избиратель под давлением. Может там работодатель или еще кто выстроил избирателей перед компьютером строем и бдительно следит, как они голосуют.

Это тоже. Но в обычной системе этого тоже не определить. Может там ребёнка в заложниках держут. Этого в обычной системе не видно. А вот анонимность голосования исчезла. Bell прав.
   34.034.0

U235

старожил
★★★★★

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

Криптография гарантирует. Читай, блин, протоколы, и хоть немножко вникай в то, что там написано, и как все происходит.
   34.034.0

Mishka

модератор
★★★
hcube> А в чем проблема-то? В базе данных данный блок записей просто стирается. Одна команда delete. И пишется заново. Думаешь, наблюдатели всех избирателей помнят?

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

Остальное пропускаю, как основанное на ложной посылке.
   34.034.0
RU hcube #05.01.2015 19:56  @Татарин#05.01.2015 19:38
+
-
edit
 

hcube

старожил
★★
Татарин> Хэш (да хоть CRC) подписаного блока может (и должен) быть у наблюдателя. Подделать блок так, чтоб по определению высокоэнтропийный хэш остался бы прежним - нереально.

То есть каждое голосование невозможно без подписи наблюдателя? Или они заверяют весь массив скопом? Первое - нереально. Второе - позволяет подпихнуть голоса.

Татарин> Потому что очевидный ход для желающего сорвать выборы или просто объявить их недействительными - сделать N своих (декларируемо - независимых, от разных "независимых" людей и организаций) серверов, которые посчитают результат так, как требуется.

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

Татарин> Государство мухлюет, пропутинцы всё подделали, а далее - обкатаный в Египте, Сирии и т.п. сценарий.

Так они и правда подделали. Или ты считаешь реальным результат вида 100%/100% в Чечне?

Татарин> Но искусственно создавать слабое место разумным людям не стОит.

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

> Есть открытые списки, формирующиеся по результатам голосования, по которым и происходит верификация результатов.

Это понятно. Как гарантировать, что в этомт список попали ТОЛЬКО реально проголосовавшие? Подписью каждого прошедшего голоса всеми наблюдателями?
   8.08.0
Это сообщение редактировалось 05.01.2015 в 20:05
+
+1
-
edit
 

Mishka

модератор
★★★
Wyvern-2> Во-1х: если уже десятилетие в электронных системах крутятся триллиарды долларов
Ник, там анонимности выбора нет. Банк в точности знает, когда именно ты пожелал, а так же твоё решение. Может другому банку он и не скажет, а может и скажет. Но в любом случае, скажем, если банк увидит, что ты имеешь дело с конкурентом (деньги туда переводишь), то может тебя быстренько наказать (скажем, повысить процент льготный для тебя с 1% до 2%). Т.е. он может отомстить за брата (ВИЛ самый главный джигит — как отомстил за брата :) ).
   34.034.0

Mishka

модератор
★★★
hcube> Почему нельзя смухлевать с актом голосования? Например - записать все обмены с сервером в отдельную базу - и потом провести или не провести их в зависимости от потребности ЦИК. Напомню - всему что внутри системы, мы доверять не можем - тамошний программный код может быть злонамеренно построен так, чтобы исказить результат.

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

Mishka

модератор
★★★
U235> Ты почитай протоколы по ссылочкам. Все там нормально с анонимностью, хотя и приходится поизворачиваться :)
Почитал все. Нет там анонимности. Как только сообщение расшифровали, так узнали решение. Иначе не учесть. А перед учётом надо убедится, что пришло от легитимного пользователя, и, что он проголосовал не более одного раза. Всё точное установление личности с его голосом. Аноноимность голосования исчезла не появившись.
   34.034.0

Mishka

модератор
★★★
U235> Ну так продажу голоса ты и в обычной бумажной системе не обнаружишь
Я об этом тоже написал. :)
   34.034.0

Mishka

модератор
★★★
hcube> Не. Не катит. Никто не гарантирует, что в системе нет уязвимости, которая не позволяет подпихнуть в базу свои голоса. Или просто тупо не прибавить к результату нужную константу. Оно там КАК-ТО считается ВНУТРИ. Без контроля со стороны пользователя.
Ты пойми, что уязвимость — это волны третьего порядка. Тут в самой теории фундаметальные ошибки.
   34.034.0
1 2 3 4 5 6 7

в начало страницы | новое
 
Поиск
Настройки
Твиттер сайта
Статистика
Рейтинг@Mail.ru