Показать сообщение отдельно

  #3  
Старый 17.12.2009, 16:08
Flenov
Участник форума
Регистрация: 22.11.2008
Сообщений: 142
С нами: 9193651

Репутация: 32
По умолчанию

Некоторым может показаться, что тут можно устроить побитовый перебор.
К сожалению это не так.
Даже, если вы знаете длину исхожного сообщения, знаете пусть даже часть сообщения.
Всёравно каждый бит зависит от другого бита.
Эту зависимость как раз и делают вышеописанный ротор и сложение результата текущего с результатом предыдущим.
Код:
  A:= B + LRot32(A + (D xor (B and (C xor D))) + HashBuffer[ 0] + $D76AA478,  7);
  D:= A + LRot32(D + (C xor (A and (B xor C))) + HashBuffer[ 1] + $E8C7B756, 12);
Так называемый "Лавинный эффект"
 
Ответить с цитированием