RU2566253C1 - Data block processing method - Google Patents
Data block processing method Download PDFInfo
- Publication number
- RU2566253C1 RU2566253C1 RU2014123493/08A RU2014123493A RU2566253C1 RU 2566253 C1 RU2566253 C1 RU 2566253C1 RU 2014123493/08 A RU2014123493/08 A RU 2014123493/08A RU 2014123493 A RU2014123493 A RU 2014123493A RU 2566253 C1 RU2566253 C1 RU 2566253C1
- Authority
- RU
- Russia
- Prior art keywords
- data block
- cryptographic
- gos
- hypervisor
- operating system
- Prior art date
Links
Abstract
Description
Изобретение относится к области вычислительной техники и может найти применение при обработке данных в виртуальной вычислительной среде.The invention relates to the field of computer technology and may find application in processing data in a virtual computing environment.
Известен способ обработки данных, включающий создание документа и его шифрование в операционной системе компьютера (Б. Шнайер "Прикладная криптография. Протоколы, алгоритмы, исходные тексты на языке Си", издательство "Триумф", 2002 г., с. 8).There is a method of data processing, including the creation of a document and its encryption in the computer operating system (B. Schneier "Applied Cryptography. Protocols, Algorithms, C Source Texts", Triumph Publishing House, 2002, p. 8).
Недостаток такого способа заключается в том, что конфиденциальность шифруемого документа может быть нарушена вредоносными программами.The disadvantage of this method is that the privacy of the encrypted document can be compromised by malware.
Известен способ обработки данных гостевой операционной системой компьютера, управляемой гипервизором (RU 2412468 C2, 20.02.2011 г.).A known method of processing data by a guest operating system of a computer controlled by a hypervisor (RU 2412468 C2, 02.20.2011).
Использование гипервизора позволяет обеспечить защиту от вирусных кибератак только корневой операционной системы. При этом вредоносное программное обеспечение, внедряемое в гостевую операционную систему в результате вирусных кибератак, может негативно влиять на работу гостевой операционной системы, вследствие чего конфиденциальность обрабатываемого блока данных может быть нарушена.Using a hypervisor allows you to provide protection against viral cyber attacks only on the root operating system. In this case, malicious software introduced into the guest operating system as a result of virus cyber attacks can adversely affect the operation of the guest operating system, as a result of which the confidentiality of the processed data block may be compromised.
Задача, на решение которой направлено предлагаемое изобретение, заключается в повышении безопасности обработки блока данных за счет предотвращения несанкционированного доступа в процессе криптографической обработки этого блока.The problem to which the invention is directed, is to increase the security of processing a data block by preventing unauthorized access during cryptographic processing of this block.
Для решения этой задачи, в отличие от известного способа обработки блока данных, включающего остановку гипервизором работы гостевой операционной системы при наступлении события перехвата и обработку события перехвата по заданной программе внешним монитором виртуальной машины, в предлагаемом способе гипервизор останавливает работу гостевой операционной системы при выполнении безусловно перехватываемой инструкции, формируемой криптопровайдером криптографической подсистемы гостевой операционной системы и инициируемой обращением прикладного программного обеспечения к криптографической подсистеме, затем гипервизор дает команду внешнему монитору виртуальной машины на выполнение криптографической операции шифрования блока данных, по этой команде внешний монитор виртуальной машины через внешнее устройство запрашивает код доступа к криптографическим ключам и при соответствии кода доступа загружает криптографические ключи в память, загружает в память шифруемый блок данных и отображает его на внешнем устройстве, а после подтверждения с внешнего устройства корректности этого блока данных осуществляет его шифрование с использованием загруженных в память криптографических ключей, затем внешний монитор виртуальной машины возвращает зашифрованную информацию в гостевую операционную систему, после чего гипервизор возобновляет работу гостевой операционной системы.To solve this problem, in contrast to the known method of processing a data block, which includes the hypervisor stopping the guest operating system when an interception event occurs and processing the interception event for a given program by an external virtual machine monitor, in the proposed method, the hypervisor stops the guest operating system when unconditionally intercepted instructions generated by the cryptographic provider of the cryptographic subsystem of the guest operating system and initiated by the appeal application software to the cryptographic subsystem, then the hypervisor gives the command to the external monitor of the virtual machine to perform the cryptographic operation of encrypting the data block, by this command the external monitor of the virtual machine requests the access code for the cryptographic keys through the external device and, if the access code matches, loads the cryptographic keys into memory, loads an encrypted data block into memory and displays it on an external device, and after confirmation from an external device ktnosti this data block performs its encryption using cryptographic keys loaded into memory, then external monitor virtual machine returns the encrypted information to the guest operating system, hypervisor and then restarts the guest operating system.
Выполнение криптографических операций при остановленной работе гостевой операционной системы позволяет исключить влияние вредоносных программ, присутствующих в гостевой операционной системе, на процесс осуществления криптографических операций, исключить несанкционированный доступ к криптографическим ключам в процессе их передачи в криптографическую подсистему, а также исключить некорректность шифруемого блока данных перед выполнением криптографических операций.Performing cryptographic operations when the guest operating system is stopped allows eliminating the influence of malicious programs present in the guest operating system on the cryptographic operations, eliminating unauthorized access to cryptographic keys during their transfer to the cryptographic subsystem, and also eliminating the incorrectness of the encrypted data block before execution cryptographic operations.
Сущность предлагаемого изобретения поясняется графическими материалами, где фиг. 1 - структурная схема, представляющая компьютерную систему, обеспечивающую передачу обработки события перехвата внешнему монитору виртуальных машин.The essence of the invention is illustrated by graphic materials, where FIG. 1 is a block diagram representing a computer system for transmitting the processing of an interception event to an external virtual machine monitor.
На структурной схеме фиг. 1 представлены гипервизор 1 с внешним монитором 2 виртуальной машины 3. Гипервизор 1 управляет гостевой операционной системой (ГОС) 4, которая содержит прикладное программное обеспечение (ППО) 5, криптографическую подсистему 6 с криптопровайдером 7 и модулем шифрования 8. В качестве ГОС 4 используется Windows 7. Под криптопровайдером 7 понимается дополнительный криптопровайдер по отношению к стандартным криптопровайдерам, используемым в ГОС 4. В качестве ППО 5 могут быть использованы MS Office Word, Excel, Power Point и др. Внешний монитор 2 содержит ядро 9, управляющее блоком шифрования 10 и криптографической подсистемой 11. Связь ядра 9 с виртуальной машиной 3 осуществляется через модуль доступа 12, а с системной шиной 13 - через драйвер 14 внешнего устройства, драйвер 15 периферийного ввода и драйвер 16 периферийного вывода. Системная шина 13, драйверы 14, 15 и16 обеспечивают взаимосвязь ядра 9 с устройством ввода 17, устройством вывода 18 и с внешним носителем 19, содержащим криптографические ключи.In the block diagram of FIG. 1 shows hypervisor 1 with an external monitor 2 of virtual machine 3. Hypervisor 1 controls the guest operating system (GOS) 4, which contains application software (POS) 5, cryptographic subsystem 6 with cryptographic provider 7 and encryption module 8. Windows is used as GOS 4 7. Cryptographic provider 7 is understood as an additional cryptographic provider with respect to the standard cryptographic providers used in GOS 4. As Office 5, MS Office Word, Excel, Power Point, etc. can be used. External monitor 2 contains a core 9, managing The present encryption block 10 and encryption subsystem 11. Communications core 9 with the virtual machine 3 via the access module 12 and the system bus 13 - 14 through the driver of the external device driver 15 of peripheral input and output peripheral driver 16. The system bus 13, drivers 14, 15 and 16 provide the relationship of the core 9 with the input device 17, the output device 18 and with an external medium 19 containing cryptographic keys.
Для реализации предлагаемого способа может быть использован процессор Intel IA-32 с поддержкой технологии аппаратной виртуализации VT-x. Вначале пользователь загружает гипервизор 1 с внешним монитором 2. После загрузки гипервизора 1 он запускает виртуальную машину 3 с гостевой операционной системой 4. В ГОС 4 пользователь создает конфиденциальный документ. Для обеспечения конфиденциальности этого документа пользователь инициирует обращение прикладной программы 5 к криптографической подсистеме 6 ГОС 4. На основании этого обращения криптографическая подсистема 6 дает команду криптопровайдеру 7 на формирование данных (структур в памяти RAM и значения регистров CPU) для связи с внешним монитором 2 и на выполнение безусловно перехватываемой инструкции. При выполнении этой инструкции гипервизор 1 останавливает работу ГОС 4 и передает управление внешнему монитору 2. Внешний монитор 2 осуществляет управление обработкой перехвата посредством ядра 9. После получения управления от гипервизора 1 ядро 9 дает команду модулю доступа 12 на считывание блока данных из криптопровайдера 7. Затем с помощью драйвера 16 периферийного вывода выводит полученный блок данных на периферийное устройство вывода 18, например LCD-монитор. После получения подтверждения о целостности от пользователя с внешнего устройства ввода 17, например клавиатуры, через драйвер 15 периферийного ввода ядро 9 передает блок данных в криптографическую подсистему 11, которая запрашивает код доступа к криптографическим ключам у пользователя, находящимся на внешнем носителе 19. По команде ядра 9 драйвер 16 периферийного вывода выводит запрос кода доступа на LCD-монитор и считывает код введенный пользователем через клавиатуру 17. При корректности кода доступа ядро 9 дает команду на получение ключей криптографической подсистемой 11 с внешнего носителя 19. Затем ядро дает команду блоку шифрования 10 на шифрование блока данных. После шифрования блок данных передается модулю доступа 12, который передает их криптопровайдеру 7, что является событием перехвата для гипервизора 1. На основании этого события гипервизор 1 возобновляет работу ГОС 4.To implement the proposed method, an Intel IA-32 processor with support for VT-x hardware virtualization technology can be used. First, the user downloads the hypervisor 1 with an external monitor 2. After loading the hypervisor 1, it starts the virtual machine 3 with the guest operating system 4. In GOS 4, the user creates a confidential document. To ensure the confidentiality of this document, the user initiates a call from the application program 5 to the cryptographic subsystem 6 of the CRP 4. Based on this call, the cryptographic subsystem 6 instructs the cryptographic provider 7 to generate data (structures in RAM memory and CPU register values) for communication with external monitor 2 and execution of an unconditionally intercepted instruction. When executing this instruction, hypervisor 1 stops the operation of GOS 4 and transfers control to external monitor 2. External monitor 2 controls the processing of interception by means of core 9. After receiving control from hypervisor 1, core 9 instructs access module 12 to read the data block from cryptographic provider 7. Then using the driver 16 peripheral output displays the resulting data block to the peripheral output device 18, for example, an LCD monitor. After receiving a confirmation of the integrity from the user from an external input device 17, for example, a keyboard, through the peripheral input driver 15, the kernel 9 transmits a data block to the cryptographic subsystem 11, which requests an access code for cryptographic keys from a user located on an external medium 19. At the command of the kernel 9, the peripheral output driver 16 displays an access code request to the LCD monitor and reads the code entered by the user through the keyboard 17. If the access code is correct, the kernel 9 gives the command to receive the keys iptographic subsystem 11 from an external medium 19. Then, the kernel instructs the encryption block 10 to encrypt the data block. After encryption, the data block is transmitted to access module 12, which transmits them to the cryptographic provider 7, which is an interception event for hypervisor 1. Based on this event, hypervisor 1 resumes operation of GOS 4.
Claims (1)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2014123493/08A RU2566253C1 (en) | 2014-06-09 | 2014-06-09 | Data block processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2014123493/08A RU2566253C1 (en) | 2014-06-09 | 2014-06-09 | Data block processing method |
Publications (1)
Publication Number | Publication Date |
---|---|
RU2566253C1 true RU2566253C1 (en) | 2015-10-20 |
Family
ID=54327679
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2014123493/08A RU2566253C1 (en) | 2014-06-09 | 2014-06-09 | Data block processing method |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2566253C1 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2406128C2 (en) * | 2004-12-30 | 2010-12-10 | Майкрософт Корпорейшн | System and method of virtualising graphic subsystems |
RU2412468C2 (en) * | 2005-03-11 | 2011-02-20 | Майкрософт Корпорейшн | Systems and methods for multilevel processing of interceptions in virtual machine environment |
US8607013B2 (en) * | 2007-10-30 | 2013-12-10 | Vmware, Inc. | Providing VMM access to guest virtual memory |
-
2014
- 2014-06-09 RU RU2014123493/08A patent/RU2566253C1/en active IP Right Revival
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2406128C2 (en) * | 2004-12-30 | 2010-12-10 | Майкрософт Корпорейшн | System and method of virtualising graphic subsystems |
RU2412468C2 (en) * | 2005-03-11 | 2011-02-20 | Майкрософт Корпорейшн | Systems and methods for multilevel processing of interceptions in virtual machine environment |
US8607013B2 (en) * | 2007-10-30 | 2013-12-10 | Vmware, Inc. | Providing VMM access to guest virtual memory |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3792805B1 (en) | Data transmission with obfuscation for a data processing (dp) accelerator | |
US10366237B2 (en) | Providing a trusted execution environment using a processor | |
US9690947B2 (en) | Processing a guest event in a hypervisor-controlled system | |
EP3242241B1 (en) | Information assurance system for secure program execution | |
JP6055561B2 (en) | A starting point of trust for measuring virtual machines | |
US20180165224A1 (en) | Secure encrypted virtualization | |
US10810138B2 (en) | Enhanced storage encryption with total memory encryption (TME) and multi-key total memory encryption (MKTME) | |
US10536274B2 (en) | Cryptographic protection for trusted operating systems | |
JP6556864B2 (en) | System and method for verifying integrity of electronic device | |
US10691627B2 (en) | Avoiding redundant memory encryption in a cryptographic protection system | |
CN105389513A (en) | Trusted execution method and apparatus for virtual trusted platform module (vTPM) | |
CN103177212B (en) | A kind of computer security input system based on light weight monitor of virtual machine and method | |
JP2018511956A (en) | Technology to enhance data encryption using secure enclaves | |
US10250595B2 (en) | Embedded trusted network security perimeter in computing systems based on ARM processors | |
US9734325B1 (en) | Hypervisor-based binding of data to cloud environment for improved security | |
Cheng et al. | Virtualization based password protection against malware in untrusted operating systems | |
US11954234B2 (en) | System and method for protecting browser data | |
RU2566253C1 (en) | Data block processing method | |
KR102565414B1 (en) | Data transmission with obfuscation using an obfuscation unit for a data processing(dp) accelerator | |
Zhang et al. | Enabling trusted data-intensive execution in cloud computing | |
US11960737B2 (en) | Self-deploying encrypted hard disk, deployment method thereof, self-deploying encrypted hard disk system and boot method thereof | |
US20240089259A1 (en) | Remote authorization control system, resource access apparatus, authentication apparatus, remote authorization control method and program | |
Biedermann et al. | Systemwall: An isolated firewall using hardware-based memory introspection | |
Zegzhda et al. | Ensuring Secure Data Input/Output Operations for SGX ENCLAVE | |
Frenn | Towards a Trustworthy Thin Terminal for Securing Enterprise Networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | The patent is invalid due to non-payment of fees |
Effective date: 20180610 |
|
NF4A | Reinstatement of patent |
Effective date: 20200420 |
|
MM4A | The patent is invalid due to non-payment of fees |
Effective date: 20210610 |
|
NF4A | Reinstatement of patent |
Effective date: 20220425 |