↑ Вернуться: Cat Server Platform

Car ArchiveR

обновлено: 14 июня 2017

Платформа: x86_64
Инструкции: SSE4.2
ОС: Linux 2.6+, Solaris 11+, FreeBSD 11
Текущая версия: 0.1.9.18
Начало разработки: 26.07.2016
Доступность: планируется к выпуску в виде бесплатного для не коммерческого использования open-source решения
Описание:

CAR это набор утилит для работы с архивами, предназначенный для организации автоматического резервного копирования информации с максимальным сохранением её конфиденциальности при компрометации как хранилища резервных копий, так и компьютера, осуществляющего резервное копирование (нет возможности узнать пароль для расшифровки ранее созданных архивов).

Основные преимущества CAR:

  1. Шифрование архивов с использованием ассиметричного мастер-ключа
    В отличии от большинства архиваторов (RAR, ZIP, 7ZIP и т.д.), где для создания архива пароль нужно вводить вручную или передавать открытым текстом через командную строку, CAR не требует знания пароля, используемого для расшифровки архива на этапе его шифрования.
  2. Мастер-ключ включается в начало самого архива
    В отличии от GPG, где о сохранности ассиметричного мастер-ключа приходится заботиться отдельно, CAR хранит мастер-ключ прямо в начале каждого файла с архивом. Это не только избавляет от необходимости отдельно заботиться о сохранности мастер-ключа (ведь в случае его утери расшифровать архив не получится), но и упрощает работу с большим количеством мастер-ключей (точно не придётся ломать голову над тем, каким именно мастер-ключом зашифрован этот архив).
  3. Формат архивов включает ECC (Error Correction Code – коды коррекции ошибок)
    Использование ECC в архивах крайне желательно, т.к. при хранении, особенно длительном, архивов на файловых системах без контрольных сумм для информации и периодической проверки поверхности дисков (а из распространённых файловых систем это есть только у ZFS) возможно так называемое “протухание данных”, при котором часть информации будет искажена или не сможет быть прочитана с диска. Не стоит также забывать про возможные ошибки при передаче данных по сети и т.п.. А уж о порче файлов при хранении в облаках лучше и не вспоминать. В отличии от большинства архиваторов (ZIP, 7ZIP и т.д., но не RAR), формат архивов CAR предусматривает использованием ECC, причем в виде целостного решения:

    • В отличии от par2, CAR не создаёт дополнительных файлов для ECC
    • В отличии от RAR, CAR не требует расшифровки (и как следствие пароля) архива для проверки целостности архива и исправления ошибок в нём
  4. Создание архивов с ECC в потоковом режиме
    В большинстве случаев резервные копии больших наборов информации создаются для хранения их вне системы где хранятся исходные данные. Возможность генерации ECC в потоковом режиме позволяет осуществлять немедленную передачу данных создаваемого архива в место(а) его хранения без необходимости создания временного локального архива с последующей генерацией ECC для него (такая схема применяется в RAR и par2). Мало того, использование временного архива создаёт дополнительную нагрузку на СХД – временный архив нужно записать, а потом прочитать (причём для генерации эффективного ECC прочитать нужно ещё и не последовательно). Впрочем, стоит честно отметить, что за такую возможность приходится расплачиваться довольно значительным потреблением памяти – CAR потребляет от 3-х до 12-ти ГБ памяти в зависимости от настроек.
  5. Ориентированность на создание архивов параллельно с рабочей нагрузкой
    Высокие эффективность и степень оптимизации кода, а также отсутствие необходимости во временном файле для генерации ECC позволяют проводить создание архивов параллельно с рабочей нагрузкой. Хотя такая возможность требует определённой поддержки со стороны файловой системы (вроде снимков ZFS) или ПО.
  6. Безопасность решения
    CAR не использует каких-либо сторонних библиотек, а весь его небольшой исходный код доступен для публичного аудита любым желающим.
  7. Поддержка свободы благодаря возможности хранения в архивах дополнительных данных и возможности убедительного отрицания самого факта такого хранения
    В CAR в качестве ECC используются коды Рида-Соломона со словами размером 8 бит по схеме 239 байт информации и 16 байт чётности (255 байт – это предельный размер блока для 8-ми битных слов). С точки зрения хранения эффективнее оказалось использование блоков с размером, равным степени 2-ки, поэтому один из каждых 256-байт архива является добавленным для выравнивания.В обычном режиме этот байт заполняется случайным значением, а не нулём. Это позволяет использовать эти байты для возможности скрытого хранения дополнительных данных в архиве и убедительно отрицать сам факт такого хранения. CAR имеет возможность при заполнении байтов выравнивания использовать вместо случайных данных, данные некоторого файла, предварительно шифруя их с помощью дополнительной парольной фразы. Это может быть востребовано для стран, в которых отказ от предоставления пароля по требованию суда влечет за собой уголовную ответственность.