Рейтинг:2

повторное использование ключа: раскрывает ли знание H (S) HMAC (S)

флаг ug
aep

учитывая хеш H() , например sha256 и секретный текст S и общественная соль P

покажет ли знание H(S) HMAC(P, S) ?

поясню: вопрос в том, можно ли узнать дайджест, а не секрет. В моем конкретном случае HMAC (S) на самом деле является HKDF (S), но я предполагаю, что для этого вопроса часть, связанная с безопасностью, — это просто фаза извлечения.

протокол следующий:

Алиса->Боб: получить сообщение2 после сообщения1 с содержимым H(сообщение1)
Боб->Алиса: сообщение2 от Чарли говорит: чача(HKDF(сообщение1), обычный)

Кажется довольно очевидным, что грубая форсировка S по-прежнему невозможна:

Для каждого раунда атакующий имел бы возможность протестировать против H(S) или HMAC(S), но это не помогает, потому что усилие идентично. Тестирование на обоих из них просто делает его вдвое медленнее.

Однако нас волнует секретность самого хэша, поскольку это производный ключ. Даже если предположить, что можно «возобновить» хеш-функцию только из ее дайджеста [1] а затем продолжить его как HMAC, он будет работать только с H (S + соль), а не с H (соль + S), который HKDF [2]

Теперь последнее, что я просто не понимаю, это энтропия. Уменьшает ли раскрытие хэша S его энтропию, чтобы hmac стал слабее? Насколько я понимаю, дайджест чего-то на самом деле рассеивает энтропию так, что её нельзя отличить от случайности. Таким образом, вы не можете просто «переделать» ту же дисперсию, если ее уже нет.


  1. https://stackoverflow.com/questions/20895009/what-state-needs-to-be-stored-to-allow-resumable-hash-computations
  2. Почему HKDF использует HMAC (соль, ключ) вместо HMAC (ключ, соль)?
kelalaka avatar
флаг in
Ключевым моментом является увеличение длины возможно или нет!
Maarten Bodewes avatar
флаг in
H - это один из способов, и HKDF, как вы указали, нигде не использует $H (S) $, так что это все говорит. Вы можете знать $H(salt\oplus ipad)$ как префикс $S$ и $H(S)$, но в конце концов вам нужно знать $H(salt\oplus ipad) \| S$, и это будет непросто.

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

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