A more complete appreciation of the present invention and many of the attendant advantages thereof will be readily obtained as the same becomes better understood by reference to the following detailed descriptions when considered in connection with the accompanying drawings, wherein:
An embodiment of the present invention will be explained below with reference to the drawings. The same or similar components are indicated by the same reference numerals throughout the drawings and redundant explanations about them are omitted.
Hereinafter, various embodiments of the present invention are explained by referring to the drawings. In following each embodiment, a start-up software to start the contents software is executed, but a place to store the start-up software is different. Briefly, in the first embodiment, the start-up software is previously installed into the user terminal. In the second embodiment, the start-up software is previously stored in an external memory medium such as a CD or a DVD. In the third embodiment, the start-up software is previously stored in an external memory medium such as a hard disk. In the fourth embodiment, the start-up software is previously stored in the SD card.
The SD card 10 comprises areas 1˜4 and the encryption/decryption unit 5 (explained before). The system area 1 stores a key management data MKB and a media identifier IDm. The hidden area 2 stores a media inherent key Kmu. The protected area 3 stores an encrypted user key Enc (Kmu, Ku). The user data area 4 stores an encrypted contents key Enc (Ku, Kc1), meta data MtC1′, and use history meta data of all contents.
In the protected area 3 shown in
In the user data area 4 shown in
The meta data MtC1′ of contents C1 is not a perfect meta data of contents C1 but correspondence data between the contents C1 and the encrypted contents key Emc (Ku, Kc1). For example, a title (contents name) and a contents ID may be included. Furthermore, progress data to execute the next processing from a completion timing of previous processing may be included.
On the other hand, the use history meta data of all contents represents a use history of each contents in the SD card. For example, an execution data and an execution time of each contents ID may be included. Furthermore, a use frequency of each contents ID may be included.
In the user terminal 40 shown in
The start-up software memory 41 is a memory area into which a start-up software to start a contents software C1 is previously installed. The start-up software is readable from/writable into the start-up software memory 41 by the control unit via the bus.
The RAM 42 is a readable/writable memory by the control unit 45. For example, in case that the control unit 45 executes the start-up software, the start-up software read from the start-up software memory 41 is stored.
The I/F unit 43 includes an interface function between the operation input unit 47 and the user terminal 40. In order to simplify the explanation, description of the I/F unit 43 between the operation input unit 47 and the user terminal 40 is omitted.
The SD card processing function 44 is controlled by the control unit 45, and includes a confirmation function and an encryption communication function with the SD card 10, and read/write function of memory contents of each area 1, 3, 4. The SD card processing function 44 can be realized by a software component, or a combination of a software component and a hardware component. The software component can be realized by installation of a program to execute the function 44 into a computer of the user terminal 40.
The control unit 45 includes an ordinary computer function, a function to control each unit 41˜46 based on a user's operation, and a function to read the encrypted contents Enc (Kc1, C1) and the meta data MtC1 from the external memory medium 50.
The communication unit 46 is controlled by the control unit 45, and includes a function to download the encrypted contents Enc (Kc1, C1) from a contents distribution apparatus DS. For example, a browser is usable.
The operation input unit 47 is, for example, a game controller of a home game machine holding the SD card. The operation input unit 47 includes a function to send an input signal of the user's operation to the user terminal 40, and an interface function between the SD card 10 and the user terminal 40.
The external memory medium 50 is a memory medium readable by the user terminal 40, and stores the encrypted contents Enc (Kc1, C1) and the meta data MtC1 of contents C1. The meta data MtC1 (stored with the encrypted contents in the external memory medium 50) is different from meta data MtC1′ (stored with the encrypted contents key in the SD card 10), and represents a complete meta data MtC1 of contents Cl. This meta data includes static meta data (such as a contents ID, a revision, a title, and a creator's name) and a dynamic meta data (such as sales resource data (ID of the contents distribution apparatus DS) and charge data (purchase step and sales price of the contents key)). As the external memory medium 50, an optical disk such as a CD or a DVD insertable into the user terminal 40 is shown in
The contents distribution apparatus DS includes a function to send the encrypted contents Enc (Kc1, C1) and the meta data MtC1 to the user terminal 40 in response to a download request from the user terminal 40.
Next, the contents use method of the system in
In the user terminal 40, execution of the start-up software is indicated by a user's operation through a keyboard (not shown in
The control unit 45 searches a SD card corresponding to the encryption double key method based on the start-up software, and decides whether the SD card 10 is already inserted (exists) into the operation input unit 47 (ST12). If the SD card is not inserted yet, the control unit 45 requests insertion of the SD card by outputting a message through a display unit (not shown in
On the other hand, if the SD card is already inserted and if an encrypted contents is necessary to be obtained by on-line (ST14; Yes), the control unit 45 executes download processing through the communication unit 46, and downloads the encrypted contents from the contents distribution apparatus DS (ST15).
If encrypted contents is not needed (ST14; No), the control unit 45 displays licenses (of encrypted contents keys) stored in the SD card through a display unit (not shown in
In the user terminal 40, when one license is selected from the licenses displayed by the user's operation (ST17), meta data MtC1 (of contents C1) corresponding to the one license is searched using a contents ID of the one license, and it is decided whether the encrypted contents (of contents C1) is already stored in the memory medium based on existence of the meta data MtC1 (ST18).
If it is decided that the encrypted contents (of contents C1) is not stored yet (ST18; No), insertion of the memory medium storing the encrypted contents is requested by outputting a message through a display unit (ST19).
On the other hand, if it is decided that the encrypted contents is already stored in the memory medium (ST18; Yes), the control unit 45 reads the encrypted contents key Enc (Ku, Kc1) from the SD card through the SD card processing function 44, and reads the encrypted contents Enc (Kc1, C1) from the external memory medium 50 through the bus (ST20).
In this case, a method for obtaining a contents key Kc1 is same as steps ST1˜ST6 explained before. As shown in
Then, the SD card processing function 44 executes confirmation/key exchange processing with the encryption/decryption unit 5 of the SD card 10 using the media inherent key Kmu (ST3), and shares a session key Ks with the SD card 10. Furthermore, the SD card processing function 44 reads an encrypted user key Enc (Kmu, Ku) from the protected area 3 through encryption communication using the session key Ks (ST4), decrypts the encrypted user key Enc (Kmu, Ku) using the media inherent key Kmu (ST5), and generates a user key Ku.
Furthermore, the SD card processing function 44 reads an encrypted contents key Enc (Ku, Kc1) from the user data area 4, decrypts the encrypted contents key Enc (Ku, Kc1) using the user key Ku (ST6), and generates a contents key Kc1.
Next, by executing the start-up software, the control unit 45 decrypts the encrypted contents Enc (Kc1, C1) using the contents key Kc1, and generates a contents software C1. As a result, the contents software is executable.
The user terminal 40 may set the contents software C1 as either an execution status or a holding status. In the same way, the user terminal 40 may set the start-up software as either a completion status or a waiting status. Hereinafter, an execution example of the contents software C1 is explained.
In the user terminal 40, execution of the contents software C1 (decrypted) is indicated (ST21). Then, in the user terminal 40, the start-up software is completed and the contents software C1 is executed. In this case, the start-up software is not always necessary to be completed. For example, the contents software C1 may be executed while the start-up software is under a waiting status. This is same in each embodiment explained afterwards.
Hereinafter, the user terminal 40 executes the contents software C1 until completion of contents is indicated (ST22; No).
In the user terminal 40, in response to an indication of contents completion (ST22; Yes), the meta data MtC1′ and the use history meta data of contents C1 in the SD card 10 are updated (ST23), and the contents software C1 is completed.
As mentioned-above, in the first embodiment, in the user terminal 40 installing the start-up software, by executing the start-up software indicated from the outside, the user terminal 40 decrypts the encrypted contents Enc (Kc1, C1) using the SD card 10, and generates the contents software Cl. Then, the user terminal 40 completes the start-up software, and executes the contents software C1. In this way, even if the contents software C1 needs the start-up software, the contents software C1 can be utilized by the encryption double key method.
The second embodiment is a modification example of the first embodiment, and a part to store the start-up software is different from the first embodiment. In the first embodiment, the start-up software is previously installed into the user terminal 40. However, in the second embodiment, the start-up software is stored in the external memory medium 51. The external memory medium 51 stores the start-up software in addition to memory content of the external memory medium 50 in
In comparison with the user terminal 40 in
In case of executing the start-up software, an encrypted contents is already stored in the external memory medium 51. In other words, the encrypted contents is not downloaded from the contents distribution apparatus DS. Accordingly, the contents distribution apparatus DS is omitted in
As shown in
The user DB 71 stores a user key Ku of each media identifier IDm inherent to the SD card 10. The user key Ku is readable/writable by the key management function 73.
The contents key DB 72 stores a contents key Kc (For example, Kc1) of each contents identifier IDc (For example, Idc1) inherent to contents C. The contents key Kc is readable/writable by the key management function 73.
In response to a key sending request (including the contents identifier Idc1 and the media identifier IDm) from the user terminal 40a, the key management function 73 refers to each DB 71 and 72, and sends the encrypted contents key Enc (Ku, Kc1) and the meta data MtC1′ to the user terminal 40a.
Next, the contents use method of the system in
In the user terminal 40a, the external memory medium 51 is inserted by a user's operation (ST31). After detecting insertion of the external memory medium 51, the user terminal 40a reads the start-up software from the external memory medium 51 to the RAM 42, and executes the start-up software stored in the RAM 42 (ST32).
Based on the start-up software, the control unit 45 decides whether a SD card is already inserted by searching the SD card in the operation input unit 47 (ST33). If the SD card is not inserted yet, the control unit 45 requests insertion of the SD card by outputting a message through a display unit (ST34).
On the other hand, if the SD card is already inserted, the control unit 45 decides whether the SD card is a SD card corresponding to the encryption double key method (ST35). If the SD card is not a SD card corresponding to the encryption double key method, the control unit 45 requests insertion of the SD card corresponding to the encryption double key method by outputting a message through a display unit (ST36).
If the SD card is a SD card corresponding to the encryption double key method, the control unit 45 searches meta data MtC1′ stored in the SD card 10 using a contents ID included in the meta data MtC1 of the encrypted contents in the external memory medium 51. Briefly, the control unit 45 decides whether the encrypted contents key Enc (Ku, Kc1) corresponding to the contents ID is stored in the SD card 10 (ST37).
If the encrypted contents key Enc (Ku, Kc1) is not stored yet, the control unit 45 requests purchase of the encrypted contents key by outputting a message through the display unit (ST38).
In this case, as shown in
Next, after settling the encrypted contents key, steps to obtain the encrypted contents key are explained. As shown in
The SD card processing function 44 sends a key sending request (including the contents identifier Idc1 and the media identifier IDm) to the license center apparatus LC (ST38-s2). In this case, communication between the user terminal 40a and the license center apparatus LC is protected by encryption communication such as SSL.
In the license center apparatus LC, a key management function 73 reads a user key Ku corresponding to the media identifier IDm from the user key DB 71 (ST38-s3), and reads a contents key Kc1 and meta data MtC1′ each corresponding to the contents identifier Idc1 from the contents key DB 72 (ST38-s4).
Then, the key management function 73 encrypts the contents key Kc1 using the user key Ku (ST38-s5), and sends an encrypted contents key Enc (Ku, Kc1) and meta data MtC1′ of plain text (a purchase date and a purchase number are added) to the user terminal 40a (ST38-s6).
In the user terminal 40a, the SD card processing function 44 writes the encrypted contents key Enc (Ku, Kc1) and the meta data MtC1′ to the user data area 4 of the SD card 10 (ST38-s7). In this way, by obtaining the encrypted contents key, purchase processing of step ST38 is completed.
On the other hand, if the encrypted contents key Enc (Ku, Kc1) is already stored in the SD card (ST37; Yes), the control unit 45 reads the encrypted contents key Enc (Ku, Kc1) from the SD card 10 by the SD card processing function 44, and obtains a contents key Kc1 by decrypting the encrypted contents key (ST39). A method for decrypting the encrypted contents key is already explained as steps ST1-ST6. Furthermore, the control unit 45 reads an encrypted contents Enc (Kc1, C1) from the external memory medium 51 via the bus (ST40).
Hereinafter, by executing the start-up software, the control unit 45 decrypts the encrypted contents Enc (Kc1, C1) using the contents key Kc1, and indicates execution of the contents software C1 (ST41). Then, the start-up software is completed and the contents software C1 is executed.
Hereafter, the user terminal 40a executes the contents software C1 until completion of execution of contents is indicated (ST42; No).
In response to an indication of completion of execution of contents, the user terminal 40a updates the meta data MtC1′ and the use history meta data in the SD card 10 (ST43), and completes execution of the contents software C1.
As mentioned-above, in the second embodiment, the external memory medium 51 stores the start-up software. After detecting insertion of the external memory medium 51, the user terminal 40a executes the start-up software stored in the external memory medium 51, decrypts the encrypted contents Enc (Kc1, Cl) using the SD card 10, and obtains the contents software C1. Then, the user terminal 40a completes the start-up software, and executes the contents software C1. In this way, even if the contents software C1 needs the start-up software, the contents software can be utilized based on the encryption double key method.
The third embodiment is a modification example of the second embodiment, and a form of the external memory medium is different from the second embodiment. In the second embodiment, the external memory medium 51 storing the start-up software is insertable into the user terminal 40a. However, in the third embodiment, an external memory medium 52 storing the start-up software is connected to the user terminal 40b.
In case of executing the start-up software, as shown in ST32′ of
In the third embodiment, by using the external memory medium 52 storing the start-up software, the user terminal 40b reads the start-up software from the external memory medium 52 in response to the user's indication, and executes the start-up software. Accordingly, in the same way as in the second embodiment, the encrypted contents Enc (Kc1, Cl) is decrypted using the SD card, and the contents software C1 is obtained. Then, the user terminal 40b completes the start-up software, and executes the contents software C1. In this way, even if the contents software needs the start-up software, the contents software can be utilized based on the encryption double key method.
The fourth embodiment is a modification example of the first embodiment, and a part to store the start-up software is different from the first embodiment. In the first embodiment, the start-up software is previously installed into the user terminal 40. However, in the fourth embodiment, the start-up software is stored in the SD card 10c. In comparison with the SD card 10 of the first embodiment, the SD card 10c stores the start-up software in the user data area 4.
In the user terminal 40c of
Next, the contents use method applied to the system of
When the SD card 10c is inserted into the operation input unit 47 by a user's operation, the user terminal 40c detects insertion of the SD card 10c (ST10), and decides whether the SD card is a SD card corresponding to the encryption double key method (ST12′). If the SD card is not a SD card corresponding to the encryption double key method (ST12′; No), the user terminal 40c requests insertion of the SD card by outputting a message through the display unit (ST13).
On the other hand, if the SD card is a SD card corresponding to the encryption double key method (ST12′; Yes), the control unit 45 reads the start-up software from the SD card 10c to the RAM 42 by the SD card processing function 44, and executes the start-up software stored in the RAM 42 (ST11′).
Hereinafter, the user terminal 40c executes processing of steps ST14˜23 in the same way as the first embodiment.
In the fourth embodiment, by using the SD card 10c storing the start-up software, the user terminal 40c detects insertion of the SD card 10c, and executes the start-up software stored in the SD card 10c. Accordingly, in the same way as the first embodiment, the encrypted contents Enc (Kc1, C1) is decrypted using the SD card 10c, and the contents software C1 is obtained. Then, the user terminal 40c completes the start-up software, and executes the contents software C1. In this way, even if the contents software C1 needs the start-up software, the contents software can be utilized based on the encryption double key method.
In the disclosed embodiments, the processing can be accomplished by a computer-executable program, and this program can be realized in a computer-readable memory device.
In the embodiments, the memory device, such as a magnetic disk, a flexible disk, a hard disk, an optical disk (CD-ROM, CD-R, DVD, and so on), an optical magnetic disk (MD and so on) can be used to store instructions for causing a processor or a computer to perform the processes described above.
Furthermore, based on an indication of the program installed from the memory device to the computer, OS (operation system) operating on the computer, or MW (middle ware software), such as database management software or network, may execute one part of each processing to realize the embodiments.
Furthermore, the memory device is not limited to a device independent from the computer. By downloading a program transmitted through a LAN or the Internet, a memory device in which the program is stored is included. Furthermore, the memory device is not limited to one. In the case that the processing of the embodiments is executed by a plurality of memory devices, a plurality of memory devices may be included in the memory device. The component of the device may be arbitrarily composed.
A computer may execute each processing stage of the embodiments according to the program stored in the memory device. The computer may be one apparatus such as a personal computer or a system in which a plurality of processing apparatuses are connected through a network. Furthermore, the computer is not limited to a personal computer. Those skilled in the art will appreciate that a computer includes a processing unit in an information processor, a microcomputer, and so on. In short, the equipment and the apparatus that can execute the functions in embodiments using the program are generally called the computer.
Other embodiments of the invention will be apparent to those skilled in the art from consideration of the specification and practice of the invention disclosed herein. It is intended that the specification and examples be considered as exemplary only, with the true scope and spirit of the invention being indicated by the following claims.
Number | Date | Country | Kind |
---|---|---|---|
2004-216326 | Jul 2004 | JP | national |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/JP05/11880 | 6/22/2005 | WO | 00 | 4/19/2007 |