Проект "Свободные голосования"
http://gplvote.andyhost.ru/forum/

Распределенный клиент - функционал
http://gplvote.andyhost.ru/forum/viewtopic.php?f=5&t=180
Страница 1 из 3

Автор:  Андрей [ 02 окт 2011, 13:23 ]
Заголовок сообщения:  Распределенный клиент - функционал

Хочу здесь попробовать собрать в одном месте все требования к распределенному клиенту голосований.

Типы документов распространяемые в сети голосований:
- публичные ключи пользователей с подписями;
- документ о создании субъекта голосования;
- открытые голосования;
- тайные голосования;
- вариант выбора в открытом голосовании (подписанный персональным ключем);
- вариант выбора в тайном голосовании (зашифрованный/подписанный одноразовым ключем выбор, подписанный персональным ключем изменяемым по мере передачи документа по сети);
- подпись об участии в тайном голосовании (подписана персональным ключем);
- открытые ключи для проверки вариантов выбора в тайном голосовании;
- документ "вотум недоверия ключу";
- документ "протокол вотума недоверия ключу" - сеанс проверки данного ключа определенным человеком (с другим ключем);
- документ "запись протокола вотума недоверия ключу" - записи в которых будет вестись диалог между проверяющим и проверяемым в контексте "протокола о вотуме недоверия". Фактически представляет из себя что-то вроде обычного текстового сообщения в переписке. Если проверка проходит нормально, то в протокол добавляется запись об удачном прохождении поверки;

Автор:  Сергей [ 02 окт 2011, 13:26 ]
Заголовок сообщения:  Re: Распределенный клиент - функционал

Нет информации о проверке времени голосования и допуска голосующего в субъект.

Автор:  Kuguar [ 02 окт 2011, 17:56 ]
Заголовок сообщения:  Re: Распределенный клиент - функционал

Андрей писал(а):
- публичные ключи пользователей с подписями;


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

Андрей писал(а):
- документ о создании субъекта голосования;
- открытые голосования;
- тайные голосования;


Это одно и тоже, т.е. файл результатов голосования.
Он собирается из вариантов выбора всех голосовавших участников и сам по себе является документом. Можно конечно, так как по объёму он порядка сотен мегабайт, делать некие ссылочные файлы различных типов, для различных нужд. Но, по любому, первичный документ, это файл результатов голосования.

Андрей писал(а):
- вариант выбора в открытом голосовании (подписанный персональным ключем);
- вариант выбора в тайном голосовании (зашифрованный/подписанный одноразовым ключем выбор, подписанный персональным ключем изменяемым по мере передачи документа по сети);
- подпись об участии в тайном голосовании (подписана персональным ключем);
- открытые ключи для проверки вариантов выбора в тайном голосовании;


Это, имхо, тоже всё один и тот же файл.
Т.е. текущий ключ + вариант выбора + комментарий.

Напишешь в комментарии свои ФИО, будет открытое, не напишешь, будет тайное. Ибо нет средств определить, кто за каким ID скрывается.

Андрей писал(а):
- документ "вотум недоверия ключу";
- документ "протокол вотума недоверия ключу" - сеанс проверки данного ключа определенным человеком (с другим ключем);
- документ "запись протокола вотума недоверия ключу" - записи в которых будет вестись диалог между проверяющим и проверяемым в контексте "протокола о вотуме недоверия". Фактически представляет из себя что-то вроде обычного текстового сообщения в переписке. Если проверка проходит нормально, то в протокол добавляется запись об удачном прохождении поверки;


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

Автор:  Андрей [ 02 окт 2011, 18:17 ]
Заголовок сообщения:  Re: Распределенный клиент - функционал

Сергей писал(а):
Нет информации о проверке времени голосования и допуска голосующего в субъект.

На счет проверки времени мы еще не договорились как она будет работать.

Автор:  Kuguar [ 02 окт 2011, 18:21 ]
Заголовок сообщения:  Re: Распределенный клиент - функционал

Андрей писал(а):
Сергей писал(а):
Нет информации о проверке времени голосования и допуска голосующего в субъект.

На счет проверки времени мы еще не договорились как она будет работать.


А какие есть варианты ?
Имхо, кроме проставления текущего времени и подписывания документа, вроде и не придумать ничего.

Автор:  Андрей [ 02 окт 2011, 18:24 ]
Заголовок сообщения:  Re: Распределенный клиент - функционал

Kuguar писал(а):
Андрей писал(а):
- публичные ключи пользователей с подписями;


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

Не понял. Какая еще "переменная часть"?

Kuguar писал(а):
Андрей писал(а):
- документ о создании субъекта голосования;
- открытые голосования;
- тайные голосования;


Это одно и тоже, т.е. файл результатов голосования.
Он собирается из вариантов выбора всех голосовавших участников и сам по себе является документом. Можно конечно, так как по объёму он порядка сотен мегабайт, делать некие ссылочные файлы различных типов, для различных нужд. Но, по любому, первичный документ, это файл результатов голосования.

Не путайте. При инициировании голосования пользователь что-то должен увидеть. И увидеть он должен никак не "результаты голосования" которое еще не началось. Он должен увидеть нечто, что описывает голосование в котором он может принять участие.

Kuguar писал(а):
Андрей писал(а):
- вариант выбора в открытом голосовании (подписанный персональным ключем);
- вариант выбора в тайном голосовании (зашифрованный/подписанный одноразовым ключем выбор, подписанный персональным ключем изменяемым по мере передачи документа по сети);
- подпись об участии в тайном голосовании (подписана персональным ключем);
- открытые ключи для проверки вариантов выбора в тайном голосовании;


Это, имхо, тоже всё один и тот же файл.
Т.е. текущий ключ + вариант выбора + комментарий.

Напишешь в комментарии свои ФИО, будет открытое, не напишешь, будет тайное. Ибо нет средств определить, кто за каким ID скрывается.

Что-бы вы опять путаете. Процедура тайного и открытого голосования будет в принципе разной. Тайное вообще будет из двух частей состоять которые будут идти по сети разными путями. Как это может быть один документ? Ну что за ерунда?

Kuguar писал(а):
Андрей писал(а):
- документ "вотум недоверия ключу";
- документ "протокол вотума недоверия ключу" - сеанс проверки данного ключа определенным человеком (с другим ключем);
- документ "запись протокола вотума недоверия ключу" - записи в которых будет вестись диалог между проверяющим и проверяемым в контексте "протокола о вотуме недоверия". Фактически представляет из себя что-то вроде обычного текстового сообщения в переписке. Если проверка проходит нормально, то в протокол добавляется запись об удачном прохождении поверки;


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

Тут как раз все четко:
1. Создается "Вотум недоверия" какому-то конкретному ключу;
2. В этом документе любым голосующим создается "Протокол" который является последовательностью проверки ключа;
3. В контексте протокола ведутся "записи" на основании которых любой может в итоге сделать заключение о авторизации проверяемого ключа;

Автор:  Андрей [ 02 окт 2011, 18:27 ]
Заголовок сообщения:  Re: Распределенный клиент - функционал

Kuguar писал(а):
А какие есть варианты ?

Мне кажется нормальным может быть один вариант - подписывание времени у нескольких имеющихся пиров. В таком случае отпадает необходимость в сервере времени.

Kuguar писал(а):
Имхо, кроме проставления текущего времени и подписывания документа, вроде и не придумать ничего.

Таким образом можно будет голосовать в голосовании, которое уже закончилось.

Автор:  Андрей [ 02 окт 2011, 20:59 ]
Заголовок сообщения:  Re: Распределенный клиент - функционал

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

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

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

Автор:  Сергей [ 02 окт 2011, 21:29 ]
Заголовок сообщения:  Re: Распределенный клиент - функционал

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

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

Автор:  Kuguar [ 02 окт 2011, 21:35 ]
Заголовок сообщения:  Re: Распределенный клиент - функционал

Андрей писал(а):
Kuguar писал(а):
Андрей писал(а):
- публичные ключи пользователей с подписями;


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

Не понял. Какая еще "переменная часть"?


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

Страница 1 из 3 Часовой пояс: UTC + 3 часа [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/