Рейтинг:0

Является ли криптографически безопасным создание пары ECDSA с использованием имени пользователя и пароля?

флаг mx

Я думаю, скажем, у вас есть смарт-контракт, который гарантирует отсутствие двойных имен пользователей. Что, если я сгенерирую пару ECDSA следующим образом:

  • Принять имя пользователя и пароль
  • Подтвердить имя пользователя и пароль
  • Сгенерировать пару ключей, используя начальное число <username> <some separator> <password>
  • Возврат пары ключей

Будет ли это криптографически небезопасно? Я уверен, что с этим что-то не так, но мне любопытно, что это будет.

Спасибо!

Рейтинг:3
флаг in

Есть несколько проблем с этой схемой:

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

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

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

Jack avatar
флаг mx
Это определенно имеет смысл. Бесконечно благодарен! Мне просто любопытно, потому что закрытые + открытые ключи для аутентификации в наши дни определенно являются сдвигом парадигмы, и мне показалось странным, что было решено не абстрагировать технические детали от пользователей.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.