Является ли использование хэша электронной почты в качестве идентификатора пользователя хорошим решением для обеспечения анонимности?

Представьте, что вы хотите создать "безопасное" приложение для обмена сообщениями, которое должно соответствовать:

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

Это решение кажется интересным.

Но мне интересно

  • Если есть более лучшие (более безопасные) альтернативы
  • Какой механизм хеширования следует использовать

1 ответ

На самом деле, нет. Хэши хороши для сокрытия секретной информации, такой как пароли. Для такой информации, как адреса электронной почты, которые обычно довольно легко угадать / найти, злоумышленник может легко предварительно сгенерировать огромный список хэшей для базы данных адресов электронной почты и быстро использовать обратный поиск, чтобы определить, есть ли данный хэш (в вашей системе).) совпадает с одним из адресов в базе данных. Это оставляет в стороне тот факт, что хеши не являются уникальными, что, вероятно, не является проблемой с достаточно большим адресным пространством хешей.

Как правило, если вы хотите анонимные идентификаторы, вы должны использовать случайно сгенерированные.

Другие вопросы по тегам