Шифры и режимы ГОСТ в Linux Crypto API¶
Здесь приведены имена реализации и сценарии использования, а теоретические определения вынесены в Кузнечик, Магму, ГОСТ 28147-89, CTR, CBC, XTS.
| Имя Crypto API (при регистрации) | Применение | Что проверять |
|---|---|---|
kuznyechik |
базовый блок | kernel, длины ключа/блока |
magma |
базовый блок | kernel, правильный профиль |
ctr(kuznyechik) |
потоковое преобразование | nonce/счётчик, аутентификация |
cbc(kuznyechik) |
блочное шифрование | IV, padding, MAC |
xts(kuznyechik) |
данные на секторном устройстве | формат ключа/tweak, отсутствие MAC |
gost28147-tc26z, gost28147-cpa |
старый ГОСТ | конкретные S-box, режимы |
Не подбирайте параметры шифрования по одному отображаемому имени: интерфейс dm-crypt описан в ГОСТ/LUKS; поток и AEAD — в соответствующем протоколе. Для вызова Kernel Crypto API используйте AF_ALG, а не создавайте собственный криптографический протокол.