US20180014196A9 - Right object acquisition method and system - Google Patents
Right object acquisition method and system Download PDFInfo
- Publication number
- US20180014196A9 US20180014196A9 US12/156,490 US15649008A US2018014196A9 US 20180014196 A9 US20180014196 A9 US 20180014196A9 US 15649008 A US15649008 A US 15649008A US 2018014196 A9 US2018014196 A9 US 2018014196A9
- Authority
- US
- United States
- Prior art keywords
- rights
- issuer
- rights object
- request message
- mobile terminal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 85
- 230000004044 response Effects 0.000 claims abstract description 93
- 238000012545 processing Methods 0.000 claims abstract description 28
- 238000010586 diagram Methods 0.000 description 18
- 230000008569 process Effects 0.000 description 18
- 206010010099 Combined immunodeficiency Diseases 0.000 description 12
- 238000001360 collision-induced dissociation Methods 0.000 description 12
- 238000004891 communication Methods 0.000 description 12
- 239000000284 extract Substances 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 238000007726 management method Methods 0.000 description 6
- 230000002776 aggregation Effects 0.000 description 5
- 238000004220 aggregation Methods 0.000 description 5
- 230000005236 sound signal Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 230000001419 dependent effect Effects 0.000 description 3
- 238000009826 distribution Methods 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000003139 buffering effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/08—Access security
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2463/00—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
- H04L2463/101—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying security measures for digital rights management
Definitions
- the present invention relates to a Digital Right Management (DRM) system for use with mobile terminals and, in particular, to a batch rights objects (ROs) acquisition method and system which enables a mobile terminal to acquire multiple rights objects in a batch processing manner.
- DRM Digital Right Management
- ROs batch rights objects
- DRM Digital Rights Management
- the DRM is specified to provide a controlled consumption of digital contents and to protect the intellectual property right of the authors and the content providers.
- encrypted DRM contents can be freely accessed and downloaded.
- a license called Rights Object (RO) is required for decoding the encrypted DRM contents.
- RO Rights Object
- DRM technologies attempt to protect the digital contents through all the phases of creation, distribution, use, and abrogation; and restricts access and usage rights of the user on the digital contents.
- DRM allows the user having a valid encryption key such as RO to decode the encrypted digital content such that the digital content can be protected even when being illegally distributed.
- the RO is a container used in the OMA DRM system, which is an open DRM standard invented by the Open Mobile Alliance (OMA), for carrying the license key to decrypt the corresponding DRM contents.
- OMA Open Mobile Alliance
- the RO is issued by a Right Issuer (RI) and purchased by the end user. Since the digital content and corresponding RO are delivered in a detached manner, the usage of the downloaded content is restricted to the user who acquired the corresponding RO.
- the RO is a collection of Permission, Constraints, and other attributes that define under what circumstances access is granted to, and what usages are defined for, DRM content object.
- the usage constraints include Count, DateTime, Interval, Timed-Count, Accumulated, and Individual.
- the constraints are stored in a specific field of the RO.
- the RO may specify the usage for an MP3 file with the count constraint value set to “10”.
- the MP3 file can be played 10 times and the count is decremented by 1 whenever the MP3 file is played. If the count value becomes “0”, the usage right on the MP3 file expires. In order to maintain the usage right on the MP3 file, the corresponding RO should be updated.
- FIG. 1 is a diagram illustrating RO delivery procedure in a conventional DRM system.
- a mobile terminal 101 transmits a content request message ( 105 ) to content server 102 , and the content server 102 transmits a corresponding content 106 in response to the content request message 105 .
- the requested content is a DRM protected content
- the content is encrypted with an encryption key and scheme specified by the DRM and transmitted in a DRM format having the constraints (e.g., usage rule, the number of times to be played, and duration).
- the mobile terminal 101 transmits a license request message 107 to a Right Issuer (RI) 103 , and the RI 103 transmits the corresponding license 108 to the mobile terminal 101 in response to the license request message.
- RI Right Issuer
- the license is a usage right on the content which includes a decryption key and usage constraint information.
- the mobile terminal 101 should acquire the usage right for consuming the content. Accordingly, the RI 103 checks whether the identity of the user of the mobile terminal 101 is valid. If it is determined that the user is valid, the RI 103 transmits the license to the mobile terminal 101 . If the license is received from the RI 103 , the mobile terminal 101 can play the content using the license.
- the decryption key and usage constraint information is extracted from the license by a DRM client application installed in the mobile terminal 101 . The content is decrypted by using the decryption key and played under the usage constraints specified in the license.
- the conventional DRM system has a drawback in that the RO acquisition or update process is performed item by item such that it is time consuming and cumbersome to acquire or update multiple ROs. That is, since the ROs required for consuming DRM content objects are purchased one by one, the user should perform the purchasing process repeatedly as many as the number of the DRM content objects, resulting in user inconvenience.
- the present invention provides a batch RO acquisition method and system of a mobile terminal that is capable of improving protected contents management efficiency by acquiring multiple ROs in a batch processing manner.
- the present invention provides a batch RO acquisition method and system of a mobile terminal that is capable purchasing and authenticating multiple ROs in a batch processing manner by introducing a broker server.
- a rights object acquisition method includes transmitting a rights object request message requesting one or more rights objects of content objects from a mobile terminal to a rights issuer; creating, at the rights issuer, a rights object response message containing at least one of rights objects indicated by the rights object request message and at least one signature in response to the rights object request message; and transmitting the rights object response message from the rights issuer to the mobile terminal.
- a rights object acquisition method includes transmitting a rights object request message requesting one or more rights objects of content objects from a mobile terminal to a first rights issuer; creating, at the first rights issuer, a first rights object response message containing at least one of rights objects indicated by the rights object request message and at least one signature; transmitting the rights object request message and the first rights objects response message from the first rights issuer to a second rights issuer designated in the rights object request message; creating, at the second rights issuer, a second rights object response message containing at least one of rights objects indicated by the rights object request message and at least one signature; and transmitting, when no other rights issuer designated in the rights object request message remains, the second rights object response message from the second rights issuer to the mobile terminal.
- a rights object acquisition method includes transmitting a rights object request message requesting one or more rights objects of content objects from a mobile terminal to a first rights issuer; transmitting the rights object request message from the first rights issuer to a second rights issuer designated in the rights object request message; transmitting a rights object response message containing at least one of the rights objects indicated by the rights object request message and the first rights issuer's signature from the first rights issuer to the mobile terminal; and transmitting a right object response message containing at least one of the rights objects indicated by the rights object request message and the first rights issuer's signature from the first rights issuer to the mobile terminal.
- a rights object acquisition system includes a mobile terminal which requests and acquires at least one rights object of at least one content object in a batch processing manner; and a server which performs authentication of the mobile terminal and provides the mobile terminal with the at least one rights objects in a batch processing manner.
- FIG. 1 is a diagram illustrating RO delivery procedure in a conventional DRM system
- FIG. 2 is a block diagram illustrating a configuration of a mobile terminal according to an exemplary embodiment of the present invention
- FIG. 3 is a message flow diagram illustrating a batch DRM-RO acquisition method according to an exemplary embodiment of the present invention
- FIG. 4 is a diagram illustrating a structure of DCF for use in a batch RO acquisition method according to an exemplary embodiment of the present invention
- FIG. 5 is a message flow diagram illustrating a batch DRM-RO acquisition method according to another exemplary embodiment of the present invention.
- FIG. 6 is a schematic diagram illustrating a batch DRM-RO acquisition system according to an exemplary embodiment of the present invention.
- FIG. 7 is a message flow diagram illustrating a batch RO acquisition method according to another exemplary embodiment of the present invention.
- FIG. 8 is a schematic block diagram illustrating a batch RO acquisition system according to another exemplary embodiment of the present invention.
- FIG. 9 is a schematic block diagram illustrating an aggregation RO acquisition system according to another exemplary embodiment of the present invention.
- FIGS. 2 through 9 discussed below, and the various embodiments used to describe the principles of the present disclosure in this patent document are by way of illustration only and should not be construed in any way to limit the scope of the disclosure. Those skilled in the art will understand that the principles of the present disclosure may be implemented in any suitably arranged communication system.
- a Rights Object (RO) acquisition method and system is provided.
- the RO acquisition method and system of the present invention enables a mobile terminal to acquire ROs for multiple Digital Rights Management (DRM) protected content items in an aggregation manner.
- DRM Digital Rights Management
- the management processes such as content purchase, RO acquisition and update, and authentication are performed by means of a broker server.
- the term “RO acquisition” is used in the meaning including “RO update” in order to simplify the explanation.
- the mobile terminal can be one of the various kinds of devices including cellular phones supporting data and voice communications according to various radio communication standards, Portable Multimedia Player (PMP), MP3 player, Digital Broadcast Receiver, Personal Digital Assistant (PDA), laptop and desktop computer, and their equivalents supporting a wired or wireless communication.
- PMP Portable Multimedia Player
- MP3 player Portable Multimedia Player
- Digital Broadcast Receiver Portable Multimedia Player
- PDA Personal Digital Assistant
- FIG. 2 is a block diagram illustrating a configuration of a mobile terminal according to an exemplary embodiment of the present invention. Although a mobile phone is depicted as the mobile terminal in FIG. 2 , the present invention is not limited to the mobile phone.
- the mobile terminal 200 includes a radio frequency (RF) unit 210 , a data processing unit 220 , an audio processing unit 230 , an input unit 240 , a memory unit 250 , a display unit 260 , and a control unit 270 .
- RF radio frequency
- the RF unit 210 is responsible for radio communication of the mobile terminal 200 .
- the RF unit 210 establishes a radio communication channel with a communication system according to a specific communication scheme. Particularly, the RF unit 210 allows the mobile terminal 200 to exchange control messages with a web server for acquiring the contents and their ROs.
- the RF unit 210 includes an RF transmitter for up-converting and amplifying the transmission signals and an RF receiver for low-noise amplifying and down-converting the received signals.
- the RF unit 210 allows the mobile terminal 200 to download DRM contents from a contents server and ROs required for playing the DRM contents from a Rights Issuer (RI) or a Broker server.
- the RF unit 210 transmits a Right Object Acquisition Protocol (ROAP) Trigger Request and RO Request messages to the RI or Broker server and receives ROAP Trigger message and RO Response message. These messages are described in more detail later.
- ROAP Right Object Acquisition Protocol
- the data processing unit 220 is responsible for processing voice data input by the audio processing unit 230 , text data input through the input unit 240 , and the data incoming from and outgoing to the RF unit 210 .
- the data processing unit 220 may include a modem and a codec.
- the codec includes a data codec for processing packet data and an audio codec for processing audio data.
- the audio processing unit 230 processes the audio signal output by the data processing unit 220 so as to output the audio signal through a speaker (SPK) in the form of audible sound and processes the audio signal input through a microphone (MIC) so as to output the processed audio signal to the data processing unit 220 .
- the audio processing unit 230 outputs audio data including voice data through the speaker (SPK) in the form of audible sound and outputs the audio signal including voice input through the microphone (MIC) to the data processing unit 220 in the form of audio data.
- the audio processing unit 230 is configured to play the audio data contained in the DRM contents selected by a user.
- the input unit 240 receives various alphanumeric key inputs and function key inputs for configuring and controlling functions of the mobile terminal 200 and transfers the key sequences corresponding to the key inputs to the control unit 270 .
- the input unit 240 can be implemented with at least one of a touchpad, a normal keypad, a touchscreen, a qwerty keyboard, and specific types of function keys. Particularly, the input unit 240 generates a key signal for selecting an item listed on a list (DRM contents list or ROs list by content item) displayed on the display unit 260 and transfers the key signal to the control unit 270 . Of course, multiple items can be selected from the list in response to the user's requests.
- the memory unit 250 stores at least one application for executing functions associated with the RO acquisition method and user data collected from external devices (contents server, RI, Broker server, and another mobile terminal).
- the user data include phonebook data, still and motion picture files, audio files, other types of digital contents, DRM-protected contents, and RO.
- the application can be a program associated with playback of the user data. Particularly, the application can be a content management program for managing and controlling the use of DRM-protected contents.
- the memory unit 250 may include at least one buffer for buffering user data generated during the operation of the application.
- the memory unit 250 stores at least one kind of content information associated with each DRM content object.
- the content information includes a size, a data type, a title, a playable period, a playable number of times, content-related information, a usage restriction, etc.
- the memory unit stores ROs of each DRM content object.
- the display unit 260 displays screens representing the data generated by the application and key manipulation status and preset function information.
- the display unit 260 can be implemented with a Liquid Crystal Display (LCD).
- the LCD may have touchscreen functionality.
- the display unit 260 operates as a part of the input unit 240 .
- the control unit 270 controls general operations of the mobile terminal 200 and signaling among the internal components of the mobile terminal 200 .
- the control unit 270 controls interoperation of the data processing unit 220 , audio processing unit 230 , input unit 240 , memory unit 250 , and display unit 260 .
- the control unit 270 may include the data processing unit 220 .
- control unit 270 controls package purchase of multiple DRM contents items and batch RO acquisition for the DRM contents items.
- the control unit 270 also controls display of the DRM contents item list, presentation of the items selected from the DRM contents item list, and purchase information of the DRM contents items and ROs.
- the control unit 270 also controls generation of the ROAP Trigger Request message and RO Request message.
- the mobile terminal 200 may further include at least one of camera module, electric settlement module, Bluetooth module, battery module, and digital broadcast receiver module, and other optional function modules. Also, any of the internal components constituting the mobile terminal may be omitted or replaced with an equivalent functional component according to the functional design of the mobile terminal.
- DRM-RO a method for acquiring ROs of DRM contents items
- FIG. 3 is a message flow diagram illustrating a batch DRM-RO acquisition method according to an exemplary embodiment of the present invention.
- the mobile terminal 200 if an RO acquisition command is input for acquiring ROs, the mobile terminal 200 generates an ROAP Trigger Request message and sends the ROAP Trigger Request message to the RI 250 (S 301 ).
- the ROAP Trigger Request message includes at least one content identifier (CID).
- the ROAP Trigger Request message also includes a device identifier (DeID) of the mobile terminal 200 and at least one constraint for restricting the usage rights of at least one DRM content object.
- the ROAP Trigger Request message may further includes parent license information.
- the ROAP Trigger Request message may include an identifier of the music album A in addition to the identifiers of the track 1 and track 3 .
- the ROs for the track 1 and track 3 can be acquired only with the RO for the album A afterward.
- either track 1 and track 3 can be played up to a total usage times restricted by a constraint of the parent RO.
- different parent licenses can be applied.
- the user may create a content list (e.g., my list and favorite list) as a parent group.
- the ROs of the content items listed in the content list are dependent on a group rights object for the content list.
- the DRM content object can be a content item that is received from another device (for example, another terminal or server) but has not acquired corresponding RO or of which RO has expired.
- the mobile terminal 200 selects an RI for purchasing an RO of at least one DRM content object with reference to an RI's Uniform Resource Location (URL) information contained in the header information of the DRM content object.
- the ROAP Trigger Request message is sent to the RI URL.
- DCF DRM Content Format
- FIG. 4 is a diagram illustrating a structure of DCF for use in a batch RO acquisition method according to an exemplary embodiment of the present invention.
- a BatchRIURL 410 is an address of RI which supports a batch RO acquisition
- a BatchRIURLLength 420 indicates a length of the BatchRIURL 410 .
- the batch RI information field is added to the Common Header of the DCF as a mandatory field or as an extended header field which is one of mandatory fields contained in the common header.
- the mobile terminal 200 selects an RI for acquiring the ROs for at least one DRM contents item with reference to the RI URL address previously stored in the memory unit 250 and attempts to access the RI. Also, the mobile terminal 200 can request a Batch RI URL for acquiring the DRM ROs to the RI 250 and attempts to access the RI URL responded by the RI 250 .
- the RI URL received from the RI 250 is stored and used for acquiring the ROs later in an aggregate manner.
- the RI 250 If the ROAP Trigger Request message is received, the RI 250 generates an ROAP Trigger message and sends the ROAP Trigger message to the mobile terminal 200 (S 303 ).
- the ROAP Trigger message may include price information on the ROs of the content items indicated by the ROAP Trigger Request message. Also, the ROAP Trigger message includes one or more roIDs to identify the ROs corresponding to the content items.
- the ROAP trigger message may include at least one of roapURL, RI ID, RI Alias, Domain ID, Domain Alias, and Nonce.
- the ROAP Trigger request message and ROAP Trigger message can be sent in the form a HTTP GET or a HTTP POST (see RO acquisition mechanism of OMA DRM v2.0).
- the message length may increase, whereby HTTP POST prefers to send the ROAP messages.
- the mobile terminal 200 displays information on the purchase prices of the ROs of the DRM contents items on the display unit with reference to the information contained in the ROAP trigger message.
- the mobile terminal 200 generates a RO Request message and transmits the RO Request message to the RI 250 (S 305 ).
- the DRM content objects indicated by the RO Request message may be identical with those indicated by the ROAP Trigger Request message or not. That is, the list of ROs can be modified by the user.
- the RI 250 issues the ROs indicated by the RO Request message and transmits an RO Response message (S 307 ) containing the ROs to the mobile terminal 200 .
- the mobile terminal 200 Upon receiving the RO Response message, the mobile terminal 200 extracts ROs from the RO Response message so as to acquire multiple ROs in an aggregate manner.
- the RO Response may further include a session ID for establishing a session between the RI 250 and the mobile terminal 200 so as to check whether the RO acquisition is successfully.
- the mobile terminal 200 establishes a session with the RI 250 on the basis of the session ID and transmits an RO Confirm Request message to the RI 250 in the session.
- the RO Confirm Request message includes a parameter such as RO Confirm Info for indicating the successful RO acquisition.
- the RI 250 ends the RO acquisition procedure or retransmits the ROs on the basis of RO Confirm Info. If it is determined that the multiple ROs are successfully delivered, the RI 250 transmits an RO Confirm Response message to the mobile terminal 200 .
- the mobile terminal 200 may perform a web transaction with the RI 250 after transmitting the ROAP Trigger Request message.
- the permissions and constraints on the use of DRM contents can be negotiated.
- the RI 250 publishes purchase prices information of the content items listed in the ROAP Trigger Request message, and the mobile terminal transmits the information on the content items that are finally confirmed by the user to the RI 250 . If the web transaction is completed by the final user confirmation, the RI 250 may transmit a ROAP Trigger message listing the content items to be delivered to the mobile terminal 200 .
- the batch RO acquisition can be implemented without adding the BatchRIURL field to the DCF structure.
- FIG. 5 is a message flow diagram illustrating a batch DRM-RO acquisition method according to another exemplary embodiment of the present invention.
- the BatchRIURL is not provided in the DCF structure, but, each content item has the URL of RI delivered the content item.
- the mobile terminal 200 if a batch RO acquisition command is input by the user, the mobile terminal 200 generates a ROAP Trigger Request message containing CIDs of individual DRM content objects and sends the ROAP Trigger Request message to the RI 250 .
- the mobile terminal 200 sends the ROAP Trigger Request message (S 501 ) to the RI 250 with reference to an RI URL of one of multiple DRM content objects.
- the RI 250 sends a Redirection message notifying a new URL of another RI, which has the group RO transmission capability, to the mobile terminal 200 (S 503 ).
- the Redirection message can be one of HTTP 302 , HTTP 303 , and HTTP 307 messages proposed in OMA DRM.
- the mobile terminal 200 transmits the ROAP Trigger Request message to the RI 300 indicated by the RI URL contained in the Redirection message (S 505 ). Accordingly, the mobile terminal 200 acquires the ROs from the RI 300 in an aggregation manner.
- the batch RO acquisition method allows the mobile terminal to acquire multiple ROs in the aggregation manner through a signal purchase procedure, resulting in improving user convenience.
- a multi-RI involved batch RO acquisition method in which individual ROs are acquired from different RIs in a batch manner, is described hereinafter.
- FIG. 6 is a schematic diagram illustrating a batch DRM-RO acquisition system according to an exemplary embodiment of the present invention.
- a batch DRM-RO acquisition system includes a mobile terminal 200 , a plurality of RIs 610 to 630 , and a Broker server 400 located between the mobile terminal 200 and the arbitrary number of RIs.
- the Broker server 400 acts as a signal service point for managing processes associated with RO acquisition (message generation and exchange, authentication, and digital signature, etc.).
- the broker server-involved batch RO acquisition procedure is described hereinafter in more detail with reference to FIG. 7 .
- FIG. 7 is a message flow diagram illustrating a batch RO acquisition method according to another exemplary embodiment of the present invention.
- the mobile terminal 200 if an RO acquisition command is input, the mobile terminal 200 generates an ROAP Trigger Request message containing a CID list listing CIDs of DRM content objects indicated by the RO acquisition command and transmits the ROAP Trigger Request message to the broker server 400 (S 701 ).
- the ROAP Trigger Request message is structured identically with those of the other embodiments depicted in FIGS. 3 and 5 .
- the ROAP Trigger Request message may further include RI URLs of the RIs 610 to 630 that provide the the respective content objects indicated by the CIDs.
- the broker server 400 extracts the CIDs of the content objects from the ROAP Trigger Request message by RI URL and generates new ROAP Trigger Request messages destined to the RIs 610 to 630 corresponding to the respective RI URLs.
- the broker server 400 transmits the new ROAP Trigger Request messages to the corresponding RIs 610 to 630 (S 703 ).
- each new ROAP Trigger Request message contains at least one CID of the content object provided by the RI to which it is destined.
- Each of the RIs 610 to 630 receives only the new ROAP Trigger Request message having its RI URL.
- each RI transmits an ROAP Trigger message to the broker server 400 (S 705 ).
- the ROAP trigger message contains purchase information on the content objects indicated by the CIDs listed on the CID list of extracted from the new ROAP Trigger Request message.
- the ROAP trigger messages are structured identically with those of the embodiments depicted in FIGS. 3 and 5 .
- the broker server 400 receives the ROAP Trigger messages transmitted by the RIs 610 to 630 and transmits a new ROAP Trigger message containing total purchase information to the mobile terminal 200 (S 707 ).
- the total purchase information is created by packaging the purchase information extracted from the ROAP Trigger messages received from the respective RIs.
- the mobile terminal 200 displays the total purchase information extracted from the ROAP Trigger message on the display unit.
- the mobile terminal 200 generates an RO Request message containing CIDs of the content objects which is finally decided by the user and transmits the RO Request message to the broker server 400 (S 709 ).
- the CID list of the ROAP Trigger Request message may be identical with or different from the CID list of the RO Request message. That is, the the CIDs listed on the CID list of the ROAP Trigger Request message can be changed by the user's final decision. In FIG. 7 , it is assumed that the CIDs of the DRM content objects to purchase are changed in the RO Request message.
- the RO Request message transmitted by the mobile terminal 200 is formatted as shown in Table 1.
- the broker server 400 transmits the RO Request message to at least one of the RIs 610 to 630 according to the RI URLs indicated by the RO request message (S 711 ).
- the RIs as destination of the RO Request message are determined by the CIDs of the content objects that are finally decided to be purchased by the user. That is, the broker server 400 extracts the CIDs from the RO Request message transmitted by the mobile terminal 200 and generates individual new RO Request messages destined to the respective RIs.
- the new request message transmitted by the broker server 400 is formatted as shown in Table 1.
- the RIs 610 and 620 are determined as the destinations of the new RO Request messages due to the change of content objects to be purchased.
- the broker sever 400 may authenticate the mobile terminal 200 using the RO Request message transmitted by the mobile terminal 200 . The authentication may be performed at the initial connection of the mobile terminal and skipped from then.
- Both the RO Request messages transmitted by the mobile terminal 200 and the broker server 400 are structured in the following format of Table 1.
- the RO Request message includes at least one of parameters such as device ID (deviceID), domain ID (domainID), RI ID (riID), nounce, time, RO information (roInfo), certification chain (certificateChain), extensions, and signature.
- the nonce element is a parameter generated randomly.
- the signature element is a digital signature of the mobile terminal and it is included in the RO Request message for verifying the mobile terminal.
- the RIs 610 and 620 received the RO Request messages verify the content object on the basis of the RO Request message. Next, each of the RIs 610 and 620 generates ROs indicated by the RO Request message and transmits a RO Response message containing the ROs to the broker server 400 (S 713 ).
- the RO Response message transmitted by the RI is formatted as shown in Table 2.
- the broker server 400 Upon receiving the RO Response messages from the RIs 610 and 620 , the broker server 400 extracts the ROs from the RO Response messages.
- the broker server 400 performs batch processing of the digital signatures for inter-authentication between the mobile terminal 200 and the RIs 610 and 620 and then transmits a new RO Response message generated with reference to the RO Response messages received from the RIs 610 and 620 to the mobile terminal 200 (S 715 ).
- the RO Response message transmitted by the broker server 400 is formatted as shown in Table 2.
- the broker server 400 can verify a public key certificate of the mobile terminal 200 using an Online Certificate Status Protocol (OCSP).
- OCSP is a protocol to verify a public key certificate of the mobile terminal 200 in real time. That is, the OCSP checks whether the public key certificate of the mobile terminal is aborted.
- CTL Certificate Revocation List
- the broker server 400 can verify the validity of the public key certificate of the mobile terminal 200 using the OCSP in an initial registration process. Also, public key certificate verification can be performed in response to the request of the broker server 400 or RIs 610 to 630 . For example, in a case that a DRM time (a secure time) of a specific content object is not matched with the time of RI (i.e., the difference of the DRM time and the local time of RI or broker server 400 is greater than a threshold value) in the DRM-RO acquisition procedure, the public key certificate of the mobile terminal 200 can be verified. The verification on the public key certificate of the broker server or RI can be performed by exchanging the OCSP Request and OCSP Response messages with an OCSP responder.
- the mobile terminal 200 received the RO Response message from the broker server 400 extracts the ROs contained in the RO Response message so as to acquire the ROs of the DRM contents in an aggregate manner.
- the RO Response message transmitted by the RIs 610 to 630 or the broker server 400 is structured in the following format of Table 2.
- the RO Response message includes at least one of parameter such as deviceID, riID, nonce, protectedRO, certificateChain, ocspResponse, and signature.
- the RO Response transmitted by the broker server may further include a broker server ID (brokerID).
- the brokerID can be replaced by the riID.
- the nonce element is a random value designated by the RI and can be omitted.
- the signature element is a digital signature of the RI and it can be used in the authentication procedure.
- the protected RO may include a plurality of protected ROs. That is the RO Response message contains at least one RO for at least one DRM content object indicated by the RO requested message.
- the RO Response message may include protected ROs in the form of “protectedRO” elements for respective DRM content objects, and each protectedRO includes at least one “Permission” element specifying the actual usage of the content object and at least one “constraint” element for restricting the permission on the usage of the content object. That is, the “constraint” may be dependent on the “permission.”
- the permission element may be one of “play”, “display”, “execute”, “print”, and “export”
- the constraint element may be one of “count”, “timed-count”, “datetime”, “interval”, “individual”, and “system.”
- the RO Response messages transmitted by the broker server 400 and the RIs 610 to 630 carry the protected ROs without additional security process. If the broker server 400 and the RIs 610 to 630 are not authenticated with each other (i.e., Insecure communication is performed), a Mutual authentication process may be performed between the broker server 400 and the RIs 610 to 630 .
- the digital signature of the broker server 400 is verified as following process.
- the broker server 400 transmits an RO Response message carrying only its own signature to the mobile terminal 200 .
- the broker server 400 verifies the digital signatures of the RIs 610 to 630 and transmits an RO Response message containing its signature as well as the digital signature of the RIs 610 to 630 .
- the digital signatures of all the RIs 610 to 630 are contained in the RO Response message.
- the message format of the RO Response message may be changed.
- the broker server 400 or a specific RI reports the information on the RO failed to receive and the reason of the RO acquisition failure. If the acquisition failure message is received from the broker server 400 , the mobile terminal 200 outputs an alert such as an acquisition failure information or acquisition failure alarm.
- the broker server 400 performs a mutual authentication by verify the digital signatures of the mobile terminal 200 and the RIs 610 to 630 .
- This kind of architecture relieves the mobile terminal 200 from verifying every RI individually since the mobile terminal 200 verifies only the digital signature of the broker server 400 .
- the mobile terminal may perform a web transaction with the broker server 400 after transmitting the ROAP Trigger Request message.
- the broker server 400 receives the purchase information of the content objects from the respective RIs 610 and 630 and publishes the information on a webpage, and the mobile terminal displays the purchase information on the display unit.
- the user can decide the values of the permissions and constraints of the ROs corresponding to the content objects.
- the broker server 400 publishes the purchase information on a web page
- the mobile terminal 200 composes a purchase list in response to the user input for selecting the final content objects to be purchased.
- the broker server 400 generates at least one ROAP Trigger Request message on the basis of the purchase list received from the mobile terminal 200 and transmits the ROAP Trigger Request message to at least one RI.
- the broker server-involved batch RO acquisition architecture and method are described with reference to FIGS. 6 and 7 , the present invention is not limited thereto.
- the batch RO acquisition architecture and method can be accomplished by embedding the functionality of the broker server within the respective RIs without an additional broker server.
- a batch RO acquisition system and method without engagement of the broker server is described hereinafter.
- FIG. 8 is a schematic block diagram illustrating a batch RO acquisition system according to another exemplary embodiment of the present invention.
- the batch RO acquisition system is deployed in a ring network topology.
- a mobile terminal 200 transmits an RO Request message to the first RI 810 .
- the RO Request message may contain at least one RI URL including the URL of the first RI 810 that provides the CIDs of the content objects to be purchased.
- the mobile terminal 200 extracts at least one CID and at least one RI URL which provides the CID and transmits the RO Request message to the RI URL (in FIG. 8 , the URL of the first RI 810 ).
- one of the RI URLs is selected according to a preset user configuration. That is, the RI URL can be selected randomly, in an order of preset priority, in an ascendant or descendent order of the RIs, or the like.
- the first RI 810 received the RO Request message performs the following processes:
- the first RI 810 authenticates the mobile terminal 200 and, if the mobile terminal passes the authentication process, generates at least one RO and adds its signature to the RO.
- the authentication process can be performed using the OCSP.
- the authentication can be performed in an initial registration of the mobile terminal or in response to a request of the RI. For example, in a case that the DRM time of a specific content object is different from the device time of the RI (i.e., the difference between the DRM time and the RI time is greater than a predetermined value), the RI may request re-authentication.
- the authentication of the mobile terminal may be performed by exchanging the OCSP Request message and OCSP Response message between the RI and an OCSP Responder.
- the first RI 810 creates an RO Response message containing the information on the RO and its signature.
- the first RI 810 transmits the RO Request message to one of the RI URLs (i.e., the second RI 820 ) contained in the RO Request message.
- the first RI 810 may transmit the RO Response message together with the RO Request message.
- the first RI 810 may delete its URL from the RO Request message before transmitting the RO Request message to the second RI 820 .
- the second RI 820 performs the following processes:
- the second RI 820 performs authentication of the mobile terminal 200 and, if the mobile terminal passes the authentication test, creates at least one RO and adds its signature to the RO.
- the second RI 820 performs the authentication of the first RI 810 .
- the authentication process on the mobile terminal 200 may skipped. That is, since the mobile terminal 200 is authenticated by the first RI 810 , the second RI 820 skips the authentication of the mobile terminal 200 in trust of the authentication by the first RI 810 . In this case, the first RI 810 informs the second RI 820 of the authentication of the mobile terminal 200 , and the second RI 820 checks whether the RO Request message is received from the mobile terminal 200 or another RI.
- the second RI 820 may add its signature to the RO or replace the signature of the first RI 810 with its own signature.
- the second RI 820 creates an RO Response message containing the information of the RO and at least one signature. Sequentially, the second RI 820 transmits the RO Request message to one of RI URLs contained in the RO Request message (i.e., the third RI 830 ). At this time, the RO Response message is transmitted together with the RO Request message. The second RI 820 may delete its URL from the RO Request message before transmitting to the third RI 830 .
- the third RI 830 and N'th RI 840 perform the identical procedure carried out by the second RI 820 .
- the N'th RI 840 recognizes that there is no other RI to transmit the RO Request message and transmits an RO Response message containing the ROs issued by previous RIs and/or by itself and at least one signature to the mobile terminal 200 .
- the N'th RI 840 can recognize itself as the final RI by checking the RI URLs contained in the RO Request message since the RO Request message received by the final RI containing only one RI URL (when the previous RIs delete their RI URL from the RO Request message). Also, the N'th RI 840 can recognize itself as the final RI by checking the signatures added in the RO Response message.
- FIG. 9 is a schematic block diagram illustrating an aggregation RO acquisition system according to another exemplary embodiment of the present invention.
- the batch RO acquisition system is implemented with a push mechanism.
- a mobile terminal 200 transmits an RO Request message to a first RI 910 .
- the RO Request message contains at least one RI URL including the URL of the first RI 910 that provides CIDs of the content objects to be purchased.
- the mobile terminal 200 extracts at least one CID and at least one RI URL which provides the CID of the content object to be purchased and transmits the RO Request message to the RI URL (in FIG. 9 , the URL of the first RI 910 ).
- one of the RI URLs is selected according to a preset user configuration. That is, the RI URL can be selected randomly, in an order of preset priority, in an ascendant or descendent order or the RIs, or the like.
- the first RI 910 receives the RO Request message transmitted by the mobile terminal 200 and performs authentication of the mobile terminal 200 on the basis of the RO Request message. If the mobile terminal 200 passes the authentication test, the first RI 910 creates a RO Response message containing at least one RO and its signature and transmits the RO Response message to the mobile terminal 200 . The first RI 910 also transmits the RO Request message to a second RI 920 with reference to the RI URLs contained in the RO Request message. At this time, the first RI 910 may delete its URL from the RO Request message.
- the second RI 920 performs authentication of the mobile terminal 200 . If the mobile terminal 200 passes the authentication test, the second RI 920 creates an RO Response message containing at least one RO and its signature to the mobile terminal 200 . The second RI 920 also may perform authentication of the first RI 910 . Next, the second RI 920 transmits the RO Request message to one of the RI URLs contained in the RO Request message (in this embodiment, the third RI 930 ). At this time, the second RI 920 may delete its URL from the RO Request message.
- the authentication of the mobile terminal 200 may be skipped. That is, since the mobile terminal 200 is authenticated by the first RI 910 , the second RI 920 skips the authentication of the mobile terminal 200 in trust of the authentication by the first RI 910 . In this case, the first RI 910 informs the second RI 920 of the authentication of the mobile terminal 200 , and the second RI 920 checks whether the RO Request message is received from the mobile terminal 200 or another RI. The second RI 920 may add its signature to the RO or replace the signature of the first RI 910 with its own signature.
- the third RI 930 and N'th RI 940 perform the identical procedure carried out by the second RI 920 .
- the N'th RI 940 recognizes that there is no other RI to transmit the RO Request message and transmits an RO Response message.
- the N'th RI 940 can recognize itself as the final RI by checking the RI URL remained in the RO Request message in which other RI URLs are deleted by previous RIs.
- At least one of the RIs verifies a public key certificate of the mobile terminal using the OCSP.
- the OCSP is a protocol to verify the public key certificate of the mobile terminal 200 in real time. That is, the OCSP checks whether the public key certificate of the mobile terminal is aborted.
- a heterogeneous RI environment is assumed in which the different types of RIs are deployed.
- the ROAP registration process should be performed.
- an ROAP registration protocol and a registration protocol is specified.
- the standard specifies that the registration protocol is executed as following situation.
- the registration protocol is executed when the mobile terminal attempts to initially contact to the RI server, the exchanged security information is required to be updated, and the DRM time (secure time) is inaccurate.
- the mobile terminal can register with different types of RIs simultaneously.
- the mobile terminal also initiates the registration protocol whenever attempting the registration with the respective RIs.
- the mobile terminal may initiate the registration protocol only one time with the first RI and skip the initiation of the registration protocol with other RIs.
- the mobile terminal and the RI server exchanges messages such as “Device Hello”, “RI Hello”, “Registration Request”, and Registration Response.”
- the mobile terminal and the RI perform the registration procedure by exchanging the above messages. These messages are formatted as shown in Tables 3 to 6.
- Table 3 shows an exemplary “Device Hello” message firstly sent by the mobile terminal in the ROAP registration protocol.
- Table 4 shows an exemplary “RI Hello” message which is sent in response to the “Device Hello” message.
- Table 5 shows an exemplary “Registration Request” message which is transmitted from the mobile terminal to the RI for requesting registration.
- Table 6 shows an exemplary “Registration Response” message which is transmitted in response to the “Registration Request” message.
- the mobile terminal may display the information on the erroneous RI or erroneous content object and the reason of the error on the display screen.
- a specific RI e.g., RO Request or RO Response message
- the RO acquisition procedure is explained in association with the operations of the mobile terminal, RIs, and broker server.
- the present invention is not limited thereto.
- the RO acquisition procedure can be applied between the client terminal such as personal computer and a server, or between two servers.
- the rights object acquisition method and system of the present invention enables a mobile terminal to acquire multiple rights objects in a batch processing manner, resulting in improvement of user convenience. Also, the rights object acquisition method and system of the present invention can be implemented in association with a quantity discount system so as to improve sales of the digital contents, resulting in development of contents business.
- the rights object acquisition method and system of the present invention introduces a broker server which provides a single service point for verifying digital signatures of a mobile terminal and RIs so as to reduce complicated authentication processes between a mobile terminal and every RIs, thereby relieving the processing load of the mobile terminal, improving performance of the mobile terminal, and reducing multiple RO acquisition time.
- the rights object acquisition method and system of the preset invention enables a mobile terminal to acquire multiple ROs without transmitting RO Request messages to all RIs issuing the ROs, resulting in reducing traffic redundancy.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Technology Law (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Mobile Radio Communication Systems (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Description
- The present invention claims priority to an application entitled “RIGHTS OBJECT ACQUISITION METHOD AND SYSTEM” filed in the Korean Intellectual Property Office on Jun. 9, 2007 and assigned Serial No. 2007-0056400, the contents of which are incorporated herein by reference.
- The present invention relates to a Digital Right Management (DRM) system for use with mobile terminals and, in particular, to a batch rights objects (ROs) acquisition method and system which enables a mobile terminal to acquire multiple rights objects in a batch processing manner.
- With the widespread use of Internet and advances of the multimedia and communication technologies, various digital contents are distributed and acquired over the network. However, without copyright protection policy, the advanced network environment and technologies are likely to be used for illegal distributions of the contents.
- Digital Rights Management (DRM) systems have been developed to prevent the illegal use and distribution of the copyrighted contents. DRM is a term that refers to access control technologies for protecting the copyrights of the authors and the content providers.
- The DRM is specified to provide a controlled consumption of digital contents and to protect the intellectual property right of the authors and the content providers.
- Typically, encrypted DRM contents can be freely accessed and downloaded. In order to use the DRM contents, however, a license called Rights Object (RO) is required for decoding the encrypted DRM contents. With its efficient usage control, DRM is used by many copyright holders.
- DRM technologies attempt to protect the digital contents through all the phases of creation, distribution, use, and abrogation; and restricts access and usage rights of the user on the digital contents. DRM allows the user having a valid encryption key such as RO to decode the encrypted digital content such that the digital content can be protected even when being illegally distributed.
- The RO is a container used in the OMA DRM system, which is an open DRM standard invented by the Open Mobile Alliance (OMA), for carrying the license key to decrypt the corresponding DRM contents. The RO is issued by a Right Issuer (RI) and purchased by the end user. Since the digital content and corresponding RO are delivered in a detached manner, the usage of the downloaded content is restricted to the user who acquired the corresponding RO.
- The RO is a collection of Permission, Constraints, and other attributes that define under what circumstances access is granted to, and what usages are defined for, DRM content object. Typically, the usage constraints include Count, DateTime, Interval, Timed-Count, Accumulated, and Individual. The constraints are stored in a specific field of the RO.
- For example, the RO may specify the usage for an MP3 file with the count constraint value set to “10”. In this case, the MP3 file can be played 10 times and the count is decremented by 1 whenever the MP3 file is played. If the count value becomes “0”, the usage right on the MP3 file expires. In order to maintain the usage right on the MP3 file, the corresponding RO should be updated.
-
FIG. 1 is a diagram illustrating RO delivery procedure in a conventional DRM system. - In
FIG. 1 , amobile terminal 101 transmits a content request message (105) tocontent server 102, and thecontent server 102 transmits acorresponding content 106 in response to thecontent request message 105. In a case that the requested content is a DRM protected content, the content is encrypted with an encryption key and scheme specified by the DRM and transmitted in a DRM format having the constraints (e.g., usage rule, the number of times to be played, and duration). If a user request for acquiring the license to the downloaded content is detected, themobile terminal 101 transmits alicense request message 107 to a Right Issuer (RI) 103, and the RI 103 transmits thecorresponding license 108 to themobile terminal 101 in response to the license request message. Here, the license is a usage right on the content which includes a decryption key and usage constraint information. In the case of DRM content object, themobile terminal 101 should acquire the usage right for consuming the content. Accordingly, the RI 103 checks whether the identity of the user of themobile terminal 101 is valid. If it is determined that the user is valid, the RI 103 transmits the license to themobile terminal 101. If the license is received from the RI 103, themobile terminal 101 can play the content using the license. Typically, the decryption key and usage constraint information is extracted from the license by a DRM client application installed in themobile terminal 101. The content is decrypted by using the decryption key and played under the usage constraints specified in the license. - However, the conventional DRM system has a drawback in that the RO acquisition or update process is performed item by item such that it is time consuming and cumbersome to acquire or update multiple ROs. That is, since the ROs required for consuming DRM content objects are purchased one by one, the user should perform the purchasing process repeatedly as many as the number of the DRM content objects, resulting in user inconvenience.
- For example, when it is decided to update the expired usage rights on a MP3 file, a video file, and a game file, the user should purchase the ROs of the MP3, video, and game files one by one through respective purchase transactions. These repeated RO purchase transactions are time-consuming and cumbersome, resulting in contents management inefficiency and user inconvenience.
- To address the above-discussed deficiencies of the prior art, it is a primary object of the present invention to provide a batch RO acquisition method and system of a mobile terminal that that is capable of acquiring and updating multiple ROs through a simplified process.
- Also, the present invention provides a batch RO acquisition method and system of a mobile terminal that is capable of improving protected contents management efficiency by acquiring multiple ROs in a batch processing manner.
- Also, the present invention provides a batch RO acquisition method and system of a mobile terminal that is capable purchasing and authenticating multiple ROs in a batch processing manner by introducing a broker server.
- In accordance with an exemplary embodiment of the present invention, a rights object acquisition method includes transmitting a rights object request message requesting one or more rights objects of content objects from a mobile terminal to a rights issuer; creating, at the rights issuer, a rights object response message containing at least one of rights objects indicated by the rights object request message and at least one signature in response to the rights object request message; and transmitting the rights object response message from the rights issuer to the mobile terminal.
- In accordance with another exemplary embodiment of the present invention, a rights object acquisition method includes transmitting a rights object request message requesting one or more rights objects of content objects from a mobile terminal to a first rights issuer; creating, at the first rights issuer, a first rights object response message containing at least one of rights objects indicated by the rights object request message and at least one signature; transmitting the rights object request message and the first rights objects response message from the first rights issuer to a second rights issuer designated in the rights object request message; creating, at the second rights issuer, a second rights object response message containing at least one of rights objects indicated by the rights object request message and at least one signature; and transmitting, when no other rights issuer designated in the rights object request message remains, the second rights object response message from the second rights issuer to the mobile terminal.
- In accordance with another exemplary embodiment of the present invention, a rights object acquisition method includes transmitting a rights object request message requesting one or more rights objects of content objects from a mobile terminal to a first rights issuer; transmitting the rights object request message from the first rights issuer to a second rights issuer designated in the rights object request message; transmitting a rights object response message containing at least one of the rights objects indicated by the rights object request message and the first rights issuer's signature from the first rights issuer to the mobile terminal; and transmitting a right object response message containing at least one of the rights objects indicated by the rights object request message and the first rights issuer's signature from the first rights issuer to the mobile terminal.
- In accordance with another exemplary embodiment of the present invention, a rights object acquisition system includes a mobile terminal which requests and acquires at least one rights object of at least one content object in a batch processing manner; and a server which performs authentication of the mobile terminal and provides the mobile terminal with the at least one rights objects in a batch processing manner.
- Before undertaking the DETAILED DESCRIPTION OF THE INVENTION below, it may be advantageous to set forth definitions of certain words and phrases used throughout this patent document: the terms “include” and “comprise,” as well as derivatives thereof, mean inclusion without limitation; the term “or,” is inclusive, meaning and/or; the phrases “associated with” and “associated therewith,” as well as derivatives thereof, may mean to include, be included within, interconnect with, contain, be contained within, connect to or with, couple to or with, be communicable with, cooperate with, interleave, juxtapose, be proximate to, be bound to or with, have, have a property of, or the like. Definitions for certain words and phrases are provided throughout this patent document, those of ordinary skill in the art should understand that in many, if not most instances, such definitions apply to prior, as well as future uses of such defined words and phrases.
- For a more complete understanding of the present disclosure and its advantages, reference is now made to the following description taken in conjunction with the accompanying drawings, in which like reference numerals represent like parts:
-
FIG. 1 is a diagram illustrating RO delivery procedure in a conventional DRM system; -
FIG. 2 is a block diagram illustrating a configuration of a mobile terminal according to an exemplary embodiment of the present invention; -
FIG. 3 is a message flow diagram illustrating a batch DRM-RO acquisition method according to an exemplary embodiment of the present invention; -
FIG. 4 is a diagram illustrating a structure of DCF for use in a batch RO acquisition method according to an exemplary embodiment of the present invention; -
FIG. 5 is a message flow diagram illustrating a batch DRM-RO acquisition method according to another exemplary embodiment of the present invention; -
FIG. 6 is a schematic diagram illustrating a batch DRM-RO acquisition system according to an exemplary embodiment of the present invention; -
FIG. 7 is a message flow diagram illustrating a batch RO acquisition method according to another exemplary embodiment of the present invention; -
FIG. 8 is a schematic block diagram illustrating a batch RO acquisition system according to another exemplary embodiment of the present invention; and -
FIG. 9 is a schematic block diagram illustrating an aggregation RO acquisition system according to another exemplary embodiment of the present invention. -
FIGS. 2 through 9 , discussed below, and the various embodiments used to describe the principles of the present disclosure in this patent document are by way of illustration only and should not be construed in any way to limit the scope of the disclosure. Those skilled in the art will understand that the principles of the present disclosure may be implemented in any suitably arranged communication system. - In the present invention, a Rights Object (RO) acquisition method and system is provided. The RO acquisition method and system of the present invention enables a mobile terminal to acquire ROs for multiple Digital Rights Management (DRM) protected content items in an aggregation manner. In the RO acquisition method system according to the present invention, the management processes such as content purchase, RO acquisition and update, and authentication are performed by means of a broker server. In the following, the term “RO acquisition” is used in the meaning including “RO update” in order to simplify the explanation.
- In the following, the mobile terminal can be one of the various kinds of devices including cellular phones supporting data and voice communications according to various radio communication standards, Portable Multimedia Player (PMP), MP3 player, Digital Broadcast Receiver, Personal Digital Assistant (PDA), laptop and desktop computer, and their equivalents supporting a wired or wireless communication.
-
FIG. 2 is a block diagram illustrating a configuration of a mobile terminal according to an exemplary embodiment of the present invention. Although a mobile phone is depicted as the mobile terminal inFIG. 2 , the present invention is not limited to the mobile phone. - As shown in
FIG. 2 , themobile terminal 200 includes a radio frequency (RF)unit 210, adata processing unit 220, anaudio processing unit 230, aninput unit 240, amemory unit 250, adisplay unit 260, and acontrol unit 270. - Referring to
FIG. 2 , theRF unit 210 is responsible for radio communication of themobile terminal 200. TheRF unit 210 establishes a radio communication channel with a communication system according to a specific communication scheme. Particularly, theRF unit 210 allows themobile terminal 200 to exchange control messages with a web server for acquiring the contents and their ROs. TheRF unit 210 includes an RF transmitter for up-converting and amplifying the transmission signals and an RF receiver for low-noise amplifying and down-converting the received signals. - The
RF unit 210 allows themobile terminal 200 to download DRM contents from a contents server and ROs required for playing the DRM contents from a Rights Issuer (RI) or a Broker server. TheRF unit 210 transmits a Right Object Acquisition Protocol (ROAP) Trigger Request and RO Request messages to the RI or Broker server and receives ROAP Trigger message and RO Response message. These messages are described in more detail later. - The
data processing unit 220 is responsible for processing voice data input by theaudio processing unit 230, text data input through theinput unit 240, and the data incoming from and outgoing to theRF unit 210. Thedata processing unit 220 may include a modem and a codec. The codec includes a data codec for processing packet data and an audio codec for processing audio data. - The
audio processing unit 230 processes the audio signal output by thedata processing unit 220 so as to output the audio signal through a speaker (SPK) in the form of audible sound and processes the audio signal input through a microphone (MIC) so as to output the processed audio signal to thedata processing unit 220. Theaudio processing unit 230 outputs audio data including voice data through the speaker (SPK) in the form of audible sound and outputs the audio signal including voice input through the microphone (MIC) to thedata processing unit 220 in the form of audio data. - Particularly, the
audio processing unit 230 is configured to play the audio data contained in the DRM contents selected by a user. - The
input unit 240 receives various alphanumeric key inputs and function key inputs for configuring and controlling functions of themobile terminal 200 and transfers the key sequences corresponding to the key inputs to thecontrol unit 270. Theinput unit 240 can be implemented with at least one of a touchpad, a normal keypad, a touchscreen, a qwerty keyboard, and specific types of function keys. Particularly, theinput unit 240 generates a key signal for selecting an item listed on a list (DRM contents list or ROs list by content item) displayed on thedisplay unit 260 and transfers the key signal to thecontrol unit 270. Of course, multiple items can be selected from the list in response to the user's requests. - The
memory unit 250 stores at least one application for executing functions associated with the RO acquisition method and user data collected from external devices (contents server, RI, Broker server, and another mobile terminal). The user data include phonebook data, still and motion picture files, audio files, other types of digital contents, DRM-protected contents, and RO. The application can be a program associated with playback of the user data. Particularly, the application can be a content management program for managing and controlling the use of DRM-protected contents. Thememory unit 250 may include at least one buffer for buffering user data generated during the operation of the application. - The
memory unit 250 stores at least one kind of content information associated with each DRM content object. The content information includes a size, a data type, a title, a playable period, a playable number of times, content-related information, a usage restriction, etc. Particularly, the memory unit stores ROs of each DRM content object. - The
display unit 260 displays screens representing the data generated by the application and key manipulation status and preset function information. Thedisplay unit 260 can be implemented with a Liquid Crystal Display (LCD). The LCD may have touchscreen functionality. In this case, thedisplay unit 260 operates as a part of theinput unit 240. - The
control unit 270 controls general operations of themobile terminal 200 and signaling among the internal components of themobile terminal 200. Thecontrol unit 270 controls interoperation of thedata processing unit 220,audio processing unit 230,input unit 240,memory unit 250, anddisplay unit 260. Thecontrol unit 270 may include thedata processing unit 220. - Particularly, the
control unit 270 controls package purchase of multiple DRM contents items and batch RO acquisition for the DRM contents items. Thecontrol unit 270 also controls display of the DRM contents item list, presentation of the items selected from the DRM contents item list, and purchase information of the DRM contents items and ROs. Thecontrol unit 270 also controls generation of the ROAP Trigger Request message and RO Request message. - Although the configuration of the mobile terminal is schematically depicted in
FIG. 2 , the present invention is not limited thereto. For example, themobile terminal 200 may further include at least one of camera module, electric settlement module, Bluetooth module, battery module, and digital broadcast receiver module, and other optional function modules. Also, any of the internal components constituting the mobile terminal may be omitted or replaced with an equivalent functional component according to the functional design of the mobile terminal. - Now, a method for acquiring ROs of DRM contents items (called DRM-RO hereinafter) is described with reference to the operation of the above structured mobile terminal.
-
FIG. 3 is a message flow diagram illustrating a batch DRM-RO acquisition method according to an exemplary embodiment of the present invention. - Referring to
FIG. 3 , if an RO acquisition command is input for acquiring ROs, themobile terminal 200 generates an ROAP Trigger Request message and sends the ROAP Trigger Request message to the RI 250 (S301). The ROAP Trigger Request message includes at least one content identifier (CID). The ROAP Trigger Request message also includes a device identifier (DeID) of themobile terminal 200 and at least one constraint for restricting the usage rights of at least one DRM content object. - In a case that a parent license of at least two child licenses exists, the ROAP Trigger Request message may further includes parent license information. For example, in order to acquire two ROs for a
track 1 and atrack 3 dependent on a music album A, the ROAP Trigger Request message may include an identifier of the music album A in addition to the identifiers of thetrack 1 andtrack 3. In this case, the ROs for thetrack 1 andtrack 3 can be acquired only with the RO for the album A afterward. - By constraining the play permissions of the
track 1 andtrack 3 with a parent RO, eithertrack 1 andtrack 3 can be played up to a total usage times restricted by a constraint of the parent RO. - Also, different parent licenses can be applied. For example, the user may create a content list (e.g., my list and favorite list) as a parent group. In this case, the ROs of the content items listed in the content list are dependent on a group rights object for the content list.
- The DRM content object can be a content item that is received from another device (for example, another terminal or server) but has not acquired corresponding RO or of which RO has expired.
- The
mobile terminal 200 selects an RI for purchasing an RO of at least one DRM content object with reference to an RI's Uniform Resource Location (URL) information contained in the header information of the DRM content object. The ROAP Trigger Request message is sent to the RI URL. - In this embodiment, a DRM Content Format (DCF) having an additional field indicating the address of the RI is proposed for acquiring multiple ROs in an aggregate manner.
-
FIG. 4 is a diagram illustrating a structure of DCF for use in a batch RO acquisition method according to an exemplary embodiment of the present invention. - In
FIG. 4 , aBatchRIURL 410 is an address of RI which supports a batch RO acquisition, and aBatchRIURLLength 420 indicates a length of theBatchRIURL 410. The batch RI information field is added to the Common Header of the DCF as a mandatory field or as an extended header field which is one of mandatory fields contained in the common header. - Returning to
FIG. 3 , themobile terminal 200 selects an RI for acquiring the ROs for at least one DRM contents item with reference to the RI URL address previously stored in thememory unit 250 and attempts to access the RI. Also, themobile terminal 200 can request a Batch RI URL for acquiring the DRM ROs to theRI 250 and attempts to access the RI URL responded by theRI 250. The RI URL received from theRI 250 is stored and used for acquiring the ROs later in an aggregate manner. - If the ROAP Trigger Request message is received, the
RI 250 generates an ROAP Trigger message and sends the ROAP Trigger message to the mobile terminal 200 (S303). The ROAP Trigger message may include price information on the ROs of the content items indicated by the ROAP Trigger Request message. Also, the ROAP Trigger message includes one or more roIDs to identify the ROs corresponding to the content items. The ROAP trigger message may include at least one of roapURL, RI ID, RI Alias, Domain ID, Domain Alias, and Nonce. - The ROAP Trigger request message and ROAP Trigger message can be sent in the form a HTTP GET or a HTTP POST (see RO acquisition mechanism of OMA DRM v2.0). In a group RO acquisition method for acquiring multiple ROs simultaneously, the message length may increase, whereby HTTP POST prefers to send the ROAP messages.
- If the ROAP Trigger message is received, the
mobile terminal 200 displays information on the purchase prices of the ROs of the DRM contents items on the display unit with reference to the information contained in the ROAP trigger message. - Next, the
mobile terminal 200 generates a RO Request message and transmits the RO Request message to the RI 250 (S305). At this time, the DRM content objects indicated by the RO Request message may be identical with those indicated by the ROAP Trigger Request message or not. That is, the list of ROs can be modified by the user. - If the RO Request message is received, the
RI 250 issues the ROs indicated by the RO Request message and transmits an RO Response message (S307) containing the ROs to themobile terminal 200. - Upon receiving the RO Response message, the
mobile terminal 200 extracts ROs from the RO Response message so as to acquire multiple ROs in an aggregate manner. - The RO Response may further include a session ID for establishing a session between the
RI 250 and themobile terminal 200 so as to check whether the RO acquisition is successfully. - In this case, the
mobile terminal 200 establishes a session with theRI 250 on the basis of the session ID and transmits an RO Confirm Request message to theRI 250 in the session. The RO Confirm Request message includes a parameter such as RO Confirm Info for indicating the successful RO acquisition. - In the RO Confirm Request message is received, the
RI 250 ends the RO acquisition procedure or retransmits the ROs on the basis of RO Confirm Info. If it is determined that the multiple ROs are successfully delivered, theRI 250 transmits an RO Confirm Response message to themobile terminal 200. - In addition to the steps of
FIG. 3 , themobile terminal 200 may perform a web transaction with theRI 250 after transmitting the ROAP Trigger Request message. At this time, the permissions and constraints on the use of DRM contents can be negotiated. For example, theRI 250 publishes purchase prices information of the content items listed in the ROAP Trigger Request message, and the mobile terminal transmits the information on the content items that are finally confirmed by the user to theRI 250. If the web transaction is completed by the final user confirmation, theRI 250 may transmit a ROAP Trigger message listing the content items to be delivered to themobile terminal 200. - The batch RO acquisition can be implemented without adding the BatchRIURL field to the DCF structure.
-
FIG. 5 is a message flow diagram illustrating a batch DRM-RO acquisition method according to another exemplary embodiment of the present invention. In this embodiment, the BatchRIURL is not provided in the DCF structure, but, each content item has the URL of RI delivered the content item. - Referring to
FIG. 5 , if a batch RO acquisition command is input by the user, themobile terminal 200 generates a ROAP Trigger Request message containing CIDs of individual DRM content objects and sends the ROAP Trigger Request message to theRI 250. Here, themobile terminal 200 sends the ROAP Trigger Request message (S501) to theRI 250 with reference to an RI URL of one of multiple DRM content objects. - If the
RI 250 received the ROAP Trigger Request message has no group RO transmission capability, theRI 250 sends a Redirection message notifying a new URL of another RI, which has the group RO transmission capability, to the mobile terminal 200 (S503). The Redirection message can be one of HTTP 302,HTTP 303, andHTTP 307 messages proposed in OMA DRM. - If the Redirection message is received, the
mobile terminal 200 transmits the ROAP Trigger Request message to theRI 300 indicated by the RI URL contained in the Redirection message (S505). Accordingly, themobile terminal 200 acquires the ROs from theRI 300 in an aggregation manner. - As described above, the batch RO acquisition method according to an exemplary embodiment of the present invention allows the mobile terminal to acquire multiple ROs in the aggregation manner through a signal purchase procedure, resulting in improving user convenience.
- A multi-RI involved batch RO acquisition method, in which individual ROs are acquired from different RIs in a batch manner, is described hereinafter.
-
FIG. 6 is a schematic diagram illustrating a batch DRM-RO acquisition system according to an exemplary embodiment of the present invention. - As shown in
FIG. 6 , a batch DRM-RO acquisition system according to an embodiment of the present invention includes amobile terminal 200, a plurality ofRIs 610 to 630, and aBroker server 400 located between themobile terminal 200 and the arbitrary number of RIs. - The
Broker server 400 acts as a signal service point for managing processes associated with RO acquisition (message generation and exchange, authentication, and digital signature, etc.). The broker server-involved batch RO acquisition procedure is described hereinafter in more detail with reference toFIG. 7 . -
FIG. 7 is a message flow diagram illustrating a batch RO acquisition method according to another exemplary embodiment of the present invention. - Referring to
FIG. 7 , if an RO acquisition command is input, themobile terminal 200 generates an ROAP Trigger Request message containing a CID list listing CIDs of DRM content objects indicated by the RO acquisition command and transmits the ROAP Trigger Request message to the broker server 400 (S701). The ROAP Trigger Request message is structured identically with those of the other embodiments depicted inFIGS. 3 and 5 . The ROAP Trigger Request message may further include RI URLs of theRIs 610 to 630 that provide the the respective content objects indicated by the CIDs. - If the ROAP Trigger Request message is received, the
broker server 400 extracts the CIDs of the content objects from the ROAP Trigger Request message by RI URL and generates new ROAP Trigger Request messages destined to theRIs 610 to 630 corresponding to the respective RI URLs. Next, thebroker server 400 transmits the new ROAP Trigger Request messages to thecorresponding RIs 610 to 630 (S703). At this time, each new ROAP Trigger Request message contains at least one CID of the content object provided by the RI to which it is destined. - Each of the
RIs 610 to 630 receives only the new ROAP Trigger Request message having its RI URL. In response to the new ROAP Trigger Request message, each RI transmits an ROAP Trigger message to the broker server 400 (S705). The ROAP trigger message contains purchase information on the content objects indicated by the CIDs listed on the CID list of extracted from the new ROAP Trigger Request message. The ROAP trigger messages are structured identically with those of the embodiments depicted inFIGS. 3 and 5 . - The
broker server 400 receives the ROAP Trigger messages transmitted by theRIs 610 to 630 and transmits a new ROAP Trigger message containing total purchase information to the mobile terminal 200 (S707). The total purchase information is created by packaging the purchase information extracted from the ROAP Trigger messages received from the respective RIs. - If the new ROAP Trigger message is received, the
mobile terminal 200 displays the total purchase information extracted from the ROAP Trigger message on the display unit. Next, themobile terminal 200 generates an RO Request message containing CIDs of the content objects which is finally decided by the user and transmits the RO Request message to the broker server 400 (S709). The CID list of the ROAP Trigger Request message may be identical with or different from the CID list of the RO Request message. That is, the the CIDs listed on the CID list of the ROAP Trigger Request message can be changed by the user's final decision. InFIG. 7 , it is assumed that the CIDs of the DRM content objects to purchase are changed in the RO Request message. The RO Request message transmitted by themobile terminal 200 is formatted as shown in Table 1. - If the RO Request message is received, the
broker server 400 transmits the RO Request message to at least one of theRIs 610 to 630 according to the RI URLs indicated by the RO request message (S711). At this time, the RIs as destination of the RO Request message are determined by the CIDs of the content objects that are finally decided to be purchased by the user. That is, thebroker server 400 extracts the CIDs from the RO Request message transmitted by themobile terminal 200 and generates individual new RO Request messages destined to the respective RIs. The new request message transmitted by thebroker server 400 is formatted as shown in Table 1. - In
FIG. 7 , theRIs mobile terminal 200 using the RO Request message transmitted by themobile terminal 200. The authentication may be performed at the initial connection of the mobile terminal and skipped from then. - Both the RO Request messages transmitted by the
mobile terminal 200 and thebroker server 400 are structured in the following format of Table 1. -
TABLE 1 <element name=″roRequest” type=”roap:RORequest”/> <complexType name=”RORequest”> <annotation> <documentation xml :lang=″en“> Message sent from Device to RI to request an RO. </documentation> </annotation> <complexContent> <extension base=”roap:Request”> <sequence> <element name=”devicelD” type=″roap:Identifier”> <element name=”domainID” type=″roap:DomainIdentifier” minOccurs=”0”/> <element name~″ riID″ type=″roap:Identifier”/> <element name=″nonce″ type=″roap:Nonce”/> <element name=″time″ type=″dateTime″/> <element name= “roInfo”> <complexType> <sequence maxOccurs=”unbounded”> <element name=″roID″ type=″ID″/> <element name=″ dcfHash” minOccurs=″0″> <complexType> <sequence> <element name=″hash” type=”base64Binary”/> </sequence> <attribute name=″algorithm″ type=”anyURI” default=http://wwvv.w3.org/2000/09/xmldsig# sha1/> </complexType> </element> </sequence> </complexType> </element> <element name=″certificateChain″ type=″roap:CertificateChain″ minOccurs=″0″/> <element name=″extensions″ type=″roap:Extensions″ mninOccurs=″0”/> <element name=″signature” type=”base64Binary”/> </sequence> </extension> </complexContent> </complexType> - As shown in Table 1, the RO Request message according to an exemplary embodiment of the present invention includes at least one of parameters such as device ID (deviceID), domain ID (domainID), RI ID (riID), nounce, time, RO information (roInfo), certification chain (certificateChain), extensions, and signature. The nonce element is a parameter generated randomly. The signature element is a digital signature of the mobile terminal and it is included in the RO Request message for verifying the mobile terminal.
- The
RIs RIs - Upon receiving the RO Response messages from the
RIs broker server 400 extracts the ROs from the RO Response messages. Thebroker server 400 performs batch processing of the digital signatures for inter-authentication between themobile terminal 200 and theRIs RIs broker server 400 is formatted as shown in Table 2. - The
broker server 400 can verify a public key certificate of themobile terminal 200 using an Online Certificate Status Protocol (OCSP). The OCSP is a protocol to verify a public key certificate of themobile terminal 200 in real time. That is, the OCSP checks whether the public key certificate of the mobile terminal is aborted. Also, a Certificate Revocation List (CRL) can be used. - The
broker server 400 can verify the validity of the public key certificate of themobile terminal 200 using the OCSP in an initial registration process. Also, public key certificate verification can be performed in response to the request of thebroker server 400 orRIs 610 to 630. For example, in a case that a DRM time (a secure time) of a specific content object is not matched with the time of RI (i.e., the difference of the DRM time and the local time of RI orbroker server 400 is greater than a threshold value) in the DRM-RO acquisition procedure, the public key certificate of themobile terminal 200 can be verified. The verification on the public key certificate of the broker server or RI can be performed by exchanging the OCSP Request and OCSP Response messages with an OCSP responder. - The
mobile terminal 200 received the RO Response message from thebroker server 400 extracts the ROs contained in the RO Response message so as to acquire the ROs of the DRM contents in an aggregate manner. - The RO Response message transmitted by the
RIs 610 to 630 or thebroker server 400 is structured in the following format of Table 2. -
TABLE 2 <element name=“roResponse” type=“roap:ROResponse”/> <complexType name=”ROResponse”> <annotation> <documentation xml:lang=“en” > Message sent from RI to Device in response to a roRequest message. </documentation> </annotation> <complexContent> <extension base=“roap:Response”> <sequence minOccurs=“0”> <element name=“deviceID” type=“roap:Identifier”/> <element name=“rilD” type=“roap:Identifier”/> <element name=“nonce” type=“roap:Nonce” minOccurs=“0”/> <element name=“protectedRO” type=“roap:ProtectedRO” maxOccurs=“unbounded”/> <element name=“certificateChain” type=“roap:CertificateChain” minOccurs=“0”/> <element name=“ocspResponse” type=“base64Binary” minOccurs=“0” maxOccurs=“unbounded”/> <element name=“extensions” type=“roap:Extensions” minOccurs=“0”/> <element name=“signature” type=“base64Binary”/> </sequence> <attribute name=“algorithm” type=“anyURL” default=http://www.w3.org/2000/09/xmldsig #sha1/> </extension> </complexContent> </complexType> - As shown in Table 2, the RO Response message according to an exemplary embodiment of the present invention includes at least one of parameter such as deviceID, riID, nonce, protectedRO, certificateChain, ocspResponse, and signature. The RO Response transmitted by the broker server may further include a broker server ID (brokerID). The brokerID can be replaced by the riID. The nonce element is a random value designated by the RI and can be omitted. The signature element is a digital signature of the RI and it can be used in the authentication procedure. The protected RO may include a plurality of protected ROs. That is the RO Response message contains at least one RO for at least one DRM content object indicated by the RO requested message.
- The RO Response message may include protected ROs in the form of “protectedRO” elements for respective DRM content objects, and each protectedRO includes at least one “Permission” element specifying the actual usage of the content object and at least one “constraint” element for restricting the permission on the usage of the content object. That is, the “constraint” may be dependent on the “permission.” For example, the permission element may be one of “play”, “display”, “execute”, “print”, and “export”, and the constraint element may be one of “count”, “timed-count”, “datetime”, “interval”, “individual”, and “system.”
- In a case that the
broker server 400 and theRIs 610 to 630 are authenticated with each other, the RO Response messages transmitted by thebroker server 400 and theRIs 610 to 630 carry the protected ROs without additional security process. If thebroker server 400 and theRIs 610 to 630 are not authenticated with each other (i.e., Insecure communication is performed), a Mutual authentication process may be performed between thebroker server 400 and theRIs 610 to 630. - The digital signature of the
broker server 400 is verified as following process. In a case that themobile terminal 200 is authenticated (i.e., a secure communication is established), thebroker server 400 transmits an RO Response message carrying only its own signature to themobile terminal 200. On the other hand, if themobile terminal 200 is not authenticated (i.e., an insecure communication is established), thebroker server 400 verifies the digital signatures of theRIs 610 to 630 and transmits an RO Response message containing its signature as well as the digital signature of theRIs 610 to 630. In the case that the digital signatures of all theRIs 610 to 630 are contained in the RO Response message. The message format of the RO Response message may be changed. - Preferably, when it fails to acquire any of the multiple ROs requested by the
mobile terminal 200, thebroker server 400 or a specific RI reports the information on the RO failed to receive and the reason of the RO acquisition failure. If the acquisition failure message is received from thebroker server 400, themobile terminal 200 outputs an alert such as an acquisition failure information or acquisition failure alarm. - In the above manner, the
broker server 400 performs a mutual authentication by verify the digital signatures of themobile terminal 200 and theRIs 610 to 630. This kind of architecture relieves the mobile terminal 200 from verifying every RI individually since themobile terminal 200 verifies only the digital signature of thebroker server 400. - Although not shown in
FIG. 7 , the mobile terminal may perform a web transaction with thebroker server 400 after transmitting the ROAP Trigger Request message. During the web transaction, thebroker server 400 receives the purchase information of the content objects from therespective RIs - For example, if the
broker server 400 publishes the purchase information on a web page, themobile terminal 200 composes a purchase list in response to the user input for selecting the final content objects to be purchased. At this time, thebroker server 400 generates at least one ROAP Trigger Request message on the basis of the purchase list received from themobile terminal 200 and transmits the ROAP Trigger Request message to at least one RI. - Although the broker server-involved batch RO acquisition architecture and method are described with reference to
FIGS. 6 and 7 , the present invention is not limited thereto. For example, the batch RO acquisition architecture and method can be accomplished by embedding the functionality of the broker server within the respective RIs without an additional broker server. A batch RO acquisition system and method without engagement of the broker server is described hereinafter. -
FIG. 8 is a schematic block diagram illustrating a batch RO acquisition system according to another exemplary embodiment of the present invention. In this embodiment, the batch RO acquisition system is deployed in a ring network topology. - Referring to
FIG. 8 , amobile terminal 200 transmits an RO Request message to thefirst RI 810. The RO Request message may contain at least one RI URL including the URL of thefirst RI 810 that provides the CIDs of the content objects to be purchased. - The
mobile terminal 200 extracts at least one CID and at least one RI URL which provides the CID and transmits the RO Request message to the RI URL (inFIG. 8 , the URL of the first RI 810). - In the case that multiple RI URLs are contained in the RO Request message, one of the RI URLs is selected according to a preset user configuration. That is, the RI URL can be selected randomly, in an order of preset priority, in an ascendant or descendent order of the RIs, or the like.
- The
first RI 810 received the RO Request message performs the following processes: - 1) Authentication of Device
- 2) If pass, creating ROs.
- 3) Adding signature
- 4) Creating RO Response
- That is, the
first RI 810 authenticates themobile terminal 200 and, if the mobile terminal passes the authentication process, generates at least one RO and adds its signature to the RO. The authentication process can be performed using the OCSP. - The authentication can be performed in an initial registration of the mobile terminal or in response to a request of the RI. For example, in a case that the DRM time of a specific content object is different from the device time of the RI (i.e., the difference between the DRM time and the RI time is greater than a predetermined value), the RI may request re-authentication. The authentication of the mobile terminal may be performed by exchanging the OCSP Request message and OCSP Response message between the RI and an OCSP Responder.
- Next, the
first RI 810 creates an RO Response message containing the information on the RO and its signature. Thefirst RI 810 transmits the RO Request message to one of the RI URLs (i.e., the second RI 820) contained in the RO Request message. At this time, thefirst RI 810 may transmit the RO Response message together with the RO Request message. Thefirst RI 810 may delete its URL from the RO Request message before transmitting the RO Request message to thesecond RI 820. - If the RO Request message is received, the
second RI 820 performs the following processes: - 1) Authentication of Device
- 2) Authentication of previous RI
- 3) If pass, creating ROs
- 4) Adding signature (or replacing signature)
- 5) Creating RO Response
- That is, if the RO Request message is received, the
second RI 820 performs authentication of themobile terminal 200 and, if the mobile terminal passes the authentication test, creates at least one RO and adds its signature to the RO. Thesecond RI 820 performs the authentication of thefirst RI 810. - The authentication process on the
mobile terminal 200 may skipped. That is, since themobile terminal 200 is authenticated by thefirst RI 810, thesecond RI 820 skips the authentication of themobile terminal 200 in trust of the authentication by thefirst RI 810. In this case, thefirst RI 810 informs thesecond RI 820 of the authentication of themobile terminal 200, and thesecond RI 820 checks whether the RO Request message is received from themobile terminal 200 or another RI. - The
second RI 820 may add its signature to the RO or replace the signature of thefirst RI 810 with its own signature. - Next, the
second RI 820 creates an RO Response message containing the information of the RO and at least one signature. Sequentially, thesecond RI 820 transmits the RO Request message to one of RI URLs contained in the RO Request message (i.e., the third RI 830). At this time, the RO Response message is transmitted together with the RO Request message. Thesecond RI 820 may delete its URL from the RO Request message before transmitting to thethird RI 830. - The
third RI 830 andN'th RI 840 perform the identical procedure carried out by thesecond RI 820. TheN'th RI 840 recognizes that there is no other RI to transmit the RO Request message and transmits an RO Response message containing the ROs issued by previous RIs and/or by itself and at least one signature to themobile terminal 200. TheN'th RI 840 can recognize itself as the final RI by checking the RI URLs contained in the RO Request message since the RO Request message received by the final RI containing only one RI URL (when the previous RIs delete their RI URL from the RO Request message). Also, theN'th RI 840 can recognize itself as the final RI by checking the signatures added in the RO Response message. -
FIG. 9 is a schematic block diagram illustrating an aggregation RO acquisition system according to another exemplary embodiment of the present invention. In this embodiment, the batch RO acquisition system is implemented with a push mechanism. - Referring to
FIG. 9 , amobile terminal 200 transmits an RO Request message to afirst RI 910. The RO Request message contains at least one RI URL including the URL of thefirst RI 910 that provides CIDs of the content objects to be purchased. - The
mobile terminal 200 extracts at least one CID and at least one RI URL which provides the CID of the content object to be purchased and transmits the RO Request message to the RI URL (inFIG. 9 , the URL of the first RI 910). - In the case that multiple RI URLs are contained in the RO Request message, one of the RI URLs is selected according to a preset user configuration. That is, the RI URL can be selected randomly, in an order of preset priority, in an ascendant or descendent order or the RIs, or the like.
- The
first RI 910 receives the RO Request message transmitted by themobile terminal 200 and performs authentication of themobile terminal 200 on the basis of the RO Request message. If the mobile terminal 200 passes the authentication test, thefirst RI 910 creates a RO Response message containing at least one RO and its signature and transmits the RO Response message to themobile terminal 200. Thefirst RI 910 also transmits the RO Request message to asecond RI 920 with reference to the RI URLs contained in the RO Request message. At this time, thefirst RI 910 may delete its URL from the RO Request message. - If the RO Request message is received from the
first RI 910, thesecond RI 920 performs authentication of themobile terminal 200. If the mobile terminal 200 passes the authentication test, thesecond RI 920 creates an RO Response message containing at least one RO and its signature to themobile terminal 200. Thesecond RI 920 also may perform authentication of thefirst RI 910. Next, thesecond RI 920 transmits the RO Request message to one of the RI URLs contained in the RO Request message (in this embodiment, the third RI 930). At this time, thesecond RI 920 may delete its URL from the RO Request message. - The authentication of the
mobile terminal 200 may be skipped. That is, since themobile terminal 200 is authenticated by thefirst RI 910, thesecond RI 920 skips the authentication of themobile terminal 200 in trust of the authentication by thefirst RI 910. In this case, thefirst RI 910 informs thesecond RI 920 of the authentication of themobile terminal 200, and thesecond RI 920 checks whether the RO Request message is received from themobile terminal 200 or another RI. Thesecond RI 920 may add its signature to the RO or replace the signature of thefirst RI 910 with its own signature. - The
third RI 930 andN'th RI 940 perform the identical procedure carried out by thesecond RI 920. TheN'th RI 940 recognizes that there is no other RI to transmit the RO Request message and transmits an RO Response message. TheN'th RI 940 can recognize itself as the final RI by checking the RI URL remained in the RO Request message in which other RI URLs are deleted by previous RIs. - Although not shown in
FIGS. 8 and 9 , at least one of the RIs verifies a public key certificate of the mobile terminal using the OCSP. The OCSP is a protocol to verify the public key certificate of themobile terminal 200 in real time. That is, the OCSP checks whether the public key certificate of the mobile terminal is aborted. - In this embodiment, a heterogeneous RI environment is assumed in which the different types of RIs are deployed. In a case that the mobile terminal is not registered with the RIs according to a typical registration standard, or a re-registration of the mobile terminal is required, the ROAP registration process should be performed. In the standard, an ROAP registration protocol and a registration protocol is specified.
- The standard specifies that the registration protocol is executed as following situation.
- 1) at first contact
- 2) update of the exchanged security information
- 3) DRM time
- That is, the registration protocol is executed when the mobile terminal attempts to initially contact to the RI server, the exchanged security information is required to be updated, and the DRM time (secure time) is inaccurate.
- In the heterogeneous RI environment according to an exemplary embodiment, the mobile terminal can register with different types of RIs simultaneously. The mobile terminal also initiates the registration protocol whenever attempting the registration with the respective RIs. As described above, the mobile terminal may initiate the registration protocol only one time with the first RI and skip the initiation of the registration protocol with other RIs.
- In order to execute the registration protocol, the mobile terminal and the RI server exchanges messages such as “Device Hello”, “RI Hello”, “Registration Request”, and Registration Response.” The mobile terminal and the RI perform the registration procedure by exchanging the above messages. These messages are formatted as shown in Tables 3 to 6.
-
TABLE 3 <element name=“deviceHello” type=“roap:DeviceHello”/> <complexType name=“DeviceHello”> <annotation> <documentation xml:lang=“en”> Message sent from Device to RI to establish an RI Context. </documentation> </annotation> <complexContent> <extension base=“roap:Request”> <sequence> <element name=“version” type=“roap:Version”/> <element name=“deviceID” type=“roap:Identifier” maxOccurs=“unbounded”/> <element name=“supportedAlgorithm” type=“anyURI” minOccurs=“0” maxOccurs=“unbounded”/> <element name=“extensions” type=“roap:Extensions” minOccurs=“0”/> </sequence> </extension> </complexContent> </complexType> - Table 3 shows an exemplary “Device Hello” message firstly sent by the mobile terminal in the ROAP registration protocol.
-
TABLE 4 <element name=“riHello” type=“roap:RIHello”/> <complexType name=“RIHello”> <annotation> <documentation xml:lang=“en”> Message sent from RI to Device in response to a deviceHello message. </documentation> </annotation> <complexContent> <extension base=“roap:Response”> <sequence minOccurs=“0”> <element name=“selectedVersion” type=“roap:Version”/> <element name=“riID” type=“roap:Identifier”/> <element name=“selectedAlgorithm” type=“anyURI” maxOccurs=“unbounded” minOccurs=“0”/> <element name=“riNonce” type=“roap:Nonce”/> <element name=“trustedAuthorities” type=“roap:KeyIdentifiers” minOccurs=“0”/> <element name=“serverInfo” type=“base64Binary” minOccurs=“0”/> <element name=“extensions” type=“roap:Extensions” minOccurs=“0”/> </sequence> <attribute name=“sessionId” type=“string”/> </extension> </complexContent> </complexType> <complexType name=“KeyIdentifiers”> <sequence minOccurs=”0” maxOccurs=“unbounded”> <element name=“keyIdentifier” type=“roap:KeyIdentifier”/> </sequence> </complexType> - Table 4 shows an exemplary “RI Hello” message which is sent in response to the “Device Hello” message.
-
TABLE 5 <element name=“registrationRequest” type=“roap:RegistrationRequest”/> <complexType name=“RegistrationRequest”> <annotation> <documentation xml:lang=“en”> Message sent from Device to RI to request registration. </documentation> </annotation> <complexContent> <extension base=“roap:Request”> <sequence> <element name=“nonce” type=“roap:Nonce”/> <element name=“time” type=“roap:dateTimeOrUndefined”/> <element name=“certificateChain” type=“roap:CertificateChain” minOccurs=“0”/> <element name=“trustedAuthorities” type=“roap:KeyIdentifiers” minOccurs=“0”/> <element name=“serverInfo” type=“base64Binary” minOccurs=“0”/> <element name=“extensions” type=“roap:Extensions” minOccurs=“0”/> <element name=“signature” type=“base64Binary”/> </sequence> <attribute name=“sessionId” type=“string” use=“required”/> </extension> </complexContent> </complexType> - Table 5 shows an exemplary “Registration Request” message which is transmitted from the mobile terminal to the RI for requesting registration.
-
TABLE 6 <element name=“registrationResponse” type=“roap:RegistrationResponse”/> <complexType name=“RegistrationResponse”> <annotation> <documentation xml:lang=“en”> Message sent from RI to Device in response to a registrationRequest message. </documentation> </annotation> <complexContent> <extension base=“roap:Response”> <sequence minOccurs=“0”> <element name=“riURL” type=“anyURI”/> <element name=“certificateChain” type=“roap:CertificateChain” minOccurs=“0”/> <element name=“ocspResponse” type=“base64Binary” minOccurs=“0” maxOccurs=“unbounded”/> <element name=“extensions” type=“roap:Extensions” minOccurs=“0”/> <element name=“signature” type=“base64Binary”/> </sequence> <attribute name=“sessionId” type=“string”/> </extension> </complexContent> </complexType> - Table 6 shows an exemplary “Registration Response” message which is transmitted in response to the “Registration Request” message.
- Although not shown in
FIGS. 8 and 9 , if an error occurs at a specific RI (e.g., RO Request or RO Response message is lost), it is preferred for the mobile terminal to display the information on the erroneous RI or erroneous content object and the reason of the error on the display screen. - As described above, the RO acquisition procedure is explained in association with the operations of the mobile terminal, RIs, and broker server. The present invention is not limited thereto. For example, the RO acquisition procedure can be applied between the client terminal such as personal computer and a server, or between two servers.
- As described above, the rights object acquisition method and system of the present invention enables a mobile terminal to acquire multiple rights objects in a batch processing manner, resulting in improvement of user convenience. Also, the rights object acquisition method and system of the present invention can be implemented in association with a quantity discount system so as to improve sales of the digital contents, resulting in development of contents business.
- Also, the rights object acquisition method and system of the present invention introduces a broker server which provides a single service point for verifying digital signatures of a mobile terminal and RIs so as to reduce complicated authentication processes between a mobile terminal and every RIs, thereby relieving the processing load of the mobile terminal, improving performance of the mobile terminal, and reducing multiple RO acquisition time.
- Also, the rights object acquisition method and system of the preset invention enables a mobile terminal to acquire multiple ROs without transmitting RO Request messages to all RIs issuing the ROs, resulting in reducing traffic redundancy.
- Although the present disclosure has been described with an exemplary embodiment, various changes and modifications may be suggested to one skilled in the art. It is intended that the present disclosure encompass such changes and modifications as fall within the scope of the appended claims.
Claims (32)
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR2007-0056400 | 2007-06-09 | ||
KR10-2007-0056400 | 2007-06-09 | ||
KR1020070056400A KR101434402B1 (en) | 2007-06-09 | 2007-06-09 | Method and apparatus for obtaining right objects of contents in a mobile terminal |
Publications (3)
Publication Number | Publication Date |
---|---|
US20080307530A1 US20080307530A1 (en) | 2008-12-11 |
US20180014196A9 true US20180014196A9 (en) | 2018-01-11 |
US9961549B2 US9961549B2 (en) | 2018-05-01 |
Family
ID=40032693
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/156,490 Expired - Fee Related US9961549B2 (en) | 2007-06-09 | 2008-06-02 | Right object acquisition method and system |
Country Status (4)
Country | Link |
---|---|
US (1) | US9961549B2 (en) |
EP (1) | EP2018019B1 (en) |
KR (1) | KR101434402B1 (en) |
CN (1) | CN101321168B (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190253954A1 (en) * | 2013-05-10 | 2019-08-15 | Cloudstreet Oy | Managing wireless transmission capacity |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101553834B1 (en) * | 2007-09-07 | 2015-10-01 | 삼성전자주식회사 | Method and apparatus for processing multimedia contents and meta data |
KR101015891B1 (en) * | 2007-10-09 | 2011-02-23 | 한국전자통신연구원 | Method of providing interoperability between DRMs and DRM module thereof |
US8438113B2 (en) * | 2010-01-25 | 2013-05-07 | Richard Stahl | Automated digital express gateway for licensing and acquiring rights and permissions for 3rd party copyrighted content |
JP5527912B2 (en) * | 2010-04-02 | 2014-06-25 | サムスン エレクトロニクス カンパニー リミテッド | Encryption key management method and system for broadcast service |
US9124906B2 (en) * | 2010-06-11 | 2015-09-01 | Disney Enterprises, Inc. | System and method for simplifying discovery of content availability for a consumer |
WO2012096791A2 (en) * | 2011-01-12 | 2012-07-19 | Ackerly William Rodgers | Methods and systems for distributing cryptographic data to authenticated recipients |
US9525707B2 (en) * | 2014-12-23 | 2016-12-20 | Mcafee, Inc. | Incident response tool using a data exchange layer system |
US10599662B2 (en) | 2015-06-26 | 2020-03-24 | Mcafee, Llc | Query engine for remote endpoint information retrieval |
US10523646B2 (en) | 2015-08-24 | 2019-12-31 | Virtru Corporation | Methods and systems for distributing encrypted cryptographic data |
CN105997822A (en) * | 2016-07-11 | 2016-10-12 | 李俏梅 | Mask powder made from pomelo peels and preparation method thereof |
CN107993058A (en) * | 2016-10-27 | 2018-05-04 | 阿里巴巴集团控股有限公司 | A kind of Information Authentication method and system and server |
CN109065058B (en) | 2018-09-30 | 2024-03-15 | 合肥鑫晟光电科技有限公司 | Voice communication method, device and system |
US11531777B2 (en) | 2019-01-30 | 2022-12-20 | Virtru Corporation | Methods and systems for restricting data access based on properties of at least one of a process and a machine executing the process |
JP7238558B2 (en) * | 2019-04-08 | 2023-03-14 | 富士フイルムビジネスイノベーション株式会社 | Authentication mediation device and authentication mediation program |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7117180B1 (en) * | 1994-11-23 | 2006-10-03 | Contentguard Holdings, Inc. | System for controlling the use of digital works using removable content repositories |
US6983371B1 (en) * | 1998-10-22 | 2006-01-03 | International Business Machines Corporation | Super-distribution of protected digital content |
AU2002219860A1 (en) | 2000-11-10 | 2002-06-11 | Full Audio Corporation | Digital content distribution and subscription system |
JP2002297945A (en) | 2001-03-30 | 2002-10-11 | Nippon Telegr & Teleph Corp <Ntt> | Content intermediary method, device, program and recording medium |
US20030126086A1 (en) | 2001-12-31 | 2003-07-03 | General Instrument Corporation | Methods and apparatus for digital rights management |
US20040039916A1 (en) * | 2002-05-10 | 2004-02-26 | David Aldis | System and method for multi-tiered license management and distribution using networked clearinghouses |
US7089594B2 (en) | 2003-07-21 | 2006-08-08 | July Systems, Inc. | Application rights management in a mobile environment |
EP1686519A4 (en) * | 2003-11-21 | 2008-05-28 | Matsushita Electric Ind Co Ltd | License acquiring system, server apparatus and terminal apparatus |
MXPA06010776A (en) * | 2004-03-22 | 2006-12-15 | Samsung Electronics Co Ltd | Authentication between device and portable storage. |
KR101100391B1 (en) * | 2004-06-01 | 2012-01-02 | 삼성전자주식회사 | Method for playbacking content using portable storage by digital rights management, and portable storage for the same |
US8949469B2 (en) * | 2004-08-14 | 2015-02-03 | Telefonaktiebolaget L M Ericsson (Publ) | Method for software program synchronization |
CN100358287C (en) * | 2004-11-01 | 2007-12-26 | 华为技术有限公司 | Method for obtaining digital contents |
US20060230145A1 (en) | 2005-04-08 | 2006-10-12 | Microsoft Corporation | Methods and systems for a multi-service federated content distribution network |
US8554927B2 (en) * | 2005-10-11 | 2013-10-08 | Lg Electronics Inc. | Method for sharing rights object in digital rights management and device and system thereof |
CN101283540B (en) * | 2005-10-11 | 2013-02-13 | Lg电子株式会社 | Method and device for sharing rights object in digital rights management and system thereof |
CN100419772C (en) * | 2006-01-13 | 2008-09-17 | 华为技术有限公司 | Method and system for merging copyright control information in digital copyright managing system |
US7555464B2 (en) * | 2006-03-01 | 2009-06-30 | Sony Corporation | Multiple DRM management |
US20080033992A1 (en) * | 2006-08-03 | 2008-02-07 | Microsoft Corporation | Related Media Content Assets |
WO2008088163A1 (en) * | 2007-01-15 | 2008-07-24 | Samsung Electronics Co., Ltd. | Rights object acquisition method of mobile terminal in digital right management system |
US8539543B2 (en) * | 2007-04-12 | 2013-09-17 | Microsoft Corporation | Managing digital rights for multiple assets in an envelope |
-
2007
- 2007-06-09 KR KR1020070056400A patent/KR101434402B1/en active IP Right Grant
-
2008
- 2008-05-28 EP EP08157047.5A patent/EP2018019B1/en not_active Not-in-force
- 2008-06-02 US US12/156,490 patent/US9961549B2/en not_active Expired - Fee Related
- 2008-06-06 CN CN200810108909.3A patent/CN101321168B/en not_active Expired - Fee Related
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190253954A1 (en) * | 2013-05-10 | 2019-08-15 | Cloudstreet Oy | Managing wireless transmission capacity |
US11051232B2 (en) * | 2013-05-10 | 2021-06-29 | Nokia Technologies Oy | Managing wireless transmission capacity |
Also Published As
Publication number | Publication date |
---|---|
CN101321168A (en) | 2008-12-10 |
KR20090003422A (en) | 2009-01-12 |
CN101321168B (en) | 2015-01-21 |
EP2018019A1 (en) | 2009-01-21 |
EP2018019B1 (en) | 2017-08-23 |
US9961549B2 (en) | 2018-05-01 |
US20080307530A1 (en) | 2008-12-11 |
KR101434402B1 (en) | 2014-08-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9961549B2 (en) | Right object acquisition method and system | |
US8656156B2 (en) | Method and terminal for authenticating between DRM agents for moving RO | |
US7617158B2 (en) | System and method for digital rights management of electronic content | |
EP1529371B1 (en) | Monitoring of digital content provided from a content provider over a network | |
US7415439B2 (en) | Digital rights management in a mobile communications environment | |
EP2063675B1 (en) | Robust and flexible Digital Rights Management (DRM) involving a tamper-resistant identity module | |
US9160748B2 (en) | Rights object acquisition method of mobile terminal in digital right management system | |
US20050021467A1 (en) | Distributed digital rights network (drn), and methods to access operate and implement the same | |
US9177112B2 (en) | Method and device for communicating digital content | |
Messerges et al. | Digital rights management in a 3G mobile phone and beyond | |
US20070168293A1 (en) | Method and apparatus for authorizing rights issuers in a content distribution system | |
EP1407360A4 (en) | Methods and systems to distribute content via a network utilizing distributed conditional access agents and secure agents, and to perform digital rights management (drm) | |
GB2415808A (en) | Encoding content to two parts for digital rights management (DRM) | |
AU2001290653B2 (en) | A distributed digital rights network (DRN), and methods to access, operate and implement the same | |
KR100623293B1 (en) | Method for authenticating the subscriber of mobile terminal using callback message |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: SAMSUNG ELECTRONICS CO., LTD., KOREA, REPUBLIC OF Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:LEE, KYUNG KEUN;LEE, JONG KERL;REEL/FRAME:021090/0845 Effective date: 20080527 |
|
FEPP | Fee payment procedure |
Free format text: PETITION RELATED TO MAINTENANCE FEES GRANTED (ORIGINAL EVENT CODE: PTGR) |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
FEPP | Fee payment procedure |
Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
LAPS | Lapse for failure to pay maintenance fees |
Free format text: PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
STCH | Information on status: patent discontinuation |
Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362 |
|
FP | Lapsed due to failure to pay maintenance fee |
Effective date: 20220501 |