Шифрование и дешифрование Camellia
Сертифицированный шифр ISO/NESSIE/CRYPTREC — безопасность эквивалентна AES
Уведомление о безопасности
Camellia обеспечивает превосходную безопасность, эквивалентную AES. Рекомендуется для приложений, требующих соответствия стандартам ISO/IEC или японских/европейских сертификаций.
О Camellia
О Camellia
Camellia — симметричный блочный шифр, совместно разработанный Mitsubishi Electric и NTT (Nippon Telegraph and Telephone) и опубликованный в 2000 году. Работает с блоками по 128 бит при длине ключа 128, 192 или 256 бит. Алгоритм организует раунды в группы по шесть, каждая из которых завершается функциями FL/FL⁻¹ — побитовыми операциями, зависящими от ключа и вносящими дополнительную нелинейность между основными слоями Фейстеля. Этот структурный элемент отсутствует в AES.
Ключевые особенности
- Размер блока 128 бит при поддержке ключей 128/192/256 бит — идентичная AES ширина блока, обеспечивающая побайтовую совместимость режимов в TLS и IPsec
- 18 раундов для 128-битных ключей; 24 раунда для 192/256 бит — организованы в группы по шесть раундов с прослойками FL/FL⁻¹ между каждой группой
- Функции FL/FL⁻¹, уникальные для Camellia: применяют зависимые от ключа операции AND/OR/вращение между группами раундов, резко усиливая рассеивание ключевого материала
- Тройная сертификация: международный стандарт ISO/IEC 18033-3, европейский проект NESSIE, японская государственная рекомендация CRYPTREC — единственный не-AES шифр, получивший все три
- Без патентов с 2017 года; уже интегрирован в OpenSSL, GnuTLS, NSS (Firefox), LibreSSL и Bouncy Castle для TLS и VPN
- Без патентов с 2017 года; уже интегрирован в OpenSSL, GnuTLS, NSS (Firefox), LibreSSL и Bouncy Castle для TLS и VPN
Режимы шифрования
Режимы шифрования
Сравнение алгоритмов
| Алгоритм | Размер блока | Длина ключа | Безопасность | Стандарт | Стандарт |
|---|---|---|---|---|---|
| Camellia | 128 bit | 128/192/256 | 18/24 | Отлично | ISO/NESSIE/CRYPTREC |
| AES | 128 bit | 128/192/256 | 10/12/14 | Хорошо | NIST |
| Twofish | 128 bit | 128/192/256 | 16 | Отлично | AES Finalist |
| DES | 64 bit | 56 | 16 | Отлично | Слабо |
Рекомендации по безопасности
- Лучшая опубликованная атака на Camellia-128 достигает 12 из 18 раундов (дифференциальный криптоанализ со связанными ключами); практической атаки на полную версию не существует, что обеспечивает запас безопасности в шесть раундов над текущей криптоаналитической границей
- Функции FL/FL⁻¹ между группами из 6 раундов вносят зависимые от ключа побитовые перестановки, нарушающие дифференциальные и линейные пути на границах раундов — структурный механизм, делающий атаки со связанными ключами значительно сложнее, чем в чистых SPN-шифрах типа AES
- Независимые оценки NESSIE (2003) и CRYPTREC подтвердили устойчивость Camellia ко всем известным семействам атак: дифференциальному, линейному, невозможно-дифференциальному, дифференциальному высшего порядка и усечённо-дифференциальному криптоанализу — тем же критериям, что использовались при проверке AES
- Размер блока 128 бит в Camellia устраняет проблему парадокса дней рождения, актуальную для 64-битных шифров (DES, 3DES, Blowfish): порог коллизий наступает при 2⁶⁴ блоках (~147 петабайт на ключ), полностью выводя атаки типа Sweet32 за пределы практической досягаемости
- Размер блока 128 бит в Camellia устраняет проблему парадокса дней рождения, актуальную для 64-битных шифров (DES, 3DES, Blowfish): порог коллизий наступает при 2⁶⁴ блоках (~147 петабайт на ключ), полностью выводя атаки типа Sweet32 за пределы практической досягаемости
Варианты использования
Связанные инструменты
AES Шифрование/Дешифрование
Безопасное шифрование и дешифрование текста с использованием алгоритма AES
Twofish Шифрование/Дешифрование
Финалист AES, симметричный шифр с 128-битными блоками и ключами 128/192/256 бит, разработан Брюсом Шнайером
Serpent Шифрование/Дешифрование
Финалист AES с ключами 128/192/256 бит, 32 раунда, обеспечивает отличный запас прочности и доказанную стойкость к криптоанализу
Rijndael Шифрование/Дешифрование
Оригинальный алгоритм AES с гибкими размерами блоков (128/192/256 бит). Поддержка режимов CBC, ECB, CFB, OFB