Многие современные жесткие диски (в том числе SSD) поддерживают технологию самошифровния, предназначенную для защиты данных пользователя. Диски с поддержкой шифрования на уровне контроллера называются SED дисками (Self-Encrypting Drives). Алгоритм шифрования с симметричным ключом реализуется аппаратно на уровне контроллера диска. При записи на диск все данные шифруются, а при чтении – расшифровываются, причем абсолютно прозрачно с точки зрения пользователя. Windows 8 и Windows Server 2012 могут использовать аппаратный функционал SED дисков для шифрования данных BitLocker-ом, тем самым разгружая процессор и уменьшая общее энергопотребление системы.
При использовании SED диска с шифрованиеми BitLocker на Windows 7 / 2008, данные на диске по сути шифруются дважды, на уровне ОС шифрование выполняет BitLocker, а затем эти же данные шифруются контроллером диска. Не очень-то эффективно…
В BitLocker на Windows 8 / Windows Server 2012 появилась возможность разгрузить процессор, передав функционал шифрования контроллеру жесткого диска. По различным оценкам, передача функций шифрования BitLocker контролеру SED диска увеличивает производительность системы на 15-29%. Кроме того, при переходе на аппаратное шифрование, увеличивается срок работы устройств от аккумуляторной батареи и срок ее жизни (Как проверить состояние аккумулятора в Windows 8).
При использовании аппаратного шифрования BitLocker увеличивается безопасность системы за счет того, что ключ шифрования более не хранится в памяти компьютера, тем самым память компьютера более не может быть потенциальным вектором атаки
Microsoft определила особый стандарт Microsoft eDrive, описывающий требования к SED дискам для использования вместе с BitLocker. eDrive основан на стандартах спецификаций TCG OPAL и IEEE 1667.
При использовании SED дисков, поддерживающих стандарт eDrive, накопитель выполняет шифрование «на лету», практически полностью исчезает падение производительности системы при работе BitLocker (по сравнению с программным шифрованием BitLocker).
Судя по описаниям Microsoft, задействовать аппаратное шифрование BitLocker на совместимых устройствах не составляет труда. Но, оказалось, перейти на аппаратное шифрование не так просто. Далее покажем, как включить поддержку BitLocker Hardware Encryption на SSD диске, поддерживающим стандарт eDrive.
Для того, чтобы BitLocker мог использовать для шифрования контроллер жесткого диска, окружение должно соответствовать следующим требованиям.
Требования к загрузочной системе:
- BitLocker поддерживает версии TPM 1.2 и 2.0 (и выше). Дополнительно, требуется TPM драйвер, сертифицированный Microsoft
- Система должна быть основана на UEFI 2.3.1 и поддерживать EFI_STORAGE_SECURITY_COMMAND_PROTOCOL
- Компьютер должен загружаться в нативном UEFI режиме (режим совместимости CSM — Compatibility Support Mode должен быть отключен)
Требования к SED SSD диску с данными:
- Диск не должен быть инициализирован
- Шифрование должно быть отключено
В нашей конфигурации мы пытаемся включить аппаратное шифрование BitLocker на SSD диске Samsung SSD 850 Pro (eDrive совместимый SSD). Для управления параметрами SSD диска будем использовать официальную утилиту Samsung для работы с SSD накопителями — Samsung Magician.
По задумке Microsoft, если система удовлетворяет описанным условиям, то при включении BitLocker на SED диске, для шифрования данных автоматически использования функционал контроллера. Однако проблема оказалась в том, что со старыми версиями драйвера Intel Rapid Storage Technology (RST), это не работает. Рабочая версия RST с корректной поддержкой BitLocker – 13.2.
- Проверяем текущую версию драйвера RST – в нашем случае это 12.8.10.1005. Качаем свежую версию RST (13.2.4.1000) драйвера из центра загрузки Intel (https://downloadcenter.intel.com/download/24293) и устанавливаем.
Примечание. Если не обновлять RST драйвер, при попытке включить режим защиты на SSD диске в Samsung Magician, появляется ошибка Failed to perform the operation on the selected disk . А при попытке установить принудительное использование аппаратного шифрования командой:
Enable-BitLocker -MountPoint d: -TPMProtector -HardwareEncryption
Появляется ошибка:
Set-BitLockerVolumeInternal : The drive specified does not support hardware-based encryption. (Exception from HRESULT: 0x803100B2) - Очистим содержимое SSD диска следующим образом, выполнив последовательно следующие команды (данные на втором диске будут удалены!):
- diskpart
- list disk
- select disk 1
- clean
Важно. Диск с индексом 1 будет полностью очищен. Убедитесь, что вы указываете индекс вашего SSD диска. В нашем примере Samsung SSD 850 Pro имеет индекс 1. - Откроем Samsung Magician и в разделе Data Security, включите режим аппаратного шифрования SSD, нажав на Ready to enable.
- После перезагрузки убедимся, что режим шифрования диска активирован.
- Инициализируйте и отформатируйте диск в консоли Disk Management.
- Осталось активировать BitLocker для диска как обычно. В мастере настройки указать, что нужно щифровать все содержимое диска (Encrypt entire drive). В противном случае будет использоваться программное шифрование BitLocker.
- Осталось убедиться, что BitLocker теперь использует аппаратное шифрование. Сделать это можно только из командной строки (с правами администратора):
Manage-bde –status d:
Следующая строка свидетельствует о том, что BitLocker используется аппаратное шифрование
Encryption Method: Hardware Encryption - 1.3.111.2.1619.0.1.2
В дальнейшем данный SED диск можно использовать в качестве загрузочного, установив на него систему. Каждый раз при загрузке такой системы необходимо будет указывать ключ Bitlocker.