Как вычислить ключ шифрования, используя KDF, используя CMAC на основе AES в качестве PRF в.net framework 4.7.1?

Я пытаюсь создать ключ шифрования из известного главного ключа, используя функцию вывода ключа. Публикация NIST 800-108 содержит рекомендации для получения ключей с использованием псевдослучайных функций (PRF). В этом документе определено несколько режимов KDF. Я пытаюсь использовать KDF в режиме счетчика (как описано в разделе 5.1). Для этого (как и для других режимов KDF в данной спецификации) используется PRF, который в соответствии с разделом 4 может быть HMAC или CMAC.

У меня есть все входы K, Label. Контекст и L, которые можно перейти в KDF в режиме счетчика. Я хотел бы использовать CMAC на основе AES в качестве PRF.

Как я могу вычислить следующий шаг (т.е. PRF(s, x)) в KDF в режиме счетчика с использованием CMAC на основе AES?

K (i): = PRF (KI, [i] 2 || Label || 0x00 || Context || [L] 2), что в основном является PRF (s, x)

Единственная ссылка, которая удаленно связана с MAC, я обнаружил, что это System.Security.Cryptography.MACTripleDES.

0 ответов

Другие вопросы по тегам