дм-крипта
dm-crypt — это прозрачная шифрования блочных устройств подсистема в ядре Linux версии 2.6 и новее, а также в DragonFly BSD . Он является частью инфраструктуры устройства сопоставления ядра (dm) и использует криптографические процедуры из Crypto API . В отличие от своего предшественника cryptoloop , dm-crypt был разработан для поддержки расширенных режимов работы, таких как XTS , LRW и ESSIV , чтобы избежать атак с использованием водяных знаков . [1] В дополнение к этому, dm-crypt решает некоторые проблемы надежности cryptoloop. [2]
dm-crypt реализован как цель устройства сопоставления устройств и может быть наложен поверх других преобразований устройства сопоставления. Таким образом, он может шифровать целые диски (включая съемные носители ), разделы , тома программного RAID , логические тома , а также файлы . Он выглядит как блочное устройство, которое можно использовать для резервного копирования файловых систем , подкачки или в качестве LVM физического тома .
Некоторые дистрибутивы Linux поддерживают использование dm-crypt в корневой файловой системе. Эти дистрибутивы используют initrd, чтобы предложить пользователю ввести парольную фразу на консоли или вставить смарт-карту перед обычным процессом загрузки. [3]
Интерфейсы
[ редактировать ]Цель преобразователя устройств dm-crypt полностью находится в пространстве ядра и занимается только шифрованием блочного устройства — сама она не интерпретирует какие-либо данные. Он использует пользовательского пространства внешние интерфейсы для создания и активации зашифрованных томов, а также управления аутентификацией. На данный момент доступны как минимум два интерфейса: cryptsetup
и cryptmount
.
установка крипты
[ редактировать ]Оригинальный автор(ы) | Яна Саут, Клеменс Фрувирт, Милан Броз [4] |
---|---|
Стабильная версия | |
Предварительный выпуск | |
Написано в | С |
Операционная система | Unix-подобный |
Платформа | x86 , x86-64 , ARMv8 , ARMv7 , ppc64le , MIPS |
Размер | 7 МБ |
Доступно в | 16 языков [6] |
Список языков | |
Тип | Программа для шифрования диска |
Лицензия | лицензия GPLv2 [7] Подбиблиотеки: LGPLv2.1+ [8] |
Веб-сайт | gitlab |
The cryptsetup
Интерфейс командной строки по умолчанию не записывает никаких заголовков в зашифрованный том и, следовательно, предоставляет только самое необходимое: настройки шифрования необходимо указывать каждый раз при монтировании диска (хотя обычно они используются в автоматических сценариях), и только один ключ можно использовать для каждого тома; ключ симметричного шифрования получается непосредственно из предоставленной парольной фразы .
Поскольку в этом режиме отсутствует « соль », использование cryptsetup менее безопасно, чем в случае с унифицированным ключом Linux (LUKS). [9] Однако простота настройки крипты делает ее полезной в сочетании со сторонним программным обеспечением, например, с аутентификацией по смарт-карте .
cryptsetup
также предоставляет команды для работы с дисковым форматом LUKS. Этот формат предоставляет дополнительные функции, такие как управление ключами и расширение ключей (с использованием PBKDF2 ), а также запоминает конфигурацию зашифрованного тома при перезагрузке. [3] [10]
криптмаунт
[ редактировать ]The cryptmount
Интерфейс является альтернативой инструменту «cryptsetup», который позволяет любому пользователю при необходимости монтировать и размонтировать файловую систему dm-crypt без необходимости привилегий суперпользователя после того, как устройство было настроено суперпользователем.
Функции
[ редактировать ]Тот факт, что программное обеспечение для шифрования диска (объемное шифрование), такое как dm-crypt, занимается только прозрачным шифрованием абстрактных блочных устройств, дает ему большую гибкость. Это означает, что его можно использовать для шифрования любых дисковых файловых систем, поддерживаемых операционной системой , а также пространства подкачки ; барьеры записи, реализованные файловыми системами, сохраняются. [11] [12] Зашифрованные тома могут храниться в разделах диска , логических томах , целых дисках, а также с файловой поддержкой в образах дисков (с помощью петлевых устройств с утилитой lossup). dm-crypt также можно настроить для шифрования томов RAID и физических томов LVM .
dm-crypt также можно настроить для обеспечения перед загрузкой аутентификации через initrd , таким образом шифруя все данные на компьютере — кроме загрузчика, ядра и самого образа initrd. [3]
При использовании режима цепочки блоков шифрования с предсказуемыми векторами инициализации, как и в другом программном обеспечении для шифрования диска, диск уязвим для атак с использованием водяных знаков . Это означает, что злоумышленник может обнаружить наличие на диске специально созданных данных. Чтобы решить эту проблему в своих предшественниках, dm-crypt включил в себя более сложные режимы работы, специфичные для шифрования диска. [1] Поддержка ESSIV (зашифрованный вектор инициализации солевого сектора) была введена в ядре Linux версии 2.6.10, LRW в 2.6.20 и XTS в 2.6.24.
Linux Crypto API включает поддержку большинства популярных блочных шифров и хэш-функций , которые можно использовать с dm-crypt.
Поддержка зашифрованной FS включает тома LUKS, циклический AES и, начиная с ядра Linux 3.13, цель TrueCrypt, называемую «tcw». [13] [14] [15]
Совместимость
[ редактировать ]Доступ к зашифрованным дискам dm-crypt и LUKS можно получить и использовать в MS Windows с использованием ныне несуществующей FreeOTFE (ранее DoxBox, LibreCrypt), при условии, что используемая файловая система поддерживается Windows (например, FAT /FAT32/ NTFS ). Зашифрованные файловые системы ext2 и ext3 поддерживаются с помощью Ext2Fsd или так называемой «Устанавливаемой файловой системы Ext2 для Windows»; [16] FreeOTFE также их поддерживает.
Cryptsetup/LUKS и необходимая инфраструктура также реализованы в операционной системе DragonFly BSD. [17]
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ Перейти обратно: а б Клеменс Фрувирт (18 июля 2005 г.). «Новые методы шифрования жесткого диска» (PDF) . Венский технологический университет . Проверено 20 апреля 2007 г.
{{cite journal}}
: Для цитирования журнала требуется|journal=
( помощь ) - ^ Майк Питерс (8 июня 2004 г.). «Шифрование разделов с помощью dm-crypt и ядра серии 2.6» . Архивировано из оригинала 11 июля 2012 г. Проверено 20 февраля 2012 г.
{{cite journal}}
: Для цитирования журнала требуется|journal=
( помощь ) - ^ Перейти обратно: а б с В. Майкл Петулло (18 января 2007 г.). «Шифрование диска в Fedora: прошлое, настоящее и будущее» . Журнал «Красная шляпа». Архивировано из оригинала 10 октября 2008 г. Проверено 20 апреля 2007 г.
- ^ «АВТОРЫ» . ГитЛаб . Проверено 7 сентября 2019 г.
- ^ Перейти обратно: а б с д «документы · мастер · cryptsetup / cryptsetup» . ГитЛаб . Проверено 21 декабря 2023 г.
- ^ «Текстовый домен cryptsetup» . Проект перевода . Проверено 7 сентября 2019 г.
- ^ «КОПИРОВАНИЕ» . ГитЛаб . Проверено 7 сентября 2019 г.
- ^ «КОПИРОВАНИЕ.LGPL» . ГитЛаб . Проверено 7 сентября 2019 г.
- ^ «Часто задаваемые вопросы по настройке криптографии» .
- ^ Клеменс Фрувирт (15 июля 2004 г.). «TKS1 — антикриминалистическая, двухуровневая и повторяющаяся схема установки ключей» (PDF) . Черновик . Проверено 12 декабря 2006 г.
- ^ Милан Броз (24 апреля 2012 г.). «[dm-crypt] Поддерживает ли dm-crypt журналирование транзакционных гарантий файловой системы?» . saout.de . Проверено 8 июля 2014 г.
- ^ Микулаш Паточка (22 июня 2009 г.). "kernel/git/torvalds/linux.git" . Дерево исходного кода ядра Linux . ядро.орг . Проверено 8 июля 2014 г.
- ^ «dm-crypt: криптоцель устройства сопоставления устройств ядра Linux — генераторы IV» . cryptsetup. 11 января 2014 г. Проверено 5 апреля 2015 г.
- ^ «dm-crypt: криптографическая цель устройства сопоставления устройств ядра Linux» . Проверено 5 апреля 2015 г.
- ^ «[dm-devel] [ИСПРАВЛЕНИЕ 2/2] dm-crypt: добавлен режим TCW IV для старых контейнеров CBC TCRYPT» . redhat.com . Проверено 17 июня 2014 г.
- ^ «Ext2 IFS для Windows» . fs-driver.org . Проверено 15 февраля 2015 г.
- ^ Алекс Хорнунг (23 июля 2010 г.). «ВНИМАНИЕ: dm, lvm, cryptsetup и initrd на мастере» .
Внешние ссылки
[ редактировать ]- Официальные dm-crypt , cryptsetup-luks и cryptmount сайты
- Все о dm-crypt и LUKS на одной странице (на archive.org) — странице, посвященной dm-crypt/LUKS, начиная с теории и заканчивая множеством практических примеров его использования.