Проект "Свободные голосования" http://gplvote.andyhost.ru/forum/ |
|
Тайное голосование http://gplvote.andyhost.ru/forum/viewtopic.php?f=3&t=440 |
Страница 7 из 10 |
Автор: | asn [ 02 ноя 2012, 13:05 ] |
Заголовок сообщения: | Re: Тайное голосование |
Андрей писал(а): asn писал(а): Сгенерить - ничего не мешает, опубликовать он может только 1, хоть свой, хоть чужой, но один, это и есть защита от вбросов. Что делать остальным если кто-то все-таки опубликовал несколько ключей? Игнорировать их все? Ну это как бы очевидная техническая ошибка, я думаю самым правильным будет игнорировать голосующего. Присланные им ключи пометить как забракованные, если это чьи-то ключи, а не приславшего, пусть проводят обмены еще раз. В описании данном Dim, есть один непроговоренный нюанс, если обменов больше одного (что, не запрещено, то схема обменов, не вдаваясь в детали, должна работать так чтобы каждый публиковал ровно 1 ключ. Кстати если обменов больше одного то, "ухудшение тайности голоса" по сравнению с оригинальной схемой не происходит, хотя я в много кратном обмене необходимости не вижу, при отсутствии спец-софта, кто прислал ключ, неизвестно получателю и при однократном обмене. Андрей писал(а): Кстати, тоже минус - в таком случае невозможно переголосование, насколько я понял. Возможно, почему нет. Андрей писал(а): asn писал(а): Схема не защищена от вбросов. Защита от чего-то часто подразумевает не то, что этого нельзя сделать, а то, что можно обнаружить злоумышленника и лишить его возможности повторить свои действия. В этом смысле у нас все нормально. А никто не пытается доказать что предложенная вами схема принципиально неработоспособна. Есть такое понятие простота(красота) решения, вот предложенная вами схема более громоздка, следовательно сложна в реализации. Если из требуемого для нее кода выкинуть процентов 80, то оставшихся 20 хватит для реализации этой более простой. Тем более что между этими схемами каких-то глубоких различий нет, они скажем так, сильно похожи и по реализации и по сути. Андрей писал(а): Твоя система делает то-же самое, как я уже писал, но только за счет ухудшения тайности голоса. Описанное ухудшение тайности голоса, в бОльшой степени надуманное, а так да, делает то же самое. |
Автор: | Dim [ 02 ноя 2012, 14:28 ] |
Заголовок сообщения: | Re: Тайное голосование |
Андрей писал(а): Нельзя так делать. Это прямое раскрытие тайны голоса. Получатель не знает прислан собственный ключ отправителя или просто передаётся чужой. Подпись только подтверждает, что тот кто передал ключ имеет право голосовать в субъекте.Андрей писал(а): Кстати, даже раскрытие тайны голоса одному может быть опасно. Т.к. если это противник, он может раскрыть тайну голоса группе своих единомышленников. С соответствующими последствиями, для избежания которых и нужны тайные голосования. Тоже как-то не очень. Это прописные истины. То что знает более одного человека уже не тайна.asn писал(а): В описании данном Dim, есть один непроговоренный нюанс, если обменов больше одного (что, не запрещено, то схема обменов, не вдаваясь в детали, должна работать так чтобы каждый публиковал ровно 1 ключ. Обменов должно быть более одного. Разослать можно и более одного ключа, но при этом количество ключей в блоке будет больше участников. Что инициирует расследование источников рассылки лишних ключей.asn писал(а): при отсутствии спец-софта, кто прислал ключ, неизвестно получателю и при однократном обмене. Следует исходить из присутствия спец-софта. Он будет обязательно если оставить возможность его применения.
|
Автор: | Андрей [ 02 ноя 2012, 14:51 ] |
Заголовок сообщения: | Re: Тайное голосование |
asn писал(а): Даже если оно будет интерактивным, что я нахожу крайне неправильным, он в любом случае подписывает анонимный ключ, который информацию не содержит. Подпись приславшего после проверки до подписания, все равно убирается. Конечно. Но он сам может сохранить этот ключ и потом сопоставить его с голосом. Кстати, тут как раз может быть применима "слепая подпись". Однако, я не совсем понимаю, можно-ли реализовать единый метод слепой подписи таким образом, что-бы у подписывающего не было возможности "расшифровать" то, что он подписывает. С использованием "слепой подписи" и автоматическим подписанием проверяющего, такой метод вполне возможен. Но тогда остается только проблема четности. Что делать тому, для кого не осталось пары для подписания? Кстати, раз подписываются ключи - может и не имеет значения сколько человек подпишут один ключ? |
Автор: | asn [ 02 ноя 2012, 15:13 ] |
Заголовок сообщения: | Re: Тайное голосование |
Dim писал(а): asn писал(а): В описании данном Dim, есть один непроговоренный нюанс, если обменов больше одного (что, не запрещено, то схема обменов, не вдаваясь в детали, должна работать так чтобы каждый публиковал ровно 1 ключ. Обменов должно быть более одного. Разослать можно и более одного ключа, но при этом количество ключей в блоке будет больше участников. Что инициирует расследование источников рассылки лишних ключей.Может быть не расследование, а например такая, процедура: 1)Если свой ключ не нашел, бракую опубликованный, и соответственно по цепочке, все чьи ключи забраковали бракуют опубликованные. Таким образом выбраковывается весь "граф" ключей, в которых проходили подделки. 2) Заново обмениваюсь с кем угодно, но не с тем кто прислал забракованные ранее ключи. На этом шаге злоумышленник уже не сможет разослать ключи тем кому слал. Ему нужно будет рассылать тем кто остался, и через небольшое число итераций, он сможет опубликовать только свой собственный ключ - все. Будет исключение злоумышленника на уровне алгоритма, за конечное число итераций.Число итераций максимально равно = (Количество участников) / (На количество подделанных ключей за итерацию) (навскидку). За подобное число итераций - злоумышленник скомпрометирует себя у каждого участника голосования. Dim писал(а): asn писал(а): при отсутствии спец-софта, кто прислал ключ, неизвестно получателю и при однократном обмене. Следует исходить из присутствия спец-софта. Он будет обязательно если оставить возможность его применения.При наличии спецсофта, на определенном количестве узлов сети - анонимные эцп что в первой, что во второй схеме не спасут. |
Автор: | asn [ 02 ноя 2012, 15:28 ] |
Заголовок сообщения: | Re: Тайное голосование |
Андрей писал(а): asn писал(а): Даже если оно будет интерактивным, что я нахожу крайне неправильным, он в любом случае подписывает анонимный ключ, который информацию не содержит. Подпись приславшего после проверки до подписания, все равно убирается. Конечно. Но он сам может сохранить этот ключ и потом сопоставить его с голосом. Может. Это можно обойти схемой с несколькими последовательными обменами. Хотя с моей точки зрения это небольшое зло. Андрей писал(а): Кстати, тут как раз может быть применима "слепая подпись". Однако, я не совсем понимаю, можно-ли реализовать единый метод слепой подписи таким образом, что-бы у подписывающего не было возможности "расшифровать" то, что он подписывает. Думаю что можно, на то она и слепая. Кстати при слепой подписи - предложенная мной схема - излишне сложная. Схема с обменами нужна чтобы отвязать номер бюллетеня от заверителя бюллетеня, если цик может напрямую заверить бюллетень с голосом не вскрывая его, эти сложности ни к чему. При слепой подписи можно отослать пакет на заверение всем участникам системы (так если каждый сам себе цик), потом отослать заверенный голос обратно. Или использовать один цик, и протокол голосования который описан в википедии.Андрей писал(а): С использованием "слепой подписи" и автоматическим подписанием проверяющего, такой метод вполне возможен. Но тогда остается только проблема четности. Что делать тому, для кого не осталось пары для подписания? Опубликовать свой ключ, кроме самого человека - никто не знает что он конкретно его. При многократном обмене - этой проблемы нет.Андрей писал(а): Кстати, раз подписываются ключи - может и не имеет значения сколько человек подпишут один ключ? Подписывать его должен тот кто публикует. Остальное ничего не добавляет кроме возможности отследить цепочку обменов.
|
Автор: | Андрей [ 02 ноя 2012, 15:39 ] |
Заголовок сообщения: | Re: Тайное голосование |
Кстати, метод со слепой подписью не будет раскрывать тайну голоса только если подписывающий подпишет несколько ключей или голосов. Иначе получится так, что в результатах он сможет узнать раскрытый голос того, чей ключ он подписал. Но если возможно подписать несколько ключей, тогда один участник голосования сможет нагенерировать левых ключей, подписать их и отправить в сеть под видом отдельных голосов. Обнаружить это, в принципе, можно. Но что дальше? Опять расследование с требованием раскрыть кто какой голос (или ключ) подписал? Ну так это нельзя будет сделать, т.к. при использовании слепой подписи подписавший не видит что он подписывает. Так что хрень какая-то получается. |
Автор: | asn [ 02 ноя 2012, 15:58 ] |
Заголовок сообщения: | Re: Тайное голосование |
Андрей писал(а): Кстати, метод со слепой подписью не будет раскрывать тайну голоса только если подписывающий подпишет несколько ключей или голосов. Иначе получится так, что в результатах он сможет узнать раскрытый голос того, чей ключ он подписал. Я как бы не разбирался на практике (не нашел в каком пакете слепая подпись реализована), но в википедии сказано что из подписанного слепой подписью документа можно выделить оригинальное сообщение с подписью (цик), и никакой другой информации там не остается. Каким образом он сможет узнать чей конкретно голос? Андрей писал(а): Но если возможно подписать несколько ключей, тогда один участник голосования сможет нагенерировать левых ключей, подписать их и отправить в сеть под видом отдельных голосов. Так изначально они же подписаны конкретным человеком (неанонимными ключами), а если конкретный человек подписывает несколько ключей - это же очевидная лажа.Если он нагенерит несколько ключей, и они все будут подписаны в одном пакете, то я так полагаю что для каждого отдельного ключа из пакета - подпись действительной уже не будет. |
Автор: | Андрей [ 02 ноя 2012, 16:23 ] |
Заголовок сообщения: | Re: Тайное голосование |
asn писал(а): Андрей писал(а): Кстати, метод со слепой подписью не будет раскрывать тайну голоса только если подписывающий подпишет несколько ключей или голосов. Иначе получится так, что в результатах он сможет узнать раскрытый голос того, чей ключ он подписал. Я как бы не разбирался на практике (не нашел в каком пакете слепая подпись реализована), но в википедии сказано что из подписанного слепой подписью документа можно выделить оригинальное сообщение с подписью (цик), и никакой другой информации там не остается. Каким образом он сможет узнать чей конкретно голос? По факту. Когда в сети появится подписанный его подписью "расшифрованный" ключ или голос, он сможет сопоставить - раз он подписывал только ключ у одного человека, значит это его голос. asn писал(а): Андрей писал(а): Но если возможно подписать несколько ключей, тогда один участник голосования сможет нагенерировать левых ключей, подписать их и отправить в сеть под видом отдельных голосов. Так изначально они же подписаны конкретным человеком (неанонимными ключами), а если конкретный человек подписывает несколько ключей - это же очевидная лажа.Если сохранить правило что человек может подписать только один голос - слепая подпись ничего не даст для сохранения тайны голоса. Кроме того, тогда сохраняется проблема четности. |
Автор: | Dim [ 02 ноя 2012, 19:36 ] |
Заголовок сообщения: | Re: Тайное голосование |
Слепая подпись не скрывает адресатов. Только содержимое. Т.е. никакой тайны голосования в принципе. |
Автор: | asn [ 03 ноя 2012, 20:15 ] |
Заголовок сообщения: | Re: Тайное голосование |
Андрей писал(а): asn писал(а): Андрей писал(а): Кстати, метод со слепой подписью не будет раскрывать тайну голоса только если подписывающий подпишет несколько ключей или голосов. Иначе получится так, что в результатах он сможет узнать раскрытый голос того, чей ключ он подписал. Я как бы не разбирался на практике (не нашел в каком пакете слепая подпись реализована), но в википедии сказано что из подписанного слепой подписью документа можно выделить оригинальное сообщение с подписью (цик), и никакой другой информации там не остается. Каким образом он сможет узнать чей конкретно голос? По факту. Когда в сети появится подписанный его подписью "расшифрованный" ключ или голос, он сможет сопоставить - раз он подписывал только ключ у одного человека, значит это его голос. Смысл ведь в том что одним ключом (цика) подписываются все голоса(или анонимные ключи). Андрей писал(а): asn писал(а): Андрей писал(а): Но если возможно подписать несколько ключей, тогда один участник голосования сможет нагенерировать левых ключей, подписать их и отправить в сеть под видом отдельных голосов. Так изначально они же подписаны конкретным человеком (неанонимными ключами), а если конкретный человек подписывает несколько ключей - это же очевидная лажа.Андрей писал(а): Если сохранить правило что человек может подписать только один голос - слепая подпись ничего не даст для сохранения тайны голоса. Почему ничего не даст? Андрей писал(а): Кроме того, тогда сохраняется проблема четности. Проблема четности не принципиальна, и решается несколькими последовательными обменами. |
Страница 7 из 10 | Часовой пояс: UTC + 3 часа [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |