KR101555241B1 - Portable storage device and method for managing resource of the portable storage device - Google Patents

Portable storage device and method for managing resource of the portable storage device Download PDF

Info

Publication number
KR101555241B1
KR101555241B1 KR1020080055397A KR20080055397A KR101555241B1 KR 101555241 B1 KR101555241 B1 KR 101555241B1 KR 1020080055397 A KR1020080055397 A KR 1020080055397A KR 20080055397 A KR20080055397 A KR 20080055397A KR 101555241 B1 KR101555241 B1 KR 101555241B1
Authority
KR
South Korea
Prior art keywords
drm application
drm
portable storage
storage device
application
Prior art date
Application number
KR1020080055397A
Other languages
Korean (ko)
Other versions
KR20090018566A (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 US12/192,543 priority Critical patent/US8578503B2/en
Publication of KR20090018566A publication Critical patent/KR20090018566A/en
Application granted granted Critical
Publication of KR101555241B1 publication Critical patent/KR101555241B1/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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory

Landscapes

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

Abstract

본 발명은 휴대용 저장장치 및 휴대용 저장장치의 자원 관리 방법에 관한 것이다.  The present invention relates to a portable storage device and a method for managing resources of the portable storage device.

본 발명의 실시예에 따른 휴대용 저장장치의 자원 관리 방법은 휴지 상태의 제1 DRM 어플리케이션의 작업 처리가 필요한 경우, 상기 제1 DRM 어플리케이션을 준비 상태로 전환하는 단계; 및 휴지 상태의 제2 DRM 어플리케이션의 작업 처리가 필요한 경우, 상기 제1 DRM 어플리케이션을 대기 상태로 전환하고, 상기 제2 DRM 어플리케이션을 준비 상태로 전환하는 단계를 포함한다. A method of managing a resource of a portable storage device according to an exemplary embodiment of the present invention includes switching a first DRM application to a ready state when a first DRM application in a dormant state needs to process a job; And switching the first DRM application to a standby state and switching the second DRM application to a ready state when a work process of the second DRM application in the idle state is required.

휴대용 저장장치, DRM, 동작 상태 Portable storage device, DRM, operating status

Description

휴대용 저장장치 및 휴대용 저장장치의 자원 관리 방법{Portable storage device and method for managing resource of the portable storage device}[0001] DESCRIPTION [0002] Portable storage devices and methods for managing resources of portable storage devices [

본 발명은 휴대용 저장장치에 관한 것으로서, 더욱 상세하게는 휴대용 저장장치의 제한된 자원을 효율적으로 관리하는 방법 및 이를 이용한 휴대용 저장장치에 관한 것이다.The present invention relates to a portable storage device, and more particularly, to a method for efficiently managing limited resources of a portable storage device and a portable storage device using the same.

최근에 디지털 저작권 관리(Digital Rights Management; 이하, "DRM"이라 함)에 관한 연구가 활발하며, DRM을 적용한 상용 서비스들이 도입되었거나 도입 중에 있다. DRM은 무단 복제 및 배포가 용이한 디지털 컨텐츠를 보호하기 위한 기술 개념이다. Recently, studies on digital rights management (DRM) have been actively conducted, and DRM-based commercial services have been introduced or being introduced. DRM is a technology concept for protecting digital content that is easy to copy and distribute.

디지털 컨텐츠를 보호하고자 하는 노력은 종래에도 있었으나, 이는 디지털 컨텐츠에 대한 무단 접근 방지에 중점을 두고 있었다. 예컨데 디지털 컨텐츠에 대한 접근(access)은 대가를 지불한 사용자에게만 허용되었으며, 대가를 지불하지 않은 사용자는 디지털 컨텐츠에 접근할 수 없었다. 그러나 디지털 데이터의 특성상 디지털 컨텐츠는 재사용, 가공, 복제 및 배포가 용이하다. 따라서 대가를 지불하고 디지털 컨텐츠에 접근한 사용자가 이를 무단으로 복제 또는 배포할 경우에는 대 가를 지불하지 않은 사용자도 디지털 컨텐츠를 사용할 수 있게 된다. Efforts to protect digital contents have been made in the past, but this has focused on preventing unauthorized access to digital contents. For example, access to digital content was allowed only to the user who paid the price, and users who did not pay the digital content could not access the digital content. However, due to the nature of digital data, digital contents are easy to reuse, process, copy and distribute. Therefore, if a user who accesses digital content by paying a price is copying or distributing it without permission, a user who has not paid a fee can use the digital content.

이러한 문제점을 보완하기 위해 DRM은 디지털 컨텐츠를 암호화하여 배포하도록 하고, 암호화된 디지털 컨텐츠를 사용하기 위해서는 권리객체(Right Object; RO)라는 특정 라이센스가 필요하도록 한다.To solve this problem, DRM encrypts and distributes digital contents, and a specific license called a right object (RO) is required to use encrypted digital contents.

사용자는 휴대폰이나 PDA와 같이 디지털 컨텐츠를 재생시키려는 디바이스에 암호화된 디지털 컨텐츠 및 권리객체를 저장할 수 있다. 그러나 최근에는 암호화된 디지털 컨텐츠나 권리객체의 보관 및 배포를 간편히 하기 위해 메모리 스틱이나 멀티미디어카드(Multi-Media Card; MMC)와 같은 휴대용 저장장치를 통해 권리객체를 관리하도록 하는 기술이 개발되고 있다. 본 발명은 휴대용 저장장치의 자원을 효율적으로 사용하는데 그 목적이 있다.A user can store encrypted digital content and rights objects in a device such as a cellular phone or a PDA that is intended to play digital content. However, in recent years, techniques for managing rights objects through a portable storage device such as a memory stick or a Multi-Media Card (MMC) have been developed to facilitate the storage and distribution of encrypted digital contents or rights objects. An object of the present invention is to efficiently use resources of a portable storage device.

본 발명의 목적들은 이상에서 언급한 목적들로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The objects of the present invention are not limited to the above-mentioned objects, and other objects not mentioned can be clearly understood by those skilled in the art from the following description.

상기 목적을 달성하기 위하여, 본 발명의 실시예에 따른 휴대용 저장장치의 자원 관리 방법은 휴지 상태의 제1 DRM 어플리케이션의 작업 처리가 필요한 경우, 상기 제1 DRM 어플리케이션을 준비 상태로 전환하는 단계; 및 휴지 상태의 제2 DRM 어플리케이션의 작업 처리가 필요한 경우, 상기 제1 DRM 어플리케이션을 대기 상태로 전환하고, 상기 제2 DRM 어플리케이션을 준비 상태로 전환하는 단계를 포함한다. According to another aspect of the present invention, there is provided a method for managing a resource of a portable storage device, the method comprising: switching a first DRM application to a ready state when a first DRM application in a dormant state needs to be processed; And switching the first DRM application to a standby state and switching the second DRM application to a ready state when a work process of the second DRM application in the idle state is required.

상기 목적을 달성하기 위하여, 본 발명의 실시예에 따른 휴대용 저장장치는 적어도 하나의 DRM 어플리케이션을 실행시키는 어플리케이션 구동부, 및 상기 실행 되는 DRM 어플리케이션의 동작 상태에 따라서, 상기 DRM 어플리케이션의 작업 처리를 위한 메모리 공간을 할당하거나 상기 DRM 어플리케이션의 세션 컨텍스트 정보를 보안 저장 영역에 저장시키는 제어부를 포함한다. In order to achieve the above object, a portable storage device according to an embodiment of the present invention includes an application driver for executing at least one DRM application, and a memory for processing a job of the DRM application, And a controller for allocating space or storing session context information of the DRM application in the secure storage area.

기타 실시예들의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.The details of other embodiments are included in the detailed description and drawings.

먼저 본 발명에서 사용되는 용어에 대한 개략적인 설명을 한다. 용어의 설명은 본 발명의 이해를 돕기 위한 것이다. 따라서 본 발명의 상세한 설명에 있어서 명시적으로 한정하지 않는 한, 이하 설명되는 용어들이 본 발명의 기술적 사상을 한정하는 의미로 사용되는 것이 아님을 주의해야 한다.First, a brief description will be given of terms used in the present invention. The description of the terms is intended to assist in understanding the present invention. Therefore, it should be noted that the terms described below are not used to limit the technical spirit of the present invention unless explicitly defined in the detailed description of the present invention.

- 컨텐츠 객체- content object

컨텐츠 객체는 디지털 저작권 관리(Digital Rights Management; DRM)으로 보호되는 디지털 컨텐츠이다. 즉, 컨텐츠 객체는 컨텐츠 암호화 키에 의해 암호화된 상태의 디지털 컨텐츠이다. 여기서 디지털 컨텐츠는 동영상, 정지영상, 오디오, 게임, 텍스트 등 그 종류에 제한되지 않는다. The content object is digital content protected by digital rights management (DRM). That is, the content object is digital content encrypted by the content encryption key. Here, the digital contents are not limited to the types of moving pictures, still images, audio, games, text, and the like.

- 권리객체 (Rights Object; RO)- Rights Object (RO)

권리객체는 컨텐츠 객체에 대한 사용 권한을 갖는 일종의 라이센스이다. 권리객체는 컨텐츠 암호화 키, 권리객체를 이용하여 컨텐츠 객체를 재생(play back)시킬 수 있는 횟수나 기간, 또는 기한등을 나타내는 제한 정보, 및 컨텐츠 암호화 키로 재생(play back)시킬 수 있는 컨텐츠 객체를 식별할 수 있는 컨텐츠 객체 식 별자를 포함할 수 있다.A rights object is a kind of license having usage rights to a content object. The rights object includes a content encryption key, restriction information indicating the number of times or periods during which the content object can be played back using the rights object, time limit or the like, and a content object that can be played back with the content encryption key And may include an identifiable content object identifier.

- 호스트 디바이스- host device

호스트 디바이스는 휴대용 저장장치와 연결 가능하며, 권리객체(Rights Object)를 소비하여 컨텐츠 객체를 재생(play back)시킬 수 있는 디지털 장치를 의미한다. 호스트 디바이스는 휴대폰, PDA, MP3 플레이어 등의 휴대용 컨텐츠 재생 장치이거나, 데스크탑 컴퓨터, 디지털 TV와 같은 고정형 컨텐츠 재생 장치일 수 있다. A host device is a digital device that can be connected to a portable storage device and can play back a content object by consuming a rights object. The host device may be a mobile content playback device such as a mobile phone, a PDA, or an MP3 player, or a fixed content playback device such as a desktop computer or a digital TV.

- 휴대용 저장장치- Portable storage

휴대용 저장장치는 플래시 메모리와 같이 데이터를 읽고 쓰고 지울 수 있는 성질을 갖는 비휘발성 메모리를 포함하고, 데이터에 대한 소정의 연산 능력을 가지며, 호스트 디바이스와의 연결 및 분리가 용이한 저장장치를 의미한다. 휴대용 저장장치의 예로써 스마트 미디어, 메모리 스틱, CF카드, XD카드, SD카드, 멀티미디어카드 등을 들 수 있다. The portable storage device refers to a storage device including a nonvolatile memory having a property of reading, writing and erasing data, such as a flash memory, having a predetermined computing capability for data, and being easily connected to and detached from a host device . Examples of portable storage devices include smart media, memory sticks, CF cards, XD cards, SD cards, multimedia cards, and the like.

- 공개키 암호화(Public-key Cryptography) - Public-key Cryptography

공개키 암호화는 비대칭키 암호화라고도 하는데, 데이터를 암호화하는데 사용되는 키와 데이터를 복호화하는데 사용되는 키가 서로 다른 키로 구성되는 암호화 방식이다. 공개키 암호화 방식에서 사용되는 키는 공개키(public key)와 개인키(private key)의 쌍으로 이루어진다. 공개키는 비밀로 보관될 필요가 없으며 다른 장치에게 손쉽게 알려질 수 있고, 개인키는 특정 장치 자신만이 알고 있어야 한다. 공개키 암호화 알고리즘의 예로는 Diffie-Hellman 방식, RSA 방식, ElGamal 방식, 및 타원곡선(Elliptic Curve) 방식 등이 있다. Public key cryptography, also called asymmetric key cryptography, is an encryption scheme in which keys used to encrypt data and keys used to decrypt data are composed of different keys. The key used in the public key cryptosystem consists of a pair of a public key and a private key. The public key does not need to be kept secret and can be easily known to other devices, and the private key must be known only to the particular device itself. Examples of the public key encryption algorithm include a Diffie-Hellman method, an RSA method, an ElGamal method, and an elliptic curve method.

- 대칭키 암호화(Symetric-key Criptography)- Symmetric-key Cryptography

대칭키 암호화는 비밀키 암호화라고도 하며, 데이터를 암호화하는데 사용되는 키와 데이터를 복호화하는데 사용되는 키가 동일한 키로 구성되는 암호화 방식이다. 대칭키 암호화의 예로는 DES 방식과 AES 방식을 들 수 있다.Symmetric key encryption is also referred to as secret key encryption, and is an encryption method in which a key used for encrypting data and a key used for decrypting data are the same. Examples of symmetric key encryption include the DES scheme and the AES scheme.

- 난수- random number

임의성을 갖는 숫자열, 문자열, 또는 이들의 조합을 의미한다.Quot; means a string of numbers, strings, or combinations thereof having randomness.

이상에서 설명되지 않은 용어는 이하 필요한 부분에서 별도로 설명할 것이다. 이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명하기로 한다.The terms not described above will be described separately below in the necessary parts. Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일 실시예에 따른 DRM 개념을 나타낸 도면이다. FIG. 1 is a diagram illustrating a DRM concept according to an embodiment of the present invention. Referring to FIG.

사용자는 호스트 디바이스(110)를 통해 컨텐츠 공급자(130)로부터 컨텐츠 객체를 획득할 수 있다. 컨텐츠 공급자(130)가 공급하는 컨텐츠 객체를 사용하기 위해서는 권리객체가 필요하다. 따라서, 사용자는 일정한 대가를 지불하고 권리객체 발행기관(140)으로부터 컨텐츠 객체를 실행시킬 수 있는 권리객체를 구입할 수 있다. 이때 권리객체 발행기관(140)은 컨텐츠 공급자(130)에게 권리객체 발행 내역을 보고할 수 있다. 경우에 따라서는 권리객체 발행기관(140)과 컨텐츠 공급자(130)가 동일 주체일 수도 있다.A user may obtain the content object from the content provider 130 via the host device 110. In order to use the content object supplied by the content provider 130, a rights object is required. Accordingly, the user can purchase a rights object that pays a predetermined fee and can execute the content object from the rights object issuing organization 140. At this time, the rights object issuing organization 140 may report the right object issuance history to the content provider 130. [ In some cases, the rights object issuing organization 140 and the content provider 130 may be the same subject.

한편, 사용자는 구입한 권리객체를 호스트 디바이스(110)에 저장시켜 둘 수도 있지만, 본 발명의 일 실시예에 따라서 휴대용 저장장치(120)에 저장시킬 수도 있다. 물론, 휴대용 저장장치(120)는 그 생산시부터 하나 이상의 권리객체를 저장하고 있을 수도 있다. Meanwhile, the user may store the purchased rights object in the host device 110, but may store the rights object in the portable storage device 120 according to an embodiment of the present invention. Of course, the portable storage device 120 may store one or more rights objects from its production.

사용자는 권리객체를 저장하고 있는 휴대용 저장장치(120)를 호스트 디바이스(110)와 연결시킬 수 있으며, 호스트 디바이스(110)는 컨텐츠 객체를 재생시키기 위해 휴대용 저장장치(120)에 저장된 권리객체를 사용할 수 있다. The user may connect the portable storage device 120 storing the rights object with the host device 110 and the host device 110 may use the rights object stored in the portable storage device 120 to reproduce the content object .

도 2는 본 발명의 일 실시예에 따른 호스트 디바이스(110)와 휴대용 저장 장치(120)의 개략적인 스택 구조를 나타낸 도면이다. FIG. 2 is a diagram illustrating a schematic stack structure of a host device 110 and a portable storage device 120 according to an embodiment of the present invention.

호스트 디바이스(110)는 휴대용 저장 장치(120)와의 물리적 연결을 담당하는 인터페이스 계층(211), 휴대용 저장 장치(120)에 대해 메시지나 데이터의 송수신을 담당하는 전송 계층(transport layer, 212), 및 어플리케이션 계층(213)을 포함할 수 있다. 본 발명에서 어플리케이션 계층(213)은 복수의 디지털 저작권 관리(Digital Rights Management: DRM) 어플리케이션(213-1, 213-2, 213-n)을 지원할 수 있다. 어플리케이션 계층(213)이 지원 가능한 DRM 어플리케이션의 예로써, OMA DRM 어플리케이션, MS DRM 어플리케이션, open DRM 어플리케이션을 들 수 있다. 물론, 어플리케이션 계층(213)이 지원 가능한 DRM 어플리케이션의 종류가 이에 한정되는 것은 아니다.The host device 110 includes an interface layer 211 for physically connecting to the portable storage device 120, a transport layer 212 for transmitting and receiving messages and data to and from the portable storage device 120, An application layer 213, and the like. In the present invention, the application layer 213 may support a plurality of digital rights management (DRM) applications 213-1, 213-2, and 213-n. Examples of DRM applications that can be supported by the application layer 213 include an OMA DRM application, an MS DRM application, and an open DRM application. Of course, the type of DRM application that the application layer 213 can support is not limited to this.

휴대용 저장 장치(120) 역시 호스트 디바이스(110)와 유사한 스택 구조를 포함할 수 있다. 구체적으로, 휴대용 저장 장치(120)는 호스트 디바이스(110)와의 물리적 연결을 담당하는 인터페이스 계층(221), 호스트 디바이스(110)에 대한 메시지나 데이터의 송수신을 담당하는 전송 계층(transport layer, 222), 및 어플리케 이션 계층(223)을 포함할 수 있다. 휴대용 저장 장치(120)의 어플리케이션 계층(223) 역시 복수의 DRM 어플리케이션(223-1, 223-2, 223-n)을 지원할 수 있다. The portable storage device 120 may also include a stack structure similar to the host device 110. Specifically, the portable storage device 120 includes an interface layer 221 for physically connecting to the host device 110, a transport layer 222 for transmitting and receiving messages and data to and from the host device 110, And an application layer 223. The application layer 223 of the portable storage device 120 may also support a plurality of DRM applications 223-1, 223-2, and 223-n.

호스트 디바이스(110)가 휴대용 저장장치(120)와 연결되어 휴대용 저장 장치(120)에 저장된 권리객체를 소비하기 전에, 호스트 디바이스(110)와 휴대용 저장 장치(120) 간에 상호인증(mutual authentication)이 수행될 수 있다. 상호인증은 호스트 디바이스(110)와 휴대용 저장장치(120) 간에 교환되는 데이터의 보안을 유지하기 위한 기초 과정이다. Mutual authentication between the host device 110 and the portable storage device 120 is performed before the host device 110 is connected to the portable storage device 120 and consumes the right object stored in the portable storage device 120 . Mutual authentication is a basic process for maintaining the security of data exchanged between the host device 110 and the portable storage device 120. [

바람직하게는 호스트 디바이스(110)와 휴대용 저장 장치(120)의 DRM 어플리케이션 별로 상호인증이 수행될 수 있다. 예를 들어, 호스트 디바이스(110)가 OMA DRM 어플리케이션을 이용할 경우, 휴대용 저장 장치(120) 역시 OMA DRM 어플리케이션을 구동시키게 된다. 이때, 호스트 디바이스(110)와 휴대용 저장 장치(120)는 상호인증 작업을 통하여 OMA DRM 어플리케이션의 보안 세션(session)을 형성시킬 수 있다. 만약, OMA DRM 어플리케이션의 보안 세션이 형성되어 있는 상태에서, 호스트 디바이스(110)와 휴대용 저장 장치(120)가 MS DRM 어플리케이션을 이용하고자 할 경우, 호스트 디바이스(110)와 휴대용 저장 장치(120)는 MS DRM 어플리케이션의 보안 세션을 형성하기 위해 다시 상호인증 작업을 수행할 수 있다. 즉, DRM 어플리케이션을 구동시킬 때 마다 해당 DRM 어플리케이션을 위한 보안 세션이 형성될 수 있는 것이다. Preferably, mutual authentication can be performed for each DRM application of the host device 110 and the portable storage device 120. [ For example, when the host device 110 uses the OMA DRM application, the portable storage device 120 also drives the OMA DRM application. At this time, the host device 110 and the portable storage device 120 can form a secure session of the OMA DRM application through the mutual authentication operation. If the host device 110 and the portable storage device 120 want to use the MS DRM application in a state where a secure session of the OMA DRM application is formed, the host device 110 and the portable storage device 120 And may perform the mutual authentication operation again to form a secure session of the MS DRM application. That is, whenever a DRM application is started, a secure session for the DRM application can be formed.

도 3은 본 발명의 일 실시예에 따른 상호인증 과정을 나타낸 흐름도이다. 3 is a flowchart illustrating a mutual authentication process according to an exemplary embodiment of the present invention.

본 실시예에서 호스트 디바이스(110)와 휴대용 저장장치(120) 간에 전송되는 데이터 중에서, 아래 첨자 'H'는 호스트 디바이스(110) 소유이거나 호스트 디바이스(110)가 생성한 데이터를 의미하고, 아래 첨자 'P'는 휴대용 저장장치(120) 소유이거나 휴대용 저장장치(120)가 생성한 데이터를 의미한다.Among the data transmitted between the host device 110 and the portable storage device 120 in the present embodiment, the subscript 'H' means data owned by the host device 110 or generated by the host device 110, 'P' refers to data owned by portable storage device 120 or generated by portable storage device 120.

먼저 호스트 디바이스(110)와 휴대용 저장장치(120)가 연결되면, 호스트 디바이스(110)는 휴대용 저장장치(120)에게 상호인증 요청 메시지를 전송할 수 있다(S310). 상호인증 요청 메시지는 인증기관(Certification Authority)이 호스트 디바이스(110)에 대하여 발행한 인증서(Certificate)H를 포함할 수 있다. 인증서H는 호스트 디바이스(110)를 식별할 수 있는 IDH와 호스트 디바이스(110)의 공개키H를 포함할 수 있다. 또한, 인증서H는 인증기관의 개인키를 이용하여 전자서명 되어 있을 수 있다. First, when the host device 110 and the portable storage device 120 are connected, the host device 110 may transmit the mutual authentication request message to the portable storage device 120 (S310). The mutual authentication request message may include a certificate H issued by the Certification Authority to the host device 110. [ The certificate H may include an ID H capable of identifying the host device 110 and a public key H of the host device 110. [ Also, the certificate H may be digitally signed using the private key of the certification authority.

호스트 디바이스(110)로부터 상호인증 요청 메시지를 수신한 휴대용 저장장치(120)는 상호인증 요청 메시지에 포함된 인증서H가 유효한 것인지의 여부를 확인할 수 있다(S315). 인증서H의 유효성은 인증서 폐기 목록(Certificate Revocation List; CRL)을 이용하여 확인 가능하다. CRL은 휴대용 저장장치(120)가 생상될 때부터 휴대용 저장장치(120)에 저장되어 있던 것일 수도 있고, 휴대용 저장장치(120)가 사전에 호스트 디바이스(110)나 다른 장치와 연결되었을 때에, 호스트 디바이스(110)나 다른 장치를 통하여 획득해둔 것일 수도 있다. Upon receiving the mutual authentication request message from the host device 110, the portable storage device 120 can confirm whether or not the certificate H included in the mutual authentication request message is valid (S315). The validity of certificate H can be verified using a Certificate Revocation List (CRL). The CRL may be stored in the portable storage device 120 from when the portable storage device 120 is created or when the portable storage device 120 is connected to the host device 110 or another device in advance, Or may have been acquired through the device 110 or another device.

만약, 호스트 디바이스(110)의 인증서H가 CRL에 등록된 인증서라면, 휴대용 저장장치(120)는 인증서H가 유효하지 않은 것으로 판단하고, 호스트 디바이스(110)와의 상호인증을 거부할 수 있다. 그러나 호스트 디바이스(110)의 인증서H가 CRL에 등록되지 않은 인증서라면, 휴대용 저장장치(120)는 인증서H가 유효한 것으로 판단하고, 인증서H로부터 호스트 디바이스(110)의 공개키H를 획득할 수 있다(S320).If the certificate H of the host device 110 is a certificate registered in the CRL, the portable storage device 120 may determine that the certificate H is invalid and deny mutual authentication with the host device 110. [ However, if the certificate H of the host device 110 is a certificate not registered in the CRL, the portable storage device 120 may determine that the certificate H is valid and obtain the public key H of the host device 110 from the certificate H (S320).

또한, 휴대용 저장장치(120)는 난수P를 생성하고(S325), 생성된 난수P를 호스트 디바이스(110)의 공개키H로 암호화할 수 있다(S330). Further, the portable storage device 120 may be encrypted with the public key H of generating a random number, and P (S325), the generated random number P a host device (110) (S330).

그 후, 휴대용 저장장치(120)은 상호인증 응답 메시지를 호스트 디바이스(110)에게 전송할 수 있다(S335). 상호인증 응답 메시지는 인증기관이 휴대용 저장장치(120)에 대하여 발행한 인증서P 및 과정 S330에서 암호화된 난수P를 포함할 수 있다. 여기서 인증서P는 휴대용 저장장치(120)를 식별할 수 있는 IDP와 휴대용 저장장치(120)의 공개키P를 포함할 수 있다. 또한, 인증서P는 인증기관의 개인키를 이용하여 전자서명 되어 있을 수 있다.The portable storage device 120 may then send a mutual authentication response message to the host device 110 (S335). The mutual authentication response message may include a certificate P issued by the certification authority to the portable storage device 120 and an encrypted random number P in step S330. Here, the certificate P may include an ID P that can identify the portable storage device 120 and a public key P of the portable storage device 120. Also, the certificate P may be electronically signed using the private key of the certification authority.

휴대용 저장장치(120)로부터 상호인증 응답 메시지를 수신한 호스트 디바이스(110)는 상호인증 응답 메시지에 포함된 인증서P가 유효한지의 여부를 확인할 수 있다(S340). 인증서P의 유효성은 CRL을 이용하여 확인 가능하다. CRL은 호스트 디바이스(110)가 생상될 때부터 호스트 디바이스(110)에 저장되어 있던 것일 수도 있고, 호스트 디바이스(110)가 사전에 웹이나 이동통신망을 통하여 CRL 발급 기관(인 증서 발행 기관과 동일 주체일 수도 있다)에 접속하여 CRL 발급 기관으로부터 획득해둔 것일 수도 있다. 물론, CRL은 호스트 디바이스(110)가 사전에 다른 장치와 연결되어, 해당 장치로부터 획득해둔 것일수도 있다.Upon receiving the mutual authentication response message from the portable storage device 120, the host device 110 can check whether the certificate P included in the mutual authentication response message is valid (S340). The validity of certificate P can be verified using CRL. The CRL may be stored in the host device 110 from when the host device 110 is created or may be stored in advance by the host device 110 via the web or mobile communication network, Or may be obtained from a CRL issuer. Of course, the CRL may be acquired from the host device 110 by being connected to another device in advance.

만약, 휴대용 저장장치(120)의 인증서P가 CRL에 등록된 인증서라면, 호스트 디바이스(110)는 인증서P가 유효하지 않은 것으로 판단하고, 휴대용 저장장치(120)와의 상호인증을 중단할 수 있다. 그러나 휴대용 저장장치(120)의 인증서P가 CRL에 등록되지 않은 인증서라면, 호스트 디바이스(110)는 인증서P가 유효한 것으로 판단하고, 인증서P로부터 휴대용 저장장치(120)의 공개키P를 획득할 수 있다(S345). 또한, 호스트 디바이스(110)는 상호인증 응답 메시지에 포함된 암호화된 난수P를 자신의 개인키로 복호화하여, 난수P를 획득할 수 있다(S350).If the certificate P of the portable storage device 120 is a certificate registered in the CRL, the host device 110 may determine that the certificate P is invalid, and suspend mutual authentication with the portable storage device 120. [ However, if the certificate P of the portable storage device 120 is a certificate not registered in the CRL, the host device 110 determines that the certificate P is valid and can obtain the public key P of the portable storage device 120 from the certificate P (S345). Also, the host device 110 may decrypt the encrypted random number P included in the mutual authentication response message with its own private key to obtain the random number P (S350).

호스트 디바이스(110)는 난수H를 생성하고(S355), 생성된 난수H를 과정 S345에서 획득한 휴대용 저장장치(120)의 공개키P로 암호화할 수 있다(S360). Host device 110 may generate a random number encrypted with the public key P and H of the (S355), acquiring the random number generated in step S345 H portable storage device (120) (S360).

그 후, 호스트 디바이스(200)는 휴대용 저장장치(300)에게 세션키 생성 메시지를 전송할 수 있다(S365). 세션키 생성 요청 메시지는 과정 S360에서 암호화된 난수H를 포함할 수 있다.Thereafter, the host device 200 may transmit a session key generation message to the portable storage device 300 (S365). The session key generation request message may include the encrypted random number H in step S360.

호스트 디바이스(110)로부터 세션키 생성 메시지를 수신한 휴대용 저장장치(120)는 세션키 생성 메시지에 포함된 암호화된 난수H를 자신의 개인키P로 복호화 하여 난수H를 획득할 수 있다(S370).Upon receiving the session key generation message from the host device 110, the portable storage device 120 may obtain the random number H by decoding the encrypted random number H included in the session key generation message into its own private key P (S370) .

이에 따라서 호스트 디바이스(200)와 휴대용 저장장치(300)는 두개의 난수(난수H 및 난수P)를 공유하게 된다. 두개의 난수(난수H 및 난수P)를 공유한 호스트 디바이스(110)와 휴대용 저장장치(120)는 두개의 난수(난수H 및 난수S)를 사용하여 세션키를 생성할 수 있다(S375, S380). 이 때 호스트 디바이스(110)와 휴대용 저장장치(120)가 세션키를 생성하기 위해서 사용하는 키생성 알고리즘은 상호 동일하다. 따라서 호스트 디바이스(110)와 휴대용 저장장치(120)는 상호 동일한 세션키를 공유하게 된다. Accordingly, the host device 200 and the portable storage device 300 share two random numbers (a random number H and a random number P ). The host device 110 and the portable storage device 120 sharing the two random numbers (the random number H and the random number P ) can generate the session key using the two random numbers (the random number H and the random number S ) (S375, S380 ). At this time, the key generation algorithms used by the host device 110 and the portable storage device 120 to generate the session key are the same. Accordingly, the host device 110 and the portable storage device 120 share the same session key.

호스트 디바이스(110)와 휴대용 저장장치(120)는 상호인증 이후 상대방에게 전송할 데이터를 세션키로 암호화하고, 상대방으로부터 수신된 암호화된 데이터를 세션키로 복호화할 수 있다. 이에 따라서 호스트 디바이스(110)와 휴대용 저장장치(120) 간의 데이터 전송에 보안이 유지될 수 있다. The host device 110 and the portable storage device 120 may encrypt the data to be transmitted to the other party with the session key after mutual authentication and decrypt the encrypted data received from the other party with the session key. Accordingly, security can be maintained in data transmission between the host device 110 and the portable storage device 120. [

이러한 상호인증 과정은 본 발명의 일 실시예일뿐이므로, 본 발명이 이에 한정되는 것은 아니다. 따라서, 도 3의 실시예에서 일부 과정이 생략되거나 새로운 과정이 추가될 수도 있으며, 상호인증 과정에서 교환되는 각종 정보나 파라미터 역시 실시예에 따라서 변경될 수 있다. Since the mutual authentication process is an embodiment of the present invention, the present invention is not limited thereto. Therefore, in the embodiment of FIG. 3, some processes may be omitted or new processes may be added, and various information and parameters exchanged in the mutual authentication process may be changed according to the embodiment.

앞서 설명한 바와 같이, 새로운 DRM 어플리케이션을 구동시킬 때 마다 도 3의 실시예와 같은 상호인증 작업이 수행될 수 있다. 따라서, 복수의 DRM 어플리케이션을 구동시킨다면, 상호인증 작업 역시 여러 번 수행될 수 있으며, 구동되는 DRM 어플리케이션 별로 보안 세션이 형성될 수 있다. As described above, the mutual authentication operation as in the embodiment of FIG. 3 can be performed each time a new DRM application is started. Therefore, if a plurality of DRM applications are driven, the mutual authentication operation can be performed many times, and a secure session can be formed for each DRM application to be driven.

휴대용 저장 장치(120)의 경우 호스트 디바이스(110)에 비해 데이터 처리 능력이 제한된다. 따라서, 휴대용 저장 장치(120)가 복수의 DRM 어플리케이션을 구동시킬 수 있다 하더라도, 복수의 DRM 어플리케이션이 동시에 작업을 처리하기에는 휴대용 저장 장치(120)의 메인 메모리나 연산 능력이 부족한 경우가 발생할 수도 있다. 본 발명의 일 실시예에 따른 휴대용 저장 장치(120)는 DRM 어플리케이션의 동작 상태를 설정함으로써, 한정된 자원을 이용하여 복수의 DRM 어플리케이션을 효과적으로 구동시킬 수 있다. In the case of the portable storage device 120, the data processing capability is limited as compared with the host device 110. Therefore, even if the portable storage device 120 can drive a plurality of DRM applications, it may happen that the main memory of the portable storage device 120 or the computation capability is insufficient for a plurality of DRM applications to process jobs at the same time. The portable storage device 120 according to an exemplary embodiment of the present invention can set the operation state of the DRM application, thereby effectively driving a plurality of DRM applications using limited resources.

도 4는 본 발명의 일 실시예에 따른 DRM 어플리케이션의 동작 상태를 나타낸 도면이다. 도시된 DRM 어플리케이션의 동작 상태는 휴지 상태(idle status, 401), 준비 상태(ready status, 402), 및 대기 상태(pending status, 403)로 구분될 수 있다. 휴지 상태(401)는 DRM 어플리케이션이 실행되고 있지 않는 상태를 나타낸다. 준비 상태(402)는 DRM 어플리케이션이 실행되고 있는 상태로서, 호스트 디바이스(110)의 요청에 따라서 작업을 수행하고 있거나 언제라도 작업을 수행할 수 있는 상태를 나타낸다. 대기 상태(403)는 DRM 어플리케이션이 실행되었으나 아직은 특정한 작업 수행이 필요치 않은 상태를 나타낸다. 4 is a diagram illustrating an operation state of a DRM application according to an embodiment of the present invention. The DRM application may be classified into an idle status 401, a ready status 402, and a pending status 403. The dormant state 401 indicates a state in which the DRM application is not being executed. The ready state 402 is a state in which the DRM application is being executed and indicates that the user is performing a task according to a request of the host device 110 or can perform a task at any time. The waiting state 403 indicates a state in which the DRM application has been executed but no specific task is required to be performed yet.

모든 DRM 어플리케이션의 초기 상태는 휴지 상태(401)인 것이 바람직하다. 만약, 제1 DRM 어플리케이션을 이용한 작업 처리가 필요하다면 휴대용 저장장치(120)는 제1 DRM 어플리케이션을 휴지 상태(401)에서 준비 상태(402)로 전환시킬 수 있다. 이 때, 휴대용 저장 장치(120)는 DRM 어플리케이션을 실행하거나 소정의 작업을 처리할 때 사용되는 코드, 데이터, 메시지, 기타 다양한 유형의 정보를 로딩해둘 수 있는 메인 메모리(예를 들어, RAM(Random Access Memory))에서 사전에 설정된 크기의 메모리 공간을 제1 DRM 어플리케이션의 작업 처리를 위해 할당할 수 있다. 할당될 메모리 공간의 크기는 제1 DRM 어플리케이션의 종류나 휴대용 저장 장치(120)의 성능 등에 따라서 달라질 수 있다. Preferably, the initial state of all DRM applications is a dormant state 401. If a work process using the first DRM application is needed, the portable storage device 120 can switch the first DRM application from the idle state 401 to the ready state 402. [ At this time, the portable storage device 120 may be a main memory (for example, RAM (Random), which may be loaded with codes, data, messages and various other types of information used when executing a DRM application or processing a predetermined job Access Memory) may allocate a memory space of a preset size for the job processing of the first DRM application. The size of the memory space to be allocated may vary depending on the type of the first DRM application, the performance of the portable storage device 120, and the like.

제1 DRM 어플리케이션이 준비 상태(402)에 있는 상황에서, 휴지 상태(401) 또는 대기 상태(403)에 있던 제2 DRM 어플리케이션을 이용한 작업 처리가 필요하다면, 휴대용 저장장치(120)는 제1 DRM 어플리케이션의 동작 상태를 대기 상태(403)로 전환시키고, 제2 DRM 어플리케이션의 동작 상태를 준비 상태(402)로 전환시킬 수 있다. 이 때, 휴대용 저장 장치(120)는 제1 DRM 어플리케이션을 위한 메모리 공간의 할당을 해제하고, 제1 DRM 어플리케이션이 처리하던 작업 데이터와 제1 DRM 어플리케이션의 보안 세션을 유지하기 위해 필요한 보안 정보(예를 들어 세션키)를 포함하는 세션 컨텍스트 정보를 보안 저장 영역에 저장시킬 수 있다. 그 후, 휴대용 저장장치(120)는 제2 DRM 어플리케이션의 작업 처리를 위해 필요한 메모리 공간을 할당할 수 있다. 이 때 할당되는 메모리 공간의 크기는 제2 DRM 어플리케이션의 종류나 휴대용 저장 장치(120)의 성능 등에 따라서 달라질 수 있다. If the first DRM application is in the ready state 402 and a work process using the second DRM application in the idle state 401 or the standby state 403 is required, The operation state of the application may be switched to the standby state 403 and the operation state of the second DRM application may be switched to the ready state 402. [ At this time, the portable storage device 120 cancels the allocation of the memory space for the first DRM application and deletes the security information (for example, the security information necessary for maintaining the security session of the first DRM application with the job data processed by the first DRM application (E.g., session key) to the secure storage area. Thereafter, the portable storage device 120 can allocate the memory space required for processing the job of the second DRM application. The size of the memory space allocated at this time may vary depending on the type of the second DRM application, the performance of the portable storage device 120, and the like.

추후에, 제1 DRM 어플리케이션의 작업 처리가 필요하다면, 휴대용 저장 장치(120)는 제1 DRM 어플리케이션을 준비 상태(402)로 전환시키고 제1 DRM 어플리케이션의 작업 처리를 위한 메모리 공간을 할당할 수 있다. 이 때, 보안 저장 영역에 저장시켜두었던 제1 DRM 어플리케이션의 세션 컨텍스트 정보는 제1 DRM 어플리 케이션에게 할당한 메모리 공간으로 이동될 수 있다. 또한, 제2 DRM 어플리케이션은 대기 상태(403)로 전환되고, 제2 DRM 어플리케이션을 위한 메모리 공간의 할당은 해제될 수 있다. 물론, 이 경우에도 제2 DRM 어플리케이션의 세션 컨텍스트 정보는 보안 저장 영역에 저장될 수 있다. If the operation of the first DRM application is needed later, the portable storage device 120 may switch the first DRM application to the ready state 402 and allocate a memory space for the job processing of the first DRM application . At this time, the session context information of the first DRM application stored in the secure storage area can be moved to the memory space allocated to the first DRM application. In addition, the second DRM application is switched to the idle state 403, and the allocation of memory space for the second DRM application can be released. Of course, in this case also, the session context information of the second DRM application can be stored in the secure storage area.

여기서, 보안 저장 영역은 다른 장치나 어플리케이션으로부터의 접근이 논리적 또는 물리적으로 차단된 저장 영역이며, 휴대용 저장장치(120)에 복수로 존재할 수도 있다. 보안 저장 영역에는 권리객체와 같이 보안이 필요한 다른 유형의 데이터나 정보가 저장될 수도 있는데, 세션 컨텍스트 정보는 다른 데이터가 저장되는 보안 저장 영역과는 분리된 보안 저장 영역에 저장되는 것이 바람직하다.Here, the secure storage area is a storage area in which access from other devices or applications is logically or physically blocked, and may exist in the portable storage device 120 in plural. The secure storage area may store other types of data or information requiring security such as a rights object. The session context information is preferably stored in a secure storage area separate from the secure storage area where other data is stored.

휴대용 저장장치(120)는 자신이 지원하는 각 DRM 어플리케이션의 동작 상태를 호스트 디바이스(110)의 요청에 따라서 변경할 수 있다. 표1은 호스트 디바이스(110)가 DRM 어플리케이션의 동작을 위해 휴대용 저장장치(120)에게 전송하는 메시지의 일 예를 나타낸 것이다. 물론 본 발명이 '메시지'이라는 용어에 의해 한정되는 것은 아니며, 인스트럭션, 커멘드, 요청(request), 이밖에도 정보나 데이터의 전달이나 작업의 수행을 위해 장치간에 전송되는 신호를 나타내는 다른 유형의 용어가 사용되어도 무방하다. The portable storage device 120 can change an operation state of each DRM application supported by the portable storage device 120 according to a request of the host device 110. [ Table 1 shows an example of a message that the host device 110 transmits to the portable storage device 120 for operation of the DRM application. Of course, the present invention is not limited to the term " message ". It should be understood that other types of terms may be used to refer to instructions, commands, requests and signals transmitted between devices for the transfer of information or data, It can be done.

이름name 정보Information 어플리케이션 개시(Application Open)Application Open (Application Open) S_OPENS_OPEN 어플리케이션 종료(Application Close)Application Close (Application Close) S_CLOSES_CLOSE 보안 전달(Secure Put)Secure Push S_PUTS_PUT 보안 수신(Secure Get)Secure Receive (Secure Get) S_GETS_GET 어플리케이션 일시정지(Application Pause)Application Pause S_PAUSES_PAUSE 어플리케이션 재개(Application Resume)Application Resume S_RESUMES_RESUME

표1에서 어플리케이션 개시 메시지는 휴지 상태의 DRM 어플리케이션을 준비 상태로 전환시킬 때 사용될 수 있으며, 어플리케이션 종료 메시지는 준비 상태나 대기 상태의 DRM 어플리케이션을 휴지 상태로 전환시킬 때 사용될 수 있다. In Table 1, the application start message can be used to switch the dormant DRM application into the ready state, and the application termination message can be used to switch the ready or standby DRM application to the dormant state.

또한, 어플리케이션 일시정지 메시지는 준비 상태의 DRM 어플리케이션을 대기 상태로 전환시킬 때 사용될 수 있으며, 어플리케이션 재개 메시지는 대기 상태의 DRM 어플리케이션을 준비 상태로 전환시킬 때 사용될 수 있다. In addition, the application suspension message can be used to switch the DRM application in the ready state to the standby state, and the application resume message can be used to switch the DRM application in the standby state to the ready state.

보안 전달 메시지는 DRM 어플리케이션의 동작 상태에는 영향을 미치지 않으며, 휴대용 저장장치(120)에게 정보를 전달할 때 사용될 수 있다. 보안 수신 메시지 역시 DRM 어플리케이션의 동작 상태에는 영향을 미치지 않으며, 휴대용 저장장치(120)에게 정보를 요청할 때 사용될 수 있다. 준비 상태(402)나 대기 상태(403)에 있던 중 오류가 발생한 경우 DRM 어플리케이션의 동작 상태는 휴지 상태(401)로 전환될 수 있다.The secure delivery message does not affect the operational state of the DRM application and can be used to convey information to the portable storage device 120. [ The secure reception message also does not affect the operation state of the DRM application and can be used when requesting information to the portable storage device 120. [ When an error occurs in the ready state 402 or the waiting state 403, the operation state of the DRM application can be switched to the idle state 401. [

호스트 디바이스(110)로부터 휴대용 저장장치(120)에게 전송되는 메시지에는 메시지에 따라서 동작할 DRM 어플리케이션을 식별할 수 있는 어플리케이션 식별자가 포함될 수 있다. 따라서, 휴대용 저장장치(120)는 호스트 디바이스(110)로부터 전송된 메시지를 적절한 DRM 어플리케이션에게 전달할 수 있다. The message transmitted from the host device 110 to the portable storage device 120 may include an application identifier capable of identifying a DRM application to be operated according to the message. Thus, the portable storage device 120 can deliver the message sent from the host device 110 to the appropriate DRM application.

도 4에 도시된 바와 같이 DRM 어플리케이션이 준비 상태(402)나 대기 상태(403)에 있는 경우에도 어플리케이션 개시 메시지가 사용될 수 있는데, 이 때 DRM 어플리케이션의 세션 컨텍스트 데이터 중에서 보안 정보는 그대로 유지될 수 있으며, DRM 어플리케이션이 처리하던 작업 데이터는 삭제되거나 리셋(reset)될 수 있다. 즉, 준비 상태(402)나 대기 상태(403)에 있던 DRM 어플리케이션이 휴지 상태(401)를 거쳐서 준비 상태(402)로 전환될 경우에는 도 2에 도시된 바와 같은 상호인증 작업이 수행되어야 하지만, 준비 상태(402)나 대기 상태(403)에 있던 DRM 어플리케이션을 다시 준비 상태(402)로 전환시키는 경우 상호인증 작업이 생략될 수 있다. 4, an application start message may be used even when the DRM application is in the ready state 402 or the wait state 403. In this case, the security information may be maintained in the session context data of the DRM application , The job data processed by the DRM application may be deleted or reset. That is, when the DRM application in the ready state 402 or the idle state 403 is switched to the ready state 402 via the idle state 401, the mutual authentication operation as shown in FIG. 2 should be performed, When the DRM application in the ready state 402 or the standby state 403 is switched back to the ready state 402, the mutual authentication operation may be omitted.

도 5는 본 발명의 일 실시예에 따른 DRM 어플리케이션 구동 과정을 나타낸 흐름도이다. 본 실시예는 호스트 디바이스(110)와 휴대용 저장장치(120)는 각각 제1 DRM 어플리케이션과 제2 DRM 어플리케이션을 보유한 것으로 가정한 것이지만, 본 발명이 이에 한정되는 것은 아니다. 5 is a flowchart illustrating a DRM application process according to an embodiment of the present invention. The present embodiment assumes that the host device 110 and the portable storage device 120 have a first DRM application and a second DRM application, respectively, but the present invention is not limited thereto.

휴대용 저장장치(120)의 제1 DRM 어플리케이션과 제2 DRM 어플리케이션의 초기 상태는 휴지 상태이다. 제1 DRM 어플리케이션을 이용하여 DRM 작업을 수행하고자 하는 호스트 디바이스(110)는 어플리케이션 개시 메시지를 휴대용 저장 장치(120)에게 전송할 수 있다(S510). 여기서, 어플리케이션 개시 메시지는 제1 DRM 어플리케이션의 어플리케이션 식별자를 포함할 수 있으며, 휴대용 저장장치(120)는 어플리케이션 식별자를 통해서 어플리케이션 개시 인스터럭션이 제1 DRM 어플리케이션을 위한 것임을 알 수 있다. 이하에서, 별도의 설명이 없더라도 휴대용 저장장치(120)는 호스트 디바이스(110)로부터 전송된 메시지에 포함되는 어플리케이션 식별자를 통해서, 해당 메시지가 어떠한 DRM 어플리케이션을 위한 것인지 알 수 있다. The initial states of the first DRM application and the second DRM application of the portable storage device 120 are in the idle state. The host device 110 that wishes to perform the DRM operation using the first DRM application may transmit the application start message to the portable storage device 120 in operation S510. Here, the application start message may include an application identifier of the first DRM application, and the portable storage device 120 may know that the application start instruction is for the first DRM application through the application identifier. In the following description, the portable storage device 120 can know which DRM application the corresponding message is for through the application identifier included in the message transmitted from the host device 110, without further description.

호스트 디바이스(110)로부터 어플리케이션 개시 메시지가 수신되면, 휴대용 저장장치는(120)는 제1 DRM 어플리케이션의 동작 상태를 준비 상태로 전환시킬 수 있다(S512). 즉, 과정 S512에서 제1 DRM 어플리케이션이 실행될 수 있다. 이 때, 휴대용 저장 장치(120)는 준비 상태로 전환되는 제1 DRM 어플리케이션의 작업 처리를 위한 메모리 공간을 할당하고(S514), 호스트 디바이스(110)에게 개시 응답 메시지를 전송할 수 있다(S516).When the application start message is received from the host device 110, the portable storage device 120 can switch the operation state of the first DRM application to the ready state (S512). That is, the first DRM application can be executed in step S512. At this time, the portable storage device 120 allocates a memory space for job processing of the first DRM application to be switched to the ready state (S514), and may transmit an initiation response message to the host device 110 (S516).

이 때, 호스트 디바이스(110)와 휴대용 저장장치(120) 간에 제1 DRM 어플리케이션의 보안 세션을 형성하는 상호인증 작업이 수행될 수 있다. 상호인증에 대해서는 도 2를 참조하여 설명한 바 있다. 상호인증 작업이 중단될 경우, 제1 DRM 어플리케이션의 동작 상태는 휴지 상태로 전환될 수 있으며, 이러한 실시예는 다른 DRM 어플리케이션에 대해서도 동일하게 적용될 수 있다. At this time, a mutual authentication operation for establishing a secure session of the first DRM application between the host device 110 and the portable storage device 120 may be performed. Mutual authentication has been described with reference to FIG. When the mutual authentication operation is interrupted, the operation state of the first DRM application may be switched to the idle state, and this embodiment may be similarly applied to other DRM applications.

상호인증 결과 보안 세션이 형성되면, 호스트 디바이스(110)와 휴대용 저장장치(120)는 각각 제1 DRM 어플리케이션을 이용한 DRM 작업을 수행할 수 있다. DRM 작업의 일 예로, 호스트 디바이스(110)가 휴대용 저장장치(120)에 저장된 권리객체를 이용하여 컨텐츠 객체를 재생시키는 작업을 들 수 있다. DRM 작업 시 각종 데이터나 정보의 전송을 위해서 보안 전달 메시지나 보안 수신 메시지가 이용될 수 있다.When the security session is established as a result of the mutual authentication, the host device 110 and the portable storage device 120 can respectively perform the DRM operation using the first DRM application. As an example of the DRM operation, the operation that the host device 110 reproduces the content object using the rights object stored in the portable storage device 120 can be mentioned. A security delivery message or a secure reception message can be used for transmission of various data or information during a DRM operation.

제1 DRM 어플리케이션이 준비 상태(402)에 있는 상황에서, 제2 DRM 어플리케이션을 이용한 작업 처리가 필요할 수 있다. 이 때, 호스트 디바이스(110)는 제1 DRM 어플리케이션의 어플리케이션 식별자를 포함하는 어플리케이션 일시정지 메시지를 휴대용 저장장치(120)에게 전송할 수 있다(S518). In a situation where the first DRM application is in the ready state 402, it may be necessary to process the work using the second DRM application. At this time, the host device 110 may transmit an application suspend message including the application identifier of the first DRM application to the portable storage device 120 (S518).

휴대용 저장장치(120)는 제1 DRM 어플리케이션의 동작 상태를 대기 상태로 전환시킬 수 있다(S520). 이 때, 휴대용 저장장치(120)는 제1 DRM 어플리케이션의 세션 컨텍스트 정보를 보안 저장 영역에 저장시킬 수 있다(S522). 따라서 제1 DRM 어플리케이션의 보안 정보는 삭제되지 않고 보호될 수 있으며, 제1 DRM 어플리케이션의 보안 세션은 유지될 수 있다. The portable storage device 120 can switch the operation state of the first DRM application to the standby state (S520). At this time, the portable storage device 120 may store the session context information of the first DRM application in the secure storage area (S522). Accordingly, the security information of the first DRM application can be protected without being deleted, and the security session of the first DRM application can be maintained.

그 후, 휴대용 저장장치(120)는 제1 DRM 어플리케이션을 위한 메모리 공간의 할당을 해제하고(S524), 호스트 디바이스(110)에게 일시정지 응답 메시지를 전송할 수 있다(S526).Thereafter, the portable storage device 120 cancels the allocation of the memory space for the first DRM application (S524), and can transmit a suspend response message to the host device 110 (S526).

그 후, 호스트 디바이스(110)는 제2 DRM 어플리케이션의 어플리케이션 식별자를 포함하는 어플리케이션 개시 메시지를 휴대용 저장장치(120)에게 전송할 수 있다(S528). The host device 110 may then send an application launch message containing the application identifier of the second DRM application to the portable storage device 120 (S528).

휴대용 저장장치(120)는 제2 DRM 어플리케이션의 동작 상태를 준비 상태로 전환시킬 수 있으며(S530), 제2 DRM 어플리케이션의 작업 처리를 위한 메모리 공간을 할당할 수 있다(S532). 그 후, 휴대용 저장장치(120)는 호스트 디바이스(110)에게 개시 응답 메시지를 전송할 수 있다(S534).The portable storage device 120 can convert the operation state of the second DRM application into the ready state in operation S530 and allocate a memory space for the operation processing of the second DRM application in operation S532. The portable storage device 120 may then send an initiation response message to the host device 110 (S534).

이 때, 호스트 디바이스(110)와 휴대용 저장장치(120) 간에 제2 DRM 어플리케이션의 보안 세션을 형성하는 상호인증 작업이 수행될 수 있으며, 제2 어플리케이션의 보안 세션이 형성되면 호스트 디바이스(110)와 휴대용 저장장치(120)는 각각 제2 DRM 어플리케이션을 이용한 DRM 작업을 수행할 수 있다.At this time, a mutual authentication operation for forming a secure session of the second DRM application can be performed between the host device 110 and the portable storage device 120. When the secure session of the second application is formed, The portable storage device 120 can perform a DRM operation using the second DRM application.

만약, 제2 DRM 어플리케이션의 작업 처리가 더 이상 필요하지 않아, 제2 DRM 어플리케이션을 종료시켜야 한다면, 호스트 디바이스(110)는 제2 DRM 어플리케이션의 어플리케이션 식별자를 포함하는 어플리케이션 종료 메시지를 휴대용 저장장치(120)에게 전송할 수 있다(S536).If the operation of the second DRM application is no longer required and the second DRM application should be terminated, the host device 110 transmits an application termination message including the application identifier of the second DRM application to the portable storage device 120 (S536).

어플리케이션 종료 메시지를 수신한 휴대용 저장장치(120)는 제2 DRM 어플리케이션의 동작 상태를 휴지 상태로 전환시키고(S538), 제2 DRM 어플리케이션을 위한 메모리 공간의 할당을 해제할 수 있다(S540). 이 때, 제2 DRM 어플리케이션의 세션 컨텍스트 정보 중 보안 정보는 삭제될 수 있으며, 처리가 완료되지 않은 작업 데이터가 있다면 이 또한 삭제될 수 있다. 그 후, 휴대용 저장장치(120)는 종료 응답 메시지를 호스트 디바이스(110)에게 전송할 수 있다(S542).Upon receiving the application termination message, the portable storage device 120 changes the operation state of the second DRM application to the idle state (S538), and can release the allocation of the memory space for the second DRM application (S540). At this time, the security information among the session context information of the second DRM application can be deleted, and if there is any operation data that has not been processed, it can also be deleted. Thereafter, the portable storage device 120 may transmit a termination response message to the host device 110 (S542).

한편, 대기 상태에 있는 제1 DRM 어플리케이션의 작업 처리가 필요한 경우 호스트 디바이스(110)는 제1 DRM 어플리케이션의 어플리케이션 식별자를 포함하는 어플리케이션 재개 메시지를 휴대용 저장장치(120)에게 전송할 수 있다(S544). On the other hand, when the first DRM application in the standby state is required to process work, the host device 110 may transmit an application resume message including the application identifier of the first DRM application to the portable storage device 120 (S544).

휴대용 저장장치(120)는 제1 DRM 어플리케이션의 동작 상태를 준비 상태로 전환시키고(S546), 제1 DRM 어플리케이션의 작업 처리를 위한 메모리 공간을 할당할 수 있다(S548). 이 때, 휴대용 저장장치(120)는 보안 저장 영역에 저장시켜두었던 제1 DRM 어플리케이션의 세션 컨텍스트 정보의 일부 또는 전부를 과정 S548에서 할당한 메모리 공간으로 이동시킬 수 있다. The portable storage device 120 may switch the operation state of the first DRM application to the ready state (S546) and allocate a memory space for the operation processing of the first DRM application (S548). At this time, the portable storage device 120 may move part or all of the session context information of the first DRM application stored in the secure storage area to the memory space allocated in step S548.

그 후, 휴대용 저장장치(120)는 호스트 디바이스(110)에게 재개 응답 메시지를 전송할 수 있다(S560). 그 후, 호스트 디바이스(110)와 휴대용 저장장치(120) 간에 제1 DRM 어플리케이션을 이용한 DRM 작업이 수행될 수 있다. 제1 DRM 어플리케이션의 보안 세션은 유지되고 있는 상태이므로, 호스트 디바이스(110)와 휴대용 저장장치(120) 간에 제1 DRM 어플리케이션의 보안 세션을 형성하기 위한 상호인증 작업은 수행되지 않아도 무방하다. 이와 같은 과정을 통해서 휴대용 저장장치(120)는 한정된 자원을 이용하여 복수의 DRM 어플리케이션을 효과적으로 구동시킬 수 있다. 물론, 복수의 DRM 어플리케이션이 동시에 준비 상태로 동작하는 실시예도 가능할 것이다. 다만, 휴대용 저장장치(120)의 자원은 극히 제한적인 경우가 많다는 것을 감안하면, 복수의 DRM 어플리케이션이 실행된 상태에서 작업 처리가 필요한 하나의 DRM 어플리케이션을 준비 상태로 두고, 나머지 DRM 어플리케이션들은 대기 상태로 두는 것이 바람직하다. Thereafter, the portable storage device 120 may transmit a resume response message to the host device 110 (S560). Thereafter, a DRM operation using the first DRM application can be performed between the host device 110 and the portable storage device 120. [ The mutual authentication operation for forming the secure session of the first DRM application between the host device 110 and the portable storage device 120 may not be performed since the first DRM application's security session is maintained. Through such a process, the portable storage device 120 can efficiently drive a plurality of DRM applications using limited resources. Of course, embodiments in which a plurality of DRM applications operate simultaneously in a ready state will be possible. However, considering that the resources of the portable storage device 120 are often limited, one DRM application requiring a job process in a state in which a plurality of DRM applications are executed is in a ready state, and the remaining DRM applications are in a standby state .

한편, 휴대용 저장장치(120)가 지원하는 복수의 DRM 어플리케이션 각각의 실행을 위해 필요한 메모리 공간의 크기는 DRM 어플리케이션의 종류에 따라서 달라질 수 있다. 따라서, 휴대용 저장장치(120)의 메인 메모리에서 데이터 버퍼용으로 사용될 수 있는 메모리 공간의 크기 역시 휴대용 저장장치(120)가 어떠한 DRM 어플리케이션을 실행시키느냐에 따라서 달라질 수 있다. 따라서, 휴대용 저장장치(120)와 호스트 디바이스(110)간에 DRM 작업이 수행될 때, 휴대용 저장장치(120)는 사용 가능한 데이터 버퍼의 크기를 호스트 디바이스(110)에게 알려줄 수 있으며, 호스트 디바이스(110)는 휴대용 저장장치(120)의 가용한 데이터 버퍼의 크기에 따라서 휴대용 저장장치(120)에게 전송할 DRM 작업용 메시지의 크기를 조절할 수 있다. Meanwhile, the size of the memory space required for executing each of the plurality of DRM applications supported by the portable storage device 120 may vary depending on the type of the DRM application. Accordingly, the size of the memory space that can be used for the data buffer in the main memory of the portable storage device 120 may also vary depending on which DRM application the portable storage device 120 executes. Thus, when a DRM operation is performed between the portable storage device 120 and the host device 110, the portable storage device 120 can inform the host device 110 of the available data buffer size, and the host device 110 May adjust the size of the message for the DRM work to be transmitted to the portable storage device 120 according to the size of the available data buffer of the portable storage device 120. [

도 6은 본 발명의 일 실시예에 따른 호스트 디바이스(110)가 휴대용 저장장치(120)의 정보를 획득하는 과정을 나타낸 흐름도이다. 6 is a flowchart illustrating a process of the host device 110 acquiring information of the portable storage device 120 according to an embodiment of the present invention.

먼저, 호스트 디바이스(110)가 휴대용 저장장치(120)와 연결된 후, 호스트 디바이스(110)의 요청에 따라서 특정 DRM 어플리케이션이 준비 상태에 있는 경우를 가정한다. 이는 준비 상태에 있는 DRM 어플리케이션을 통한 DRM 작업이 수행되지 않은 경우(예를 들어, 도 5의 과정 S518이 수행되기 전)를 의미할 수 있다. 따라서, 도 6의 과정은 준비 상태에 있는 DRM 어플리케이션을 위해서 호스트 디바이스(110)와 휴대용 저장장치(120) 간에 상호인증 작업이 수행되기 전일수도 있고, 상호인증 작업이 수행된 이후일 수도 있다. First, it is assumed that a specific DRM application is in a ready state according to a request of the host device 110 after the host device 110 is connected to the portable storage device 120. [ This may mean that the DRM operation through the DRM application in the ready state is not performed (for example, before the process S518 of FIG. 5 is performed). Accordingly, the process of FIG. 6 may be performed before the mutual authentication operation is performed between the host device 110 and the portable storage device 120 for the DRM application in the ready state, or after the mutual authentication operation is performed.

호스트 디바이스(110)는 휴대용 저장장치(120)에게 능력 정보 요청 메시지를 전송할 수 있다(S610).The host device 110 may send a capability information request message to the portable storage device 120 (S610).

호스트 디바이스(110)의 능력 정보 요청 메시지에 따라서 휴대용 저장장치(120)는 자신의 능력 정보를 포함하는 능력 정보 메시지를 호스트 디바이스(110)에게 전송할 수 있다(S620). 휴대용 저장장치(120)가 호스트 디바이스(110)에게 전송하는 능력 정보 메시지의 일 예를 표2에 나타내었다.In accordance with the capability information request message of the host device 110, the portable storage device 120 may transmit a capability information message including its capability information to the host device 110 (S620). An example of the capability information message that the portable storage device 120 transmits to the host device 110 is shown in Table 2.

필드field 정보Information 크기(byte)Size (byte) 1One 버전version 1One 22 예비(reserved)Reserved 33 33 지원되는 어플리케이션 리스트List of supported applications 22 44 지원되는 프로토콜 리스트List of supported protocols 22 55 현재 사용중인 프로토콜The protocol you are using 22 66 최대 보안 영역 크기Maximum security zone size 22 77 가용한 보안 영역 크기Size of available security zone 22 88 최대 버퍼 크기Maximum Buffer Size 22 99 사용할 버퍼 크기Buffer size to use 22 1010 최대 DRM 처리 시간Maximum DRM processing time 22 1111 1st 상태어(Status Word)1st Status Word (Status Word) 1One 1212 2nd 상태어(Status Word)2nd Status Word (Status Word) 1One 1313 예비(reserved)Reserved 233233

표2에 나타낸 능력 정보 메시지에서 필드1은 휴대용 저장장치(120)의 종류나 펌웨어 버전을 나타내는 정보이고, 필드2와 필드13은 추후 사용을 위해 예비된 필드를 나타낸다. 필드3은 휴대용 저장장치(120)가 지원하는 DRM 어플리케이션들의 리스트를 나타내며, 필드4는 휴대용 저장장치(120)의 전송계층에서 사용될 수 있는 프로토콜들(예를 들어, APDU, HTTP 등)의 리스트를 나타낸다. 또한, 필드5는 휴대용 저장장치(120)가 현재 사용중인 프로토콜을 나타내는데, 이는 필드4에 나타낸 프로토콜 리스트에 있는 프로토콜 중 하나이다. In the capability information message shown in Table 2, field 1 is information indicating the type or firmware version of the portable storage device 120, and fields 2 and 13 indicate fields reserved for future use. Field 3 shows a list of DRM applications supported by the portable storage device 120 and field 4 shows a list of protocols (e.g., APDU, HTTP, etc.) that can be used in the transport layer of the portable storage device 120 . Field 5 also indicates the protocol currently in use by the portable storage device 120, which is one of the protocols in the protocol list shown in field 4.

필드6은 휴대용 저장장치(110)가 권리객체, 세션 컨텍스트 정보 등과 같이 보안이 필요한 각종 데이터나 정보를 저장하는데 사용할 수 있는 보안 저장 영역의 최대 크기를 나타내고, 필드7은 현재 사용 가능한 보안 저장 영역의 크기를 나타낸다. 따라서 필드7에 설정되는 값은 필드6에 설정되는 값을 초과할 수 없다. Field 6 represents the maximum size of the secure storage area that the portable storage device 110 can use to store various kinds of data or information requiring security such as the rights object, session context information, etc., field 7 represents the maximum size of the secure storage area Size. Therefore, the value set in field 7 can not exceed the value set in field 6.

필드8은 휴대용 저장장치(120)가 사용할 수 있는 최대 버퍼 크기를 나타내는데, 이는 휴대용 저장장치(120)의 메인 메모리의 전체 크기에서 준비 상태에 있는 DRM 어플리케이션을 위해 할당한 메모리 공간의 크기를 제외한 값을 나타낼 수 있다. 필드9는 휴대용 저장장치(120)가 호스트 디바이스(110)로부터 전송되는 메시지를 처리하기 위한 버퍼 크기를 나타내는데, 필드8에 설정되는 최대 버퍼 크기를 초과할 수 없다. 필드9에 설정되는 버퍼 크기는 준비 상태에 있는 DRM 어플리케이션의 종류나 휴대용 저장장치(120)의 연산 능력 등 다양한 조건을 감안하여 실시예에 따라서 달라질 수 있다. Field 8 represents the maximum buffer size that the portable storage device 120 can use, which is the sum of the size of the main memory of the portable storage device 120 excluding the size of the memory space allocated for the DRM application in the ready state Lt; / RTI > Field 9 represents the size of the buffer for the portable storage device 120 to process the message sent from the host device 110, which can not exceed the maximum buffer size set in field 8. The size of the buffer set in the field 9 may vary according to the embodiment in consideration of various conditions such as the type of the DRM application in the ready state and the operation capacity of the portable storage device 120. [

휴대용 저장장치(120)의 능력 정보 중에서 '현재 사용중인 프로토콜'과 '사용할 버퍼 크기'는 호스트 디바이스(110)에 의해 재설정될 수 있다. Among the capability information of the portable storage device 120, 'currently used protocol' and 'buffer size to be used' can be reset by the host device 110.

다시 도 6을 참조하면, 휴대용 저장장치(120)로부터 능력 정보 메시지가 수신되면, 호스트 디바이스(110)는 능력 정보 메시지에서 휴대용 저장장치(120)의 능력 정보를 확인할 수 있다(S630). 과정 S630에서 호스트 디바이스(110)는 휴대용 저장장치(120)의 최대 버퍼 크기를 알 수 있으며, 최대 버퍼 크기에 따라서 DRM 작업을 수행하기 위해 휴대용 저장장치(120)에게 전송할 메시지의 크기를 결정할 수 있다(S640). 과정 S640에서 결정되는 메이지의 크기는 휴대용 저장장치(120)로부터 수신된 능력 정보 메시지의 필드8에 설정되는 최대 버퍼 크기를 초과하지 않으며, 필드9에 설정된 사용할 버퍼 크기와 동일할 수도 있고 이와 다를 수도 있다. 호스트 디바이스(110)는 휴대용 저장장치(120)에서 현재 가용한 버퍼의 크기를 최대한 활용할 수 있도록 최대 버퍼 크기와 동일한 값으로 메시지의 크기를 결정할 수도 있다.Referring again to FIG. 6, when the capability information message is received from the portable storage device 120, the host device 110 can confirm capability information of the portable storage device 120 in the capability information message (S630). In step S630, the host device 110 can determine the maximum buffer size of the portable storage device 120 and determine the size of a message to be transmitted to the portable storage device 120 in order to perform the DRM operation according to the maximum buffer size (S640). The size of the mage determined in the process S640 does not exceed the maximum buffer size set in the field 8 of the capability information message received from the portable storage device 120 and may be the same as the buffer size to be set in the field 9, have. The host device 110 may determine the message size to the same value as the maximum buffer size so as to utilize the size of the buffer currently available in the portable storage device 120. [

그 후, 호스트 디바이스(110)는 능력 정보 설정 메시지를 휴대용 저장장치(120)에게 전송할 수 있다(S650). 여기서 전송되는 능력 정보 설정 메시지는 과정 S640에서 결정한 메시지의 크기와 동일한 크기의 '사용할 버퍼 크기'에 대한 정보를 포함할 수 있다. Then, the host device 110 may transmit the capability information setting message to the portable storage device 120 (S650). The capability information setting message transmitted here may include information on a 'buffer size to be used' having the same size as the size of the message determined in step S640.

휴대용 저장장치(120)는 설정 정보 설정 메시지에 포함된 '사용할 버퍼 크기'를 사용하여 자신의 능력 정보를 갱신할 수 있다(S660). 이에 따라서, 휴대용 저장장치(120)는 앞으로 호스트 디바이스(110)로부터 전송될 메시지의 크기가 자신의 능력 정보 중 '사용할 버퍼 크기'와 동일할 것으로 예상할 수 있으며, 그에 대한 처리를 준비할 수 있다. The portable storage device 120 can update its capability information using the 'buffer size to be used' included in the setting information setting message (S660). Accordingly, the portable storage device 120 can anticipate that the size of the message to be transmitted from the host device 110 in the future is the same as the 'buffer size to be used' among its capability information, and can prepare for the processing thereof .

그 후, 호스트 디바이스(110)와 휴대용 저장장치(120) 간에 DRM 작업이 수행될 수 있는데, 이 때 호스트 디바이스(110)가 휴대용 저장장치(120)에게 전송하는 메시지의 크기는 과정 S640에서 결정된 것과 동일하다. Thereafter, a DRM operation may be performed between the host device 110 and the portable storage device 120. At this time, the size of the message transmitted from the host device 110 to the portable storage device 120 may be the same as that determined in step S640 same.

본 발명의 일 실시예에 따르면, 과정 S640에서 결정되는 메시지의 크기가 휴대용 저장장치(120)로부터 수신된 능력 정보에 포함된 '사용할 버퍼 크기'와 동일한 경우, 과정 S650 및 S660은 생략될 수도 있다. According to an embodiment of the present invention, when the size of the message determined in step S640 is equal to the 'buffer size to be used' included in the capability information received from the portable storage device 120, steps S650 and S660 may be omitted .

또한, 본 발명의 일 실시예에 따르면, 호스트 디바이스(110)는 휴대용 저장장치(120)로부터 수신된 능력 정보 중 프로토콜 리스트에 포함된 프로토콜 중 어느 하나를 전송 계층에서 사용할 프로토콜로 결정할 수도 있다. 이 경우, 호스트 디바이스(110)는 도 6의 과정 S650에서 휴대용 저장장치(120)에게 전송하는 능력 정보 설정 메시지에 새로이 사용할 프로토콜을 나타내는 정보를 포함시킬 수 있다. 따라서, 휴대용 저장장치(120)는 전송 계층을 위해 호스트 디바이스(110)가 결정한 프로토콜을 사용할 수 있다. 물론, 호스트 디바이스(110)가 휴대용 저장장치(120)로부터 수신한 능력 정보 중 현재 사용중인 프로토콜을 그대로 사용하려는 경우에는, 별도의 추가 작업이 필요치 않을 수 있다. Also, according to an embodiment of the present invention, the host device 110 may determine one of the protocols included in the protocol list among the capability information received from the portable storage device 120 to be used in the transport layer. In this case, the host device 110 may include information indicating a new protocol to be used in the capability information setting message transmitted to the portable storage device 120 in step S650 of FIG. Thus, the portable storage device 120 may use the protocol that the host device 110 has determined for the transport layer. Of course, if the host device 110 intends to use the currently used protocol among the capability information received from the portable storage device 120, a separate additional operation may not be required.

도 7은 본 발명의 일 실시예에 따른 휴대용 저장장치(110)를 나타낸 블록도이다. 휴대용 저장장치(120)는 인터페이스부(710), 암/복호화부(720), 저장부(730), 메인 메모리부(740), 어플리케이션 구동부(750), 및 제어부(760)를 포함할 수 있다. 7 is a block diagram illustrating a portable storage device 110 according to an embodiment of the present invention. The portable storage device 120 may include an interface 710, an arm / decoder 720, a storage 730, a main memory 740, an application driver 750, and a controller 760 .

인터페이스부(710)는 휴대용 저장장치(120)가 호스트 디바이스(110)와 연결될 수 있도록 한다. 휴대용 저장장치(120)가 호스트 디바이스(110)와 연결된다는 것은 전기적 또는 자기적으로 통신할 수 있는 상태에 있다는 것을 의미한다. 따라서, '연결'은 휴대용 저장장치(120)와 호스트 디바이스(110)가 통신을 위해 접촉되어 있는 상태를 의미할 수도 있고, 비접촉 상태에서 무선매체를 통해 서로 통신할 수 있는 상태에 있음을 의미할 수도 있다. 인터페이스부(710)를 통해 휴대용 저장장치(120)는 각종 데이터, 인스트럭션, 신호, 메시지 등을 호스트 디바이스(110)에게 송신하거나, 이들을 호스트 디바이스(110)로부터 수신할 수 있다. The interface unit 710 allows the portable storage device 120 to be connected to the host device 110. When the portable storage device 120 is connected to the host device 110, it means that the portable storage device 120 is in an electrically or magnetically communicable state. Accordingly, 'connection' may mean a state in which the portable storage device 120 and the host device 110 are in contact with each other for communication, or a state in which they can communicate with each other through a wireless medium in a non-contact state It is possible. The portable storage device 120 may transmit various data, instructions, signals, messages, and the like to the host device 110 through the interface unit 710 or may receive them from the host device 110.

암/복호화부(720)는 암호화 및 복호화 작업을 수행할 수 있다. 따라서, 암/복호화부(720)는 호스트 디바이스(110)로 전송될 데이터를 암호화하거나, 호스트 디바이스(110)로부터 암호화되어 수신된 데이터를 복호화 할 수 있다. 암/복호화부(720)는 공개키 암호화 방식뿐만 아니라 비밀키 암호화 방식 또한 수행할 수 있으며 두가지 방식을 모두 수행하기 위해 복수의 암/복호화부가 휴대용 저장장치(120)에 구비되는 것도 가능하다. 또한 암/복호화부(720)는 상호인증 과정시 필요한 난수를 생성할 수도 있다.The encryption / decryption unit 720 can perform encryption and decryption operations. Therefore, the encryption / decryption unit 720 can encrypt data to be transmitted to the host device 110, or decrypt the received data encrypted from the host device 110. [ The encryption / decryption unit 720 can perform not only the public key encryption but also the secret key encryption. Also, the encryption / decryption unit 720 can be provided in the portable storage device 120 to perform both of the encryption / decryption. Also, the encryption / decryption unit 720 may generate a random number necessary for the mutual authentication process.

저장부(730)는 컨텐츠 객체, 권리객체, 세션 컨텍스트 정보, 휴대용 저장장치(120)의 인증서, CRL, 및 DRM 작업을 수행하는데 필요한 데이터를 저장할 수 있다. 저장부(730)는 특정 DRM 어플리케이션 이외의 다른 어플리케이션이나 다른 장치의 접근으로부터 논리적 또는 물리적으로 보호되는 적어도 하나의 보안 저장 영역을 포함할 수 있다. 물론, 저장부(730)는 자유로운 접근이 허용되는 일반 저장 영역을 더 포함할 수도 있다. 저장부(730)는 플래쉬 메모리와 같은 비휘발성 메모리로 구현될 수 있다. The storage unit 730 may store a content object, a rights object, session context information, a certificate of the portable storage device 120, a CRL, and data necessary for performing a DRM operation. The storage 730 may include at least one secure storage area that is logically or physically protected from access by other applications or other devices than the specific DRM application. Of course, the storage unit 730 may further include a general storage area in which free access is allowed. The storage unit 730 may be implemented as a non-volatile memory such as a flash memory.

메인 메모리부(740)는 휴대용 저장장치(120)의 동작시 필요한 코드, 데이터, 정보들을 기록하거나 삭제할 수 있는 메모리로서, RAM을 일 예로 들 수 있다. 휴대용 저장장치(120)의 동작은 DRM 어플리케이션의 실행, 상호인증의 수행, DRM 작업이나 기타 다른 작업을 포함하는 개념이다. 메인 메모리부(740)는 RAM을 통해 구현될 수도 있다. The main memory unit 740 is a memory capable of recording or deleting codes, data, and information necessary for the operation of the portable storage device 120, and may be a RAM. The operation of the portable storage device 120 is a concept including execution of a DRM application, performing mutual authentication, DRM operation, or other operations. The main memory unit 740 may be implemented through a RAM.

어플리케이션 구동부(750)는 DRM 어플리케이션을 구동시킬 수 있다. DRM 어플리케이션의 구동을 위한 소프트웨어 코드들은 저장부(730)에 저장되어 있을 수 있으며, DRM 어플리케이션이 구동될 때 필요한 코드들은 메인 메모리부(740)로 로딩될 수 있다. 어플리케이션 구동부(750)에 의해 구동되는 DRM 어플리케이션은 호스트 디바이스(110)가 구동한 DRM 어플리케이션과 함께 권리객체의 소비를 통해 컨텐츠 객체가 재생될 수 있도록 하는 DRM 작업을 수행할 수 있다. The application driver 750 can drive the DRM application. The software codes for driving the DRM application may be stored in the storage unit 730 and the codes required when the DRM application is driven may be loaded into the main memory unit 740. [ The DRM application driven by the application driver 750 may perform a DRM operation to allow the DRM application driven by the host device 110 to play the content object through consumption of the rights object.

제어부(760)는 앞서 설명한 본 발명의 실시예에 따라서 휴대용 저장장치(120)가 동작하도록 필요한 작업을 수행하고, 휴대용 저장장치(120)를 구성하는 각 구성요소들을 제어할 수 있다. 예를 들어, 제어부(760)는 준비 상태의 DRM 어플리케이션을 위해 메모리 공간을 할당하고, 대기 상태로 전환되는 DRM 어플리케이션의 세션 컨텍스트 정보를 보안 저장 영역에 저장시킬 수 있다. 또한, 제어부(760)는 인터페이스부(710)를 통해서 호스트 디바이스(110)에게 휴대용 저장장치(120)의 성능 정보를 제공할 수 있다. 이밖에도 제어부(760)는 호스트 디바이스(110)에게 전송할 메시지를 생성하고, 호스트 디바이스(110)로부터 전송되는 메시지를 해석할 수 있다. The control unit 760 may perform operations necessary for the portable storage device 120 to operate according to the embodiment of the present invention described above and may control the respective components constituting the portable storage device 120. [ For example, the control unit 760 may allocate a memory space for the DRM application in the prepared state and store the session context information of the DRM application switched to the standby state in the secure storage area. In addition, the controller 760 may provide performance information of the portable storage device 120 to the host device 110 through the interface unit 710. In addition, the control unit 760 may generate a message to be transmitted to the host device 110, and may interpret the message transmitted from the host device 110.

휴대용 저장장치(120)를 구성하는 각 구성요소들의 보다 구체적인 기능 및 동작은 앞선 실시예들을 참조하면 보다 명확히 이해될 수 있을 것이다. More specific functions and operations of the components constituting the portable storage device 120 will be more clearly understood with reference to the above embodiments.

도 8은 본 발명의 일 실시예에 따른 호스트 디바이스(110)를 나타낸 블록도이다. 호스트 디바이스(110)는 인터페이스부(810), 암/복호화부(820), 저장부(830), 메인 메모리부(840), 어플리케이션 구동부(850), 제어부(860), 및 디스플레이부(870)를 포함할 수 있다. 8 is a block diagram illustrating a host device 110 in accordance with one embodiment of the present invention. The host device 110 includes an interface unit 810, an encryption / decryption unit 820, a storage unit 830, a main memory unit 840, an application driver 850, a control unit 860, and a display unit 870, . ≪ / RTI >

인터페이스부(810)는 호스트 디바이스(110)가 휴대용 저장장치(120)와 연결될 수 있도록 한다. 호스트 디바이스(110)가 휴대용 저장장치(120)와 연결된다는 것은 전기적 또는 자기적으로 통신할 수 있는 상태에 있다는 것을 의미한다. 따라서, '연결'은 호스트 디바이스(110)와 휴대용 저장장치(120)가 통신을 위해 접촉되어 있는 상태를 의미할 수도 있고, 비접촉 상태에서 무선매체를 통해 서로 통신할 수 있는 상태에 있음을 의미할 수도 있다. 인터페이스부(810)를 통해 호스트 디바이스(110)는 각종 데이터, 인스트럭션, 신호, 메시지 등을 휴대용 저장장치(120)에게 송신하거나, 이들을 휴대용 저장장치(120)로부터 수신할 수 있다. The interface unit 810 allows the host device 110 to be connected to the portable storage device 120. When the host device 110 is connected to the portable storage device 120, it means that the host device 110 is in an electrically or magnetically communicable state. Accordingly, 'connection' may mean a state in which the host device 110 and the portable storage device 120 are in contact with each other for communication, or a state in which they can communicate with each other through a wireless medium in a non-contact state It is possible. The host device 110 may transmit various data, instructions, signals, messages, and the like to the portable storage device 120 through the interface unit 810 or may receive them from the portable storage device 120.

암/복호화부(820)는 암호화 및 복호화 작업을 수행할 수 있다. 따라서, 암/복호화부(820)는 휴대용 저장장치(120)로 전송될 데이터를 암호화하거나, 휴대용 저장장치(120)로부터 암호화되어 수신된 데이터를 복호화 할 수 있다. 암/복호화부(820)는 공개키 암호화 방식뿐만 아니라 비밀키 암호화 방식 또한 수행할 수 있으며 두가지 방식을 모두 수행하기 위해 복수의 암/복호화부가 호스트 디바이스(110)에 구비되는 것도 가능하다. 또한 암/복호화부(820)는 상호인증 과정시 필요한 난수를 생성할 수도 있다. 또한, 암/복호화부(820)는 어플리케이션 구동부(850)가 실행시킨 DRM 어플리케이션의 요청에 따라서 휴대용 저장장치(120)에 저장된 권리객체를 이용하여 컨텐츠 객체를 복호화할 수 있다. 물론, 컨텐츠 객체의 복호화는 DRM 어플리케이션에 의해 수행될 수도 있다.The encryption / decryption unit 820 can perform encryption and decryption operations. Accordingly, the encryption / decryption unit 820 can encrypt the data to be transmitted to the portable storage device 120 or decrypt the received encrypted data from the portable storage device 120. [ The encryption / decryption unit 820 can perform not only public key encryption but also secret key encryption. A plurality of encryption / decryption units may be provided in the host device 110 to perform both of the encryption / decryption and encryption / decryption. Also, the encryption / decryption unit 820 may generate a random number necessary for the mutual authentication process. In addition, the encryption / decryption unit 820 can decrypt the content object using the rights object stored in the portable storage device 120 according to a request of the DRM application executed by the application driver 850. [ Of course, the decoding of the content object may also be performed by the DRM application.

저장부(830)는 컨텐츠 객체, 권리객체, 세션 컨텍스트 정보, 호스트 디바이스(110)의 인증서, CRL, 및 DRM 작업을 수행하는데 필요한 데이터를 저장할 수 있다. 저장부(830)는 특정 DRM 어플리케이션 이외의 다른 어플리케이션이나 다른 장치의 접근으로부터 논리적 또는 물리적으로 보호되는 적어도 하나의 보안 저장 영역을 포함할 수 있다. 물론, 저장부(830)는 자유로운 접근이 허용되는 일반 저장 영역을 더 포함할 수도 있다. 저장부(830)는 플래쉬 메모리와 같은 비휘발성 메모리로 구현될 수 있다. The storage unit 830 may store a content object, a rights object, session context information, a certificate of the host device 110, a CRL, and data necessary for performing a DRM operation. The storage unit 830 may include at least one secure storage area logically or physically protected from access by other applications or other devices than the specific DRM application. Of course, the storage unit 830 may further include a general storage area where free access is allowed. The storage unit 830 may be implemented as a nonvolatile memory such as a flash memory.

메인 메모리부(840)는 호스트 디바이스(110)의 동작시 필요한 코드, 데이터, 정보들을 기록하거나 삭제할 수 있는 메모리로서, RAM을 일 예로 들 수 있다. 호스트 디바이스(110)의 동작은 DRM 어플리케이션의 실행, 상호인증의 수행, DRM 작업이나 기타 다른 작업을 포함하는 개념이다. 메인 메모리부(840)는 RAM을 통해 구현될 수도 있다. The main memory unit 840 is a memory capable of recording or deleting code, data, and information necessary for the operation of the host device 110, for example, a RAM. The operation of the host device 110 is a concept including execution of a DRM application, execution of mutual authentication, DRM operation, and other operations. The main memory unit 840 may be implemented through a RAM.

어플리케이션 구동부(850)는 DRM 어플리케이션을 구동시킬 수 있다. DRM 어플리케이션의 구동을 위한 소프트웨어 코드들은 저장부(830)에 저장되어 있을 수 있으며, DRM 어플리케이션이 구동될 때 필요한 코드들은 메인 메모리부(840)로 로딩될 수 있다. 어플리케이션 구동부(850)에 의해 구동되는 DRM 어플리케이션은 휴대용 저장장치(120)가 구동한 DRM 어플리케이션과 함께 권리객체의 소비를 통해 컨텐츠 객체가 재생될 수 있도록 하는 DRM 작업을 수행할 수 있다. 컨텐츠 객체의 재생은 DRM 어플리케이션에 의해 수행될 수도 있지만, 컨텐츠 객체의 재생을 위해서 별도의 컨텐츠 재생부가 호스트 디바이스(110)에 구비될 수도 있다. The application driver 850 can drive the DRM application. The software codes for driving the DRM application may be stored in the storage unit 830 and the codes required when the DRM application is driven may be loaded into the main memory unit 840. [ The DRM application driven by the application driver 850 can perform the DRM operation to allow the content object to be played through the consumption of the rights object together with the DRM application driven by the portable storage device 120. [ The playback of the content object may be performed by the DRM application, but a separate content playback unit may be provided in the host device 110 for playback of the content object.

제어부(860)는 앞서 설명한 본 발명의 실시예에 따라서 호스트 디바이스(110)가 동작하도록 필요한 작업을 수행하고, 호스트 디바이스(110)를 구성하는 각 구성요소들을 제어할 수 있다. 호스트 디바이스(110)의 제어부(860)의 기능은 앞서 설명한 휴대용 저장장치(110)의 제어부(760)의 기능과 유사하게 이해될 수 있다. 다만, DRM 어플리케이션의 동작 상태 전환시 자원의 효율적 활용을 위해 수행되는 기능은 호스트 디바이스(110)의 제어부(860)가 갖추지 않아도 무방하다. The controller 860 may perform operations necessary for the host device 110 to operate in accordance with the embodiment of the present invention described above and may control the respective components constituting the host device 110. [ The function of the control unit 860 of the host device 110 can be understood similar to the function of the control unit 760 of the portable storage device 110 described above. However, the control unit 860 of the host device 110 does not have to be provided with a function for efficiently utilizing the resources when the operating state of the DRM application is changed.

디스플레이부(870)는 컨텐츠 객체의 재생 상태를 디스플레이할 수 있다. 디스플레이부(870)는 LCD나 유기EL과 같은 평판 디스플레이 장치를 이용하여 구현될 수 있다.The display unit 870 can display the playback state of the content object. The display unit 870 may be implemented using a flat panel display device such as an LCD or an organic EL.

호스트 디바이스(110)를 구성하는 각 구성요소들의 보다 구체적인 기능 및 동작은 앞선 실시예들을 참조하면 보다 명확히 이해될 수 있을 것이다. More specific functions and operations of each component constituting the host device 110 will be more clearly understood with reference to the above embodiments.

도 7의 휴대용 저장장치(120)와 도 8의 호스트 디바이스(110)를 구성하는 구성요소들은 모듈로 구현될 수 있다. 모듈은 소프트웨어 또는 Field Programmable Gate Array(FPGA)나 주문형 반도체(Application Specific Integrated Circuit, ASIC)와 같은 하드웨어 구성요소를 의미하며, 모듈은 어떤 역할들을 수행한다. 그렇지만 모듈은 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. 모듈은 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 실행시키도록 구성될 수도 있다. 따라서, 일 예로서 모듈은 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라버들, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들, 및 변수들을 포함한다. 구성요소들과 모듈들에서 제공되는 기능은 더 작은 수의 구성요소들 및 모듈들로 결합되거나 추가적인 구성요소들과 모듈들로 더 분리될 수 있다.The components constituting the portable storage device 120 of FIG. 7 and the host device 110 of FIG. 8 may be implemented as modules. A module is a software or hardware component such as a Field Programmable Gate Array (FPGA) or an Application Specific Integrated Circuit (ASIC), and the module performs certain roles. However, a module is not limited to software or hardware. A module may be configured to reside on an addressable storage medium and may be configured to execute one or more processors. Thus, by way of example, a module may include components such as software components, object-oriented software components, class components and task components, and processes, functions, attributes, procedures, Microcode, circuitry, data, databases, data structures, tables, arrays, and variables, as will be appreciated by those skilled in the art. The functionality provided by the components and modules may be combined into a smaller number of components and modules or further separated into additional components and modules.

이상과 첨부된 도면을 참조하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.While the present invention has been described in connection with what is presently considered to be practical exemplary embodiments, it is to be understood that the invention is not limited to the disclosed embodiments, but, on the contrary, It will be understood. It is therefore to be understood that the above-described embodiments are illustrative in all aspects and not restrictive.

도 1은 본 발명의 일 실시예에 따른 DRM 개념을 나타낸 도면이다.FIG. 1 is a diagram illustrating a DRM concept according to an embodiment of the present invention. Referring to FIG.

도 2는 본 발명의 일 실시예에 따른 호스트 디바이스(110)와 휴대용 저장 장치(120)의 개략적인 스택 구조를 나타낸 도면이다.FIG. 2 is a diagram illustrating a schematic stack structure of a host device 110 and a portable storage device 120 according to an embodiment of the present invention.

도 3은 본 발명의 일 실시예에 따른 상호인증 과정을 나타낸 흐름도이다.3 is a flowchart illustrating a mutual authentication process according to an exemplary embodiment of the present invention.

도 4는 본 발명의 일 실시예에 따른 DRM 어플리케이션의 동작 상태를 나타낸 도면이다.4 is a diagram illustrating an operation state of a DRM application according to an embodiment of the present invention.

도 5는 본 발명의 일 실시예에 따른 DRM 어플리케이션 구동 과정을 나타낸 흐름도이다.5 is a flowchart illustrating a DRM application process according to an embodiment of the present invention.

도 6은 본 발명의 일 실시예에 따른 호스트 디바이스가 휴대용 저장장치의 정보를 획득하는 과정을 나타낸 흐름도이다.6 is a flowchart illustrating a process in which a host device acquires information of a portable storage device according to an embodiment of the present invention.

도 7은 본 발명의 일 실시예에 따른 휴대용 저장장치를 나타낸 블록도이다.7 is a block diagram illustrating a portable storage device according to an embodiment of the present invention.

도 8은 본 발명의 일 실시예에 따른 호스트 디바이스를 나타낸 블록도이다.8 is a block diagram illustrating a host device according to one embodiment of the present invention.

<도면의 주요 부분에 관한 부호의 설명>DESCRIPTION OF THE REFERENCE NUMERALS

710 : 인터페이스부 720 : 암/복호화부710: interface unit 720: arm /

730 : 저장부 740 : 메인 메모리부730: storage unit 740: main memory unit

750 : 어플리케이션 구동부 760 : 제어부750: Application driver 760:

Claims (16)

호스트 디바이스와 연결된 휴대용 저장장치의 자원 관리 방법에 있어서,1. A resource management method for a portable storage device connected to a host device, 휴지 상태의 제1 DRM 어플리케이션의 작업 처리가 필요한 경우, 상기 제1 DRM 어플리케이션을 준비 상태로 전환하는 단계; 및Switching the first DRM application to a ready state when a work process of a first DRM application in a dormant state is required; And 휴지 상태의 제2 DRM 어플리케이션의 작업 처리가 필요한 경우, 상기 제1 DRM 어플리케이션을 대기 상태로 전환하고, 상기 제2 DRM 어플리케이션을 준비 상태로 전환하는 단계를 포함하되,Switching the first DRM application to a standby state and switching the second DRM application to a ready state when work processing of a dormant second DRM application is required, 상기 제1 DRM 어플리케이션을 준비 상태로 전환하는 단계는, 메인 메모리에서 상기 제1 DRM 어플리케이션의 작업 처리를 위한 제1 메모리 공간을 할당하는 단계와, 상기 제1 DRM 어플리케이션의 제1 보안 세션을 형성하는 단계와, 상기 제1 보안 세션을 통해 상기 호스트 디바이스와 메시지를 송수신하고, 상기 제1 메모리 공간을 이용하여 상기 제1 보안 세션을 통해 송수신되는 메시지에 따라서 상기 제1 DRM 어플리케이션의 DRM 작업 수행하는 단계를 포함하는 휴대용 저장장치의 자원 관리 방법.Wherein the step of switching the first DRM application to a ready state comprises the steps of: allocating a first memory space for work processing of the first DRM application in the main memory; Transmitting and receiving a message to and from the host device through the first security session and performing a DRM operation of the first DRM application according to a message transmitted and received through the first security session using the first memory space And storing the resource information in the portable storage device. 삭제delete 제 1항에 있어서, 상기 제2 DRM 어플리케이션을 준비 상태로 전환하는 단계는,The method of claim 1, wherein the step of switching the second DRM application to a ready state comprises: 상기 제1 보안 세션을 유지하는 보안 정보 및 상기 제1 DRM 어플리케이션의 DRM 작업 결과를 제1 보안 저장 영역에 저장하는 단계;Storing security information for maintaining the first security session and a DRM operation result of the first DRM application in a first secure storage area; 상기 제1 메모리 공간의 할당을 해제하는 단계;Releasing the allocation of the first memory space; 상기 메인 메모리에서 상기 제2 DRM 어플리케이션의 작업 처리를 위한 제2 메모리 공간을 할당하는 단계;Allocating a second memory space for job processing of the second DRM application in the main memory; 상기 제2 DRM 어플리케이션의 제2 보안 세션을 형성하는 단계; 및Forming a second secure session of the second DRM application; And 상기 제2 보안 세션을 통해 상기 호스트 디바이스와 메시지를 송수신하고, 상기 제2 메모리 공간을 이용하여 상기 제2 보안 세션을 통해 송수신되는 메시지에 따라서 상기 제2 DRM 어플리케이션의 DRM 작업 수행하는 단계를 포함하는, 휴대용 저장장치의 자원 관리 방법. Transmitting and receiving a message to and from the host device through the second security session and performing a DRM operation of the second DRM application according to a message transmitted and received through the second security session using the second memory space, , A method for managing resources of a portable storage device. 제 1항에 있어서,The method according to claim 1, 상기 제2 DRM 어플리케이션을 준비 상태로 전환하는 단계 이후에,After the step of switching the second DRM application to the ready state, 상기 대기 상태의 제1 DRM 어플리케이션의 작업 처리가 필요한 경우, 상기 준비 상태의 제2 DRM 어플리케이션을 대기 상태로 전환하고, 상기 대기 상태의 제1 DRM 어플리케이션을 준비 상태로 전환하는 단계를 더 포함하는, 휴대용 저장장치의 자원 관리 방법.Further comprising switching the second DRM application in the standby state to a standby state and switching the first DRM application in the standby state to a ready state when a work process of the first DRM application in the standby state is required, A method for managing resources of a portable storage device. 제 4항에 있어서, 상기 대기 상태의 제1 DRM 어플리케이션을 준비상태로 전환하는 단계는,The method of claim 4, wherein the switching of the first DRM application in the standby state to the ready state comprises: 상기 제2 DRM 어플리케이션의 보안 세션을 유지하는 보안 정보 및 상기 제2 DRM 어플리케이션의 DRM 작업 결과를 보안 저장 영역에 저장하는 단계;Storing security information for maintaining a security session of the second DRM application and a DRM operation result of the second DRM application in a secure storage area; 상기 제2 DRM 어플리케이션에 대한 제2 메모리 공간의 할당을 해제하고, 상기 제1 DRM 어플리케이션의 작업 처리를 위한 제1 메모리 공간을 할당하는 단계; 및Releasing the allocation of the second memory space to the second DRM application and allocating a first memory space for the task processing of the first DRM application; And 상기 제1 DRM 어플리케이션의 보안 세션을 유지하는 보안 정보 및 상기 제1 DRM 어플리케이션의 이전 DRM 작업 결과를 상기 보안 저장 영역에서 상기 제1 메모리 공간으로 이동시키는 단계를 포함하는, 휴대용 저장장치의 자원 관리 방법.And transferring security information for maintaining a security session of the first DRM application and a result of a previous DRM operation of the first DRM application from the secure storage area to the first memory space, . 삭제delete 삭제delete 적어도 하나의 DRM 어플리케이션을 실행시키는 어플리케이션 구동부; 및An application driver for executing at least one DRM application; And 상기 실행되는 DRM 어플리케이션의 동작 상태에 따라서, 상기 DRM 어플리케이션의 작업 처리를 위한 메모리 공간을 할당하거나 상기 DRM 어플리케이션의 세션 컨텍스트 정보를 보안 저장 영역에 저장시키는 제어부를 포함하되,And a controller for allocating a memory space for a task process of the DRM application or storing session context information of the DRM application in a secure storage area according to an operation state of the DRM application to be executed, 상기 제어부는 상기 DRM 어플리케이션이 휴지 상태에서 준비 상태로 전환되는 경우, 메인 메모리에서 상기 DRM 어플리케이션의 작업 처리를 위한 상기 메모리 공간을 할당하고, 상기 DRM 어플리케이션의 보안 세션을 형성하고, 상기 보안 세션을 통해 호스트 디바이스와 메시지를 송수신하고, 상기 메모리 공간을 이용하여 상기 보안 세션을 통해 송수신되는 메시지에 따라서 상기 DRM 어플리케이션의 DRM 작업 수행하는 휴대용 저장장치.Wherein the controller allocates the memory space for processing the DRM application in the main memory when the DRM application is switched from the dormant state to the ready state, forms a security session of the DRM application, And transmits and receives a message to and from the host device, and performs a DRM operation of the DRM application according to a message transmitted and received through the secure session using the memory space. 삭제delete 삭제delete 제 8항에 있어서, 9. The method of claim 8, 상기 제어부는 상기 DRM 어플리케이션의 동작 상태가 상기 준비 상태에서 작업 처리를 수행하지 않는 대기 상태로 전환되는 경우 상기 DRM 어플리케이션의 세션 컨텍스트 정보를 상기 보안 저장 영역에 저장시키고 상기 메모리 공간의 할당을 해제하는, 휴대용 저장장치.Wherein the control unit stores session context information of the DRM application in the secure storage area and releases the allocation of the memory space when the operation state of the DRM application is switched from the ready state to the standby state in which no job processing is performed, Portable storage device. 제 11항에 있어서, 12. The method of claim 11, 상기 제어부는 상기 DRM 어플리케이션의 동작 상태가 상기 대기 상태에서 상기 준비 상태로 전환되는 경우 상기 DRM 어플리케이션의 작업 처리를 위한 메모리 공간을 재할당하고, 상기 보안 저장 영역에 저장된 상기 세션 컨텍스트 정보를 상기 재할당된 메모리 공간으로 이동시키는, 휴대용 저장장치. Wherein the control unit reassigns a memory space for a task process of the DRM application when the operation state of the DRM application is switched from the standby state to the ready state, and transmits the session context information stored in the secure storage region to the reallocation To a memory space in which the memory is located. 제 8항에 있어서, 9. The method of claim 8, 상기 세션 컨텍스트 정보는 상기 DRM 어플리케이션의 작업 처리 결과 및 상기 DRM 어플리케이션의 보안 세션을 유지하는 보안 정보 중 적어도 하나를 포함하는, 휴대용 저장장치.Wherein the session context information includes at least one of a job processing result of the DRM application and security information for maintaining a secure session of the DRM application. 삭제delete 삭제delete 삭제delete
KR1020080055397A 2007-08-17 2008-06-12 Portable storage device and method for managing resource of the portable storage device KR101555241B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US12/192,543 US8578503B2 (en) 2007-08-17 2008-08-15 Portable storage device and method of managing resource of the portable storage device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US95645607P 2007-08-17 2007-08-17
US60/956,456 2007-08-17

Publications (2)

Publication Number Publication Date
KR20090018566A KR20090018566A (en) 2009-02-20
KR101555241B1 true KR101555241B1 (en) 2015-10-07

Family

ID=40686819

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080055397A KR101555241B1 (en) 2007-08-17 2008-06-12 Portable storage device and method for managing resource of the portable storage device

Country Status (1)

Country Link
KR (1) KR101555241B1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100664924B1 (en) * 2004-10-04 2007-01-04 삼성전자주식회사 Portable storage, host device and method for communication between them

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100664924B1 (en) * 2004-10-04 2007-01-04 삼성전자주식회사 Portable storage, host device and method for communication between them

Also Published As

Publication number Publication date
KR20090018566A (en) 2009-02-20

Similar Documents

Publication Publication Date Title
US8181266B2 (en) Method for moving a rights object between devices and a method and device for using a content object based on the moving method and device
EP1754167B1 (en) Method and apparatus for transmitting rights object information between device and portable storage
AU2005223193B2 (en) Digital rights management structure, portable storage device, and contents management method using the portable storage device
JP4690389B2 (en) Digital copyright management method and apparatus using certificate disposal list
KR100608605B1 (en) Method and apparatus for digital rights management
AU2005248693B2 (en) Apparatus and method for operating plural applications between portable storage device and digital device
KR100755707B1 (en) Host device, portable storage, and method for updating meta information of rights object stored in the portable storage
AU2005225950B2 (en) Portable storage device and method of managing files in the portable storage device
US20060156413A1 (en) Host device, portable storage device, and method for updating meta information regarding right objects stored in portable storage device
US8578503B2 (en) Portable storage device and method of managing resource of the portable storage device
KR101555241B1 (en) Portable storage device and method for managing resource of the portable storage device
KR100664924B1 (en) Portable storage, host device and method for communication between them

Legal Events

Date Code Title Description
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: 20180831

Year of fee payment: 4