Рейтинг:0

Как безопасно сохранить закрытый ключ ED25519 на жестком диске

флаг cn

Я разрабатываю приложение, которое хранит личный ключ идентификации пользователя (ed 25519) на жестком диске пользователя без какой-либо безопасности.

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

Eirtaza avatar
флаг cn
Да, я думал о том же, KDF. Хэши, которые я уже отбросил (хотя их можно использовать как KDF), а также PBKDF2. Итак, какой алгоритм вы предлагаете, который является бесспорным и наиболее безопасным Argon2 или scrypt? Является ли Argon2 стандартом NIST или чем-то еще?
Рейтинг:1
флаг ng

Одна из хороших практик заключается в хранении ключа, зашифрованного с помощью симметричного аутентифицированного шифра, такого как AES-256-GCM, с ключом, полученным с использованием Argon2 или scrypt из введенной пользователем парольной фразы и случайной соли, хранящейся в криптограмме. PBKDF2 раньше использовался вместо Argon2 или scrypt, но больше не считается лучшей практикой.

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

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


Является ли Argon2 стандартом NIST или чем-то еще?

Argon2 стал победителем соревнования по хешированию паролей. Это не было организовано NIST. Argon2 не одобрен NIST, но цитируется NIST. здесь (вдоль Воздушный шар, что мне тоже нравится; но, похоже, он потерял импульс после осознания того, что заявленное преимущество над Argon2 не является очевидным):

  • Q-B17: SP 800-63B Раздел 5.1.1.2, Запоминаемые секретные верификаторы, говорит о том, что ДОЛЖЕН использоваться пароль с жесткой памятью. PBKDF2, который широко используется, не требователен к памяти. Какие примеры функций, требовательных к памяти, удовлетворяют этому требованию?
  • A-B17: В тексте рекомендуется, но не требуется, использование жесткой памяти для получения пароля.
    Â Â NIST считает, что безопасность хеш-функции (однонаправленной) используемой при получении ключа имеет первостепенное значение, и поэтому требует использования утвержденной (тщательно проверенной) односторонней функции при получении ключа. BALLOON — это требовательный к памяти и времени алгоритм, который позволяет использовать утвержденную базовую одностороннюю функцию, но, к сожалению, он не получил широкого распространения.Другие алгоритмы, такие как ARGON2, требовательны к памяти и времени, но не используют базовую одностороннюю функцию, которая была тщательно проанализирована.
    В то время как PBKDF2 требовательна ко времени, но не к памяти, она настолько широко распространена, что нецелесообразно (во всяком случае, в настоящее время) вводить требование для функции вывода ключей, требующей жесткой памяти, поэтому мы представили это как рекомендация (т.е. «СЛЕДУЕТ»).
    Â Â Функция формирования ключа считается менее важной, чем лежащая в ее основе односторонняя функция, поэтому спецификация в этой области менее предписывающая и не определяет конкретные алгоритмы получения ключа.

Таким образом, NIST еще не дезавуирует свое прежнее официальное рекомендация PBKDF2-HMAC-SHA-1. И это несмотря на то, что он предлагает слабую защиту в эпоху, когда хорошо финансируемые злоумышленники могут использовать ASIC или, по крайней мере, FPGA или GPU для поиска паролей. Неясно, является ли эта технически несостоятельная позиция злонамеренной; это противоречит прежней позиции NIST о Dual_EC_DRBG, который явно предназначался для продвижения криптографии, разведка США может взломать.

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

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