Представьте — вы где-то забыли ноутбук. Если данные на нём не зашифрованы, то к ним можно получить доступ. Чтобы защитить данные, используют шифрование — оно переводит их в нечитаемый код. Рассказываем, как работает шифрование дисков на лету и почему для расшифровки нужно вводить дополнительный пароль при входе в систему.
Зачем шифровать диски и почему на лету
Если компьютер защищён паролем, но данные не зашифрованы, обойти пароль и получить к ним доступ несложно. Например, пароль можно сбросить через восстановление системы или взломать с помощью сторонней программы на флешке. Можно извлечь из компьютера жёсткий диск и подключить его к другому компьютеру. Получается, что обычная защита паролем не обеспечивает безопасность данных.
В информационной безопасности есть три основных принципа:
- Конфиденциальность — данные должны быть защищены от нелегальных пользователей.
- Целостность — данные не должны меняться или удаляться без ведома владельца.
- Доступность — данные должны быть доступны в любое время, когда к ним обращаются.
Шифрование дисков следует всем этим принципам. Оно защищает данные не только от использования в случае кражи компьютера, но и от изменения (конфиденциальность и целостность). Доступность обеспечивается за счёт шифрования «на лету». Это происходит так: система не расшифровывает каждый раз весь жёсткий диск, а работает только с нужными фрагментами данных.
От чего защищает и не защищает шифрование
Шифрование дисков на лету защищает данные, которые хранятся на жёстком диске компьютера или другого подключённого к нему устройства. Доступ к зашифрованным данным есть только при наличии пароля, который пользователь создаёт при шифровании. Это позволяет защитить данные на случай, если кто-то получит доступ к физическому диску или компьютер украдут.
Но у шифрования дисков на лету есть несколько особенностей, которые могут свести на нет всю защиту:
- Во время работы компьютера данные расшифровываются. Если в это время получить физический или удалённый доступ к компьютеру, данные не будут защищены.
- Если злоумышленник узнает или угадает пароль для расшифровки данных, он получит к ним доступ. Поэтому используйте сильные пароли.
- Если компьютер заражён вирусом, злоумышленник с его помощью может получить доступ к данным в незашифрованном виде.
Как выглядит шифрование для пользователя
Процесс шифрования данных не отличается от обычной установки программы за исключением этапа самого шифрования — он может занять несколько часов в зависимости от выбранного способа. После того как данные будут зашифрованы, при запуске компьютера нужно будет вводить дополнительный пароль, чтобы расшифровать данные. В зависимости от типа процессора расшифровка может занимать несколько секунд или минут.
В операционных системах Windows и macOS есть встроенные программы для шифрования дисков на лету: BitLocker и FileVault. У них одинаковая технология шифрования данных, но есть свои плюсы и минусы (о них ниже).
Как именно шифруются данные: алгоритм AES
В основе технологий шифрования лежит алгоритм Rijndael или AES, который расшифровывается как Advanced Encryption Standard (продвинутый стандарт шифрования). Этот алгоритм считается стандартом США для шифрования секретных данных. Работает он так:
1. Массив шифруемых данных разбивается на блоки по 128 бит.
2. Каждый блок из 128 бит представлен как квадрат 4 × 4: матрица из 16 элементов, в каждом из которых лежит по одному байту, или по 8 бит.
байт 00 | байт 04 | байт 08 | байт 12 |
байт 01 | байт 05 | байт 09 | байт 13 |
байт 02 | байт 06 | байт 10 | байт 14 |
байт 03 | байт 07 | байт 11 | байт 15 |
3. По паролю, который придумал владелец компьютера во время шифрования, генерируется случайный ключ. По стандарту он может быть 3 размеров: 128, 192 или 256 бит.
4. После этого алгоритм начинает шифровать каждый блок. Это происходит за 4 шага, у каждого из которых своё название:
- SubBytes подменяет все байты — ячейки исходного блока другими из специальной таблицы.
- ShiftRows сдвигает байты в каждой строке матрицы-квадрата.
- MixColumns сдвигает все байты в каждой колонке.
- AddRoundKey добавляет к каждому байту специальный ключ, который каждый раз меняется.
5. Эти 4 шага называются одним раундом шифрования. Каждый блок шифруется несколько раундов, в зависимости от длины ключа:
- 128-битный ключ шифрует каждый блок 10 раз;
- 192-битный ключ — 12 раз;
- 256-битный ключ — 14 раз.
Чтобы подобрать перебором данных ключ даже из 128 бит, понадобится несколько миллиардов лет. Этого достаточно для защиты современных компьютеров, но если заглядывать в будущее, может потребоваться что-то ещё надёжнее. Поэтому существуют ещё два варианта, взломать которые ещё сложнее.
На алгоритме Rijndael-AES работает большинство современных программ для шифрования дисков.
BitLocker для Windows
BitLocker — встроенный шифровальщик в ОС Windows. Для его запуска нужно зайти в «Мой компьютер», кликнуть правой кнопкой мыши на иконку с тем диском, который нужно зашифровать, нажать «Включить BitLocker» и следовать инструкциям.
Второй вариант запуска — зайти в «Панель управления» → «Шифрование устройства»:
Так выглядит уже зашифрованный диск. Если бы диск не был зашифрован, то вместо «Архивировать ключ восстановления» было бы написано «Включить BitLocker».
По умолчанию BitLocker использует доверенный платформенный модуль TRM — небольшой чип на материнской плате. У него своя встроенная память, он независим от Windows и на нём можно хранить ключ от шифрования, чтобы не запоминать его. Это удобно, но не очень надёжно, потому что TRM можно взломать через подключение других устройств напрямую.
Чтобы этого не произошло, модуль TRM лучше отключить:
- Открыть консоль управления доверенного платформенного модуля («Выполнить» →
tpm.msc
). - Во вкладке «Действие» выбрать опцию «Отключить TPM».
- В окне «Отключение оборудования безопасности TPM» выбрать метод ввода пароля владельца и отключения TPM.
BitLocker обязывает где-то хранить ключ восстановления — на случай, если пользователь забудет пароль. Ключ можно сохранить в учётную запись Microsoft, на флешку, в файл или распечатать.
В зависимости от выбранного способа ввода пароля запуск компьютера будет различаться после шифрования — нужно будет либо вводить пароль вручную, либо вставлять в компьютер флешку. Вариант, что он сам загружается из TRM, мы не рассматриваем для повышения безопасности.
Плюсы BitLocker:
- Удобно пользоваться.
- Можно шифровать отдельные разделы, а не весь диск.
- Можно сделать ключ из USB — а это значит, можно полностью заблокировать доступ к системе при необходимости. Главное — не потерять флешку.
Минусы тоже есть:
- Так как компьютер можно разблокировать по сети, злоумышленник может снять защиту удалённо.
- Нужно обязательно хранить дополнительные ключи восстановления, которые могут быть утеряны или украдены.
- BitLocker есть не во всех версиях операционной системы — например её нет в Windows Home Edition.
- Ключи не шифруются в оперативной памяти, и их можно извлечь, подключив к компьютеру вредоносное ПО.
FileVault для macOS
FileVault — встроенная программа-шифровальщик в операционных системах macOS. Чтобы включить её, нужно зайти в «Настройки» → «Защита и безопасность» → FileVault:
Шифрование с помощью FileVault происходит в фоновом режиме и только когда компьютер включён и подключён к питанию. Можно задать ключ восстановления, но лучше не хранить его в облаке iCloud: там его нельзя контролировать, и его могут украсть.
Плюсы FileVault:
- Удобно пользоваться.
- Не нужно вводить дополнительный пароль.
А минусы такие:
- Если забыть пароль и ключ восстановления, данные нельзя будет восстановить.
- Нельзя сделать ключ из USB.
- Нельзя зашифровать отдельный раздел диска.
- Ключи не шифруются в оперативной памяти, и их можно извлечь, подключив к компьютеру вредоносное ПО.
VeraCrypt для всех ОС
VeraCrypt — бесплатная программа с открытым исходным кодом, обновляется регулярно. После скачивания и установки нужно выбрать пункт Create Volume или «Создать том»:
Плюсы VeraCrypt:
- Много возможностей шифрования — например, можно зашифровать внешний жёсткий диск или USB.
- Можно зашифровать часть системы скрытым образом — например, расшифровать одну часть диска, а другую оставить зашифрованной и невидимой.
- Ключи и пароли можно шифровать в оперативной памяти, что осложняет взлом с помощью физических устройств.
- Работает на всех операционных системах.
Есть и минусы:
- VeraCrypt немного сложнее, чем BitLocker и FileVault.
- Нельзя сделать ключ из USB.
Самошифрующиеся диски
Существуют устройства с функцией самошифрования, например SSD-диски, которые тоже используют алгоритм AES. Они ещё называются устройствами TCG Opal, потому что так называется протокол, которому они соответствуют. В названии должно быть SED (Self Encrypting Drive) или Opal. Внешне они не отличаются от обычных дисков:
Протокол TCG Opal работает так:
- Шифрование выполняется на самом устройстве, ресурсы ОС не нужны. Ключ шифрования тоже хранится на устройстве.
- При запуске сначала загружается окно Теневой учётной записи, в котором нужно ввести пароль. Если он верный, начинается обычная загрузка компьютера.
- Диск можно разделить на секторы и каждому раздать разные ключи доступа.
- Каждый сектор может быть очищен отдельно от других.
К такому SSD-диску нет доступа для вирусов в операционной системе, но он уязвим для устройств-кейлоггеров, которые можно подключить к компьютеру.
Плюсы самошифрующихся дисков:
- Данные недоступны для вирусов из оперативной памяти.
- Операционная система не нагружается.
- Есть защита в виде Теневой учётной записи.
- Чтобы отключить шифрование, нужен физический доступ к накопителю, на котором наклеен стикер со специальным ключом PSID.
Минусы тоже есть:
- Данные нельзя восстановить, если утерян пароль или сгорел контроллер на накопителе.
- При отключении шифрования все данные удаляются.
Когда шифрование диска не поможет
Единственное уязвимое место AES-технологий — пароль. Поэтому шифрование диска не поможет в таких случаях:
- Если придумать слабый пароль, его можно подобрать.
- Если пароль кто-то подсмотрит или украдёт через кейлоггер, защиту можно снять.
- Если оставить компьютер включённым в публичном месте, доступ к нему есть у всех.
- Если пользоваться публичным Wi-Fi, все действия может просмотреть владелец точки доступа в интернет.
- Шифрование включается после выключения компьютера, поэтому все пограничные состояния нужно отключить: режимы сна, энергосбережения и быстрого запуска.
Если коротко — нужно беречь пароль и оставить два режима работы: компьютер полностью включён или выключен.
Лайфхак для скорости работы
Если компьютер не новый, шифрование может замедлить его работу. Чтобы скорость не изменилась, можно заменить старый диск HDD на новый SSD или взять SSD с самошифрованием, чтобы он не нагружал процессор и оперативную память.
У меня никто ничего не украдёт
Кражи, как правило, происходят внезапно и без предупреждения. Если оставить компьютер на ремонт, доступ к нему получат люди, которых вы вряд ли хорошо знаете.
У автора статьи однажды вытащили телефон прямо из кармана, а в другой раз украли рюкзак, который лежал в двух шагах, но без присмотра. Компьютера в нём не было, но мог бы быть.