[go: up one dir, main page]

KR101429434B1 - Apparatus and method improving trustworthiness of virtual machine execution environment in cloud computing - Google Patents

Apparatus and method improving trustworthiness of virtual machine execution environment in cloud computing Download PDF

Info

Publication number
KR101429434B1
KR101429434B1 KR1020130026746A KR20130026746A KR101429434B1 KR 101429434 B1 KR101429434 B1 KR 101429434B1 KR 1020130026746 A KR1020130026746 A KR 1020130026746A KR 20130026746 A KR20130026746 A KR 20130026746A KR 101429434 B1 KR101429434 B1 KR 101429434B1
Authority
KR
South Korea
Prior art keywords
virtual machine
domain
kernel image
hash value
authentication
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
KR1020130026746A
Other languages
Korean (ko)
Inventor
맹승렬
최재원
진성욱
Original Assignee
한국과학기술원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국과학기술원 filed Critical 한국과학기술원
Priority to KR1020130026746A priority Critical patent/KR101429434B1/en
Application granted granted Critical
Publication of KR101429434B1 publication Critical patent/KR101429434B1/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45587Isolation or security of virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명은 클라우드 컴퓨팅 환경에서의 사용자 가상 머신 장치에 관한 것으로서 가상 머신을 생성하고 관리하는 관리 도메인, 상기 가상 머신을 인증하기 위한 인증 데이터를 저장하는 인증 디바이스, 상기 가상 머신을 실행하기 위한 가상 플랫폼이며, 상기 인증 디바이스를 격리시키는 하이퍼바이저, 및 상기 인증 디바이스에 전용 접근하는 독립 도메인을 포함함으로써, 신뢰성이 향상된 클라우드 서비스를 제공할 수 있다.The present invention relates to a user virtual machine apparatus in a cloud computing environment, and more particularly, to a virtual machine apparatus for managing a virtual machine in a cloud computing environment, the virtual machine apparatus comprising: a management domain for creating and managing a virtual machine; an authentication device for storing authentication data for authenticating the virtual machine; , A hypervisor that isolates the authentication device, and an independent domain that accesses the authentication device exclusively, thereby providing a cloud service with improved reliability.

Description

클라우드 컴퓨팅 환경에서 사용자 가상 머신 실행환경의 신뢰성 향상 장치 및 방법 {APPARATUS AND METHOD IMPROVING TRUSTWORTHINESS OF VIRTUAL MACHINE EXECUTION ENVIRONMENT IN CLOUD COMPUTING}[0001] APPARATUS AND METHOD IMPROVING TRUSTWORTHINESS OF VIRTUAL MACHINE [0002] TECHNICAL FIELD [0001] The present invention relates to an apparatus and method for enhancing reliability of a user virtual machine execution environment in a cloud computing environment,

본 발명은 사용자 가상 머신 장치에 관한 것으로서, 보다 상세하게는 독립된 독립 도메인을 이용하여 가상 머신을 인증함으로써, 관리 도메인이 악의적일지라도 가상 머신의 신뢰성을 보장해줄 수 있는 장치에 관한 것이다.The present invention relates to a user virtual machine device, and more particularly, to an apparatus capable of authenticating a virtual machine using an independent independent domain, thereby assuring the reliability of a virtual machine even if the management domain is malicious.

클라우드 컴퓨팅은 컴퓨팅 자원을 효율적으로 관리 및 활용하여 비용을 절감할 수 있는 컴퓨팅 모델로써 최근 많은 관심을 받고 있다. 클라우드 서비스 제공자(Cloud Service Provider, CSP)는 컴퓨팅 자원을 관리하여 클라우드 사용자(Cloud Customer)의 요구에 따라 자원을 배분하고, 클라우드 사용자는 자원을 필요에 따라 클라우드 서비스 제공에게 요청함으로써 실제 물리적 컴퓨팅 환경을 구축할 필요 없이 원하는 만큼의 컴퓨팅 자원을 사용하고, 사용량에 따라 클라우드 제공자에게 비용을 지불하게 된다. 클라우드 컴퓨팅은 제공하는 서비스에 따라 여러 가지 모델로 구분할 수 있는데, 그 중 사용자에게 가상 머신 단위로 서비스를 제공하는 IaaS (Infrastructure as a Service) 모델에서 사용자는 클라우드 서비스 제공자가 제공하는 가상 머신을 자신의 물리적 머신과 같이 사용하게 된다. 클라우드 서비스 제공자는 클라우드 사용자에게 가상 머신을 제공하기 위해 가상화(Virtualization)라는 기술을 통하여 서비스를 제공한다. 가상화는 하나의 물리적 머신의 자원을 관리하여 여러 개의 가상 머신이 공유할 수 있도록 제어하는 기술이며, 주로 하이퍼바이저(Hypervisor)와 관리 도메인(Management domain)으로 구성된다. 하이퍼바이저는 CPU와 메모리를 관리하며, 관리 도메인은 나머지 모든 하드웨어 장치를 가상 머신이 공유할 수 있도록 제어하는 역할을 한다. Cloud computing is a computing model that can reduce costs by efficiently managing and utilizing computing resources. A cloud service provider (CSP) manages computing resources to distribute resources according to the needs of the cloud customer. Cloud users request the cloud service provider as needed to provide the actual physical computing environment We use as much computing resources as we want without having to build, and we pay the cloud provider based on usage. Cloud computing can be divided into several models according to the services provided. Among them, in the Infrastructure as a Service (IaaS) model, which provides services to the users in units of virtual machines, the users can set the virtual machines provided by the cloud service providers as their own It is used with the physical machine. Cloud service providers provide services through a technology called virtualization to provide virtual machines to cloud users. Virtualization is a technology that manages resources of one physical machine and controls the sharing of multiple virtual machines. It mainly consists of a hypervisor and a management domain. The hypervisor manages CPU and memory, and the management domain controls all other hardware devices to be shared by virtual machines.

본 발명이 해결하고자 하는 첫 번째 과제는 관리 도메인과 독립된 독립 도메인을 이용하여 가상 머신을 인증함으로써, 가상 머신의 신뢰성을 향상시키는 사용자 가상 머신 장치를 제공하는 것이다.The first problem to be solved by the present invention is to provide a user virtual machine device that improves the reliability of a virtual machine by authenticating a virtual machine using an independent domain independent of a management domain.

본 발명이 해결하고자 하는 두 번째 과제는 관리 도메인과 독립된 독립 도메인을 이용하여 가상 머신을 인증함으로써, 가상 머신의 신뢰성을 향상시키는 사용자 가상 머신 시스템을 제공하는 것이다.A second object of the present invention is to provide a user virtual machine system that improves the reliability of a virtual machine by authenticating the virtual machine using an independent domain independent of the management domain.

본 발명이 해결하고자 하는 세 번째 과제는 관리 도메인과 독립된 독립 도메인을 이용하여 가상 머신을 인증함으로써, 가상 머신의 신뢰성을 향상시키는 사용자 가상 머신의 신뢰성을 향상시키는 방법을 제공하는 것이다.A third problem to be solved by the present invention is to provide a method for improving the reliability of a user virtual machine that improves the reliability of a virtual machine by authenticating the virtual machine using an independent domain independent of the management domain.

본 발명은 상기 첫 번째 과제를 해결하기 위하여, 클라우드 컴퓨팅 환경에서의 사용자 가상 머신 장치에 있어서, 가상 머신을 생성하고 관리하는 관리 도메인; 상기 가상 머신을 인증하기 위한 인증 데이터를 저장하는 인증 디바이스; 상기 가상 머신을 실행하기 위한 가상 플랫폼이며, 상기 인증 디바이스를 격리시키는 하이퍼바이저; 및 상기 인증 디바이스에 전용 접근하는 독립 도메인을 포함하는 장치를 제공한다.In order to solve the first problem, the present invention provides a user virtual machine apparatus in a cloud computing environment, comprising: a management domain for creating and managing a virtual machine; An authentication device for storing authentication data for authenticating the virtual machine; A virtual platform for executing the virtual machine, the hypervisor isolating the authentication device; And an independent domain that accesses the authentication device only.

본 발명의 일 실시예에 따르면, 상기 인증 디바이스는 영구적으로 데이터를 저장하고 암호 연산들을 지원하는 하드웨어 디바이스이거나, 영구적으로 데이터를 저장하는 PCI 디바이스인 것을 특징으로 하는 장치일 수 있고, 상기 하이퍼바이저는, 입출력 메모리 관리장치(IOMMU)의 입출력 페이지 테이블을 이용하여 상기 독립 도메인만 상기 인증 디바이스에 접근할 수 있도록 하는 것을 특징으로 하는 장치일 수 있다.According to one embodiment of the present invention, the authentication device may be a hardware device that permanently stores data and supports cryptographic operations, or may be a device that permanently stores data, wherein the hypervisor , And allows only the independent domain to access the authentication device using the input / output page table of the input / output memory management device (IOMMU).

본 발명의 다른 실시예에 따르면, 상기 하이퍼바이저는, 상기 관리 도메인으로부터 수신한 상기 독립 도메인의 커널 이미지로부터 생성한 제 1 해시 값과 상기 하이퍼바이저가 저장하고 있는 상기 독립 도메인의 커널 이미지의 제 2 해시 값을 비교하고, 상기 제 1 해시 값과 제 2 해시 값이 일치하는 경우, 상기 관리 도메인으로부터 수신한 독립 도메인의 커널 이미지를 상기 독립 도메인에 로드함으로써 상기 독립 도메인을 실행시키는 장치일 수 있다.According to another embodiment of the present invention, the hypervisor further includes a first hash value generated from a kernel image of the independent domain received from the management domain, and a second hash value of a kernel image of the independent domain stored in the hypervisor, And may execute the independent domain by loading the kernel image of the independent domain received from the management domain into the independent domain if the first hash value and the second hash value match.

본 발명의 다른 실시예에 따르면, 상기 독립 도메인은 상기 가상 머신의 인증을 위해 인증기관과 통신하는 인증 프로토콜을 포함할 수 있고, 상기 관리 도메인은, 사용자로부터 무작위 난수인 난스(nonce)를 포함하는 가상 머신 생성 요청을 수신하면, 상기 가상 머신을 생성할 노드를 선택하고, 상기 가상 머신 생성을 위한 상기 가상 머신의 커널 이미지를 복사하여 상기 난스와 함께 상기 선택된 노드에 전송하며, 상기 인증 프로토콜은, 상기 난스, 상기 가상 머신의 커널 이미지의 해시 값, 및 시큐어셀 호스트 키(ssh host key)를 상기 노드의 등록시 생성한 키를 이용하여 서명한 후, 상기 가상 머신을 인증하기 위하여 인증기관에 전송하고, 상기 가상 머신은, 상기 가상 머신의 커널 이미지의 해시 값이 상기 인증기관이 저장하고 있는 가상 머신의 커널 이미지 해시 값 리스트 중 하나와 일치하는 경우 인증되는 것을 특징으로 하는 장치일 수 있다.According to another embodiment of the present invention, the independent domain may include an authentication protocol for communicating with a certification authority for authentication of the virtual machine, the management domain including a nonce, which is a random number from the user And a copying unit for copying a kernel image of the virtual machine for creation of the virtual machine and transmitting the copied image to the selected node together with the nonce when receiving the virtual machine creation request, The hash value of the kernel image of the virtual machine and the key generated at the time of registration of the node and the secure cell host key (ssh host key) are transmitted to the certification authority to authenticate the virtual machine Wherein the hash value of the kernel image of the virtual machine is the kernel of the virtual machine stored in the certification authority When not match any of the hash value list it may be characterized in that the authentication device.

본 발명은 상기 두 번째 과제를 해결하기 위하여, 클라우드 컴퓨팅 환경에서의 사용자 가상 머신 시스템에 있어서, 가상 머신을 생성하고 관리하는 관리 도메인; 상기 가상 머신을 인증하기 위한 인증 데이터를 저장하는 인증 디바이스; 상기 가상 머신을 실행하기 위한 가상 플랫폼이며, 상기 인증 디바이스를 격리시키는 하이퍼바이저; 상기 인증 디바이스에 전용 접근하고, 상기 가상 머신의 인증을 위해 인증기관과 통신하는 인증 프로토콜을 포함하는 독립 도메인; 및 상기 인증 프로토콜과 통신을 통해 수신한 상기 가상 머신의 커널 이미지의 해시 값을 이용하여 상기 가상 머신을 인증하는 인증기관을 포함하는 시스템을 제공한다.To solve the second problem, the present invention provides a user virtual machine system in a cloud computing environment, comprising: a management domain for creating and managing a virtual machine; An authentication device for storing authentication data for authenticating the virtual machine; A virtual platform for executing the virtual machine, the hypervisor isolating the authentication device; An independent domain comprising an authentication protocol that accesses the authentication device only and communicates with a certificate authority for authentication of the virtual machine; And an authentication authority for authenticating the virtual machine using a hash value of a kernel image of the virtual machine received through communication with the authentication protocol.

본 발명은 상기 세 번째 과제를 해결하기 위하여, 클라우드 컴퓨팅 환경에서의 사용자 가상 머신의 신뢰성 향상 방법에 있어서, 관리 도메인의 디스크 드라이버를 이용하여 관리 도메인의 메모리에 상기 독립 도메인의 커널 이미지를 저장하는 단계; 상기 관리 도메인이 저장하고 있는 상기 독립 도메인의 커널 이미지를 하이퍼바이저로 전달하는 단계; 상기 하이퍼바이저는 상기 관리 도메인으로부터 수신한 상기 독립 도메인의 커널 이미지로부터 생성한 제 1 해시 값과 상기 하이퍼바이저가 저장하고 있는 상기 독립 도메인의 커널 이미지의 제 2 해시 값과 일치하는지 판단하는 단계; 상기 판단결과, 상기 제 1 해시 값과 제 2 해시 값이 일치하는 경우, 상기 하이퍼바이저가 상기 관리 도메인으로부터 수신한 상기 독립 도메인의 커널 이미지를 상기 독립 도메인에 로드함으로써 상기 독립 도메인을 실행시키는 단계를 포함하고, 상기 독립 도메인은 상기 가상 머신을 인증하기 위한 인증 데이터를 저장하는 인증 디바이스를 전용 접근하는 것을 특징으로 하는 방법을 제공한다.A third aspect of the present invention is a method for improving reliability of a user virtual machine in a cloud computing environment, the method comprising: storing a kernel image of the independent domain in a memory of a management domain using a disk driver of the management domain; ; Transferring a kernel image of the independent domain stored in the management domain to a hypervisor; Determining whether a first hash value generated from a kernel image of the independent domain received from the management domain matches a second hash value of a kernel image of the independent domain stored in the hypervisor; Executing the independent domain by loading the kernel image of the independent domain received from the management domain into the independent domain if the first hash value matches the second hash value as a result of the determination; Wherein the independent domain accesses only an authentication device that stores authentication data for authenticating the virtual machine.

본 발명에 따르면, 하드웨어를 가상 머신이 공유할 수 있도록 제어하는 관리 도메인으로부터 독립된 도메인과 디바이스를 사용하여, 독립된 도메인에서 관리 도메인을 거치지 않고 디바이스를 직접 접근함으로써 인증기관의 인증서를 안전하게 접근할 수 있다. 따라서 악의적인 관리자는 독립된 도메인이 하드웨어 디바이스로부터 읽으려는 데이터에 대한 접근을 하지 못함으로써 프로토콜이 안전하게 수행할 수 있도록 보장할 수 있다. 이를 통해 클라우드 사용자의 가상 머신은 관리 도메인으로부터 메모리를 보호하는 신뢰성 하이퍼바이저에서만 수행할 수 있도록 보장한다. 또한 독립된 도메인을 사용하여 관리 도메인을 통하지 않고 하드웨어를 접근함으로써 클라우드 서비스 제공자는 서비스 측면에서 보았을 때 사용자에게 더욱 높은 신뢰성 서비스를 제공하기 위해 데이터 보호에 필요한 키를 안전하게 저장하고 사용할 수 있다. 나아가, 클라우드 사용자는 클라우드 서비스 제공자를 더욱 신뢰하여 사용할 수 있고, 클라우드 서비스 제공자 역시 신뢰성 있는 서비스를 제공함으로써 클라우드 컴퓨팅의 확산에 일조할 수 있다.According to the present invention, a certificate of a certification authority can be securely accessed by directly accessing a device without going through a management domain in an independent domain, using a domain and a device independent of the management domain, which controls hardware to be shared by a virtual machine . Thus, malicious administrators can ensure that the protocol can be safely performed by an independent domain that does not have access to the data that is to be read from the hardware device. This ensures that the virtual machine of the cloud user can only be performed by a reliability hypervisor that protects memory from the management domain. In addition, by using independent domains and accessing the hardware without going through the management domain, cloud service providers can securely store and use the keys necessary for data protection in order to provide higher reliability services to users in terms of services. Furthermore, cloud users can trust cloud service providers more and more, and cloud service providers can also contribute to the spread of cloud computing by providing reliable services.

도 1은 본 발명의 일 실시예에 따른 사용자 가상 머신 장치의 블록도이다.
도 2는 본 발명의 일 실시예에 따른 사용자 가상 머신 시스템의 블록도이다.
도 3 내지 4는 본 발명의 실시예에 따른 사용자 가상 머신 장치이다.
도 5는 본 발명의 실시예에 따른 사용자 가상 머신 장치의 독립 도메인을 실행시키는 것을 도시한 것이다.
도 6은 본 발명의 실시예에 따른 사용자 가상 머신 장치의 가상 머신을 인증하는 방법을 도시한 것이다.
도 7은 본 발명의 일 실시예에 따른 사용자 가상 머신의 신뢰성을 향상시키는 방법의 흐름도이다.
도 8은 본 발명의 실시예에 따른 사용자 가상 머신의 신뢰성을 향상시키는 방법의 흐름도이다.
1 is a block diagram of a user virtual machine apparatus according to an embodiment of the present invention.
2 is a block diagram of a user virtual machine system in accordance with an embodiment of the present invention.
3 to 4 are user virtual machine devices according to an embodiment of the present invention.
5 illustrates running an independent domain of a user virtual machine device in accordance with an embodiment of the present invention.
Figure 6 illustrates a method for authenticating a virtual machine of a user virtual machine device in accordance with an embodiment of the present invention.
7 is a flowchart of a method for improving the reliability of a user virtual machine in accordance with an embodiment of the present invention.
8 is a flowchart of a method for improving the reliability of a user virtual machine according to an embodiment of the present invention.

본 발명에 관한 구체적인 내용의 설명에 앞서 이해의 편의를 위해 본 발명이 해결하고자 하는 과제의 해결 방안의 개요 혹은 기술적 사상의 핵심을 우선 제시한다.Prior to the description of the concrete contents of the present invention, for the sake of understanding, the outline of the solution of the problem to be solved by the present invention or the core of the technical idea is first given.

본 발명의 일 실시예에 따른 클라우드 컴퓨팅 환경에서의 사용자 가상 머신 장치는 가상 머신을 생성하고 관리하는 관리 도메인, 상기 가상 머신을 인증하기 위한 인증 데이터를 저장하는 인증 디바이스, 상기 가상 머신을 실행하기 위한 가상 플랫폼이며, 상기 인증 디바이스를 격리시키는 하이퍼바이저, 및 상기 인증 디바이스에 전용 접근하는 독립 도메인을 포함한다.A user virtual machine device in a cloud computing environment according to an embodiment of the present invention includes a management domain for creating and managing a virtual machine, an authentication device for storing authentication data for authenticating the virtual machine, A virtual platform, a hypervisor for isolating the authentication device, and an independent domain for exclusive access to the authentication device.

이하 첨부된 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있는 실시 예를 상세히 설명한다. 그러나 이들 실시예는 본 발명을 보다 구체적으로 설명하기 위한 것으로, 본 발명의 범위가 이에 의하여 제한되지 않는다는 것은 당업계의 통상의 지식을 가진 자에게 자명할 것이다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. It will be apparent to those skilled in the art, however, that these examples are provided to further illustrate the present invention, and the scope of the present invention is not limited thereto.

본 발명이 해결하고자 하는 과제의 해결 방안을 명확하게 하기 위한 발명의 구성을 본 발명의 바람직한 실시예에 근거하여 첨부 도면을 참조하여 상세히 설명하되, 당해 도면에 대한 설명시 필요한 경우 다른 도면의 구성요소를 인용할 수 있음을 미리 밝혀둔다. 아울러 본 발명의 바람직한 실시 예에 대한 동작 원리를 상세하게 설명함에 있어 본 발명과 관련된 공지 기능 혹은 구성에 대한 구체적인 설명 그리고 그 이외의 제반 사항이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우, 그 상세한 설명을 생략한다.
BRIEF DESCRIPTION OF THE DRAWINGS The above and other features and advantages of the present invention will become more apparent by describing in detail preferred embodiments thereof with reference to the attached drawings in which: It is possible to quote the above. In the following detailed description of the principles of operation of the preferred embodiments of the present invention, it is to be understood that the present invention is not limited to the details of the known functions and configurations, and other matters may be unnecessarily obscured, A detailed description thereof will be omitted.

클라우드 컴퓨팅의 많은 장점에도 불구하고 가장 중요시되고 있는 문제점은 바로 클라우드 서비스 제공자의 신뢰성 문제이다. 클라우드 컴퓨팅 환경에서 모든 사용자의 데이터와 그에 대한 연산은 클라우드 사용자의 머신이 아니라 클라우드 서비스 제공자에 의해 관리되는 머신에서 처리되고 관리된다. 이러한 환경에서 클라우드 관리자는 관리 도메인을 통하여 악의적으로 시스템의 권한을 사용하여 클라우드 사용자 가상 머신의 메모리에 접근함으로써 사용자 가상 머신의 데이터를 볼 수 있다. 이를 해결하기 위해 하이퍼바이저를 수정하여 관리 도메인으로부터 사용자 가상 머신을 보호하려는 신뢰성 하이퍼바이저의 구현이 필요하다. 하지만 클라우드 컴퓨팅 환경에서 사용자 가상 머신은 클라우드 서비스 제공자가 관리하는 데이터센터의 어느 물리머신에서 실행될지 알 수 없고, 가상 머신 실행 중에도 마이그레이션을 통해 다른 물리머신으로 실행이 옮겨질 수 있다. 따라서 이러한 가상 머신 관리 연산을 제대로 제어하지 못하면 클라우드 사용자 가상 머신을 보호할 수 없게 된다. 이를 위해 제 3의 인증기관 (Certificate Authority)을 통하여 인증받은 물리머신만 사용자 가상 머신을 실행할 수 있도록 제한하는 프로토콜이 제안되었으나, 이를 실제 현재의 가상화 환경에 실현할 때 하드웨어를 관리 도메인이 직접 관리하기 때문에 프로토콜 동작에 필요한 인증기관의 인증서를 관리 도메인을 통하여 읽어와야만 한다. 따라서 이 과정에서 악의적인 관리자는 관리 도메인의 권한을 통해 하드웨어 접근을 마음대로 조정할 수 있으며, 따라서 인증기관의 인증서를 변경할 수 있다. 이러한 환경에서 더 이상 프로토콜은 안전하게 수행된다고 보장할 수 없으며 따라서 클라우드 사용자의 가상 머신을 안전하지 보호하지 못하게 된다.Despite the many advantages of cloud computing, the most important problem is reliability of cloud service providers. In a cloud computing environment, all of the user's data and computations are processed and managed on a machine managed by the cloud service provider, not the machine of the cloud user. In this environment, the cloud administrator can visibly access the data of the user virtual machine through the management domain by accessing the memory of the cloud user virtual machine by using the privilege of the system maliciously. To solve this problem, it is necessary to implement a reliability hypervisor to protect the user virtual machine from the management domain by modifying the hypervisor. However, in a cloud computing environment, the user virtual machine can not know which physical machine in the data center the cloud service provider manages, and the migration can transfer the execution to another physical machine while the virtual machine is running. Failure to properly control these virtual machine management operations will not protect the cloud user virtual machine. For this purpose, a protocol has been proposed that restricts only the physical machine authenticated through the third certificate authority to execute the user virtual machine. However, when realizing it in the current virtualization environment, the hardware is directly managed by the management domain The certificate of the certification authority required for the protocol operation must be read through the management domain. Therefore, in this process, a malicious administrator can arbitrarily adjust the hardware access through the authority of the management domain, and thus change the certificate of the certification authority. In such an environment, the protocol can no longer be guaranteed to be secure, thus preventing the cloud user's virtual machine from being securely protected.

또한 프로토콜은 인증을 하기 위해 여러 암호 함수와 라이브러리들을 요구하게 된다. 이것은 프로토콜의 코드 양을 증가시키게 되고, 결국 프로토콜 자체가 취약성을 내포하게 된다는 것을 뜻한다. 이러한 프로토콜이 시스템에서 가장 높은 권한으로 동작하는 하이퍼바이저에서 수행한다는 것은 하이퍼바이저의 복잡도를 높이게 되고 전체 시스템의 신뢰성을 떨어뜨리는 원인이 된다. 따라서 프로토콜을 하이퍼바이저에서 실행시키는 것이 아니라 보다 낮은 권한을 가진 곳에서 실행될 수 있도록 하여 시스템의 신뢰성을 향상시킬 필요가 있다.
The protocol also requires several cryptographic functions and libraries to authenticate. This increases the amount of code in the protocol, which in turn means that the protocol itself is vulnerable. Performing this protocol on the hypervisor that operates with the highest privilege in the system increases the complexity of the hypervisor and causes the reliability of the whole system to deteriorate. Therefore, it is necessary to improve the reliability of the system by allowing the protocol to be executed in a lower privilege rather than being executed in the hypervisor.

본 발명에서는 독립된 도메인을 사용하여, 관리 도메인을 사용하지 않고서도 하드웨어를 접근함으로써 악의적인 관리자가 인증기관의 인증서를 변경하지 못하도록 하고자 한다. 가상화 기술은 기본적으로 하드웨어 자원을 가상 머신이 공유할 수 있도록 제어를 하기위해 관리 도메인에서 관리하도록 한다. 따라서 관리 도메인이 모든 하드웨어 접근을 위한 디바이스 드라이버를 가지며, 하이퍼바이저는 메모리와 CPU만 관리함으로써 하이퍼바이저의 복잡도를 낮춰 신뢰성을 향상시킨다. 하지만 성능이나 보안 등의 특수한 목적으로 물리 가상 머신에 설치된 디바이스를 가상 머신 전용으로 사용할 수 있게 한다. 가상 머신이 하드웨어를 직접 접근하여 사용할 경우 다른 가상 머신과 하드웨어 장치를 공유하여 사용할 수 없는 단점이 있지만, 이를 통해 가상 머신이 하드웨어를 접근함으로써 관리 도메인을 거치지 않으므로 입출력 성능 향상과 신뢰성을 향상시킬 수 있다. 본 발명에서는 가상 머신간의 공유를 필요로 하지 않는 하드웨어를 사용하여 독립된 도메인이 직접 접근하여 사용하도록 함으로써 인증기관을 인증서를 관리 도메인을 거치지 않고 안전하게 접근하도록 한다. 따라서 악의적인 관리자는 독립된 도메인이 하드웨어 접근을 하더라도 중간에 개입할 수가 없다. 이하, 이를 구현하기 위한 본 발명의 실시예에 따른 사용자 가상 머신 장치에 대해 자세히 설명하도록 한다.
In the present invention, an independent domain is used to access the hardware without using a management domain, thereby preventing a malicious administrator from changing the certificate of the certification authority. Virtualization technology basically manages the hardware resources to be managed by the management domain so that the virtual machines can share them. Therefore, the management domain has device drivers for all hardware access, and the hypervisor manages only memory and CPU, thereby reducing the complexity of the hypervisor and improving reliability. However, a device installed in a physical virtual machine can be used exclusively for a virtual machine for special purposes such as performance or security. If a virtual machine accesses hardware directly, it can not share hardware devices with other virtual machines. However, it can improve input / output performance and reliability because virtual machines do not go through a management domain by accessing hardware . In the present invention, an independent domain directly accesses and uses the hardware using hardware that does not require sharing among virtual machines, thereby allowing the certification authority to securely access the certificate without going through the management domain. Thus, malicious administrators can not intervene in the middle of an independent domain's hardware access. Hereinafter, a user virtual machine apparatus according to an embodiment of the present invention will be described in detail.

도 1은 본 발명의 일 실시예에 따른 사용자 가상 머신 장치의 블록도이다.1 is a block diagram of a user virtual machine apparatus according to an embodiment of the present invention.

본 발명의 일 실시예에 따른 클라우드 컴퓨팅 환경에서 사용자 가상 머신 장치(100)는 관리 도메인(110), 독립 도메인(120), 하이퍼바이저(130), 및 인증 디바이스(150)로 구성된다.The user virtual machine apparatus 100 includes a management domain 110, an independent domain 120, a hypervisor 130, and an authentication device 150 in a cloud computing environment according to an exemplary embodiment of the present invention.

관리 도메인(110)은 가상 머신을 생성하고 관리한다.The management domain 110 creates and manages virtual machines.

보다 구체적으로, 관리 도메인(110)은 가상 머신을 생성하는데 필요한 각종 드라이버를 포함하고 있다. 하지만, 인증 디바이(150)스에 대한 접근 권한이 제한되는바, 악의적인 관리자가 관리 도메인(110)을 통해 사용자의 인증 디바이스(150)에 접근하는 것이 불가능하다.More specifically, the management domain 110 includes various drivers necessary for creating a virtual machine. However, since the access right to the authentication device 150 is restricted, it is impossible for the malicious administrator to access the authentication device 150 of the user through the management domain 110. [

독립 도메인(120)은 인증 디바이스(150)에 전용 접근한다.The independent domain 120 accesses the authentication device 150 exclusively.

보다 구체적으로, 관리 도메인(110)이 아닌, 관리 도메인(110)과 독립된 별도의 독립 도메인(120)을 생성하고, 인증 디바이스(150)는 오직 독립 도메인(120)을 통해서만 접근이 가능하도록 한다. 독립 도메인(120)만이 인증 디바이스(150)에 전용 접근할 수 있고, 관리 도메인(110)은 인증 디바이스(150)로의 접근이 제한된다.More specifically, the authentication device 150 creates a separate independent domain 120 independent of the management domain 110, independent of the management domain 110, and allows the authentication device 150 to access only through the independent domain 120. Only the independent domain 120 can have exclusive access to the authentication device 150 and the management domain 110 has limited access to the authentication device 150. [

인증 디바이스(150)는 상기 가상 머신을 인증하기 위한 인증 데이터를 저장한다.The authentication device 150 stores authentication data for authenticating the virtual machine.

보다 구체적으로, 인증 디바이스(150)는 인증서 저장용도로 사용된다. 인증 디바이스(150)를 인증 데이터를 저장하는데 사용하기 위하여, 인증 디바이스(150)는 영구적으로 데이터를 저장하고 암호 연산들을 지원하는 하드웨어 디바이스이거나, 영구적으로 데이터를 저장하는 PCI 디바이스일 수 있다. 인증서의 신뢰성을 높이기 위하여, 독립 도메인(120) 이외의 관리 도메인(110) 또는 다른 가상 머신의 접근을 제한하도록 하이퍼바이저(130)에 의해 격리된다. More specifically, the authentication device 150 is used for certificate storage purposes. In order to use the authentication device 150 to store authentication data, the authentication device 150 may be a hardware device that permanently stores data and supports cryptographic operations, or may be a PCI device that permanently stores data. In order to increase the reliability of the certificate, it is isolated by the hypervisor 130 to restrict access of the management domain 110 or other virtual machines other than the independent domain 120.

하이퍼바이저(130)는 상기 가상 머신을 실행하기 위한 가상 플랫폼이며, 인증 디바이스(150)를 격리시킨다.The hypervisor 130 is a virtual platform for executing the virtual machine, and isolates the authentication device 150.

보다 구체적으로, 하이퍼바이저(130)는 하나 이상의 가상 머신들이 하드웨어를 공유하며 실행되기 위한 가상 플랫폼이며, 독립 도메인(120)이 전용 접근할 수 있도록 인증 디바이스(150)를 격리시킨다. 이를 위하여, 하이퍼바이저(130)는 입출력 메모리 관리장치(IOMMU, I/O Memory Managemaent Unit)의 입출력 페이지 테이블을 이용하여 독립 도메인(120)만 상기 인증 디바이스에 접근할 수 있도록 한다. 상기 입출력 메모리 관리장치는 가상화 환경에서 안전한 DMA(Direct Memory Access)를 지원하기 위하여 사용된다. 상기 입출력 메모리 관리장치에서 사용되는 입출력 페이지 테이블을 관리하여 독립 도메인(120)만 인증 디바이스(150)에 접근할 수 있도록 하고, 관리 도메인(110)이나 다른 가상 머신에서 인증 디바이스(150)에 접근할 수 없도록 한다.More specifically, the hypervisor 130 is a virtual platform for one or more virtual machines to share and execute hardware, isolating the authentication device 150 so that the independent domain 120 can access it only. To this end, the hypervisor 130 accesses only the independent domain 120 using the input / output page table of the input / output memory management unit (IOMMU). The input / output memory management apparatus is used to support secure direct memory access (DMA) in a virtual environment. Output page management table managed by the input / output memory management apparatus so that only the independent domain 120 can access the authentication device 150 and access to the authentication device 150 in the management domain 110 or another virtual machine I can not.

독립 도메인(120) 역시 하나의 가상 머신으로써 기본적으로 관리 도메인(110)에 의해 생성되고 관리된다. 따라서, 독립 도메인(120)의 생성과정에서 관리 도메인(110)이 악의적으로 독립 도메인(120)의 커널 이미지를 변경한다면 독립 도메인(120)의 실행환경이 안전하다고 할 수 없다. 독립 도메인(120)의 커널 이미지를 관리 도메인(110)이 변경하지 못하도록 막기 위하여, 하이퍼바이저(130)가 직접 독립 도메인(120)의 커널 이미지 정보를 메모리에 저장함으로써 독립 도메인(120)의 커널 이미지를 보호할 수 있다.The independent domain 120 is also created and managed by the management domain 110 as a virtual machine. Therefore, if the administrative domain 110 maliciously changes the kernel image of the independent domain 120 during the creation of the independent domain 120, the execution environment of the independent domain 120 can not be said to be safe. In order to prevent the management domain 110 from changing the kernel image of the independent domain 120, the hypervisor 130 directly stores the kernel image information of the independent domain 120 in the memory so that the kernel image of the independent domain 120 Lt; / RTI >

이를 구현하기 위하여, 하이퍼바이저(130)는 관리 도메인(110)으로부터 수신한 독립 도메인(120)의 커널이미지로부터 제 1 해시 값을 생성한 뒤, 하이퍼바이저(130)가 저장하고 있는 독립 도메인(120)의 커널 이미지의 제 2 해시 값을 상기 제 1 해시 값과 비교하고, 상기 제 1 해시 값과 제 2 해시 값이 일치하는 경우, 관리 도메인(110)으로부터 수신한 독립 도메인(120)의 커널 이미지를 독립 도메인(120)에 로드함으로써 독립 도메인(120)을 실행시킬 수 있다.The hypervisor 130 generates a first hash value from the kernel image of the independent domain 120 received from the management domain 110 and then generates a first hash value from the kernel image of the independent domain 120 stored in the hypervisor 130 The kernel image of the independent domain 120 received from the management domain 110 when the first hash value matches the second hash value, The independent domain 120 can be executed by loading the independent domain 120 into the independent domain 120. [

일반적인 가상 머신 생성과정에서 관리 도메인(110)은 디스크 드라이버를 사용하여 하드웨어(140)로부터 생성할 가상 머신의 커널 이미지를 관리 도메인(110)의 메모리에 저장한다. 그 후 관리 도메인(110)은 직접 새로운 가상 머신의 메모리에 상기 가상 머신의 커널 이미지를 로드한다. 이 과정에서 관리 도메인(110)은 새로운 가상 머신의 커널 이미지를 변경할 수 있다. 따라서, 독립 도메인(120)은 하나의 가상 머신인바, 독립 도메인(120)를 생성함에 있어서, 독립 도메인(120)의 커널 이미지를 관리 도메인(110)으로부터 보호할 필요가 있다. 관리 도메인(110)의 디스크 드라이버를 통하여 독립 도메인(120)의 커널 이미지를 관리 도메인(110)의 메모리에 저장하는 과정은 동일하다. 그 후 관리 도메인(110)은 독립 도메인(120)의 커널 이미지를 하이퍼바이저(130)로 전달하고, 하이퍼바이저(130)는 해시 검사를 통해 상기 수신한 독립 도메인(120)의 커널 이미지의 제 1 해시 값을 산출하고, 상기 제 1 해시 값과 하이퍼바이저(130)가 저장하고 있는 제 2 해시 값이 일치하는 경우에만 상기 관리 도메인(110)으로부터 수신한 독립 도메인(120)의 커널 이미지를 독립 도메인(120)의 메모리로 로드함으로써 독립 도메인(120)을 실행시킨다. 상기 해시 검사는 독립 도메인(120)의 커널 이미지가 관리 도메인(110)에 의해 변경되었는지 확인을 하기 위해 사용하며, 이때 비교되는 제 2 해시 값은 하이퍼바이저(130)가 부팅할 때부터 가지고 있게 되고, 따라서 관리 도메인(110)은 하이퍼바이저(130)의 메모리에 저장되어 있는 제 2 해시 값을 변경할 수가 없고, 최종적으로 독립 도메인(120)의 커널 이미지 역시 변경할 수 없게 된다. 만약 악의적인 관리자가 독립 도메인(120)의 커널 이미지를 변경하였다면 하이퍼바이저(130)는 상기 해시 검사를 통해 변경을 감지할 수 있다.In the general virtual machine creation process, the management domain 110 stores the kernel image of the virtual machine to be generated from the hardware 140 in the memory of the management domain 110 using the disk driver. The management domain 110 then directly loads the kernel image of the virtual machine into the memory of the new virtual machine. In this process, the management domain 110 can change the kernel image of the new virtual machine. Therefore, in creating the independent domain 120, the independent domain 120 needs to protect the kernel image of the independent domain 120 from the management domain 110 in one virtual machine. The process of storing the kernel image of the independent domain 120 in the memory of the management domain 110 through the disk driver of the management domain 110 is the same. Thereafter, the management domain 110 transfers the kernel image of the independent domain 120 to the hypervisor 130, and the hypervisor 130 checks the hash value of the kernel image of the received independent domain 120 The kernel image of the independent domain 120 received from the management domain 110 is transferred to the independent domain 120 only when the first hash value matches the second hash value stored in the hypervisor 130, (120) by loading it into the memory of the independent domain (120). The hash check is used to check whether the kernel image of the independent domain 120 has been changed by the management domain 110. The second hash value to be compared is held when the hypervisor 130 boots The management domain 110 can not change the second hash value stored in the memory of the hypervisor 130 and finally can not change the kernel image of the independent domain 120. [ If the malicious administrator changes the kernel image of the independent domain 120, the hypervisor 130 can detect the change through the hash check.

독립 도메인(120)은 상기 가상 머신의 인증을 위해 인증기관과 통신하는 인증 프로토콜을 포함할 수 있다. 가상 머신에 대한 신뢰성을 확보하기 위하여, 외부의 인증기관을 통해 상기 가상 머신의 인증을 수행하기 위하여, 상기 인증기관과 통신하는 프로토콜을 독립 도메인(120)이 포함할 수 있다. 상기 인증 프로토콜은 하이퍼바이저(130)에 포함될 수도 있다. The independent domain 120 may include an authentication protocol in communication with a certificate authority for authentication of the virtual machine. In order to secure the reliability of the virtual machine, the independent domain 120 may include a protocol for communicating with the certification authority in order to perform authentication of the virtual machine through an external certification authority. The authentication protocol may be included in the hypervisor 130.

인증 절차를 구현하는 인증 프로토콜이 인증기관과 통신을 통해 가상 머신에 대한 인증을 수행하기 위해서는 여러 암호함수와 라이브러리들을 필요로 한다. 따라서 인증 프로토콜의 코드 사이즈가 커지고 그에 따라 취약성을 내포할 수 있게 된다. 이러한 인증 프로토콜이 시스템에서 가장 높은 권한으로 동작하는 하이퍼바이저(130)에서 동작하는 것은 시스템의 신뢰성을 떨어뜨리는 원인이 될 수 있다. 따라서, 상기 인증 프로토콜을 하이퍼바이저(130) 보다 낮은 권한으로 동작하는 독립 도메인(120)에서 수행하도록 하여 시스템의 신뢰성을 향상시킬 수 있다. 독립 도메인(120)은 하드웨어 디바이스에 악의적인 관리 도메인(110)을 거치지 않고 접근함과 동시에 인증 프로토콜도 수행할 수 있다. 독립 도메인(120)은 가상 머신의 한 종류로써 하이퍼바이저(130)가 제공해주는 가상의 플랫폼위에서 동작하게 되므로 하이퍼바이저(130) 보다 낮은 권한으로 동작하게 된다. 만약 프로토콜이 취약하게 되어 독립 도메인(120)이 제대로 동작하지 않더라도, 하이퍼바이저(130)는 이에 영향을 받지 않게 되고 따라서 클라우드 사용자의 가상 머신은 아무런 영향을 받지 않고 실행을 계속 유지할 수 있는 장점이 있다.An authentication protocol that implements the authentication procedure requires several cryptographic functions and libraries in order to authenticate to the virtual machine through communication with the certification authority. Therefore, the code size of the authentication protocol becomes large, and the vulnerability can be consequently included. Operation of the authentication protocol in the hypervisor 130 operating with the highest privilege in the system may cause the reliability of the system to deteriorate. Accordingly, the authentication protocol can be performed in the independent domain 120 operating at a lower privilege than the hypervisor 130, thereby improving the reliability of the system. The independent domain 120 may access the hardware device without going through the malicious administrative domain 110 and may also perform the authentication protocol. Since the independent domain 120 operates on a virtual platform provided by the hypervisor 130 as a kind of virtual machine, the independent domain 120 operates with a lower privilege than the hypervisor 130. Even if the independent domain 120 does not operate properly because the protocol is weakened, the hypervisor 130 is not affected thereby, and thus the virtual machine of the cloud user is advantageous in that the execution can be maintained without being affected .

관리 도메인(110)은 사용자로부터 무작위 난수인 난스(nonce)를 포함하는 가상 머신 생성 요청을 수신하면, 상기 가상 머신을 생성할 노드를 선택하고, 상기 가상 머신 생성을 위한 상기 가상 머신의 커널 이미지를 복사하여 상기 난스와 함께 상기 선택된 노드에 전송하며, 상기 인증 프로토콜은 상기 난스, 상기 가상 머신의 커널 이미지의 해시 값, 및 시큐어셀 호스트 키(ssh host key)를 상기 노드의 등록시 생성한 키를 이용하여 서명한 후, 상기 가상 머신을 인증하기 위하여 인증기관에 전송하고, 상기 가상 머신은 상기 가상 머신의 커널 이미지의 해시 값이 상기 인증기관이 저장하고 있는 가상 머신의 커널 이미지 해시 값 리스트 중 하나와 일치하는 경우 인증될 수 있다.When the management domain 110 receives a virtual machine creation request including a random number, which is a random number, from the user, the management domain 110 selects a node to create the virtual machine, and displays a kernel image of the virtual machine for creating the virtual machine The hash value of the kernel image of the virtual machine and the key generated at the time of registration of the node with the secure cell host key (ssh host key) Wherein the hash value of the kernel image of the virtual machine is one of a list of kernel image hash values of the virtual machine stored in the certification authority, If they match, they can be authenticated.

독립 도메인(120)을 생성한 후, 사용자로부터 가상 머신 생성 요청을 받는 경우, 상기 가상 머신을 인증하기 위하여 외부의 인증기관의 인증을 이용할 수 있다. 물리 머신에서 가상 머신을 생성해서 실행할 경우에는 해당 가상 머신이 안전한 물리 머신 위에서 생성되고 실행되는지 확인해야 하며, 해당 가상 머신에서 수행 중인 OS가 악의적으로 변경되지 않았다는 것을 인증해야 한다. 클라우드 사용자로부터 가상 머신 생성 요청을 수신한다. 이때, 세션 재사용 공격(Replay Attack)을 방지하기 위해 사용자는 무작위 난수인 난스(nonce)를 함께 보낼 수 있다. 클라우드 서비스 제공자는 데이터 센터의 노드 가운데 하나를 선택하여 사용자의 가상 머신 생성을 위한 상기 가상 머신의 커널 이미지를 복사하고 가상 머신 명령을 전송할 수 있다. 요청을 받은 노드는 독립 도메인(120)에서 동작하는 인증 프로토콜을 이용하여 생성할 사용자의 가상 머신의 커널 이미지의 해시 값을 산출하고, 가상 머신을 실행시킬 수 있다. 그리고 가상 머신 부팅 과정에서 시큐어셀 호스트 키(ssh host key)를 생성하게 되는데, 인증 프로토콜은 상기 난스, 상기 가상 머신의 커널 이미지의 해시 값, 상기 시큐어셀 호스트 키를 노드 등록과정에서 생성한 키를 사용하여 서명하고, 이를 인증기관에 전송할 수 있다. 인증기관은 신뢰할 수 있는 사용자 가상 머신의 커널 이미지에 대한 해시 값들을 리스트로 관리하고, 노드로부터 받은 가상 머신의 커널 이미지의 해시 값과 비교하여 일치할 경우 악의적인 관리자로부터 변경되지 않았다는 것으로 판단하고, 난스와 시큐어셀 호스트 키를 인증기관의 키를 이용하여 서명하여 사용자에게 전달할 수 있다. 최종적으로 사용자는 인증기관의 서명을 확인하고, 사용자가 전달한 난스와 일치하는지 확인 후, 인증된 가상 머신을 안전하게 사용할 수 있다. 이때 시큐어셀 호스트 키를 통하여 사용자는 자신이 사용하는 가상 머신이 신뢰성 하이퍼바이저(130) 위에서 동작하고 인증기관에 올바르게 인증받은 것임을 확인할 수 있는바, 상기 가상 머신에 대한 신뢰를 가지고 상기 가상 머신을 사용할 수 있게 된다.
If the virtual machine creation request is received from the user after creating the independent domain 120, the authentication of the external certification authority may be used to authenticate the virtual machine. If you create and run a virtual machine on a physical machine, you need to make sure that the virtual machine is created and running on a secure physical machine and that the operating system running on that virtual machine has not been maliciously altered. And receives a virtual machine creation request from the cloud user. At this time, in order to prevent a session replay attack, a user can send a random number, a nonce. The cloud service provider may select one of the nodes of the data center to copy the kernel image of the virtual machine for user's virtual machine creation and transmit the virtual machine command. The node receiving the request can calculate the hash value of the kernel image of the user's virtual machine to be created using the authentication protocol operating in the independent domain 120 and execute the virtual machine. In the virtual machine boot process, a secure host key (ssh host key) is generated. The authentication protocol includes a hash value of the kernel image of the virtual machine, a key generated in the node registration process of the secure cell host key Sign it, and send it to the certification authority. The certification authority manages the list of hash values of the kernel image of the trusted user virtual machine and compares the hash values of the kernel image of the virtual machine received from the node with the hash value of the kernel image received from the node, The unscannable secure cell host key can be signed using the key of the certification authority and delivered to the user. Finally, the user can verify the signature of the CA and confirm that it matches the nonce passed by the user, and use the authenticated virtual machine safely. At this time, the user can confirm that the virtual machine used by the user operates on the trusted hypervisor 130 and is correctly authenticated to the certification authority through the secure cell host key, so that the user can use the virtual machine with the trust of the virtual machine .

도 2는 본 발명의 일 실시예에 따른 사용자 가상 머신 시스템의 블록도이다.2 is a block diagram of a user virtual machine system in accordance with an embodiment of the present invention.

본 발명의 일 실시예에 따른 클라우드 컴퓨팅 환경에서의 사용자 가상 머신 시스템(200)은 가상 머신을 생성하고 관리하는 관리 도메인(110), 상기 가상 머신을 인증하기 위한 인증 데이터를 저장하는 인증 디바이스(150), 상기 가상 머신을 실행하기 위한 가상 플랫폼이며, 인증 디바이스(150)를 격리시키는 하이퍼바이저(130), 인증 디바이스(150)에 전용 접근하고, 상기 가상 머신의 인증을 위해 인증기관(210)과 통신하는 인증 프로토콜을 포함하는 독립 도메인(120), 및 인증 프로토콜(121)과 통신을 통해 수신한 상기 가상 머신의 커널 이미지의 해시 값을 이용하여 상기 가상 머신을 인증하는 인증기관(210)을 포함한다. A user virtual machine system 200 in a cloud computing environment according to an embodiment of the present invention includes a management domain 110 for creating and managing a virtual machine, an authentication device 150 for storing authentication data for authenticating the virtual machine A hypervisor 130 for isolating the authentication device 150, a virtual platform for executing the virtual machine, a dedicated access to the authentication device 150, a certification authority 210 for authentication of the virtual machine, And an authentication authority 210 for authenticating the virtual machine using a hash value of a kernel image of the virtual machine received via communication with the authentication protocol 121 do.

도 1의 사용자 가상 머신 장치(100)와 인증기관(210)를 포함함으로써, 사용자의 사용자 가상 머신 장치(100)에 대한 신뢰성을 확보할 수 있다. 인증기관(210)을 더 포함하는 것 이외에는 도 1의 사용자 가상 머신 장치(100)에 대한 상세한 설명과 동일하다.By including the user virtual machine device 100 and the certification authority 210 of FIG. 1, the reliability of the user's virtual machine device 100 can be ensured. Is the same as the detailed description of the user virtual machine device 100 of Fig. 1, except that it further includes the certification authority 210. Fig.

즉, 하이퍼바이저(130)는 관리 도메인(110)으로부터 수신한 상기 독립 도메인(120)의 커널 이미지로부터 생성한 제 1 해시 값과 하이퍼바이저(130)가 저장하고 있는 독립 도메인(120)의 커널 이미지의 제 2 해시 값을 비교하고, 상기 제 1 해시 값과 제 2 해시 값이 일치하는 경우, 관리 도메인(110)으로부터 수신한 독립 도메인(120)의 커널 이미지를 독립 도메인(120)에 로드함으로써 독립 도메인(120)을 실행시킬 수 있다.That is, the hypervisor 130 receives the first hash value generated from the kernel image of the independent domain 120 received from the management domain 110 and the first hash value generated from the kernel image of the independent domain 120 stored in the hypervisor 130 The kernel image of the independent domain 120 received from the management domain 110 is loaded into the independent domain 120 by comparing the second hash value of the independent domain 120 with the second hash value, The domain 120 can be executed.

또한, 사용자로부터 무작위 난수인 난스(nonce)를 포함하는 가상 머신 생성 요청을 수신하면, 상기 가상 머신을 생성할 노드를 선택하고, 상기 가상 머신 생성을 위한 상기 가상 머신의 커널 이미지를 복사하여 상기 난스와 함께 상기 선택된 노드에 전송하며, 인증 프로토콜(121)은 상기 난스, 상기 가상 머신의 커널 이미지의 해시 값, 및 시큐어셀 호스트 키(ssh host key)를 상기 노드의 등록시 생성한 키를 이용하여 서명한 후, 상기 가상 머신을 인증하기 위하여 인증기관(210)에 전송한다.When a virtual machine creation request including a random number that is a random number is received from a user, a node for creating the virtual machine is selected, a kernel image of the virtual machine for creating the virtual machine is copied, And the authentication protocol 121 transmits the hash value of the kernel image of the virtual machine and the ssh host key to the selected node using the key generated upon registration of the node And transmits the virtual machine to the certification authority 210 for authentication.

인증기관(210)은 인증 프로토콜(121)과 통신을 통해 수신한 상기 가상 머신의 커널 이미지의 해시 값을 이용하여 상기 가상 머신을 인증한다.The certification authority 210 authenticates the virtual machine using the hash value of the kernel image of the virtual machine received through communication with the authentication protocol 121. [

보다 구체적으로, 인증 프로토콜(121)로부터 수신한 상기 가상 머신의 커널 이미지의 해시 값을 미리 저장하고 있는 해시 값 리스트와 비교함으로써 상기 가상 머신을 인증하고, 상기 수신한 난스와 시큐어셀 호스트 키를 인증기관(210)의 키를 이용하여 서명한 후 상기 사용자에게 송신함으로써 상기 가상 머신을 인증할 수 있다. 인증 프로토콜(121)로부터 수신한 가상 머신의 커널 이미지의 해시 값이 신뢰할 수 있는 가상 머신의 커널이미지의 해시 값 리스트 중 하나와 일치하는지를 판단함으로써 상기 가상 머신을 인증한다. 상기 가상 머신의 커널 이미지의 해시 값 리스트는 미리 설정되어 있거나, 클라우드 서비스 제공자로부터 제공받은 신뢰할 수 있는 가상 머신의 커널 이미지의 해시 값들로 설정될 수 있다.More specifically, it authenticates the virtual machine by comparing the hash value of the kernel image of the virtual machine received from the authentication protocol 121 with a previously stored hash value list, and transmits the received nonce and the secure cell host key to authentication Authenticate the virtual machine by signing with the key of the authority 210 and sending it to the user. The virtual machine is authenticated by determining whether the hash value of the kernel image of the virtual machine received from the authentication protocol 121 matches one of the hash value lists of the kernel image of the trusted virtual machine. The hash value list of the kernel image of the virtual machine may be preset or may be set to the hash values of the kernel image of the trusted virtual machine provided by the cloud service provider.

상기 가상 머신을 인증한 후, 인증여부를 사용자에게 제공하기 위하여, 인증 프로토콜(121)로부터 수신한 난스와 시큐어셀 호스트 키를 인증기관(210)의 키를 이용하여 서명한 후 상기 사용자에게 송신한다. 사용자는 인증기관(210)으로부터 수신한 난스가 자신이 가상 머신 인증요청시 함께 전송한 난스와 동일한지 판단함으로써, 상기 난스가 동일한 경우, 상기 가상 머신에 대해 신뢰를 갖고 이용할 수 있다.
After authenticating the virtual machine, the nonce and secure cell host key received from the authentication protocol 121 are signed using the key of the certification authority 210 and then transmitted to the user so as to provide authentication to the user . The user can judge whether the nonce received from the certification authority 210 is the same as the nonce that he transmitted together with the virtual machine authentication request, so that the user can use the virtual machine with confidence when the nonce is the same.

도 3 내지 4는 본 발명의 실시예에 따른 사용자 가상 머신 장치이다.3 to 4 are user virtual machine devices according to an embodiment of the present invention.

사용자 가상 머신 장치는 관리 도메인(Management domain), 독립 도메인인 미니 도메인(Mini-domain), 신뢰할 수 있는 하이퍼바이저(Trusted Hypervisor), 및 하드웨어(Hardware)로 구성될 수 있다. 관리 도메인은 각종 드라이버(driver)를 포함하고, 가상 머신을 관리(VM manage)하며, 사용자 프로세스(user process)를 수행한다. 독립 도메인인 미니 도메인은 관리 도메인으로부터 생성되는 별도의 도메인인바, 미니 도메인이라 할 수 있다. 인증을 위한 프로토콜은 도 3과 같이, 하이퍼바이저에 위치하거나, 도 4와 같이, 독립 도메인인 미니 도메인에 위치할 수 있다. 도 3과 같이, 인증 프로토콜이 하이퍼바이저에 위치하는 경우보다 도 4와 같이, 하이퍼바이저보다 낮은 권한으로 동작하는 미니 도메인에 위치하는 것이 시스템의 신뢰성을 향상시킬 수 있다. 인증 데이터는 독립 도메인인 미니 도메인이 전용으로 접근하는 신뢰성 플랫폼 보드(TPB, Trusted Platform Board)에 저장될 수 있다. 상기 신뢰성 플랫 보드뿐만 아니라, 영구적인 데이터를 저장할 수 있는 PCI 디바이스에 저장될 수도 있다.
The user virtual machine device may be comprised of a management domain, an independent domain, a mini-domain, a trusted hypervisor, and hardware. The management domain includes various drivers, manages a virtual machine (VM), and performs a user process. The mini domain, which is an independent domain, is a separate domain created from the management domain, and may be called a mini domain. The protocol for authentication may be located in the hypervisor, as shown in FIG. 3, or in a mini domain, which is an independent domain, as shown in FIG. As shown in FIG. 3, when the authentication protocol is located in the hypervisor, it is possible to improve the reliability of the system by being located in a mini domain operating with a lower authority than the hypervisor, as shown in FIG. The authentication data may be stored in a Trusted Platform Board (TPB), which is accessed by a mini domain, which is an independent domain, exclusively. Not only the reliability flat board, but also a PCI device capable of storing permanent data.

도 5는 본 발명의 실시예에 따른 사용자 가상 머신 장치의 독립 도메인을 실행시키는 것을 도시한 것이다.5 illustrates running an independent domain of a user virtual machine device in accordance with an embodiment of the present invention.

독립 도메인인 미니 도메인을 생성하기 위하여, 우선 관리 도메인이 디스크 드라이버를 이용하여 하드웨어로부터 커널 이미지를 저장한다. 관리 도메인에 의해 상기 커널 이미지가 변형될 수 있는바, 관리 도메인으로부터 바로 커널 이미지를 미니 도메인에 로드하지 않고, 신뢰할 수 있는 하이퍼바이저를 경유하도록 한다. 관리 도메인이 저장하고 있는 커널 이미지로부터 생성된 해시 값을 하이퍼바이저가 저장하고 있는 해시 값과 비교하여, 두 해시 값이 동일한 경우에만 해당 커널 이미지를 미니 도메인에 로드함으로써 미니 도메인을 실행시킬 수 있다. 이를 통해, 악의적인 관리자에 의한 미니 도메인의 커널 이미지 변경을 방지할 수 있다.
In order to create a mini domain that is an independent domain, the management domain first stores the kernel image from the hardware using the disk driver. The kernel image may be modified by the management domain so that the kernel image is not directly loaded from the management domain into the mini domain but via the trusted hypervisor. The hash value generated from the kernel image stored in the management domain is compared with the hash value stored in the hypervisor, and the mini domain can be executed by loading the kernel image into the mini domain only when the two hash values are equal to each other. This prevents malicious administrators from changing the kernel image of the mini domain.

도 6은 본 발명의 실시예에 따른 사용자 가상 머신 장치의 가상 머신을 인증하는 방법을 도시한 것이다.Figure 6 illustrates a method for authenticating a virtual machine of a user virtual machine device in accordance with an embodiment of the present invention.

사용자가 난스(nonce)를 포함하는 가상 머신 생성 요청을 클라우드 관리자(Cloud Manager)에게 전송하면, 클라우드 관리자는 가상 머신을 생성할 노드를 선택하고, 커널 이미지를 복사하여 상기 난스와 함께 해당 노드에 전송한다. 노드는 노드 아이디, 커널 이미지의 해시 값, 난스, 및 시큐어셀 호스트 키를 서명한 후 인증기관(Certificate Authority)로 전송한다. 인증기관은 커널 이미지의 해시 값을 이용하여 가상 머신을 인증하고, 난스 및 시큐어셀 호스트 키를 서명한 후 사용자에게 전송하여 가상 머신이 인증되었음을 알린다. 사용자는 인증기관으로부터 상기 가상 머신이 인증되었음을 확인하고, 상기 가상 머신을 안전하게 이용할 수 있다.
When a user sends a virtual machine creation request including a nonce to a cloud manager, the cloud manager selects a node to create the virtual machine, copies the kernel image, and transmits the copied image to the corresponding node do. The node signs the node ID, the hash value of the kernel image, the nonce, and the secure cell host key, and sends it to the Certificate Authority. The certification authority authenticates the virtual machine using the hash value of the kernel image, signs the nonce and secure cell host key, and sends it to the user to notify the virtual machine that the virtual machine has been authenticated. The user can confirm that the virtual machine has been authenticated from the certification authority and can safely use the virtual machine.

도 7은 본 발명의 일 실시예에 따른 사용자 가상 머신의 신뢰성을 향상시키는 방법의 흐름도이다.7 is a flowchart of a method for improving the reliability of a user virtual machine in accordance with an embodiment of the present invention.

사용자 가상 머신의 신뢰성을 향상시키기 위하여, 관리 도메인과 독립된 독립 도메인을 이용하여 인증을 수행할 수 있다. 여기서, 독립 도메인은 상기 가상 머신을 인증하기 위한 인증 데이터를 저장하는 인증 디바이스를 전용 접근할 수 있는 도메인이다. 상기 인증 디바이스는 영구적으로 데이터를 저장하고 암호 연산들을 지원하는 하드웨어 디바이스이거나, 영구적으로 데이터를 저장하는 PCI 디바이스일 수 있으며, 하이퍼바이저가 입출력 메모리 관리장치(IOMMU)의 입출력 페이지 테이블을 이용하여 상기 독립 도메인만 상기 인증 디바이스에 접근할 수 있도록 할 수 있다. 독립 도메인은 하나의 가상 머신인바, 상기 독립 도메인이 안전한 환경에서 실행될 수 있도록 도 7의 방법을 수행한다.In order to improve the reliability of the user virtual machine, authentication can be performed using an independent domain independent of the management domain. Here, the independent domain is a domain that can access the authentication device for storing the authentication data for authenticating the virtual machine. The authentication device may be a hardware device that permanently stores data and supports cryptographic operations, or may be a PCI device that permanently stores data, and the hypervisor may use the input / output page table of the input / output memory management device (IOMMU) Only the domain can access the authentication device. The independent domain is one virtual machine, and performs the method of FIG. 7 so that the independent domain can be executed in a secure environment.

710단계는 관리 도메인의 디스크 드라이버를 이용하여 관리 도메인의 메모리에 상기 독립 도메인의 커널 이미지를 저장하는 단계이다.In operation 710, the kernel image of the independent domain is stored in the memory of the management domain using the disk driver of the management domain.

보다 구체적으로, 독립 도메인의 커널 이미지를 저장하는 단계로 이는 다른 가상 머신의 커널 이미지를 생성하는 것과 동일하다. 본 단계에 대한 상세한 설명은 도 1의 사용자 가상 머신 장치(100)에 대한 상세한 설명에 대응하는바, 도 1의 사용자 가상 머신 장치(100)에 대한 상세한 설명으로 대신한다.More specifically, the step of storing a kernel image of an independent domain is the same as generating a kernel image of another virtual machine. The detailed description of this step corresponds to the detailed description of the user virtual machine device 100 of FIG. 1 and is replaced with a detailed description of the user virtual machine device 100 of FIG.

720단계는 상기 관리 도메인이 저장하고 있는 상기 독립 도메인의 커널 이미지를 하이퍼바이저로 전달하는 단계이다.In step 720, the kernel image of the independent domain stored in the management domain is transferred to the hypervisor.

보다 구체적으로, 독립 도메인의 안전한 실행 환경을 위하여, 관리 도메인으로부터 독립 도메인의 커널 이미지를 바로 독립 도메인에 로드하지 않고, 하이퍼바이저를 경유하기 위하여, 상기 관리 도메인이 저장하고 있는 상기 독립 도메인의 커널 이미지를 하이퍼바이저로 전달한다. 본 단계에 대한 상세한 설명은 도 1의 사용자 가상 머신 장치(100)에 대한 상세한 설명에 대응하는바, 도 1의 사용자 가상 머신 장치(100)에 대한 상세한 설명으로 대신한다.More specifically, for a safe execution environment of an independent domain, a kernel image of an independent domain from a management domain is not directly loaded into an independent domain, but a kernel image of the independent domain stored in the management domain, To the hypervisor. The detailed description of this step corresponds to the detailed description of the user virtual machine device 100 of FIG. 1 and is replaced with a detailed description of the user virtual machine device 100 of FIG.

730단계는 상기 하이퍼바이저가 상기 관리 도메인으로부터 수신한 상기 독립 도메인의 커널 이미지로부터 생성한 제 1 해시 값과 상기 하이퍼바이저가 저장하고 있는 상기 독립 도메인의 커널 이미지의 제 2 해시 값과 일치하는지 판단하는 단계이다.In step 730, the hypervisor determines whether the first hash value generated from the kernel image of the independent domain received from the management domain matches the second hash value of the kernel image of the independent domain stored in the hypervisor .

보다 구체적으로, 상기 관리 도메인으로부터 수신한 상기 독립 도메인의 커널 이미지가 악의적인 관리자에 의해 변경되었는지 확인하기 위하여, 상기 관리 도메인으로부터 수신한 상기 독립 도메인의 커널 이미지로부터 생성한 제 1 해시 값과 상기 하이퍼바이저가 저장하고 있는 상기 독립 도메인의 커널 이미지의 제 2 해시 값과 일치하는지 판단한다. 본 단계에 대한 상세한 설명은 도 1의 사용자 가상 머신 장치(100)에 대한 상세한 설명에 대응하는바, 도 1의 사용자 가상 머신 장치(100)에 대한 상세한 설명으로 대신한다.More specifically, in order to check whether a kernel image of the independent domain received from the management domain has been changed by a malicious administrator, a first hash value generated from a kernel image of the independent domain received from the management domain, It is determined whether the second hash value of the kernel image of the independent domain stored by the visor matches the second hash value. The detailed description of this step corresponds to the detailed description of the user virtual machine device 100 of FIG. 1 and is replaced with a detailed description of the user virtual machine device 100 of FIG.

740단계는 상기 판단결과, 상기 제 1 해시 값과 제 2 해시 값이 일치하는 경우, 상기 하이퍼바이저가 상기 관리 도메인으로부터 수신한 상기 독립 도메인의 커널 이미지를 상기 독립 도메인에 로드함으로써 상기 독립 도메인을 실행시키는 단계이다.If it is determined that the first hash value matches the second hash value in operation 740, the hypervisor loads the kernel image of the independent domain received from the management domain into the independent domain, .

보다 구체적으로, 730단계의 판단 결과, 상기 제 1 해시 값과 제 2 해시 값이 일치하는 경우, 상기 관리 도메인으로부터 수신한 상기 독립 도메인의 커널 이미지가 악의적인 관리자에 의해 변경되지 않은 것인바, 이를 상기 독립 도메인에 로드함으로써 상기 독립 도메인을 실행시킨다. 본 단계에 대한 상세한 설명은 도 1의 사용자 가상 머신 장치(100)에 대한 상세한 설명에 대응하는바, 도 1의 사용자 가상 머신 장치(100)에 대한 상세한 설명으로 대신한다.
More specifically, if it is determined in step 730 that the first hash value matches the second hash value, the kernel image of the independent domain received from the management domain is not changed by the malicious administrator. And loads the independent domain into the independent domain. The detailed description of this step corresponds to the detailed description of the user virtual machine device 100 of FIG. 1 and is replaced with a detailed description of the user virtual machine device 100 of FIG.

도 8은 본 발명의 실시예에 따른 사용자 가상 머신의 신뢰성을 향상시키는 방법의 흐름도이다.8 is a flowchart of a method for improving the reliability of a user virtual machine according to an embodiment of the present invention.

사용자 가상 머신의 신뢰성을 향상시키기 위하여, 사용자가 사용하려는 가상 머신에 대한 인증을 수행할 수 있다. 상기 가상 머신의 인증을 위하여 인증기관을 이용할 수 있으며, 상기 인증기관과 통신할 수 있는 인증 프로토콜을 이용할 수 있다. 상기 가상 머신을 인증하기 위하여 도 8의 방법을 수행한다.In order to improve the reliability of the user virtual machine, the user can perform authentication with respect to the virtual machine to be used. An authentication authority may be used for authentication of the virtual machine and an authentication protocol capable of communicating with the authentication authority may be used. The method of FIG. 8 is performed to authenticate the virtual machine.

810단계는 관리 도메인이 사용자로부터 무작위 난수인 난스(nonce)를 포함하는 가상 머신 생성 요청을 수신하는 단계이다.Step 810 is a step in which the management domain receives a virtual machine creation request including a nonce which is a random number from the user.

보다 구체적으로, 사용자로부터 가상 머신 생성 요청을 수시할 때, 세션 재사용 공격을 방지하기 위하여 무작위 난수인 난스를 함께 수신한다. 본 단계에 대한 상세한 설명은 도 1의 사용자 가상 머신 장치(100)에 대한 상세한 설명에 대응하는바, 도 1의 사용자 가상 머신 장치(100)에 대한 상세한 설명으로 대신한다.More specifically, when a request to create a virtual machine is made from a user, a random number is received together with a random number to prevent a session reuse attack. The detailed description of this step corresponds to the detailed description of the user virtual machine device 100 of FIG. 1 and is replaced with a detailed description of the user virtual machine device 100 of FIG.

820단계는 상기 관리 도메인이 상기 가상 머신을 생성할 노드를 선택하고, 상기 가상 머신 생성을 위한 상기 가상 머신의 커널 이미지를 복사하여 상기 난스와 함께 상기 선택된 노드에 전송하는 단계이다.In step 820, the management domain selects a node to create the virtual machine, copies the kernel image of the virtual machine for creation of the virtual machine, and transmits the copied image to the selected node together with the nonce.

보다 구체적으로, 새로 생성할 가상 머신이 할당될 하드웨어의 노드를 선택하고, 가상 머신 생성을 위한 상기 가상 머신의 커널 이미지를 복사하여 상기 난스와 함께 상기 선택된 노드에 전송한다. 본 단계에 대한 상세한 설명은 도 1의 사용자 가상 머신 장치(100)에 대한 상세한 설명에 대응하는바, 도 1의 사용자 가상 머신 장치(100)에 대한 상세한 설명으로 대신한다.More specifically, a node of the hardware to which a new virtual machine to be generated is to be assigned is selected, and the kernel image of the virtual machine for creating a virtual machine is copied and transmitted to the selected node together with the nonce. The detailed description of this step corresponds to the detailed description of the user virtual machine device 100 of FIG. 1 and is replaced with a detailed description of the user virtual machine device 100 of FIG.

830단계는 상기 노드가 상기 가상 머신의 커널 이미지의 해시 값을 산출하고, 상기 가상 머신을 실행시키는 단계이다.In step 830, the node calculates a hash value of the kernel image of the virtual machine and executes the virtual machine.

보다 구체적으로, 인증기관의 인증에 필요한 가상 머신의 커널 이미지의 해시 값을 산출하고, 상기 가상 머신을 실행시킨다. 본 단계에 대한 상세한 설명은 도 1의 사용자 가상 머신 장치(100)에 대한 상세한 설명에 대응하는바, 도 1의 사용자 가상 머신 장치(100)에 대한 상세한 설명으로 대신한다.More specifically, the hash value of the kernel image of the virtual machine necessary for authentication of the certification authority is calculated, and the virtual machine is executed. The detailed description of this step corresponds to the detailed description of the user virtual machine device 100 of FIG. 1 and is replaced with a detailed description of the user virtual machine device 100 of FIG.

840단계는 독립 도메인의 인증 프로토콜이 상기 난스, 상기 가상 머신의 커널 이미지의 해시 값, 및 시큐어셀 호스트 키(ssh host key)를 상기 노드의 등록시 생성한 키를 이용하여 서명한 후, 인증기관에 전송하여 상기 가상 머신에 대한 인증을 받는 단계이다.In step 840, after the authentication protocol of the independent domain signs the nonce, the hash value of the kernel image of the virtual machine, and the ssh host key using the key generated upon registration of the node, And receiving authentication for the virtual machine.

보다 구체적으로, 인증기관과 통신하는 인증 프로토콜이 상기 난스, 상기 가상 머신의 커널 이미지의 해시 값, 및 시큐어셀 호스트 키(ssh host key)를 상기 노드의 등록시 생성한 키를 이용하여 서명한 후, 인증기관에 전송한다. 상기 인증기관으로부터 가상 머신에 대한 인증은 다음과 같이 이루어진다. 상기 인증기관이 수신한 상기 가상 머신의 커널 이미지의 해시 값과 상기 인증기관이 저장하고 있는 가상 머신의 커널 이미지의 해시 값 리스트 중 하나와 일치하는 경우, 상기 수신한 가상 머신의 커널 이미지는 악의적인 관리자에 의해 변경되지 않은 것으로 판단하고, 상기 수신한 난스와 시큐어셀 호스트 키를 상기 인증기관의 키를 이용하여 서명한 후, 사용자에게 전달함으로써 인증될 수 있다. 상기 인증기관으로부터 난스와 시큐어셀 호스트 키를 수신한 사용자는 810단계에서 가상 머신 생성 요청과 함께 전송한 난스와 상기 수신한 난스를 확인하여, 동일한 난스인경우, 해당 가상 머신을 신뢰하고, 안전하게 상기 가상 머신을 이용할 수 있다. 본 단계에 대한 상세한 설명은 도 1의 사용자 가상 머신 장치(100)에 대한 상세한 설명에 대응하는바, 도 1의 사용자 가상 머신 장치(100)에 대한 상세한 설명으로 대신한다.
More specifically, after an authentication protocol communicating with an authentication authority has signed using the nonce, a hash value of a kernel image of the virtual machine, and a key generated at the time of registration of the node with the secure host key (ssh host key) To the certification authority. Authentication from the certification authority to the virtual machine is performed as follows. If the hash value of the kernel image of the virtual machine received by the certification authority matches with the hash value list of the kernel image of the virtual machine stored in the certification authority, the kernel image of the received virtual machine is malicious It can be authenticated by determining that it has not been changed by the administrator and by signing the received nonce and the secure cell host key using the key of the certification authority and then delivering it to the user. The user who has received the nonce and the secure cell host key from the certification authority checks the nonce that is transmitted along with the virtual machine creation request and the received nonce in step 810. If the nonce is the same nonce, A virtual machine can be used. The detailed description of this step corresponds to the detailed description of the user virtual machine device 100 of FIG. 1 and is replaced with a detailed description of the user virtual machine device 100 of FIG.

본 발명의 실시예들은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체 (magnetic media), CD-ROM, DVD와 같은 광기록 매체 (optical media), 플롭티컬 디스크 (floptical disk)와 같은 자기-광 매체 (magneto-optical media), 및 롬 (ROM), 램 (RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.Embodiments of the present invention may be implemented in the form of program instructions that can be executed on various computer means and recorded on a computer readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions recorded on the medium may be those specially designed and constructed for the present invention or may be available to those skilled in the art of computer software. Examples of computer-readable media include magnetic media such as hard disks, floppy disks and magnetic tape; optical media such as CD-ROMs and DVDs; magnetic media such as floppy disks; Magneto-optical media, and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, flash memory, and the like. Examples of program instructions include machine language code such as those produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.

이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. As described above, the present invention has been described with reference to particular embodiments, such as specific elements, and specific embodiments and drawings. However, it should be understood that the present invention is not limited to the above- And various modifications and changes may be made thereto by those skilled in the art to which the present invention pertains.

따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.
Accordingly, the spirit of the present invention should not be construed as being limited to the embodiments described, and all of the equivalents or equivalents of the claims, as well as the following claims, belong to the scope of the present invention .

100: 사용자 가상 머신 장치
110: 관리 도메인
120: 독립 도메인
121: 인증 프로토콜
130: 하이퍼바이저
140: 하드웨어
150: 인증디바이스
200: 사용자 가상 머신 시스템
210: 인증기관
100: User virtual machine device
110: Admin Domain
120: Independent domain
121: Authentication Protocol
130: hypervisor
140: Hardware
150: Authentication device
200: User virtual machine system
210: Certification Body

Claims (14)

클라우드 컴퓨팅 환경에서의 사용자 가상 머신 장치에 있어서,
가상 머신을 생성하고 관리하는 관리 도메인;
상기 가상 머신을 인증하기 위한 인증 데이터를 저장하는 인증 디바이스;
상기 가상 머신을 실행하기 위한 가상 플랫폼이며, 상기 인증 디바이스를 격리시키는 하이퍼바이저; 및
상기 인증 디바이스에 전용 접근하는 독립 도메인을 포함하고,
상기 하이퍼바이저는,
입출력 메모리 관리장치(IOMMU)의 입출력 페이지 테이블을 이용하여 상기 독립 도메인만 상기 인증 디바이스에 접근할 수 있도록 하는 것을 특징으로 하는 장치.
A user virtual machine device in a cloud computing environment,
An administrative domain that creates and manages virtual machines;
An authentication device for storing authentication data for authenticating the virtual machine;
A virtual platform for executing the virtual machine, the hypervisor isolating the authentication device; And
An independent domain that accesses the authentication device only,
The hypervisor includes:
Output page table of the input / output memory management device (IOMMU) so that only the independent domain can access the authentication device.
제 1 항에 있어서,
상기 인증 디바이스는 영구적으로 데이터를 저장하고 암호 연산들을 지원하는 하드웨어 디바이스이거나, 영구적으로 데이터를 저장하는 PCI 디바이스인 것을 특징으로 하는 장치.
The method according to claim 1,
Wherein the authentication device is a hardware device that permanently stores data and supports cryptographic operations, or is a PCI device that permanently stores data.
삭제delete 제 1 항에 있어서,
상기 하이퍼바이저는,
상기 관리 도메인으로부터 수신한 상기 독립 도메인의 커널 이미지로부터 생성한 제 1 해시 값과 상기 하이퍼바이저가 저장하고 있는 상기 독립 도메인의 커널 이미지의 제 2 해시 값을 비교하고,
상기 제 1 해시 값과 제 2 해시 값이 일치하는 경우, 상기 관리 도메인으로부터 수신한 독립 도메인의 커널 이미지를 상기 독립 도메인에 로드함으로써 상기 독립 도메인을 실행시키는 것을 특징으로 하는 장치.
The method according to claim 1,
The hypervisor includes:
Comparing a first hash value generated from a kernel image of the independent domain received from the management domain with a second hash value of a kernel image of the independent domain stored by the hypervisor,
And if the first hash value and the second hash value match, executing the independent domain by loading the kernel image of the independent domain received from the management domain into the independent domain.
제 1 항에 있어서,
상기 독립 도메인은 상기 가상 머신의 인증을 위해 인증기관과 통신하는 인증 프로토콜을 포함하는 장치.
The method according to claim 1,
Wherein the independent domain comprises an authentication protocol in communication with a certificate authority for authentication of the virtual machine.
제 5 항에 있어서,
상기 관리 도메인은,
사용자로부터 무작위 난수인 난스(nonce)를 포함하는 가상 머신 생성 요청을 수신하면, 상기 가상 머신을 생성할 노드를 선택하고, 상기 가상 머신 생성을 위한 상기 가상 머신의 커널 이미지를 복사하여 상기 난스와 함께 상기 선택된 노드에 전송하며,
상기 인증 프로토콜은,
상기 난스, 상기 가상 머신의 커널 이미지의 해시 값, 및 시큐어셀 호스트 키(ssh host key)를 상기 노드의 등록시 생성한 키를 이용하여 서명한 후, 상기 가상 머신을 인증하기 위하여 인증기관에 전송하고,
상기 가상 머신은,
상기 가상 머신의 커널 이미지의 해시 값이 상기 인증기관이 저장하고 있는 가상 머신의 커널 이미지 해시 값 리스트 중 하나와 일치하는 경우 인증되는 것을 특징으로 하는 장치.
6. The method of claim 5,
The management domain includes:
When receiving a virtual machine creation request including a random number that is a random number from a user, selects a node to create the virtual machine, copies the kernel image of the virtual machine for creation of the virtual machine, To the selected node,
Wherein the authentication protocol comprises:
The hash value of the kernel image of the virtual machine and the key generated at the time of registration of the node and the secure cell host key (ssh host key) are transmitted to the certification authority to authenticate the virtual machine ,
The virtual machine includes:
And if the hash value of the kernel image of the virtual machine matches one of the list of kernel image hash values of the virtual machine stored by the certification authority.
클라우드 컴퓨팅 환경에서의 사용자 가상 머신 시스템에 있어서,
가상 머신을 생성하고 관리하는 관리 도메인;
상기 가상 머신을 인증하기 위한 인증 데이터를 저장하는 인증 디바이스;
상기 가상 머신을 실행하기 위한 가상 플랫폼이며, 상기 인증 디바이스를 격리시키는 하이퍼바이저;
상기 인증 디바이스에 전용 접근하고, 상기 가상 머신의 인증을 위해 인증기관과 통신하는 인증 프로토콜을 포함하는 독립 도메인; 및
상기 인증 프로토콜과 통신을 통해 수신한 상기 가상 머신의 커널 이미지의 해시 값을 이용하여 상기 가상 머신을 인증하는 인증기관을 포함하고,
상기 하이퍼바이저는,
입출력 메모리 관리장치(IOMMU)의 입출력 페이지 테이블을 이용하여 상기 독립 도메인만 상기 인증 디바이스에 접근할 수 있도록 하는 것을 특징으로 하는 시스템.
In a user virtual machine system in a cloud computing environment,
An administrative domain that creates and manages virtual machines;
An authentication device for storing authentication data for authenticating the virtual machine;
A virtual platform for executing the virtual machine, the hypervisor isolating the authentication device;
An independent domain comprising an authentication protocol that accesses the authentication device only and communicates with a certificate authority for authentication of the virtual machine; And
And an authentication authority for authenticating the virtual machine using a hash value of a kernel image of the virtual machine received through communication with the authentication protocol,
The hypervisor includes:
Output page table of the input / output memory management device (IOMMU) so that only the independent domain can access the authentication device.
제 7 항에 있어서,
상기 하이퍼바이저는,
상기 관리 도메인으로부터 수신한 상기 독립 도메인의 커널 이미지로부터 생성한 제 1 해시 값과 상기 하이퍼바이저가 저장하고 있는 상기 독립 도메인의 커널 이미지의 제 2 해시 값을 비교하고,
상기 제 1 해시 값과 제 2 해시 값이 일치하는 경우, 상기 관리 도메인으로부터 수신한 독립 도메인의 커널 이미지를 상기 독립 도메인에 로드함으로써 상기 독립 도메인을 실행시키는 것을 특징으로 하는 시스템.
8. The method of claim 7,
The hypervisor includes:
Comparing a first hash value generated from a kernel image of the independent domain received from the management domain with a second hash value of a kernel image of the independent domain stored by the hypervisor,
Wherein the independent domain is executed by loading the kernel image of the independent domain received from the management domain into the independent domain when the first hash value matches the second hash value.
제 7 항에 있어서,
사용자로부터 무작위 난수인 난스(nonce)를 포함하는 가상 머신 생성 요청을 수신하면, 상기 가상 머신을 생성할 노드를 선택하고, 상기 가상 머신 생성을 위한 상기 가상 머신의 커널 이미지를 복사하여 상기 난스와 함께 상기 선택된 노드에 전송하며,
상기 인증 프로토콜은,
상기 난스, 상기 가상 머신의 커널 이미지의 해시 값, 및 시큐어셀 호스트 키(ssh host key)를 상기 노드의 등록시 생성한 키를 이용하여 서명한 후, 상기 가상 머신을 인증하기 위하여 인증기관에 전송하고,
상기 인증기관은 상기 인증 프로토콜로부터 수신한 상기 가상 머신의 커널 이미지의 해시 값을 미리 저장하고 있는 해시 값 리스트와 비교함으로써 상기 가상 머신을 인증하고, 상기 수신한 난스와 시큐어셀 호스트 키를 상기 인증기관의 키를 이용하여 서명한 후 상기 사용자에게 송신하는 것을 특징으로 하는 시스템.
8. The method of claim 7,
When receiving a virtual machine creation request including a random number that is a random number from a user, selects a node to create the virtual machine, copies the kernel image of the virtual machine for creation of the virtual machine, To the selected node,
Wherein the authentication protocol comprises:
The hash value of the kernel image of the virtual machine and the key generated at the time of registration of the node and the secure cell host key (ssh host key) are transmitted to the certification authority to authenticate the virtual machine ,
Wherein the certification authority authenticates the virtual machine by comparing the hash value of the kernel image of the virtual machine received from the authentication protocol with a list of hash values stored in advance, and transmits the received nonce and the secure cell host key to the certification authority And transmits the signature to the user.
클라우드 컴퓨팅 환경에서의 사용자 가상 머신의 신뢰성 향상 방법에 있어서,
관리 도메인의 디스크 드라이버를 이용하여 관리 도메인의 메모리에 독립 도메인의 커널 이미지를 저장하는 단계;
상기 관리 도메인이 저장하고 있는 상기 독립 도메인의 커널 이미지를 하이퍼바이저로 전달하는 단계;
상기 하이퍼바이저가 상기 관리 도메인으로부터 수신한 상기 독립 도메인의 커널 이미지로부터 생성한 제 1 해시 값과 상기 하이퍼바이저가 저장하고 있는 상기 독립 도메인의 커널 이미지의 제 2 해시 값과 일치하는지 판단하는 단계;
상기 판단결과, 상기 제 1 해시 값과 제 2 해시 값이 일치하는 경우, 상기 하이퍼바이저가 상기 관리 도메인으로부터 수신한 상기 독립 도메인의 커널 이미지를 상기 독립 도메인에 로드함으로써 상기 독립 도메인을 실행시키는 단계를 포함하고,
상기 독립 도메인은 상기 가상 머신을 인증하기 위한 인증 데이터를 저장하는 인증 디바이스를 전용 접근하며,
상기 하이퍼바이저는,
입출력 메모리 관리장치(IOMMU)의 입출력 페이지 테이블을 이용하여 상기 독립 도메인만 상기 인증 디바이스에 접근할 수 있도록 하는 것을 특징으로 하는 것을 특징으로 하는 방법.
A method for improving reliability of a user virtual machine in a cloud computing environment,
Storing a kernel image of an independent domain in a memory of a management domain using a disk driver of the management domain;
Transferring a kernel image of the independent domain stored in the management domain to a hypervisor;
Determining whether the first hash value generated from the kernel image of the independent domain received by the hypervisor matches the second hash value of the kernel image of the independent domain stored in the hypervisor;
Executing the independent domain by loading the kernel image of the independent domain received from the management domain into the independent domain if the first hash value matches the second hash value as a result of the determination; Including,
The independent domain accesses only an authentication device that stores authentication data for authenticating the virtual machine,
The hypervisor includes:
Wherein the independent domain is accessible only to the authentication device using the input / output page table of the input / output memory management device (IOMMU).
제 10 항에 있어서,
상기 인증 디바이스는 영구적으로 데이터를 저장하고 암호 연산들을 지원하는 하드웨어 디바이스이거나, 영구적으로 데이터를 저장하는 PCI 디바이스인 것을 특징으로 하는 방법.
11. The method of claim 10,
Wherein the authentication device is a hardware device that permanently stores data and supports cryptographic operations, or is a PCI device that permanently stores data.
제 10 항에 있어서,
상기 하이퍼바이저는,
입출력 메모리 관리장치(IOMMU)의 입출력 페이지 테이블을 이용하여 상기 독립 도메인만 상기 인증 디바이스에 접근할 수 있도록 하는 것을 특징으로 하는 방법.
11. The method of claim 10,
The hypervisor includes:
Output page table of the input / output memory management device (IOMMU) so that only the independent domain can access the authentication device.
클라우드 컴퓨팅 환경에서의 사용자 가상 머신의 신뢰성 향상 방법에 있어서,
관리 도메인이 사용자로부터 무작위 난수인 난스(nonce)를 포함하는 가상 머신 생성 요청을 수신하는 단계;
상기 관리 도메인이 상기 가상 머신을 생성할 노드를 선택하고, 상기 가상 머신 생성을 위한 상기 가상 머신의 커널 이미지를 복사하여 상기 난스와 함께 상기 선택된 노드에 전송하는 단계;
상기 노드가 상기 가상 머신의 커널 이미지의 해시 값을 산출하고, 상기 가상 머신을 실행시키는 단계; 및
독립 도메인의 인증 프로토콜이 상기 난스, 상기 가상 머신의 커널 이미지의 해시 값, 및 시큐어셀 호스트 키(ssh host key)를 상기 노드의 등록시 생성한 키를 이용하여 서명한 후, 인증기관에 전송하여 상기 가상 머신에 대한 인증을 받는 단계를 포함하고,
상기 독립 도메인은,
상기 가상 머신을 인증하기 위한 인증 데이터를 저장하는 인증 디바이스를 전용 접근하고,
상기 가상 머신은,
상기 인증기관이 수신한 상기 가상 머신의 커널 이미지의 해시 값과 상기 인증기관이 저장하고 있는 가상 머신의 커널 이미지의 해시 값 리스트 중 하나와 일치하는 경우, 상기 수신한 가상 머신의 커널 이미지는 악의적인 관리자에 의해 변경되지 않은 것으로 판단하고, 상기 수신한 난스와 시큐어셀 호스트 키를 상기 인증기관의 키를 이용하여 서명한 후, 사용자에게 전달함으로써 인증되는 것을 특징으로 하는 방법.
A method for improving reliability of a user virtual machine in a cloud computing environment,
Receiving a virtual machine creation request including a nonce that is a random number from the management domain;
Selecting a node for which the management domain will create the virtual machine, copying a kernel image of the virtual machine for creation of the virtual machine, and transmitting the copied kernel image to the selected node together with the nonce;
The node calculating a hash value of a kernel image of the virtual machine and executing the virtual machine; And
The authentication protocol of the independent domain signing using the nonce, the hash value of the kernel image of the virtual machine, and the key generated upon registration of the node with the secure host key (ssh host key) And receiving authentication for the virtual machine,
Wherein the independent domain comprises:
Accessing an authentication device for storing authentication data for authenticating the virtual machine,
The virtual machine includes:
If the hash value of the kernel image of the virtual machine received by the certification authority matches with the hash value list of the kernel image of the virtual machine stored in the certification authority, the kernel image of the received virtual machine is malicious Characterized in that it is determined that it has not been changed by the administrator and is authenticated by signing the received nonce and the secure cell host key using the key of the certification authority and then delivering it to the user.
제 10 항 내지 제 13 항 중에 어느 한 항의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
A computer-readable recording medium storing a program for causing a computer to execute the method according to any one of claims 10 to 13.
KR1020130026746A 2013-03-13 2013-03-13 Apparatus and method improving trustworthiness of virtual machine execution environment in cloud computing Expired - Fee Related KR101429434B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130026746A KR101429434B1 (en) 2013-03-13 2013-03-13 Apparatus and method improving trustworthiness of virtual machine execution environment in cloud computing

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130026746A KR101429434B1 (en) 2013-03-13 2013-03-13 Apparatus and method improving trustworthiness of virtual machine execution environment in cloud computing

Publications (1)

Publication Number Publication Date
KR101429434B1 true KR101429434B1 (en) 2014-08-12

Family

ID=51750254

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130026746A Expired - Fee Related KR101429434B1 (en) 2013-03-13 2013-03-13 Apparatus and method improving trustworthiness of virtual machine execution environment in cloud computing

Country Status (1)

Country Link
KR (1) KR101429434B1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106230830A (en) * 2016-08-03 2016-12-14 浪潮(北京)电子信息产业有限公司 A kind of virtual resource access control method and device
US20180212945A1 (en) * 2014-07-10 2018-07-26 Red Hat Israel, Ltd. Authenticator plugin interface
WO2024071927A1 (en) * 2022-09-28 2024-04-04 삼성전자 주식회사 Electronic device and data protection method using same
CN119071065A (en) * 2024-08-27 2024-12-03 中国联合网络通信集团有限公司 Virtual machine remote authentication method, device, equipment and storage medium based on cloud platform

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110051028A (en) * 2009-11-09 2011-05-17 주식회사 케이티 Cloud Computing System with Security
KR20120056300A (en) * 2009-10-21 2012-06-01 알까뗄 루슨트 Method and apparatus for transparent cloud computing with a virtualized network infrastructure
KR20120061249A (en) * 2010-12-03 2012-06-13 한국과학기술원 Hypervisor-assisted User Application Memory Protection Method
KR20130007373A (en) * 2011-07-01 2013-01-18 한국전자통신연구원 Method and architecture for virtual desktop service

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120056300A (en) * 2009-10-21 2012-06-01 알까뗄 루슨트 Method and apparatus for transparent cloud computing with a virtualized network infrastructure
KR20110051028A (en) * 2009-11-09 2011-05-17 주식회사 케이티 Cloud Computing System with Security
KR20120061249A (en) * 2010-12-03 2012-06-13 한국과학기술원 Hypervisor-assisted User Application Memory Protection Method
KR20130007373A (en) * 2011-07-01 2013-01-18 한국전자통신연구원 Method and architecture for virtual desktop service

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180212945A1 (en) * 2014-07-10 2018-07-26 Red Hat Israel, Ltd. Authenticator plugin interface
US11063923B2 (en) * 2014-07-10 2021-07-13 Red Hat Israel, Ltd. Authenticator plugin interface
CN106230830A (en) * 2016-08-03 2016-12-14 浪潮(北京)电子信息产业有限公司 A kind of virtual resource access control method and device
WO2024071927A1 (en) * 2022-09-28 2024-04-04 삼성전자 주식회사 Electronic device and data protection method using same
CN119071065A (en) * 2024-08-27 2024-12-03 中国联合网络通信集团有限公司 Virtual machine remote authentication method, device, equipment and storage medium based on cloud platform

Similar Documents

Publication Publication Date Title
US12189542B2 (en) Technologies for secure device configuration and management
US11575672B2 (en) Secure accelerator device pairing for trusted accelerator-to-accelerator communication
Buhren et al. Insecure until proven updated: Analyzing AMD SEV's remote attestation
CN107533609B (en) System, apparatus and method for controlling multiple trusted execution environments in a system
US8856544B2 (en) System and method for providing secure virtual machines
EP3047375B1 (en) Virtual machine manager facilitated selective code integrity enforcement
CN108604270B (en) Secure provisioning of operating systems
US9288155B2 (en) Computer system and virtual computer management method
US9698988B2 (en) Management control method, apparatus, and system for virtual machine
KR100930218B1 (en) Method, apparatus and processing system for providing a software-based security coprocessor
US8074262B2 (en) Method and apparatus for migrating virtual trusted platform modules
US8601265B2 (en) Method and system for improving storage security in a cloud computing environment
US8826391B2 (en) Virtualized trusted descriptors
KR102030858B1 (en) Digital signing authority dependent platform secret
WO2020192406A1 (en) Method and apparatus for data storage and verification
KR20090078551A (en) Host authentication method in mobile storage device, method for providing information for host authentication, device, and recording medium
CN118056200A (en) Distributed Trusted Platform Module Key Management Protection for Roaming Data
KR101429434B1 (en) Apparatus and method improving trustworthiness of virtual machine execution environment in cloud computing
US10691356B2 (en) Operating a secure storage device
EP4693087A1 (en) Device access method and apparatus
Galanou et al. Matee: Multimodal attestation for trusted execution environments
CN117642743B (en) Forced execution of credentials for read-only protected memory during credential validity periods
WO2024188223A1 (en) Hardware root of trust agent interaction method based on security virtualization and network device
CN119337389B (en) A data security method, related apparatus and system
Achemlal et al. Building trust in virtualized networks

Legal Events

Date Code Title Description
PA0109 Patent application

St.27 status event code: A-0-1-A10-A12-nap-PA0109

PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

D13-X000 Search requested

St.27 status event code: A-1-2-D10-D13-srh-X000

D14-X000 Search report completed

St.27 status event code: A-1-2-D10-D14-srh-X000

PE0902 Notice of grounds for rejection

St.27 status event code: A-1-2-D10-D21-exm-PE0902

E13-X000 Pre-grant limitation requested

St.27 status event code: A-2-3-E10-E13-lim-X000

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

St.27 status event code: A-1-2-D10-D22-exm-PE0701

GRNT Written decision to grant
PR0701 Registration of establishment

St.27 status event code: A-2-4-F10-F11-exm-PR0701

PR1002 Payment of registration fee

St.27 status event code: A-2-2-U10-U11-oth-PR1002

Fee payment year number: 1

PG1601 Publication of registration

St.27 status event code: A-4-4-Q10-Q13-nap-PG1601

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R13-asn-PN2301

St.27 status event code: A-5-5-R10-R11-asn-PN2301

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

FPAY Annual fee payment

Payment date: 20170725

Year of fee payment: 4

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 4

P22-X000 Classification modified

St.27 status event code: A-4-4-P10-P22-nap-X000

FPAY Annual fee payment

Payment date: 20180725

Year of fee payment: 5

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 5

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

PC1903 Unpaid annual fee

St.27 status event code: A-4-4-U10-U13-oth-PC1903

Not in force date: 20190807

Payment event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R13-asn-PN2301

St.27 status event code: A-5-5-R10-R11-asn-PN2301

PC1903 Unpaid annual fee

St.27 status event code: N-4-6-H10-H13-oth-PC1903

Ip right cessation event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

Not in force date: 20190807

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000