Данные

Материал из Сервис Облачной Демократии
Перейти к: навигация, поиск

Описание перечня данных хранимых на каждом узле в распределенной системе. Все данные хранятся в БД SQLite.

TODO: Давайте обсуждать какую БД лучше использовать. Важно чтоб она была embedded, легковесная, многоплатформенная

TODO: Наполнять перечни данных по ходу обсуждения сценариев использования

Содержание

Перечень данных пользователя

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

Идентифицирующий хэш

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

IDHASH:3C65C65D4F8166C21823F253CE6F14037128DD614B43390535667AAE2CC518E2

Хэш формируется по алгоритму SHA512 в рекурсивном цикле уровня 128 по символьному его представлению в 16-ричном виде в верхнем регистре. Идентифицирующий хэш должен формироваться из соединения нескольких строк:

  1. Дата рождения в формате YYYYMMDD (Y - год, M - месяц, D - день. Считается с начала Нашей Эры).
  2. Номер свидетельства о рождении. Серия и номер пишутся вместе. Все незначащие разделительные знаки опускаются. Если присутствуют буквы - вводятся в кодировке UTF-8 в верхнем регистре.
  3. Идентификационный социальный номер в стране гражданства (страна рождения или первая по алфавиту в написании латиницей страна гражданства). Все незначащие разделительные знаки опускаются. Если присутствуют буквы - вводятся в кодировке UTF-8 в верхнем регистре. Номер СНИЛС в России или SSN в США.

Данный хэш будет легко проверятся подписывающим ключ, т.к. он имеет четкие правила формирования. Помощник по формированию идентифицирующего хэша: http://test.cdemocracy.ru/register/gpghelp_idhash

Перечень данных узла

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

Список соседних узлов

IP-адрес, ключи субъектов голосования используемых на узле

Личные инструменты
Пространства имён
Варианты
Действия
Навигация
Инструменты