Re: Электронная подпись и голосование через интернет
Posted: 03 Jul 2014, 13:52
Если каждый пользователь шаффлит только часть ключей - тут есть несколько "но". Есть ненулевая вероятность, что пользователей придёт меньше, чем количество частей для шаффла - тогда некоторые части останутся неперемешанными. Кроме того, если пользователь шаффлит ту часть ключей, где находится и его ключ - тогда это частично вскрывает идентичность пользователя (надо угадать не одного из полутора миллионов, а одного из пары сотен, скажем). Кроме того, при запросе части ключей для шаффла уже может быть утечка идентичности - если, скажем, запрос идёт для "мой ключ плюс-минус сто ключей справа и слева" (зависит от кривизны реализации). Если же не ту - то его участие в шаффле ничего ему не доказывает: какие-то ключи он перемешал, но его-то ключ остался где-то лежать. Где гарантия, что его тоже перемешают?popoffka wrote:каждый пользователь шаффлит только часть ключей. Правильно выбирая K и алгоритм выбора ключей сервером, по идее можем обеспечить эквивалентную безопасность, но тут нужно всё-таки просчитать вероятности заранее. Если есть сомнения, то можно после сбора ключей пару раз зашаффлить всё целиком — например, позволить каждой партии зашаффлить ключи один раз (примерно по аналогии с наблюдателями от партий в бумажных выборах).
Так что как минимум одно полное перемешивание просто необходимо.
Тут как раз можно совместить деление на части и частичное перемешивание. Каждый юзер перемешивает свою часть. Если вдруг пришёл юзер с запросом перемешать часть, которая сейчас занята - ну что ж, пусть ждёт.popoffka wrote:С параллелностью я вижу такое решение — параллельные запросы запрещаем, но собираем не один, а N списков ключей.
У меня же вопрос несколько другой - пересчёт своего приватного ключа должен учитывать каждое состоявшееся перемешивание, так? Стало быть, чем больше перемешиваний - тем больше нагрузка на процессор каждого участвующего пользователя. Немасштабируемо-с...
Надо бы, наверное, что-нибудь другое по отвязке человек-токен поискать...
Для начала надо убедить ЦИК (подмигивая Борису - возможно, давлением/запросами со стороны Сейма) начать работу над онлайн-голосованием - тогда уже можно будет попытаться подключиться к процессу. Пока что все наши с тобой обсуждения - к сожалению, лишь пустая перегонка электронов по проводам, мыслительный эксперимент, на данной фазе имеющий мало шансов воплотиться хоть во что-нибудь... :-(popoffka wrote:Без сомнения, любую идею такого рода перед применением нужно описать совершенно формально, представить на обзор сообщества, собрать комментарии и оттестировать.
Была бы политическая воля - а уж решение в итоге найдётся. В крайнем случае - возьмём шаффл ключей. Чтобы делать проект - нужен заказчик. А его, пока, увы нет.
Darsh