Cryptoloop

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску

Cryptoloop — модуль шифрования устройства хранения в Linux, построенный на базе CryptoAPI, представлен версии 2.5.45 ядра Linux[1]. Начиная с ядер версии 2.6 заменён dm-crypt[en] — модулем для device mapper.

Cryptoloop может создавать зашифрованную файловую систему внутри раздела или из обычного файла в обычной файловой системе. Как только файл зашифрован, его можно перенести на другое запоминающее устройство. Это достигается с помощью устройства loop — псевдоустройства, которое позволяет установить нормальный файл, как если бы это было физическое устройство. Зашифровывая ввод-вывод для устройства цикла, все данные, к которым осуществляется доступ, сначала должны быть дешифрованы перед прохождением через обычную файловую систему; так же и в обратном порядке, любые сохраненные данные будут зашифрованы.

Cryptoloop уязвим для атак[en] с водяными знаками[2], что позволяет определить наличие данных с водяными знаками в зашифрованной файловой системе:

Эта атака использует слабость в IV вычислении и знание того, как файловые системы размещают файлы на диске. Эта атака работает с файловыми системами с мягким размером блока 1024 или более. По крайней мере, ext2, ext3, ReiserFS и minix обладают таким свойством. Эта атака позволяет обнаружить наличие специально созданных файлов с водяными знаками. Файлы с водяными знаками содержат специальные битовые шаблоны, которые можно обнаружить без расшифровки[3].

При этом преемник cryptoloop — dm-crypt — при корректном использовании менее уязвим для этого типа атаки[4].

Примечания[править | править код]

  1. Kernel development LWN.net Архивная копия от 11 марта 2017 на Wayback Machine LWN.net
  2. Linux Cryptoloop Watermark Exploit. Дата обращения: 4 июня 2017. Архивировано 10 июля 2006 года.
  3. Saarinen, Markku-Juhani O. 'Re: Oopsing cryptoapi (or loop device?) on 2.6.*' - MARC (19 февраля 2004). Дата обращения: 4 июня 2017. Архивировано 16 ноября 2018 года.
  4. why mainline cryptoloop should not be used. Дата обращения: 4 июня 2017. Архивировано 17 сентября 2015 года.

Литература[править | править код]

  • J. Morris. The Linux kernel cryptographic API // Linux Journal. — № 108 (April 2003).

Ссылки[править | править код]