diff options
Diffstat (limited to 'doc/html')
-rw-r--r-- | doc/html/ru/Documentation.html | 2 | ||||
-rw-r--r-- | doc/html/ru/FAQ.html | 23 | ||||
-rw-r--r-- | doc/html/ru/Release Notes.html | 5 | ||||
-rw-r--r-- | doc/html/ru/Security Requirements and Precautions.html | 2 | ||||
-rw-r--r-- | doc/html/ru/VeraCrypt Memory Protection.html | 106 | ||||
-rw-r--r-- | doc/html/ru/VeraCrypt RAM Encryption.html | 158 |
6 files changed, 289 insertions, 7 deletions
diff --git a/doc/html/ru/Documentation.html b/doc/html/ru/Documentation.html index 22291e2f..7f785e9c 100644 --- a/doc/html/ru/Documentation.html +++ b/doc/html/ru/Documentation.html @@ -100,6 +100,8 @@ </li><li><a href="Hibernation%20File.html">Файл гибернации</a> </li></ul> </li><li><a href="Unencrypted%20Data%20in%20RAM.html">Незашифрованные данные в ОЗУ</a> +</li><li><a href="VeraCrypt%20RAM%20Encryption.html">Шифрование оперативной памяти в VeraCrypt</a> +</li><li><a href="VeraCrypt%20Memory%20Protection.html">Защита памяти в VeraCrypt</a> </li><li><a href="Physical%20Security.html">Физическая безопасность</a> </li><li><a href="Malware.html">Вредоносное ПО (malware)</a> </li><li><a href="Multi-User%20Environment.html">Многопользовательская среда</a> </li><li><a href="Authenticity%20and%20Integrity.html">Подлинность и целостность данных</a> diff --git a/doc/html/ru/FAQ.html b/doc/html/ru/FAQ.html index d951fe1d..6e156208 100644 --- a/doc/html/ru/FAQ.html +++ b/doc/html/ru/FAQ.html @@ -35,7 +35,7 @@ <div class="wikidoc"> <h1>Вопросы и ответы</h1> <div style="text-align:left; margin-bottom:19px; padding-top:0px; padding-bottom:0px; margin-top:0px"> -Последнее обновление: 2 июля 2017 г.</div> +Последнее обновление: 1 октября 2023 г.</div> <div style="text-align:left; margin-top:19px; margin-bottom:19px; padding-top:0px; padding-bottom:0px"> <em style="text-align:left">Мы не обещаем отсутствие ошибок в этом документе, он поставляется "как есть" без всяких гарантий. См. подробности в главе <a href="Disclaimers.html" target="_blank" style="text-align:left; color:#0080c0; text-decoration:none.html"> @@ -862,7 +862,7 @@ VeraCrypt использует для шифрования блочные шиф после монтирования тома. Это необходимо, поскольку поиск Windows может индексировать только те диски, которые доступны при его запуске.</div> <div style="text-align:left; margin-top:19px; margin-bottom:19px; padding-top:0px; padding-bottom:0px"> -<strong>Возникает ошибка "Операция не разрешена" ("Operation not permitted") при использовании VeraCrypt в macOS, когда я пытаюсь смонтировать файловый контейнер. Как решить эту проблему?</strong></div> +<strong>При монтировании файлового контейнера VeraCrypt в macOS возникает ошибка "Операция не разрешена" ("Operation not permitted"). Как решить эту проблему?</strong></div> <div style="text-align:left; margin-top:19px; margin-bottom:19px; padding-top:0px; padding-bottom:0px"> <p>Об этой специфической ошибке, которая появляется в виде "Operation not permitted: /var/folders/w6/d2xssyzx.../T/.veracrypt_aux_mnt1/control VeraCrypt::File::Open:232", сообщают некоторые пользователи. Это результат того, что macOS не предоставила VeraCrypt необходимых разрешений. Вот пара способов, которые вы можете попробовать:</p> @@ -890,9 +890,22 @@ sudo /Applications/VeraCrypt.app/Contents/MacOS/VeraCrypt Запуск VeraCrypt с помощью sudo часто позволяет обойти определённые проблемы, связанные с разрешениями, но всегда, когда это возможно, рекомендуется предоставлять необходимые разрешения через системные настройки.</p> </li> </ul> - </div> - -<strong style="text-align:left">Здесь нет ответа на мой вопрос – что мне делать?</strong></div> +</div> +<div style="text-align:left; margin-top:19px; margin-bottom:19px; padding-top:0px; padding-bottom:0px"> +<strong style="text-align:left">Почему VeraCrypt показывает в своём списке неизвестное устройство, которое не отображается как физический диск в Windows-компоненте "Управление дисками" или в выводе утилиты DiskPart?</strong></div> +<div style="text-align:left; margin-top:19px; margin-bottom:19px; padding-top:0px; padding-bottom:0px"> +<p> +Начиная с Windows 10 версии 1903 и в более поздних версиях Microsoft добавила функцию под названием <b>Песочница Windows</b> (Sandbox). Это изолированная среда, предназначенная для безопасного запуска ненадёжных приложений. В рамках этой функции Windows создаёт динамический виртуальный жёсткий диск (VHDX), который представляет собой чистую установку Windows. Этот VHDX содержит базовый образ системы, пользовательские данные и состояние времени выполнения, а его размер может варьироваться в зависимости от конфигурации и использования системы. +</p> +<p> +Когда VeraCrypt перечисляет устройства в системе, определяются все доступные дисковые устройства, используя формат пути к устройству, например <b>\Device\HardDiskX\PartitionY</b>. VeraCrypt выводит список этих устройств, в том числе виртуальных, например тех, которые связаны с Песочницей Windows, не делая различий по их физической или виртуальной природе. Таким образом, вы можете обнаружить неожиданное устройство в VeraCrypt, даже если оно не отображается как физический диск в таких инструментах, как DiskPart. +</p> +<p> +Более подробную информацию о Песочнице Windows и связанном с ней виртуальном жёстком диске см. в <a href="https://techcommunity.microsoft.com/t5/windows-os-platform-blog/windows-sandbox/ba-p/301849">официальной статье Microsoft</a>. +</p> +</div> +<div style="text-align:left; margin-top:19px; margin-bottom:19px; padding-top:0px; padding-bottom:0px"> +<strong style="text-align:left">Что делать, если здесь нет ответа на мой вопрос?</strong></div> <div style="text-align:left; margin-top:19px; margin-bottom:19px; padding-top:0px; padding-bottom:0px"> Попробуйте поискать ответ в документации VeraCrypt и на сайте программы.</div> </div><div class="ClearBoth"></div></body></html> diff --git a/doc/html/ru/Release Notes.html b/doc/html/ru/Release Notes.html index 8ed2b38f..b750cae5 100644 --- a/doc/html/ru/Release Notes.html +++ b/doc/html/ru/Release Notes.html @@ -42,7 +42,7 @@ внешние, так и скрытые тома, включая шифрование системы и скрытую ОС, и удалить существующие тома, созданные версией VeraCrypt старее, чем 1.18a.</span></li> </p> -<p><strong style="text-align:left">1.26.6</strong> (21 сентября 2023 года):</p> +<p><strong style="text-align:left">1.26.7</strong> (1 октября 2023 года):</p> <ul> <li><strong>Все операционные системы:</strong> <ul> @@ -89,6 +89,7 @@ VeraCrypt старее, чем 1.18a.</span></li> </ul> </li> <li>Добавлена политика смягчения последствий процесса, чтобы предотвратить внедрение в VeraCrypt других процессов.</li> +<li>Незначительные улучшения в реализации шифрования оперативной памяти.</li> <li>Исправлены проблемы с безопасным рабочим столом в Windows 11 22H2.</li> <li>Реализована поддержка монтирования частично зашифрованных системных разделов.</li> <li>Исправлено ложное обнаружение вставки нового устройства, когда включена опция очистки ключей шифрования (только в случае системного шифрования).</li> @@ -108,7 +109,7 @@ VeraCrypt старее, чем 1.18a.</span></li> <li>Удалена рекомендация по расширениям ключевых файлов, а в документации указаны риски применения сторонних расширений файлов.</li> <li>Добавлена поддержка дополнительных языков в программе установки.</li> <li>Обновлена библиотека LZMA до версии 23.01.</li> -<li>Обновлены библиотеки libzip до версии 1.10.0 и zlib до версии 1.3.</li> +<li>Обновлены библиотеки libzip до версии 1.10.1 и zlib до версии 1.3.</li> </ul> </li> <li><strong>Linux:</strong> diff --git a/doc/html/ru/Security Requirements and Precautions.html b/doc/html/ru/Security Requirements and Precautions.html index 684f320d..5ff3b1ef 100644 --- a/doc/html/ru/Security Requirements and Precautions.html +++ b/doc/html/ru/Security Requirements and Precautions.html @@ -64,6 +64,8 @@ </li><li style="text-align:left; margin-top:0px; margin-bottom:0px; padding-top:0px; padding-bottom:0px"> <a href="Unencrypted%20Data%20in%20RAM.html" style="text-align:left; color:#0080c0; text-decoration:none.html">Незашифрованные данные в ОЗУ</a> </li><li style="text-align:left; margin-top:0px; margin-bottom:0px; padding-top:0px; padding-bottom:0px"> +<a href="VeraCrypt%20Memory%20Protection.html" style="text-align:left; color:#0080c0; text-decoration:none.html">Защита памяти в VeraCrypt</a> +</li><li style="text-align:left; margin-top:0px; margin-bottom:0px; padding-top:0px; padding-bottom:0px"> <a href="Physical%20Security.html" style="text-align:left; color:#0080c0; text-decoration:none.html">Физическая безопасность</a> </li><li style="text-align:left; margin-top:0px; margin-bottom:0px; padding-top:0px; padding-bottom:0px"> <a href="Malware.html" style="text-align:left; color:#0080c0; text-decoration:none.html">Вредоносное ПО (malware)</a> diff --git a/doc/html/ru/VeraCrypt Memory Protection.html b/doc/html/ru/VeraCrypt Memory Protection.html new file mode 100644 index 00000000..040a168f --- /dev/null +++ b/doc/html/ru/VeraCrypt Memory Protection.html @@ -0,0 +1,106 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru" lang="en"> +<head> +<meta http-equiv="content-type" content="text/html; charset=utf-8" /> +<title>VeraCrypt - Бесплатное надёжное шифрование дисков с открытым исходным кодом</title> +<meta name="description" content="VeraCrypt это бесплатное программное обеспечение для шифрования дисков с открытым исходным кодом для Windows, Mac OS X (macOS) и Linux. В случае, если злоумышленник вынуждает вас раскрыть пароль, VeraCrypt обеспечивает правдоподобное отрицание наличия шифрования. В отличие от пофайлового шифрования, VeraCrypt шифрует данные в реальном времени (на лету), автоматически, прозрачно, требует очень мало памяти и не использует временные незашифрованные файлы."/> +<meta name="keywords" content="encryption, security, шифрование, безопасность"/> +<link href="styles.css" rel="stylesheet" type="text/css" /> +</head> +<body> + +<div> +<a href="Documentation.html"><img src="VeraCrypt128x128.png" alt="VeraCrypt"/></a> +</div> + +<div id="menu"> + <ul> + <li><a href="Home.html">Начало</a></li> + <li><a href="/code/">Исходный код</a></li> + <li><a href="Downloads.html">Загрузить</a></li> + <li><a class="active" href="Documentation.html">Документация</a></li> + <li><a href="Donation.html">Поддержать разработку</a></li> + <li><a href="https://sourceforge.net/p/veracrypt/discussion/" target="_blank">Форум</a></li> + </ul> +</div> + +<div> +<p> +<a href="Documentation.html">Документация</a> +<img src="arrow_right.gif" alt=">>" style="margin-top: 5px"> +<a href="Security%20Requirements%20and%20Precautions.html">Требования безопасности и меры предосторожности</a> +<img src="arrow_right.gif" alt=">>" style="margin-top: 5px"> +<a href="VeraCrypt%20Memory%20Protection.html">Защита памяти в VeraCrypt</a> +</p></div> + +<div class="wikidoc"> +<h1>Защита памяти в VeraCrypt</h1> +<h2>Введение</h2> +<p>VeraCrypt всегда стремится улучшить взаимодействие с пользователем, сохраняя при этом наивысший уровень безопасности. Одна из таких функций безопасности – механизм защиты памяти. Однако для тех пользователей, которым требуются специальные возможности взаимодействия с ОС, мы предоставили возможность отключить этот механизм.</p> +<h2>Общие сведения</h2> +<p> +Защита памяти гарантирует, что процессам, не являющимся административными, запрещён доступ к памяти процесса VeraCrypt. Это служит двум основным целям: +<ul> + <li>ЗАЩИТА ОТ ВРЕДОНОСНЫХ ДЕЙСТВИЙ: Этот механизм предотвращает внедрение вредоносных данных или кода в процесс VeraCrypt неадминистративными процессами.</li> + <li>ЗАЩИТА КОНФИДЕНЦИАЛЬНЫХ ДАННЫХ: Хотя VeraCrypt разработан так, чтобы не оставлять конфиденциальных данных в памяти, эта функция обеспечивает дополнительный уровень безопасности, гарантируя, что другие процессы, не являющиеся административными, не смогут получить доступ к потенциально конфиденциальной информации или извлечь её.</li> +</ul> +</p> +<h2>Зачем нужна опция отключения защиты памяти?</h2> +<p> + Некоторым инструментам специальных возможностей, таким как экранный диктор, требуется доступ к памяти процессов ПО для эффективной интерпретации пользовательского интерфейса (UI) и взаимодействия с ним. Защита памяти VeraCrypt непреднамеренно препятствовала работе таких инструментов. Чтобы гарантировать, что пользователи смогут беспрепятственно применять инструменты специальных возможностей в VeraCrypt, мы и ввели эту опцию отключения защиты. +</p> +<h2>Как включить/отключить защиту памяти?</h2> +<p> + По умолчанию защита памяти включена. Её можно отключить через главное окно VeraCrypt или во время установки. + <ol> + <li>Во время установки: + <ul> + <li>В мастере установки найдите опцию <em>Отключить защиту памяти для совместимости со специальными возможностями</em>.</li> + <li>Установите флажок, если хотите отключить защиту памяти. Оставьте этот флажок снятым, чтобы продолжать использовать защиту памяти.</li> + <li>Приступайте к остальной части установки.</li> + </ul> + </li> + <li>После установки: + <ul> + <li>Откройте VeraCrypt и в меню <em>Настройки</em> выберите пункт <em>Быстродействие и настройки драйвера</em>.</li> + <li>Найдите и установите/снимите флажок с опции <em>Отключить защиту памяти для совместимости со специальными возможностями</em> согласно вашим потребностям. Появится уведомление, что для вступления изменений в силу необходима перезагрузка ОС.</li> + <li>Нажмите <em>OK</em>.</li> + </ul> + </li> + <li>При обновлении или исправлении/переустановке: + <ul> + <li>В мастере установки найдите опцию <em>Отключить защиту памяти для совместимости со специальными возможностями</em>.</li> + <li>Найдите и установите/снимите флажок с опции <em>Отключить защиту памяти для совместимости со специальными возможностями</em> согласно вашим потребностям.</li> + <li>Приступайте к остальной части обновления или исправления/переустановки.</li> + <li>Если вы изменили настройку защиты памяти, появится уведомление, что необходима перезагрузка ОС.</li> + </ul> + + </li> + </ol> +<h2>О потенциальных рисках</h2> +<p> +Хотя отключение защиты памяти может быть важным для некоторых пользователей, необходимо понимать связанные с этим риски: +<ul> + <li><b>ПОТЕНЦИАЛЬНОЕ ВОЗДЕЙСТВИЕ:</b> Отключение защиты может подвергнуть память процесса VeraCrypt воздействию вредоносных процессов.</li> + <li><b>НАИЛУЧШЕЕ РЕШЕНИЕ:</b> Если вам не требуются специальные средства для использования VeraCrypt, рекомендуется оставить защиту памяти включённой.</li> +</ul> +</p> +<h2>Вопросы и ответы</h2> +<p> + <b>По умолчанию защита памяти включена или выключена?</b><br> + Защита памяти по умолчанию включена. +</p> +<p> + <b>Как узнать, включена или отключена защита памяти?</b><br> + Проверить состояние защиты памяти можно из главного окна VeraCrypt. Перейдите в меню <em>Настройки</em> и выберите пункт <em>Быстродействие и настройки драйвера</em>. Если опция <em>Отключить защиту памяти для совместимости со специальными возможностями</em> включена, то защита памяти отключена. Если эта опция отключена, то защита памяти включена. +</p> +<p> + <b>Снизит ли отключение защиты памяти надёжность шифрования VeraCrypt?</b><br> + Нет, алгоритмы шифрования и их надёжность остаются прежними. Затрагивается только защита от потенциального перехвата памяти и внедрения в неё процессов, не являющимися административными. +</p> +<p> + <b>Я не пользуюсь инструментами специальных возможностей. Нужно ли мне отключить эту функцию?</b><br> + Нет, лучше оставить защиту памяти включённой для дополнительной безопасности. +</p> +</div><div class="ClearBoth"></div></body></html> diff --git a/doc/html/ru/VeraCrypt RAM Encryption.html b/doc/html/ru/VeraCrypt RAM Encryption.html new file mode 100644 index 00000000..1f51104c --- /dev/null +++ b/doc/html/ru/VeraCrypt RAM Encryption.html @@ -0,0 +1,158 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru" lang="ru"> +<head> +<meta http-equiv="content-type" content="text/html; charset=utf-8" /> +<title>VeraCrypt - Бесплатное надёжное шифрование дисков с открытым исходным кодом</title> +<meta name="description" content="VeraCrypt это бесплатное программное обеспечение для шифрования дисков с открытым исходным кодом для Windows, Mac OS X (macOS) и Linux. В случае, если злоумышленник вынуждает вас раскрыть пароль, VeraCrypt обеспечивает правдоподобное отрицание наличия шифрования. В отличие от пофайлового шифрования, VeraCrypt шифрует данные в реальном времени (на лету), автоматически, прозрачно, требует очень мало памяти и не использует временные незашифрованные файлы."/> +<meta name="keywords" content="encryption, security, шифрование, безопасность"/> +<link href="styles.css" rel="stylesheet" type="text/css" /> +</head> +<body> + +<div> +<a href="Documentation.html"><img src="VeraCrypt128x128.png" alt="VeraCrypt"/></a> +</div> + +<div id="menu"> + <ul> + <li><a href="Home.html">Начало</a></li> + <li><a href="/code/">Исходный код</a></li> + <li><a href="Downloads.html">Загрузить</a></li> + <li><a class="active" href="Documentation.html">Документация</a></li> + <li><a href="Donation.html">Поддержать разработку</a></li> + <li><a href="https://sourceforge.net/p/veracrypt/discussion/" target="_blank">Форум</a></li> + </ul> +</div> + +<div> +<p> +<a href="Documentation.html">Документация</a> +<img src="arrow_right.gif" alt=">>" style="margin-top: 5px"> +<a href="Security%20Requirements%20and%20Precautions.html">Требования безопасности и меры предосторожности</a> +<img src="arrow_right.gif" alt=">>" style="margin-top: 5px"> +<a href="VeraCrypt%20RAM%20Encryption.html">Шифрование оперативной памяти в VeraCrypt</a> +</p></div> + +<div class="wikidoc"> +<h1>Шифрование оперативной памяти в VeraCrypt</h1> + +<h2>Введение</h2> + +<p> + Шифрование ОЗУ в VeraCrypt направлено на защиту ключей шифрования диска, хранящихся в энергонезависимой памяти, от определённых типов атак. Основные цели шифрования: + </p><ul> + <li>Защита от атак при "холодной" загрузке компьютера (Cold Boot).</li> + <li>Добавление уровня обфускации (запутывания кода), чтобы значительно усложнить восстановление мастер-ключей шифрования из дампов памяти, будь то в режиме реального времени или в автономном режиме.</li> + </ul> +<p></p> + +<h3>Реализация</h3> + +<p>Краткое описание того, как достигается шифрование оперативной памяти:</p> +<ol> + <li>При запуске Windows драйвер VeraCrypt выделяет область памяти размером 1 МиБ. Если это не удаётся, размер уменьшается вдвое до тех пор, пока распределение не завершится успешно (минимальный размер – 8 КиБ). Все эти переменные размещаются в невыгружаемом пространстве памяти ядра.</li> + <li>Затем эта область памяти заполняется случайными байтами, сгенерированными CSPRNG на основе ChaCha20.</li> + <li>Генерируются два случайных 64-битных целых числа: <code>HashSeedMask</code> и <code>CipherIVMask</code>.</li> + <li>Для каждого мастер-ключа тома алгоритм шифрования ОЗУ получает уникальный ключ из комбинации области памяти и уникальных значений, извлечённых из памяти, подлежащей шифрованию. Это обеспечивает отдельный ключ для каждой зашифрованной области памяти. Использование ключей и IV, зависящих от местоположения, предотвращает лёгкое извлечение мастер-ключей из дампов памяти.</li> + <li>Мастер-ключи расшифровываются для каждого запроса, что требует быстрого алгоритма расшифровки. Для этого используется ChaCha12.</li> + <li>После монтирования тома его мастер-ключи немедленно шифруются по описанному алгоритму.</li> + <li>Для каждого запроса ввода-вывода для тома мастер-ключи расшифровываются только на время этого запроса, а затем надёжно удаляются.</li> + <li>При размонтировании тома зашифрованные мастер-ключи надёжно удаляются из памяти.</li> + <li>При завершении работы или перезагрузке Windows область памяти, выделенная во время запуска, надёжно очищается.</li> +</ol> + +<h3>Защита от атак при "холодной" перезагрузке ПК (Cold Boot)</h3> + +<p> + Предотвращение атак при "холодной" загрузке достигается благодаря использованию большой страницы памяти для формирования (деривации) ключа. Это гарантирует, что злоумышленники не смогут восстановить мастер-ключ, поскольку части этой большой области памяти, скорее всего, будут повреждены и их нельзя будет восстановить после завершения работы. Более подробную информацию об атаках с "холодной" загрузкой и методах их предотвращения см. в следующих документах: +</p> +<ul> + <li><a href="https://www.blackhat.com/presentations/bh-usa-08/McGregor/BH_US_08_McGregor_Cold_Boot_Attacks.pdf" target="_blank">Cold Boot Attacks (BlackHat)</a></li> + <li><a href="https://www.grc.com/sn/files/RAM_Hijacks.pdf" target="_blank">RAM Hijacks</a></li> +</ul> + +<h3>Несовместимость с режимом гибернации и быстрым запуском Windows</h3> +<p> + Шифрование оперативной памяти в VeraCrypt несовместимо с функциями гибернации и быстрого запуска Windows. Перед активацией шифрования ОЗУ эти функции будут отключены VeraCrypt, чтобы обеспечить безопасность и функциональность механизма шифрования. + +</p> + +<h3>Выбор алгоритма</h3> + +<p> + Выбор алгоритмов основывался на балансе между безопасностью и производительностью: +</p> +<ul> + <li><strong>t1ha2:</strong> Некриптографическая хеш-функция, выбранная из-за её чрезвычайно высокой скорости хеширования. Это очень важно, поскольку ключи извлекаются для каждого запроса шифрования/дешифрования из области памяти размером 1 МиБ. Также соблюдаются строгие лавинные критерии, что имеет решающее значение для данного варианта использования.</li> + <li><strong>ChaCha12:</strong> Этот алгоритм выбран вместо ChaCha20 по соображениям производительности; он обеспечивает достаточную надёжность шифрования при сохранении высокой скорости шифрования/дешифрования.</li> +</ul> + +<h3>Ключевые алгоритмы</h3> + +<p> + Для шифрования оперативной памяти основополагающими являются два основных алгоритма: +</p> + +<h4>1. VcGetEncryptionID</h4> + +<p> + Вычисляет уникальный идентификатор для набора буферов оперативной памяти, подлежащих шифрованию. +</p> +<pre> <code> + – Ввод: pCryptoInfo, переменная CRYPTO_INFO для шифрования/дешифрования + – Вывод: 64-битное целое число, идентифицирующее переменную pCryptoInfo + – Шаги: + – Вычисление суммы адресов виртуальной памяти полей ks и ks2 в pCryptoInfo: encID = ((uint64) pCryptoInfo->ks) + ((uint64) pCryptoInfo->ks2) + – Возврат результата + </code> +</pre> + +<h4>2. VcProtectMemory</h4> + +<p> + Шифрует буфер оперативной памяти, используя уникальный идентификатор, сгенерированный VcGetEncryptionID. +</p> +<pre> <code> + – Ввод: + – encID, уникальный идентификатор памяти, подлежащей шифрованию + – pbData, указатель на память, которую нужно зашифровать + – pbKeyDerivationArea, область памяти, выделяемая драйвером при запуске + – HashSeedMask и CipherIVMask, два 64-битных случайных целых числа при запуске + – Вывод: + – Отсутствует; память в pbData шифруется на месте + – Шаги: + – Формирование hashSeed: hashSeed = (((uint64) pbKeyDerivationArea) + encID) ^ HashSeedMask + – Вычисление 128-битного хеша: hash128 = t1h2 (pbKeyDerivationArea,hashSeed) + – Разложение hash128 на два 64-битных целых числа: hash128 = hash128_1 || hash128_2 + – Создание 256-битного ключа для ChaCha12: chachaKey = hash128_1 || hash128_2 || (hash128_1 OR hash128_2) || (hash128_1 + hash128_2) + – Шифрование chachaKey с помощью ChaCha12, используя hashSeed как IV: ChaCha256Encrypt (chachaKey, hashSeed, chachaKey) + – Формирование 64-битного IV для ChaCha12: chachaIV = (((uint64) pbKeyDerivationArea) + encID) ^ CipherIVMask + – Шифрование памяти в pbData с помощью ChaCha12: ChaCha256Encrypt (chachaKey, chachaIV, pbData) + – Надёжное стирание временных значений + </code> +</pre> + +<p> + Важно отметить, что поскольку ChaCha12 – это потоковый шифр, процессы шифрования и дешифрования идентичны, и функция <code>VcProtectMemory</code> может использоваться для обоих. +</p> + +<p> + Для более глубокого понимания и ознакомления с кодовой базой посетите репозиторий VeraCrypt и изучите упомянутые функции в файле <code>src/Common/Crypto.c</code>. +</p> + +<h3>Дополнительные меры безопасности</h3> + +<p> + Начиная с версии 1.24, в VeraCrypt встроен механизм, который обнаруживает установку новых устройств в систему, когда активно системное шифрование. При установке нового устройства мастер-ключи немедленно удаляются из памяти, что приводит к BSOD ("синему экрану смерти") в Windows. Это защищает от атак с помощью специализированных устройств для извлечения памяти из работающих систем. Однако для максимальной эффективности эта функция должна применяться вместе с шифрованием оперативной памяти.<br> + Чтобы включить эту функцию, в меню <em>Система</em> выберите пункт <em>Установки</em> и активируйте опцию <em>Удалять ключи шифрования из ОЗУ при подключении нового устройства</em>. +</p> + +<h3>Технические ограничения, связанные с гибернацией и быстрым запуском</h3> +<p> +Функции гибернации и быстрого запуска Windows сохраняют содержимое оперативной памяти на жёстком диске. В контексте шифрования оперативной памяти VeraCrypt поддержка этих функций представляет собой серьёзную проблему.<br> +Для обеспечения безопасности большáя область памяти, используемая для формирования ключа при шифровании ОЗУ, должна храниться в зашифрованном формате, отдельно от обычного шифрования VeraCrypt, применяемого к текущему диску. Это отдельное зашифрованное хранилище также должно быть разблокируемым тем же паролем, который использовался для предзагрузочной аутентификации. Более того, этот процесс должен произойти на ранней стадии загрузки, прежде чем появится доступ к файловой системе, что требует хранения необработанных зашифрованных данных в определённых секторах другого диска.<br> +Хотя это технически осуществимо, сложность и недружественность такого решения к пользователям делают его непрактичным для стандартных применений. Поэтому при включении шифрования оперативной памяти отключаются гибернация и быстрый запуск Windows.<br> +</p> + +</div><div class="ClearBoth"></div></body></html> |