СПОСОБ И СИСТЕМА ДОВЕРЕННОЙ ЗАГРУЗКИ ОПЕРАЦИОННОЙ СИСТЕМЫ ВЫЧИСЛИТЕЛЬНОГО УСТРОЙСТВА
METHOD AND SYSTEM FOR TRUSTED LOADING OF COMPUTING DEVICE OPERATING SYSTEM

ОБЛАСТЬ ТЕХНИКИ
[1] Настоящее техническое решение, в общем, относится к области вычислительной техники, а более конкретно, к способам и системам доверенной загрузки операционной системы вычислительного устройства и криптографической защиты данных при их обработке, хранении в памяти указанного устройства и передаче по коммуникационной сети.
УРОВЕНЬ ТЕХНИКИ
[2] В настоящее время несанкционированный доступ к информации является наиболее часто встречающейся угрозой информационной безопасности. Получение злоумышленником доступа к конфиденциальной информации может привести не только к таким нежелательным последствиям, как утечка защищаемой по требованиям нормативных документов важной или чувствительной информации (персональные данные, служебная информация, государственная тайна), но также может привести к нарушению работоспособности целой информационной системы организации. Кроме того, сам факт несанкционированного доступа к информации, если он станет широко известен, может существенно повлиять на работу организации и привести к серьезным финансовым, репутационным и иным потерям.
[3] Среди наиболее часто встречающихся способов получения незаконного доступа к информации следует выделить как очень опасные, использование вредоносных программ, функционирующих до загрузки операционной системы, на уровне BIOS/UEFI, или при определенных действиях злоумышленника, который может получить доступ к информации, загрузившись на компьютер с любого внешнего носителя информации.
[4] Также, немаловажным является и дальнейшее обеспечение криптографической защиты информации, обрабатываемой и передаваемой вычислительным устройством по сети коммуникации для недопущения утечки конфиденциальной информации непосредственно из канала связи, или по причине слабости системы защиты вычислительного устройства, или ввиду использования злоумышленником человеческого фактора. Поэтому создание эффективных и защищенных систем, выполняющих как доверенный процесс загрузки операционной системы, так и возможность надежной криптографической защиты информации, обрабатываемой и передаваемой внутри вычислительного устройства и за его пределами по каналам связи, а также обеспечивающих возможность удаленного управления и администрирования системы является существенной технической задачей.
[5] На современном уровне техники в мире известны способы решения этой задачи и системы, для такого решения предназначенные. Так, из уровня техники известно портативное устройство для доверенной загрузки операционной системы вычислительного устройства, описанное в заявке на патент США № US2009/0094447 A1 (YANG JYH CHIANG et al.), опубл. 09.04.2009. Указанное периферийное устройство обеспечивает возможность загрузки операционной системы и прикладных программ из собственной памяти, когда оно подключено к компьютеру, причем память флэш-накопителя разделена на активную область только для чтения и область хранения данных с возможностью записи, а операционная система и прикладные программы хранятся в активной области. За счет этого снижается вероятность перехвата вредоносным программным обеспечением, хранящимся на жестком диске вычислительного устройства, конфиденциальной информации пользователя.
[6] К недостаткам указанного решения стоит отнести отсутствие возможности однозначной аутентификации пользователя, загружающего указанную операционную систему, отсутствие криптографической защиты информации в процессе использования указанного устройства, и, как следствие, отсутствие возможности безопасной передачи информации по каналам связи. Кроме того, такое устройство не содержит и не предполагает механизмов контроля целостности собственных компонентов, а также удаленного управления и администрирования таким устройством для повышения безопасности его эксплуатации.
[7] Общими недостатками всех существующих решений в данной области являются отсутствие системы доверенной загрузки операционной системы на вычислительные устройства, обеспечивающей возможность однозначной аутентификации пользователя и систем защиты обрабатываемой и передаваемой по каналам связи информации, реализующих криптографическую защиту данных как при их обработке и хранении в памяти вычислительного устройства, так и на внешнем носителе, а также при передаче по каналам связи коммуникационной сети. Кроме того, такого рода система должна обеспечивать возможность удаленного управления и отслеживания действий пользователя для исключения инцидентов безопасности.
СУЩНОСТЬ ТЕХНИЧЕСКОГО РЕШЕНИЯ
[8] Данное техническое решение направлено на устранение недостатков, присущих существующим решениям, известным из уровня техники.
[9] Заявленное решение позволяет решить техническую проблему в части создания защищенной системы доверенной загрузки операционной системы вычислительного устройства и, одновременно, криптографической защиты данных при их обработке, хранении в памяти указанного устройства и передаче по коммуникационной сети.
[10] Основным техническим результатом является повышение защиты данных пользователя вычислительного устройства от несанкционированного получения доступа к ним как внешнего субъекта, так и пользователей одной с данным пользователей информационной системы, для которых доступ к конкретной защищаемой порции информации не предусмотрен правилами информационной системы.
[11] Дополнительным техническим результатом предлагаемого решения является повышение защиты самого вычислительного устройства, на котором реализуется предлагаемое решение, от несанкционированного доступа.
[12] Заявленные технические результаты достигаются за счет одновременной реализации системы доверенной загрузки операционной системы (ОС) вычислительного устройства и криптографической защиты данных при их обработке, хранении в памяти указанного устройства и передаче по коммуникационной сети, содержащей:
периферийную аппаратную платформу, выполненную с возможностью соединения с вычислительным устройством посредством USB интерфейса, включающую:
a) микроконтроллер общего назначения, выполненный с возможностью проведения контроля целостности данных модуля доверенной загрузки, данных модуля криптографических преобразований и данных загружаемой ОС, расположенных на системном разделе до начала доверенной загрузки операционной системы на вычислительном устройстве, управления модулем криптографических преобразований, модулем доверенной загрузки и микроконтроллером смарт-карты, аутентификации пользователя,
b) микроконтроллер смарт-карты, выполненный с возможностью аутентификации смарт-карты пользователя на вычислительном устройстве;
c) съемную память, включающую загрузочный раздел, предназначенный для хранения данных модуля доверенной загрузки; системный раздел предназначенный для хранения загружаемой ОС и данных модуля криптографических преобразований; прикладной раздел, предназначенный для хранения настроек загружаемой ОС и выполняемых под её управлением приложений; раздел данных, предназначенный для хранения данных пользователя, подлежащих криптографической защите; информационный раздел, предназначенный для хранения данных, не подлежащих криптографической защите; служебный раздел, предназначенный для хранения журналов и контрольных сумм;
d) модуль доверенной загрузки, выполненный с возможностью получения управления над базовой системой ввода-вывода вычислительного устройства при его включении (BIOS/UEFI) и обеспечения загрузки доверенной операционной системы и данных модуля криптографических преобразований, размещенных в системном разделе съемной памяти периферийной аппаратной платформы, на вычислительном устройстве;
e) модуль криптографических преобразований, выполненный с возможностью выполнения криптографических преобразований над последовательностями электромагнитных импульсов подаваемых на вход аппаратной платформы и в память пользовательского компьютера или сетевого сервера, генерации псевдослучайных последовательностей, шифрования данных, имитозащиты блоков данных и сообщений, изготовления ключевых документов для реализуемых криптографических преобразований, причем для осуществления криптографических преобразований генерация псевдослучайных последовательностей выполняется с помощью аппаратного биологического датчика случайных чисел микроконтроллера общего назначения и последовательности случайных чисел, полученной от сервера;
смарт-карта пользователя, реализованная на базе аппаратного токена, содержащая ключ аутентификации пользователя и выполненная с возможностью подсоединения к вычислительному устройству пользователя посредством USB интерфейса;
сервер, выполненный с возможностью по меньшей мере управления периферийной аппаратной платформой, генерации последовательности случайных чисел для реализации криптографических преобразований в периферийной аппаратной платформе, чтения служебного раздела съемной памяти, загрузки журнала из указанного раздела в базу данных и очистки журналов на указанной периферийной аппаратной платформе.
[13] В одном из частных вариантов реализации сервер дополнительно выполнен с возможностью:
просмотра списка всех подключённых периферийных аппаратных платформ;
загрузки образов операционной системы и данных модуля криптографических преобразований для доверенной загрузки;
настройки парольной политики, содержащей по меньшей мере: установление минимально допустимой длины пароля, предельного количеств последовательных неудачных попыток предъявления пароля; интервала времени для разблокирования пароля;
регистрации вычислительного устройства, к которому подключена периферийная аппаратная платформа, для доверенной загрузки операционной системы;
удаленной разблокировки/блокировки периферийной аппаратной платформы;
удаленной очистки съемной памяти периферийной аппаратной платформы;
сброса настроек периферийной аппаратной платформы к заводским настройкам.
[14] В другом частном варианте реализации при неудачном проведении контроля целостности, загрузка ОС с периферийной аппаратной платформы блокируется.
[15] В другом частном варианте реализации при неполучении управления модулем доверенной загрузки над вычислительным устройством при включении указанного устройства, загрузка ОС с периферийной аппаратной платформы блокируется.
[16] Также, указанные технические результаты достигаются за счет реализации способа доверенной загрузки операционной системы (ОС) вычислительного устройства и криптографической защиты данных при их обработке, хранении в памяти указанного устройства и передаче по коммуникационной сети, выполняющийся системой по любому из п.п. 1-4, и содержащий этапы на которых:
подключают периферийную аппаратную платформу к вычислительному устройству посредством USB интерфейса;
получают управление над базовой системой ввода-вывода вычислительного устройства при его включении с помощью модуля доверенной загрузки;
генерируют пароль пользователя с помощью датчика случайных чисел (ДСЧ) с применением случайной равномерной выборки символов алфавита мощности не менее 94;
выполняют проверку регистрации вычислительного устройства, к которому подключена периферийная аппаратная платформа, на сервере;
выполняют двухфакторную аутентификацию пользователя, причем двухфакторная аутентификация содержит ввод пароля пользователя и подключение программно-аппаратного средства криптографической защиты информации пользователя, реализованного на базе аппаратного токена;
выполняют, посредством микроконтроллера общего назначения, контроль целостности данных модуля доверенной загрузки, данных модуля криптографических преобразований и данных загружаемой ОС, расположенных на системном разделе до начала доверенной загрузки операционной системы на вычислительном устройстве;
генерируют последовательность случайных чисел на сервере и отправляют указанную последовательность в периферийную аппаратную платформу;
генерируют последовательность случайных чисел на периферийной аппаратной платформе для осуществления криптографических преобразований, причем генерация псевдослучайных последовательностей выполняется с помощью аппаратного биологического датчика случайных чисел микроконтроллера общего назначения и последовательности случайных чисел, полученной от сервера.
загружают, посредством модуля доверенной загрузки, ОС на вычислительное устройство, причем загрузка ОС выполняется под контролем модуля криптографических преобразований, реализующего криптографические преобразования последовательностей электромагнитных импульсов, кодирующих данные, подлежащие криптографической защите и подаваемых на вход аппаратной платформы и в память пользовательского компьютера или сетевого сервера.
выполняют криптографическую защиту всех операций на вычислительном устройстве, посредством модуля криптографических преобразований для криптографической защиты данных при их обработке, хранении в памяти указанного устройства и передаче по коммуникационной сети.
ОПИСАНИЕ ЧЕРТЕЖЕЙ
[17] Признаки и преимущества настоящего изобретения станут очевидными из приводимого ниже подробного описания изобретения и прилагаемых чертежей, на которых:
[18] Фиг. 1 иллюстрирует общий вид системы доверенной загрузки операционной системы вычислительного устройства и криптографической защиты данных при их обработке, хранении в памяти указанного устройства и передаче по коммуникационной сети.
[19] Фиг. 2 иллюстрирует блок схему способа доверенной загрузки операционной систем вычислительного устройства и криптографической защиты данных при их обработке, хранении в памяти указанного устройства и передаче по коммуникационной сети.
ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯ
[20] В нижеследующем описании с целью пояснения изложены многочисленные конкретные детали, чтобы обеспечить полное понимание различных вариантов осуществления заявленного технического решения. Однако специалисту в данной области техники будет очевидно, что различные варианты осуществления настоящего технического решения могут быть реализованы на практике без некоторых из этих конкретных деталей. Последующее описание предоставляет только примерные варианты осуществления и не предназначено для ограничения объема или применимости раскрытия. Также, следует принять во внимание, что элементы заявленного решения могут быть реализованы на практике множеством способов помимо конкретных деталей, изложенных в данном документе.
[21] На Фиг. 1 представлен общий вид системы доверенной загрузки операционной системы вычислительного устройства 140 и криптографической защиты данных при их обработке, хранении в памяти указанного устройства и передаче по коммуникационной сети 100. Указанная система содержит по меньшей мере периферийную аппаратную платформу 110, смарт-карту 120, и сервер 130.
[22] Система 100 предназначена для предотвращения несанкционированного доступа к информации пользователя вычислительного устройства 140 за счет комплексного обеспечения безопасности информации как при загрузке вычислительного устройства, так и в процессе его работы. Кроме того, указанная система также предотвращает возможность доступа злоумышленника к защищаемым данным за счет двухфакторной аутентификации пользователя и обеспечивает возможность удаленного администрирования и отслеживания действий пользователя в доверенной операционной системе.
[23] Под термином «вычислительное устройство» в данном решении следует понимать электронное устройство, способное выполнять заданную, чётко определённую, изменяемую последовательность операций, оснащенное по меньшей мере оперативной памятью, внутренними шинами передачи данных и интерфейсами ввода-вывода данных с возможностью подключения внешних устройств. Так, вычислительным устройством 140 может являться персональный компьютер, ноутбук, планшет, сервер и т.д.
[24] Платформа 110 обеспечивает выполнение основных функций защиты от несанкционированного доступа к информации, в том числе настройку и контроль функционирования элементов операционной системы (ОС). В одном частном варианте осуществления платформа 110 может являться портативным устройством, например, USB флэш накопителем. В другом частном варианте осуществления платформа 110 может являться аппаратным модулем на шине USB. Для специалиста в данной области техники очевидно, что в качестве платформы 110 может применяться любое периферийное устройство, способное подключаться к интерфейсу ввода-вывода вычислительного устройства и выполнять предписанные им функции.
[25] Платформа 110 включает в себя по меньшей мере интерфейс коммуникативного соединения платформы 110 с вычислительным устройством 140, микроконтроллер общего назначения, микроконтроллер смарт-карты, съемную память, модуль доверенной загрузки, модуль криптографических преобразований.
[26] Так, интерфейсом, может являться, например, USB интерфейс (Universal Serial Bus — «универсальная последовательная шина») — последовательный интерфейс для подключения периферийных устройств к вычислительной технике, FireWire и т.д. Указанный интерфейс предназначен для обмена данными между платформой 110 и вычислительным устройством 140.
[27] Микроконтроллер общего назначения предназначен для управления определенными операциями платформы 110, т.е. выполнения заданной, чётко  определённой последовательности вычислительных операций (действий, инструкций). Например, микроконтроллер может управлять интерфейсом (например, USB интерфейсом), доступом к разделам памяти, а также управлять модулем доверенной загрузки и модулем криптографических преобразований. Микроконтроллер общего назначения может являться, например, микроконтроллером семейства NXP LPC1800 на основе архитектуры ARM Cortex-M3 или любым другим пригодным типом вычислительного устройства. В одном из частных вариантов осуществления, микроконтроллер выполнен с возможностью контроля целостности собственных компонент и данных загружаемой операционной системы (ОС), расположенных в памяти платформы 110.
[28] Термин «инструкции», используемый в этой заявке, может относиться, в общем, к командам в программе, которые написаны для осуществления конкретной функции, такой как прием ввода, извлечение и запись данных на съемную память, обмен данными с вычислительным устройством, проведение проверки целостности компонентов и т.д. Инструкции могут быть осуществлены множеством способов, включающих в себя, например, объектно-ориентированные методы. Например, инструкции могут быть реализованы, посредством языка программирования C++, Java, различных библиотек (например, “MFC”; Microsoft Foundation Classes) и т.д. Инструкции, осуществляющие процессы, описанные в этом решении, могут передаваться как по проводным, например, по шине данных, так и по беспроводным линиям передачи.
[29] Микроконтроллер смарт-карты предназначен для осуществления аутентификации пользователя перед началом загрузки операционной системы на вычислительное устройство. Микроконтроллер смарт-карты может являться, например, микроконтроллером смарт-карты (МКСК) семейства NXP P5C. Указанный микроконтроллер можно использовать для строгой двухфакторной аутентификации в дополнение к аутентификации пользователя по паролю. Микроконтроллер смарт-карты выполнен с возможностью считывания закрытого ключа пользователя, хранящегося на аппаратном средстве аутентификации 120, например, выполненного в виде смарт карты, аппаратного USB токена и т.п., при аутентификации пользователя для начала процесса загрузки.
[30] Съемная память платформы 110 может представлять собой, например, карту памяти формата microSD, SD и т.д., расположенную в платформе 110. Для обеспечения защиты данных, микроконтроллер общего назначения выполнен с возможностью разбиения указанной карты памяти на следующие разделы: загрузочный раздел, с которого при включении электропитания вычислительного устройства загружается модуль доверенной загрузки; системный раздел, с которого в случае успешной аутентификации пользователя и идентификации вычислительного устройства 140 загружается операционная системы а также данные модуля криптографических преобразований; прикладной раздел, предназначенный для хранения настроек загружаемой ОС и выполняемых под её управлением приложений; раздел данных, предназначенный для хранения данных пользователя, подлежащих криптографической защите; информационный раздел, предназначенный для хранения данных, не подлежащих криптографической защите; служебный раздел, предназначенный для хранения журналов и контрольных сумм. Операции записи и чтения данных в соответствующих разделах памяти осуществляются в защищенном виде. Защита происходит посредством модуля криптографических преобразований под управлением микроконтроллера общего назначения.
[31] В одном частном варианте осуществления платформа 110 может содержать несколько физически разделенных памятей, например, две физические памяти, реализованные как собственная память платформы 110 и съемная память. Соответственно внутренняя память может содержать критичные разделы памяти, такие как системный раздел, раздел предназначенный для хранения данных пользователя, подлежащих криптографической защите могут быть сформированы. В свою очередь на съемной памяти может быть расположен, например, информационный раздел.
[32] Так, системный раздел может представлять раздел памяти только для чтения для исключения атаки вредоносного ПО, установленного в памяти вычислительного устройства 140, на операционную систему при ее запуске. В свою очередь операционная система содержит машиночитаемые инструкции для управления вычислительным устройством 140. В одном частном варианте осуществления операционная система может быть успешно загружена из платформы 110 в энергозависимую память (например, память RAM) вычислительного устройства 140, коммуникативно связанного с платформой 110 через интерфейс.
[33] Операционная система, как правило включает в себя достаточно базовых функций для работы с вычислительным устройством 140, обмена данными с устройствами ввода- вывода, подключенными к вычислительному устройству и для инициирования сетевых подключений. Например, операционная система может включать в себя файловую систему, графический интерфейс пользователя, модуль управления процессами, модуль управления памятью, модуль управления сетью, контроллеры ввода-вывода, драйверы периферийных устройств и т.д. Для специалиста в данной области техники очевидно, что формат только для чтения могут иметь все разделы платформы 110 доступ к которым должен быть закрыт от вычислительного устройства 140, например, прикладной раздел, раздел данных, предназначенный для хранения данных пользователя, подлежащих криптографической защите. Таким образом, за счет загрузки ОС из защищенных областей памяти платформы 110 любое вредоносное ПО, такое как шпионское ПО, вирусы, программы для клавиатурных шпионов или другое вредоносное программное обеспечение, которое может существовать в энергонезависимой запоминающей памяти вычислительного устройства 140 оказывается нефункциональным, пока указанное устройство находится под контролем загруженной операционной системы.
[34] Модуль доверенной загрузки предназначен для инициации процесса загрузки ОС с платформы 110 на вычислительное устройство 140. В одном частном варианте реализации модуль доверенной загрузки может являться программным модулем, реализованным на базе микроконтроллера общего назначения. Так, при включении питания вычислительного устройства 140 модуль доверенной загрузки выполнен с возможностью получения управления над базовой системой ввода-вывода вычислительного устройства (BIOS/UEFI). Стоит отметить, что команду на инициацию процесса загрузки ОС модуль доверенной загрузки получает от микроконтроллера общего назначения только после аутентификации пользователя, например, после двухфакторной аутентификации на основе аппаратного токена пользователя и аутентификации по паролю пользователя. Если модуль доверенной загрузки не смог получить управление над BIOS, то дальнейший процесс загрузки блокируется. После успешного получения управления над BIOS, микроконтроллер общего назначения активирует модуль криптографических преобразований для обеспечения криптографической защиты данных при их обработке и хранении в памяти вычислительного устройства 140 или на внешнем носителе, а также при передаче по каналам связи.
[35] Модуль криптографических преобразований предназначен для криптографических преобразований последовательностей электромагнитных импульсов, кодирующих данные, подлежащие криптографической защите и подаваемых на вход микроконтроллера общего назначения, непосредственно в его памяти. Кроме того, указанный модуль обеспечивает шифрование данных, поступающих в память вычислительного устройства 140. Модуль криптографических преобразований может являться программным модулем на базе микроконтроллера общего назначения. Под криптографическими преобразованиями в данном решении понимаются такие операции как генерация ключевых пар, например, генерация ключевых пар в соответствии с ГОСТ Р 34.10-2001, формирование электронной подписи, например, по ГОСТ Р 34.10-2001, генерации псевдослучайных последовательностей для реализации алгоритмов шифрования, шифрования данных, имитозащиты блоков данных и сообщений, изготовления ключевых документов. Указанные криптографические преобразования выполняются непосредственно в памяти платформы 110, что обеспечивает максимально высокую степень сохранности ключевой информации и, как следствие, повышает безопасность данных и защищает их от несанкционированного доступа.
[36] Алгоритмами криптографических преобразований могут являться, например, симметричные алгоритмы шифрования, такие как DES, AES, ГОСТ 28147-89, ассиметричные алгоритмы шифрования, такие как RSA, DSA, алгоритмы хеширования, такие как SHA-256 и т.д. Более конкретно, преобразование последовательностей электромагнитных импульсов (сигналов) может представлять собой, например, процесс сжатия (хэширования) аутентифицируемых данных (по действующему стандарту РФ ГОСТ Р 34.11-94,); процесс создания набора электромагнитных импульсов, называемого электронной подписью (ЭП) конкретного пользователя под заданным блоком данных, получаемого как комбинация его персонального набора импульсов, называемого закрытым ключом создания ЭП, с электромагнитными импульсами, кодирующими подписываемый блок данных (по стандарту РФ ГОСТ Р 34.10-2001, или новому стандарту ГОСТ Р 34.10-2012). Процедуры преобразования последовательностей электромагнитных импульсов, соответствующие хэшированию подписываемых данных, созданию и проверке электронных подписей сторон.
[37] Основной особенностью применения таких преобразований в платформе 110 является обеспечение генерации псевдослучайных последовательностей для реализации криптографических преобразований на основе аппаратного датчика случайных чисел (ДСЧ) с применением случайной равномерной выборки символов алфавита мощности не менее 94, реализованного на базе микроконтроллера общего назначения и псевдослучайной последовательности чисел (ПСЧ), полученной от администратора указанной системы, например, от сервера. Так, аппаратный датчик случайный чисел может являться, например, биологический аппаратный датчик случайных чисел, биометрический датчик и т.д.
[38] Сервер 130 системы 100 предназначен для удаленного управления и отслеживания событий платформы 110. Сервер 130 может являться, сервером, персональным компьютером, автоматизированным рабочим местом и т.д. Администрирование платформы 110 на сервере 130 может осуществляться посредством графического интерфейса администратором системы 100. Доступ администратора к серверу 130 осуществляется посредством механизмов аутентификации, таких как ввод пароля, аутентификации по USB токену, биометрическая аутентификация и т.д. Указанный сервер 130 выполнен с возможностью по меньшей мере управления периферийной аппаратной платформой 110, генерации ПСЧ для реализации криптографических преобразований в периферийной аппаратной платформе, чтения служебного раздела съемной памяти, загрузки журнала из указанного раздела в базу данных и очистки журналов на указанной периферийной аппаратной платформе. В одном частном варианте осуществления управление (администрирование) может происходить посредством графического интерфейса через приложение, например, администратором системы 100. Связь платформы 110 с сервером 130 может осуществляться, например, с помощью средства передачи данных вычислительного устройства после получения модулем доверенной загрузки управления над BIOS. Средство передачи данных обеспечивает передачу данных посредством внутренней или внешней вычислительной сети, например, Интранет, Интернет, ЛВС и т.п. В качестве одного или более средств может использоваться, но не ограничиваться: Ethernet карта, GSM модем, GPRS модем, LTE модем, 5G модем, модуль спутниковой связи, NFC модуль, Bluetooth и/или BLE модуль, Wi-Fi модуль и др.
[39] В частном варианте осуществления сервер 130 выполнен с возможностью настройки параметров, позволяющих до запуска ОС с системного раздела осуществлять следующие последовательности действий над электромагнитными импульсами, кодирующими обрабатываемые данные: инициализацию USB-носителей администратора и пользователя; регистрацию ЭВМ для возможности загрузки её с платформы 110, такой как USB-носитель; смену последовательностей электромагнитных импульсов – аутентификаторов пользователей и устройств; обновление образа загружаемой ОС; сброс счётчиков неудачных попыток ввода пароля; сброс платформы 110 к заводским настройкам.
[40] Кроме того, сервер 130 выполнен с возможностью считывания служебной информации, включая данные пользователя, хранящиеся во внутренней энергонезависимой памяти платформы 110, недоступной для программного обеспечения вычислительного устройства 140, к которому это устройство подключено и работающего под управлением загружаемой с платформы 110 операционной системы. Для однозначной идентификации и возможности управления платформой 110, платформе 110 присваивается уникальный машиночитаемый серийный номер. Указанный номер присваивается сервером 130 и может отображаться, например в графическом интерфейсе сервера 130. Кроме того, в одном частном варианте осуществления серийный номер может быть отображен на экране монитора вычислительного устройства. Доступ к системному журналу событий и журналу для событий контроля целостности, которые хранятся на служебном разделе, может быть осуществлен посредством аутентификации платформы 110 на сервере 130 с помощью модуля криптографических преобразований. Служебный раздел недоступен для пользователей при применении любых программных средств, доступ к журналам событий обеспечен только для аутентифицированного сервером 130 администратора системы. Стоит отметить, что журналы поддерживают режим, при котором в случае переполнения уничтожение записей не происходит, а происходит блокирование возможности загрузки доверенной ОС до переноса записей из платформы в базу данных сервера. Совокупная ёмкость журналов составляет не менее 512 байт, поддерживается режим циклической перезаписи при переполнении журнала, блокирование возможности загрузки доверенной ОС при переполнении журналов.
[41] За счет возможности удаленного управления (администрирования) платформой 110, администратор системы 100 с помощью сервера 130 может также выполнять следующие действия: осуществлять просмотр списка всех подключённых периферийных аппаратных платформ 110; загружать образы операционной системы и управлять данными модуля криптографических преобразований для доверенной загрузки; настраивать парольную политику, такую как установление минимально допустимой длины пароля, предельного количеств последовательных неудачных попыток предъявления пароля; интервала времени для разблокирования пароля; регистрировать вычислительное  устройство, к которому подключена периферийная аппаратная платформа 110 для доверенной загрузки операционной системы; осуществлять удаленную разблокировку/блокировку платформы 110; осуществлять удаленную очистку съемной памяти платформы 110; осуществлять сброс настроек периферийной аппаратной платформы к заводским настройкам.
[42] Таким образом описанные элементы системы 100 в совокупности обеспечивают защиту данных пользователя от несанкционированного доступа за счет механизмов доверенной загрузки операционной системы, криптографической защиты данных при их обработке, хранении в памяти вычислительного устройства и передаче по коммуникационной сети, а также удаленного управления и непосредственного участия в криптографической защите сервера 130.
[43] На Фиг. 2 приведена блок схема осуществления способа 200 доверенной загрузки операционной системы (ОС) вычислительного устройства 140 и криптографической защиты данных при их обработке, хранении в памяти указанного устройства и передаче по коммуникационной сети. Указанный способ выполняется системой 100.
[44] Для реализации способа 200 платформа 110 регистрируется на сервере 130. Администратор системы 100 с помощью сервера 130 может присвоить уникальный регистрационный номер платформе 110 в соответствии с ее уникальным машиночитаемым серийным номером, хранящимся в памяти платформы 110. После авторизации платформы на сервере 130 администратор может выполнить первичную настройку указанной платформы 110. Первичной настройкой может являться, например, запись в системный раздел платформы 110 образа ОС, настройка парольной политики, в частности: установление минимально допустимой длины пароля, предельного количества последовательных неудачных попыток предъявления пароля, интервала времени для разблокирования пароля, инициализация пользовательского пароля и т.д.
[45] Способ 200 начинается с подключения периферийной аппаратной платформы 110 к вычислительному устройству посредством USB интерфейса (этап 201). Подключение платформы 110 может осуществляться пользователем системы 100.
[46] На этапе 202 модуль доверенной загрузки получает управление над базовой системой ввода-вывода вычислительного устройства при его включении.
[47] На этапе 203 при первичном применении платформы 110 пользователю назначается пароль, например, генерируемый в микроконтроллере общего назначения с помощью датчика случайных чисел (ДСЧ), такого как биометрический датчик случайных чисел, биологический датчик случайных чисел и т.д., с применением случайной равномерной выборки символов алфавита мощности не менее 94 для обеспечения аутентификации пользователя на платформе 110. Указанный пароль связан с микроконтроллером смарт-карты и обеспечивает однозначную аутентификацию пользователя в платформе 110.
[48] На этапе 204 при помощи сервера 130 выполняют регистрацию вычислительного устройства, к которому подключена периферийная аппаратная платформа 110, для доверенной загрузки операционной системы с помощью сервера. Стоит отметить, что если платформа 110 подключена к не зарегистрированному вычислительному устройству, то загрузка ОС на данном устройстве будет заблокирована. Соответственно в дальнейшем, при подключении платформы 110 к вычислительному устройству, сервер проверяет зарегистрировано ли указанное устройство и следует ли разрешить загрузку доверенной ОС на данном устройстве.
[49] На этапе 205 микроконтроллер общего назначения, перед началом загрузки ОС запрашивает аутентификацию пользователя. В одном частном варианте осуществления пользователь выполняет двухфакторную аутентификацию, причем двухфакторная аутентификация содержит ввод пароля пользователя и подключение смарт-карты пользователя.
[50] На этапе 206 выполняют, посредством микроконтроллера общего назначения, контроль целостности данных модуля доверенной загрузки, данных модуля криптографических преобразований и данных загружаемой ОС, расположенных на системном разделе до начала доверенной загрузки операционной системы на вычислительном устройстве 140. В одном частном варианте осуществления, после получения питания от вычислительного устройства и до начала процесса перехвата управления, микроконтроллер общего назначения платформы 110 выполнен с возможностью контроля целостности компонентов платформы 110, таких как целостность модуля доверенной загрузки, целостность данных модуля криптографических преобразований и данных загружаемой ОС, расположенных на системном разделе. В случае невыполнения проверки или ошибки хотя бы в одном тесте загрузка ОС на вычислительном устройстве 140 с данной платформы 110 блокируется. Блокировка может осуществляться, например, микроконтроллером общего назначения, посредством отправки управляющего сигнала на модуль доверенной загрузке о прекращении процесса загрузки. Кроме того, в еще одном частном варианте осуществления при неполучении управления модулем доверенной загрузки над вычислительным устройством при включении указанного устройства, загрузка ОС с периферийной аппаратной платформы 110 также блокируется.
[51] На этапе 207 сервер 130 генерирует последовательность случайных чисел и отправляет указанную последовательность в периферийную аппаратную платформу.
[52] На этапе 208 модуль криптографических преобразований генерирует последовательность случайных чисел на периферийной аппаратной платформе 110 для осуществления криптографических преобразований, причем генерация последовательности случайных выполняется с помощью аппаратного биологического датчика случайных чисел и последовательности случайных чисел, полученной от сервера. На основе полученной последовательности случайных чисел модуль криптографических преобразований выполняет криптографическую защиту данных.
[53] На этапе 209 загружают, посредством модуля доверенной загрузки, ОС на вычислительное устройство, причем загрузка ОС выполняется под контролем модуля криптографических преобразований, реализующего криптографические преобразования последовательностей электромагнитных импульсов, кодирующих данные, подлежащие криптографической защите и подаваемых на вход аппаратной платформы 110 и в память вычислительного устройства или сетевого сервера.
[54] На этапе 210 выполняют контроль над всеми операциями вычислительного устройства посредством модуля криптографических преобразований для криптографической защиты данных при их обработке, хранении в памяти указанного устройства и передаче по коммуникационной сети, например, с помощью вышеописанных алгоритмов шифрования.
[55] Представленные материалы заявки раскрывают предпочтительные примеры реализации технического решения и не должны трактоваться как ограничивающие иные, частные примеры его воплощения, не выходящие за пределы испрашиваемой правовой охраны, которые являются очевидными для специалистов соответствующей области техники.
[56] Модификации и улучшения вышеописанных вариантов осуществления настоящего технического решения будут ясны специалистам в данной области техники. Предшествующее описание представлено только в качестве примера и не несет никаких ограничений для целей осуществления иных частных вариантов воплощения заявленного технического решения, не выходящего за рамки испрашиваемого объема правовой охраны. Конструктивные элементы, такие как микроконтроллеры, блоки, модули и т.д., описанные выше и используемые в данном техническом решении, могут быть реализованы с помощью электронных компонентов, используемых для создания цифровых интегральных схем.