Apparatus and method for implementing digital rights management systems in low-efficiency storage device

A host device and a method of implementing Digital Rights Management (DRM) systems in a low-efficiency storage device are provided. The host device includes a plurality of DRM systems and a DRM system-shared interface module. The DRM systems provide pieces of DRM-related data and data identifiers (IDs) which identify the pieces of data. The DRM system-shared interface module adds DRM system IDs, which are used to identify the DRM systems, to the pieces of data and the data IDs, and provides results, which are obtained by adding the DRM system IDs, to a low-efficiency storage device.

CROSS-REFERENCE TO RELATED APPLICATION

This application claims priority from Korean Patent Application No. 10-2005-0114983 filed on Nov. 29, 2005 in the Korean Intellectual Property Office, the disclosure of which is incorporated herein by reference in its entirety.

BACKGROUND OF THE INVENTION

1. Field of the Invention

Methods and apparatuses consistent with the present invention relate to digital rights management (DRM) and, more particularly, to implementing a plurality of DRM systems in a low-efficiency storage device.

2. Description of the Related Art

Recently, research into DRM has been actively conducted, and commercial services to which DRM is applied have been introduced or are being introduced. DRM is a technological concept for protecting digital content, which is easy to illegally copy and distribute.

Although efforts to protect digital content have been made in the past, these efforts are however based on the prevention of illegal access to the digital content.

For example, access to the digital content is permitted only to users who have paid for it, and users who have not paid for it cannot access the digital content. However, due to the characteristics of digital data, the digital content can be easily reused, processed, duplicated, and distributed.

Accordingly, when the users, who have paid for and gained access to the digital content perform illegal duplication or distribution of the digital content, users who have not paid for the digital content can also use it.

In order to solve the problem, DRM allows digital content to be encrypted and distributed, and requires a license, called a Rights Object (RO), to use the encrypted digital content.

The concept of a related art DRM environment is described in detail with reference toFIG. 1below.

Referring toFIG. 1, a device110can acquire digital content from a content provider120. In this case, the digital content supplied by the content provider120is encrypted, and an RO is necessary to use the encrypted digital content.

The device110can acquire the RO, in which a right to use encrypted digital content is included, from an RO issuance authority130. For this purpose, a user must make a predetermined payment for the digital content. The RO includes a key which enables the decryption of the encrypted digital content.

The RO issuance authority130reports the details of the issuance of the RO to the content provider120. The RO issuance authority130and the content provider120may be the same entity according to the circumstances.

The device110, which has acquired the RO, can use the decrypted digital content by consuming the RO.

The encrypted digital content may be uninterruptedly duplicated and distributed by another device (not shown). However, information about restrictions, such as the number of times of use or a period during which the encrypted digital content can be used, and the allowable number of duplications of the RO, are included in the RO, so that the RO is subjected to restrictions in the reuse or the duplication thereof, unlike the encrypted digital content. According to such DRM technology, the digital content can be effectively protected.

Furthermore, the device110may manage the encrypted digital content or the RO through a specific embedded system (hereinafter referred to as a ‘high-efficiency storage device’), such as a Personal Computer (PC) or a mobile phone, in which multiple processes are supported in order to make it convenient to store and distribute the RO, which is shown inFIG. 2.

Referring toFIG. 2, a host device210corresponds to the device110shown inFIG. 1, and a high-efficiency storage device250provides a function of managing the digital content or the RO possessed by the host device210.

In this case, the host device210includes a plurality of DRM systems, such as a Microsoft DRM system and an Open Mobile Alliance (OMA) DRM system. The DRM systems may simultaneously operate through multi-tasking. Hereinafter, a plurality of DRM systems having different DRM technologies are indicated by ‘DRM system A,’ ‘DRM system B,’ and the like to identify the respective DRM technologies.

Furthermore, the high-efficiency storage device250may perform some of the functions of the plurality of DRM systems included in the host device210, such as functions to store DRM-related data, an RO, or digital content. In this case, multiple processes or multi-threaded processes are performed, as in the host device210, in order to share the functions of the plurality of DRM systems that operate through multi-tasking in the host device210.

The DRM system A of the host device210assigns process A to the high-efficiency storage device250to store and manage data about the DRM system A in the high-efficiency storage device250, and communicates with the high-efficiency storage device250. At the same time, the DRM system B assigns process B to the high-efficiency storage device250to store and manage data about the DRM system B in the high-efficiency storage device250in the same manner, and communicates with the high-efficiency storage device250. In the same manner, N processes, which correspond to N DRM systems that simultaneously operate in the host device210, are assigned to the high-efficiency storage device250, and are simultaneously executed.

The high-efficiency storage device250may include the software architecture shown inFIG. 3, so that the N processes can be assigned.

Referring toFIG. 3, the high-efficiency storage device250includes a process management layer, which enables it to perform scheduling on respective processes (process A, process B, . . . ). In this case, the term ‘scheduling’ refers to planning and implementing a policy for assigning processes to a Central Processing Unit (CPU) or various processors in order to process tasks.

That is, the processes may be executed by using a preemptive technique or a non-preemptive technique, and the process management layer may perform inter-process scheduling using the preemptive technique or the non-preemptive technique. In this case, the term ‘preemptive technique’ refers to a technique in which, when a single process occupies the CPU, another process can take the CPU, and the term ‘non-preemptive technique’ refers to a technique in which, when a process occupies the CPU, another process cannot take the CPU until the processing of the initial process is finished.

Recently, in order to conveniently keep and distribute the encrypted digital content or the RO, the realization of a technology that allows the digital content or the RO to be managed through a mobile storage device, such as a memory stick or a Multi-Media Card (MMC), has been attempted.

However, in the mobile storage device, the operational capability thereof is very low compared with that of the high-efficiency storage device. Only a very small amount of resources are generally assured, and a minimum amount of resources are provided for economic reasons, such as price. Accordingly, the method of installing the process management layer shown inFIG. 3in the mobile storage device is not a desired method to support the plurality of DRM systems shown inFIG. 2.

Accordingly, even for a low-efficiency mobile storage device, a method of efficiently implementing a plurality of DRM systems is required.

SUMMARY OF THE INVENTION

The present invention provides an apparatus and method for implementing DRM systems in a low-efficiency storage device, which allows a host device which has an environment in which a plurality of DRM systems operate simultaneously, to be connected with a mobile storage device which lacks a multi-process environment, and to store data (for example, digital content or an RO), which is generated and possessed by the respective DRM systems, in the mobile storage device.

The present invention also provides a method that allows the mobile storage device to accept requests from the plurality of DRM systems which operate in a multi-processing manner.

According to an aspect of the present invention, there is provided a host device including a plurality of DRM systems which provide pieces of DRM-related data and data Identifiers (IDs) for identifying the pieces of data; and a DRM system-shared interface module adding DRM system IDs, which are used to identify the DRM systems, to the pieces of data and the data IDs, and provides results, which are obtained by adding the DRM system IDs, to a low-efficiency storage device.

According to another aspect of the present invention, there is provided a host device including a plurality of DRM systems; and a DRM system-shared interface module which provides a DRM system ID, which is used to identify an arbitrary one of the DRM systems, data, which is related to the arbitrary DRM system identified by the DRM system ID, and a data ID, which is used to identify the data, to a low-efficiency storage device.

According to another aspect of the present invention, there is provided a host device, including a plurality of DRM systems; and a DRM system-shared interface module which provides a DRM system ID, which is used to identify an arbitrary one of the DRM systems, and data, which is related to the DRM system identified by the DRM system ID, to the low-efficiency storage device.

According to another aspect of the present invention, there is provided a host device including a plurality of DRM systems which provide data IDs, which are used to identify pieces of DRM-related data; and a DRM system-shared interface module which adds DRM system IDs, which are used to identify the DRM systems, to the data IDs, provides results, which are obtained by adding the DRM system IDs, to a low-efficiency storage device, and receives pieces of DRM-related data, which correspond to the DRM system IDs and the data IDs, from the low-efficiency storage device.

According to another aspect of the present invention, there is provided a host device including a plurality of DRM systems; and a DRM system-shared interface module which provides a DRM system ID, which is used to identify an arbitrary one of the DRM systems, and a data ID, which is used to identify data related to the DRM system identified by the DRM system ID, to a low-efficiency storage device, and receiving the DRM-related data, which corresponds to the DRM system ID and the data ID, from the low-efficiency storage device.

According to another aspect of the present invention, there is provided a host device including a plurality of DRM systems; and a DRM system-shared interface module which provides a DRM system ID, which is used to identify an arbitrary one of the DRM systems, to the low-efficiency storage device, and receives DRM-related data, which corresponds to the DRM system ID, from a low-efficiency storage device.

According to another aspect of the present invention, there is provided a method of implementing a plurality of DRM systems, the method including one of the DRM systems providing DRM-related data and a data ID, which is used to identify the data; adding a DRM system ID, which is used to identify the DRM system, to the data and the data ID; and transferring the data, the data ID, and the DRM system ID to a low-efficiency storage device.

According to another aspect of the present invention, there is provided a method of implementing a plurality of DRM systems, the method including providing a DRM system ID, which is used to identify an arbitrary one of the DRM systems, data, which is related to the arbitrary DRM system identified by the DRM system ID, and a data ID, which is used to identify the data, to a low-efficiency storage device; and storing the provided DRM system ID, data and data ID.

According to another aspect of the present invention, there is provided a method of implementing a plurality of DRM systems, the method including providing a DRM system ID, which is used to identify an arbitrary one of the DRM systems, and data, which is related to the arbitrary DRM system identified by the DRM system ID, to a low-efficiency storage device; and storing the provided DRM system ID and data.

According to another aspect of the present invention, there is provided a method of implementing a plurality of DRM systems, the method including providing a data ID used to identify DRM-related data; adding a DRM system ID, which is used to identify an arbitrary DRM system, to the data ID, and providing results, which are obtained by adding the DRM systems ID, to a low-efficiency storage device; and receiving the DRM-related data, which corresponds to the DRM system ID and the data ID, from the low-efficiency storage device.

According to another aspect of the present invention, there is provided a method of implementing a plurality of DRM systems, the method including providing a DRM system ID, which is used to identify an arbitrary one of the DRM systems, and a data ID, which is used to identify data related to the arbitrary DRM system identified by the DRM system ID, to a low-efficiency storage device; and receiving the DRM-related data, which corresponds to the DRM system ID and the data ID, from the low-efficiency storage device.

According to another aspect of the present invention, there is provided a method of implementing a plurality of DRM systems, the method including providing a DRM system ID, which is used to identify an arbitrary one of the DRM systems, to a low-efficiency storage device; and receiving DRM-related data, which corresponds to the DRM system ID, from the low-efficiency storage device.

DESCRIPTION OF EXEMPLARY EMBODIMENTS

The advantages and characteristics of the present invention, and the method of achieving them, will be apparent with reference to the exemplary embodiments described in detail later in conjunction with the accompanying drawings. However, the present invention is not limited to the exemplary embodiments disclosed below, but may be implemented in various ways. Furthermore, the exemplary embodiments are provided to complete the disclosure of the present invention, and to fully notify those skilled in the art of the scope of the present invention. The exemplary embodiments of the present invention are defined only by the appended claims.

The present invention is described hereinafter with reference to flowchart illustrations of user interfaces, methods, and computer program products according to the exemplary embodiments of the invention. It will be understood that each block of the flowchart illustrations, and combinations of blocks in the flowchart illustrations, can be implemented using computer program instructions. These computer program instructions can be provided to a processor of a general purpose computer, a special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart block or blocks.

Further, each block of the flowchart illustrations may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that in some alternative implementations, the functions noted in the blocks may occur out of this order. For example, two blocks shown in succession may in fact be executed substantially concurrently, or the blocks may sometimes be executed in reverse order, depending upon the functionality involved.

Hereinafter, a mobile storage device for which multi-processing is not supported is referred to as a ‘low-efficiency storage device.’

FIG. 4is a diagram showing a DRM environment according to an exemplary embodiment of the present invention.

A user can acquire a content object from a content provider440through a host device410as in the related art manner. In this case, a content object is encrypted digital content, and the type of digital content is not limited to a moving image, a still image, audio, a game, or text.

Furthermore, the user can pay a predetermined charge and purchase an RO, which enables playback of the content object, from an RO issuance authority430, and can store the purchased RO in the host device410. In this case, the RO is a kind of license with which the right to use the content object is granted, and may include a content encryption or decryption key and permission or restriction information.

In this case, the permission information is information that indicates a method of playing back the content object and a method of duplicating the RO. Examples of the playback method may include ‘play,’ ‘display,’ ‘execute,’ and ‘print.’ The term ‘play’ refers to the right to provide a content object in audio or video form. For example, in the case where the content object relates to a moving image or music, ‘play’ may be set as permission information for the RO that will be used in order to play back the content object. Furthermore, the term ‘display’ refers to the right to provide the content object through a visual display device, and the term ‘print’ refers to the right to generate a hard copy of the content object. For example, in the case where the content object relates to a still image, at least one of ‘display’ and ‘print’ may be set as permission information for the RO which will be used in order to play back the content object. Furthermore, the term ‘execute’ refers to the right to use a game or some other type of content object such as an application program. For example, in the case where the content object is a java game, ‘execute’ may be set as the permission information for the RO that will be used in order to play back the content object.

Meanwhile, the duplication method may include, by way of example, ‘copy’ and ‘move’. The terms ‘copy’ and ‘move’ refer to the right to store the RO, which is stored in the host device410, in other devices. In this case, the low-efficiency storage device420may be one of the other devices.

Meanwhile, the restriction information is information about limits within which the content object can be played back, and one or more pieces of restriction information may be set for the permission information. The restriction information may include, by way of example, information about count restriction, date and time restriction, period restriction, and accumulated time restriction. In this case, the count restriction restricts the number of times that the content object can be played back. The date and time restriction restricts the date on which, and the time at which, the content object can be played back, and may include at least one of a start element and an end element. The period restriction restricts the period from the time at which the content object is first played back by using the RO to the time at which the content object will be played back in the future by using the RO. The accumulated time restriction restricts the total sum of time periods during which the content object can be played back by using the RO regardless of date.

Furthermore, the RO issuance authority430may notify the content provider440of the details of the issuance of the RO, and the RO issuance authority430and the content provider440may be the same entity.

The RO, which has been stored in the host device410, may be stored in the low-efficiency storage device420. In this case, the low-efficiency storage device420may have one or more ROs stored therein at the time of manufacture.

When the low-efficiency storage device420stores the RO, the host device410is connected with the low-efficiency storage device420and then uses the RO stored in the low-efficiency storage device420, so that it can play back the content object.

FIG. 5is a diagram showing the relationship between a host device and a low-efficiency storage device for the management of DRM systems, and shows the situation in which the host device410stores DRM-related data in the low-efficiency storage device420or reads the DRM-related data from the low-efficiency storage device420. In this case, the term ‘DRM-related data’ refers to data about the content object or the RO.

Referring toFIG. 5, the host device410includes a plurality of DRM systems414and the DRM system-shared interface module412. The low-efficiency storage device420is supported by only a single process, so that the process management layer shown inFIG. 3is not required.

Referring toFIG. 5, the DRM system-shared interface module412of the host device410transfers DRM-related data for an arbitrary DRM system, which exists in the host device410, to the low-efficiency storage device420, or functions to add identification (ID) information about an arbitrary DRM system (hereinafter referred to as a ‘DRM system ID’). Furthermore, the DRM system-shared interface module412functions to receive ID information about the DRM-related data (hereinafter referred to as a ‘data ID’) from each of the DRM systems and transfers the data ID to the low-efficiency storage device420, or to transfer the data, which is stored in the low-efficiency storage device420, to the corresponding DRM system of the host device410.

In this case, although the DRM system-shared interface module412is illustrated inFIG. 5as being installed in the host device410in software or hardware form, the exemplary embodiment of the present invention is not limited thereto. That is, the DRM system-shared interface module412may be a separate single product provided with connectors that can be connected to the host device410and the low-efficiency storage device420.

Meanwhile, the low-efficiency storage device420communicates with the DRM system-shared interface module412regardless of the number of DRM systems that simultaneously operate in the host device410, so that the process executed in the low-efficiency storage device420may only be a single process that communicates with the DRM system-shared interface module412.

FIG. 6is a diagram illustrating a method of storing data in the low-efficiency storage device according to an exemplary embodiment of the present invention, and shows an operation of the DRM system A of the host device410which stores the DRM-related data in the low-efficiency storage device420using a communication protocol between the DRM system-shared interface module412of the host device410and the process of the low-efficiency storage device420, the operation of which is described in more detail in reference to the flowchart shown inFIG. 7below.

First, the DRM system A transfers data and data ID, which are to be stored, to the DRM system-shared interface module412at operation S710. In this case, the data ID may include ID information about the content object, or ID information about the RO.

The DRM system-shared interface module412adds a DRM system ID for identifying the DRM system A at operation S720, and transfers the data, the data ID and the DRM system ID to the process of the low-efficiency storage device420at operation S730. In this case, the DRM system ID may be stored in an arbitrary storage region (not shown) that exists in the host device410, or may be managed by the DRM system-shared interface module412.

The process of the low-efficiency storage device420stores the data, the data ID, and the DRM system ID, which are received from the DRM system-shared interface module412, in the storage region (not shown) of the low-efficiency storage device420at operation S740.

Although the host device410is illustrated inFIGS. 6 and 7as transmitting the DRM system ID, the data ID and the data to the low-efficiency storage device420, the exemplary embodiment of the present invention is not limited thereto. The host device410may allow the DRM system ID and data, provided by a corresponding DRM system, to be transferred to the low-efficiency storage device420and be stored therein. That is, in the case where it is not necessary to identify DRM-related data provided by a single DRM system, the data ID may not be transmitted.

FIG. 8is a diagram illustrating a method of reading data from the low-efficiency storage device according to an exemplary embodiment of the present invention, and shows an operation of the DRM system B of the host device410fetching the DRM-related data, which is already stored in the low-efficiency storage device420, to the host device410using a communication protocol between the DRM system-shared interface module412of the host device410and the process of the low-efficiency storage device420, the operation of which is described in more detail with reference to the flowchart shown inFIG. 9below.

The DRM system B of the host device410transfers the data ID of data which will be fetched from the low-efficiency storage device420, to the DRM system-shared interface module412at operation S910. Thereafter, the DRM system-shared interface module412transfers the transferred data ID and the DRM system ID which identifies the DRM system B to the process of the low-efficiency storage device420at operation S920.

In this case, the process of the low-efficiency storage device420extracts corresponding data from the storage region (not shown) of the low-efficiency storage device420based on the data ID and the DRM system at operation S930, and transfers the extracted data to the host device410at operation S940. In this case, the DRM system-shared interface module412of the host device410receives the transferred data and transfers it to the DRM system B.

Meanwhile, although the host device410is illustrated inFIGS. 8 and 9as transferring the DRM system ID and the data ID to the low-efficiency storage device420, the exemplary embodiment of the present invention is not limited thereto. The host device410may transfer only the DRM system ID to the low-efficiency storage device420and read the corresponding data. That is, in the case where it is not necessary to identify DRM-related data read by the host device410, only corresponding DRM system ID information may be provided to the low-efficiency storage device420.

In accordance with the exemplary embodiment of the present invention, the low-efficiency storage device can support the operation of the plurality of DRM systems that exist in the host device while maintaining its resources at a minimum level.

Furthermore, in accordance with the exemplary embodiment of the present invention, the pieces of DRM-related data of different DRM systems can be processed in the low-efficiency storage device in the same manner.

Furthermore, in accordance with the exemplary embodiment of the present invention, the DRM system-shared interface module is installed in the host device, so that, when a new DRM system appears, only a new DRM system-shared interface module may be installed, therefore it is not necessary to change an existing low-efficiency storage device.