VeraCrypt – бесплатное программное обеспечение для компьютера, используемое для шифрования “на лету”. Работает под управлением операционных систем Microsoft Windows, Mac OS X и Linux.
VeraCrypt является бесплатным и открытым проектом, который был начат 22 июня 2013 в качестве форка TrueCrypt. Запущен и поддерживается французом Mounir Idrassi, основателем компании IDRIX, в том числе в настоящее время, после того как 28 мая 2014 было объявлено о прекращении поддержки программы TrueCrypt.
По утверждению разработчиков, в VeraCrypt реализован ряд усовершенствований в области безопасности по сравнению с TrueCrypt.
В то время как TrueCrypt использует 1000 итераций при генерации ключа, которым шифруется системный раздел при использовании алгоритма PBKDF2-RIPEMD-160, VeraCrypt использует 327661 итераций. Для стандартных шифруемых разделов на диске и файловых контейнеров, VeraCrypt использует 655331 итераций для хеш-функции RIPEMD-160 и 500000 итераций для SHA-2 и Whirlpool. Это существенно замедляет VeraCrypt при открытии зашифрованных разделов диска при их монтировании, но делает его не менее чем в 10 (и не более чем в 300) раз более устойчивым к атаке прямым перебором.
Исправлена уязвимость начального загрузчика для Microsoft Windows. Для режима загрузки из зашифрованного раздела добавлена поддержка алгоритма SHA-256 и исправлены проблемы с уязвимостью ShellExecute для Microsoft Windows.
Для Linux и Mac OS X добавлена поддержка дисков с сектором большим, чем 512 байт. Для Linux реализована поддержка разделов, отформатированных под NTFS.
Указанные усовершенствования привели к несовместимости с форматом разделов TrueCrypt. Разработчики VeraCrypt сочли старый формат TrueCrypt слишком уязвимым к потенциальной атаке АНБ и отказались от него. Это – одно из главных различий между VeraCrypt и конкурирующим проектом-форком TrueCrypt – CipherShed, который продолжает поддерживать старый формат. Начиная с версии 1.0f, VeraCrypt может открывать и конвертировать в свой формат разделы, отформатированные в формате TrueCrypt.
VeraCrypt, так же как и TrueCrypt поддерживает возможность отрицаемого шифрования, позволяя создать внутри зашифрованного тома ещё один, «скрытый том». Дополнительно, версия VeraCrypt для Microsoft Windows позволяет создавать и выполнять скрытый экземпляр операционной системы Microsoft Windows, чьё наличие так же можно правдоподобно отрицать.
В документации VeraCrypt перечислен ряд способов, которыми эта возможность могла бы оказаться скомпрометированной (например утечка данных через временные файлы на незашифрованном диске) и возможные способы борьбы с этой проблемой.
VeraCrypt поддерживает параллельную работу на многопроцессорных и многоядерных системах. VeraCrypt умеет использовать аппаратное ускорение шифрования, доступное на процессорах, реализующих набор инструкций AES-NI. Эти меры увеличивают производительность VeraCrypt.
Схема шифрования VeraCrypt
VeraCrypt может использовать следующие алгоритмы шифрования AES, Serpent, и Twofish. Дополнительно доступны 5 комбинаций этих алгоритмов: AES-Twofish, AES-Twofish-Serpent, Serpent-AES, Serpent-Twofish-AES и Twofish-Serpent. В Windows-версии дополнительно доступны алгоритмы шифрования Camellia, Кузнечик и Магма.
Используемые криптографические хеш-функции: RIPEMD-160, SHA-256, SHA-512 и Whirlpool. В версии для Windows дополнительно доступна хеш-функция Стрибог.
VeraCrypt использует режим шифрования XTS.
Ключ заголовка и вторичный ключ заголовка для режима XTS генерируются при помощи алгоритма PBKDF2 с использованием 512-битной криптографической соли, число итераций составляет от 327,661 до 655,331, в зависимости от используемой хеш-функции.
Ссылки