A method of mutually authenticating between a local host and a software mobility device including an operating system virtualization layer, and a method of forming an input/output (i/o ) channel. The method of authenticating a local host in the software mobility device includes requesting a certificate from the local host in which an integrity value of the local host is stored, and receiving the certificate from the local host; receiving an integrity value measured in the local host and comparing the measured integrity value with the integrity value included in the certificate to verify the local host; and when the local host is verified, encrypting a security profile of the software mobility device and transmitting the encrypted security profile to the local host so as to provide secure communication between the local host and the software mobility device.
|
6. A software mobility device comprising an operating system virtualization layer, the device comprising:
a security management unit to request a certificate from the local host in which an integrity value of the local host is stored, to receive the certificate from the local host, to receive an integrity value measured in the local host, to compare the measured integrity value with the integrity value included in the certificate so as to verify the local host through mutual authentication, to encrypt a security profile of the software mobility device, when the local host is verified, and to transmit the encrypted security profile to the local host so as to provide secure communication between the local host and the software mobility device.
9. A software mobility device comprising an operating system virtualization layer, the device comprising:
a security management unit to identify whether an application is a subject of an application for security policy that requires secure i/o while executing the application in the software mobility device, to install a security filter driver to a kernel mode on the local host, if the application is the subject of application for security policy, as the result of identification, and to form a secure channel using a session key while transmitting data for executing an i/o device according to execution of the application included in the software mobility device by the software mobility device and the security filter driver so as to transmit data.
1. A method of authenticating a local host in a software mobility device having an operating system virtualization layer, the method comprising:
requesting a certificate from the local host in which an integrity value of the local host is stored, and receiving the certificate from the local host;
receiving an integrity value measured in the local host, and comparing the measured integrity value with the integrity value included in the certificate so as to verify the local host through mutual authentication; and
when the local host is verified, encrypting a security profile of the software mobility device and transmitting the encrypted security profile to the local host so as to provide secure communication between the local host and the software mobility device.
4. A method of forming a secure i/o channel between a local host and a software mobility device comprising an operating system virtualization layer, the method comprising:
identifying whether an application is a subject of an application for security policy that requires secure i/o , while executing the application in the software mobility device;
as the result of identification, if the application is the subject of an application for security policy, installing a security filter driver to a kernel mode on the local host;
forming a secure channel through a session key while transmitting data to execute an i/o device according to execution of the application included in the software mobility device by the software mobility device and the security filter driver so as to transmit data.
11. A software mobility device comprising:
a top layer unit to provide application services to a user; and
an os virtualization layer unit to provide a virtualization layer between the top layer unit and a local host, the os virtualization unit comprising a virtualization management unit to manage virtualization of the local host, a resource management unit to manage resources of the local host, and a security management unit to manage security with the local host;
wherein the security management unit performs mutual authentication with the local host to authenticate the local host so as to provide secure communications between the local host and the software mobility device, and the mutual authentication comprises receiving an integrity value measured in the local host, comparing the measured integrity value with an integrity value included in a certificate received from the local host, so as to verify the local host and providing secure communication between the local host and the software mobility device.
2. The method of
3. The method of
the software mobility device is included in a server connected to the local host by a network; and
an operating system virtualization client is downloaded to the local host from the server computer to mediate communication between the operating system virtualization layer and the local host included in the server computer.
5. The method of
the session key is generated through mutual authentication between the software mobility device and the security filter driver while installing the security filter driver of the software mobility device; or
the session key is owned in common between the software mobility device and the security filter driver before installing the security filter driver of the software mobility device.
7. The device of
8. The device of
the software mobility device is included in a server computer connected to the local host by a network; and
an operating system virtualization client is downloaded to the local host from the server computer for mediating communication between the operating system virtualization layer and the local host included in the server computer.
10. The device of
the session key is generated through mutual authentication between the software mobility device and the security filter driver while installing the security filter driver of the software mobility device; or
the session key is owned in common between the software mobility device and the security filter driver before installing the security filter driver of the software mobility device so as to be included in the security filter driver.
12. The software mobility device of
13. The software mobility device of
14. The software mobility device of
15. The software mobility device of
16. The software mobility device of
17. The software mobility device of
18. The software mobility device of
|
This application claims the benefit of Korean Patent Application No. 2008-2648, filed in the Korean Intellectual Property Office on Jan. 9, 2008, and the benefit of U.S. Patent Application No. 60/957,538, filed in U.S. Patent and Trademark Office on Aug. 23, 2007, the disclosures of which are incorporated herein by reference.
1. Field of the Invention
Aspects of the present invention relate to a method of mutually authenticating between a software mobility device and a local host and a method of forming an input/output (I/O) channel.
2. Description of the Related Art
Software mobility is a technology that stores software and data in a mobile storage medium, such as a USB Flash Drive or a storage medium contained within a mobile device (for example, a mobile phone or personal entertainment device) or downloads a client through a network connection, thereby enabling seamless computing in other personal computers (PCs) or Consumer Electronics (CE) devices. Such technology is an example of a new computing paradigm that can replace devices such as laptops. The technology is developing as a way of simply storing data through the mobile storage medium or a network connection to a moving personal computing environment. Various advanced companies, such as Microsoft, EMC, IBM, SanDisk, and RingCube, are in the process of developing solutions of the same kinds, such as Virtual PC, VMWare, SoulPad, U3, and MojoPac, based on current hardware or a virtualization technology of an operating system.
However, in supporting seamless computing in other PCs or CE devices, users' software and data and stability of personal computing environment are not considered in most cases according to infection to a local host by a malicious code (malware), such as Trojan Horses, Worms, and Viruses in PCs or CE devices, so that supporting various services such as DRM and e-Trading is limited.
Virtualization can generally be defined as a technology serviced to a high level as if various “real single computing devices” exist, instead of directly correcting the real single computing devices in which arbitrary software is executed.
Virtualization can be classified into system virtualization and operating system (OS) virtualization according to the subject of virtualization. The system virtualization is for a physical hardware platform and provides a separate system for various operating systems. The OS virtualization virtualizes an operating system of a local host so as to provide a separate operating system for arbitrary applications.
Software mobility solutions based on such virtualization technologies can be mainly represented by adjusting an application so as to be executed by a specific API owned by each company (for example, U3 manufactured by SanDisk) or joint moving of a specific operating system (for example, VMWare manufactured by EMC) based on a system virtualization technology, in order to perform seamless computing for users' software and data after moving to other PCs or CE device via a mobile storage medium or a network connection.
However, in such conventional cases, only applications having open source code can be adjusted, so that an application range for moving software is hardly expanded. Research and development for improving a system overhead due to joint moving of the specific operating system are in progress. The software mobility solutions which move through current mobile storage media or network connections are applied to improve use of various software or applications such as DRM (Digital Rights Management) and e-Trading in moving not only simple data, but also a personal computing environment. Accordingly, supporting stability for executing environment on the related software mobility solution is continuously required.
Technology based on a conventional network connection is a streaming type from a server to a client and are mostly a server authentication through a user account and a password, instead of stability relating to execution of the software mobility solutions on the moved local host. Technology based on mobile storage media provides limited stability by supporting user authentication and encryption for data access control according to a threat to lose the storage medium.
However, while executing software such as DRM and e-Trading through the software solutions, integrity based mutual authentication for providing a safe execution environment without malware such in the local host cannot be provided by using only the security functions in the conventional technologies. Providing secure channels to prevent leakage of malicious information and forgery is limited. For example, while executing DRM content on the software mobility solutions using resources of a local host (for example, sound and video), multimedia content decoded by a stealth attack due to malware on the local host may be easily obtained. Moreover, while executing web based e-trading service on the software mobility solutions, information on user account, password, and transaction details on internet can be obtained due to an attack by malware on the local host and relating service sites may be forged.
Aspects of the present invention provide an integrity based mutual authentication between a software mobility device and a local host, the software mobility device being movable through a mobile storage medium or a network connection to secure safety of a computing execution environment in the software mobility device, an authentication method for providing a safety channel between an application on the software mobility device and an I/O device of the local host, a method of forming an I/O channel, and the software mobility device, based on an operating system virtualization technology driven based on a user mode.
According to an aspect of the present invention, there is provided a method of authenticating a local host in the software mobility device including an operating system virtualization layer, the method including: requesting the local host a certificate in which an integrity value of the local host is stored and receiving the certificate from the local host; receiving an integrity value measured in the local host and comparing the measured integrity value with the integrity value included in the certificate to verify the local host; and when the local host is verified, encrypting a security profile of the software mobility device and transmitting the encrypted security profile to the local host.
The software mobility device may be contained in a mobility storage medium.
The software mobility device may be included in a server computer connected to the local host by a network and an operating system virtualization client is downloaded to the local host from the server computer for mediating communication between the operating system virtualization layer and the local host included in the server computer.
According to another aspect of the present invention, there is provided a method of forming a safety I/O channel between a software mobility device including an operating system virtualization layer and a local host, the method including: identifying whether an application is a subject of application for security policy which requires safety I/O while driving the application in the software mobility device; as the result of identification, if the application is the subject of application for security policy, installing a security filter driver to a kernel mode on the local host; forming a safety channel through a session key while transmitting data for executing an I/O device according to driving the application included in the software mobility device by the software mobility device and the security filter driver so as to transmit data.
The session key may be generated through mutual authentication between the software mobility device and the security filter driver while installing the security filter driver of the software mobility device is owned in common between the software mobility device and the security filter driver before installing the security filter driver of the software mobility device so as to be included in the security filter driver.
According to another aspect of the present invention, there is provided software mobility device including an operating system virtualization layer, the device including: a security management unit which requests the local host a certificate in which an integrity value of the local host is stored and receives the certificate from the local host, receives an integrity value measured in the local host, compares the measured integrity value with the integrity value included in the certificate to verify the local host, and encrypts a security profile of the software mobility device, when the local host is verified, and transmits the encrypted security profile to the local host.
According to another aspect of the present invention, there is provided software mobility device including an operating system virtualization layer, the device including: a security management unit which identifies whether an application is a subject of application for security policy that requires safety I/O while driving the application in the software mobility device, installs a security filter driver to a kernel mode on the local host, if the application is the subject of application for security policy, as the result of identification, and forms a safety channel through a session key while transmitting data for executing an I/O device according to driving the application included in the software mobility device by the software mobility device and the security filter driver so as to transmit data.
Additional aspects and/or advantages of the invention will be set forth in part in the description which follows and, in part, will be obvious from the description, or may be learned by practice of the invention.
These and/or other aspects and advantages of the invention will become apparent and more readily appreciated from the following description of the embodiments, taken in conjunction with the accompanying drawings of which:
Reference will now be made in detail to the present embodiments of the present invention, examples of which are illustrated in the accompanying drawings, wherein like reference numerals refer to the like elements throughout. The embodiments are described below in order to explain the present invention by referring to the figures.
An OS virtualization layer 330 is arranged on hardware 310 and an OS 320. The OS virtualization layer 330 includes applications 1 and 2 340 executed on the OS 320 and applications 3 and 4 350 executed on the OS virtualization layer 330. The software mobility device 400 is realized in the OS virtualization layer 330. In addition, the hardware 310 and the OS 320 are collectively referred to as the local host 300.
The OS virtualization layer unit 410 includes an OS virtualization management unit 411, a resource management unit 412, and a security management unit 413. The OS virtualization management unit 411 manages operating system virtualization of a local host. The resource management unit 412 manages resources of the local host, and the security management unit 413 manages security with the local host.
The top layer unit 420 includes an application 421, user data 422, and a personal computing environment 423. Software or applications on the software mobility device is driven in the same way as a general application by installing onto the operating system virtualization layer.
Mutual authentication between the software mobility device 400 stored in the mobile storage medium 700 and the local host 300 is described with reference to
Returning to
When the integrity of other party is identified through verification, each subject, that is, the mobile software mobility device 400 and the local host 300, encrypt a security profile (for example, version information) with a session key and mutually exchange the encrypted security profile. Integrity in the local host can be identified by a security reference monitor included in the OS 302 shown in
The software mobility device 400 realized based on a network is now described. The software mobility device client 810 downloaded to the local host 300 requests registration information of the corresponding local host 300 and transmits the information to the server computer 800 in which the software mobility device 400 is located. The software mobility device client 810 communicates with the local host 300. Substantial mutual authentication is accomplished between the server computer 800 and the local host 300.
The server computer 800 requests a certificate from the local host 300 through the software mobility device client 810 and receives the certificate from the local host 300. The local host 300 requests a certificate from the server computer 800 through the software mobility device client 810 and receives the certificate from the server computer 800.
The integrity values are stored in the exchanged certificate and the certificate may be electrically signed by a secret key of a CA. In addition, the integrity values included in the corresponding certificate may be stored in the vTCB 500 and the TCB 1140 in a digital file form so as to replace the certificate.
The server computer 800 compares the received integrity measured value of the local host with the stored values included in the transmitted certificate to verify the local host. The integrity values may be measured using an integrity check module included in the vTCB 500 and the TCB 1140. The software mobility device server executes as the software mobility device client 810 on the local host. When the integrity values of other party is identified through verification, a security profile of each subject is encrypted with a session key and is exchanged.
As the result of identification, if the application is the subject of a security policy, the security filter driver 1110 is installed to a kernel mode of the local host 300 on request of a secure file I/O in operation 1220. The security filter driver 1110 verifies a signature of a service provider (for example, Windows Hardware Qualification Lab (WHQL)) with respect to the corresponding I/O device driver 1120, thereby identifying the reliability of the I/O device driver 1120.
The software mobility device 400 and the security filter driver 1110 then form a secure channel through a session key K while transmitting data for executing an I/O device according to execution of the application in the software mobility device 400. The security filter driver 1110 transmits the corresponding data to an I/O device 1130 in operation 1230. The corresponding session key is generated during mutual authentication between the software mobility device 400 and the security filter driver while installing the security filter driver of the software mobility device 400, or is owned in common between the software mobility device 400 and the security filter driver before installing the security filter driver of the software mobility device 400 so as to be included in the security filter driver 1110.
Moreover, each time secure file I/O is requested, validity of the session key is managed with a time stamp. The session key is removed with the security filter driver when the software mobility device is completed. For example, the session keys of the software mobility device 400 and the security filter driver may be generated using random numbers and the time stamp.
According to the software mobility device according to aspects of the present invention, in moving software, data, and a personal computing environment through a mobile storage medium or a network connection, without separate installation, based on the local host kernel mode and a separate operating system virtualization technology, a secure channel is provided for integrity based mutual authentication between the software mobility device and the local host and for preventing leakage of malicious information and forgery, in order to execute software such as DRM and e-Trading without regard to malware in the local host, so that seamless computing is activated in other PCs or CE devices.
Aspects of the present invention can also be embodied as computer readable codes on a computer readable recording medium. The computer readable recording medium is any data storage device that can store data which can be thereafter read by a computer system. Examples of the computer readable recording medium include read-only memory (ROM), random-access memory (RAM), CD-ROMs, DVDs, Blu-ray discs, magnetic tapes, floppy disks, and optical data storage devices. Aspects of the present invention may also be embodied carrier waves (such as data transmission through the Internet). The computer readable recording medium can also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion. Also, functional programs, codes, and code segments for accomplishing the present invention can be easily construed by programmers skilled in the art to which the present invention pertains.
Although a few embodiments of the present invention have been shown and described, it would be appreciated by those skilled in the art that changes may be made in this embodiment without departing from the principles and spirit of the invention, the scope of which is defined in the claims and their equivalents.
Chang, Kyung-ah, Suh, Sang-bum, Heo, Sung-kwan, Kim, Byung-woan
Patent | Priority | Assignee | Title |
10149165, | Nov 07 2012 | Dell Products L.P. | Virtual wireless networking |
10255089, | Jul 31 2012 | CA, Inc. | Self-deleting virtual machines |
11134072, | Jan 14 2016 | Siemens Aktiengesellschaft | Method for verifying a security classification of a first device using a digital certificate, a first and second device and certificate issuing apparatus |
9100172, | Nov 04 2011 | SK PLANET CO , LTD | Method for interworking with trustzone between normal domain and secure domain, and management method of trusted application download, management server, device and system using it |
9179330, | Nov 07 2012 | Dell Products L.P. | Virtual wireless networking |
9208318, | Aug 20 2010 | Fujitsu Limited | Method and system for device integrity authentication |
Patent | Priority | Assignee | Title |
20020026576, | |||
20040204073, | |||
20090044260, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Mar 31 2008 | CHANG, KYUNG-AH | SAMSUNG ELECTRONICS CO , LTD | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 020854 | /0357 | |
Mar 31 2008 | SUH, SANG-BUM | SAMSUNG ELECTRONICS CO , LTD | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 020854 | /0357 | |
Mar 31 2008 | HEO, SUNG-KWAN | SAMSUNG ELECTRONICS CO , LTD | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 020854 | /0357 | |
Mar 31 2008 | KIM, BYUNG-WOAN | SAMSUNG ELECTRONICS CO , LTD | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 020854 | /0357 | |
Apr 17 2008 | Samsung Electronics Co., Ltd. | (assignment on the face of the patent) | / |
Date | Maintenance Fee Events |
Apr 25 2012 | ASPN: Payor Number Assigned. |
Apr 25 2012 | RMPN: Payer Number De-assigned. |
Aug 19 2015 | M1551: Payment of Maintenance Fee, 4th Year, Large Entity. |
Oct 28 2019 | REM: Maintenance Fee Reminder Mailed. |
Apr 13 2020 | EXP: Patent Expired for Failure to Pay Maintenance Fees. |
Date | Maintenance Schedule |
Mar 06 2015 | 4 years fee payment window open |
Sep 06 2015 | 6 months grace period start (w surcharge) |
Mar 06 2016 | patent expiry (for year 4) |
Mar 06 2018 | 2 years to revive unintentionally abandoned end. (for year 4) |
Mar 06 2019 | 8 years fee payment window open |
Sep 06 2019 | 6 months grace period start (w surcharge) |
Mar 06 2020 | patent expiry (for year 8) |
Mar 06 2022 | 2 years to revive unintentionally abandoned end. (for year 8) |
Mar 06 2023 | 12 years fee payment window open |
Sep 06 2023 | 6 months grace period start (w surcharge) |
Mar 06 2024 | patent expiry (for year 12) |
Mar 06 2026 | 2 years to revive unintentionally abandoned end. (for year 12) |