Интернет магазин китайских планшетных компьютеров



Компьютеры - PBKDF2

11 июня 2011


Оглавление:
1. PBKDF2
2. Скорость работы



PBKDF2 — стандарт формирования ключа  на основе пароля. Является частью PKCS #5 v2.0. Заменил PBKDF1, который ограничивал длину порождаемого ключа 160 битами.

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

Алгоритм

Общий вид вызова PBKDF2:

DK = PBKDF2

Опции алгоритма:

  • PRF — псевдослучайная функция, с выходом длины hLen
  • P — мастер-пароль
  • S — соль
  • c — количество итераций, положительное целое число
  • dkLen — желаемая длина ключа * hLen)
  • Выходной параметр: DK — сгенерированный ключ длины dkLen

Ход вычислений:

1. l — количество блоков длины hLen в ключе, r — количество байт в последнем блоке:

 l = \lceil \rceil
r = dkLen − * hLen

2. Для каждого блока применить функцию F с параметрами P — мастер пароль, S — соль, c — количество итераций, и номером блока:

T1 = F
T2 = F
...
Tl = F

F определена как операция xor над первыми c итерациями функции PRF, примененной к паролю P и объединению соли S и номеру блока, записанному как 4-байтовое целое с первым msb байтом.

                   F = U_1 \oplus U_2 \oplus ... \oplus U_c
U1 = PRF)
U2 = PRF
...
Uc = PRF

3. Объединение полученных блоков составляет ключ DK. От последнего блока берется r байт.

DK = T1 | | T2 | | ... | | Tl < 0..r − 1 >


Просмотров: 1845


<<< NSAKEY
PGP >>>