2016-01-12 2 views
1

Рассмотрите информацию о следующих проблемах:Опрос лучших сотрудников компании и чувствительные данные

Каждый год мы предоставляем лучший опрос сотрудников в нашей компании. Мы хотим автоматизировать этот процесс (теперь мы используем некоторые документы и блок-блок). Легко создать приложение для опроса, но главной проблемой здесь является конфиденциальность. Есть некоторые требования:

  • Пользователь должен иметь возможность войти в
  • Пользователь может дать проголосовать за кого-то только один раз
  • Обследование должно быть полностью анонимным даже для администратора базы данных

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

+0

Существует много исследований в системах криптографического голосования. Я сомневаюсь, что вы получите эскиз безопасного решения и используете только общие криптографические примитивы. –

+0

Вам нужны результаты для аудита и/или предотвращения того, что администратор базы данных может сфальсифицировать выборы? –

+0

@JustinCave Да, но только в простой форме. Я должен быть в состоянии доказать, что никто не меняет свой голос, например, – kharandziuk

ответ

1

A (простая) идея скрыть идентификатор пользователя из DBA - это его кодирование в БД с использованием пароля пользователя в качестве ключа cryto. Если исполняемый файл, используемый для опроса, каким-то образом защищен от обратного проектирования, что обеспечит базовый уровень защиты удостоверений.

Еще проще идея:

Если вам разрешено держать бумагу вокруг, вы можете создавать и распространять «карточки для голосования». Карты с уникальным идентификатором (скажем, 8 или 10 символов) распределяются случайным образом избирателям, а вместо входа с его/ее настоящим именем избиратель использует свой (секретный) ID. Таким образом, анонимность гарантируется, и вы можете делать проверки, которые вы хотите получить по голосам.

+0

Я предполагаю, что администратор базы данных и разработчик - это только один человек, поэтому такая защита не работает :) – kharandziuk

+0

Да, но код может быть проверен/скомпилирован/проверен другим лицом. Я разработчик все еще имеет доступ к коду * после * аудита, нет никакой защиты (я думаю). – Ilya

+0

, но в случае, если аудитор - парень, который знает все о голосах :) – kharandziuk

Смежные вопросы