The present invention relates to a digital content distribution system, and more specifically to a digital content distribution system that allows protection of rights concerning digital content data.
Systems for distributing digital works such as music, video, game and the like via the Internet, digital broadcasting or the like have been developed in recent years, and some of them are in the stage of practical use. In keeping pace with the development of such content distribution systems, content use control techniques for controlling the number of reproductions, moving and copying of distributed contents are under consideration from the viewpoint of copyright protection.
In the conventional digital content distribution system, as disclosed in Japanese Laid-Open Patent Application No. 2000-48076, for example, a use condition of a content for each user as well as the content are distributed to the user terminal, and the user terminal manages the use of the content based on the distributed use condition.
Suppose, for example, that a user purchases a right to view a movie titled “EIGA” 3 times. The user terminal receives the use condition indicating that the user “can view the movie ‘EIGA’ 3 times” as well as the movie content itself from the distribution server, and manages the reproduction of the content according to this use condition. Every time the user views the content “EIGA” once on the user terminal, the user terminal performs the processing of subtracting 1 from the maximum number of views, that is the use condition under the management of the user terminal, and then performs the processing of canceling permission for the user to view it at the time when the maximum number of views becomes 0.
However, according to the existing techniques, the user does not need to access the server again because the user can use the content on the terminal as long as the use condition received on the user terminal is satisfied. Therefore, there is a problem that the server cannot obtain the information concerning the terminal such as history logs of the content at an arbitrary timing.
In view of the above problem, the first object of the present invention is to provide a mechanism for allowing the terminal to obtain all the use rights and the server to invalidate a part of the use rights or cancel the invalidation at an arbitrary timing before all the use rights are consumed. In addition, the second object of the present invention is, by use of the first mechanism, to provide a mechanism for causing the terminal to report the information accumulated in the terminal only, such as content history logs, at an arbitrary timing set by the server.
In order to solve the above problem, the digital content distribution system of the present invention is a digital content distribution system comprising a right management server and a user terminal which are connected to each other via a communication network, said right management server issuing, to the user terminal, license information for permitting a user to use a content, and said user terminal using the content based on the license information obtained from the right management server, wherein the right management server includes: a first condition generation unit operable to generate a first condition based on a content use right owned by the user, said first condition being a condition for permitting the user to use the content; a second condition generation unit operable to generate a second condition that indicates a part or all of the use permitted under the first condition and indicates whether the license information is valid or invalid based on a logical product of the first condition and said second condition; a license generation unit operable to generate the license information including the first condition and the second condition in response to a license obtainment request from the user terminal; and a license issuance unit operable to issue the generated license information to the user terminal so that said user terminal obtains said license information, and the user terminal includes: a license obtainment requesting unit operable to request the right management server to issue the license information so as to obtain said license information; an invalidity judgment unit operable to judge whether the license information is invalid or not based on the first condition and the second condition included in the obtained license information; and a using unit operable to provide the use of the content to the user when it is judged that the license information is not invalid.
It is also possible that the user terminal further includes a license information returning unit operable to return the license information to the right management server when it is judged that the license information is invalid, and the right management server further includes: a return acceptance unit operable to accept, from the user terminal, return of the license information which is judged to be invalid; an invalidation cancellation unit operable to cancel invalidation of the license information by updating the second condition included in the returned license information to a new value; and a reissuance unit operable to reissue, to the user terminal, the license information of which invalidation is cancelled.
It is also possible that the user terminal further includes a history information storage unit operable to generate history information indicating a history of the use of the content when said content is used by the using unit, and store the generated history information, and the license information returning unit transmits the license information to be returned, together with the stored history information, to the right management server.
It is also possible that the second condition is represented by a subset of the first condition, said subset being either a maximum allowable number of uses which is not more than a maximum allowable number of uses indicated in the first condition or an expiry date which is earlier than an expiry date indicated in the first condition.
It is also possible that the license information includes at least a license information ID for identifying the license information, the first condition, the second condition and a content decryption key for decrypting an encrypted content which is permitted to be used based on the license information.
It is also possible that the invalidity judgment unit judges whether the license information is invalid or not every time power is applied to the user terminal.
The right management server of the present invention is a right management server connected with a user terminal via a communication network for issuing license information to the user terminal so that the user terminal obtains the license information, said license information permitting a user to use a content, and said server includes: a first condition generation unit operable to generate a first condition based on a content use right owned by the user, said first condition being a condition for permitting the user to use the content; a second condition generation unit operable to generate a second condition that indicates a part or all of the use permitted under the first condition and indicates whether the license information is valid or invalid based on a logical product of the first condition and said second condition; a license generation unit operable to generate the license information including the first condition and the second condition in response to a license obtainment request from the user terminal; and a license issuance unit operable to issue the generated license information to the user terminal so that said user terminal obtains said license information.
The user terminal of the present invention is a user terminal connected with a right management server via a communication network for obtaining license information from the right management server and using a content based on the obtained license information, said license information permitting a user to use the content, and said terminal includes: a license obtainment requesting unit operable to request the right management server to issue the license information so as to obtain said license information; an invalidity judgment unit operable to judge whether the license information is invalid or not based on a first condition and a second condition included in the obtained license information, said first condition being a condition for permitting the user to use the content based on a content use right owned by the user, said second condition indicating a part or all of the use permitted under the first condition and indicating whether the license information is valid or invalid based on a logical product of the first condition and said second condition; a using unit operable to provide the use of the content to the user when it is judged that the license information is not invalid; and a license information returning unit operable to return the license information to the right management server when it is judged that the license information is invalid.
As described above, the digital content distribution system of the present invention brings about the effect of allowing the server to collect the information concerning the user terminal, such as the content history logs, which is held by only the user terminal, at a timing determined by the server.
The present invention can be realized not only as the above-mentioned digital content distribution system, but also as a single unit such as a right management server and a user terminal included in this digital content distribution system, as a right management method including steps of characteristic operations executed in this digital content distribution system, or as a program for causing a general-purpose computer such as a personal computer to execute these characteristic operations. And it goes without saying that the program can be distributed via a computer readable recording medium such as a CD-ROM or a transmission medium such as the Internet.
As further information about technical background to this application, Japanese Laid-Open Patent Application No. 2003-065852 filed on Mar. 12, 2003 is incorporated herein by reference.
These and other objects, advantages and features of the invention will become apparent from the following description thereof taken in conjunction with the accompanying drawings that illustrate a specific embodiment of the invention. In the
The embodiment of the present invention will be explained with reference to the diagrams.
The right management server 100 is a server for managing a use right of each content, and is placed on the side of a content distributor α who is engaged in content distribution. Upon receipt of a request from the user terminal 110, the right management server 100 distributes the use right, as license data 900 as shown in
The content server 101, like the right management server 100, is placed on the side of the content distributor α, and distributes content data 200 as shown in
The user terminal 100 is a terminal for receiving content distribution services, and is placed on the side of the user.
The transmission network 120 is a wired or wireless transmission network for connecting the right management server 100 and the content server 101 with the user terminal 110 for communication between them.
The services realized in the present system will be explained. The user β purchases the use right of the content using the user terminal 110, and registers it as a license into the right management server 100. The user terminal 110 obtains the license from the right management server 100 and reproduces the content using the license. The user terminal 110 can return the obtained license to the right management server 100, and obtain the returned license again.
Next, the specific structure of the right management server 100 will be explained with reference to
First, the user information DB 300 will be explained with reference to
The user β registers his data into the user information DB 300 when he/she performs the user registration processing for receiving the content distribution services run by the content distributor α. This user registration processing may be performed by communication with the content distributor α via the transmission network 120, or by any other ways such as transmission of user registration papers. In the user registration processing, the content distributor α first assigns the user ID 400 to the user β. Then, the information required for the registration of the user β such as his name 401, telephone number 402, credit card number 403, terminal ID 404 of his/her user terminal 110 is informed the content distributor α by communication, papers or the like, and this information and the user ID 400 assigned to the user β, which are associated with each other, are registered into the user information DB 300. As a result of the above user registration processing, the user information DB 300 as shown in
Next, the use right DB 301 that is a DB for managing use rights of contents will be explained with reference to
The use right ID 502 is the ID for identifying the use right 500 uniquely in the digital content distribution system. In the content ID 201, the ID of a content which is subject to the use right 500 is described. The maximum number of reproductions 505 is the number of times within which the content is permitted to be reproduced. The validity period 506 shows the period during which the content is permitted to be used, and the start and expiry dates of the validity period are described therein. The reproduction condition 507 is the information specifying the condition for reproducing the content. For example, if “mono reproduction” is specified, the content should be reproduced in monophonic sound on the user terminal 110. The content decryption key 504 is the decryption key for decrypting the content identified by the content ID 201. In the following explanation, a usage amount of a right shall be represented by the maximum number of reproductions, but instead, it may be represented by the maximum total time period of reproductions.
As for the use right 500 identified by the use right ID “XXX001”, for example,
The explanation of each element of the right management server 100 will be continued with reference back to
There are only two subset use condition types 600, the “validity period” and the “maximum number of reproductions”, in the present embodiment, but any other subset use condition types 600 may be set as far as they restrict content use on the user terminal 110. For example, the subset use condition type 600 may be the “maximum total time period of reproductions”. In the case where the “maximum number of reproductions 505” is described in the use condition 503 in the license data 900, it may be set so that the subset use condition type 600 in this license data 900 is always the “maximum number of reproductions”. In addition, the subset use condition can be set for each use right in the present embodiment, as shown in
The explanation of each element of the right management server 100 will be continued with reference back to
The explanation of each element of the right management server 100 will be continued with reference back to
The explanation of each element of the right management server 100 will be continued with reference back to
The purchase processing unit 306 performs the necessary charging processing and the like in response to the use right purchase request from the user terminal 110.
The license data generation/updating unit 307 generates the license data 900 as shown in
The subset use condition setting unit 308 is a processing unit for setting an appropriate condition as the subset use condition 901 of the license data 900. Here, the subset use condition 901 is a condition for restricting the use of the license issued from the right management server 100 to the user terminal 110, and a value of a subset of a use condition is set for the license. How to set the value will be specifically described later.
Again back to
The server-intended terminal information DB updating unit 310 updates the data in the server-intended terminal information DB 304. To be more specific, upon receipt of the license return request 1400 to be described later via the communication unit 311, it obtains the terminal ID 404 and the terminal information 800 included in the request 1400 and records them into the server-intended terminal information DB 304.
The communication unit 311 communicates with the user terminal 110 via the transmission network 120.
This is the end of the explanation of the right management server 100.
Next, the structure of the user terminal 110 will be specifically explained with reference to
The content DB 1001 is a DB for managing the content data 200 distributed from the content server 101.
The license DB 1002 is a DB for managing the license data 900 distributed from the right management server 100.
The terminal-intended terminal information DB 1003 is a DB for managing the terminal information 800 such as history logs of contents used on the user terminal 110. The terminal-intended terminal information DB 1003 will be explained with reference to
The communication unit 1014 communicates with the right management server 100 and the content server 101 via the transmission network 120.
The use right purchase requesting unit 1005 is a processing unit for purchasing the use right of a content by generating a use right purchase request as shown in
The license obtainment unit 1006 is a processing unit for obtaining the license data 900 by generating the license obtainment request 1300 as shown in
The license returning unit 1007 is a processing unit for returning invalid license data, out of the license data 900 stored in the license DB 1002, to the right management server 100. To be more specific, the license returning unit 1007 first judges whether each of the license data 900 stored in the license DB 1002 is valid or not with reference to the use condition 503 and the subset use condition 901. If there is the invalid license data 900, the license returning unit 1007 generates a license return request 1400 as shown in
The DB updating unit 1008 updates the license DB 1002 and the terminal-intended terminal information DB 1003. To be more specific, in the embodiment of the present invention, the DB updating unit 1008 subtracts 1 from the maximum number of reproductions 505 in the license data 900 stored in the license DB 1002 when the content is reproduced, and at the same time, adds the new terminal information 800 into the terminal-intended terminal information DB 1003.
The content decryption key obtainment unit 1009 is a processing unit for extracting the content decryption key 504 which is a key for decrypting the content from the license data 900 stored in the license DB 1002.
The content decryption unit 1010 is a processing unit for extracting the content data 200 from the content DB 1001 and decrypting the encrypted content 203 in the extracted content data 200 using the content decryption key 504 obtained by the content decryption key obtainment unit 1009.
The content reproduction unit 1011 is a processing unit for reproducing the content decrypted by the content decryption unit 1010 according to the condition specified by the reproduction condition 507 in the license data 900, and music and video are outputted through a speaker and a display not shown in the diagram.
The use condition judgment unit 1012 judges whether reproduction of the content is permitted or not with reference to the maximum number of reproductions 505 and the subset use condition 901 in the license data 900.
The notification unit 1013 is a processing unit for notifying the user β of various messages.
The terminal ID storage unit 1004 is a processing unit for storing the terminal ID 404 which is the ID for identifying the user terminal 110 uniquely in the digital content distribution system.
This is the end of the explanation of the user terminal 110.
Next, the operations performed in the digital content distribution system of the present embodiment will be explained using a flowchart.
First, the operations performed when the user β purchases the use right of the content and the user terminal 110 registers the user-owned license data into the user-owned license DB 303 in the right management server 100 will be explained with reference to the flowchart as shown in
S1501: The use right purchase requesting unit 1005 receives a use right purchase instruction from the user β via a user operation entry unit not shown in the diagram, such as a keyboard. It is assumed that his/her use right purchase instruction includes the use right ID 502 of the use right that the user β wants to purchase. In response to the use right purchase instruction from the user β, the use right purchase requesting unit 1005 generates the use right purchase request 1200 and transmits it to the right management server 100 via the communication unit 1014. It is assumed here that the terminal ID 404 held in the terminal ID storage unit 1004 is set in the terminal ID 404 in the use right purchase request 1200, and the use right ID 502 included in the use right purchase instruction from the user β is set in the use right ID 502 in the use right purchase request 1200.
S1502: Upon receipt of the use right purchase request 1200 via the communication unit 311, the user identification unit 305 identifies the user β who wants to purchase the use right by referring to the user information DB 300 based on the terminal ID 404 included in the use right purchase request 1200.
S1503: In the case where the user β cannot be identified in S1502, namely, where the user has not been registered, the user identification unit 305 notifies the user terminal 110 via the communication unit 311 that the use right is not permitted to be purchased. In the case where the user β can be identified, it goes to the processing of S1504.
S1504: The purchase processing unit 306 performs charging processing using the information of the user β identified by the user identification unit 305.
S1505: The license data generation/updating unit 307 generates the user-owned license data 700. It is assumed here that the user ID 400 of the user β who wants to purchase the use right, the number which is unique in the right management server 100 and the use right ID 502 included in the use right purchase request 1200 are respectively set in the user ID 400, the license ID 701 and the use right ID 502 in the generated user-owned license data 700. In addition, the values which are set in the use right data identified by the use right ID 502 included in the use right purchase request 1200 are set respectively in the content ID 201, the maximum number of reproductions 505, the validity period 506, the reproduction condition 507, the content decryption key 504 and the subset use condition setting rule ID 501 in the user-owned license data 700.
S1506: The license data generation/updating unit 307 registers the user-owned license data 700 generated in S1507 into the user-owned license DB 303.
S1507: The communication unit 311 transmits a purchase completion notification to the user terminal 110.
S1508: The use right purchase requesting unit 1005 receives, via the communication unit 1014, the purchase completion notification transmitted in S1507, notifies the user β via the notification unit 1013 that the purchase of the use right has been completed, and ends the processing.
S1509: In the case where it is judged in S1503 that the user has not been registered, the use right purchase requesting unit 1005 receives a purchase NG notification from the right management server 100 via the communication unit 1014. In this case, the use right purchase requesting unit 1005 notifies the user R via the notification unit 1013 that the purchase of the use right has not been permitted, and ends the processing.
This is the end of the explanation of the operations performed when the user β purchases the use right of the content.
In the present embodiment, in the case where it is judged in S1503 that the user has not been registered, the user β is notified that the purchase of the use right has not been permitted in S1509 and the processing is ended. However, it is also possible to register the user immediately after S1503 to continue the processing of S1504 and the following.
Next, the operations performed when the user β obtains the license required for reproduction of the content from the right management server 100 will be explained with reference to the flowchart of
S1601: The license obtainment unit 1006 receives a license obtainment instruction from the user β via the user operation entry unit not shown in the diagram, such as a keyboard. This license obtainment instruction includes the license ID 701 of the license required for reproduction of the content that the user β wants to obtain. The license obtainment unit 1006 generates the license obtainment request 1300 in response to the license obtainment instruction from the user β, and transmits it to the right management server 100 via the communication unit 1014. It is assumed here that the terminal ID 404 held in the terminal ID storage unit 1004 is set in the terminal ID 404 in the license obtainment request 1300 and the license ID 701 included in the license obtainment instruction from the user β is set in the license ID 701 in the request 1300.
S1602: Upon receipt of the license obtainment request 1300 via the communication unit 311, the user identification unit 305 identifies the user ID 400 of the user β who wants to obtain the license by referring to the user information DB 300 based on the terminal ID 404 included in the license obtainment request 1300, and transmits the license ID 701 and the user ID 400 included in the license obtainment request 1300 to the license data generation/updating unit 307. The license data generation/updating unit 307 searches for the license to be obtained, by referring to the user-owned license DB 303 based on the license ID 701 and the user ID 400.
S1603: In the case where the license data generation/updating unit 307 cannot search out the license in S1602, it notifies the user terminal 110 via the communication unit 311 that the obtainment of the license is not permitted. In the case where the license data generation/updating unit 307 searches out the license in S1602, it goes to the processing of S1604.
S1604: The license data generation/updating unit 307 sets the value of the subset use condition 901 via the subset use condition setting unit 308. The process of setting the subset use condition 901 will be explained later in detail.
S1605: The license data generation/updating unit 307 generates the license data 900. In the subset use condition 901 in the generated license data 900, the subset use condition 901 determined in S1604 is described. As for the other data, the corresponding values in the user-owned license data 700 searched out in S1602 are set.
S1606: The license data generation/updating unit 307 deletes the user-owned license data 700 searched out in S1602 from the user-owned license DB 303.
S1607: The license data generation/updating unit 307 transmits the license data 900 generated in S1605 to the user terminal 110 via the communication unit 311.
S1608: The license obtainment unit 1006 receives, via the communication unit 1014, the license data 900 transmitted in S1607, and registers the received license data 900 into the license DB 1002.
S1609: In the case where the user terminal 110 receives the license obtainment NG notification, the license obtainment unit 1006 notifies the user β via the notification unit 1013 that the obtainment of the license is not permitted, and ends the processing.
This is the end of the explanation of the operations performed when the user β obtains the license required for reproduction of the content from the right management server 100.
Next, the subset use condition setting process in S1604 of
S1701: The subset use condition setting unit 308 searches the subset use condition setting rule DB 302 to find the data that corresponds to the subset use condition setting rule ID 501 in the user-owned license data 700.
S1702: In the case where the subset use condition type 600 of that data is the maximum number of reproductions, the subset use condition setting unit 308 goes to the processing of S1704. In the case where the subset use condition type 600 is the validity period, it goes to the processing of S1703.
S1703: The subset use condition setting unit 308 calculates the validity period according to the rule described in the set value of the data. For example, when the set value is “(date of license issue)˜(date of license issue+7 days)” and the date of license issue is Jan. 7, 2003, the validity period “2003/01/07˜2003/01/14” is calculated as the subset use condition 901.
S1704: In the case where the subset use condition type 600 is the validity period, the subset use condition setting unit 308 compares the value calculated in S1703 with the validity period 506 described in the license data 900, and sets the subset use condition 901 so as to minimize the validity period. In other words, as the set value, the latest date is chosen for the start date of the validity period and the earliest date is chosen for the expiry date thereof. On the other hands, in the case where the subset use condition type 600 is the maximum number of reproductions, the subset use condition setting unit 308 compares the maximum number of reproductions described in the subset use condition setting rule with the maximum number of reproductions 505 in the license data 900, and sets the smaller value as the set value. As a result, both the set value and the subset use condition type 600 are set in the subset use condition 901.
This is the end of the explanation of the subset use condition setting process executed in S1604 of
Next, the operations performed when the user terminal 110 reproduces the content in the digital content distribution system in the present embodiment will be explained with reference to the flowchart in
S1801: The use condition judgment unit 1012 receives, via the user operation entry unit not shown in the diagram, such as a keyboard, the content reproduction instruction from the user β. It is assumed that the content reproduction instruction from the user β includes information identifying the content that the user β wants to reproduce. The use condition judgment unit 1012 executes the reproduction OK/NG judgment process to be described later with reference to the flowchart in
S1802: In the case where the use condition judgment unit 1012 judges in S1801 that the reproduction of the content is permitted, it goes to the processing of S1803. In the case where it judges that the reproduction of the content is not permitted, it goes to the processing of S1808.
S1803: The content decryption unit 1010 extracts the content data 200 that the user β wants to reproduce from the content DB 1001.
S1804: The content decryption key obtainment unit 1009 extracts the content decryption key 504 from the license data 900 corresponding to the content that the user β wants to reproduce.
S1805: The content decryption unit 1010 decrypts the encrypted content 203 included in the content data 200 extracted in S1803 using the content decryption key 504 obtained by the content decryption key obtainment unit 1009 in S1804.
S1806: The content reproduction unit 1011 reproduces the encrypted content 203 decrypted by the content decryption unit 1010 in S1805, under the condition specified by the reproduction condition 507 in the license data 900.
S1807: The DB updating unit 1008 subtracts 1 from the maximum number of reproductions 505 used for the reproduction in the license data 900. When the maximum number of reproductions is set in the subset use condition 901, the DB updating unit 1008 also subtracts 1 from that number. Also, the DB updating unit 1008 stores and holds the date/time of the content reproduction start, and when the reproduction ends, it records both dates/times of the content reproduction start and end, as the terminal information 800, into the terminal-intended terminal information DB 1003 via the DB updating unit 1008.
S1808: The use condition judgment unit 1012 notifies the user β via the notification unit 1013 that the reproduction of the content is not permitted.
This is the end of the explanation of the operations performed when the user terminal 110 reproduces the content.
Next, the reproduction OK/NG judgment process in S1801 of
S1901: The use condition judgment unit 1012 checks whether or not the license data 900 corresponding to the content that the user β wants to reproduce exists in the license DB 1002. In the case where there exists the corresponding license data 900, the use condition judgment unit 1012 goes to the processing of S1902. In the case where there exists no corresponding license data 900, the use condition judgment unit 1012 goes to the processing of S1905.
S1902: The use condition judgment unit 1012 judges whether or not (1) the subset use condition 901 in the license data 900 corresponding to the content that the user β wants to reproduce is met; (2) the maximum number of reproductions is 1 or more; and (3) the reproduction date/time meets the validity period 506. How to judge the subset use condition 901 will be explained here. In the case where the validity period is set in the subset use condition 901, it is judged whether or not the reproduction of the content starts within the validity period. In the case where the maximum number of reproductions is set in the subset use condition 901, it is judged whether or not that number is 1 or more. In the case where the subset use condition 901 is met, the maximum number of reproductions 505 is 1 or more, and the reproduction start date/time meets the validity period 506, the use condition judgment unit 1012 goes to the processing of S1903. In the case where the subset use condition 901 is not met, the maximum number of reproductions 505 is not 1 or more, or the reproduction start date/time does not meet the validity period 506, the use condition judgment unit 1012 goes to the processing of S1905.
S1903: The use condition judgment unit 1012 judges whether or not the content reproduction unit 1011 is permitted to reproduce the content under the condition specified by the reproduction condition 507, with reference to the reproduction condition 507 in the license data 900 corresponding to the content that the user β wants to reproduce. When the reproduction is permitted under the specified condition, the use condition judgment unit 1012 goes to the processing of S1904. When the reproduction is not permitted under the specified condition, the use condition judgment unit 1012 goes to the processing of S1905.
S1904: The use condition judgment unit 1012 judges that the reproduction of the content is permitted.
S1905: The use condition judgment unit 1012 judges that the reproduction of the content is not permitted.
This is the end of the explanation of the reproduction OK/NG judgment process.
Next, the operations performed when the user terminal 110 returns the license data 900 held in the license DB 1002 in the digital content distribution system in the present embodiment will be explained with reference to the flowchart in
S2001: The license returning unit 1007 starts the license return processing at an appropriate timing such as the timing when power is applied to the user terminal 110. The license returning unit 1007 executes the license return judgment process to be described later with reference to the flowchart in
S2002: When the license returning unit 1007 judges that the license return processing is necessary, it goes to the processing of S2003. When it judges that the license return processing is not necessary, it ends the processing.
S2003: The license returning unit 1007 obtains, from the terminal-intended terminal information DB 1003, all the terminal information 800 including the license ID which matches with the license ID 701 in the license data 900 to be returned from the terminal-intended terminal information DB 1003, and deletes them from the terminal-intended terminal information DB 1003 via the DB updating unit 1008.
S2004: The license returning unit 1007 generates the license return request 1400 as shown in
S2005: Upon receipt of the license return request 1400 via the communication unit 311, the server-intended terminal information DB updating unit 310 obtains the terminal ID 404 and the terminal information 800 included in the request 1400, and records it into the server-intended terminal information DB 304.
S2006: Upon receipt of the license return request 1400 via the communication unit 311, the license data generation/updating unit 307 obtains the to-be-returned license data 1402 from the license return request 1400, and records it, as the user-owned license data 700, into the user-owned license DB 303. At that time, the license data generation/updating unit 307 sets the value specified in the user information DB 300 in the user ID 400 in the user-owned license data 700, using the terminal ID 404 in the license return request 1400. The value set in the subset use condition setting rule ID 501 in the user-owned license data 700 is the set value 601 of the subset use condition identified by the subset use condition setting rule ID 501 in the data in the use right DB 301 identified by the use right ID 502 in the to-be-returned license data 1402 in the license return request 1400. Here, as shown in
S2007: When the user terminal 110 receives the license return completion notification via the communication unit 1014, the license return processing ends.
This is the end of the explanation of the operations performed when the user terminal 110 returns the license data 900 held in the license DB 1002.
The explanation of the present embodiment has been made on the assumption that the license returning unit 1007 deletes, from the terminal-intended terminal information DB 1003, the terminal information 800 which is transmitted when the license data 900 is returned, at the timing when obtaining it from the terminal-intended terminal information DB 1003 in S2003. However, the obtained terminal information 800 does not always need to be deleted from the terminal-intended terminal information DB 1003 at that timing. Instead, the user terminal 110 may delete the terminal information 800 after receiving the license return completion notification from the license data generation/updating unit 307 in S2006, for example.
In the present embodiment, this license return processing has been explained on the assumption that it is started when power is applied to the user terminal 110. However, the processing may be started according to predetermined date/time or frequency such as “at 12 o'clock every day” and “once a day”. The processing may also be started when the user terminal 110 performs a predetermined operation, for example, “after finishing the reproduction of the content”.
Next, the license return judgment process in S2001 of
S2101: The license returning unit 1007 judges whether each of the license data 900 stored in the license DB 1002 should be returned or not with reference to the use condition 503 and the subset use condition 901. How to judge whether the license data 900 should be returned or not using the subset use condition 901 is explained as follows. In the case where the validity period is set in the subset use condition 901, the license returning unit 1007 judges that the license data 900 should be returned when the time point of the judgment is out of the validity period. In the case where the maximum number of reproductions is set in the subset use condition 901, it judges that the license data 900 should be returned when the maximum number is 0.
S2102: When the license returning unit 1007 judges in S2101 that there is the license data 900 which should be returned, it goes to the processing of S2103. When it judges that there is no license data 900 which should be returned, it goes to the processing of S2104.
S2103: The license returning unit 1007 judges that the license return processing is necessary.
S2104: The license returning unit 1007 judges that the license return processing is not necessary.
This is the end of the explanation of the license return judgment process.
This is the end of the explanation of the operations performed in the digital content distribution system in the present embodiment.
The license data which is distributed from the right management server 100 to the user terminal 110 may be the license data 2200 as shown in
In the present embodiment, the subset use condition setting rule ID 501 is set in the data held in the use right DB 301 as shown in
In the present embodiment, the subset use condition 901 is set during the processing of S1704 in
This is the end of the explanation of the embodiment of the present invention.
As described above, according to the present invention, both the use condition 503 and the subset use condition 901 are described in one license data 900, so the subset use condition 901 can be issued at the same time when the license data 900 is issued. To be more specific, in the case where the user terminal 110 usually reproduces the content off-line, the user is likely to turn off the user terminal or remove the modular cable while he/she is not using the terminal. Therefore, in order to access the user terminal 110 for the server's reasons under such conditions, the server has to previously make an agreement on the access timing with the user terminal, and hold and manage the agreed-upon timing. In addition, since the server usually has to hold the agreed-upon timing for each user, it has to manage an enormous amount of data. As just described, it is difficult for the server to establish the communication network with the user terminal 110 at an arbitrary timing, unless the user terminal 110 requests access to the server. On the other hand, the present invention allows the server to issue the license data 900 to which the subset use condition 901 is added even in the above case, so the server can transmit the subset use condition 901 via the previously established communication network upon receipt of the license issue request from the user terminal 110. This is the effect of the present invention.
In addition, according to the present invention, the server does not subdivide the use condition based on the use right purchased by the user so as to issue the licenses thereof separately, but transmits a set of them as single license data 900 to the user terminal 110. Therefore, the server does not need to make additional management of the license data 900, such as calculation of the rest of the use right after subtracting the portion issued as license from the purchased use right, holding of the balance of the use right, and update of its value. In other words, all the server has to do is to hold the ID of the issued license data 900 and the subset use condition setting rule and to update the subset use condition 901 in the returned license data 900 when it is reissued. As a result, the processing load on the server for managing the use right purchased by the user can be reduced. Furthermore, since the server does not subdivide the use condition so as to issue the licenses thereof separately, an amount of the license data which should be managed by the server can be reduced, and the server does not need to manage the license data which has already issued to the user terminal.
The user terminal of the present invention is of value as a content reproduction apparatus with a communication function, a personal computer, a personal digital assistant (PDA), a mobile phone, a set top box (STB) or the like. The right management server of the present invention is of value as a server for distributing a license for allowing use of a content to the user terminal via a communication network such as a broadcasting network and the Internet, and collecting terminal information from the user terminal that uses the content particularly in an off-line environment. The digital content distribution system of the present invention is of value as a content using system in which the right management server distributes a license of a digital content such as video and music to the user terminal via a communication network such as a broadcasting network and the Internet, and the user terminal uses the digital content based on the distributed license, particularly as a content using system or the like in which the user terminal uses the content in an off-line environment.
Number | Date | Country | Kind |
---|---|---|---|
2003-065852 | Mar 2003 | JP | national |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/JP04/03038 | 3/9/2004 | WO | 6/22/2005 |