RU2773456C1 - Method and system for trusted loading of computing device operating system - Google Patents

Method and system for trusted loading of computing device operating system Download PDF

Info

Publication number
RU2773456C1
RU2773456C1 RU2021127126A RU2021127126A RU2773456C1 RU 2773456 C1 RU2773456 C1 RU 2773456C1 RU 2021127126 A RU2021127126 A RU 2021127126A RU 2021127126 A RU2021127126 A RU 2021127126A RU 2773456 C1 RU2773456 C1 RU 2773456C1
Authority
RU
Russia
Prior art keywords
computing device
cryptographic
data
hardware platform
peripheral hardware
Prior art date
Application number
RU2021127126A
Other languages
Russian (ru)
Inventor
Сергей Львович Груздев
Константин Олегович Демченко
Анатолий Николаевич Лебедев
Роман Олегович Леонов
Сергей Анатольевич Петренко
Original Assignee
Акционерное общество "Аладдин Р.Д."
Filing date
Publication date
Application filed by Акционерное общество "Аладдин Р.Д." filed Critical Акционерное общество "Аладдин Р.Д."
Application granted granted Critical
Publication of RU2773456C1 publication Critical patent/RU2773456C1/en

Links

Images

Abstract

FIELD: computer technology.
SUBSTANCE: invention relates to the field of computer technology. The effect is achieved by performing the following steps: connecting a peripheral hardware platform to a computing device, gaining control over the basic input/output system of a computing device, generating a user password using a random number generator, checking the registration of a computing device on a server, performing two-factor user authentication, performing data integrity control of the trusted boot module, data of the cryptographic transformation module and data of the bootable OS, generating a sequence of random numbers on the server and sending it to the peripheral hardware platform, generating a sequence of random numbers on the peripheral hardware platform to perform cryptographic transformations, loading the OS onto the computing device, performing cryptographic protection of all operations of the computing device by means of a cryptographic transformation module for cryptographic data protection.
EFFECT: increasing the level of data protection of the computing device from unauthorized access to it.
5 cl, 2 dwg

Description

ОБЛАСТЬ ТЕХНИКИFIELD OF TECHNOLOGY

[1] Настоящее техническое решение, в общем, относится к области вычислительной техники, а более конкретно, к способам и системам доверенной загрузки операционной системы вычислительного устройства и криптографической защиты данных при их обработке, хранении в памяти указанного устройства и передаче по коммуникационной сети.[1] The present technical solution, in general, relates to the field of computer technology, and more specifically, to methods and systems for trusted loading of the operating system of a computing device and cryptographic protection of data during their processing, storage in the memory of the specified device and transmission over a communication network.

УРОВЕНЬ ТЕХНИКИBACKGROUND OF THE INVENTION

[2] В настоящее время несанкционированный доступ к информации является наиболее часто встречающейся угрозой информационной безопасности. Получение злоумышленником доступа к конфиденциальной информации может привести не только к таким нежелательным последствиям, как утечка защищаемой по требованиям нормативных документов важной или чувствительной информации (персональные данные, служебная информация, государственная тайна), но также может привести к нарушению работоспособности целой информационной системы организации. Кроме того, сам факт несанкционированного доступа к информации, если он станет широко известен, может существенно повлиять на работу организации и привести к серьезным финансовым, репутационным и иным потерям.[2] Currently, unauthorized access to information is the most common threat to information security. Gaining access to confidential information by an attacker can lead not only to such undesirable consequences as the leakage of important or sensitive information protected according to the requirements of regulatory documents (personal data, proprietary information, state secrets), but can also lead to disruption of the entire information system of the organization. In addition, the very fact of unauthorized access to information, if it becomes widely known, can significantly affect the work of the organization and lead to serious financial, reputational and other losses.

[3] Среди наиболее часто встречающихся способов получения незаконного доступа к информации следует выделить как очень опасные, использование вредоносных программ, функционирующих до загрузки операционной системы, на уровне BIOS/UEFI, или при определенных действиях злоумышленника, который может получить доступ к информации, загрузившись на компьютер с любого внешнего носителя информации.[3] Among the most common methods of obtaining illegal access to information, it should be highlighted as very dangerous, the use of malicious programs that function before the operating system is loaded, at the BIOS / UEFI level, or with certain actions of an attacker who can gain access to information by booting to computer from any external storage medium.

[4] Также, немаловажным является и дальнейшее обеспечение криптографической защиты информации, обрабатываемой и передаваемой вычислительным устройством по сети коммуникации для недопущения утечки конфиденциальной информации непосредственно из канала связи, или по причине слабости системы защиты вычислительного устройства, или ввиду использования злоумышленником человеческого фактора. Поэтому создание эффективных и защищенных систем, выполняющих как доверенный процесс загрузки операционной системы, так и возможность надежной криптографической защиты информации, обрабатываемой и передаваемой внутри вычислительного устройства и за его пределами по каналам связи, а также обеспечивающих возможность удаленного управления и администрирования системы является существенной технической задачей.[4] It is also important to further ensure the cryptographic protection of information processed and transmitted by a computing device over a communication network to prevent leakage of confidential information directly from the communication channel, either due to the weakness of the protection system of the computing device, or due to the use of the human factor by an attacker. Therefore, the creation of efficient and secure systems that perform both a trusted operating system boot process and the possibility of reliable cryptographic protection of information processed and transmitted inside a computing device and outside it via communication channels, as well as providing the ability to remotely control and administer the system, is an essential technical challenge. .

[5] На современном уровне техники в мире известны способы решения этой задачи и системы, для такого решения предназначенные. Так, из уровня техники известно портативное устройство для доверенной загрузки операционной системы вычислительного устройства, описанное в заявке на патент США № US2009/0094447 A1 (YANG JYH CHIANG et al.), опубл. 09.04.2009. Указанное периферийное устройство обеспечивает возможность загрузки операционной системы и прикладных программ из собственной памяти, когда оно подключено к компьютеру, причем память флэш-накопителя разделена на активную область только для чтения и область хранения данных с возможностью записи, а операционная система и прикладные программы хранятся в активной области. За счет этого снижается вероятность перехвата вредоносным программным обеспечением, хранящимся на жестком диске вычислительного устройства, конфиденциальной информации пользователя.[5] At the present level of technology in the world, methods for solving this problem and systems designed for such a solution are known. Thus, a portable device for trusted loading of the operating system of a computing device is known from the prior art, as described in US Patent Application No. US2009/0094447 A1 (YANG JYH CHIANG et al.), publ. 04/09/2009. The specified peripheral device provides the ability to load the operating system and application programs from its own memory when it is connected to a computer, and the memory of the flash drive is divided into a read-only active area and a writeable data storage area, and the operating system and application programs are stored in the active areas. Due to this, the probability of interception by malicious software stored on the hard drive of the computing device of the user's confidential information is reduced.

[6] К недостаткам указанного решения стоит отнести отсутствие возможности однозначной аутентификации пользователя, загружающего указанную операционную систему, отсутствие криптографической защиты информации в процессе использования указанного устройства, и, как следствие, отсутствие возможности безопасной передачи информации по каналам связи. Кроме того, такое устройство не содержит и не предполагает механизмов контроля целостности собственных компонентов, а также удаленного управления и администрирования таким устройством для повышения безопасности его эксплуатации.[6] The disadvantages of this solution include the inability to uniquely authenticate the user loading the specified operating system, the lack of cryptographic protection of information in the process of using the specified device, and, as a result, the inability to securely transmit information over communication channels. In addition, such a device does not contain and does not imply mechanisms for monitoring the integrity of its own components, as well as remote control and administration of such a device to improve the security of its operation.

[7] Общими недостатками всех существующих решений в данной области являются отсутствие системы доверенной загрузки операционной системы на вычислительные устройства, обеспечивающей возможность однозначной аутентификации пользователя и систем защиты обрабатываемой и передаваемой по каналам связи информации, реализующих криптографическую защиту данных как при их обработке и хранении в памяти вычислительного устройства, так и на внешнем носителе, а также при передаче по каналам связи коммуникационной сети. Кроме того, такого рода система должна обеспечивать возможность удаленного управления и отслеживания действий пользователя для исключения инцидентов безопасности.[7] The common disadvantages of all existing solutions in this area are the lack of a system for trusted loading of the operating system on computing devices, which provides the possibility of unambiguous user authentication and systems for protecting information processed and transmitted over communication channels that implement cryptographic data protection both during their processing and storage in memory computing device, and on an external medium, as well as during transmission over communication channels of a communication network. In addition, such a system should provide the ability to remotely manage and track user actions to avoid security incidents.

СУЩНОСТЬ ТЕХНИЧЕСКОГО РЕШЕНИЯESSENCE OF THE TECHNICAL SOLUTION

[8] Данное техническое решение направлено на устранение недостатков, присущих существующим решениям, известным из уровня техники.[8] This technical solution is aimed at eliminating the shortcomings inherent in existing solutions known from the prior art.

[9] Заявленное решение позволяет решить техническую проблему в части создания защищенной системы доверенной загрузки операционной системы вычислительного устройства и, одновременно, криптографической защиты данных при их обработке, хранении в памяти указанного устройства и передаче по коммуникационной сети.[9] The claimed solution allows solving a technical problem in terms of creating a secure system for trusted loading of the operating system of a computing device and, at the same time, cryptographic protection of data during their processing, storage in the memory of the specified device and transmission over a communication network.

[10] Основным техническим результатом является повышение защиты данных пользователя вычислительного устройства от несанкционированного получения доступа к ним как внешнего субъекта, так и пользователей одной с данным пользователей информационной системы, для которых доступ к конкретной защищаемой порции информации не предусмотрен правилами информационной системы.[10] The main technical result is to increase the protection of the data of the user of the computing device from unauthorized access to them by both an external entity and users of the same information system users, for whom access to a specific protected portion of information is not provided for by the rules of the information system.

[11] Дополнительным техническим результатом предлагаемого решения является повышение защиты самого вычислительного устройства, на котором реализуется предлагаемое решение, от несанкционированного доступа.[11] An additional technical result of the proposed solution is to increase the protection of the computing device itself, on which the proposed solution is implemented, from unauthorized access.

[12] Заявленные технические результаты достигаются за счет одновременной реализации системы доверенной загрузки операционной системы (ОС) вычислительного устройства и криптографической защиты данных при их обработке, хранении в памяти указанного устройства и передаче по коммуникационной сети, содержащей:[12] The claimed technical results are achieved through the simultaneous implementation of a system for trusted loading of the operating system (OS) of a computing device and cryptographic protection of data during their processing, storage in the memory of the specified device and transmission over a communication network containing:

периферийную аппаратную платформу, выполненную с возможностью соединения с вычислительным устройством посредством USB интерфейса, включающую:a peripheral hardware platform configured to connect to a computing device via a USB interface, including:

a) микроконтроллер общего назначения, выполненный с возможностью проведения контроля целостности данных модуля доверенной загрузки, данных модуля криптографических преобразований и данных загружаемой ОС, расположенных на системном разделе до начала доверенной загрузки операционной системы на вычислительном устройстве, управления модулем криптографических преобразований, модулем доверенной загрузки и микроконтроллером смарт-карты, аутентификации пользователя,a) a general-purpose microcontroller configured to perform data integrity control of the trusted boot module, data of the cryptographic transformation module and bootable OS data located on the system partition before the start of trusted boot of the operating system on the computing device, control of the cryptographic transformation module, the trusted boot module and the microcontroller smart cards, user authentication,

b) микроконтроллер смарт-карты, выполненный с возможностью аутентификации смарт-карты пользователя на вычислительном устройстве;b) a smart card microcontroller configured to authenticate the user's smart card to the computing device;

c) съемную память, включающую загрузочный раздел, предназначенный для хранения данных модуля доверенной загрузки; системный раздел предназначенный для хранения загружаемой ОС и данных модуля криптографических преобразований; прикладной раздел, предназначенный для хранения настроек загружаемой ОС и выполняемых под её управлением приложений; раздел данных, предназначенный для хранения данных пользователя, подлежащих криптографической защите; информационный раздел, предназначенный для хранения данных, не подлежащих криптографической защите; служебный раздел, предназначенный для хранения журналов и контрольных сумм;c) removable memory including a boot partition for storing trusted boot module data; system partition designed to store the bootable OS and cryptographic conversion module data; application section, designed to store the settings of the bootable OS and applications running under its control; a data section designed to store user data subject to cryptographic protection; an information section designed to store data that is not subject to cryptographic protection; a service partition designed to store logs and checksums;

d) модуль доверенной загрузки, выполненный с возможностью получения управления над базовой системой ввода-вывода вычислительного устройства при его включении (BIOS/UEFI) и обеспечения загрузки доверенной операционной системы и данных модуля криптографических преобразований, размещенных в системном разделе съемной памяти периферийной аппаратной платформы, на вычислительном устройстве;d) a trusted boot module configured to take control of the computing device's basic input/output system when it is turned on (BIOS/UEFI) and ensure booting of the trusted operating system and cryptographic transformation module data located in the removable memory system partition of the peripheral hardware platform, on computing device;

e) модуль криптографических преобразований, выполненный с возможностью выполнения криптографических преобразований над последовательностями электромагнитных импульсов подаваемых на вход аппаратной платформы и в память пользовательского компьютера или сетевого сервера, генерации псевдослучайных последовательностей, шифрования данных, имитозащиты блоков данных и сообщений, изготовления ключевых документов для реализуемых криптографических преобразований, причем для осуществления криптографических преобразований генерация псевдослучайных последовательностей выполняется с помощью аппаратного биологического датчика случайных чисел микроконтроллера общего назначения и последовательности случайных чисел, полученной от сервера;e) a cryptographic transformation module, configured to perform cryptographic transformations on the sequences of electromagnetic pulses applied to the input of the hardware platform and to the memory of the user computer or network server, generate pseudo-random sequences, encrypt data, imitate protection of data blocks and messages, produce key documents for implemented cryptographic transformations , and for the implementation of cryptographic transformations, the generation of pseudo-random sequences is performed using a hardware biological random number sensor of a general-purpose microcontroller and a sequence of random numbers received from the server;

смарт-карта пользователя, реализованная на базе аппаратного токена, содержащая ключ аутентификации пользователя и выполненная с возможностью подсоединения к вычислительному устройству пользователя посредством USB интерфейса;a user's smart card, implemented on the basis of a hardware token, containing a user authentication key and configured to be connected to the user's computing device via a USB interface;

сервер, выполненный с возможностью по меньшей мере управления периферийной аппаратной платформой, генерации последовательности случайных чисел для реализации криптографических преобразований в периферийной аппаратной платформе, чтения служебного раздела съемной памяти, загрузки журнала из указанного раздела в базу данных и очистки журналов на указанной периферийной аппаратной платформе.a server configured to at least control the peripheral hardware platform, generate a sequence of random numbers to implement cryptographic transformations in the peripheral hardware platform, read the service section of the removable memory, load the log from the specified section into the database, and clear the logs on the specified peripheral hardware platform.

[13] В одном из частных вариантов реализации сервер дополнительно выполнен с возможностью:[13] In one of the private implementation options, the server is additionally configured to:

просмотра списка всех подключённых периферийных аппаратных платформ;viewing a list of all connected peripheral hardware platforms;

загрузки образов операционной системы и данных модуля криптографических преобразований для доверенной загрузки;loading images of the operating system and data of the cryptographic transformation module for trusted loading;

настройки парольной политики, содержащей по меньшей мере: установление минимально допустимой длины пароля, предельного количеств последовательных неудачных попыток предъявления пароля; интервала времени для разблокирования пароля;setting a password policy, comprising at least: setting a minimum allowable password length, a limit on the number of consecutive unsuccessful attempts to present a password; time interval for unlocking the password;

регистрации вычислительного устройства, к которому подключена периферийная аппаратная платформа, для доверенной загрузки операционной системы;registration of the computing device to which the peripheral hardware platform is connected for trusted loading of the operating system;

удаленной разблокировки/блокировки периферийной аппаратной платформы;remote unlock/lock of the peripheral hardware platform;

удаленной очистки съемной памяти периферийной аппаратной платформы;remote cleaning of removable memory of the peripheral hardware platform;

сброса настроек периферийной аппаратной платформы к заводским настройкам.resetting the peripheral hardware platform to factory settings.

[14] В другом частном варианте реализации при неудачном проведении контроля целостности, загрузка ОС с периферийной аппаратной платформы блокируется.[14] In another particular embodiment, if the integrity check fails, the OS boot from the peripheral hardware platform is blocked.

[15] В другом частном варианте реализации при неполучении управления модулем доверенной загрузки над вычислительным устройством при включении указанного устройства, загрузка ОС с периферийной аппаратной платформы блокируется.[15] In another particular implementation, if control of the trusted boot module over the computing device is not received when the specified device is turned on, OS boot from the peripheral hardware platform is blocked.

[16] Также, указанные технические результаты достигаются за счет реализации способа доверенной загрузки операционной системы (ОС) вычислительного устройства и криптографической защиты данных при их обработке, хранении в памяти указанного устройства и передаче по коммуникационной сети, выполняющийся системой по любому из п.п. 1-4, и содержащий этапы на которых:[16] Also, these technical results are achieved through the implementation of a method for trusted loading of the operating system (OS) of a computing device and cryptographic protection of data during their processing, storage in the memory of the specified device and transmission over a communication network, performed by the system according to any of paragraphs. 1-4, and containing the steps in which:

подключают периферийную аппаратную платформу к вычислительному устройству посредством USB интерфейса;connecting the peripheral hardware platform to the computing device via a USB interface;

получают управление над базовой системой ввода-вывода вычислительного устройства при его включении с помощью модуля доверенной загрузки;get control over the basic input/output system of the computing device when it is turned on using the trusted boot module;

генерируют пароль пользователя с помощью датчика случайных чисел (ДСЧ) с применением случайной равномерной выборки символов алфавита мощности не менее 94;generating a user password using a random number generator (RNG) using a random uniform sample of alphabet characters with a power of at least 94;

выполняют проверку регистрации вычислительного устройства, к которому подключена периферийная аппаратная платформа, на сервере;checking the registration of the computing device to which the peripheral hardware platform is connected to the server;

выполняют двухфакторную аутентификацию пользователя, причем двухфакторная аутентификация содержит ввод пароля пользователя и подключение программно-аппаратного средства криптографической защиты информации пользователя, реализованного на базе аппаратного токена;perform two-factor authentication of the user, and two-factor authentication includes entering the user's password and connecting the software and hardware for cryptographic protection of user information, implemented on the basis of a hardware token;

выполняют, посредством микроконтроллера общего назначения, контроль целостности данных модуля доверенной загрузки, данных модуля криптографических преобразований и данных загружаемой ОС, расположенных на системном разделе до начала доверенной загрузки операционной системы на вычислительном устройстве;performing, by means of a general-purpose microcontroller, data integrity control of the trusted boot module, data of the cryptographic transformation module, and bootable OS data located on the system partition prior to trusted boot of the operating system on the computing device;

генерируют последовательность случайных чисел на сервере и отправляют указанную последовательность в периферийную аппаратную платформу;generate a sequence of random numbers on the server and send the specified sequence to the peripheral hardware platform;

генерируют последовательность случайных чисел на периферийной аппаратной платформе для осуществления криптографических преобразований, причем генерация псевдослучайных последовательностей выполняется с помощью аппаратного биологического датчика случайных чисел микроконтроллера общего назначения и последовательности случайных чисел, полученной от сервера.generating a sequence of random numbers on a peripheral hardware platform for performing cryptographic transformations, wherein the generation of pseudo-random sequences is performed using a hardware biological random number generator of a general-purpose microcontroller and a sequence of random numbers received from the server.

загружают, посредством модуля доверенной загрузки, ОС на вычислительное устройство, причем загрузка ОС выполняется под контролем модуля криптографических преобразований, реализующего криптографические преобразования последовательностей электромагнитных импульсов, кодирующих данные, подлежащие криптографической защите и подаваемых на вход аппаратной платформы и в память пользовательского компьютера или сетевого сервера.by means of a trusted boot module, the OS is loaded onto the computing device, wherein the OS is loaded under the control of the cryptographic transformation module, which implements cryptographic transformations of electromagnetic pulse sequences that encode data subject to cryptographic protection and are fed to the input of the hardware platform and to the memory of the user computer or network server.

выполняют криптографическую защиту всех операций на вычислительном устройстве, посредством модуля криптографических преобразований для криптографической защиты данных при их обработке, хранении в памяти указанного устройства и передаче по коммуникационной сети.perform cryptographic protection of all operations on the computing device, by means of a cryptographic transformation module for cryptographic protection of data during their processing, storage in the memory of the specified device and transmission over a communication network.

ОПИСАНИЕ ЧЕРТЕЖЕЙDESCRIPTION OF THE DRAWINGS

[17] Признаки и преимущества настоящего изобретения станут очевидными из приводимого ниже подробного описания изобретения и прилагаемых чертежей, на которых:[17] The features and advantages of the present invention will become apparent from the following detailed description of the invention and the accompanying drawings, in which:

[18] Фиг. 1 иллюстрирует общий вид системы доверенной загрузки операционной системы вычислительного устройства и криптографической защиты данных при их обработке, хранении в памяти указанного устройства и передаче по коммуникационной сети.[18] FIG. 1 illustrates a general view of a system for trusted loading of the operating system of a computing device and cryptographic protection of data during their processing, storage in the memory of the specified device and transmission over a communication network.

[19] Фиг. 2 иллюстрирует блок схему способа доверенной загрузки операционной систем вычислительного устройства и криптографической защиты данных при их обработке, хранении в памяти указанного устройства и передаче по коммуникационной сети.[19] FIG. 2 illustrates a block diagram of a method for trusted loading of operating systems of a computing device and cryptographic protection of data during their processing, storage in the memory of the specified device and transmission over a communication network.

ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯIMPLEMENTATION OF THE INVENTION

[20] В нижеследующем описании с целью пояснения изложены многочисленные конкретные детали, чтобы обеспечить полное понимание различных вариантов осуществления заявленного технического решения. Однако специалисту в данной области техники будет очевидно, что различные варианты осуществления настоящего технического решения могут быть реализованы на практике без некоторых из этих конкретных деталей. Последующее описание предоставляет только примерные варианты осуществления и не предназначено для ограничения объема или применимости раскрытия. Также, следует принять во внимание, что элементы заявленного решения могут быть реализованы на практике множеством способов помимо конкретных деталей, изложенных в данном документе.[20] In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the various embodiments of the claimed technical solution. However, one skilled in the art will appreciate that various embodiments of the present technical solution may be practiced without some of these specific details. The following description provides only exemplary embodiments and is not intended to limit the scope or applicability of the disclosure. Also, it should be appreciated that the elements of the claimed solution may be practiced in a variety of ways beyond the specific details set forth herein.

[21] На Фиг. 1 представлен общий вид системы доверенной загрузки операционной системы вычислительного устройства 140 и криптографической защиты данных при их обработке, хранении в памяти указанного устройства и передаче по коммуникационной сети 100. Указанная система содержит по меньшей мере периферийную аппаратную платформу 110, смарт-карту 120, и сервер 130.[21] FIG. 1 shows a general view of a system for trusted loading of the operating system of a computing device 140 and cryptographic protection of data during their processing, storage in the memory of the specified device and transmission over the communication network 100. This system includes at least a peripheral hardware platform 110, a smart card 120, and a server 130.

[22] Система 100 предназначена для предотвращения несанкционированного доступа к информации пользователя вычислительного устройства 140 за счет комплексного обеспечения безопасности информации как при загрузке вычислительного устройства, так и в процессе его работы. Кроме того, указанная система также предотвращает возможность доступа злоумышленника к защищаемым данным за счет двухфакторной аутентификации пользователя и обеспечивает возможность удаленного администрирования и отслеживания действий пользователя в доверенной операционной системе.[22] The system 100 is designed to prevent unauthorized access to information of the user of the computing device 140 due to the comprehensive security of information both when loading the computing device and during its operation. In addition, this system also prevents an intruder from accessing protected data due to two-factor user authentication and provides the ability to remotely administer and track user actions in a trusted operating system.

[23] Под термином «вычислительное устройство» в данном решении следует понимать электронное устройство, способное выполнять заданную, чётко определённую, изменяемую последовательность операций, оснащенное по меньшей мере оперативной памятью, внутренними шинами передачи данных и интерфейсами ввода-вывода данных с возможностью подключения внешних устройств. Так, вычислительным устройством 140 может являться персональный компьютер, ноутбук, планшет, сервер и т.д.[23] The term "computing device" in this solution should be understood as an electronic device capable of performing a given, clearly defined, variable sequence of operations, equipped with at least random access memory, internal data transfer buses and data input-output interfaces with the ability to connect external devices . Thus, the computing device 140 may be a personal computer, laptop, tablet, server, etc.

[24] Платформа 110 обеспечивает выполнение основных функций защиты от несанкционированного доступа к информации, в том числе настройку и контроль функционирования элементов операционной системы (ОС). В одном частном варианте осуществления платформа 110 может являться портативным устройством, например, USB флэш накопителем. В другом частном варианте осуществления платформа 110 может являться аппаратным модулем на шине USB. Для специалиста в данной области техники очевидно, что в качестве платформы 110 может применяться любое периферийное устройство, способное подключаться к интерфейсу ввода-вывода вычислительного устройства и выполнять предписанные им функции.[24] The platform 110 provides the basic functions of protection against unauthorized access to information, including configuration and control of the functioning of elements of the operating system (OS). In one particular embodiment, platform 110 may be a portable device such as a USB flash drive. In another particular embodiment, platform 110 may be a USB hardware module. One of skill in the art would appreciate that platform 110 could be any peripheral device capable of connecting to an I/O interface of a computing device and performing its intended functions.

[25] Платформа 110 включает в себя по меньшей мере интерфейс коммуникативного соединения платформы 110 с вычислительным устройством 140, микроконтроллер общего назначения, микроконтроллер смарт-карты, съемную память, модуль доверенной загрузки, модуль криптографических преобразований.[25] The platform 110 includes at least a communication connection interface of the platform 110 with the computing device 140, a general purpose microcontroller, a smart card microcontroller, a removable memory, a trusted boot module, a cryptographic transformation module.

[26] Так, интерфейсом, может являться, например, USB интерфейс (Universal Serial Bus — «универсальная последовательная шина») — последовательный интерфейс для подключения периферийных устройств к вычислительной технике, FireWire и т.д. Указанный интерфейс предназначен для обмена данными между платформой 110 и вычислительным устройством 140.[26] For example, an interface can be, for example, a USB interface (Universal Serial Bus - “universal serial bus”) - a serial interface for connecting peripheral devices to computer technology, FireWire, etc. The specified interface is intended for data exchange between the platform 110 and the computing device 140.

[27] Микроконтроллер общего назначения предназначен для управления определенными операциями платформы 110, т.е. выполнения заданной, чётко определённой последовательности вычислительных операций (действий, инструкций). Например, микроконтроллер может управлять интерфейсом (например, USB интерфейсом), доступом к разделам памяти, а также управлять модулем доверенной загрузки и модулем криптографических преобразований. Микроконтроллер общего назначения может являться, например, микроконтроллером семейства NXP LPC1800 на основе архитектуры ARM Cortex-M3 или любым другим пригодным типом вычислительного устройства. В одном из частных вариантов осуществления, микроконтроллер выполнен с возможностью контроля целостности собственных компонент и данных загружаемой операционной системы (ОС), расположенных в памяти платформы 110.[27] The general purpose microcontroller is designed to control certain operations of the platform 110, i.e. performing a given, clearly defined sequence of computational operations (actions, instructions). For example, a microcontroller can manage an interface (eg, a USB interface), access to memory partitions, as well as manage a trusted boot module and a cryptographic transformation module. The general purpose microcontroller may be, for example, an NXP LPC1800 family microcontroller based on the ARM Cortex-M3 architecture, or any other suitable type of computing device. In one of the private embodiments, the microcontroller is configured to control the integrity of its own components and data of the bootable operating system (OS) located in the memory of the platform 110.

[28] Термин «инструкции», используемый в этой заявке, может относиться, в общем, к командам в программе, которые написаны для осуществления конкретной функции, такой как прием ввода, извлечение и запись данных на съемную память, обмен данными с вычислительным устройством, проведение проверки целостности компонентов и т.д. Инструкции могут быть осуществлены множеством способов, включающих в себя, например, объектно-ориентированные методы. Например, инструкции могут быть реализованы, посредством языка программирования C++, Java, различных библиотек (например, “MFC”; Microsoft Foundation Classes) и т.д. Инструкции, осуществляющие процессы, описанные в этом решении, могут передаваться как по проводным, например, по шине данных, так и по беспроводным линиям передачи.[28] The term "instructions" as used in this application may refer, in general, to instructions in a program that are written to perform a particular function, such as receiving input, retrieving and writing data to removable memory, communicating with a computing device, conducting component integrity checks, etc. The instructions may be implemented in a variety of ways, including, for example, object-oriented methods. For example, the instructions may be implemented using the C++ programming language, Java, various libraries (eg, “MFC”; Microsoft Foundation Classes), etc. The instructions that carry out the processes described in this solution can be transmitted both over wired, for example, over a data bus, and over wireless transmission lines.

[29] Микроконтроллер смарт-карты предназначен для осуществления аутентификации пользователя перед началом загрузки операционной системы на вычислительное устройство. Микроконтроллер смарт-карты может являться, например, микроконтроллером смарт-карты (МКСК) семейства NXP P5C. Указанный микроконтроллер можно использовать для строгой двухфакторной аутентификации в дополнение к аутентификации пользователя по паролю. Микроконтроллер смарт-карты выполнен с возможностью считывания закрытого ключа пользователя, хранящегося на аппаратном средстве аутентификации 120, например, выполненного в виде смарт карты, аппаратного USB токена и т.п., при аутентификации пользователя для начала процесса загрузки.[29] The microcontroller of the smart card is designed to perform user authentication before loading the operating system onto the computing device. The smart card microcontroller may be, for example, a smart card microcontroller (MCCM) of the NXP P5C family. This microcontroller can be used for strong two-factor authentication in addition to user password authentication. The smart card microcontroller is configured to read the user's private key stored on the authentication hardware 120, such as a smart card, a USB hardware token, or the like, when authenticating the user to start the boot process.

[30] Съемная память платформы 110 может представлять собой, например, карту памяти формата microSD, SD и т.д., расположенную в платформе 110. Для обеспечения защиты данных, микроконтроллер общего назначения выполнен с возможностью разбиения указанной карты памяти на следующие разделы: загрузочный раздел, с которого при включении электропитания вычислительного устройства загружается модуль доверенной загрузки; системный раздел, с которого в случае успешной аутентификации пользователя и идентификации вычислительного устройства 140 загружается операционная системы а также данные модуля криптографических преобразований; прикладной раздел, предназначенный для хранения настроек загружаемой ОС и выполняемых под её управлением приложений; раздел данных, предназначенный для хранения данных пользователя, подлежащих криптографической защите; информационный раздел, предназначенный для хранения данных, не подлежащих криптографической защите; служебный раздел, предназначенный для хранения журналов и контрольных сумм. Операции записи и чтения данных в соответствующих разделах памяти осуществляются в защищенном виде. Защита происходит посредством модуля криптографических преобразований под управлением микроконтроллера общего назначения.[30] The removable memory of the platform 110 may be, for example, a microSD, SD, etc. memory card located in the platform 110. To ensure data protection, the general purpose microcontroller is configured to partition the specified memory card into the following partitions: a section from which the trusted boot module is loaded when the computing device is powered on; a system partition from which, in case of successful user authentication and identification of the computing device 140, the operating system is loaded, as well as the data of the cryptographic transformation module; application section, designed to store the settings of the bootable OS and applications running under its control; a data section designed to store user data subject to cryptographic protection; an information section designed to store data that is not subject to cryptographic protection; a service partition designed to store logs and checksums. The operations of writing and reading data in the corresponding sections of memory are carried out in a protected form. Protection occurs through a cryptographic conversion module controlled by a general-purpose microcontroller.

[31] В одном частном варианте осуществления платформа 110 может содержать несколько физически разделенных памятей, например, две физические памяти, реализованные как собственная память платформы 110 и съемная память. Соответственно внутренняя память может содержать критичные разделы памяти, такие как системный раздел, раздел предназначенный для хранения данных пользователя, подлежащих криптографической защите могут быть сформированы. В свою очередь на съемной памяти может быть расположен, например, информационный раздел.[31] In one particular embodiment, platform 110 may include multiple physically separated memories, such as two physical memories implemented as native memory of platform 110 and removable memory. Accordingly, the internal memory may contain critical sections of memory, such as the system section, a section intended for storing user data subject to cryptographic protection can be formed. In turn, the removable memory can be located, for example, information section.

[32] Так, системный раздел может представлять раздел памяти только для чтения для исключения атаки вредоносного ПО, установленного в памяти вычислительного устройства 140, на операционную систему при ее запуске. В свою очередь операционная система содержит машиночитаемые инструкции для управления вычислительным устройством 140. В одном частном варианте осуществления операционная система может быть успешно загружена из платформы 110 в энергозависимую память (например, память RAM) вычислительного устройства 140, коммуникативно связанного с платформой 110 через интерфейс.[32] Thus, the system partition may represent a read-only memory section to prevent malware installed in the memory of the computing device 140 from attacking the operating system when it starts. In turn, the operating system contains machine-readable instructions for controlling computing device 140. In one particular embodiment, the operating system can be successfully loaded from platform 110 into volatile memory (e.g., RAM memory) of computing device 140 communicatively coupled to platform 110 via an interface.

[33] Операционная система, как правило включает в себя достаточно базовых функций для работы с вычислительным устройством 140, обмена данными с устройствами ввода- вывода, подключенными к вычислительному устройству и для инициирования сетевых подключений. Например, операционная система может включать в себя файловую систему, графический интерфейс пользователя, модуль управления процессами, модуль управления памятью, модуль управления сетью, контроллеры ввода-вывода, драйверы периферийных устройств и т.д. Для специалиста в данной области техники очевидно, что формат только для чтения могут иметь все разделы платформы 110 доступ к которым должен быть закрыт от вычислительного устройства 140, например, прикладной раздел, раздел данных, предназначенный для хранения данных пользователя, подлежащих криптографической защите. Таким образом, за счет загрузки ОС из защищенных областей памяти платформы 110 любое вредоносное ПО, такое как шпионское ПО, вирусы, программы для клавиатурных шпионов или другое вредоносное программное обеспечение, которое может существовать в энергонезависимой запоминающей памяти вычислительного устройства 140 оказывается нефункциональным, пока указанное устройство находится под контролем загруженной операционной системы.[33] An operating system typically includes enough basic functionality to operate the computing device 140, communicate with I/O devices connected to the computing device, and initiate network connections. For example, an operating system may include a file system, a graphical user interface, a process management module, a memory management module, a network management module, I/O controllers, peripheral device drivers, and so on. For a person skilled in the art, it is obvious that the read-only format can have all sections of the platform 110 access to which must be closed from the computing device 140, for example, an application section, a data section designed to store user data that is subject to cryptographic protection. Thus, by loading the OS from protected memory areas of platform 110, any malware such as spyware, viruses, keyloggers, or other malicious software that may exist in the non-volatile storage memory of computing device 140 is rendered non-functional as long as said device is under the control of the loaded operating system.

[34] Модуль доверенной загрузки предназначен для инициации процесса загрузки ОС с платформы 110 на вычислительное устройство 140. В одном частном варианте реализации модуль доверенной загрузки может являться программным модулем, реализованным на базе микроконтроллера общего назначения. Так, при включении питания вычислительного устройства 140 модуль доверенной загрузки выполнен с возможностью получения управления над базовой системой ввода-вывода вычислительного устройства (BIOS/UEFI). Стоит отметить, что команду на инициацию процесса загрузки ОС модуль доверенной загрузки получает от микроконтроллера общего назначения только после аутентификации пользователя, например, после двухфакторной аутентификации на основе аппаратного токена пользователя и аутентификации по паролю пользователя. Если модуль доверенной загрузки не смог получить управление над BIOS, то дальнейший процесс загрузки блокируется. После успешного получения управления над BIOS, микроконтроллер общего назначения активирует модуль криптографических преобразований для обеспечения криптографической защиты данных при их обработке и хранении в памяти вычислительного устройства 140 или на внешнем носителе, а также при передаче по каналам связи.[34] The trusted boot module is designed to initiate the OS boot process from platform 110 to computing device 140. In one particular implementation, the trusted boot module may be a software module implemented on a general purpose microcontroller. Thus, upon power up of the computing device 140, the trusted boot module is configured to gain control over the computing device's basic input/output system (BIOS/UEFI). It should be noted that the command to initiate the OS boot process is received by the trusted boot module from the general-purpose microcontroller only after user authentication, for example, after two-factor authentication based on the user's hardware token and user password authentication. If the trusted boot module could not get control over the BIOS, then the further boot process is blocked. After successfully gaining control over the BIOS, the general purpose microcontroller activates the cryptographic conversion module to provide cryptographic protection of data during processing and storage in the memory of the computing device 140 or on external media, as well as during transmission over communication channels.

[35] Модуль криптографических преобразований предназначен для криптографических преобразований последовательностей электромагнитных импульсов, кодирующих данные, подлежащие криптографической защите и подаваемых на вход микроконтроллера общего назначения, непосредственно в его памяти. Кроме того, указанный модуль обеспечивает шифрование данных, поступающих в память вычислительного устройства 140. Модуль криптографических преобразований может являться программным модулем на базе микроконтроллера общего назначения. Под криптографическими преобразованиями в данном решении понимаются такие операции как генерация ключевых пар, например, генерация ключевых пар в соответствии с ГОСТ Р 34.10-2001, формирование электронной подписи, например, по ГОСТ Р 34.10-2001, генерации псевдослучайных последовательностей для реализации алгоритмов шифрования, шифрования данных, имитозащиты блоков данных и сообщений, изготовления ключевых документов. Указанные криптографические преобразования выполняются непосредственно в памяти платформы 110, что обеспечивает максимально высокую степень сохранности ключевой информации и, как следствие, повышает безопасность данных и защищает их от несанкционированного доступа.[35] The module of cryptographic transformations is designed for cryptographic transformations of sequences of electromagnetic pulses encoding data subject to cryptographic protection and supplied to the input of a general-purpose microcontroller, directly in its memory. In addition, the specified module provides encryption of data entering the memory of the computing device 140. The cryptographic transformation module may be a software module based on a general purpose microcontroller. Cryptographic transformations in this solution are understood as operations such as generation of key pairs, for example, generation of key pairs in accordance with GOST R 34.10-2001, generation of an electronic signature, for example, in accordance with GOST R 34.10-2001, generation of pseudo-random sequences for the implementation of encryption algorithms, encryption data, imitation protection of data blocks and messages, production of key documents. These cryptographic transformations are performed directly in the memory of the platform 110, which ensures the highest degree of security of key information and, as a result, increases the security of data and protects them from unauthorized access.

[36] Алгоритмами криптографических преобразований могут являться, например, симметричные алгоритмы шифрования, такие как DES, AES, ГОСТ 28147-89, ассиметричные алгоритмы шифрования, такие как RSA, DSA, алгоритмы хеширования, такие как SHA-256 и т.д. Более конкретно, преобразование последовательностей электромагнитных импульсов (сигналов) может представлять собой, например, процесс сжатия (хэширования) аутентифицируемых данных (по действующему стандарту РФ ГОСТ Р 34.11-94,); процесс создания набора электромагнитных импульсов, называемого электронной подписью (ЭП) конкретного пользователя под заданным блоком данных, получаемого как комбинация его персонального набора импульсов, называемого закрытым ключом создания ЭП, с электромагнитными импульсами, кодирующими подписываемый блок данных (по стандарту РФ ГОСТ Р 34.10-2001, или новому стандарту ГОСТ Р 34.10-2012). Процедуры преобразования последовательностей электромагнитных импульсов, соответствующие хэшированию подписываемых данных, созданию и проверке электронных подписей сторон.[36] Cryptographic transformation algorithms can be, for example, symmetric encryption algorithms such as DES, AES, GOST 28147-89, asymmetric encryption algorithms such as RSA, DSA, hash algorithms such as SHA-256, etc. More specifically, the transformation of sequences of electromagnetic pulses (signals) can be, for example, the process of compression (hashing) of authenticated data (according to the current standard of the Russian Federation GOST R 34.11-94,); the process of creating a set of electromagnetic pulses, called the electronic signature (ES) of a specific user under a given data block, obtained as a combination of his personal set of impulses, called the private key for creating an ES, with electromagnetic pulses encoding the signed data block (according to the RF standard GOST R 34.10-2001 , or the new standard GOST R 34.10-2012). Procedures for converting sequences of electromagnetic pulses corresponding to the hashing of signed data, the creation and verification of electronic signatures of the parties.

[37] Основной особенностью применения таких преобразований в платформе 110 является обеспечение генерации псевдослучайных последовательностей для реализации криптографических преобразований на основе аппаратного датчика случайных чисел (ДСЧ) с применением случайной равномерной выборки символов алфавита мощности не менее 94, реализованного на базе микроконтроллера общего назначения и псевдослучайной последовательности чисел (ПСЧ), полученной от администратора указанной системы, например, от сервера. Так, аппаратный датчик случайный чисел может являться, например, биологический аппаратный датчик случайных чисел, биометрический датчик и т.д.[37] The main feature of the use of such transformations in the platform 110 is to provide the generation of pseudo-random sequences for the implementation of cryptographic transformations based on a hardware random number generator (RNG) using a random uniform sample of symbols of an alphabet with a power of at least 94, implemented on the basis of a general-purpose microcontroller and a pseudo-random sequence numbers (PSCh) received from the administrator of the specified system, for example, from the server. Thus, the hardware random number generator may be, for example, a biological hardware random number generator, a biometric sensor, and so on.

[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 модуль и др.[38] The server 130 of the system 100 is designed to remotely control and monitor the events of the platform 110. The server 130 may be a server, a personal computer, a workstation, and so on. Administration of platform 110 on server 130 can be done through a GUI by an administrator of system 100. Administrator access to server 130 is through authentication mechanisms such as password entry, USB token authentication, biometric authentication, and so on. Said server 130 is configured to at least control the peripheral hardware platform 110, generate a PRNG to implement cryptographic transformations in the peripheral hardware platform, read the service section of the removable memory, load the log from the specified partition into the database, and clear logs on the specified peripheral hardware platform. In one particular embodiment, management (administration) can occur via a graphical interface through an application, for example, by an administrator of system 100. Communication from platform 110 to server 130 can be performed, for example, using a communication device of a computing device after receiving control over the BIOS by the trusted boot module. The data transmission means enables the transmission of data via an internal or external computer network, such as an Intranet, the Internet, a LAN, or the like. As one or more means, it can be used, but not limited to: Ethernet card, GSM modem, GPRS modem, LTE modem, 5G modem, satellite communication module, NFC module, Bluetooth and / or BLE module, Wi-Fi module, etc.

[39] В частном варианте осуществления сервер 130 выполнен с возможностью настройки параметров, позволяющих до запуска ОС с системного раздела осуществлять следующие последовательности действий над электромагнитными импульсами, кодирующими обрабатываемые данные: инициализацию USB-носителей администратора и пользователя; регистрацию ЭВМ для возможности загрузки её с платформы 110, такой как USB-носитель; смену последовательностей электромагнитных импульсов – аутентификаторов пользователей и устройств; обновление образа загружаемой ОС; сброс счётчиков неудачных попыток ввода пароля; сброс платформы 110 к заводским настройкам.[39] In a private embodiment, the server 130 is configured to configure parameters that allow, prior to starting the OS from the system partition, to perform the following sequences of actions on electromagnetic pulses encoding processed data: initialization of the administrator and user USB drives; registering the computer to be able to boot it from the platform 110, such as a USB drive; change of sequences of electromagnetic pulses - authenticators of users and devices; updating the bootable OS image; reset counters of failed password attempts; reset platform 110 to factory settings.

[40] Кроме того, сервер 130 выполнен с возможностью считывания служебной информации, включая данные пользователя, хранящиеся во внутренней энергонезависимой памяти платформы 110, недоступной для программного обеспечения вычислительного устройства 140, к которому это устройство подключено и работающего под управлением загружаемой с платформы 110 операционной системы. Для однозначной идентификации и возможности управления платформой 110, платформе 110 присваивается уникальный машиночитаемый серийный номер. Указанный номер присваивается сервером 130 и может отображаться, например в графическом интерфейсе сервера 130. Кроме того, в одном частном варианте осуществления серийный номер может быть отображен на экране монитора вычислительного устройства. Доступ к системному журналу событий и журналу для событий контроля целостности, которые хранятся на служебном разделе, может быть осуществлен посредством аутентификации платформы 110 на сервере 130 с помощью модуля криптографических преобразований. Служебный раздел недоступен для пользователей при применении любых программных средств, доступ к журналам событий обеспечен только для аутентифицированного сервером 130 администратора системы. Стоит отметить, что журналы поддерживают режим, при котором в случае переполнения уничтожение записей не происходит, а происходит блокирование возможности загрузки доверенной ОС до переноса записей из платформы в базу данных сервера. Совокупная ёмкость журналов составляет не менее 512 байт, поддерживается режим циклической перезаписи при переполнении журнала, блокирование возможности загрузки доверенной ОС при переполнении журналов.[40] In addition, the server 130 is configured to read service information, including user data, stored in the internal non-volatile memory of the platform 110, inaccessible to the software of the computing device 140 to which this device is connected and running under the control of the operating system loaded from the platform 110 . To uniquely identify and control platform 110, platform 110 is assigned a unique machine-readable serial number. The specified number is assigned by the server 130 and may be displayed, for example, in the graphical interface of the server 130. In addition, in one particular embodiment, the serial number may be displayed on the monitor screen of the computing device. Access to the system event log and the log for integrity events that are stored on the service partition can be done by authenticating the platform 110 to the server 130 using a cryptographic transformation module. The service section is not available to users when using any software, access to the event logs is provided only for the system administrator authenticated by the server 130. It is worth noting that the logs support a mode in which, in the event of an overflow, records are not destroyed, but the ability to load a trusted OS is blocked until records are transferred from the platform to the server database. The total capacity of the logs is at least 512 bytes, the mode of cyclic rewriting is supported when the log is full, blocking the ability to boot a trusted OS when the logs are full.

[41] За счет возможности удаленного управления (администрирования) платформой 110, администратор системы 100 с помощью сервера 130 может также выполнять следующие действия: осуществлять просмотр списка всех подключённых периферийных аппаратных платформ 110; загружать образы операционной системы и управлять данными модуля криптографических преобразований для доверенной загрузки; настраивать парольную политику, такую как установление минимально допустимой длины пароля, предельного количеств последовательных неудачных попыток предъявления пароля; интервала времени для разблокирования пароля; регистрировать вычислительное устройство, к которому подключена периферийная аппаратная платформа 110 для доверенной загрузки операционной системы; осуществлять удаленную разблокировку/блокировку платформы 110; осуществлять удаленную очистку съемной памяти платформы 110; осуществлять сброс настроек периферийной аппаратной платформы к заводским настройкам.[41] Due to the possibility of remote control (administration) of the platform 110, the administrator of the system 100 using the server 130 can also perform the following actions: view a list of all connected peripheral hardware platforms 110; upload operating system images and manage cryptographic transformation module data for trusted boot; configure a password policy, such as setting a minimum allowable password length, a limit on the number of consecutive unsuccessful attempts to present a password; time interval for unlocking the password; register a computing device to which the peripheral hardware platform 110 is connected for trusted booting of an operating system; to remotely unlock/lock the platform 110; perform remote cleaning of the removable memory of the platform 110; reset the peripheral hardware platform to factory settings.

[42] Таким образом описанные элементы системы 100 в совокупности обеспечивают защиту данных пользователя от несанкционированного доступа за счет механизмов доверенной загрузки операционной системы, криптографической защиты данных при их обработке, хранении в памяти вычислительного устройства и передаче по коммуникационной сети, а также удаленного управления и непосредственного участия в криптографической защите сервера 130.[42] The elements of the system 100 thus described together provide protection for user data from unauthorized access due to mechanisms for trusted boot of the operating system, cryptographic protection of data during processing, storage in the memory of a computing device and transmission over a communication network, as well as remote control and direct participation in the cryptographic protection of the server 130.

[43] На Фиг. 2 приведена блок схема осуществления способа 200 доверенной загрузки операционной системы (ОС) вычислительного устройства 140 и криптографической защиты данных при их обработке, хранении в памяти указанного устройства и передаче по коммуникационной сети. Указанный способ выполняется системой 100.[43] In FIG. 2 shows a block diagram of a method 200 for trusted loading of an operating system (OS) of a computing device 140 and cryptographic protection of data during processing, storage in the memory of the specified device, and transmission over a communication network. Said method is performed by system 100.

[44] Для реализации способа 200 платформа 110 регистрируется на сервере 130. Администратор системы 100 с помощью сервера 130 может присвоить уникальный регистрационный номер платформе 110 в соответствии с ее уникальным машиночитаемым серийным номером, хранящимся в памяти платформы 110. После авторизации платформы на сервере 130 администратор может выполнить первичную настройку указанной платформы 110. Первичной настройкой может являться, например, запись в системный раздел платформы 110 образа ОС, настройка парольной политики, в частности: установление минимально допустимой длины пароля, предельного количества последовательных неудачных попыток предъявления пароля, интервала времени для разблокирования пароля, инициализация пользовательского пароля и т.д.[44] To implement the method 200, the platform 110 registers with the server 130. The administrator of the system 100, using the server 130, can assign a unique registration number to the platform 110 in accordance with its unique machine-readable serial number stored in the memory of the platform 110. After the platform is authorized on the server 130, the administrator can perform the initial configuration of the specified platform 110. The primary configuration can be, for example, writing an OS image to the system partition of the platform 110, setting the password policy, in particular: setting the minimum allowable password length, limiting the number of consecutive unsuccessful attempts to present the password, the time interval for unlocking the password , user password initialization, etc.

[45] Способ 200 начинается с подключения периферийной аппаратной платформы 110 к вычислительному устройству посредством USB интерфейса (этап 201). Подключение платформы 110 может осуществляться пользователем системы 100.[45] Method 200 begins by connecting peripheral hardware platform 110 to a computing device via a USB interface (step 201). Platform 110 may be connected by a user of system 100.

[46] На этапе 202 модуль доверенной загрузки получает управление над базовой системой ввода-вывода вычислительного устройства при его включении.[46] At step 202, the trusted boot module takes control of the computing device's basic I/O system when it is turned on.

[47] На этапе 203 при первичном применении платформы 110 пользователю назначается пароль, например, генерируемый в микроконтроллере общего назначения с помощью датчика случайных чисел (ДСЧ), такого как биометрический датчик случайных чисел, биологический датчик случайных чисел и т.д., с применением случайной равномерной выборки символов алфавита мощности не менее 94 для обеспечения аутентификации пользователя на платформе 110. Указанный пароль связан с микроконтроллером смарт-карты и обеспечивает однозначную аутентификацию пользователя в платформе 110.[47] At step 203, when platform 110 is first used, a password is assigned to the user, for example, generated in a general purpose microcontroller using a random number generator (RNG), such as a biometric random number generator, a biological random number generator, etc., using random uniform sampling of alphabetic characters with a power of at least 94 to provide user authentication on the platform 110. The specified password is associated with the smart card microcontroller and provides unique user authentication on the platform 110.

[48] На этапе 204 при помощи сервера 130 выполняют регистрацию вычислительного устройства, к которому подключена периферийная аппаратная платформа 110, для доверенной загрузки операционной системы с помощью сервера. Стоит отметить, что если платформа 110 подключена к не зарегистрированному вычислительному устройству, то загрузка ОС на данном устройстве будет заблокирована. Соответственно в дальнейшем, при подключении платформы 110 к вычислительному устройству, сервер проверяет зарегистрировано ли указанное устройство и следует ли разрешить загрузку доверенной ОС на данном устройстве.[48] In step 204, the server 130 registers the computing device to which the peripheral hardware platform 110 is connected to trustedly boot the operating system with the server. It should be noted that if the platform 110 is connected to an unregistered computing device, then the OS boot on this device will be blocked. Accordingly, when platform 110 is connected to a computing device, the server checks whether the specified device is registered and whether it should be allowed to boot a trusted OS on this device.

[49] На этапе 205 микроконтроллер общего назначения, перед началом загрузки ОС запрашивает аутентификацию пользователя. В одном частном варианте осуществления пользователь выполняет двухфакторную аутентификацию, причем двухфакторная аутентификация содержит ввод пароля пользователя и подключение смарт-карты пользователя.[49] In step 205, the general purpose microcontroller requests user authentication before starting to boot the OS. In one particular embodiment, the user performs two-factor authentication, the two-factor authentication comprising entering the user's password and connecting the user's smart card.

[50] На этапе 206 выполняют, посредством микроконтроллера общего назначения, контроль целостности данных модуля доверенной загрузки, данных модуля криптографических преобразований и данных загружаемой ОС, расположенных на системном разделе до начала доверенной загрузки операционной системы на вычислительном устройстве 140. В одном частном варианте осуществления, после получения питания от вычислительного устройства и до начала процесса перехвата управления, микроконтроллер общего назначения платформы 110 выполнен с возможностью контроля целостности компонентов платформы 110, таких как целостность модуля доверенной загрузки, целостность данных модуля криптографических преобразований и данных загружаемой ОС, расположенных на системном разделе. В случае невыполнения проверки или ошибки хотя бы в одном тесте загрузка ОС на вычислительном устройстве 140 с данной платформы 110 блокируется. Блокировка может осуществляться, например, микроконтроллером общего назначения, посредством отправки управляющего сигнала на модуль доверенной загрузке о прекращении процесса загрузки. Кроме того, в еще одном частном варианте осуществления при неполучении управления модулем доверенной загрузки над вычислительным устройством при включении указанного устройства, загрузка ОС с периферийной аппаратной платформы 110 также блокируется.[50] At step 206, the integrity of the trusted boot module data, cryptographic conversion module data, and bootable OS data located on the system partition is performed, by means of a general purpose microcontroller, on the computing device 140 before trusted booting of the operating system on the computing device 140 begins. In one particular embodiment, after receiving power from the computing device and prior to the start of the control interception process, the platform 110 general purpose microcontroller is configured to monitor the integrity of the platform 110 components, such as the integrity of the trusted boot module, the integrity of the data of the cryptographic conversion module, and the data of the bootable OS located on the system partition. If the check fails or an error occurs in at least one test, OS loading on the computing device 140 from this platform 110 is blocked. Blocking can be performed, for example, by a general-purpose microcontroller, by sending a control signal to the trusted boot module to terminate the boot process. In addition, in another particular embodiment, if control of the trusted boot module over the computing device is not received when the specified device is turned on, booting the OS from the peripheral hardware platform 110 is also blocked.

[51] На этапе 207 сервер 130 генерирует последовательность случайных чисел и отправляет указанную последовательность в периферийную аппаратную платформу.[51] At step 207, the server 130 generates a sequence of random numbers and sends the specified sequence to the peripheral hardware platform.

[52] На этапе 208 модуль криптографических преобразований генерирует последовательность случайных чисел на периферийной аппаратной платформе 110 для осуществления криптографических преобразований, причем генерация последовательности случайных выполняется с помощью аппаратного биологического датчика случайных чисел и последовательности случайных чисел, полученной от сервера. На основе полученной последовательности случайных чисел модуль криптографических преобразований выполняет криптографическую защиту данных.[52] In step 208, the cryptographic transformation module generates a random number sequence on the peripheral hardware platform 110 to perform cryptographic transformations, wherein the generation of the random number sequence is performed using a hardware biological random number generator and a random number sequence received from the server. Based on the received sequence of random numbers, the cryptographic transformation module performs cryptographic data protection.

[53] На этапе 209 загружают, посредством модуля доверенной загрузки, ОС на вычислительное устройство, причем загрузка ОС выполняется под контролем модуля криптографических преобразований, реализующего криптографические преобразования последовательностей электромагнитных импульсов, кодирующих данные, подлежащие криптографической защите и подаваемых на вход аппаратной платформы 110 и в память вычислительного устройства или сетевого сервера.[53] At step 209, the OS is loaded onto the computing device by means of a trusted boot module, and the OS is loaded under the control of a cryptographic transformation module that implements cryptographic transformations of electromagnetic pulse sequences encoding data to be cryptographically protected and supplied to the input of the hardware platform 110 and to memory of a computing device or network server.

[54] На этапе 210 выполняют контроль над всеми операциями вычислительного устройства посредством модуля криптографических преобразований для криптографической защиты данных при их обработке, хранении в памяти указанного устройства и передаче по коммуникационной сети, например, с помощью вышеописанных алгоритмов шифрования.[54] At step 210, all operations of the computing device are controlled by a cryptographic transformation module for cryptographic protection of data during processing, storage in the memory of the specified device and transmission over a communication network, for example, using the above-described encryption algorithms.

[55] Представленные материалы заявки раскрывают предпочтительные примеры реализации технического решения и не должны трактоваться как ограничивающие иные, частные примеры его воплощения, не выходящие за пределы испрашиваемой правовой охраны, которые являются очевидными для специалистов соответствующей области техники.[55] The submitted application materials disclose preferred examples of the implementation of the technical solution and should not be interpreted as limiting other, particular examples of its implementation that do not go beyond the scope of the requested legal protection, which are obvious to specialists in the relevant field of technology.

[56] Модификации и улучшения вышеописанных вариантов осуществления настоящего технического решения будут ясны специалистам в данной области техники. Предшествующее описание представлено только в качестве примера и не несет никаких ограничений для целей осуществления иных частных вариантов воплощения заявленного технического решения, не выходящего за рамки испрашиваемого объема правовой охраны. Конструктивные элементы, такие как микроконтроллеры, блоки, модули и т.д., описанные выше и используемые в данном техническом решении, могут быть реализованы с помощью электронных компонентов, используемых для создания цифровых интегральных схем. [56] Modifications and improvements to the above described embodiments of the present technical solution will be clear to experts in this field of technology. The previous description is presented only as an example and does not carry any restrictions for the purposes of implementing other private embodiments of the claimed technical solution that does not go beyond the requested scope of legal protection. Structural elements such as microcontrollers, blocks, modules, etc., described above and used in this technical solution, can be implemented using electronic components used to create digital integrated circuits.

Claims (30)

1. Система доверенной загрузки операционной системы (ОС) вычислительного устройства и криптографической защиты данных при их обработке, хранении в памяти указанного устройства и передаче по коммуникационной сети, содержащая:1. A system for trusted loading of the operating system (OS) of a computing device and cryptographic protection of data during their processing, storage in the memory of the specified device and transmission over a communication network, comprising: периферийную аппаратную платформу, выполненную с возможностью соединения с вычислительным устройством посредством USB интерфейса, включающую: a peripheral hardware platform configured to connect to a computing device via a USB interface, including: a) микроконтроллер общего назначения, выполненный с возможностью проведения контроля целостности данных модуля доверенной загрузки, данных модуля криптографических преобразований и данных загружаемой ОС, расположенных на системном разделе до начала доверенной загрузки операционной системы на вычислительном устройстве, управления модулем криптографических преобразований, модулем доверенной загрузки и микроконтроллером смарт-карты, аутентификации пользователя,a) a general-purpose microcontroller configured to perform data integrity control of the trusted boot module, data of the cryptographic transformation module and bootable OS data located on the system partition before the start of trusted boot of the operating system on the computing device, control of the cryptographic transformation module, the trusted boot module and the microcontroller smart cards, user authentication, b) микроконтроллер смарт-карты, выполненный с возможностью аутентификации смарт-карты пользователя на вычислительном устройстве, к которому она подсоединена;b) a smart card microcontroller configured to authenticate the user's smart card to the computing device to which it is connected; c) съемную память, включающую загрузочный раздел, предназначенный для хранения данных модуля доверенной загрузки; системный раздел предназначенный для хранения загружаемой ОС и данных модуля криптографических преобразований; прикладной раздел, предназначенный для хранения настроек загружаемой ОС и выполняемых под её управлением приложений; раздел данных, предназначенный для хранения данных пользователя, подлежащих криптографической защите; информационный раздел, предназначенный для хранения данных, не подлежащих криптографической защите; служебный раздел, предназначенный для хранения журналов и контрольных сумм;c) removable memory, including a boot partition for storing trusted boot module data; system partition designed to store the bootable OS and cryptographic conversion module data; application section, designed to store the settings of the bootable OS and applications running under its control; a data section designed to store user data subject to cryptographic protection; an information section designed to store data that is not subject to cryptographic protection; a service partition designed to store logs and checksums; d) модуль доверенной загрузки, выполненный с возможностью получения управления над базовой системой ввода-вывода вычислительного устройства при его включении (BIOS/UEFI) и обеспечения загрузки доверенной операционной системы и данных модуля криптографических преобразований, размещенных в системном разделе съемной памяти периферийной аппаратной платформы, на вычислительном устройстве;d) a trusted boot module configured to take control of the computing device's basic input/output system when it is turned on (BIOS/UEFI) and ensure booting of the trusted operating system and cryptographic transformation module data located in the removable memory system partition of the peripheral hardware platform, on computing device; e) модуль криптографических преобразований, выполненный с возможностью выполнения криптографических преобразований над последовательностями электромагнитных импульсов подаваемых на вход аппаратной платформы и в память пользовательского компьютера или сетевого сервера, генерации псевдослучайных последовательностей, шифрования данных, имитозащиты блоков данных и сообщений, изготовления ключевых документов для реализуемых криптографических преобразований, причем для осуществления криптографических преобразований генерация псевдослучайных последовательностей выполняется с помощью аппаратного биологического датчика случайных чисел микроконтроллера общего назначения последовательности случайных чисел, полученной от сервера;e) a cryptographic transformation module, configured to perform cryptographic transformations on the sequences of electromagnetic pulses applied to the input of the hardware platform and to the memory of the user computer or network server, generate pseudo-random sequences, encrypt data, imitate protection of data blocks and messages, produce key documents for implemented cryptographic transformations , and for the implementation of cryptographic transformations, the generation of pseudo-random sequences is performed using a hardware biological random number sensor of a general-purpose microcontroller of a sequence of random numbers received from the server; смарт-карта пользователя, реализованная на базе аппаратного токена, содержащего ключ аутентификации пользователя, выполненная с возможностью подсоединения к вычислительному устройству пользователя посредством USB интерфейса;user's smart card, implemented on the basis of a hardware token containing a user authentication key, configured to be connected to the user's computing device via a USB interface; сервер, выполненный с возможностью по меньшей мере управления периферийной аппаратной платформой, генерации ПСЧ для реализации криптографических преобразований в периферийной аппаратной платформе, чтения служебного раздела съемной памяти, загрузки журнала из указанного раздела в базу данных и очистки журналов на указанной периферийной аппаратной платформе.a server configured to at least control the peripheral hardware platform, generate a PRNG to implement cryptographic transformations in the peripheral hardware platform, read the service section of the removable memory, load the log from the specified section into the database, and clear the logs on the specified peripheral hardware platform. 2. Система по п. 1, характеризующаяся тем, что сервер дополнительно выполнен с возможностью: 2. The system according to claim. 1, characterized in that the server is additionally configured to: просмотра списка всех подключённых периферийных аппаратных платформ;viewing a list of all connected peripheral hardware platforms; загрузки образов операционной системы и данных модуля криптографических преобразований для доверенной загрузки;loading images of the operating system and data of the cryptographic transformation module for trusted loading; настройки парольной политики, содержащей по меньшей мере: установление минимально допустимой длины пароля, предельного количества последовательных неудачных попыток предъявления пароля; интервала времени для разблокирования пароля; setting a password policy, comprising at least: setting a minimum allowable password length, a limit on the number of consecutive unsuccessful attempts to present a password; time interval for unlocking the password; регистрации вычислительного устройства, к которому подключена периферийная аппаратная платформа, для доверенной загрузки операционной системы;registration of the computing device to which the peripheral hardware platform is connected for trusted loading of the operating system; удаленной разблокировки/блокировки периферийной аппаратной платформы; remote unlock/lock of the peripheral hardware platform; удаленной очистки съемной памяти периферийной аппаратной платформы;remote cleaning of removable memory of the peripheral hardware platform; сброса настроек периферийной аппаратной платформы к заводским настройкам.resetting the peripheral hardware platform to factory settings. 3. Система по п. 1, характеризующаяся тем, что при неудачном проведении контроля целостности загрузка ОС с периферийной аппаратной платформы блокируется.3. The system according to claim 1, characterized in that if the integrity control fails, the OS loading from the peripheral hardware platform is blocked. 4. Система по п. 1, характеризующаяся тем, что при неполучении управления модулем доверенной загрузки над вычислительным устройством при включении указанного устройства загрузка ОС с периферийной аппаратной платформы блокируется.4. The system according to claim. 1, characterized in that if the control of the trusted boot module over the computing device is not received, when the specified device is turned on, the OS boot from the peripheral hardware platform is blocked. 5. Способ доверенной загрузки операционной системы (ОС) вычислительного устройства и криптографической защиты данных при их обработке, хранении в памяти указанного устройства и передаче по коммуникационной сети, выполняющийся системой по любому из пп. 1-4 и содержащий этапы, на которых:5. The method of trusted loading of the operating system (OS) of a computing device and cryptographic protection of data during their processing, storage in the memory of the specified device and transmission over a communication network, performed by the system according to any one of paragraphs. 1-4 and containing the steps in which: подключают периферийную аппаратную платформу к вычислительному устройству посредством USB интерфейса;connecting the peripheral hardware platform to the computing device via a USB interface; получают управление над базовой системой ввода-вывода вычислительного устройства при его включении с помощью модуля доверенной загрузки;get control over the basic input/output system of the computing device when it is turned on using the trusted boot module; генерируют пароль пользователя с помощью датчика случайных чисел (ДСЧ) с применением случайной равномерной выборки символов алфавита мощности не менее 94;generating a user password using a random number generator (RNG) using a random uniform sample of alphabet characters with a power of at least 94; выполняют проверку регистрации вычислительного устройства, к которому подключена периферийная аппаратная платформа, на сервере;checking the registration of the computing device to which the peripheral hardware platform is connected to the server; выполняют двухфакторную аутентификацию пользователя, причем двухфакторная аутентификация содержит ввод пароля пользователя и подключение программно-аппаратного средства криптографической защиты информации пользователя, реализованного на базе аппаратного токена;perform two-factor authentication of the user, and two-factor authentication includes entering the user's password and connecting the software and hardware for cryptographic protection of user information, implemented on the basis of a hardware token; выполняют, посредством микроконтроллера общего назначения, контроль целостности данных модуля доверенной загрузки, данных модуля криптографических преобразований и данных загружаемой ОС, расположенных на системном разделе до начала доверенной загрузки операционной системы на вычислительном устройстве;performing, by means of a general-purpose microcontroller, data integrity control of the trusted boot module, data of the cryptographic transformation module, and bootable OS data located on the system partition prior to trusted boot of the operating system on the computing device; генерируют последовательность случайных чисел на сервере и отправляют указанную последовательность в периферийную аппаратную платформу;generate a sequence of random numbers on the server and send the specified sequence to the peripheral hardware platform; генерируют последовательность случайных чисел на периферийной аппаратной платформе для осуществления криптографических преобразований, причем генерация указанной последовательности выполняется с помощью аппаратного биологического датчика случайных чисел микроконтроллера общего назначения последовательности случайных чисел, полученной от сервера;generating a sequence of random numbers on a peripheral hardware platform for performing cryptographic transformations, wherein the generation of said sequence is performed using a hardware biological random number sensor of a general-purpose microcontroller of the sequence of random numbers received from the server; загружают, посредством модуля доверенной загрузки, ОС на вычислительное устройство, причем загрузка ОС выполняется под контролем модуля криптографических преобразований, реализующего криптографические преобразования последовательностей электромагнитных импульсов, кодирующих данные, подлежащие криптографической защите и подаваемых на вход аппаратной платформы и в память пользовательского компьютера или сетевого сервера;loading, by means of a trusted loading module, an OS onto a computing device, wherein the OS is loaded under the control of a cryptographic transformation module that implements cryptographic transformations of electromagnetic pulse sequences that encode data subject to cryptographic protection and are fed to the input of the hardware platform and to the memory of the user computer or network server; выполняют криптографическую защиту всех операций вычислительного устройства посредством модуля криптографических преобразований для криптографической защиты данных при их обработке, хранении в памяти указанного устройства и передаче по коммуникационной сети. perform cryptographic protection of all operations of the computing device by means of a cryptographic transformation module for cryptographic protection of data during their processing, storage in the memory of the specified device and transmission over a communication network.
RU2021127126A 2021-09-15 Method and system for trusted loading of computing device operating system RU2773456C1 (en)

Publications (1)

Publication Number Publication Date
RU2773456C1 true RU2773456C1 (en) 2022-06-03

Family

ID=

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2816097C1 (en) * 2023-06-23 2024-03-26 Акционерное общество "ФРАКИР-ИНВЕСТ" Trusted computing system with multilevel security system

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090094447A1 (en) * 2007-10-03 2009-04-09 Jyh Chiang Yang Universal serial bus flash drive for booting computer and method for loading programs to the flash drive
GB2527569B (en) * 2014-06-26 2016-06-08 Ibm Booting a computer from a user trusted device with an operating system loader stored thereon
RU2015139374A (en) * 2015-09-16 2017-03-21 Ольга Александровна Теплоухова HARDWARE AND SOFTWARE MODULE OF TRUSTED NETWORK DOWNLOAD OF THE OPERATING SYSTEM FOR THIN CLIENTS
US10169574B2 (en) * 2014-12-16 2019-01-01 Intel Corporation Using trusted execution environments for security of code and data
RU2690782C2 (en) * 2017-02-07 2019-06-05 Общество с ограниченной ответственностью Фирма "Анкад" Computer system with remote management of server and device for creating trusted environment
RU2706176C1 (en) * 2019-05-31 2019-11-14 Открытое Акционерное Общество "Информационные Технологии И Коммуникационные Системы" Method of providing cryptographic protection of information in a network information system

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090094447A1 (en) * 2007-10-03 2009-04-09 Jyh Chiang Yang Universal serial bus flash drive for booting computer and method for loading programs to the flash drive
GB2527569B (en) * 2014-06-26 2016-06-08 Ibm Booting a computer from a user trusted device with an operating system loader stored thereon
US10169574B2 (en) * 2014-12-16 2019-01-01 Intel Corporation Using trusted execution environments for security of code and data
RU2015139374A (en) * 2015-09-16 2017-03-21 Ольга Александровна Теплоухова HARDWARE AND SOFTWARE MODULE OF TRUSTED NETWORK DOWNLOAD OF THE OPERATING SYSTEM FOR THIN CLIENTS
RU2690782C2 (en) * 2017-02-07 2019-06-05 Общество с ограниченной ответственностью Фирма "Анкад" Computer system with remote management of server and device for creating trusted environment
RU2706176C1 (en) * 2019-05-31 2019-11-14 Открытое Акционерное Общество "Информационные Технологии И Коммуникационные Системы" Method of providing cryptographic protection of information in a network information system

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2817533C1 (en) * 2023-03-03 2024-04-16 Акционерное общество "Аладдин Р.Д." Method and system for unidirectional data transmission between computing devices
RU2816097C1 (en) * 2023-06-23 2024-03-26 Акционерное общество "ФРАКИР-ИНВЕСТ" Trusted computing system with multilevel security system
RU225635U1 (en) * 2024-03-29 2024-04-26 Общество с ограниченной ответственностью "Производственная компания Аквариус" Integrated trusted peripheral boot module

Similar Documents

Publication Publication Date Title
US10516533B2 (en) Password triggered trusted encryption key deletion
US6775776B1 (en) Biometric-based authentication in a nonvolatile memory device
KR101556069B1 (en) Out-of-band remote authentication
KR101198120B1 (en) Iris information based 3-factor user authentication method for otp generation and secure two way authentication system of wireless communication device authentication using otp
CN101470783B (en) Identity recognition method and device based on trusted platform module
US20070237366A1 (en) Secure biometric processing system and method of use
CN101971182B (en) Finger sensing apparatus with credential release and associated methods
JP2015504222A (en) Data protection method and system
US20070226514A1 (en) Secure biometric processing system and method of use
US20160204933A1 (en) Personal information management system, method and service
US20210382985A1 (en) Virus immune computer system and method
CN107958155A (en) A kind of system initialization method and device
US20170289153A1 (en) Secure archival and recovery of multifactor authentication templates
US10664588B1 (en) Virus immune computer system and method
US20070226515A1 (en) Secure biometric processing system and method of use
US10592697B1 (en) Virus immune computer system and method
RU2773456C1 (en) Method and system for trusted loading of computing device operating system
US9262619B2 (en) Computer system and method for protecting data from external threats
US11783027B2 (en) Systems and methods for managing state
US20210192493A1 (en) Method and system for implementing a virtual smart card service
Lee et al. A study on a secure USB mechanism that prevents the exposure of authentication information for smart human care services
RU2817533C1 (en) Method and system for unidirectional data transmission between computing devices
KR20070055794A (en) Password converting certification media for managing password securely for distributed web services and password certificating method using the same
US11921875B1 (en) Zero trust system and method for securing data
CN113761599A (en) Solid state disk encryption method and device, readable storage medium and electronic equipment