Разработка Алгоритма. Как Работает Блокмикс В Скрипте? В Чем Смысл Функции H В Скрипте?

  • Автор темы Бражник
  • Обновлено
  • 22, Oct 2024
  • #1

Я пытаюсь понять, как

 [0, 255] 
works. I am referring to the Algorithm section of H 's Страница в Википедии. Там я нахожу это H function:

H(X ⊕ Bi)

Насколько я понимаю, это означает: расширить X -bytes block into its single bytes, namely, X . Набор B0, ..., B2r-1 to the last byte, and propagate some perturbation by updating r с Function BlockMix(B): (B0, ... , B2r-1) ← B X ← B2r−1 for i = 0 to 2r − 1 do X ← H(X ⊕ Bi) Yi ← X end for Output ← (Y0, Y2, ... , Y2r−2, Y1, Y3, ... , Y2r−1) . Finally return the output bytes, somehow shuffled (first the even, then the odds).

Чего я не понимаю, так это смысла этого BlockMix function. It's nowhere specified what it is. I guess it is a function that inputs one byte and outputs one byte. Is that a commonly known function? scrypt обычно означает хеш. Должен ли я просто выбрать любую случайную биекцию между числами в scrypt ?

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

#алгоритм-проектирование #хеширование паролей #scrypt

Бражник


Рег
20 Feb, 2011

Тем
86

Постов
205

Баллов
675
  • 26, Oct 2024
  • #2

Подведу итоги комментариев: согласно оригиналу бумага, $H$ — любая хеш-функция, которая в идеале использует ограниченный параллелизм $^1$, кандидатом может быть Salsa20/8.

Сноска 1: Чтобы сделать результирующую функцию, требующую жесткой памяти, менее восприимчивой к атакам (которые существенно используют параллелизм).

 

Scoorwaccak


Рег
09 Jan, 2014

Тем
69

Постов
200

Баллов
565
Похожие темы Дата
Тем
403,760
Комментарии
400,028
Опыт
2,418,908

Интересно