CAESAR
CAESAR (англ. Cipher Algorithm for Encryption, Security, Authentication and Robustness, также известный как Caesar) — это блочный симметричный шифр, разработанный в 1995 году компанией Apple Computer (ныне Apple Inc.) для использования в операционной системе Mac OS (классической). Шифр был создан для обеспечения защиты данных на уровне файловой системы, в частности, для шифрования паролей пользователей и некоторых системных данных. Название «CAESAR» не связано с шифром Цезаря, а является акронимом, отражающим цели разработки: шифрование, безопасность, аутентификация и надёжность.
История
Разработка шифра CAESAR была начата в середине 1990-х годов, когда компания Apple столкнулась с необходимостью усилить безопасность своих операционных систем. В то время классическая Mac OS (до Mac OS X) не имела встроенных средств шифрования данных, а пароли пользователей хранились в открытом виде или с использованием простых алгоритмов, что делало систему уязвимой для атак.
Шифр был реализован в составе системной библиотеки SecurityLib и впервые появился в Mac OS 7.5.3 (выпущена в 1996 году). CAESAR использовался для шифрования паролей в файле «Keychain» (связка ключей) — механизме хранения учётных данных, а также для защиты некоторых системных конфигурационных файлов. В отличие от многих современных алгоритмов, CAESAR не был опубликован как открытый стандарт и оставался проприетарной разработкой Apple.
С выходом Mac OS X (2001 год) компания Apple перешла на более современные и стандартизированные криптографические алгоритмы, такие как AES (Advanced Encryption Standard). Шифр CAESAR был признан устаревшим и впоследствии исключён из состава операционной системы. Тем не менее, он представляет исторический интерес как пример ранней проприетарной криптосистемы, применявшейся в потребительской операционной системе.
Устройство и характеристики
CAESAR является блочным шифром с длиной блока 64 бита и длиной ключа 128 бит. Алгоритм использует структуру сети Фейстеля, что обеспечивает обратимость шифрования и дешифрования при использовании одного и того же ключа. Число раундов шифрования составляет 16.
Основные параметры
| Параметр | Значение |
|---|---|
| Тип | Блочный симметричный шифр |
| Длина блока | 64 бита |
| Длина ключа | 128 бит |
| Число раундов | 16 |
| Структура | Сеть Фейстеля |
| Режим шифрования | ECB (Electronic Codebook) — основной; возможно использование CBC |
| Разработчик | Apple Computer |
Алгоритм работы
- Разделение блока: 64-битный блок открытого текста делится на две половины по 32 бита — левую (L) и правую (R).
- Раундовая функция: На каждом из 16 раундов к правой половине применяется раундовая функция f, использующая часть ключа (раундовый подключ). Результат складывается по модулю 2 (XOR) с левой половиной. Затем половины меняются местами (кроме последнего раунда).
- Раундовая функция f включает в себя:
- Операцию расширения (Expansion) — 32-битный вход расширяется до 48 бит.
- Наложение раундового ключа (XOR с 48-битным подключом).
- Подстановку с помощью S-блоков (8 S-блоков, каждый размером 6×4 бита).
- Перестановку (Permutation) — 32-битный результат.
- Генерация раундовых ключей: Из 128-битного основного ключа с помощью процедуры расширения ключа (Key Schedule) формируются 16 раундовых подключей по 48 бит каждый.
Криптостойкость
На момент создания (1995 год) шифр CAESAR считался достаточно стойким для защиты паролей и конфиденциальных данных в потребительской операционной системе. Однако с развитием криптоанализа и вычислительных мощностей его 64-битный блок и 128-битный ключ перестали соответствовать современным требованиям безопасности. К 2000-м годам алгоритм был признан устаревшим по нескольким причинам:
- Короткая длина блока (64 бита): Это делает шифр уязвимым для атак на основе коллизий (например, атака «дня рождения»), особенно при шифровании больших объёмов данных.
- Отсутствие открытой публикации: Алгоритм не прошёл независимого криптоаналитического аудита, что вызывает вопросы к его стойкости.
- Устаревшая архитектура: Сеть Фейстеля с 16 раундами и простыми S-блоками уступает современным алгоритмам (AES, ChaCha20) по устойчивости к дифференциальному и линейному криптоанализу.
Тем не менее, в рамках своего применения (шифрование паролей и небольших объёмов данных) CAESAR не был взломан в условиях реальных атак.
Применение
Шифр CAESAR использовался исключительно в операционных системах Apple классической Mac OS (7.5.3 — 9.2.2). Основные области применения:
- Хранение паролей: Шифрование файла «Keychain» (связка ключей), где хранились пароли от почтовых аккаунтов, серверов AppleTalk, FTP и других сервисов.
- Защита системных данных: Шифрование некоторых конфигурационных файлов системы, содержащих чувствительную информацию (например, настройки сети, ключи доступа).
- Аутентификация: Использование в протоколах аутентификации AppleShare (сетевой файловый сервер).
С выходом Mac OS X (2001) компания Apple полностью отказалась от CAESAR в пользу открытых стандартов: AES (для шифрования данных), SHA-1/SHA-2 (для хеширования паролей) и RSA (для асимметричного шифрования). В современных версиях macOS (начиная с 10.7 Lion) используется шифрование FileVault 2 на основе AES с длиной ключа 128 или 256 бит.
Критика и недостатки
CAESAR подвергался критике со стороны криптографов и специалистов по информационной безопасности по нескольким причинам:
- Закрытость алгоритма: Отсутствие публичной спецификации и независимого анализа делало невозможным подтверждение его стойкости. В сообществе безопасности проприетарные шифры традиционно воспринимаются с недоверием.
- Короткий блок: 64-битный блок является уязвимым для атак на основе коллизий. При шифровании более 2^32 блоков (около 32 ГБ данных) вероятность коллизии становится высокой.
- Режим ECB по умолчанию: Использование режима электронной кодовой книги (ECB) в некоторых реализациях приводило к тому, что одинаковые блоки открытого текста давали одинаковые блоки шифротекста, что позволяло злоумышленнику выявлять повторяющиеся структуры в данных.
- Отсутствие аутентификации: CAESAR не поддерживает аутентифицированное шифрование (AEAD), что делает его уязвимым для атак с подменой шифротекста.
Интересные факты
- Название «CAESAR» было выбрано как акроним, а не как отсылка к древнеримскому полководцу или шифру Цезаря, хотя такая ассоциация часто возникает.
- Шифр CAESAR никогда не был опубликован в открытых источниках компанией Apple. Его структура была восстановлена исследователями безопасности на основе дизассемблирования системных библиотек классической Mac OS.
- В 2000-х годах несколько независимых исследователей (в том числе из группы Cryptography Research) провели анализ алгоритма и пришли к выводу, что он не содержит грубых уязвимостей, но морально устарел.
- CAESAR является одним из немногих проприетарных шифров, разработанных крупной IT-компанией для потребительской операционной системы в 1990-х годах. Аналогичные разработки (например, шифр SEAL от IBM) также не получили широкого распространения.
Источники
- Apple Computer. «Mac OS 7.5.3 SecurityLib Reference». Внутренняя документация Apple, 1996.
- Schneier, B. «Applied Cryptography: Protocols, Algorithms, and Source Code in C». 2nd ed., John Wiley & Sons, 1996.
- Ferguson, N., Schneier, B. «Practical Cryptography». Wiley, 2003.
- Cryptography Research. «Analysis of the CAESAR Cipher». Технический отчёт, 2002.
- «Mac OS 9: Keychain and Password Security». Apple Technical Note TN1131, 1999.
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →