KR101428979B1 - Portable storage device, System and method for providing application program using the same - Google Patents

Portable storage device, System and method for providing application program using the same Download PDF

Info

Publication number
KR101428979B1
KR101428979B1 KR1020090077864A KR20090077864A KR101428979B1 KR 101428979 B1 KR101428979 B1 KR 101428979B1 KR 1020090077864 A KR1020090077864 A KR 1020090077864A KR 20090077864 A KR20090077864 A KR 20090077864A KR 101428979 B1 KR101428979 B1 KR 101428979B1
Authority
KR
South Korea
Prior art keywords
application program
storage device
portable storage
host computer
virtual environment
Prior art date
Application number
KR1020090077864A
Other languages
Korean (ko)
Other versions
KR20110020129A (en
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 KR1020090077864A priority Critical patent/KR101428979B1/en
Publication of KR20110020129A publication Critical patent/KR20110020129A/en
Application granted granted Critical
Publication of KR101428979B1 publication Critical patent/KR101428979B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/45545Guest-host, i.e. hypervisor is an application program itself, e.g. VirtualBox
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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

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)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Stored Programmes (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

본 발명은 휴대형 저장장치, 그를 이용한 응용프로그램 제공 시스템 및 방법에 관한 것으로, 휴대형 저장장치에 저장된 응용프로그램을 호스트 컴퓨터를 통하여 사용할 때 보안성을 확보하면서 무단사용을 방지하고, 고가의 응용프로그램 구매에 따른 사용자의 부담을 최소화하기 위한 것이다. 본 발명에 따르면, 호스트 컴퓨터가 휴대형 저장장치의 접속을 인식하면, 휴대형 저장장치의 가상화 엔진을 구동시켜 가상환경을 구축한다. 호스트 컴퓨터가 휴대형 저장장치의 사용자인터페이스 엔진을 구동시켜 가상환경 메뉴창을 표시한다. 가상환경 메뉴창을 통하여 특정 응용프로그램의 구매를 요청하면, 호스트 컴퓨터는 구동 중인 사용자인터페이스 엔진을 통하여 응용프로그램 제공서버에 접속하여 특정 응용프로그램에 대한 요금제 결제를 통해 특정 응용프로그램을 구매한다. 호스트 컴퓨터가 구동 중인 사용자인터페이스 엔진을 통하여 응용프로그램 제공서버로부터 구매한 특정 응용프로그램과 결제한 요금제에 따른 사용권 정보를 수신하여 휴대형 저장장치에 저장한다. 그리고 호스트 컴퓨터가 가상환경 메뉴창을 통하여 특정 응용프로그램의 구동 요청을 수신하면, 인증 모듈을 구동시켜 선택된 응용프로그램의 사용을 인증하고, 인증을 통과하면 가상화 엔진을 구동시켜 선택된 응용프로그램을 가상환경 위에서 구동시킨다.The present invention relates to a portable storage device, a system and a method for providing an application program using the portable storage device, and more particularly to a portable storage device that prevents unauthorized use while ensuring security when using an application program stored in a portable storage device through a host computer, Thereby minimizing the burden on the user. According to the present invention, when the host computer recognizes the connection of the portable storage device, the virtualization engine of the portable storage device is driven to establish a virtual environment. The host computer drives the user interface engine of the portable storage device to display the virtual environment menu window. When a purchase request of a specific application program is requested through the virtual environment menu window, the host computer accesses the application program providing server through the running user interface engine and purchases a specific application program through payment of a fee for the specific application program. The host computer receives the license information according to the payment plan and the specific application program purchased from the application program providing server through the user interface engine that the host computer is operating, and stores the license information in the portable storage device. When the host computer receives the activation request of the specific application program through the virtual environment menu window, the authentication module is activated to authenticate the use of the selected application program. When the host computer passes the authentication, the virtualization engine is activated to display the selected application program on the virtual environment .

가상환경, 메뉴창, 응용프로그램, 소프트웨어, 호스트 컴퓨터 Virtual environment, menu window, application, software, host computer

Description

휴대형 저장장치, 그를 이용한 응용프로그램 제공 시스템 및 방법{Portable storage device, System and method for providing application program using the same}BACKGROUND OF THE INVENTION 1. Field of the Invention [0001] The present invention relates to a portable storage device, a system and a method for providing an application program using the same,

본 발명은 호스트 컴퓨터에서의 응용프로그램 서비스 기술에 관한 것으로, 더욱 상세하게는 휴대형 저장장치가 호스트 컴퓨터에 연결되면 휴대형 저장장치에 저장된 응용프로그램을 사용할 수 있는 가상환경을 호스트 컴퓨터에 구축하는 휴대형 저장장치, 그를 이용한 응용프로그램 제공 시스템 및 방법에 관한 것이다.The present invention relates to an application program service technology in a host computer, and more particularly, to a portable storage device for storing a virtual environment in which a host computer can use an application program stored in a portable storage device, And an application program providing system and method using the same.

일반적으로 호스트 컴퓨터는 운영체제 위에 복수의 응용프로그램이 설치된다. 사용자는 호스트 컴퓨터에 설치된 각종 응용프로그램을 이용하여 문서편집, 영상편집, 게임 등을 수행할 수 있다.Generally, the host computer has a plurality of applications installed on the operating system. The user can perform document editing, image editing, game, and the like using various application programs installed in the host computer.

또한 사용자는 자신의 호스트 컴퓨터에서 작업 중인 파일을 물리적인 장소의 이동을 통해 다른 호스트 컴퓨터에서 작업을 수행하고자 하는 경우, 자신의 호스트 컴퓨터에서 작성한 파일을 다른 호스트 컴퓨터로 이동시키기 위한 저장매체로서 USB 메모리를 주로 이용한다.In addition, when a user wants to perform a job on another host computer by moving a file in his or her host computer through a physical location, the user can use a USB memory as a storage medium for moving a file created by his / her host computer to another host computer .

하지만 다른 호스트 컴퓨터에 USB 메모리에 저장된 파일을 실행할 수 있는 응용프로그램이 없는 경우, 해당 파일을 이용한 작업을 수행할 수 없다.However, if another host computer does not have an application that can execute files stored in the USB memory, you can not use the file.

이와 같은 문제점을 해소하기 위해서, 응용프로그램을 저장하며, 호스트 컴퓨터에 연결되면 저장된 응용프로그램을 이용하여 작업을 수행할 수 있도록 가상환경을 제공하는 휴대형 저장장치도 소개되고 있다. 따라서 사용자는 휴대형 저장장치가 연결된 호스트 컴퓨터에 구축된 가상환경을 통하여 응용프로그램을 실행시켜 해당 파일에 대한 필요한 작업을 수행할 수 있다.In order to solve such a problem, a portable storage device which stores an application program and provides a virtual environment so that a user can perform an operation using a stored application program when connected to a host computer is also introduced. Accordingly, the user can execute an application program through a virtual environment built on a host computer to which the portable storage device is connected, and perform necessary operations on the file.

이와 같이 종래의 휴대형 저장장치는 필요한 응용프로그램을 휴대할 수 있는 편리성을 사용자에게 제공한다. 하지만 사용자는 휴대형 저장장치와 더불어 필요한 응용프로그램을 함께 구매해야 하기 때문에, 사용자 입장에서는 비용적인 부담이 큰 것 또한 사실이다. 특히 다른 호스트 컴퓨터에서 빈번하게 파일 작업을 하지 않는 사용자의 경우, 고가의 응용프로그램을 포함한 휴대형 저장장치를 일시에 구매하는 것은 쉬운 일이 아니다.Thus, the conventional portable storage device provides the user with the convenience of carrying necessary application programs. However, it is also true that users are required to purchase necessary applications together with portable storage devices, which is costly for users. For users who do not frequently work with files on other host computers, purchasing portable storage devices, including expensive applications, is not easy.

따라서, 본 발명의 목적은 고가의 응용프로그램이 저장된 휴대형 저장장치를 구매하는 데에 따른 사용자의 부담을 최소화할 수 있도록 응용프로그램을 다양한 요금제를 통하여 구매하여 일정 기간 사용할 수 있는 휴대형 저장장치, 그를 이용한 응용프로그램 제공 시스템 및 방법을 제공하는 데 있다.Accordingly, it is an object of the present invention to provide a portable storage device that can be used for a certain period of time by purchasing an application program through various charging plans so as to minimize burden on a user in purchasing a portable storage device storing expensive application programs, And to provide an application providing system and method.

본 발명의 다른 목적은 휴대형 저장장치에 저장된 응용프로그램을 호스트 컴퓨터를 통하여 사용할 때 보안성을 확보하면서 무단사용을 방지할 수 있는 휴대형 저장장치, 그를 이용한 응용프로그램 제공 시스템 및 방법을 제공하는 데 있다.It is another object of the present invention to provide a portable storage device capable of preventing unauthorized use while ensuring security when an application program stored in a portable storage device is used through a host computer, and an application program providing system and method using the same.

상기 목적을 달성하기 위하여, 본 발명은 휴대형 저장장치에 기저장된 식별정보와 응용프로그램의 사용권 정보 확인을 통한 인증을 수행하고, 인증을 통과하면 가상환경에서 해당 응용프로그램을 구동시키는 휴대형 저장장치, 그를 이용한 응용프로그램 제공 시스템 및 방법을 제공한다.In order to achieve the above object, the present invention provides a portable storage device that performs authentication by checking identification information previously stored in a portable storage device and license information of an application program, and activates the application program in a virtual environment when authentication is passed, And an application program providing system and method using the same.

본 발명은 휴대형 저장장치와 호스트 컴퓨터를 포함하여 구성되는 응용프로그램 제공 시스템을 제공한다. 상기 휴대형 저장장치는 식별정보, 적어도 하나의 응용프로그램, 상기 응용프로그램의 사용권 정보, 상기 응용프로그램을 구동시킬 수 있는 가상환경을 구축하는 가상화 엔진, 상기 가상환경에서의 응용프로그램의 사용을 인증하는 인증 모듈 및 상기 가상환경에서의 상기 응용프로그램의 사용 및 구매를 안내하는 사용자인터페이스 엔진을 포함한다. 그리고 상기 호스트 컴퓨터는 상기 휴대형 저장장치가 접속되면, 상기 가상화 엔진을 구동시켜 상기 응용프로그램을 구동할 수 있는 가상환경을 구축하고, 상기 사용자인터페이스 엔진을 구동시켜 상기 휴대형 저장장치에 저장된 응용프로그램 항목을 포함하는 가상환경 메뉴창을 표시하고, 구동 중인 상기 사용자인터페이스 엔진을 통하여 상기 응용프로그램 항목 중 특정 응용프로그램 항목에 대한 선택 신호를 입력받으면, 상기 인증 모듈을 구동시켜 상기 선택된 응용프로그램의 사용권 정보로 인증을 수행하고, 인증을 통과하면 상기 가상화 엔진을 구동시켜 상기 선택된 응용프로그램을 상기 가상환경 위에서 구동시킨다.The present invention provides an application program providing system including a portable storage device and a host computer. The portable storage device may include identification information, at least one application program, usage right information of the application program, a virtualization engine for constructing a virtual environment capable of running the application program, authentication for authenticating use of the application program in the virtual environment, Module and a user interface engine that guides the use and purchase of the application program in the virtual environment. When the portable storage device is connected to the host computer, the host computer activates the virtualization engine to construct a virtual environment capable of driving the application program, and drives the user interface engine to store application program items stored in the portable storage device And when receiving a selection signal for a specific application program item among the application program items through the user interface engine that is being driven, drives the authentication module to authenticate the license information of the selected application program And if the authentication is passed, drives the virtualization engine to drive the selected application program on the virtual environment.

본 발명은 또한, 통신부와 저장부를 포함하여 구성되는 응용프로그램 제공 시스템의 휴대형 저장장치를 제공한다. 상기 통신부는 호스트 컴퓨터와 통신을 수행한다. 상기 저장부는 휴대형 저장장치의 식별정보, 적어도 하나의 응용프로그램, 상기 응용프로그램의 사용권 정보, 상기 응용프로그램을 구동시킬 수 있는 가상환경을 상기 호스트 컴퓨터에 구축하는 가상화 엔진 및 상기 응용프로그램에 대한 사용권 정보를 확인하여 상기 응용프로그램의 사용을 인증하는 인증 모듈을 저장한다. 이때 상기 저장부는 상기 호스트 컴퓨터에 구축된 가상환경에서의 상기 응용프로그램의 사용 및 구매를 안내하는 사용자인터페이스 엔진을 더 저장한다.The present invention also provides a portable storage device of an application program providing system including a communication unit and a storage unit. The communication unit performs communication with the host computer. The storage unit may store identification information of the portable storage device, at least one application program, usage right information of the application program, a virtualization engine for constructing a virtual environment for driving the application program on the host computer, And stores an authentication module for authenticating use of the application program. Wherein the storage further stores a user interface engine that guides the use and purchase of the application program in a virtual environment built on the host computer.

본 발명은 또한, 송수신부와 제어부를 포함하여 구성되는 응용프로그램 제공 시스템의 호스트 컴퓨터를 제공한다. 상기 송수신부는 식별정보, 적어도 하나의 응용프로그램, 상기 응용프로그램의 사용권 정보, 가상화 엔진, 사용자인터페이스 엔진 및 인증 모듈을 구비하는 휴대형 저장장치 및 응용프로그램 제공서버와 통신을 수행한다. 상기 제어부는 상기 휴대형 저장장치가 접속되면, 상기 가상화 엔진을 구동시켜 상기 응용프로그램을 구동할 수 있는 가상환경을 구축하고, 상기 사용자인터페이스 엔진을 구동시켜 상기 휴대형 저장장치에 저장된 응용프로그램 항목을 포함하는 가상환경 메뉴창을 표시하고, 구동 중인 상기 사용자인터페이스 엔진을 통하여 상기 응용프로그램 항목 중 특정 응용프로그램 항목에 대한 선택 신호를 입력받으면, 상기 인증 모듈을 구동시켜 상기 선택된 응용프로그램의 사용권 정보로 인증을 수행하고, 인증을 통과하면 상기 가상화 엔진을 구동시켜 상기 선택된 응용프로그램을 상기 가상환경 위에서 구동시킨다.The present invention also provides a host computer of an application program providing system including a transmitting / receiving unit and a control unit. The transceiver communicates with a portable storage device and an application program providing server having identification information, at least one application program, license information of the application program, a virtualization engine, a user interface engine, and an authentication module. Wherein the control unit is configured to establish a virtual environment capable of driving the application program by driving the virtualization engine when the portable storage device is connected to the portable storage device, A virtual environment menu window is displayed and when receiving a selection signal for a specific application program item among the application program items through the user interface engine in operation, the authentication module is activated to perform authentication using the license information of the selected application program And if the authentication is passed, drives the virtualization engine to drive the selected application program on the virtual environment.

본 발명은 또한, 호스트 컴퓨터가 휴대형 저장장치의 접속을 인식하면, 상기 휴대형 저장장치의 가상화 엔진을 구동시켜 상기 휴대형 저장장치에 저장된 응용프로그램을 구동할 수 있는 가상환경을 구축하는 구축 단계, 상기 호스트 컴퓨터가 상기 접속된 휴대형 저장장치의 사용자인터페이스 엔진을 구동시켜 가상환경 메뉴창을 표시하는 표시 단계, 상기 호스트 컴퓨터가 상기 가상환경 메뉴창을 통하여 특정 응용프로그램의 구매를 요청하면, 구동 중인 상기 사용자인터페이스 엔진을 통하여 응용프로그램 제공서버에 접속하여 상기 특정 응용프로그램에 대한 요금제 결제를 통해 상기 특정 응용프로그램을 구매하는 구매 단계, 상기 호스트 컴퓨터가 구동 중인 상기 사용자인터페이스 엔진을 통하여 상기 응용프로그램 제공서버로부터 상기 구매한 특정 응용프로그램과 결제한 요금제에 따른 사용권 정보를 수신하여 상기 휴대형 저장장치에 저장하는 저장 단계를 포함하는 휴대형 저장장치를 이용한 응용프로그램 제공 방법을 제공한다.The present invention further provides a virtualization system including a construction step of constructing a virtual environment capable of driving an application program stored in the portable storage device by driving a virtualization engine of the portable storage device when the host computer recognizes the connection of the portable storage device, Displaying a virtual environment menu window by driving a user interface engine of the connected portable storage device when the computer requests purchase of a specific application program through the virtual environment menu window; A purchasing step of accessing an application program providing server through an engine and purchasing the specific application program through payment of a fee for the specific application program; a step of purchasing the specific application program from the application program providing server through the user interface engine One And a storing step of receiving the usage right information according to the payment plan with the specific application program, and storing the received usage right information in the portable storage device. The present invention also provides an application program providing method using the portable storage device.

본 발명은 또한, 호스트 컴퓨터가 휴대형 저장장치의 접속을 인식하면, 상기 휴대형 저장장치의 가상화 엔진을 구동시켜 상기 휴대형 저장장치에 저장된 응용프로그램을 구동할 수 있는 가상환경을 구축하는 구축 단계, 상기 호스트 컴퓨터가 상기 휴대형 저장장치의 사용자인터페이스 엔진을 구동시켜 상기 가상환경에서 구동시킬 수 있는 응용프로그램 항목을 상기 휴대형 저장장치로부터 호출하여 표시하는 표시 단계, 상기 호스트 컴퓨터가 구동 중인 상기 사용자인터페이스 엔진을 통하여 상기 응용프로그램 항목 중 특정 응용프로그램 항목에 대한 선택 신호를 입력받으면, 상기 휴대형 저장장치의 인증 모듈을 구동시켜 상기 선택된 응용프로그램의 사용권 정보로 인증을 수행하는 인증 단계, 상기 인증을 통과하면 상기 호스트 컴퓨터가 상기 가상화 엔진을 통하여 상기 선택된 응용프로그램을 상기 가상환경 위에서 구동시키는 구동 단계를 포함하는 휴대형 저장장치를 이용한 응용프로그램 제공 방법을 제공한다.The present invention further provides a virtualization system including a construction step of constructing a virtual environment capable of driving an application program stored in the portable storage device by driving a virtualization engine of the portable storage device when the host computer recognizes the connection of the portable storage device, A display step of causing a computer to drive a user interface engine of the portable storage device to display an application program item that can be driven in the virtual environment by calling from the portable storage device and displaying the application program item; An authentication step of, upon receipt of a selection signal for a specific application program item among the application program items, activating an authentication module of the portable storage device to perform authentication using license information of the selected application program; remind The said selected application via the virtualization engine provides an application providing method using a portable storage device that includes a driving stage for driving on the virtual environment.

본 발명은 또한, 휴대형 저장장치가 호스트 컴퓨터에 접속되면, 상기 호스트 컴퓨터로 가상환경 구축에 필요한 가상화 엔진을 전송하는 가상화 엔진 전송 단계, 상기 휴대형 저장장치가 상기 가상환경에서 구동시킬 수 있는 응용프로그램 항목을 상기 호스트 컴퓨터로 전송하는 응용프로그램 항목 전송 단계, 상기 휴대형 저장장치가 상기 응용프로그램 항목 중 특정 응용프로그램 항목에 대한 선택 신호를 입력받은 상기 호스트 컴퓨터의 요청에 따라 상기 선택된 응용프로그램의 사용권 정보와 식별정보를 상기 호스트 컴퓨터로 전송하는 사용권 정보 전송 단계, 상기 휴대형 저장장치가 상기 사용권 정보와 식별정보를 통하여 상기 선택된 응용프로그램의 사용을 인증한 상기 호스트 컴퓨터의 요청에 따라 상기 선택된 응용프로그램을 상기 호스트 컴퓨터로 전송하여 상기 가상환경에서 구동시키는 응용프로그램 구동 단계를 포함하는 휴대형 저장장치를 이용한 응용프로그램 제공 방법을 제공한다.The present invention also relates to a virtualization engine transferring step of transferring a virtualization engine necessary for establishing a virtual environment to the host computer when the portable storage device is connected to the host computer, To the host computer, a step of transmitting an application program to the portable computer, the application program item being transmitted from the portable storage device to the host computer in response to a request from the host computer for receiving a selection signal for a specific application program item among the application program items, The portable storage device transmits the selected application program to the host computer in response to a request from the host computer that has authenticated the use of the selected application program through the usage right information and the identification information, It provides an application providing method and transmits it to the computer using a portable storage device that includes an application driving step of driving in the virtual environment.

본 발명은 또한, 전술된 응용프로그램 제공 방법을 구현하는 프로그램을 기록한 컴퓨터로 판독 가능한 기록매체를 제공한다.The present invention also provides a computer-readable recording medium on which a program for implementing the above-described application program providing method is recorded.

본 발명에 따르면, 사용자는 필요한 응용프로그램에 대한 다양한 요금제 결제를 통하여 필요한 기간 동안 해당 응용프로그램을 사용할 수 있기 때문에, 고가의 응용프로그램이 저장된 휴대형 저장장치를 구매하는 데에 따른 사용자의 부담을 최소화할 수 있다.According to the present invention, since the user can use the application program for a necessary period through various payment plans for the required application program, the user can minimize the burden on the user by purchasing the portable storage device storing the expensive application program .

휴대형 저장장치가 연결된 호스트 컴퓨터를 통하여 가상환경에서 휴대형 저장장치에 저장된 응용프로그램을 이용할 때, 휴대형 저장장치의 식별정보와 응용프로그램의 사용권 정보 확인을 통한 사용자 인증을 수행하기 때문에, 보안성을 확보하면서 응용프로그램의 무단사용을 억제할 수 있다. 즉 인증 단계에서 사용권 정보에 포함된 요금제에 따른 사용기한 확인을 통하여 해당 응용프로그램의 사용 가능 여부를 확인하고, 사용 가능한 경우 사용권 정보에 포함된 식별정보와 휴대형 저장장치의 식별정보가 일치하는 지의 여부로 인증을 수행한다. 따라서 응용프로그램의 무단복제를 통한 무단사용을 방지할 수 있다.When the application program stored in the portable storage device is used in a virtual environment through the host computer connected to the portable storage device, the user authentication is performed by checking the identification information of the portable storage device and the usage right information of the application program. Unauthorized use of the application can be suppressed. That is, in the authentication step, the availability of the application program is confirmed through the usage check according to the charge plan included in the license information, and if available, whether the identification information included in the license information matches the identification information of the portable storage device . Therefore, it is possible to prevent unauthorized use through unauthorized copying of the application program.

이하, 첨부 도면을 참조하여 본 발명의 실시예를 보다 상세하게 설명하고자 한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

본 실시예에 따른 휴대형 저장장치(10)를 이용한 응용프로그램 제공 시스템(100)은, 도 1에 도시된 바와 같이, 휴대형 저장장치(10)를 통한 응용프로그램 서비스를 제공한다. 응용프로그램 제공 시스템(100)은 각종 응용프로그램을 응용프로그램 제공서버(40)에서 제공하며, 휴대형 저장장치(10)를 통하여 응용프로그램 제공서버(40)로부터 필요한 응용프로그램을 다운로드 받아 사용할 수 있는 환경을 제공한다. 이때 사용자는 필요한 응용프로그램을 사용기한에 따른 요금제 선택을 통하여 휴대형 저장장치(10)로 다운로드 받아 사용할 수 있다.The application program providing system 100 using the portable storage device 10 according to the present embodiment provides an application program service through the portable storage device 10 as shown in FIG. The application program providing system 100 provides various application programs in the application program providing server 40 and is capable of downloading necessary application programs from the application program providing server 40 through the portable storage device 10 to provide. At this time, the user can download the required application program to the portable storage device 10 through the selection of the charge plan according to the usage period.

본 실시예에 따른 응용프로그램 제공 시스템(100)은 유무선 통신망(31)을 매개로 연결된 휴대형 저장장치(10) 및 호스트 컴퓨터(20)와, 네트워크(33)를 매개로 호스트 컴퓨터(20)에 연결된 응용프로그램 제공서버(40)를 포함하여 구성된다.The application program providing system 100 according to the present embodiment includes a portable storage device 10 and a host computer 20 connected via a wired or wireless communication network 31 and a host computer 20 connected to the host computer 20 via a network 33 And an application providing server (40).

유무선 통신망(31)은 근거리에 위치하는 휴대형 저장장치(10)와 호스트 컴퓨터(20) 사이의 데이터 전송 및 정보 교환을 위한 데이터 통신망을 의미한다. 이때 유무선 통신망(31)은 USB, USB2, Serial/Parallel Port, Ethernet, TCP/IP, 통신 케이블 등을 이용한 유선 통신망과, 근거리 무선통신망을 포함할 수 있다. 근거리 무선통신 방식으로는 블루투스(Bluetooth), 지그비(zigbee), 루비(Rubee), 적외선데이터통신(IrDA; Infrared Data Association), 초광대역방식(UWB; Ultra Wide Broadband) 등이 사용될 수 있다.The wired / wireless communication network 31 is a data communication network for data transmission and information exchange between the portable storage device 10 and the host computer 20 located at a short distance. The wired / wireless communication network 31 may include a wired communication network using a USB, a USB2, a serial / parallel port, an Ethernet, a TCP / IP, a communication cable, and a short-range wireless communication network. Bluetooth, Zigbee, Ruby, Infrared Data Association (IrDA), and Ultra Wide Broadband (UWB) may be used as the short-range wireless communication method.

휴대형 저장장치(10)는 응용프로그램 가상화 기술을 적용하여 호스트 컴퓨터(20)에 응용프로그램을 설치하지 않고 사용할 수 있는 응용프로그램을 사용자에 게 제공한다. 휴대형 저장장치(10)는 사용자의 요청에 따라 응용프로그램을 가상환경에서 구동시키기 전에 해당 응용프로그램에 인증 단계를 수행한다.The portable storage device 10 provides the user with an application program that can be used without installing an application program on the host computer 20 by applying application virtualization technology. The portable storage device 10 performs an authentication step for the application program before the application program is activated in the virtual environment according to a user's request.

호스트 컴퓨터(20)는 유무선 통신망(31)을 통하여 휴대형 저장장치(10)와 연결되며, 네트워크(33)를 통하여 응용프로그램 제공서버(40)와 연결된다. 호스트 컴퓨터(20)는 유무선 통신망(31)을 통하여 휴대형 저장장치(10)가 접속되면 휴대형 저장장치(10)에 저장된 응용프로그램을 구동시킬 수 있는 가상환경을 구축한다. 호스트 컴퓨터(20)는 가상환경에서 사용자의 요청에 따라 휴대형 저장장치(10)로부터 응용프로그램을 요청하여 구동시킨다. 호스트 컴퓨터(20)는 가상환경에서 사용자의 요청에 따라 응용프로그램 제공서버(40)로부터 응용프로그램을 구매하며, 구매한 응용프로그램과 함께 사용권 정보를 수신하여 휴대형 저장장치(10)에 저장한다.The host computer 20 is connected to the portable storage device 10 through the wired / wireless communication network 31 and is connected to the application program providing server 40 via the network 33. The host computer 20 establishes a virtual environment capable of driving an application program stored in the portable storage device 10 when the portable storage device 10 is connected through the wired / wireless communication network 31. The host computer 20 requests and drives an application program from the portable storage device 10 in response to a user's request in a virtual environment. The host computer 20 purchases an application program from the application program providing server 40 in response to a user's request in a virtual environment, receives the license information together with the purchased application program, and stores the received license information in the portable storage device 10.

네트워크(33)는 호스트 컴퓨터(20)와 응용프로그램 제공서버(40) 사이의 데이터 전송 및 정보 교환을 위한 일련의 데이터 송수신 동작을 수행한다. 네트워크(33)는 IP를 통하여 대용량 데이터의 송수신 서비스 및 끊김없는 데이터 서비스를 제공하는 IP망으로, IP를 기반으로 서로 다른 망을 통합한 IP망 구조인 ALL-IP망일 수 있다. 또한 네트워크(33)는 유선통신망, 이동통신망, WiBro(Wireless Broadband)망, HSDPA(High-Speed Downlink Packet Access)망, 위성통신망 중에 하나일 수 있다.The network 33 performs a series of data transmission / reception operations for data transmission and information exchange between the host computer 20 and the application program providing server 40. The network 33 may be an IP network that provides large capacity data transmission / reception services and seamless data services through IP, and may be an ALL-IP network that is an IP network structure in which different networks are integrated based on IP. The network 33 may be one of a wired communication network, a mobile communication network, a WiBro (Wireless Broadband) network, a High-Speed Downlink Packet Access (HSDPA) network, and a satellite communication network.

그리고 응용프로그램 제공서버(40)는 네트워크(33)를 통하여 호스트 컴퓨터(20)와 연결된다. 응용프로그램 제공서버(40)는 복수의 응용프로그램과, 응용프로그램을 구매한 사용자의 사용권 정보를 저장하는 데이터베이스(41)를 구비한다. 응용프로그램 제공서버(40)는 휴대형 저장장치(10)가 연결된 호스트 컴퓨터(20)를 통한 사용자의 요청에 따른 응답 기능을 수행한다. 응용프로그램 제공서버(40)는 응용프로그램을 다양한 요금제를 통하여 사용자의 휴대형 저장장치(10)로 제공한다.And the application providing server 40 is connected to the host computer 20 via the network 33. [ The application providing server 40 includes a plurality of application programs and a database 41 for storing usage right information of users who have purchased application programs. The application providing server 40 performs a response function in accordance with a user's request through the host computer 20 to which the portable storage device 10 is connected. The application providing server 40 provides the application program to the portable storage device 10 of the user through various charging systems.

본 실시예에 따른 응용프로그램 제공 시스템(100)의 휴대형 저장장치(10)에 대해서 도 1 및 도 2를 참조하여 설명하면 다음과 같다. 여기서 도 2는 도 1의 휴대형 저장장치(10)의 구성을 보여주는 블록도이다.The portable storage device 10 of the application program providing system 100 according to the present embodiment will be described with reference to FIGS. 1 and 2. FIG. 2 is a block diagram illustrating the configuration of the portable storage device 10 of FIG.

휴대형 저장장치(10)는 통신부(11) 및 저장부(13)를 포함하여 구성된다.The portable storage device 10 includes a communication unit 11 and a storage unit 13.

통신부(11)는 유무선 통신망(31)을 매개로 호스트 컴퓨터(20)와 통신을 수행한다.The communication unit 11 communicates with the host computer 20 through the wired / wireless communication network 31. [

저장부(13)는 휴대형 저장장치(10)의 식별정보(15), 응용프로그램(16), 사용권 정보(17), 가상화 엔진(14), 사용자인터페이스(UI) 엔진(17) 및 인증 모듈(19)을 저장하며, 하나 이상의 휘발성 메모리 소자와 비휘발성 메모리 소자로 이루어진다. 식별정보(15)는 휴대형 저장장치(10)에 부여된 고유의 ID(identification)이다. 응용프로그램(16)은 휴대형 저장장치(10) 구매시 기저장되어 있거나 응용프로그램 제공서버(40)로부터 구매한 응용프로그램을 포함한다. 사용권 정보(17)는 응용프로그램에 대한 사용권 정보로서, 응용프로그램 구매시 응용프로그램과 함께 응용프로그램 제공서버(40)로부터 수신한다. 가상화 엔진(14)은 휴대형 저장장치(10)가 접속된 호스트 컴퓨터(20)에서 휴대형 저장장치(10)에 저장된 응용프로그램(16)을 구동시킬 수 있는 가상환경을 호스트 컴퓨터(20)에 구축한다. 사용자인터페이스 엔진(18)은 호스트 컴퓨터(20)에 구축된 가상환경에서의 응용프로그램의 사용 및 구매를 안내하는 사용자인터페이스를 제공한다. 그리고 인증 모듈(19)은 응용프로그램에 대한 사용권 정보(17)와 식별정보(15)를 확인하여 사용권의 유효성을 판단하고, 유효성 판단 결과에 따라 응용프로그램의 사용 여부를 인증한다.The storage unit 13 stores identification information 15 of the portable storage device 10, an application program 16, license information 17, a virtualization engine 14, a user interface (UI) engine 17, 19, and is made up of one or more volatile memory elements and a nonvolatile memory element. The identification information 15 is a unique identification given to the portable storage device 10. The application program 16 includes an application program previously stored or purchased from the application providing server 40 when the portable storage device 10 is purchased. The license information 17 is license information for the application program and is received from the application program providing server 40 together with the application program when the application program is purchased. The virtualization engine 14 constructs a virtual environment in the host computer 20 that can drive the application program 16 stored in the portable storage device 10 in the host computer 20 to which the portable storage device 10 is connected . The user interface engine 18 provides a user interface that guides the use and purchase of applications in a virtual environment built on the host computer 20. [ Then, the authentication module 19 confirms the validity of the license by checking the license information 17 and the identification information 15 for the application program, and authenticates whether or not the application program is used according to the result of the validity check.

특히 휴대형 자장장치(10)가 호스트 컴퓨터(20)에 접속되면, 호스트 컴퓨터(10)로 가상환경 구축에 필요한 가상화 엔진(14)을 전송한다. 이때 호스트 컴퓨터(20)는 가상화 엔진(14)을 구동시켜 호스트 컴퓨터(20)에 가상환경을 구축한다. 호스트 컴퓨터(20)에 구동 중인 가상화 엔진(14)은 사용자인터페이스 엔진(18)을 호스트 컴퓨터(20)로 호출하여 가상환경 메뉴창(도 6의 22)을 화면에 표시한다. 가상화 엔진(14)은 또한 인증 모듈(19)을 호스트 컴퓨터(20)로 호출하여 메모리부(도 3의 25)에 탑재할 수 있다.In particular, when the portable magnetic field device 10 is connected to the host computer 20, the host computer 10 transmits the virtualization engine 14 necessary for establishing the virtual environment. At this time, the host computer 20 drives the virtualization engine 14 to establish a virtual environment in the host computer 20. [ The virtualization engine 14 running on the host computer 20 calls the user interface engine 18 to the host computer 20 and displays the virtual environment menu window 22 on the screen. The virtualization engine 14 may also call the authentication module 19 to the host computer 20 and mount it in the memory portion (25 in FIG. 3).

휴대형 저장장치(10)가 가상환경에서 구동시킬 수 있는 응용프로그램 항목을 호스트 컴퓨터(20)로 전송한다. 이때 호스트 컴퓨터(20)는 구동 중인 사용자인터페이스 엔진(18)을 통하여 휴대형 저장장치(10)에 저장된 응용프로그램(16)을 파악하여 응용프로그램 항목을 포함하는 가상환경 메뉴창을 화면에 표시한다.The portable storage device 10 transmits an application program item that can be driven in the virtual environment to the host computer 20. [ At this time, the host computer 20 recognizes the application programs 16 stored in the portable storage device 10 through the user interface engine 18 in operation and displays a virtual environment menu window including application program items on the screen.

휴대형 저장장치(10)가 응용프로그램 항목 중 특정 응용프로그램 항목에 대한 선택 신호를 입력받은 호스트 컴퓨터(20)의 요청에 따라 선택된 특정 응용프로그램의 사용권 정보와 식별정보를 해당 호스트 컴퓨터(20)로 전송한다. 휴대형 저장장치(10)가 사용권의 유효함을 확인한 호스트 컴퓨터(20)의 요청에 따라 선택된 응용프로그램을 호스트 컴퓨터(20)로 전송하여 가상환경에서 구동시킨다. 이때 호 스트 컴퓨터(20)는 구동 중인 가상화 엔진(14)을 통하여 수신한 사용권 정보와 식별정보를 확인하여 사용권의 유효성을 판단한다.The portable storage device 10 transmits the license information and the identification information of the selected specific application program to the host computer 20 in response to a request from the host computer 20 that receives the selection signal for a specific application item among the application program items do. The portable storage device 10 transmits the selected application program to the host computer 20 at the request of the host computer 20 confirming that the license is valid, and drives the selected application program in the virtual environment. At this time, the host computer 20 determines the validity of the license by checking the license information and the identification information received through the virtualization engine 14 in operation.

휴대형 저장장치(10)가 특정 파일의 실행 요청을 입력받은 호스트 컴퓨터(20)의 요청에 따라 특정 파일을 실행할 수 있는 응용프로그램의 사용권 정보와 식별정보를 해당 호스트 컴퓨터(20)로 전송한다. 휴대형 저장장치(10)가 사용권의 유효함을 확인한 호스트 컴퓨터(20)의 요청에 따라 해당 응용프로그램을 호스트 컴퓨터(20)로 전송하여 가상환경에서 구동시킨 후 특정 파일을 실행시킨다. 물론 호스트 컴퓨터(20)는 구동 중인 가상화 엔진(14)을 통하여 수신한 사용권 정보와 식별정보를 확인하여 사용권의 유효성을 판단한다.The portable storage device 10 transmits the usage right information and the identification information of the application program capable of executing the specific file to the host computer 20 at the request of the host computer 20 receiving the execution request of the specific file. The portable storage device 10 transmits the application program to the host computer 20 at the request of the host computer 20 confirming the validity of the license, and drives the virtual machine in the virtual environment to execute the specific file. Of course, the host computer 20 determines the validity of the license by checking the license information and the identification information received through the virtualization engine 14 in operation.

휴대형 저장장치(10)는 호스트 컴퓨터(20)를 통하여 응용프로그램 제공서버(40)에서 구매한 응용프로그램(16)과, 응용프로그램(16)의 구매시 결제한 요금제에 대한 사용권 정보(17)를 수신하여 저장부(13)에 저장한다.The portable storage device 10 receives the application program 16 purchased from the application program providing server 40 via the host computer 20 and the license information 17 for the payment plan paid upon purchase of the application program 16 And stores it in the storage unit 13.

본 실시예에 따른 응용프로그램 제공 시스템(100)의 호스트 컴퓨터(20)에 대해서 도 1 내지 도 3을 참조하여 설명하면 다음과 같다. 여기서 도 3은 도 1의 호스트 컴퓨터(20)의 구성을 보여주는 블록도이다.The host computer 20 of the application program providing system 100 according to the present embodiment will be described with reference to FIGS. 1 to 3. FIG. 3 is a block diagram showing a configuration of the host computer 20 of FIG.

호스트 컴퓨터(20)는 송수신부(21), 입력부(23), 메모리부(25), 표시부(27) 및 제어부(29)를 포함하여 구성된다.The host computer 20 includes a transmitting and receiving section 21, an input section 23, a memory section 25, a display section 27, and a control section 29.

송수신부(21)는 유무선 통신망(31)을 매개로 휴대형 저장장치(10)와 통신을 수행하고, 네트워크(33)를 통하여 응용프로그램 제공서버(40)와 통신을 수행한다. 송수신부(21)는 휴대형 저장장치(10)에 저장된 응용프로그램(16)의 구동과, 응용프 로그램 제공서버(40)를 통한 응용프로그램의 구매에 필요한 데이터를 송수신한다.The transceiver unit 21 communicates with the portable storage device 10 via the wired / wireless communication network 31 and communicates with the application program providing server 40 via the network 33. [ The transceiver unit 21 transmits and receives data necessary for driving the application program 16 stored in the portable storage device 10 and purchasing an application program through the application program providing server 40. [

입력부(23)는 호스트 컴퓨터(20)의 조작을 위한 복수의 키를 제공하며, 사용자의 키선택에 따른 선택 신호를 입력받아 제어부(29)로 전달한다. 사용자는 입력부(23)를 통해 응용프로그램의 구매 및 구동을 요청하고, 구동 중인 응용프로그램을 통한 작업을 수행할 수 있다. 이때 입력부(23)로는 키보드, 마우스, 터치패드, 터치스크린(touch screen) 등의 입력장치가 사용될 수 있다.The input unit 23 provides a plurality of keys for operating the host computer 20 and receives a selection signal according to a user's selection of keys to transmit the selection signal to the control unit 29. The user can request purchase and operation of the application program through the input unit 23, and can perform work through the application program in operation. As the input unit 23, an input device such as a keyboard, a mouse, a touch pad, or a touch screen may be used.

메모리부(25)는 호스트 컴퓨터(20)의 동작 제어시 필요한 프로그램과, 그 프로그램 수행 중에 발생되는 데이터를 저장하며, 하나 이상의 휘발성 메모리 소자와 비휘발성 메모리 소자로 이루어진다. 메모리부(25)는 접속된 휴대형 저장장치(10)로부터 수신한 가상화 엔진(14), 사용자인터페이스 엔진(18), 인증 모듈(19) 및 응용프로그램(16)을 탑재한다. 호스트 컴퓨터(20)와 휴대형 자장장치(10) 간의 통신 연결이 끊기면, 메모리부(25)에 탑재된 가상화 엔진(14), 사용자인터페이스 엔진(18), 인증 모듈(19) 및 응용프로그램(16)은 메모리부(25)에서 제거된다.The memory unit 25 stores a program necessary for controlling the operation of the host computer 20 and data generated during the execution of the program, and is composed of one or more volatile memory elements and nonvolatile memory elements. The memory unit 25 mounts the virtualization engine 14, the user interface engine 18, the authentication module 19 and the application program 16 received from the connected portable storage device 10. The virtualization engine 14, the user interface engine 18, the authentication module 19, and the application program 16, which are mounted in the memory unit 25, are disconnected when the communication connection between the host computer 20 and the portable magnetic- Is removed from the memory unit 25. [

표시부(27)는 호스트 컴퓨터(20)에서 실행되는 각종 기능 메뉴를 비롯하여 메모리부(25)에 저장된 정보를 표시한다. 표시부(27)는 제어부(29)의 제어에 따라 가상환경 메뉴창을 표시하고, 가상환경에서 구동시킬 수 있는 응용프로그램 항목을 표시한다. 표시부(27)로는 LCD(Liquid Crystal Display)나 터치 스크린이 사용될 수 있다. 터치 스크린은 표시 장치와 입력 장치로서의 역할을 동시에 수행한다.The display unit 27 displays information stored in the memory unit 25 as well as various function menus executed in the host computer 20. [ The display unit 27 displays a virtual environment menu window under the control of the control unit 29 and displays application program items that can be operated in the virtual environment. As the display unit 27, an LCD (Liquid Crystal Display) or a touch screen may be used. The touch screen serves both as a display device and as an input device.

그리고 제어부(29)는 호스트 컴퓨터(20)의 전반적인 제어 동작을 수행하는 마이크로프로세서이다. 제어부(29)는 접속된 휴대형 저장장치(10)로부터 수신한 가 상화 엔진(14)을 메모리부(25)에 탑재하며, 탑재한 가상화 엔진(14)을 통하여 가상환경에서의 응용프로그램의 사용 및 구매를 포함한 휴대형 저장장치(10)를 통한 응용프로그램 서비스를 제어한다.The control unit 29 is a microprocessor that performs overall control operations of the host computer 20. The control unit 29 loads the virtualization engine 14 received from the connected portable storage device 10 into the memory unit 25 and uses the application program in the virtual environment through the virtualization engine 14 And controls application service through the portable storage device 10 including purchase.

특히 제어부(29)는 휴대형 저장장치(10)의 접속을 인식하면, 가상화 엔진(14)을 구동시켜 휴대형 저장장치(10)에 저장된 응용프로그램(16)을 구동할 수 있는 가상환경을 구축한다. 제어부(29)는 사용자인터페이스 엔진(18)을 구동시켜 가상환경에서 구동시킬 수 있는 응용프로그램 항목을 포함한 가상환경 메뉴창을 표시한다. 제어부(29)는 응용프로그램 항목 중 특정 응용프로그램 항목에 대한 선택 신호를 입력받으면, 인증 모듈(19)을 구동시켜 선택된 응용프로그램의 사용권의 유효 여부를 확인한다. 그리고 사용권이 유효하면 제어부(29)는 가상화 엔진(14)을 통하여 선택된 응용프로그램을 가상환경 위에서 구동시킨다. 또한 제어부(29)는 응용프로그램 제공서버(40)에서 구매한 응용프로그램과, 응용프로그램의 구매시 결제한 요금제에 대한 사용권 정보를 수신하여 휴대형 저장장치(10)에 저장한다.Particularly, when recognizing the connection of the portable storage device 10, the control unit 29 drives the virtualization engine 14 to establish a virtual environment in which the application program 16 stored in the portable storage device 10 can be driven. The control unit 29 displays a virtual environment menu window including application program items that can be driven in the virtual environment by driving the user interface engine 18. [ When the control unit 29 receives a selection signal for a specific application program item among the application program items, the control unit 29 drives the authentication module 19 to check whether the license for the selected application program is valid. If the license is valid, the control unit 29 drives the selected application program through the virtualization engine 14 on the virtual environment. Also, the control unit 29 receives the application program purchased from the application program providing server 40 and the license information about the payment plan settled upon purchase of the application program, and stores it in the portable storage device 10.

휴대형 저장장치(10)가 접속된 호스트 컴퓨터(20)를 통한 응용프로그램 서비스에 대해서 좀 더 구체적으로 설명하면 다음과 같다.The application service through the host computer 20 to which the portable storage device 10 is connected will be described in more detail as follows.

제어부(29)는 휴대형 저장장치(10)가 유무선 통신망(31)을 통하여 호스트 컴퓨터(20)에 접속되면, 송수신부(21)를 통해 휴대형 저장장치(10)로부터 가상화 엔진(14)을 수신하여 메모리부(25)에 탑재한다. 제어부(29)는 메모리부(25)에 탑재된 가상화 엔진(14)을 구동시켜 가상환경을 구축하고, 사용자인터페이스 엔진(18)을 구동시켜 가상환경에서의 응용프로그램 서비스를 위한 가상환경 메뉴창을 화면에 표시한다.The control unit 29 receives the virtualization engine 14 from the portable storage device 10 via the transceiver unit 21 when the portable storage device 10 is connected to the host computer 20 via the wired or wireless communication network 31 And mounted on the memory unit 25. The control unit 29 drives the virtualization engine 14 mounted in the memory unit 25 to construct a virtual environment and drives the user interface engine 18 to create a virtual environment menu window for application service in the virtual environment Display it on the screen.

이때 가상화 엔진(14)은 사용자인터페이스 엔진(18)을 호스트 컴퓨터(20)로 호출하여 가상환경 메뉴창을 화면에 표시한다. 가상화 엔진(14)은 또한 인증 모듈(19)을 호스트 컴퓨터(20)로 호출하여 메모리부(25)에 탑재할 수 있다.At this time, the virtualization engine 14 calls the user interface engine 18 to the host computer 20 to display a virtual environment menu window on the screen. The virtualization engine 14 may also call the authentication module 19 to the host computer 20 and mount it in the memory section 25. [

여기서 가상환경 메뉴창(22)은, 도 6에 도시된 바와 같이, 메뉴창(24), 응용프로그램 항목창(26) 및 응용프로그램 구매창(28)을 포함한다. 메뉴창(24)은 To Go SW 메뉴(24a), My Storage 메뉴(24b), My PC 메뉴(24c), My Life 메뉴, Setting 메뉴를 포함한다. My Storage 메뉴(24b)는 사용자가 휴대형 저장장치(10)에 저장된 파일을 확인할 때 선택할 수 있는 메뉴이다. My PC 메뉴(24c)는 휴대형 저장장치(10)에 저장된 파일 정보를 확인하거나, 휴대형 저장장치(10)가 연결된 호스트 컴퓨터(20)의 환경을 사용자가 설정한 환경으로 전환시킬 때 선택할 수 있는 메뉴이다. My Life 메뉴는 이메일, 단문메시지, 메신저 등의 사용자의 온라인 커뮤니케이션 채널, 블로그, 앨범을 사용자가 사용하고자 할 때 선택할 수 있는 메뉴이다. 그리고 To Go SW 메뉴(24a)는 응용프로그램의 구매 및 사용시 선택할 수 있는 메뉴 항목이다.The virtual environment menu window 22 includes a menu window 24, an application item window 26, and an application program purchase window 28, as shown in FIG. The menu window 24 includes To Go SW menu 24a, My Storage menu 24b, My PC menu 24c, My Life menu, and Setting menu. The My Storage menu 24b is a menu that a user can select when checking a file stored in the portable storage device 10. [ The My PC menu 24c is used to confirm the file information stored in the portable storage device 10 or to change the environment of the host computer 20 to which the portable storage device 10 is connected, to be. The My Life menu is a menu that you can choose when you want to use your online communication channels, blogs, and albums such as emails, short messages, and instant messages. And the To Go SW menu (24a) is a menu item to be selected when purchasing and using the application program.

특히 To Go SW 메뉴(24a)가 선택되면, 사용자인터페이스 엔진(18)은 메뉴창(24) 오른쪽에 응용프로그램 항목창(26)과 응용프로그램 구매창(28)을 표시한다. 응용프로그램 항목창(26)은 휴대형 저장장치(10)에 저장된 응용프로그램의 항목을 표시하며, 응용프로그램 항목은 리스트 또는 아이콘으로 표시될 수 있다. 본 실시예에서는 휴대형 저장장치(10)에 저장된 AA, BB, CC 응용프로그램 등이 아이콘으로 표시된 예를 개시하였다.In particular, when the To Go SW menu 24a is selected, the user interface engine 18 displays the application item window 26 and the application purchase window 28 on the right side of the menu window 24. [ The application item window 26 displays an item of an application program stored in the portable storage device 10, and the application item item may be displayed as a list or an icon. In this embodiment, examples of AA, BB, and CC application programs stored in the portable storage device 10 are shown as icons.

응용프로그램 항목창(26)에서 특정 응용프로그램 항목이 선택되면, 가상화 엔진(14)은 인증 모듈(19)을 통하여 선택된 응용프로그램에 대한 인증을 수행한 후, 인증을 통과하면 선택된 응용프로그램을 휴대형 저장장치(10)로부터 호출하여 가상환경에서 구동시킨다.When a specific application item is selected in the application item window 26, the virtualization engine 14 performs authentication for the selected application program through the authentication module 19, and if the authentication is passed, And is called from the device 10 to be driven in a virtual environment.

응용프로그램 구매창(28)은 사용자가 응용프로그램 제공서버(40)에 직접 접속하지 않더라도 응용프로그램을 구매할 수 있는 사용자인터페이스이다. 응용프로그램 구매창(28)은 응용프로그램 제공서버(40)에서 구매할 수 있는 응용프로그램을 리스트 또는 항목으로 제공할 수 있으며, 응용프로그램을 신속하게 찾을 수 있는 응용프로그램 검색창(28a,28b)을 더 포함할 수 있다. 응용프로그램 검색창(28a,28b)은 검색어 입력창(28a)과, 검색 버튼(28b)으로 구성될 수 있으며 이에 한정되는 것은 아니다. 예컨대 검색어 입력창(28a)에 “DD"라는 검색어를 입력한 후 검색 버튼(28b)을 누르면, ”DD"에 대응하는 응용프로그램의 아이콘(28c)을 응용프로그램 구매창(28)에 표시한다. 사용자는 해당 응용프로그램의 아이콘(28c)을 응용프로그램 항목창(26)으로의 드래그 앤 드롭(drag and drop)으로 구매를 요청할 수 있다.The application purchase window 28 is a user interface through which an application program can be purchased even if the user does not directly access the application program providing server 40. [ The application purchase window 28 can provide an application program that can be purchased from the application program providing server 40 as a list or an item and further includes application program search windows 28a and 28b for quickly searching for an application program . The application search windows 28a and 28b may include a search word input window 28a and a search button 28b, but are not limited thereto. For example, if the search word 28b is input after inputting the search word "DD" in the search word input window 28a, the icon 28c of the application program corresponding to "DD" is displayed in the application program purchase window 28. [ The user can request purchase by dragging and dropping the icon 28c of the application program into the application item window 26. [

응용프로그램 구매시 결제한 요금제는 해당 응용프로그램을 일정 기간 사용할 수 있는 기간 요금제이거나 영구적으로 사용할 수 있는 영구적 요금제이다. 요금제는 응용프로그램별로 사용요금이 할당된 싱글 요금제와, 패키지된 복수의 응용프로그램에 사용요금이 할당된 패키지 요금제를 포함한다. 요금제에 따른 사용권은 기간제 사용권과 영구적 사용권 중에 하나일 수 있다. 기간제 사용권인 경우, 기간은 시간, 일, 주, 월, 년 단위 일 수 있다. 사용권 정보는 특정 응용프로그램의 구매시 선택한 요금제와, 특정 응용프로그램을 구매한 휴대형 저장장치(10)의 식별정보를 포함한다. 또는 사용권 정보는 특정 응용프로그램을 구매한 사용자의 정보를 더 포함할 수 있다. 이때 사용자 정보는 사용자에게 부여된 식별정보일 수 있다.A payment plan that you pay for an application purchase is either a duration plan that you can use for a certain period of time or a permanent plan that you can use permanently. The plan includes a single plan with a usage fee allocated to each application program and a package plan with a usage fee allocated to a plurality of packaged application programs. The license under the plan may be either a fixed license or a permanent license. In the case of a fixed-term license, the period may be in hours, days, weeks, months, or years. The license information includes a charge plan selected at the time of purchase of a specific application program and identification information of the portable storage device 10 purchasing a specific application program. Or the license information may further include information of the user who purchased the specific application program. At this time, the user information may be identification information given to the user.

제어부(29)는 응용프로그램 항목 중 특정 응용프로그램 항목에 대한 선택 신호를 입력받으면, 휴대형 저장장치(10)로 선택된 응용프로그램의 사용권 정보(17)와 식별정보(15)를 요청하여 수신한다. 제어부(29)는 사용권 정보(17)와 식별정보(15)로 선택된 응용프로그램의 사용권의 유효 여부를 확인한다. 이때 제어부(29)는 메모리부(25)에 탑재된 인증 모듈(19)을 이용하여 수신한 사용권 정보(16)와 식별정보(15)를 확인하여 사용권의 유효성을 판단한다. 즉 인증 모듈(19)은 사용권 정보(17)에 포함된 요금제에 따른 사용기한 확인을 통하여 해당 응용프로그램의 사용가능 여부를 확인하여 일차적으로 인증을 수행하고, 사용 가능한 경우 사용권 정보(17)에 포함된 식별정보와 휴대형 저장장치(10)의 식별정보(15)가 일치하는 지의 여부로 이차적으로 인증을 수행할 수 있다. 이와 같이 인증을 수행함으로써, 인증된 휴대형 저장장치(10) 이외의 휴대형 저장장치에 무단복제된 응용프로그램의 사용을 차단할 수 있다.Upon receipt of a selection signal for a specific application program item among the application program items, the control unit 29 requests and receives the usage right information 17 and the identification information 15 of the application program selected by the portable storage device 10. The control unit 29 confirms whether the usage right of the application program selected by the usage right information 17 and the identification information 15 is valid. The control unit 29 checks the received license information 16 and the identification information 15 using the authentication module 19 loaded in the memory unit 25 to determine the validity of the license. That is, the authentication module 19 first verifies whether or not the application program is usable by checking the usage according to the usage plan included in the usage right information 17, performs authentication first, and includes the license information 17 if available It is possible to perform authentication in a secondary manner based on whether or not the identified identification information matches the identification information 15 of the portable storage device 10. By performing the authentication in this way, it is possible to block the use of the pirated application program on the portable storage device other than the authenticated portable storage device 10.

사용권이 유효하면 제어부(29)는 선택된 응용프로그램을 가상환경 위에서 구동시킨다. 즉 제어부(29)는 메모리부(25)에 탑재된 인증 모듈(19)을 이용하여 확인한 사용권이 유효하면, 제어부(29)는 메모리부(25)에 탑재된 가상화 엔진(14)을 이 용하여 휴대형 저장장치(10)로 선택된 응용프로그램을 요청하여 수신한다. 가상화 엔진(14)은 수신한 응용프로그램을 가상환경 위에서 구동시킨다.If the license is valid, the control unit 29 drives the selected application program on the virtual environment. The control unit 29 controls the virtualization engine 14 mounted on the memory unit 25 to use the virtualization engine 14 mounted on the memory unit 25, And requests and receives an application program selected by the storage device 10. The virtualization engine 14 drives the received application program on the virtual environment.

한편 사용권이 유효하지 않으면, 즉 인증에 실패한 경우, 제어부(29)는 선택된 응용프로그램의 사용불가 메시지를 표시부(27)에 표시한다.On the other hand, if the license is invalid, that is, if the authentication fails, the control unit 29 displays the unavailable message of the selected application program on the display unit 27.

그리고 사용자는 가상환경에서 구동되는 응용프로그램을 이용하여 작업을 수행할 수 있다.The user can perform an operation using an application program running in a virtual environment.

한편 제어부(29)는 가상환경 메뉴창(22)을 통한 특정 파일의 실행 요청을 입력받아 해당 특정 파일을 실행할 수 있다. 즉 제어부(29)가 가상환경 메뉴창(22)을 통하여 특정 파일의 실행을 요청 받으면, 구동 중인 사용자인터페이스 엔진(28)을 통하여 휴대형 저장장치(10)에 저장된 응용프로그램 중에서 특정 파일을 실행할 응용프로그램을 선택한다. 제어부(29)는 인증 모듈(19)을 구동시켜 선택된 응용프로그램의 사용권의 유효 여부를 확인한다. 확인 결과 사용권이 유효하면, 제어부(29)는 가상화 엔진(14)을 구동시켜 선택된 응용프로그램을 가상환경 위에서 구동시킨 후 특정 파일을 실행한다. 예컨대 사용자는 가상환경 메뉴창(22)의 My Storage 메뉴(24b) 또는 My PC 메뉴(24c)를 통하여 특정 파일을 선택할 수 있다.On the other hand, the control unit 29 can receive the execution request of the specific file through the virtual environment menu window 22 and execute the specific file. That is, when the control unit 29 is requested to execute a specific file through the virtual environment menu window 22, an application program (not shown) to execute a specific file among the application programs stored in the portable storage device 10 via the user interface engine 28 . The control unit 29 drives the authentication module 19 to check whether the license of the selected application program is valid. If the license is valid, the control unit 29 drives the virtualization engine 14 to run the selected application program on the virtual environment, and then executes the specific file. For example, the user can select a specific file through the My Storage menu 24b or the My PC menu 24c of the virtual environment menu window 22.

한편으로 호스트 컴퓨터(20)와 휴대형 저장장치(10) 간의 통신 연결이 끊기면, 제어부(29)는 메모리부(25)에 탑재된 가상화 엔진(14), 사용자인터페이스 엔진(18), 인증 모듈(19) 및 실행 중인 응용프로그램(16)을 메모리부(25)에서 제거한다.On the other hand, when the communication connection between the host computer 20 and the portable storage device 10 is disconnected, the control unit 29 controls the virtualization engine 14, the user interface engine 18, the authentication module 19 And the application program 16 being executed in the memory unit 25. [

이와 같은 본 실시예에 따른 응용프로그램 제공 시스템(100)의 응용프로그램 제공 방법을 도 1 내지 도 4를 참조하여 설명하면 다음과 같다. 여기서 도 4는 본 발명의 실시예에 따른 휴대형 저장장치(10)를 이용한 응용프로그램 제공 방법에 따른 흐름도이다.The application program providing method of the application program providing system 100 according to the present embodiment will now be described with reference to FIGS. 1 to 4. FIG. 4 is a flowchart illustrating an application program providing method using the portable storage device 10 according to an embodiment of the present invention.

먼저 S50단계에서 호스트 컴퓨터(20)에 휴대형 저장장치(10)가 접속되면, 호스트 컴퓨터(20)가 이를 인지하고 S60단계에서 가상환경을 구축한다. 다음으로 S70단계에서 호스트 컴퓨터(20)는 사용자의 선택 신호에 따라 가상환경에서의 응용프로그램의 구매 또는 선택이 이루어지는 지의 여부를 판단한다. S70단계의 판단 결과 응용프로그램의 구매가 선택되면, S80단계에서 호스트 컴퓨터(20)는 응용프로그램 제공서버(20)로 해당 응용프로그램을 구매하는 절차를 수행한다. 그리고 S70단계의 판단 결과 구동할 응용프로그램이 선택되면, S110단계에서 호스트 컴퓨터(20)는 휴대형 저장장치(10)로부터 선택한 응용프로그램을 호출하여 구동시킨다.First, when the portable storage device 10 is connected to the host computer 20 in step S50, the host computer 20 recognizes this and constructs a virtual environment in step S60. Next, in step S70, the host computer 20 determines whether the purchase or selection of the application program in the virtual environment is performed according to the user's selection signal. If it is determined in step S70 that purchase of the application program is selected, the host computer 20 performs a procedure of purchasing the application program to the application program providing server 20 in step S80. If it is determined in step S70 that the application program to be driven is selected, the host computer 20 calls and selects the application program selected from the portable storage device 10 in step S110.

구체적으로 본 실시예에 따른 응용프로그램 제공 방법에 따른 응용프로그램의 구매 단계를 도 1 내지 도 5를 참조하여 설명하면 다음과 같다. 여기서 도 5는 도 4의 제공 방법 중 구매 단계를 보여주는 흐름도이다. 도 6은 도 5의 구매 단계에서 호스트 컴퓨터(20)에 표시되는 가상환경 메뉴창(22)을 보여주는 화면 예시도이다.More specifically, an application program purchase step according to an application program providing method according to the present embodiment will be described with reference to FIGS. 1 to 5 as follows. Here, FIG. 5 is a flowchart showing the purchasing step of the providing method of FIG. FIG. 6 is a view illustrating a virtual environment menu window 22 displayed on the host computer 20 in the purchasing step of FIG.

먼저 S50단계에서 호스트 컴퓨터(20)에 휴대형 저장장치(10)가 접속되면, S61단계에서 휴대형 저장장치(10)는 가상화 엔진(14)을 호스트 컴퓨터(20)로 전송한다.The portable storage device 10 transfers the virtualization engine 14 to the host computer 20 in step S61 when the portable storage device 10 is connected to the host computer 20 in step S50.

다음으로 S63단계에서 호스트 컴퓨터(20)는 가상화 엔진(14)을 구동시켜 가 상환경을 구축한다. 가상화 엔진(14)은 사용자인터페이스 엔진(18)과 인증 모듈(19)을 휴대형 저장장치(10)로부터 호출하여 메모리부(25)에 탑재할 수 있다. 이때 가상화 엔진(14)은 사용자에게 사용자 정보 입력을 통한 로그인을 요청하고, 로그인을 통과하면 가상환경을 구축할 수 있다. 로그인을 실패하면, 가상화 엔진(14)은 로그인 실패에 따른 해당 휴대형 저장장치(10)의 사용 불가 메시지를 표시부(27)에 표시할 수 있다.Next, in step S63, the host computer 20 drives the virtualization engine 14 to establish a virtual environment. The virtualization engine 14 may call the user interface engine 18 and the authentication module 19 from the portable storage device 10 and mount the same in the memory section 25. [ At this time, the virtualization engine 14 requests the user to log in by inputting the user information, and can establish a virtual environment when the login is passed. If the login fails, the virtualization engine 14 may display on the display unit 27 an unusable message of the portable storage device 10 in response to the login failure.

다음으로 S65단계에서 호스트 컴퓨터(20)는 사용자인터페이스 엔진(18)을 구동시켜 가상환경 메뉴창(22)을 표시부(27)에 표시한다. 예컨대, 가상환경 메뉴창(22)은 도 6에 도시된 바와 같이, 메뉴창(24), 응용프로그램 항목창(26) 및 응용프로그램 구매창(28)을 포함한다. 이때 가상환경 메뉴창(22)은 메뉴창(24)의 To Go SW 메뉴(24a)의 선택에 의해 표시되는 사용자인터페이스 화면이며, 이는 하나의 예시에 불과하며 다양하게 변형될 수 있음은 물론이다.Next, in step S65, the host computer 20 drives the user interface engine 18 to display the virtual environment menu window 22 on the display unit 27. [ For example, the virtual environment menu window 22 includes a menu window 24, an application item window 26, and an application program purchase window 28, as shown in FIG. At this time, the virtual environment menu window 22 is a user interface screen displayed by selecting the To Go SW menu 24a of the menu window 24, which is merely an example and can be variously modified.

다음으로 S70단계에서 입력부(23)를 통한 사용자의 선택 신호에 따라 가상환경 메뉴창(22)의 응용프로그램 구매창(28)에서 특정 응용프로그램을 검색하여 선택하면, S81단계에서 호스트 컴퓨터(20)는 구동 중인 사용자인터페이스 엔진(18)을 통하여 선택된 응용프로그램의 구매를 응용프로그램 제공서버(40)로 요청한다. 이때 S70단계에서 사용자는 응용프로그램 구매창(28)을 통하여 필요한 응용프로그램을 검색하고, 찾은 응용프로그램의 구매를 요청할 수 있다. 예컨대, 도 6에 도시된 바와 같이, 검색어 입력창(28a)에 “DD"라는 검색어를 입력한 후 검색 버튼(28b)을 누르면, "DD"에 대응하는 응용프로그램의 아이콘(28c)을 응용프로그램 구매창(22) 에 표시한다. 사용자는 해당 응용프로그램의 아이콘(28c)을 응용프로그램 항목창(26)으로의 드래그 앤 드롭(drag and drop)으로 구매를 요청할 수 있다.In step S70, the host computer 20 searches for and selects a specific application program in the application program purchase window 28 of the virtual environment menu window 22 according to the user's selection signal through the input unit 23. In step S81, Requests the application providing server 40 to purchase the selected application program through the user interface engine 18 in operation. At this time, in step S70, the user searches for an application program necessary through the application program purchase window 28 and requests purchase of the found application program. For example, as shown in Fig. 6, if the search word 28b is pressed after inputting the search word "DD" in the search word input window 28a, the icon 28c of the application program corresponding to "DD" And displays it on the purchase window 22. The user can request purchase by dragging and dropping the icon 28c of the application program into the application program item window 26. [

다음으로 S83단계에서 응용프로그램 제공서버(40)는 선택된 응용프로그램의 요금제 결제를 요청한다. 이때 요금제는 기간제 요금제 또는 영구적 요금제 중에 하나이다.Next, in step S83, the application program providing server 40 requests payment of the selected application program. At this time, the plan is either a fixed-rate plan or a permanent plan.

다음으로 S85단계에서 입력부(23)를 통한 사용자의 선택 신호에 따라 요금제 선택을 통하여 결제하면, S87단계에서 호스트 컴퓨터(20)는 사용자인터페이스 엔진(18)을 통하여 결제정보를 응용프로그램 제공서버(40)로 전송한다. 이때 S81단계 또는 S87단계에서 호스트 컴퓨터(20)는 사용자인터페이스 엔진(18)을 통하여 접속된 휴대 저장장치(10)의 식별정보(15)를 응용프로그램 제공서버(40)로 전송할 수 있다.Next, in step S85, the payment is made through the selection of a payment plan according to the user's selection signal through the input unit 23. In step S87, the host computer 20 transmits the payment information to the application program providing server 40 ). The host computer 20 can transmit the identification information 15 of the portable storage device 10 connected through the user interface engine 18 to the application program providing server 40 in step S81 or step S87.

다음으로 S89단계에서 응용프로그램 제공서버(40)는 선택된 응용프로그램과, 선택된 응용프로그램의 사용권 정보를 호스트 컴퓨터(20)로 전송한다.Next, in step S89, the application program providing server 40 transmits the selected application program and the license information of the selected application program to the host computer 20.

다음으로 S91단계에서 호스트 컴퓨터(20)는 사용자인터페이스 엔진(18)을 통하여 수신한 응용프로그램 및 사용권 정보를 휴대형 저장장치(10)로 전달한다.Next, in step S91, the host computer 20 transmits the application program and the license information received through the user interface engine 18 to the portable storage device 10.

그리고 S93단계에서 휴대형 저장장치(10)는 수신한 응용프로그램 및 사용권 정보를 저장부(13)에 저장한다. 이때 사용자인터페이스 엔진(18)은 응용프로그램 항목창(26)에 구매한 DD 응용프로그램에 매칭되는 아이콘(28c)을 표시한다.In step S93, the portable storage device 10 stores the received application program and the usage right information in the storage unit 13. At this time, the user interface engine 18 displays an icon 28c matching the purchased DD application program in the application item window 26. [

본 실시예에 따른 응용프로그램 제공 방법에 따른 응용프로그램의 구동 단계의 일 예를 도 1 내지 도 7을 참조하여 설명하면 다음과 같다. 여기서 도 7은 도 4 의 제공 방법 중 응용프로그램 구동 단계의 일 예를 보여주는 흐름도이다.An example of driving an application program according to an application program providing method according to the present embodiment will be described with reference to FIG. 1 to FIG. Here, FIG. 7 is a flowchart showing an example of the application program driving step of the providing method of FIG.

호스트 컴퓨터(20)의 표시부(27)에 가상환경 메뉴창(22)이 표시된 상태에서, S70단계에서 입력부(23)를 통한 사용자의 선택 신호에 따라 가상환경 메뉴창(22)의 응용프로그램 항목창(26)에서 특정 응용프로그램을 선택하면, S111단계에서 호스트 컴퓨터(20)는 구동 중인 인증 모듈(19)을 통하여 선택된 응용프로그램의 사용권 정보 및 식별정보를 휴대형 저장장치(10)로 요청한다.The virtual environment menu window 22 is displayed on the display unit 27 of the host computer 20. In step S70, in accordance with the user's selection signal through the input unit 23, The host computer 20 requests the portable storage device 10 of the license information and identification information of the selected application program through the active authentication module 19 in operation S111.

다음으로 S113단계에서 휴대형 저장장치(10)는 선택된 응용프로그램의 사용권 정보(17) 및 식별정보(16)를 추출하여 호스트 컴퓨터(20)로 전송한다.Next, in step S113, the portable storage device 10 extracts the usage right information 17 and the identification information 16 of the selected application program and transmits the same to the host computer 20.

다음으로 S115단계에서 호스트 컴퓨터(20)는 구동 중인 인증 모듈(19)을 통하여 수신한 사용권 정보(17)와 식별정보(15)를 이용하여 선택된 응용프로그램의 사용권의 유효성을 확인한다.Next, in step S115, the host computer 20 confirms the validity of the license of the selected application program by using the license information 17 and the identification information 15 received via the authentication module 19 being driven.

다음으로 S117단계에서 인증 모듈(19)은 확인한 사용권의 유효성 여부에 따라 인증 통과 여부를 판단한다. 즉 사용권 정보(17)에는 해당 응용프로그램의 구매시 선택한 요금제와, 해당 응용프로그램을 구매한 휴대형 저장장치의 식별정보가 포함되어 있다. 따라서 인증 모듈(19)은 사용권 정보(17)에 포함된 요금제에 따른 사용권이 유효한지를 판단하고, 유효하면 사용권 정보(17)에 포함된 식별정보와 휴대형 저장장치(10)의 식별정보(15)가 일치하는 지의 여부를 판단한다. 두 개의 조건을 동시에 만족하면 인증 모듈(19)은 인증 통과로 판단하고, 반대의 경우는 인증 실패로 판단한다.Next, in step S117, the authentication module 19 determines whether or not the authentication has passed according to whether the validity of the license is confirmed. In other words, the license information 17 includes the payment plan selected at the time of purchase of the application program and the identification information of the portable storage device purchasing the application program. Therefore, the authentication module 19 determines whether the license according to the plan included in the license information 17 is valid. If the license information is valid, the authentication module 19 transmits the identification information included in the license information 17 and the identification information 15 of the portable storage device 10, Is coincident with each other. If the two conditions are satisfied at the same time, the authentication module 19 determines that the authentication has passed, and if not, the authentication module 19 determines that the authentication is failed.

S117단계에서의 판단결과 인증 통과로 판단하면, S119단계에서 호스트 컴퓨 터(20)는 구동 중인 사용자인터페이스 엔진(18)을 통하여 선택된 응용프로그램의 전송을 휴대형 저장장치(10)로 요청한다. 이어서 S119단계에서 휴대형 저장장치(10)는 선택된 응용프로그램을 호스트 컴퓨터(20)로 전송한다.If it is determined in step S117 that the authentication is to be passed, the host computer 20 requests the portable storage device 10 to transmit the selected application program through the user interface engine 18 in operation in step S119. The portable storage device 10 then transfers the selected application program to the host computer 20 in step S119.

다음으로 S123단계에서 호스트 컴퓨터(20)는 구동 중인 가상화 엔진(18)을 통하여 가상환경에서 수신한 응용프로그램을 구동시킨다. 이때 가상화 엔진(14)은 응용프로그램의 구동에 필요한 최소한의 데이터를 휴대형 저장장치로(10)로부터 수신하여 가상환경에서 구동시킨다. 예컨대 가상화 엔진(14)은 응용프로그램을 패킷, 블록 또는 파일 단위로 수신할 수 있다.Next, in step S123, the host computer 20 drives an application program received in the virtual environment via the virtualization engine 18 in operation. At this time, the virtualization engine 14 receives the minimum amount of data necessary for driving the application program from the portable storage device 10 and drives it in the virtual environment. For example, the virtualization engine 14 may receive application programs on a packet, block, or file basis.

한편으로 S117단계에서의 판단결과 인증 실패로 판단하면, S125단계에서 호스트 컴퓨터(20)는 구동 중인 사용자인터페이스 엔진(18)을 통하여 선택된 응용프로그램의 사용불가 메시지를 표시부(27)에 표시할 수 있다.On the other hand, if it is determined in step S117 that the authentication is unsuccessful, the host computer 20 may display the unavailable message of the selected application program on the display unit 27 through the user interface engine 18 in operation .

한편 본 실시예에 따른 응용프로그램의 구동 단계의 일 예에서는 응용프로그램 선택을 통하여 작업을 수행하는 예를 개시하였지만 이에 한정되는 것은 아니다. 예컨대, 도 8에 도시된 바와 같이, 가상환경 메뉴창(22)에 표시되는 파일의 선택을 통하여 응용프로그램을 구동시켜 작업을 수행한다. However, the present invention is not limited to this example. In the example of FIG. For example, as shown in FIG. 8, an application program is operated by selecting a file displayed in the virtual environment menu window 22 to perform an operation.

그리고 본 실시예에 따른 응용프로그램 제공 방법에 따른 응용프로그램의 구동 단계의 다른 예를 도 1 내지 도 6 및 도 8을 참조하여 설명하면 다음과 같다. 여기서 도 8은 도 4의 제공 방법 중 응용프로그램 구동 단계의 다른 예를 보여주는 흐름도이다.Another example of the application program driving step according to the application program providing method according to the present embodiment will be described with reference to FIGS. 1 to 6 and 8. FIG. Here, FIG. 8 is a flowchart showing another example of the application program driving step of the providing method of FIG.

호스트 컴퓨터(20)의 표시부(27)에 가상환경 메뉴창(22)이 표시된 상태에서, S71단계에서 입력부(23)를 통한 사용자의 선택 신호에 따라 가상환경 메뉴창(22)에서 특정 파일의 실행을 요청하면, S73단계에서 호스트 컴퓨터(20)는 구동 중인 사용자인터페이스 엔진(18)을 통하여 휴대형 저장장치(10)에 저장된 응용프로그램(16) 중에서 특정 파일을 실행할 응용프로그램을 선택한다. S71단계에서 사용자는 특정 파일을 My Storage 메뉴(24b) 또는 My PC 메뉴(24c)를 통하여 선택할 수 있다. 예컨대 My PC 메뉴(24c)를 선택하면, 사용자인터페이스 엔진(18)은 적어도 하나의 하위 메뉴 또는 폴더를 표시한다. 하위 메뉴 또는 폴더를 선택하면, 사용자인터페이스 엔진(18)은 하위 메뉴 또는 폴더에 포함된 파일들을 표시한다. 사용자는 표시된 파일들 중에서 작업할 특정 파일을 선택할 수 있다. 이때 특정 파일은 휴대형 저장장치(10)에 저장된 파일 중에 하나일 수 있다.The virtual environment menu window 22 is displayed in the virtual environment menu window 22 in accordance with the user's selection signal through the input unit 23 in step S71 while the display unit 27 of the host computer 20 displays the virtual environment menu window 22. [ The host computer 20 selects an application program to execute a specific file among the application programs 16 stored in the portable storage device 10 through the user interface engine 18 in operation. In step S71, the user can select a specific file through the My Storage menu 24b or the My PC menu 24c. For example, if the My PC menu 24c is selected, the user interface engine 18 displays at least one submenu or folder. When a submenu or folder is selected, the user interface engine 18 displays the submenu or files contained in the folder. The user can select a particular file to work from among the displayed files. At this time, the specific file may be one of the files stored in the portable storage device 10.

다음으로 S111단계에서 호스트 컴퓨터(20)는 인증 모듈(19)을 통하여 선택된 응용프로그램의 사용권 정보(17) 및 식별정보(15)를 휴대형 저장장치(10)로 요청한다.Next, in step S111, the host computer 20 requests the portable storage device 10 of the usage right information 17 and the identification information 15 of the selected application program through the authentication module 19. [

그리고 이후의 단계는 도 6에 개시된 S113 내지 S125단계와 동일하게 수행된다. 한편 S123단계에서 호스트 컴퓨터(20)는 가상화 엔진(14)을 통하여 가상환경에서 수신한 응용프로그램을 구동시킨 후 특정 파일을 실행한다.The subsequent steps are performed in the same manner as the steps S113 to S125 shown in Fig. In step S123, the host computer 20 executes an application program received in the virtual environment via the virtualization engine 14, and then executes a specific file.

한편 본 실시예에 따른 응용프로그램 제공 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터로 판독 가능한 기록매체에 기록될 수 있다. 기록매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 기록매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 예컨대 기록매체는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치를 포함한다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 이러한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.Meanwhile, the application program providing method according to the present embodiment may be implemented in the form of a program command which can be executed through various computer means and recorded in a computer-readable recording medium. The recording medium may include program commands, data files, data structures, and the like, alone or in combination. Program instructions to be recorded on a recording 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. For example, the recording medium may be a magnetic medium such as a hard disk, a floppy disk and a magnetic tape, an optical medium such as a CD-ROM or a DVD, a magneto-optical medium such as a floppy disk magneto-optical media, and hardware devices that are specially 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. Such a hardware device may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.

한편, 본 명세서와 도면에 개시된 본 발명의 실시예들은 이해를 돕기 위해 특정 예를 제시한 것에 지나지 않으며, 본 발명의 범위를 한정하고자 하는 것은 아니다. 여기에 개시된 실시예들 이외에도 본 발명의 기술적 사상에 바탕을 둔 다른 변형예들이 실시 가능하다는 것은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 자명한 것이다.It should be noted that the embodiments of the present invention disclosed in the present specification and drawings are only illustrative of specific examples for the purpose of understanding and are not intended to limit the scope of the present invention. It will be apparent to those skilled in the art that other modifications based on the technical idea of the present invention are possible in addition to the embodiments disclosed herein.

본 발명은 휴대형 저장장치, 그를 이용한 응용프로그램 제공 시스템 및 방법에 관한 것으로, 사용자는 휴대형 저장장치를 호스트 컴퓨터에 연결하면 호스트 컴퓨터에 구축되는 가상환경을 통하여 호스트 컴퓨터에 직접 응용프로그램을 설치하지 않더라도 휴대형 저장장치에 저장된 응용프로그램을 이용할 수 있다. 사용자는 필요한 응용프로그램에 대한 다양한 요금제 결제를 통하여 필요한 기간 동안 해당 응용프로그램을 사용할 수 있기 때문에, 고가의 응용프로그램이 저장된 휴대형 저장장치를 구매하는 데에 따른 사용자의 부담을 최소화할 수 있다. 그리고 가상환경에서 휴대형 저장장치에 저장된 응용프로그램을 이용할 때, 휴대형 저장장치의 식별정보와 응용프로그램의 사용권 정보 확인을 통한 사용자 인증을 수행하기 때문에, 보안성을 확보하면서 응용프로그램의 무단사용을 억제할 수 있다.The present invention relates to a portable storage device, and a system and method for providing an application program using the portable storage device. When a portable storage device is connected to a host computer, An application program stored in the storage device can be used. Since the user can use the application program for a necessary period through various payment for the required application program, the burden on the user due to the purchase of the portable storage device storing the expensive application program can be minimized. In addition, when the application program stored in the portable storage device is used in the virtual environment, the user authentication is performed by checking the identification information of the portable storage device and the license information of the application program. Therefore, unauthorized use of the application program can be suppressed .

도 1은 본 발명의 실시예에 따른 휴대형 저장장치를 이용한 응용프로그램 제공 시스템을 보여주는 블록도이다.1 is a block diagram showing an application program providing system using a portable storage device according to an embodiment of the present invention.

도 2는 도 1의 휴대형 저장장치의 구성을 보여주는 블록도이다.2 is a block diagram illustrating the configuration of the portable storage device of FIG.

도 3은 도 1의 호스트 컴퓨터의 구성을 보여주는 블록도이다.3 is a block diagram showing the configuration of the host computer of FIG.

도 4는 본 발명의 실시예에 따른 휴대형 저장장치를 이용한 응용프로그램 제공 방법에 따른 흐름도이다.4 is a flowchart illustrating an application program providing method using a portable storage device according to an embodiment of the present invention.

도 5는 도 4의 제공 방법 중 구매 단계를 보여주는 흐름도이다.FIG. 5 is a flowchart showing a purchasing step of the providing method of FIG.

도 6은 도 5의 구매 단계에서 호스트 컴퓨터에 표시되는 가상환경 메뉴창을 보여주는 화면 예시도이다.6 is a view illustrating a virtual environment menu window displayed on the host computer in the purchasing step of FIG.

도 7은 도 4의 제공 방법 중 응용프로그램 구동 단계의 일 예를 보여주는 흐름도이다.FIG. 7 is a flow chart showing an example of an application program driving step of the providing method of FIG.

도 8은 도 4의 제공 방법 중 응용프로그램 구동 단계의 다른 예를 보여주는 흐름도이다.FIG. 8 is a flow chart showing another example of an application program driving step of the providing method of FIG.

* 도면의 주요 부분에 대한 설명 *Description of the Related Art [0002]

10 : 휴대형 저장장치 20 : 호스트 컴퓨터10: Portable storage device 20: Host computer

31 : 유무선 통신망 33 : 네트워크31: wired / wireless communication network 33: network

40 : 응용프로그램 제공서버 100 : 응용프로그램 제공 시스템40: application providing server 100: application providing system

Claims (20)

식별정보, 적어도 하나의 응용프로그램, 해당 응용프로그램의 구매시 선택한 요금제와 응용프로그램을 구매한 휴대형 저장장치의 식별정보를 포함하는 상기 응용프로그램의 사용권 정보, 상기 응용프로그램을 구동시킬 수 있는 가상환경을 구축하는 가상화 엔진, 상기 가상환경에서의 응용프로그램의 사용을 인증하는 인증 모듈 및 상기 가상환경에서의 상기 응용프로그램의 사용 및 구매를 안내하는 사용자인터페이스 엔진을 포함하는 휴대형 저장장치; 및License information of the application program including identification information, identification information of at least one application program, a charge plan selected at the time of purchase of the application program and identification information of the portable storage device purchasing the application program, and a virtual environment capable of driving the application program A portable storage device comprising an authentication module for authenticating use of an application program in the virtual environment and a user interface engine for guiding the use and purchase of the application program in the virtual environment; And 상기 휴대형 저장장치가 접속되면, 상기 가상화 엔진을 구동시켜 상기 응용프로그램을 구동할 수 있는 가상환경을 구축하고, 상기 사용자인터페이스 엔진을 구동시켜 상기 휴대형 저장장치에 저장된 응용프로그램 항목을 포함하는 가상환경 메뉴창을 표시하고, 구동 중인 상기 사용자인터페이스 엔진을 통하여 상기 응용프로그램 항목 중 특정 응용프로그램 항목에 대한 선택 신호를 입력받으면, 상기 인증 모듈을 구동시켜 상기 선택된 응용프로그램의 사용권 정보에 포함된 요금제에 따른 사용기한 및 사용권 정보에 포함된 식별정보와 상기 휴대형 저장장치의 식별정보의 일치 여부를 확인하고, 사용기한이 유효하며 식별 정보가 일치하는 경우, 상기 선택된 응용프로그램을 상기 가상환경 위에서 구동시키는 호스트 컴퓨터;The virtualization engine may be operated to establish a virtual environment in which the application program can be driven when the portable storage device is connected, and a virtual environment menu including application program items stored in the portable storage device, And when receiving a selection signal for a specific application program item among the application program items through the user interface engine that is being driven, drives the authentication module to display the usage information according to the fee plan included in the license information of the selected application program, A host computer which confirms whether the identification information included in the license information and the identification information included in the license information match the identification information of the portable storage device and drives the selected application program on the virtual environment when the validity of the license is valid and the identification information matches; 를 포함하는 것을 특징으로 하는 휴대형 저장장치를 이용한 응용프로그램 제공 시스템.And an application program providing system using the portable storage device. 호스트 컴퓨터와 통신을 수행하는 통신부;A communication unit for communicating with the host computer; 휴대형 저장장치의 식별정보, 적어도 하나의 응용프로그램, 응용프로그램의 구매시 선택한 요금제와 응용프로그램을 구매한 휴대형 저장장치의 식별정보를 포함하는 상기 응용프로그램의 사용권 정보 및 선택된 응용프로그램의 사용권 정보에 포함된 요금제에 따른 사용기한 및 사용권 정보에 포함된 식별정보와 상기 휴대형 저장장치의 식별정보의 일치 여부를 확인하여 상기 응용프로그램의 사용을 인증하는 인증 모듈 및 상기 응용프로그램을 구동시킬 수 있는 가상환경을 상기 호스트 컴퓨터에 구축하고, 상기 선택된 응용프로그램의 사용기한이 유효하며 식별 정보가 일치하는 경우, 상기 선택된 응용프로그램을 가상환경 위에서 실행하는 가상화 엔진을 저장하는 저장부;The license information of the application program including identification information of the portable storage device, at least one application program, identification information of the portable storage device that purchased the application program and the selected program at the time of purchase of the application program, An authentication module for authenticating use of the application program by confirming whether or not the identification information included in the usage term and the usage right information according to the charging plan matches the identification information of the portable storage device and a virtual environment for driving the application program, A storage unit for storing a virtualization engine in the host computer, the virtualization engine executing the selected application program on a virtual environment when the usage period of the selected application program is valid and the identification information matches; 를 포함하는 것을 특징으로 하는 응용프로그램 제공 시스템의 휴대형 저장장치.Wherein the portable storage device is a portable storage device of an application program providing system. 제2항에 있어서, 상기 저장부는,The apparatus according to claim 2, 상기 호스트 컴퓨터에 구축된 가상환경에서의 상기 응용프로그램의 사용 및 구매를 안내하는 사용자인터페이스 엔진을 더 저장하는 것을 특징으로 하는 응용프로그램 제공 시스템의 휴대형 저장장치.Further comprising a user interface engine for guiding the use and purchase of the application program in a virtual environment built in the host computer. 식별정보, 적어도 하나의 응용프로그램, 응용프로그램의 구매시 선택한 요금제와 응용프로그램을 구매한 휴대형 저장장치의 식별정보를 포함하는 상기 응용프로그램의 사용권 정보, 가상화 엔진, 사용자인터페이스 엔진 및 인증 모듈을 구비하는 휴대형 저장장치 및 응용프로그램 제공서버와 통신을 수행하는 송수신부;And a portable type portable communication device having identification information, at least one application program, license information of the application program including identification information of a portable storage device purchasing an application program selected at the time of purchase of the application program, a virtualization engine, A transmitting and receiving unit for communicating with a storage device and an application program providing server; 상기 휴대형 저장장치가 접속되면, 상기 가상화 엔진을 구동시켜 상기 응용프로그램을 구동할 수 있는 가상환경을 구축하고, 상기 사용자인터페이스 엔진을 구동시켜 상기 휴대형 저장장치에 저장된 응용프로그램 항목을 포함하는 가상환경 메뉴창을 표시하고, 구동 중인 상기 사용자인터페이스 엔진을 통하여 상기 응용프로그램 항목 중 특정 응용프로그램이 선택되면, 상기 인증 모듈을 구동시켜 선택된 응용프로그램의 사용권 정보에 포함된 요금제에 따른 사용기한 및 사용권 정보에 포함된 식별정보와 상기 휴대형 저장장치의 식별정보의 일치 여부를 확인하고, 사용기한이 유효하며 식별정보가 일치하는 경우, 상기 선택된 응용프로그램을 구축된 가상환경에서 구동시키는 제어부;The virtualization engine may be operated to establish a virtual environment in which the application program can be driven when the portable storage device is connected, and a virtual environment menu including application program items stored in the portable storage device, And when a specific application program among the application program items is selected through the user interface engine in operation, the authentication module is driven and included in usage license information and license information according to the charge plan included in the license information of the selected application program A control unit for checking whether or not the identified identification information matches the identification information of the portable storage device and driving the selected application program in a virtual environment in which the selected application program is valid and the identification information matches; 를 포함하는 것을 특징으로 하는 응용프로그램 제공 시스템의 호스트 컴퓨터.And a host computer of the application program providing system. 삭제delete 제4항에 있어서, 상기 제어부는,5. The apparatus of claim 4, 상기 사용자인터페이스 엔진을 구동시켜 상기 응용프로그램 제공서버에 접속하여 특정 응용프로그램에 대한 요금제 결제를 통해 상기 특정 응용프로그램을 구매하고, 상기 응용프로그램 제공서버로부터 상기 구매한 특정 응용프로그램과 결제한 요금제에 따른 사용권 정보를 수신하여 상기 휴대형 저장장치에 저장하는 것을 특징으로 하는 응용프로그램 제공 시스템의 호스트 컴퓨터.The user interface engine is operated to connect to the application program providing server to purchase the specific application program through payment of a fee for a specific application program and to acquire the specific application program from the application program providing server And receives the license information and stores the license information in the portable storage device. 호스트 컴퓨터가 휴대형 저장장치의 접속을 인식하면, 상기 휴대형 저장장치의 가상화 엔진을 구동시켜 상기 휴대형 저장장치에 저장된 응용프로그램을 구동할 수 있는 가상환경을 구축하는 구축 단계;Constructing a virtual environment capable of driving an application program stored in the portable storage device by driving a virtualization engine of the portable storage device when the host computer recognizes the connection of the portable storage device; 상기 호스트 컴퓨터가 상기 접속된 휴대형 저장장치의 사용자인터페이스 엔진을 구동시켜 가상환경 메뉴창을 표시하는 표시 단계;A display step of the host computer driving a user interface engine of the connected portable storage device to display a virtual environment menu window; 상기 호스트 컴퓨터가 상기 가상환경 메뉴창을 통하여 특정 응용프로그램의 구매를 요청하면, 구동 중인 상기 사용자인터페이스 엔진을 통하여 응용프로그램 제공서버에 접속하여 상기 특정 응용프로그램에 대한 요금제 결제를 통해 상기 특정 응용프로그램을 구매하는 구매 단계;When the host computer requests purchase of a specific application program through the virtual environment menu window, the host computer accesses the application program providing server through the user interface engine in operation, and transmits the specific application program Purchase step to buy; 상기 호스트 컴퓨터가 구동 중인 상기 사용자인터페이스 엔진을 통하여 상기 응용프로그램 제공서버로부터 상기 구매한 특정 응용프로그램과 결제한 요금제에 따른 사용권 정보를 수신하여 상기 휴대형 저장장치에 저장하는 저장 단계;A storage step of receiving license information according to a payment plan established with the purchased specific application program from the application program providing server through the user interface engine in which the host computer is running and storing the license information in the portable storage device; 를 포함하는 휴대형 저장장치를 이용한 응용프로그램 제공 방법.The method comprising the steps of: 제7항에 있어서, 상기 구축 단계는,8. The method of claim 7, 상기 호스트 컴퓨터가 상기 휴대형 저장장치의 접속을 인식하면, 상기 휴대형 저장장치로부터 가상화 엔진을 수신하는 단계;Receiving a virtualization engine from the portable storage device when the host computer recognizes the connection of the portable storage device; 상기 호스트 컴퓨터가 상기 수신한 가상화 엔진을 구동시켜 가상환경을 구축하는 단계;Generating a virtual environment by driving the virtualization engine received by the host computer; 를 포함하는 것을 특징으로 하는 휴대형 저장장치를 이용한 응용프로그램 제공 방법.The method of claim 1, further comprising: 제7항에 있어서, 상기 구매 단계는,8. The method according to claim 7, 상기 호스트 컴퓨터가 상기 사용자인터페이스 엔진을 구동시켜 상기 휴대형 저장장치에 저장된 응용프로그램 항목을 표시하는 응용프로그램 항목창과, 상기 응용프로그램 제공서버에서 구매할 수 있는 응용프로그램 구매창을 표시하는 단계;Displaying an application program item window for displaying an application program item stored in the portable storage device by driving the user interface engine; and displaying an application program purchase window that can be purchased from the application program providing server; 상기 호스트 컴퓨터가 구동 중인 상기 사용자인터페이스 엔진을 통하여 사용자의 선택 신호에 따라 상기 응용프로그램 구매창을 통하여 특정 응용프로그램을 선택하여 구매하는 단계;Selecting and purchasing a specific application program through the application program purchase window according to a user's selection signal through the user interface engine in which the host computer is running; 를 포함하는 것을 특징으로 하는 휴대형 저장장치를 이용한 응용프로그램 제공 방법.The method of claim 1, further comprising: 제9항에 있어서, 상기 응용프로그램 구매창은,10. The method according to claim 9, 응용프로그램 리스트, 응용프로그램 아이콘 또는 응용프로그램 검색창 중에 적어도 하나를 포함하는 것을 특징으로 하는 휴대형 저장장치를 이용한 응용프로그램 제공 방법.An application program list, an application program icon, or an application program search window. 제9항에 있어서, 상기 구매 단계는,10. The method according to claim 9, 상기 응용프로그램 구매창의 특정 응용프로그램이 상기 응용프로그램 항목창으로 드래그 앤 드롭(drag & drop)으로 이동하면, 상기 호스트 컴퓨터가 상기 특정 응용프로그램을 구매하는 것을 특징으로 하는 휴대형 저장장치를 이용한 응용프로그램 제공 방법.And the host computer purchases the specific application program when a specific application program of the application program purchase window moves to the application program window by drag and drop. Way. 제7항에 있어서, 상기 요금제는,8. The method of claim 7, 상기 응용프로그램을 일정 기간 사용할 수 있는 기간 요금제와 영구적으로 사용할 수 있는 영구적 요금제 중에 하나인 것을 특징으로 하는 휴대형 저장장치를 이용한 응용프로그램 제공 방법.Wherein the application program is one of a periodic fee plan that can be used for a certain period of time and a permanent fee plan that can be used permanently. 제12항에 있어서, 상기 요금제는,13. The method of claim 12, 응용프로그램별로 사용요금이 할당된 싱글 요금제와, 패키지된 복수의 응용프로그램에 사용요금이 할당된 패키지 요금제를 포함하는 것을 특징으로 하는 휴대형 저장장치를 이용한 응용프로그램 제공 방법.A single charging fee allocated to each application program, and a package charging fee allocated to a plurality of packaged application programs. 제13항에 있어서, 상기 사용권 정보는,14. The method of claim 13, 특정 응용프로그램의 구매시 선택한 요금제와, 상기 특정 응용프로그램을 구매한 상기 휴대형 저장장치의 식별정보를 포함하는 것을 특징으로 하는 휴대형 저장장치를 이용한 응용프로그램 제공 방법.And the identification information of the portable storage device that has purchased the specific application program. The method of claim 1, wherein the portable storage device is a portable storage device. 제14항에 있어서, 상기 저장 단계 이후에 수행되는,15. The method of claim 14, further comprising: 상기 호스트 컴퓨터가 상기 가상환경 메뉴창을 통하여 상기 휴대형 저장장치에 저장된 응용프로그램 항목을 표시하는 표시 단계;A display step of the host computer displaying an application program item stored in the portable storage device through the virtual environment menu window; 상기 호스트 컴퓨터가 구동 중인 사용자인터페이스 엔진을 통하여 상기 응용프로그램 항목 중 특정 응용프로그램 항목에 대한 선택 신호를 입력받으면, 상기 휴대형 저장장치의 인증 모듈을 구동시켜 상기 선택된 응용프로그램의 사용권 정보와 상기 식별정보를 확인하여 인증을 수행하는 인증 단계;When receiving a selection signal for a specific application program item among the application program items through the user interface engine in which the host computer is running, activates the authentication module of the portable storage device to generate license information of the selected application program and the identification information An authentication step of confirming and performing authentication; 상기 인증을 통과하면 상기 호스트 컴퓨터가 상기 가상화 엔진을 구동시켜 상기 선택된 응용프로그램을 상기 가상환경 위에서 구동시키는 구동 단계;A driving step of causing the host computer to drive the virtualization engine to drive the selected application program on the virtual environment when the authentication is passed; 를 더 포함하는 것을 특징으로 하는 휴대형 저장장치를 이용한 응용프로그램 제공 방법.The method of claim 1, further comprising the steps of: 제15항에 있어서, 상기 저장 단계 이후에 수행되는,16. The method of claim 15, further comprising: 상기 호스트 컴퓨터가 상기 가상환경 메뉴창을 통하여 특정 파일의 실행을 요청하는 요청 단계;A request step of the host computer requesting execution of a specific file through the virtual environment menu window; 상기 호스트 컴퓨터가 구동 중인 상기 사용자인터페이스 엔진을 통하여 상기 휴대형 저장장치에 저장된 응용프로그램 중에서 상기 특정 파일을 실행할 응용프로그램을 선택하는 선택 단계;A selecting step of selecting an application program to execute the specific file from the application programs stored in the portable storage device through the user interface engine in which the host computer is running; 상기 호스트 컴퓨터가 상기 인증 모듈을 구동시켜 상기 선택된 응용프로그램의 사용권 정보와 상기 식별정보를 확인하여 인증을 수행하는 인증 단계;An authentication step of the host computer activating the authentication module to confirm the license information of the selected application program and the identification information to perform authentication; 상기 인증을 통과하면 상기 호스트 컴퓨터가 상기 가상화 엔진을 구동시켜 상기 선택된 응용프로그램을 상기 가상환경 위에서 구동시키는 구동 단계;A driving step of causing the host computer to drive the virtualization engine to drive the selected application program on the virtual environment when the authentication is passed; 상기 호스트 컴퓨터가 구동 중인 응용프로그램을 이용하여 상기 특정 파일을 실행하는 실행 단계;An executing step of executing the specific file by using an application program which the host computer is running; 를 더 포함하는 것을 특징으로 하는 휴대형 저장장치를 이용한 응용프로그램 제공 방법.The method of claim 1, further comprising the steps of: 호스트 컴퓨터가 휴대형 저장장치의 접속을 인식하면, 상기 휴대형 저장장치의 가상화 엔진을 구동시켜 상기 휴대형 저장장치에 저장된 응용프로그램을 구동할 수 있는 가상환경을 구축하는 구축 단계;Constructing a virtual environment capable of driving an application program stored in the portable storage device by driving a virtualization engine of the portable storage device when the host computer recognizes the connection of the portable storage device; 상기 호스트 컴퓨터가 상기 휴대형 저장장치의 사용자인터페이스 엔진을 구동시켜 상기 가상환경에서 구동시킬 수 있는 응용프로그램 항목을 상기 휴대형 저장장치로부터 호출하여 표시하는 표시 단계;A display step of calling from the portable storage device an application program item that the host computer can drive in the virtual environment by driving a user interface engine of the portable storage device; 상기 호스트 컴퓨터가 구동 중인 상기 사용자인터페이스 엔진을 통하여 상기 응용프로그램 항목 중 특정 응용프로그램 항목에 대한 선택 신호를 입력받으면, 상기 휴대형 저장장치의 인증 모듈을 구동시켜 상기 선택된 응용프로그램의 사용권 정보에 포함된 요금제에 따른 사용기한 및 사용권 정보에 포함된 식별정보와 상기 휴대형 저장장치의 식별정보의 일치 여부를 확인하는 인증 단계;When receiving a selection signal for a specific application program item among the application program items through the user interface engine in which the host computer is running, activates the authentication module of the portable storage device, An authentication step of confirming whether the identification information included in the usage period and the usage right information according to the identification information of the portable storage device coincides with the identification information included in the usage period and the usage right information, 사용기한이 유효하고, 식별정보가 일치하면 상기 호스트 컴퓨터가 상기 선택된 응용프로그램을 상기 가상환경 위에서 구동시키는 구동 단계;A driving step of causing the host computer to drive the selected application program on the virtual environment when the usage period is valid and the identification information matches; 를 포함하는 것을 특징으로 하는 휴대형 저장장치를 이용한 응용프로그램 제공 방법.The method of claim 1, further comprising: 휴대형 저장장치가 호스트 컴퓨터에 접속되면, 상기 호스트 컴퓨터로 가상환경 구축에 필요한 가상화 엔진을 전송하는 가상화 엔진 전송 단계;Transferring a virtualization engine necessary for establishing a virtual environment to the host computer when the portable storage device is connected to the host computer; 상기 휴대형 저장장치가 상기 호스트 컴퓨터를 통하여 응용프로그램 제공서버에서 구매한 응용프로그램과, 상기 응용프로그램의 구매시 결제한 요금제 및 상기 응용프로그램의 구매시 선택된 휴대형 저장장치의 식별 정보를 포함하는 사용권 정보를 수신하여 저장하는 저장 단계;The portable storage device receives the license information including the application program purchased from the application program providing server through the host computer, the charge paid upon purchase of the application program, and the identification information of the portable storage device selected upon purchase of the application program A storage step of storing; 상기 휴대형 저장장치가 상기 가상환경에서 구동시킬 수 있는 응용프로그램 항목을 상기 호스트 컴퓨터로 전송하는 응용프로그램 항목 전송 단계;An application program item transmission step of transmitting the application program item that the portable storage device can drive in the virtual environment to the host computer; 상기 휴대형 저장장치가 상기 응용프로그램 항목 중 특정 응용프로그램 항목에 대한 선택 신호를 입력받은 상기 호스트 컴퓨터의 요청에 따라 상기 선택된 응용프로그램의 사용권 정보와 식별정보를 상기 호스트 컴퓨터로 전송하는 사용권 정보 전송 단계;A license information transfer step of transferring license information and identification information of the selected application program to the host computer in response to a request from the host computer in which the portable storage device receives a selection signal for a specific application program item among the application program items; 상기 휴대형 저장장치가 상기 사용권 정보와 식별정보를 통하여 상기 선택된 응용프로그램의 사용을 인증한 상기 호스트 컴퓨터의 요청에 따라 상기 선택된 응용프로그램을 상기 호스트 컴퓨터로 전송하여 상기 가상환경에서 구동시키는 응용프로그램 구동 단계;Wherein the portable storage device transmits the selected application program to the host computer in response to a request from the host computer authenticating the use of the selected application program through the license information and the identification information, ; 를 포함하는 것을 특징으로 하는 휴대형 저장장치를 이용한 응용프로그램 제공 방법.The method of claim 1, further comprising: 삭제delete 제7항 내지 제18항 중 어느 한 항에 따른 방법을 구현하는 프로그램을 기록한 컴퓨터로 판독 가능한 기록매체.19. A computer-readable recording medium recording a program embodying the method according to any one of claims 7 to 18.
KR1020090077864A 2009-08-21 2009-08-21 Portable storage device, System and method for providing application program using the same KR101428979B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090077864A KR101428979B1 (en) 2009-08-21 2009-08-21 Portable storage device, System and method for providing application program using the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090077864A KR101428979B1 (en) 2009-08-21 2009-08-21 Portable storage device, System and method for providing application program using the same

Publications (2)

Publication Number Publication Date
KR20110020129A KR20110020129A (en) 2011-03-02
KR101428979B1 true KR101428979B1 (en) 2014-08-13

Family

ID=43929522

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090077864A KR101428979B1 (en) 2009-08-21 2009-08-21 Portable storage device, System and method for providing application program using the same

Country Status (1)

Country Link
KR (1) KR101428979B1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060062587A (en) * 2004-12-04 2006-06-12 소프트온넷(주) A portable data storage system and method to run application programs on a host computer system
KR20060067815A (en) * 2004-12-15 2006-06-20 마이크로소프트 코포레이션 Portable application
KR20090078551A (en) * 2008-01-15 2009-07-20 삼성전자주식회사 Method and apparatus for authorizing host in portable storage device and providing information for authorizing host, and computer readable medium thereof

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060062587A (en) * 2004-12-04 2006-06-12 소프트온넷(주) A portable data storage system and method to run application programs on a host computer system
KR20060067815A (en) * 2004-12-15 2006-06-20 마이크로소프트 코포레이션 Portable application
KR20090078551A (en) * 2008-01-15 2009-07-20 삼성전자주식회사 Method and apparatus for authorizing host in portable storage device and providing information for authorizing host, and computer readable medium thereof

Also Published As

Publication number Publication date
KR20110020129A (en) 2011-03-02

Similar Documents

Publication Publication Date Title
US20220058257A1 (en) Authentication with secondary approver
EP3235215B1 (en) Security and permission architecture in a multi-tenant computing system
KR102058777B1 (en) Indirect authentication
US9185554B2 (en) System and methods to store, retrieve, manage, augment and monitor applications on appliances
US12058264B2 (en) Techniques for using signed nonces to secure cloud shells
US20140006451A1 (en) Remote-Controllable Kiosk
US20110154441A1 (en) Online development environment server, online marketplace server, online development environment constituting method, and developed application providing method
KR20160118794A (en) Data communicating method using secure element and electronic system adopting the same
CN105721510A (en) Account login method and terminal device
KR20110013184A (en) System for providing code block for separating execution based contents, method thereof and computer recordable medium storing the method
KR101428979B1 (en) Portable storage device, System and method for providing application program using the same
KR101479903B1 (en) Access authentification for multiple devices and flatforms
KR101533500B1 (en) Sevice method and system for ticketing and enterance based on near field communication
US9544398B2 (en) System and methods to store, retrieve, manage, augment and monitor applications on appliances
KR101701116B1 (en) Device and application for offering automatic response system authorizing service
KR100857765B1 (en) Full version allowing server allowing full version contents embodded in a mobile device, mobile device, and method for allowing full version embedded in the mobile device
KR20110073626A (en) Method for charging advance payment card using mobile phone's rf reader/writer, mobile phone and recording medium

Legal Events

Date Code Title Description
N231 Notification of change of applicant
A201 Request for examination
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20180731

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190718

Year of fee payment: 6