WO2006115212A1 - アルゴリズム更新システム - Google Patents
アルゴリズム更新システム Download PDFInfo
- Publication number
- WO2006115212A1 WO2006115212A1 PCT/JP2006/308438 JP2006308438W WO2006115212A1 WO 2006115212 A1 WO2006115212 A1 WO 2006115212A1 JP 2006308438 W JP2006308438 W JP 2006308438W WO 2006115212 A1 WO2006115212 A1 WO 2006115212A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- design data
- content
- circuit
- reconfigurable
- unit
- 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.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/60—Digital content management, e.g. content distribution
Definitions
- the present invention relates to a technique for updating an encryption scheme installed in hardware in a device.
- the content In distribution of content via a network or distribution of content recorded on a recording medium, in order to prevent unauthorized use of the content and protect the copyright of the content, the content is generally encrypted. Distributed or distributed.
- the device that plays the content performs the decryption process to decrypt the encrypted content, but the implementation of the encryption method in the device also implements the required processing speed and tamper resistance viewpoint in hardware. There are many cases.
- Patent Document 2 a database that stores an encryption algorithm file inside a device is held, and the database power algorithm file is acquired according to an instruction from the outside, and the device is implemented in hardware.
- a technique for updating the encryption algorithm has been disclosed.
- Patent Document 1 Japanese Patent Laid-Open No. 10-320191
- Patent Document 2 JP-A-10-55135
- the above-described conventional technology has a problem that it cannot cope with a new encryption algorithm that is not stored in the database in the device.
- the present invention has been made in view of the above-described problems, and provides an algorithm update system that is stored in a database in a device and can cope with a new encryption algorithm. Objective.
- the present invention relates to a content utilization apparatus, which is a reconfigurable means capable of reconfiguring a circuit based on design data, and content utilization 1
- the content use circuit which is a circuit that realizes one function, configures the content use circuit by first determining means for determining whether or not the reconfigurable means is configured and V for the reconfigurable means.
- the content use design data when the second judgment means for judging whether or not the content use design data for holding the data and the judgment by the first and second judgment means are both negative.
- Acquisition means for acquiring data from the outside, wherein the reconfigurable means reconfigures the circuit based on the acquired content use design data.
- the above-mentioned “reconfigurable means” corresponds to the reconfigurable unit 208 in the embodiment described later.
- the “first determination unit” and the “second determination unit” have the function of the determination unit 203 of the embodiment.
- the “acquiring means” has the functions of the transmission / reception unit 201 and the design data reading Z writing unit 204 of the embodiment.
- the content using device configures a circuit in which the circuit is not realized in the reconfigurable means and does not hold the design data itself, the design data is acquired from the outside.
- a new circuit can be constructed in the reconfigurable means.
- the circuit can be efficiently reconfigured by performing the determination by the first and second determination means.
- the content use device stores a plurality of design data for configuring a circuit that realizes a plurality of functions related to the use of content in the reconfigurable means.
- Design data storage means and the first determination means performs the determination by determining whether or not the content use design data is stored in the design data storage means. It may be configured.
- the content using apparatus can store a plurality of design data inside, and the design data not stored in the design data storage means can be reconfigured by acquiring from the outside. In a possible way, a new circuit can be constructed.
- the function related to use of the content is encryption of the content or decryption of encrypted content generated by encrypting the content
- the content use circuit is configured to encrypt the content. It may be configured to be a circuit for realizing the above function or a circuit for realizing the decoding function.
- the content using device is a device that performs content encryption processing or decryption processing, and is implemented, for example, when confidential information related to encryption processing is exposed. If there is a request to maintain the security by updating the existing encryption method to a new encryption method, the design data related to the new encryption method is not stored internally. Even in such a case, by acquiring the external force, the reconfigurable means can reconstruct the circuit corresponding to the new encryption method.
- the content utilization device is connected to an external design data server via a network, and the acquisition unit is configured to acquire the content utilization design data from the design data server. You can do it.
- the content use device can acquire the content use design data from the design data server via the network if the environment is connectable to the network.
- the content use device is connected to an external content server via a network, and the encrypted content and the content use design data can be uniquely identified from the content server.
- the obtaining means receives the design data identifier, outputs the design data identifier to the design data server, requests transmission of the content-use design data, and the reconfigurable means obtains the acquired content data. Based on the tenth usage design data, a circuit for realizing the decryption of the encrypted content.
- the content utilization circuit which is a road may be reconfigured.
- the content using apparatus can acquire design data corresponding to the encryption key content received from the content sano from the design data server.
- the content use apparatus includes a medium input unit that reads information from a recording medium, and the acquisition unit reads from the recording medium on which the content use design data is recorded via the medium input unit.
- the content use design data may be acquired.
- the content utilization device directly reads the content utilization design data from the recording medium without using a network, so that the content utilization design data can be acquired safely.
- the function related to the use of the content is content encoding, or an inverse sign of the content generated by encoding, and the content use circuit realizes the encoding function. Or a circuit for realizing the inverse encoding function.
- the content use device is a device that performs content encoding processing or reverse code input processing, and stores a plurality of codes by storing a plurality of design data. It can correspond to the algorithm of Z reverse sign y. Furthermore, even if the content utilization device holds and does not hold the design data related to the new code key Z reverse code key algorithm, it can be regenerated by acquiring external force. In a configurable way, a new code z inverse code key circuit can be reconstructed.
- the design data storage means stores a design data table in which a plurality of design data is arranged, and when the acquisition means acquires the content usage design data, the acquired content usage design Deletion judging means for writing data into the design data table, wherein the content utilization device further determines whether or not to delete the design data from the design data storage means based on the data amount of the design data table.
- design data deletion means for selecting the design data to be deleted when the deletion determination means determines that the design data is to be deleted, and deleting the selected design data also for the design data table. You may comprise so that it may be provided.
- the design data table stores, for each design data, design data usage information indicating the frequency with which the design data is configured in the reconfigurable means in association with the design data.
- the data deletion means reads the design data usage information when the deletion determination means determines that the design data is to be deleted, and the design data that is least frequently used indicated by the design data usage information is the design data to be deleted. May be configured to select as data! /.
- the design data deletion means reads the design data usage information included in the plurality of design data information when the deletion determination means determines that the design data is to be deleted.
- the design data whose usage frequency is less than or equal to a predetermined value may be preferentially selected as the design data to be deleted.
- the design data storage means stores a design data table in which a plurality of design data is arranged, and when the acquisition means acquires the content usage design data, the acquired content usage design Data is written into the design data table, and the content utilization device further rearranges the arrangement of the plurality of design data included in the design data table when the circuit is reconfigured in the reconfigurable means. It may be configured to have an updating means.
- the updating unit can manage the use frequency of the design data while reducing the data amount of the design data table without describing the information on the use frequency in the design data table. It becomes.
- the content utilization device further includes a deletion determination unit that determines whether or not to delete design data from the design data storage unit, based on a data amount of the design data table, and a design data Is determined to be deleted, A design data deleting means for deleting a predetermined number of design data from the lowest level of the design data table may be provided.
- the amount of data in the design data table increases each time the acquisition unit acquires new content use design data.
- the design data table It is possible to restrict the amount of data from exceeding the storage capacity of the design data storage means.
- the update means may be configured to move the design data used for circuit reconfiguration in the reconfigurable means up one order in the design data table.
- the updating unit may be configured to move the arrangement of the design data used for circuit reconfiguration in the reconfigurable unit in the design data table to the top.
- the design data storage means reads a design data at a first access speed
- a first storage unit reads a design data at a second access speed higher than the first access speed.
- a storage unit, the design data having a circuit configuration frequency in the reconfigurable means greater than or equal to a predetermined value is stored in the first storage unit, and the design data having the frequency less than the predetermined value is stored in the second memory. It may be configured to be stored in the department.
- the design data storage means further stores a design data table in which a plurality of design data is associated with a use frequency and a storage location, and each design data is stored in accordance with the use frequency.
- the storage location may be configured to move between the first and second storage units.
- the content use device stores design data that is likely to be required to be reconfigured by reconfigurable means in a storage unit with a high access speed, and is required to reconfigure the circuit. Since the design data is stored in the storage unit with a low access speed, the circuit can be reconfigured efficiently.
- the design data storage means further stores a flag for identifying design data used in a circuit configuration realized by the reconfigurable means. Make up.
- FIG. 1 is a system configuration diagram showing the configuration of an algorithm update system 1.
- FIG. 2 is a diagram showing a data configuration of a content table 100 stored in the content server 10.
- FIG. 3 is a functional block diagram functionally showing the configuration of the content using device 20.
- FIG. 4 is a diagram showing a data configuration of a design data table 300 stored in the design data storage unit 202 of the content utilization device 20.
- FIG. 4 is a diagram showing a data configuration of a design data table 300 stored in the design data storage unit 202 of the content utilization device 20.
- FIG. 5 is a diagram showing a data structure of a design data table 300a.
- FIG. 6 is a diagram showing a data configuration of a content key table 350 stored in the content key storage unit 209 of the content using device 20.
- FIG. 6 is a diagram showing a data configuration of a content key table 350 stored in the content key storage unit 209 of the content using device 20.
- FIG. 7 is a diagram showing a data configuration of a design data table 400 stored in the design data server 30.
- FIG. 8 Flow chart showing the overall operation of the algorithm update system 1 and continued from Fig. 9
- FIG. 9 Flow chart showing the overall operation of the algorithm update system 1 and continuing from Fig. 8
- FIG. 10 is a flowchart showing an operation of design data table update processing by the design data reading Z writing unit 204 of the content using device 20.
- FIG. 11 is a diagram showing a data configuration of a design data table 500 that is a modification of the design data table 300.
- FIG. 12 is a diagram showing a data configuration of a design data table 500a that is a modification of the design data table 300.
- FIG. 13 is a flowchart showing the operation of a modified example of the design data table update process.
- FIG. 14 Data structure of design data table 600, which is a modification of design data table 300 FIG.
- the algorithm update system 1 is a system in which a content use device that has acquired encrypted content from a content server uses a circuit that can reconfigure a specified encrypted algorithm to decrypt and reproduce the content.
- FIG. 1 is a diagram showing a system configuration of the algorithm update system 1.
- the algorithm update system 1 includes a content server 10, a content using device 20, It consists of a TV 21 and a design data server 30.
- the content use device 20 and the TV 21 are connected via a cable, and the content server 10, the content use device 20, and the design data server 30 are connected via a network 40, respectively.
- the content server 10 is a computer system composed of a microprocessor, ROM, RAM, hard disk unit, and the like.
- a computer program is stored in the RAM or the hard disk unit, and the content server 10 achieves its function when the microprocessor executes the computer program.
- the content server 10 manages a plurality of encrypted contents in a content table 100 described later.
- Each encrypted content stored in the content server 10 is data generated by encrypting the content according to a certain encryption algorithm.
- the content in the present embodiment is digital data generated by compressing and encoding a movie according to the MPEG-2 standard.
- the content in the present invention is not limited to a movie, but may be music, a still image, a computer program, or the like.
- FIG. 2 is a diagram showing a data configuration of the content table 100 stored in the content server 10.
- the content table 100 includes a plurality of pieces of content information 101, 102, 103,..., And each content information includes a content ID, algorithm specifying information, and encrypted content.
- the content information 101 includes a content ID “0001”, algorithm specifying information “A”, and encrypted content “Enc-CNT-0001”.
- the content ID “0001” is information for uniquely identifying the content and the encrypted content generated by encrypting the content.
- the algorithm specifying information “A” is information for specifying an algorithm used for encryption of the encryption key content identified by the content ID “0001”.
- the algorithm specifying information “A” is information indicating DES (Data Encryption Standard) as a specific example.
- the encrypted content “Enc-CNT-0001” uses the content key as an encryption key for the content “CNT-0001” identified by the content ID “0001”, and the encryption key specified by the algorithm specifying information “A”. Data generated by applying an algorithm, that is, DES.
- the content server 10 When the content server 10 receives a content transmission request including a content ID from the content / IJ device 20, the content server 10 reads out the algorithm specifying information and the encrypted content corresponding to the received content ID from the content table 100. Then, the read algorithm specifying information and the encrypted content are transmitted to the content using device 20. Each encrypted content stored in the content table 100 is encrypted using a different content key V, and the content key used for encryption is used for content. It shall be transmitted to device 20 in a safe and reliable manner.
- FIG. 3 is a functional block diagram functionally showing the configuration of the content using device 20.
- the content utilization device 20 includes a transmission / reception unit 201, a design data storage unit 202, a determination unit 203, a design data read / write unit 204, an encryption processing unit 205, and a reproduction control unit 210.
- the encryption processing unit 205 further includes a unique key storage unit 206, a decryption unit 207, a reconfigurable unit 208, and a content key storage unit 209.
- the content utilization device 20 is a computer system including a microprocessor, a ROM, a RAM, a hard disk unit, and the like. A computer program is recorded in the RAM or the hard disk unit, and the content utilization device 20 achieves its function by executing the microprocessor-powered computer program. Below, each component of the content utilization apparatus 20 is demonstrated.
- the transmission / reception unit 201 is a network connection unit, and transmits / receives data to / from the content server 10 and the design data server 30 via the network 40.
- the transmission / reception unit 201 transmits a content transmission request to the content server 10 and receives algorithm specifying information and encrypted content from the content server 10. Receive The algorithm specifying information is output to the determination unit 203, and the encrypted content is output to the reconfigurable unit 208.
- the transmission / reception unit 201 transmits a design data transmission request to the design data server 30 and receives encrypted design data from the design data server 30.
- the received encrypted design data is output to the design data reading Z writing unit 204.
- the design data storage unit 202 stores encrypted design data generated by encrypting design data.
- the design data is data necessary for configuring a circuit in the reconfigurable unit 208 of the cryptographic processing unit 205. Specifically, it is information indicating the formation of a logic circuit in the reconfigurable section 208, information indicating the wiring of each logic circuit, and the like.
- the design data storage unit 202 manages design data by using a design data table 300 as shown in FIG.
- the design table 300 includes a plurality of pieces of design data information 301, 302, to 3 03, 304, 305, '306, and each design data information includes a design data ID, an encrypted design data. , Flag, and usage count.
- the design data information 301 includes a design data ID “A”, encrypted design data “Enc-A RC_AJ”, a flag “0”, and a use count “4”.
- the design data ID “A” is information for uniquely identifying the design data and the encrypted design data generated by encrypting the design data.
- the design data and the encryption algorithm have a one-to-one correspondence
- the design data ID “A” is specified by the algorithm specifying information “A”.
- This is information for identifying design data for realizing the circuit of the encryption key algorithm in the reconfigurable section 208. That is, the design data ID “A” is information indicating DES as well as the algorithm specifying information “A” described above.
- the design data ID “B” is information for identifying design data for realizing the circuit of the cryptographic key algorithm specified by the cryptographic key algorithm specifying information “B”.
- the design data IDs “I”, “K”, and “V” are encrypted with the algorithm identification information “I”, “,” “ ⁇ ”, and “V”, respectively. ⁇ Algorithm times This is information for identifying design data for realizing a road.
- the encryption design data “Enc—ARC—A” is obtained by applying the encryption algorithm E1 to the design data “ARC—A” identified by the design data ID “A” using the unique key as an encryption key. It is the generated data.
- An example of the encryption algorithm E 1 is DES.
- the flag is set to either “1” or “0”.
- the design data information with the flag set to “1” indicates that the circuit of the current reconfigurable section 208 is configured based on the design data identified by the design data ID included in the design data information. Indicates. In the design data information in which the flag is set to “0”, the circuit of the current reconfigurable unit 208 is configured based on the design data identified by the design data ID included in the design data information. It shows that it is cunning.
- the reconfigurable unit 208 Since the flag included in the design data information 302 is set to “1”, the reconfigurable unit 208 currently configures a circuit based on the design data identified by the design data ID “B”. It has been shown. At this time, all the flags included in the design data information other than the design data information 302 are “0”.
- the number of times of use indicates the number of times that the design data is configured as a circuit in the reconfigurable unit 208 and used for the decryption processing of the encryption key content.
- the reconfigurable unit 208 configures a circuit based on the design data whose design data ID is "A”, and four encryption codes are used. ⁇ Indicates that the content has been decrypted.
- a circuit is configured in the reconfigurable unit 208 based on the design data having the design data ID power S “A”, and thereafter, the circuit is used a plurality of times. When decryption processing is performed, the multiple decryption processing is counted and used as the number of times of use.
- the determination unit 203 has a function of performing the following two determinations (A) and (B).
- the design data table 300 holds the design data of the cryptographic algorithm specified by the received algorithm specifying information! judge.
- the design data ID that matches the received algorithm specifying information is the design data ID.
- the design data ID Stored in the data table 300, and if there is a matching design data ID, the design data is retained, and if there is no matching design data ID, the design data ID is stored. Is determined not to be held.
- the flag of the design data information including the design data ID that matches the algorithm specifying information is read.
- the flag is “1”
- the determination unit 203 sends design data including the design data ID to the design data server 30 via the transmission / reception unit 201 and the network 40. Send a send request.
- the determination unit 203 When the determination unit 203 holds the design data but determines that the circuit configuration is not realized, the determination unit 203 instructs the design data read Z writing unit 204 to perform a circuit based on the design data. Instruct the configuration.
- Design data reading Z writing unit 204 receives an instruction from determination unit 203, reads design data from design data table 300, and outputs the design data to decoding unit 207.
- the received design data is output to the decoding unit 207. Further, the design data read Z
- the writing unit 204 performs a design data table update process. Specifically, the update process of the design data information included in the design data table and the update process of the design data table itself.
- the design data reading Z writing unit 204 sets a flag and updates the number of times of use as design data information update processing, and receives new design data received from the design data server 30 as design data table update processing. Generation of design data information and design data tape of generated design data information Add to
- the Z writing unit 204 holds a data size threshold set in advance based on the maximum storage capacity of the design data storage unit 202.
- the design data reading Z writing unit 204 is currently stored in the design data storage unit 202 and has the data size of the design data table.
- the design data reading Z writing unit 204 receives the encrypted design data identified by the design data ID “W” from the design data server 30 and generates the design data information 307 related to the encrypted design data. .
- Design data reading Z writing unit 204 is designed data table 3
- the design data information 304 having JJ is deleted from the design data table 300. After that, the design data reading Z writing unit 204 adds the newly generated design data information 307 to the design data table to generate a new design data table 300a shown in FIG.
- the encryption processing unit 205 includes a unique key storage unit 206, a decryption unit 207, a reconfigurable unit 208, and a content key storage unit 209.
- the encryption processing data is decrypted and encrypted. It has functions such as content decryption.
- the unique key storage unit 206 is key information used for decrypting the encryption key design data. A unique key is stored.
- the decryption unit 207 Upon receiving the encrypted design data from the design data read / write unit 204, the decryption unit 207 reads the unique key from the unique key storage unit 206, and uses the read unique key as a decryption key.
- the design data is decrypted using the decryption algorithm D1.
- the decryption algorithm D1 is an algorithm for converting the ciphertext encrypted by the encryption algorithm E1 into plaintext, and an example thereof is DES.
- Decoding section 207 outputs the decoded design data to reconfigurable section 208.
- the function of the decryption unit 207 may be realized by hardware! /, Or may be realized by software.
- the reconfigurable unit 208 specifically includes a plurality of logic circuit blocks capable of realizing a combinational circuit and a sequential circuit, and a wiring partial force between the logic circuit blocks.
- the logic circuit block is a circuit unit including a look-up table and a flip-flop, and realizes a desired logic circuit by changing a set value of the look-up table.
- a transistor switch or the like is arranged in the wiring portion, and the wiring path can be freely set.
- the reconfigurable unit 208 includes a ROM that stores design data received from the design data read / write unit 204.
- the reconfigurable unit 208 receives design data from the decoding unit 207 and stores the received design data in the ROM.
- the reconfigurable unit 208 configures the circuit by controlling the logic circuit block and the wiring portion based on the design data stored in the ROM.
- the circuit configured by the reconfigurable unit 208 is a circuit for decrypting the encrypted content, and the reconfigurable unit 208 corresponds to the encrypted content received from the transmission / reception unit 201.
- the content key is read from the content key storage unit 209, and the content is decrypted using the read content key as a decryption key.
- the reconfigurable unit 208 outputs the decrypted content to the reproduction control unit 210.
- the content key storage unit 209 stores a content key that is a decryption key used for decrypting encrypted content.
- the content key storage unit 209 stores a content key table 350 shown in FIG.
- the content key table 350 includes a plurality of pieces of content key information.
- the content key information is configured by associating the content ID with the content key data.
- the content key information 351 is composed of the content 10 “0003” and the content key 3 ⁇ 4: ji? ⁇ 1-0 003 ”. This decrypts the encrypted content identified by the content ID“ 0003 ”. Indicate that the content key is “KCNT-0003”!
- the content key table 350 is transmitted from the content server 10 to the content using device 20 by a safe and reliable method.
- the content use device 20 may be received from the content Sano 10 each time together with the encrypted content that is not necessarily required to have a plurality of content keys in advance. .
- the playback control unit 210 receives the decrypted content from the reconfigurable unit 208 and converts the received content into reproducible information. Specifically, the playback control unit 210 includes a video buffer, an audio buffer, an MPEG-2 video decoder, an MPEG-2 audio decoder, and the like, and generates a video signal and an audio signal from the received content. The reproduction control unit 210 outputs the generated video signal and audio signal to the TV 21.
- the design data server 30 is a computer system that includes a microprocessor, ROM, RAM, hard disk, and the like. A computer program is stored in the RAM or the hard disk unit, and the design data server 30 achieves its function when the microprogram executes the computer program.
- the design data server 30 manages a plurality of encrypted design data in the design data table 400 shown in FIG.
- the design data table 400 includes a plurality of design data information 401, 402.
- each design data information is configured by associating algorithm specifying information and encryption key design data.
- the cryptographic key design data is cryptographic key data generated by applying a cryptographic key algorithm E1 using a unique key as key information for the design data.
- the encrypted design data “Enc— ARC— A” is the data generated by encrypting the design data “ARC— A”
- the encrypted design data “Enc— ARC— W” included in the design data information 403 Is data generated by encrypting the design data “ARC-W”.
- the design data in this embodiment is data necessary for configuring a decryption circuit for decrypting encrypted content in the reconfigurable section 208 of the content utilization device 20.
- the algorithm specifying information indicates an algorithm realized by a circuit configured by the reconfigurable unit 208 based on the associated design data.
- the algorithm specifying information “A” included in the design data information 401 is information for specifying the algorithm of the circuit configured based on the design data “ARC-Aj.
- the algorithm specifying information Assuming that “A” is information indicating DES as a specific example, the design data “ARC—A” is necessary for configuring the DES decoding circuit in the reconfigurable section 208 of the content utilization device 20. It is a lot of data.
- the design data server 30 When the design data server 30 receives a design data transmission request including the algorithm specifying information from the content use device 20, the design data server 30 reads the encryption key design data corresponding to the received algorithm specifying information from the design data table 400. Then, the read encryption design data is transmitted to the content use device 20.
- the design data server 403 reads the design data information 403 from the design data table 400, and further receives the design data information 403.
- the encryption key design data “Enc—ARC—W” is read out from the content and transmitted to the content use device 20.
- each encryption key design data stored in the design data table 400 is encrypted using the same unique key, and the unique key used for encryption is used for content. It shall be transmitted to device 20 in a safe and reliable manner!
- a content request is generated in the content using device 20 (step S101).
- the content request is generated, for example, by inputting the content ID of the content viewed by the user to the content using apparatus 20 using an input unit (not shown).
- the transmission / reception unit 201 of the content utilization device 20 transmits a content transmission request including the content ID to the content server 10 via the network 40, and the content server 10 receives the content transmission request (step S102). .
- the content server 10 reads the content ⁇ blueprint having the content ID that matches the content ID included in the received content transmission request from the content tape 100.
- the content server 10 reads the algorithm specifying information and the encrypted content from the read content information (step S103). For example, when the content server 10 receives the content transmission request including the content ID “0003” in step S102, the content server 10 reads the content information 103 from the content table 100, and uses the algorithm from the read content information 103. Reads the specific information “W” and the encryption key content “Enc-CNT-0003”.
- the content server 10 transmits the read algorithm specifying information and the encrypted content to the content using device 20, and the transmitting / receiving unit 201 of the content using device 20 transmits the algorithm specifying information via the network 40. And the encrypted key content are received (step S1 04).
- the transmission / reception unit 201 outputs the received encrypted content together with the content ID of the encrypted content to the reconfigurable unit 208, and outputs the received algorithm specifying information to the determination unit 203.
- the determination unit 203 determines whether or not the circuit strength of the cryptographic algorithm specified by the algorithm specifying information received in step S 104 is currently configured in the reconfigurable unit 208 ( Step S 105).
- the determination unit 203 reads the flag field of a plurality of design data information included in the design data table, and reads the design data ID of the design data whose flag is set to “1”. Stick out. The determination unit 203 determines whether or not the design data ID from which the design data table force is also read matches the algorithm identification information received in step S104.
- the determination unit 203 determines that the desired circuit is currently configured in the reconfigurable unit 208. If they do not match, the design data ID is determined from the design data table. If the power cannot be read, it is determined that the desired circuit is currently configured in the reconfigurable unit 208.
- the flag is set to “1”. Since the set design data information is the design data information 302 including the design data ID “B”, the design data ID “B” does not match the design data ID “A”. Currently, the reconfigurable unit 208 determines that the circuit based on the design data is not configured. On the other hand, when the algorithm specifying information received in step S104 is “B”, the determination unit 203 determines that the reconfigurable unit 208 is currently configured with a circuit based on the design data.
- step S 105 If it is determined in step S 105 that the circuit is configured in reconfigurable section 208 (YES in step S 105), the process proceeds to step S 202 and processing is continued.
- step S105 If it is determined in step S105 that the circuit is not configured by the reconfigurable unit 208 (NO in step S105), the determination unit 203 is identified by the algorithm identification information received in step S104. It is determined whether the design data of the algorithm to be stored is held in the design data storage unit 202 (step S106). Specifically, the determination is performed by determining whether or not the design data ID that matches the algorithm specifying information received in step S104 exists in the design data table.
- the design data storage unit 202 stores the design data table 300 shown in FIG. 4, and the determination unit 203 receives the algorithm specifying information “W”.
- the determination unit 203 reads the design data ID column of all design data information included in the design data table 300, and determines whether or not there is a design data ID that matches the algorithm specifying information “W”. If the design data ID “W” exists, it is determined that the design data is retained. If the design data ID “W” does not exist, the design data is retained. Judge that there is no.
- step S104 If the design data specified by the algorithm identification information received in step S104 is held in step S106 (YES in step S106), the design data read Z writing unit 204 Then, the cryptographic key design data is read from the design data storage unit 202 (step S122), and the read cryptographic key design data is output to the decrypting unit 207. Thereafter, the process proceeds to step S123 to continue the process.
- step S104 determines in step S104.
- a design data request including the received algorithm specifying information is generated (step S107).
- the determination unit 203 transmits a design data request including algorithm specifying information to the design data server 30 via the transmission / reception unit 201 and the network 40, and the design data server 30 receives the design data request (step S108). ).
- the design data server 30 reads design data information having algorithm specifying information that matches the algorithm specifying information included in the design data request received in step S108 from the design data table 400.
- the design data server 30 reads the cipher design data from the read design data information (step S109).
- the design data server 30 receives the algorithm specifying information “W” in step S108
- the design data server 30 reads the algorithm specifying information “W” from the design data table 400 shown in FIG.
- the design data information 403 including “W” is read out, and then the encrypted design data “Enc—ARC—W” is read out from the design data information 403.
- the design data server 30 transmits the read cipher key design data to the content using device 20 via the network 40, and the transmitting / receiving unit 201 of the content using device 20 receives the cipher key design data ( Step S 110).
- the transmission / reception unit 201 outputs the received encrypted design data to the design data read / write unit 204.
- step Sll design data information related to the encryption key design data received in step S110 (step Sll). Specifically, information of one record including the design data ID, encrypted design data, flag, and number of uses is generated, and then the process continues to step S123.
- the design data ID column the algorithm received in step S104 is displayed. Write the algorithm specific information, and write the encryption design data received in step S110 in the encryption key design data field. At this point, the flag is set to “0” and “0” is written in the number of times used column.
- design data reading Z writing unit 204 outputs the encrypted design data to decryption unit 207.
- the decryption unit 207 When the decryption unit 207 receives the encryption key design data from the design data read Z write unit 204, the decryption unit 207 reads the unique key from the unique key storage unit 206. The decryption unit 207 decrypts the design data by applying the decryption algorithm D1 to the encrypted design data using the unique key as the decryption key (step S123). The decoding unit 207 outputs the decoded design data to the reconfigurable unit 208.
- the reconfigurable unit 208 reconfigures the circuit based on the design data received from the decoding unit 207 (step S201).
- step S 202 the design data read / write unit 204 performs a design data table update process.
- the reconfigurable unit 208 reads the content key corresponding to the content ID received from the transmission / reception unit 201 from the content key table 350 of the content key storage unit 209.
- the reconfigurable unit 208 receives the content ID “0003”, it reads the content key KCNT-0003 from the content key information 351 of the content key table 350.
- the reconfigurable unit 208 uses the read content key as a decryption key to decrypt the content (step S 203).
- the reconfigurable unit 208 outputs the decrypted content to the reproduction control unit 210.
- the playback control unit 210 decodes the content that has been compression-coded according to the MPEG-2 standard (step S204), and generates a video signal and an audio signal.
- the reproduction control unit 210 outputs the generated video signal and audio signal to the TV 21 (step S205), and the TV 21 reproduces the received video signal and audio signal (step S206).
- step S202, step S203, and step S204 may be performed in parallel with each other, rather than being performed in this order! /. 2.Operation of design data table update processing
- FIG. 10 is a flowchart showing the operation of the design data table update process. The operation shown here is the details of step S202 in FIG.
- Design data read Z writing unit 204 acquires the data size of the design data table stored in design data storage unit 202 (step S301). Next, the design data reading Z writing unit 204 compares the data size acquired in step S301 with a data size threshold stored in advance. When the data size of the design data table is equal to or smaller than the data size threshold value (NO in step S302), the process proceeds to step S305. When the data size of the design data table is larger than the data size threshold (YES in step S302), the design data read Z write unit 204 reads the use count field of all the design data information included in the design data table, and Design data information that is used the least number of times is selected (step S303).
- Design data read Z writing unit 204 deletes the design data information selected in step S303 from the design data table (step S304).
- the design data read Z loading unit 204 adds the design data information generated in step S110 of FIG. 8 to the design data table and writes it (step S305).
- the design data reading Z writing unit 204 sets the flag of the design data information related to the design data in which the circuit is realized to “1” in the reconfigurable unit 208 (step S306). Set other design data information flags to "0".
- the design data reading Z writing unit 204 increments the number of times the design data information related to the design data in which the circuit is realized is incremented in the reconfigurable unit 208 (step S307). The data reading Z writing unit 204 ends the process.
- a field indicating the number of times of use is provided in the design data information, and the number of times the design data is used for content decryption processing in the reconfigurable section 208 is indicated. It has a configuration to manage.
- the design data information is configured to be preferentially deleted from the design data information with the least number of uses included in the design data information, but the design data information in the present invention has a field indicating the number of uses! / Not even.
- the design data storage unit 202 may store a design data table 500 shown in FIG.
- the design data table 500 includes a plurality of design data information, and each design data information includes a design data ID , encrypted design data, and a flag.
- the difference from the design data table 300 shown in FIG. 4 is that the design data information does not include a field for the number of uses.
- the design data reading Z writing unit 204 is set when the design data is used for decryption of the encrypted content. Configure the design data information recording position in the total data table 500 so that it moves up one level.
- the design data read / write unit 204 records the design data information 502 in the design data table 500. Move the position up one level. As a result, as shown in the design data table 500a of FIG. 12, the design data information 502 is arranged one level higher than the design data information 501 having the design data ID “I”.
- Design data reading The Z writing unit 204 performs such rearrangement of design data information each time content is decrypted by the reconfigurable unit 208.
- the maximum design data information is placed at the top, and the design data information that is used less frequently! / ⁇ is placed at the bottom.
- the design data information used for the content decryption process in the reconfigurable unit 208 is configured to be arranged at the top of the design data table. Also good. With this configuration, it is possible to prevent the recently used design data from being deleted.
- FIG. 13 is a flowchart showing the operation of the process of rearranging the design data information and updating the design data table. The operation shown here corresponds to the details of step S202 in FIG. 9 in terms of positioning in the entire system.
- Design data reading Z writing unit 204 acquires the data size of the design data table stored in design data storage unit 202 (step S401). Next, the design data reading Z writing unit 204 compares the data size acquired in step S401 with a data size threshold value stored in advance. If the data size of the design data table is equal to or smaller than the data size threshold (NO in step S402), the process proceeds to step S404. If the data size of the design data table is larger than the data size threshold (YES in step S402), the design data reading Z writing unit 204 deletes the design data information positioned at the lowest position in the design data table (step S402). S403).
- the design data read Z loading unit 204 adds the design data information generated in step S 110 of FIG. 8 to the design data table and writes it (step S 404).
- the design data reading Z writing unit 204 sets the flag of the design data information related to the design data for which the circuit is realized to “1” in the reconfigurable unit 208 (step S405). ) Set other design data information flags to “0”.
- the design data reading Z writing unit 204 determines the position in the design data table of the design data information related to the design data for which the circuit is realized.
- the design data is read and the Z writing unit 204 ends the process (step S406).
- step S403 the design data information at the lowest position is deleted.
- a predetermined number of design data information may be deleted at a time.
- the number of design data information to be deleted may be determined according to the data size of the design data table. This also applies to an embodiment in which the design data information includes a field for the number of times of use.
- the design data in the present invention may be configured to change the storage area to be stored according to the number of times of use.
- the content utilization device reads as a design data storage area. It may be configured to have an EEPROM with a high output speed and an HDD with a low read speed. Then, the design data information that is frequently used may be stored in an EE PROM that has a high reading speed, and the design data information that is less frequently used may be stored in the HDD.
- FIG. 14 is a diagram showing a data configuration of the design data table 600 stored in the design data storage unit of the content using apparatus having the above configuration.
- the design data table 600 includes a plurality of pieces of design data information 601, 602,... 603, 604,.
- Each design data information includes a design data ID, encrypted design data, a flag, the number of times of use, and a storage area.
- a storage area field is provided.
- the design data is stored in the HDD when the number of uses is 1 or 2
- the design data is stored in the EEPROM when the number of uses is 3 or more. Has been.
- the design data reading Z writing unit may be configured to change the storage location of the design data in accordance with the number of times the design data is used. This allows design data that is likely to be used in the future to be stored in an EEPROM that has a high read speed, and design data that is unlikely to be used to be stored in an HDD that has a low read speed. Can do.
- the encryption processing unit 205 in the above embodiment has a configuration for performing the decryption process of the encrypted design data and the decryption process of the encrypted content, but the content utilization device of the present invention is not limited to the decryption process.
- the present invention also includes a case where encryption processing is performed.
- the present invention is not limited to the content use apparatus that performs the encryption process Z decryption process, and can also be applied to the case of performing the content encoding process Z reverse encoding process and the like.
- the content use device holds a plurality of design data for realizing a circuit corresponding to a plurality of coding algorithms, and internally holds the design data corresponding to the requested coding algorithm. If the circuit is reconfigured based on the design data held inside, the circuit is reconfigured and the design data corresponding to the requested code algorithm is not held internally. Obtains the desired design data from an external design data server, and based on the obtained design data, the circuit in the reconfigurable part May be configured to reconfigure.
- the content use device 20 and the design data server 30 are connected via the network 40, and the content use device 20 communicates with the design data by communication via the network 40.
- the configuration is such that the design data is acquired from the server 30, in the present invention, the configuration that acquires the design data via the network is not essential for the content use device 20.
- the content utilization device 20 includes medium input / output means for inputting / outputting information to / from a recording medium, and directly accesses a recording medium in which design data is stored via the medium input / output means.
- a configuration for acquiring design data from a recording medium is also included in the present invention.
- the content use device 20 and the content server 10 are connected via the network 40, and the content use device 20 communicates via the network 40 with the content search device 10.
- the content utilization device 20 it is not essential for the content utilization device 20 to acquire the algorithm specifying information and the encrypted content via the network.
- the content utilization device 20 includes medium input / output means, and even if it is configured to acquire algorithm specifying information and encrypted content from a recording medium via the medium input / output means, included.
- any one of the algorithm specifying information and the encrypted content may be acquired via the network 40, and any one may be acquired from the recording medium!
- the plurality of content keys held by the content key storage unit 209 has a configuration that is different for each content.
- the configuration that is a different key for each content is It's not essential.
- the unique key held by unique key storage unit 206 and the content key held by content key storage unit 209 are configured as different data. It is not limited to.
- the unique key and the content key may be the same key.
- the content key may be calculated dynamically rather than using static key data, and may be temporarily stored in the content key storage unit 209.
- the unique key for decrypting the encryption key design data need not be unique.
- the key data may be changed, or the key data may be changed or updated.
- the content using device 20 is configured to obtain design data via the network 40 when the design data indicated by the algorithm specifying information is not held.
- the invention is not limited to this configuration.
- the content use device 20 may be configured to include a notification unit and notify the user that the design data is not held. And it may be configured to receive an instruction to obtain design data from the user.
- the design data table stored in the design data storage unit 202 is configured to store the design data for configuring the circuit in the reconfigurable unit 208.
- the present invention is not limited to the configuration, and for example, the encryption algorithm implemented by the decryption unit 207 may be managed by the same design data table.
- the function of the decryption unit 207 may be used for decryption processing of encrypted content.
- the encryption algorithm realized by the decryption unit 207 is DES and the algorithm of the decryption circuit necessary for decrypting the encrypted content is DES, It is not necessary to reconfigure the DES decryption circuit again in the configurable section 208.
- the decryption section 207 can decrypt the encrypted content.
- the configuration for specifying the algorithm for decrypting the encrypted content is as follows. It is not limited to.
- the encryption algorithm to be used is determined in advance according to the source of the encrypted content (the supplier of the encrypted content). You can configure it like this.
- the configuration is such that the design data information is deleted according to the number of times of use.
- the present invention is not limited to this configuration. For example, if design data is not deleted due to insufficient capacity of the design data storage unit 202, one or more design data will be deleted in the most efficient way to resolve the shortage of cases. It may be configured to. Specifically, when it is desired to add 30 KB of design data, instead of deleting 100 KB of design data, 10 KB of design data and 20 KB of design data may be deleted.
- the design data information located at the lowest position of the design data table is deleted.
- the present invention is limited to that configuration. It is not a thing.
- the configuration may be such that a predetermined number of design data information is deleted in order of the lowest order by periodically referring to the design data table.
- the design data read Z-write unit 204 is used when the capacity of the design data storage unit 202 is insufficient (specifically, the data size of the design data table is smaller than the data size threshold).
- the present invention is not limited to this configuration.
- the design data when the design data is a function that realizes encryption processing and it is found that the security has been lowered, the design data may be deleted according to an instruction from the outside. In this case, if a circuit based on the design data is configured in the reconfigurable unit 208, the circuit may be deleted together with the design data. Further, not only a reduction in safety but also a configuration in which the design data or the circuit of the reconfigurable unit 208 is deleted in accordance with an external request to delete the design data.
- the design data The number of times the circuit configured in the reconfigurable unit 208 based on the data is used for the decryption processing of the encrypted content is not limited to this.
- each piece of design data information constituting the design data table 300 includes the number of times of loading instead of the number of times of use.
- the present invention may be the method described above. Further, the present invention may be a computer program that realizes these methods by a computer, or may be a digital signal that also has the computer program power.
- the present invention also provides a computer-readable recording medium such as a flexible disk, hard disk, CD-ROM, MO, DVD, DVD-ROM, DVD-RAM, BD (Blu-ray). Disc), semiconductor memory, etc. may be recorded. Further, the present invention may be the computer program or the digital signal recorded on these recording media.
- the present invention may be configured such that the computer program or the digital signal is transmitted via an electric communication line, a wireless or wired communication line, a network typified by the Internet, or the like.
- the present invention may also be a computer system including a microprocessor and a memory.
- the memory may store the computer program, and the microprocessor may operate according to the computer program.
- the present invention also includes the case where some or all of the functional blocks of the content sano 10, the content utilization device 20, and the design data server 30 in the above embodiment are implemented as an LSI that is an integrated circuit. included. Even if these are individually chipped It may be good or it may be a single chip to include some or all.
- the name used here is LSI, but it can also be called IC, system LSI, super LSI, or ultra LSI depending on the degree of integration.
- the method of circuit integration is not limited to LSI's, and implementation using dedicated circuitry is also possible.
- FPGA Field Programmable Gate Array
- the present invention can be used in a management, continuous, and repetitive manner in industries that provide content to users and in industries that produce and sell devices that can use the content. it can.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Storage Device Security (AREA)
Abstract
設計データ記憶部202は、複数の設計データを記憶している。判定部203は、コンテンツサーバ10から受信した暗号化コンテンツを復号するための回路が再構成可能部208で実現されているか、また、暗号化コンテンツを復号するための回路を実現するための設計データを、保持しているか否か判定する。再構成可能手段において所望の回路が実現されておらず、所望の設計データを保持していない場合には、ネットワークを介して、設計データサーバ30から所望の設計データを取得する。
Description
明 細 書
アルゴリズム更新システム 技術分野
[0001] 本発明は、機器内にハードウェア実装されている暗号ィ匕方式を更新する技術に関 する。
背景技術
[0002] ネットワークを介したコンテンツの配信、又は記録媒体に記録したコンテンツの配布 においては、コンテンツの不正利用を防止し、コンテンツの著作権を保護するために 、一般的に、コンテンツは暗号ィ匕されて配信、又は配布される。
コンテンツを再生する機器では、暗号ィ匕コンテンツを復号する復号処理を行うが、 機器における暗号化方式の実装は、必要とされる処理速度や、耐タンパ一性の観点 力もハードウェアで実装されて 、る場合が多 、。
[0003] ここで、暗号ィ匕処理に係る秘密情報が暴露された場合には、機器に実装された暗 号ィ匕方式を新たな暗号ィ匕方式に更新し、安全性を保ちたいとの要望があるが、近年 で【ま、 FPLrA (Field Programmable ate Arrayノゃ PLA (Programmable Logi c Array)等の再構成が可能なデバイスを用いることにより、ハードウェアで実装され た暗号ィ匕方式を更新することも可能となってきた (特許文献 1参照)。
[0004] また、特許文献 2では、機器の内部に暗号ィ匕アルゴリズムファイルを格納するデー タベースを保持して、外部からの指示に従い、前記データベース力 アルゴリズムフ アイルを取得し、機器にハードウェア実装されて 、る暗号ィ匕アルゴリズムを更新する 技術が開示されている。
特許文献 1 :特開平 10— 320191号公報
特許文献 2 :特開平 10— 55135号公報
発明の開示
発明が解決しょうとする課題
[0005] し力しながら、上記の従来技術では、機器内のデータベースに格納されていない新 たな暗号ィ匕アルゴリズムには対応できな ヽと 、う問題がある。
本発明は、上記の問題点に鑑みなされたものであって、機器内のデータベースに 格納されて 、な 、新たな暗号ィ匕アルゴリズムにも対応することができるアルゴリズム更 新システムを提供することを目的とする。
課題を解決するための手段
[0006] 上記の目的を達成するために、本発明は、コンテンツ利用装置であって、設計デー タに基づき、回路を再構成することが可能な再構成可能手段と、コンテンツの利用に 係る 1つの機能を実現する回路であるコンテンツ利用回路が、前記再構成可能手段 において構成されているか否か判定する第 1判定手段と、前記再構成可能手段にお V、て前記コンテンツ利用回路を構成するためのコンテンツ利用設計データを、内部 に保持しているか否か判定する第 2判定手段と、前記第 1及び前記第 2判定手段に よる判定が、共に否定的である場合に、前記コンテンツ利用設計データを、外部から 取得する取得手段とを備え、前記再構成可能手段は、取得した前記コンテンツ利用 設計データに基づき、回路を再構成することを特徴とする。
発明の効果
[0007] ここで、上記の「再構成可能手段」は、後述の実施の形態にぉ 、て、再構成可能部 208と対応する。「第 1判定手段」及び「第 2判定手段」は、実施の形態の判定部 203 がその機能を担う。「取得手段」は、実施の形態の送受信部 201及び設計データ読 出 Z書込部 204がその機能を担う。
上記の構成によると、コンテンツ利用装置は、再構成可能手段において回路が実 現されておらず、且つ、設計データ自体も保持していない回路を構成するため、設計 データを外部から取得するので、再構成可能手段において、新たな回路を構築する ことができる。
[0008] また、再構成可能手段において、コンテンツ利用回路が既に構成されている場合 には再構成は不要であり、コンテンッ利用設計データを既に保持して ヽる場合には 外部からの取得は不要であるため、第 1及び第 2判定手段の判定を行うことにより、効 率的に回路の再構成を行うことができる。
ここで、前記コンテンツ利用装置は、前記再構成可能手段において、コンテンツの 利用に係る複数の機能を実現する回路を構成するための、複数の設計データを保
持する設計データ記憶手段を備え、前記第 1判定手段は、前記設計データ記憶手 段に、前記コンテンツ利用設計データが記憶されているカゝ否かを判断することにより 、前記判定を行うように構成してもよい。
[0009] この構成〖こよると、コンテンツ利用装置は、内部に複数の設計データを格納すること ができ、設計データ記憶手段に格納されていない設計データは、外部から取得する ことで、再構成可能手段において、新たな回路を構築することができる。
ここで、前記コンテンツの利用に係る前記機能は、前記コンテンツの暗号化、又は 前記コンテンツが暗号ィ匕されて生成された暗号ィ匕コンテンツの復号であり、前記コン テンッ利用回路は、前記暗号化の機能を実現するための回路、又は前記復号の機 能を実現するための回路であるように構成してもよ 、。
[0010] この構成〖こよると、前記コンテンツ利用装置は、コンテンツの暗号ィ匕処理又は復号 処理を行う装置であって、例えば、暗号化処理に係る秘密情報が暴露された場合に 、実装されている暗号ィ匕方式を新たな暗号ィ匕方式に更新し、安全性を保ちたいとの 要望が生じた場合、新たな暗号ィ匕方式に係る設計データを内部に保持していない場 合であっても、外部力も取得することにより、再構成可能手段において、新たな暗号 化方式に対応する回路を再構築することができる。
[0011] ここで、前記コンテンツ利用装置は、ネットワークを介して外部の設計データサーバ と接続されており、前記取得手段は、前記設計データサーバから、前記コンテンツ利 用設計データを取得するように構成してもよ ヽ。
この構成によると、コンテンツ利用装置は、ネットワークに接続可能な環境であれば 、ネットワークを介して設計データサーバからコンテンツ利用設計データを取得するこ とがでさる。
[0012] ここで、前記コンテンツ利用装置は、ネットワークを介して外部のコンテンツサーバと 接続されており、前記コンテンツサーバから、前記暗号化コンテンツ、及び前記コン テンッ利用設計データを一意に識別可能である設計データ識別子とを受信し、前記 取得手段は、前記設計データサーバへ、前記設計データ識別子を出力し、前記コン テンッ利用設計データの送信を要求し、前記再構成可能手段は、取得した前記コン テンッ利用設計データに基づき、前記暗号ィ匕コンテンツの復号を実現するための回
路である前記コンテンツ利用回路を再構成するように構成してもよ 、。
[0013] この構成によると、コンテンツ利用装置は、コンテンツサーノから受信した暗号ィ匕コ ンテンッと対応する設計データを、設計データサーバから取得することができる。 ここで、前記コンテンツ利用装置は、記録媒体から情報を読み出す媒体入力手段 を備え、前記取得手段は、前記媒体入力手段を介して、前記コンテンツ利用設計デ ータが記録されて 、る記録媒体から、前記コンテンツ利用設計データを取得するよう に構成してもよい。
[0014] この構成〖こよると、コンテンツ利用装置は、ネットワークを介さず前記コンテンツ利用 設計データを記録媒体から直接読み込むので、安全に前記コンテンツ利用設計デ ータを取得することができる。
ここで、前記コンテンツの利用に係る前記機能は、コンテンツの符号化、又は符号 化されて生成されたコンテンツの逆符号ィ匕であり、前記コンテンツ利用回路は、前記 符号化の機能を実現するための回路、又は前記逆符号化の機能を実現するための 回路であるように構成してもよ 、。
[0015] この構成〖こよると、前記コンテンツ利用装置は、コンテンツの符号化処理又は逆符 号ィ匕処理を行う装置であって、複数の設計データを記憶しておくことにより、複数の 符号ィ匕 Z逆符号ィ匕のアルゴリズムに対応することができる。更には、コンテンツ利用 装置が保持して 、な 、新たな符号ィ匕 Z逆符号ィ匕のアルゴリズムに係る設計データを 内部に保持していない場合であっても、外部力 取得することにより、再構成可能手 段において、新たな符号ィ匕 z逆符号ィ匕回路を再構築することができる。
[0016] ここで、前記設計データ記憶手段は、複数の設計データが配列された設計データ テーブルを記憶しており、前記取得手段は、前記コンテンツ利用設計データを取得 すると、取得した前記コンテンツ利用設計データを、前記設計データテーブルに書き 込み、前記コンテンツ利用装置は、更に、前記設計データテーブルのデータ量に基 づき、前記設計データ記憶手段から設計データを削除するか否か判定する削除判 定手段と、前記削除判定手段により、設計データを削除すると判定された場合に、削 除すべき設計データを選択し、選択した前記設計データを、前記設計データテープ ルカも削除する設計データ削除手段とを備えるように構成してもよい。
[0017] この構成によると、取得手段が新たなコンテンツ利用設計データを取得する都度、 設計データテーブルのデータ量は増加するが、削除判定手段及び削除手段を有す ることにより、設計データテーブルのデータ量が設計データ記憶手段の記憶容量を 超えることを制限することができる。
ここで、前記設計データテーブルは、設計データ毎に、設計データと対応付けて、 当該設計データが前記再構成可能手段において回路構成された頻度を示す設計 データ使用情報を記憶しており、前記設計データ削除手段は、前記削除判定手段 により、設計データを削除すると判定された場合に、設計データ使用情報を読み、設 計データ使用情報が示す使用頻度が最も低い設計データを、前記削除すべき設計 データとして選択するように構成してもよ!/、。
[0018] 更に、前記設計データ削除手段は、前記削除判定手段により、設計データを削除 すると判定された場合に、前記複数の設計データ情報に含まれる設計データ使用情 報を読み、設計データ使用情報が示す使用頻度が所定値以下である設計データを 、優先的に前記削除すべき設計データとして選択するように構成してもよい。
この構成〖こよると、再構成可能手段による回路の再構成が要求される可能性の低 い設計データ力 優先的に削除することが可能となる。
[0019] ここで、前記設計データ記憶手段は、複数の設計データが配列された設計データ テーブルを記憶しており、前記取得手段は、前記コンテンツ利用設計データを取得 すると、取得した前記コンテンツ利用設計データを、前記設計データテーブルに書き 込み、前記コンテンツ利用装置は、更に、前記再構成可能手段において、回路が再 構成されると、前記設計データテーブルに含まれる複数の設計データの配列を並べ 替える更新手段を備えるように構成してもよ 、。
[0020] この構成によると、例えば更新手段は、設計データテーブルに使用頻度に係る情 報を記述せずに設計データテーブルのデータ量を削減しつつ、設計データの使用 頻度を管理することが可能となる。
ここで、前記コンテンツ利用装置は、更に、前記設計データテーブルのデータ量に 基づき、前記設計データ記憶手段から設計データを削除するか否か判定する削除 判定手段と、前記削除判定手段により、設計データを削除すると判定された場合に、
前記設計データテーブルの最下位から、所定数の設計データを削除する設計デー タ削除手段とを備えるように構成してもよ ヽ。
[0021] この構成によると、取得手段が新たなコンテンツ利用設計データを取得する都度、 設計データテーブルのデータ量は増加するが、削除判定手段及び削除手段を有す ることにより、設計データテーブルのデータ量が設計データ記憶手段の記憶容量を 超えることを制限することができる。
ここで、前記更新手段は、前記再構成可能手段における回路の再構成に用いられ た設計データの、前記設計データテーブル内における配列を 1つ上位へ移動させる ように構成してもよい。
[0022] 更に、前記更新手段は、前記再構成可能手段における回路の再構成に用いられ た設計データの、前記設計データテーブル内における配列を最上位へ移動させるよ うに構成してもよい。
この構成〖こよると、再構成可能手段による回路の再構成が要求される可能性の低 い設計データ力 優先的に削除することが可能となる。
[0023] ここで、前記設計データ記憶手段は、第 1アクセス速度で設計データの読出を行う 第 1記憶部と、前記第 1アクセス速度より速い第 2アクセス速度で設計データの読出を 行う第 2記憶部とを備え、前記再構成可能手段における回路構成の頻度が所定値以 上の設計データを、前記第 1記憶部に記憶し、前記頻度が所定値未満の設計データ を、前記第 2記憶部に記憶するように構成してもよ ヽ。
[0024] 更に、前記設計データ記憶手段は、更に、複数の設計データと使用頻度と格納場 所とを対応付けた設計データテーブルを記憶しており、使用頻度に応じて各設計デ ータの格納場所を前記第 1及び第 2記憶部の間で移動させるように構成してもよい。 この構成〖こよると、コンテンツ利用装置は、再構成可能手段による回路の再構成が 要求される可能性の高い設計データを、アクセス速度の速い記憶部へ記憶し、回路 の再構成が要求される可能性の低 、設計データを、アクセス速度の遅 、記憶部へ記 憶するので、回路の再構成を効率的に行うことが可能となる。
[0025] ここで、前記設計データ記憶手段は、更に、前記再構成可能手段で実現されて ヽ る回路の構成に用いられた設計データを識別するためのフラグを記憶して 、るように
構成してちょい。
この構成〖こよると、再構成可能手段において回路が構成されている設計データを 簡便に識別することが可能であり、回路の再構成が必要であるの力否かの処理が迅 速化される。
図面の簡単な説明
[図 1]アルゴリズム更新システム 1の構成を示すシステム構成図である。
[図 2]コンテンツサーバ 10に記憶されているコンテンツテーブル 100のデータ構成を 示す図である。
[図 3]コンテンツ利用装置 20の構成を機能的に示す機能ブロック図である。
[図 4]コンテンツ利用装置 20の設計データ記憶部 202に記憶されている設計データ テーブル 300のデータ構成を示す図である。
[図 5]設計データテーブル 300aのデータ構成を示す図である。
[図 6]コンテンツ利用装置 20のコンテンツ鍵記憶部 209に記憶されているコンテンツ 鍵テーブル 350のデータ構成を示す図である。
[図 7]設計データサーバ 30に記憶されている設計データテーブル 400のデータ構成 を示す図である。
[図 8]アルゴリズム更新システム 1全体の動作を示すフローチャートであり、図 9に続く [図 9]アルゴリズム更新システム 1全体の動作を示すフローチャートであり、図 8から続
<o
[図 10]コンテンツ利用装置 20の設計データ読出 Z書込部 204による、設計データテ 一ブル更新処理の動作を示すフローチャートである。
[図 11]設計データテーブル 300の変形例である設計データテーブル 500のデータ構 成を示す図である。
[図 12]設計データテーブル 300の変形例である設計データテーブル 500aのデータ 構成を示す図である。
[図 13]設計データテーブル更新処理の変形例の動作を示すフローチャートである。
[図 14]設計データテーブル 300の変形例である設計データテーブル 600のデータ構
成を示す図である。
符号の説明
[0027]
1 アルゴリズム更新システム
10 =1ンテンッサーノ
20 コンテンツ利用装置
21 TV
30 設計データサーバ
40 ネットワーク
201 送受信部
202 設計データ記憶部
203 判定部
204 設計データ読出 Z書込部
205 暗号処理部
206 固有鍵記憶部
207 復号部
208 再構成可能部
209 ノ厂ノ ¾ίηし ' ¾ ρ:[5
210 再生制御部
発明を実施するための最良の形態
[0028] 本発明の実施形態として、アルゴリズム更新システム 1につ ヽて図面を参照して説 明する。
アルゴリズム更新システム 1は、コンテンツサーバから暗号ィ匕コンテンツを取得した コンテンツ利用装置が、指定された暗号ィ匕アルゴリズムを再構成可能な回路を用い て実現し、コンテンツを復号、再生するシステムである。
[0029] く構成〉
図 1は、アルゴリズム更新システム 1のシステム構成を示す図である。同図に示すよ うに、アルゴリズム更新システム 1は、コンテンツサーバ 10、コンテンツ利用装置 20、
TV21、及び設計データサーバ 30から構成される。
コンテンツ利用装置 20と TV21とはケーブルを介して接続されており、コンテンツサ ーバ 10、コンテンツ利用装置 20、及び設計データサーバ 30は、それぞれネットヮー ク 40を介して接続されて 、る。
[0030] 1.コンテンツサーバ 10
コンテンツサーバ 10は、マイクロプロセッサ、 ROM、 RAM,ハードディスクユニット 等から構成されるコンピュータシステムである。 RAM又はハードディスクユニットには 、コンピュータプログラムが記憶されており、マイクロプロセッサがコンピュータプロダラ ムを実行することにより、コンテンツサーバ 10は、その機能を達成する。
[0031] コンテンツサーバ 10は、複数の暗号化コンテンツを、後述するコンテンツテーブル 100にて管理している。コンテンツサーバ 10に格納されている各暗号化コンテンツは 、コンテンツが、ある暗号ィ匕アルゴリズムに従い暗号ィ匕されて生成されたデータである 。本実施形態におけるコンテンツは、一例として、映画が、 MPEG— 2規格に従い圧 縮符号化されて生成されたデジタルデータであるとする。なお、本発明におけるコン テンッは、映画に限定されないのは勿論であり、音楽、静止画、コンピュータプロダラ ム等でもよい。
[0032] 図 2は、コンテンツサーバ 10が記憶しているコンテンツテーブル 100のデータ構成 を示す図である。同図に示すように、コンテンツテーブル 100は、複数のコンテンツ情 報 101、 102、 103、…を含み、各コンテンツ情報は、コンテンツ ID、アルゴリズム特 定情報、及び暗号化コンテンツを含む。
例えば、コンテンツ情報 101は、コンテンツ ID「0001」、アルゴリズム特定情報「A」 、暗号化コンテンツ「Enc— CNT— 0001」を含む。
コンテンツ ID「0001」は、コンテンツ、及び当該コンテンツが暗号化されて生成され た暗号ィ匕コンテンツを一意に識別するための情報である。
[0033] アルゴリズム特定情報「A」は、コンテンツ ID「0001」により識別される暗号ィ匕コンテ ンッの暗号化に用いられたアルゴリズムを特定するための情報である。ここで、ァルゴ リズム特定情報「A」は、具体例として、 DES (Data Encryption Standard)を示す 情報であるとする。
暗号化コンテンツ「Enc—CNT— 0001」は、コンテンツ ID「0001」により識別され るコンテンツ「CNT— 0001」に、コンテンツ鍵を暗号鍵として用い、アルゴリズム特定 情報「A」により特定される暗号ィ匕アルゴリズム、即ち DESを施すことにより生成された データである。
[0034] コンテンツサーバ 10は、コンテンツ禾 IJ用装置 20から、コンテンツ IDを含むコンテン ッ送信要求を受信すると、受信したコンテンツ IDに対応するアルゴリズム特定情報、 及び暗号ィ匕コンテンツをコンテンツテーブル 100から読み出して、読み出したァルゴ リズム特定情報、及び暗号化コンテンツを、コンテンツ利用装置 20へ送信する。 なお、コンテンツテーブル 100に記憶されている各暗号化コンテンツは、それぞれ 異なるコンテンッ鍵を用 V、て暗号ィ匕されて 、るものとし、暗号ィ匕に用 、られたコンテン ッ鍵は、コンテンツ利用装置 20へ、安全且つ確実な方法により送信されているものと する。
[0035] 2.コンテンツ利用装置 20
図 3は、コンテンツ利用装置 20の構成を機能的に示す機能ブロック図である。同図 に示すように、コンテンツ利用装置 20は、送受信部 201、設計データ記憶部 202、判 定部 203、設計データ読出 Z書込部 204、暗号処理部 205、及び再生制御部 210 から構成され、暗号処理部 205は、更に、固有鍵記憶部 206、復号部 207、再構成 可能部 208、及びコンテンツ鍵記憶部 209から構成される。
[0036] コンテンツ利用装置 20は、具体的には、マイクロプロセッサ、 ROM, RAM,ハード ディスクユニット等力も構成されるコンピュータシステムである。 RAM又はハードディ スクユニットには、コンピュータプログラムが記録されており、マイクロプロセッサ力 コ ンピュータプログラムを実行することにより、コンテンツ利用装置 20は、その機能を達 成する。以下では、コンテンツ利用装置 20の各構成要素について説明する。
[0037] (1)送受信部 201
送受信部 201は、ネットワーク接続ユニットであり、ネットワーク 40を介して、コンテン ッサーバ 10、及び設計データサーバ 30とデータの送受信を行う。
送受信部 201は、コンテンツサーバ 10に対し、コンテンツ送信要求を送信し、コン テンッサーバ 10から、アルゴリズム特定情報と暗号ィ匕コンテンツとを受信する。受信
したアルゴリズム特定情報は、判定部 203へ出力され、暗号ィ匕コンテンツは、再構成 可能部 208へ出力される。
[0038] また、送受信部 201は、設計データサーバ 30に対し、設計データ送信要求を送信 し、設計データサーバ 30から、暗号化設計データを受信する。受信した暗号化設計 データは、設計データ読出 Z書込部 204へ出力される。
(2)設計データ記憶部 202
設計データ記憶部 202は、設計データが暗号化されて生成された暗号化設計デー タを記憶している。設計データとは、暗号処理部 205の再構成可能部 208において 回路を構成するために必要なデータである。具体的には、再構成可能部 208におけ る論理回路の形成を示す情報や、各論理回路の配線を示す情報等である。
[0039] 設計データ記憶部 202は、具体的には、図 4に示すように設計データテーブル 300 を用いて、設計データを管理している。
同図に示すように、設計テーブル 300は、複数の設計データ情報 301、 302、〜3 03、 304、 305、 · '·306を含み、各設計データ情報は、設計データ ID、暗号化設計 データ、フラグ、及び使用回数を含む。
[0040] 例えば、設計データ情報 301は、設計データ ID「A」、暗号化設計データ「Enc— A RC_AJ、フラグ「0」、及び使用回数「4」を含む。
設計データ ID「A」は、設計データ、及び当該設計データが暗号化されて生成され た暗号ィ匕設計データを一意に識別するための情報である。ここで、本実施形態にお いては、設計データと暗号ィ匕アルゴリズムとが 1対 1に対応しているものとし、設計デ ータ ID「A」は、アルゴリズム特定情報「A」により特定される暗号ィ匕アルゴリズムの回 路を、再構成可能部 208において実現するための設計データを識別するための情 報である。即ち設計データ ID「A」は、先に説明したアルゴリズム特定情報「A」と同じ ぐ DESを示す情報である。
[0041] 同様に、設計データ ID「B」は、暗号ィ匕アルゴリズム特定情報「B」により特定される 暗号ィ匕アルゴリズムの回路を実現するための設計データを識別するための情報であ る。また、設計データ ID「I」、 」、「K」、及び「V」についても同様に、それぞれ、アル ゴリズム特定情報「I」、 」、「Κ」、及び「V」により特定される暗号ィ匕アルゴリズムの回
路を実現するための設計データを識別するための情報である。
[0042] 暗号化設計データ「Enc— ARC— A」は、設計データ ID「A」により識別される設計 データ「ARC— A」に、固有鍵を暗号鍵として用い、暗号化アルゴリズム E1を施して 生成されたデータである。暗号化アルゴリズム E 1の一例は DESである。
フラグは、「1」又は「0」の何れかに設定される。フラグが「1」に設定されている設計 データ情報は、現在の再構成可能部 208の回路が、当該設計データ情報に含まれ る設計データ IDにより識別される設計データに基づき構成されていることを示す。フ ラグが「0」に設定されている設計データ情報は、現在の再構成可能部 208の回路が 、当該設計データ情報に含まれる設計データ IDにより識別される設計データに基づ き構成されて ヽな 、ことを示す。
[0043] 設計データ情報 302に含まれるフラグは、「1」に設定されていることから、現在、再 構成可能部 208では、設計データ ID「B」により識別される設計データに基づき回路 が構成されていることを示している。このとき、設計データ情報 302以外の他の設計 データ情報に含まれるフラグは、全て「0」である。
使用回数は、設計データが、再構成可能部 208において回路として構成され、暗 号ィ匕コンテンツの復号処理に使用された回数を示している。
[0044] 設計データ情報 301の使用回数は「4」であるから、再構成可能部 208は、設計デ ータ IDが「A」である設計データに基づき回路を構成し、 4個の暗号ィ匕コンテンツの復 号を行ったことを示している。なお、本実施形態においては、例えば、設計データ ID 力 S「A」である設計データに基づき、再構成可能部 208において回路が構成され、そ の後、複数回続けて、当該回路を用いた復号処理が行われた場合には、その複数 回の復号処理をカウントし、使用回数とする。
[0045] (3)判定部 203
判定部 203は、以下の (A)、及び (B)の二つの判定を行う機能を有する。
(A)送受信部 201からアルゴリズム特定情報を受け取ると、受け取ったアルゴリズ ム特定情報により特定される暗号ィ匕アルゴリズムの設計データを、設計データテープ ル 300に保持して!/、るか否かを判定する。
[0046] 具体的には、受け取ったアルゴリズム特定情報と一致する設計データ IDが設計デ
ータテーブル 300に記憶されて 、る力否かを判断し、一致する設計データ IDが存在 する場合には、設計データを保持しており、一致する設計データ IDが存在しない場 合には、設計データを保持していないと判定する。
(B)送受信部 201からアルゴリズム特定情報を受け取ると、受け取ったアルゴリズ ム特定情報により特定される暗号ィ匕アルゴリズムの設計データが、現在、再構成可能 部 208にお 、て回路構成がなされて 、る力否かを判定する。
[0047] 具体的には、アルゴリズム特定情報と一致する設計データ IDを含む設計データ情 報の、フラグを読む。フラグが「1」である場合には、現在、当該設計データが、現在、 再構成可能部 208にお 、て回路構成が実現して 、ると判定し、フラグが「0」である場 合には、回路構成が実現されていないと判定する。
上記 (A)及び (B)の判定結果がともに否定的である場合に、判定部 203は、送受 信部 201及びネットワーク 40を介して、設計データサーバ 30に対し、設計データ ID を含む設計データ送信要求を送信する。
[0048] 判定部 203は、設計データは保持しているが、回路構成が実現されていないと判 定した場合には、設計データ読出 Z書込部 204に対し、当該設計データに基づく回 路構成を指示する。
(4)設計データ読出 Z書込部 204
設計データ読出 Z書込部 204は、判定部 203からの指示を受け、設計データテー ブル 300から設計データを読み出して、復号部 207へ出力する。
[0049] また、送受信部 201、ネットワーク 40を介して、設計データサーバ 30から、新しい設 計データを受け取った場合には、受け取った設計データを、復号部 207へ出力する 更に、設計データ読出 Z書込部 204は、設計データテーブルの更新処理を行う。 具体的には、設計データテーブルに含まれる設計データ情報の更新処理と、設計デ ータテーブル自体の更新処理である。設計データ読出 Z書込部 204は、設計データ 情報の更新処理として、フラグの設定と、使用回数の更新とを行い、設計データテー ブルの更新処理として、設計データサーバ 30から受け取った新 、設計データにつ いての設計データ情報の生成、及び生成した設計データ情報の、設計データテープ
ルへの追加を行う。
[0050] ここで、設計データ情報の追加処理について具体的に説明する。設計データ読出
Z書込部 204は、設計データ記憶部 202の最大記憶容量に基づき予め設定されて いるデータサイズ閾値を保持している。そして、設計データ読出 Z書込部 204は、現 在、設計データ記憶部 202に記憶されて 、る設計データテーブルのデータサイズと
、データサイズ閾値とを比較する。設計データテーブルのデータサイズが、データサ ィズ閾値より大きい場合には、先ず、設計データテーブルから、使用回数の最も少な い設計データ情報を削除した後に、新たに生成した設計データ情報を追加する。設 計データテーブルのデータサイズ力 S。データサイズ閾値以下である場合には、設計 データ情報を削除することなぐ新たに生成した設計データ情報をそのまま設計デー タテーブルに追加する。
[0051] 具体例として、設計データ記憶部 202が図 4に示した設計データテーブル 300を記 憶して 、る状態における更新処理にっ 、て説明する。
設計データ読出 Z書込部 204は、設計データサーバ 30から、設計データ ID「W」 により識別される暗号化設計データを受信し、当該暗号化設計データに係る設計デ ータ情報 307を生成する。設計データ読出 Z書込部 204は、設計データテーブル 3
00のデータサイズとデータサイズ閾値とを比較し、設計データテーブル 300のデータ サイズが、データサイズ閾値より大きい場合、設計データテーブル 300に含まれる全 ての設計データ情報の使用回数欄を参照し、最も使用回数の少な!ヽ設計データ ID「
JJを有する設計データ情報 304を設計データテーブル 300から削除する。その後、 設計データ読出 Z書込部 204は、新たに生成した設計データ情報 307を、設計デ ータテーブルに追加して、図 5に示す新たな設計データテーブル 300aが生成される
[0052] (5)暗号処理部 205
暗号処理部 205は、図 3に示したように、固有鍵記憶部 206、復号部 207、再構成 可能部 208、及びコンテンツ鍵記憶部 209から構成され、暗号化設計データの復号 、暗号ィ匕コンテンツの復号等の機能を有する。
(a)固有鍵記憶部 206は、暗号ィ匕設計データの復号に用いられる鍵情報である
固有鍵を記憶している。
[0053] (b)復号部 207は、設計データ読出 Z書込部 204から、暗号化設計データを受 け取ると、固有鍵記憶部 206から固有鍵を読み出し、読み出した固有鍵を復号鍵とし て用い、復号アルゴリズム D1を施し、設計データを復号する。ここで、復号ァルゴリズ ム D1は、暗号ィ匕アルゴリズム E1により暗号ィ匕された暗号文を平文に変換するための アルゴリズムであり、その一例は DESである。復号部 207は、復号した設計データを 再構成可能部 208へ出力する。
[0054] なお、復号部 207の機能は、ハードウェアで実現してもよ!/、し、ソフトウェアで実現し てもよい。
(c)再構成可能部 208は、具体的には、組合せ回路や順序回路を実現できる複 数の論理回路ブロックと、論理回路ブロック間の配線部分力も成る。論理回路ブロッ クは、ルックアップテーブルとフリップフロップとを含む回路ユニットであり、ルックアツ プテーブルの設定値を変えることで、所望の論理回路を実現する。また、配線部分に は、トランジスタスィッチ等が配され、配線経路が自由に設定可能となっている。なお 、本実施形態においては、再構成可能部 208は、設計データ読出 Z書込部 204から 受け取る設計データを記憶しておく ROMを含むものとする。
[0055] 再構成可能部 208は、復号部 207から設計データを受け取り、受け取った設計デ ータを ROMに記憶する。再構成可能部 208は、 ROMに記憶された設計データに 基づき、論理回路ブロック及び配線部分を制御して、回路を構成する。本実施形態 では、再構成可能部 208で構成される回路は、暗号ィ匕コンテンツを復号するための 回路であり、再構成可能部 208は、送受信部 201から受け取った暗号ィ匕コンテンツ に対応するコンテンツ鍵を、コンテンツ鍵記憶部 209から読み出し、読み出したコン テンッ鍵を復号鍵として用い、コンテンツを復号する。再構成可能部 208は、復号し たコンテンツを、再生制御部 210へ出力する。
[0056] (d)コンテンツ鍵記憶部 209は、暗号ィ匕コンテンツの復号に用いられる復号鍵で あるコンテンツ鍵を記憶して 、る。
具体的には、コンテンツ鍵記憶部 209は、図 6に示すコンテンツ鍵テーブル 350を 記憶している。コンテンツ鍵テーブル 350は、複数のコンテンツ鍵情報を含み、各コ
ンテンッ鍵情報は、コンテンツ IDとコンテンツ鍵のデータとを対応付けて構成される。 例えば、コンテンツ鍵情報 351は、コンテンツ 10「0003」とコンテンッ鍵¾:じ?^1—0 003」とから構成される力 これは、コンテンツ ID「0003」により識別される暗号化コン テンッを復号するためのコンテンツ鍵が「KCNT— 0003」であることを示して!/ヽる。
[0057] コンテンツ鍵テーブル 350は、コンテンツサーバ 10から、安全且つ確実な方法によ り、コンテンツ利用装置 20に送信されたものとする。なお、本実施形態において、コン テンッ利用装置 20が、このように予め複数のコンテンツ鍵を保持している構成は必須 ではなぐ暗号ィ匕コンテンツと共に、コンテンツサーノ 10からその都度受信しても良 い。
(6)再生制御部 210
再生制御部 210は、再構成可能部 208から、復号されたコンテンツを受け取り、受 け取ったコンテンツを再生可能な情報に変換する。具体的には、再生制御部 210は 、ビデオバッファ、オーディオバッファ、 MPEG— 2ビデオデコーダ、 MPEG— 2ォー ディォデコーダ等から構成され、受け取ったコンテンツから、映像信号と音声信号と を生成する。再生制御部 210は、生成した映像信号と音声信号とを、 TV21へ出力 する。
[0058] 3.設計データサーバ 30
設計データサーバ 30は、マイクロプロセッサ、 ROM、 RAM,ハードディスクュ-ッ ト等カも構成されるコンピュータシステムである。 RAM又はハードディスクユニットに は、コンピュータプログラムが記憶されており、マイクロプログラムがコンピュータプログ ラムを実行することにより、設計データサーバ 30は、その機能を達成する。
[0059] 設計データサーバ 30は、図 7に示す設計データテーブル 400にて、複数の暗号化 設計データを管理している。
図 7に示すように、設計データテーブル 400は、複数の設計データ情報 401、 402
、 · ··、 403、…を含み、各設計データ情報は、アルゴリズム特定情報と暗号ィ匕設計デ 一タとを対応付けて構成される。
[0060] 暗号ィ匕設計データは、設計データに固有鍵を鍵情報として用い、暗号ィ匕ァルゴリズ ム E1を施して生成された暗号ィ匕データである。例えば、設計データ情報 401に含ま
れる暗号化設計データ「Enc— ARC— A」は、設計データ「ARC— A」を暗号化して 生成されたデータであり、設計データ情報 403に含まれる暗号化設計データ「Enc— ARC— W」は、設計データ「ARC—W」を暗号化して生成されたデータである。本実 施形態における設計データは、先に述べたように、コンテンツ利用装置 20の再構成 可能部 208において、暗号ィ匕コンテンツを復号するための復号回路を構成するため に必要なデータである。
[0061] アルゴリズム特定情報は、対応付けられている設計データに基づき、再構成可能部 208にて構成される回路によって実現されるアルゴリズムを示している。具体的には、 設計データ情報 401に含まれるアルゴリズム特定情報「A」は、設計データ「ARC— Ajに基づき構成される回路のアルゴリズムを特定するための情報である。ここで、ァ ルゴリズム特定情報「A」が、具体例として DESを示す情報であるとすると、設計デー タ「ARC— A」は、コンテンツ利用装置 20の再構成可能部 208において、 DESの復 号回路を構成するために必要なデータである。
[0062] 設計データサーバ 30は、コンテンツ利用装置 20から、アルゴリズム特定情報を含 む設計データ送信要求を受信すると、受信したアルゴリズム特定情報に対応する暗 号ィ匕設計データを設計データテーブル 400から読み出して、読み出した暗号化設計 データを、コンテンツ利用装置 20へ送信する。
例えば、設計データサーバ 30は、コンテンツ利用装置 20からアルゴリズム特定情 報「W」を含む設計データ送信要求を受信すると、設計データテーブル 400から、設 計データ情報 403を読み出し、更に、設計データ情報 403から暗号ィ匕設計データ「E nc— ARC— W」を読み出して、コンテンツ利用装置 20へ送信する。
[0063] なお、設計データテーブル 400に記憶されている各暗号ィ匕設計データは、同一の 固有鍵を用いて暗号ィ匕されているものとし、暗号化に用いた固有鍵は、コンテンツ利 用装置 20へ、安全且つ確実な方法により送信されて!ヽるものとする。
<動作 >
ここでは、図 8から図 10のフローチャートを用いて、アルゴリズム更新システム 1の動 作について説明する。
[0064] 1.システム全体の動作
図 8及び図 9は、アルゴリズム更新システム 1全体の動作を示すフローチャートであ る。
先ず、コンテンツ利用装置 20において、コンテンツ要求が発生する (ステップ S101 )。コンテンツ要求は、例えば、ユーザが視聴したコンテンツのコンテンツ IDを、図示 していない入力手段を用いて、コンテンツ利用装置 20に入力すること等により発生す る。
[0065] コンテンツ利用装置 20の送受信部 201は、コンテンツ IDを含むコンテンツ送信要 求を、ネットワーク 40を介してコンテンツサーバ 10へ送信し、コンテンツサーバ 10は 、コンテンツ送信要求を受信する (ステップ S102)。
コンテンツサーバ 10は、受信したコンテンツ送信要求に含まれるコンテンツ IDと一 致するコンテンツ IDを有するコンテンツ†青報を、コンテンツテープノレ 100から読み出 す。次に、コンテンツサーバ 10は、読み出したコンテンツ情報から、アルゴリズム特定 情報と暗号ィ匕コンテンツとを読み出す (ステップ S103)。例えば、コンテンツサーバ 1 0がステップ S102でコンテンツ ID「0003」を含むコンテンツ送信要求を受信した場 合、コンテンツサーバ 10は、コンテンツテーブル 100からコンテンツ情報 103を読み 出し、読み出したコンテンツ情報 103から、アルゴリズム特定情報「W」と暗号ィ匕コン テン 「Enc— CNT— 0003」とを読み出す。
[0066] コンテンツサーバ 10は、読み出したアルゴリズム特定情報と暗号ィ匕コンテンツとをコ ンテンッ利用装置 20へ送信し、コンテンツ利用装置 20の送受信部 201は、ネットヮ ーク 40を介して、アルゴリズム特定情報と暗号ィ匕コンテンツとを受信する (ステップ S1 04)。送受信部 201は、受信した暗号ィ匕コンテンツを、当該暗号化コンテンツのコン テンッ IDと共に再構成可能部 208へ出力し、受信したアルゴリズム特定情報を、判 定部 203へ出力する。
[0067] 次に、判定部 203は、ステップ S 104で受信したアルゴリズム特定情報により特定さ れる暗号ィ匕アルゴリズムの回路力 現在、再構成可能部 208において構成されてい るか否かを判定する(ステップ S 105)。
具体的には、判定部 203は、設計データテーブルに含まれる複数の設計データ情 報のフラグ欄を読み、フラグが「1」に設定されている設計データの設計データ IDを読
み出す。判定部 203は、設計データテーブル力も読み出した設計データ IDが、ステ ップ S104で受信したアルゴリズム特定情報に一致する力否かを判断する。
[0068] 一致する場合には、判定部 203は、所望の回路が、現在、再構成可能部 208にお いて構成されていると判定し、一致しない場合、又は設計データテーブルから設計 データ IDが読み出せな力 た場合には、所望の回路が、現在、再構成可能部 208 にお 、て構成されて 、な 、と判定する。
具体例として、ステップ S 104で受信したアルゴリズム特定情報が「A」であり、設計 データ記憶部 202が、図 4に示した設計データテーブル 300を記憶している場合、フ ラグが「1」に設定されている設計データ情報は、設計データ ID「B」を含む設計デー タ情報 302であるから、設計データ ID「B」と設計データ ID「A」とは一致せず、判定 部 203は、現在、再構成可能部 208において、当該設計データに基づく回路が構成 されていないと判定する。一方、ステップ S 104で受信したアルゴリズム特定情報が「 B」の場合、判定部 203は、現在、再構成可能部 208において、当該設計データに 基づく回路が構成されて 、ると判定する。
[0069] ステップ S 105の判定の結果、再構成可能部 208で回路が構成されていると判定さ れた場合 (ステップ S 105で YES)、ステップ S 202へ進み、処理を続ける。
ステップ S 105の判定の結果、再構成可能部 208で回路が構成されていないと判 定された場合 (ステップ S105で NO)、判定部 203は、ステップ S 104で受信したアル ゴリズム特定情報により特定されるアルゴリズムの設計データを、設計データ記憶部 2 02に保持しているか否かを判定する(ステップ S 106)。具体的には、ステップ S104 で受信したアルゴリズム特定情報と一致する設計データ IDが設計データテーブルに 存在するカゝ否かを判断することにより判定を行う。
[0070] 具体例として、設計データ記憶部 202が、図 4に示した設計データテーブル 300を 記憶しており、判定部 203が、アルゴリズム特定情報「W」を受信した場合について考 える。判定部 203は、設計データテーブル 300に含まれる全ての設計データ情報の 設計データ ID欄を読み、アルゴリズム特定情報「W」に一致する設計データ IDが存 在するか否かを判断する。設計データ ID「W」が存在する場合は、設計データを保持 していると判定し、設計データ ID「W」が存在しない場合は、設計データを保持して
いないと判定する。
[0071] ステップ S106にお!/、て、ステップ S104で受信したアルゴリズム特定情報により特 定される設計データを保持している場合 (ステップ S 106で YES)、設計データ読出 Z書込部 204は、設計データ記憶部 202から、暗号ィ匕設計データを読み出し (ステツ プ S122)、読み出した暗号ィ匕設計データを復号部 207へ出力する。その後、ステツ プ S 123へ進み、処理を続ける。
[0072] ステップ S106にお!/、て、ステップ S104で受信したアルゴリズム特定情報により特 定される設計データを保持していない場合 (ステップ S 106で NO)、判定部 203は、 ステップ S 104で受信したアルゴリズム特定情報を含む設計データ要求を生成する( ステップ S107)。判定部 203は、送受信部 201及びネットワーク 40を介して、ァルゴ リズム特定情報を含む設計データ要求を、設計データサーバ 30へ送信し、設計デー タサーバ 30は、設計データ要求を受信する (ステップ S 108)。
[0073] 設計データサーバ 30は、ステップ S 108で受信した設計データ要求に含まれるァ ルゴリズム特定情報と一致するアルゴリズム特定情報を有する設計データ情報を、設 計データテーブル 400から読み出す。次に、設計データサーバ 30は、読み出した設 計データ情報から、暗号ィ匕設計データを読み出す (ステップ S109)。ここで、具体例 として、設計データサーバ 30が、ステップ S 108でアルゴリズム特定情報「W」を受信 した場合、設計データサーバ 30は、図 7に示した設計データテーブル 400から、アル ゴリズム特定情報「W」を含む設計データ情報 403を読み出し、次に、設計データ情 報 403から、暗号化設計データ「Enc— ARC— W」を読み出す。
[0074] 設計データサーバ 30は、読み出した暗号ィ匕設計データを、ネットワーク 40を介して コンテンツ利用装置 20へ送信し、コンテンツ利用装置 20の送受信部 201は、暗号ィ匕 設計データを受信する (ステップ S 110)。送受信部 201は、受信した暗号化設計デ ータを、設計データ読出 Z書込部 204へ出力する。
次に、設計データ読出 Z書込部 204は、ステップ S 110で受信した暗号ィ匕設計デ ータに係る設計データ情報を生成する (ステップ Sl l l)。具体的には、設計データ I D、暗号化設計データ、フラグ、使用回数を含む 1レコードの情報を生成し、その後、 ステップ S123へ続く。ここで、設計データ ID欄には、ステップ S 104で受信したアル
ゴリズム特定情報を書き込み、暗号ィ匕設計データ欄には、ステップ S 110で受信した 暗号化設計データを書き込む。また、この時点では、フラグは「0」に設定し、使用回 数欄には「0」を書き込む。
[0075] 次に、設計データ読出 Z書込部 204は、暗号化設計データを、復号部 207へ出力 する。
復号部 207は、設計データ読出 Z書込部 204から暗号ィ匕設計データを受け取ると 、固有鍵記憶部 206から固有鍵を読み出す。復号部 207は、固有鍵を復号鍵として 用い、暗号化設計データに、復号アルゴリズム D1を施すことにより、設計データを復 号する (ステップ S 123)。復号部 207は、復号された設計データを、再構成可能部 2 08へ出力する。
[0076] 続いて、再構成可能部 208は、復号部 207から受け取った設計データに基づき、 回路を再構成する (ステップ S201)。
次に、設計データ読出 Z書込部 204において、設計データテーブルの更新処理を 行う(ステップ S 202)。
次に、再構成可能部 208は、送受信部 201から受け取ったコンテンツ IDに対応す るコンテンツ鍵を、コンテンツ鍵記憶部 209のコンテンツ鍵テーブル 350から読み出 す。具体例として、再構成可能部 208が、コンテンツ ID「0003」を受け取った場合に は、コンテンツ鍵テーブル 350のコンテンツ鍵情報 351から、コンテンツ鍵 KCNT— 0003を読み出す。
[0077] 再構成可能部 208は、読み出したコンテンツ鍵を復号鍵として用い、コンテンツを 復号する (ステップ S 203)。再構成可能部 208は、復号したコンテンツを、再生制御 部 210へ出力する。
続いて、再生制御部 210は、 MPEG— 2規格に従い圧縮符号ィ匕されているコンテ ンッをデコードし (ステップ S204)、映像信号と音声信号とを生成する。再生制御部 2 10は、生成した映像信号と音声信号とを TV21へ出力し (ステップ S205)、 TV21は 受け取った映像信号と音声信号とを再生する (ステップ S206)。
[0078] なお、ステップ S202、ステップ S203、及びステップ S204は、この順序で処理が行 われるのではなぐそれぞれのステップの処理が並行して行われてもよ!/、。
2.設計データテーブル更新処理の動作
図 10は、設計データテーブル更新処理の動作を示すフローチャートである。なお、 ここに示す動作は、図 9のステップ S202の詳細である。
[0079] 設計データ読出 Z書込部 204は、設計データ記憶部 202に記憶されている設計デ ータテーブルのデータサイズを取得する (ステップ S301)。次に、設計データ読出 Z 書込部 204は、ステップ S301で取得したデータサイズと、予め内部に記憶している データサイズ閾値とを比較する。設計データテーブルのデータサイズがデータサイズ 閾値以下の場合 (ステップ S302で NO)、ステップ S305へ進む。設計データテープ ルのデータサイズがデータサイズ閾値より大きい場合 (ステップ S302で YES)、設計 データ読出 Z書込部 204は、設計データテーブルに含まれる全ての設計データ情 報の使用回数フィールドを読み、最も使用回数の少な!、設計データ情報を選択する (ステップ S303)。
[0080] 設計データ読出 Z書込部 204は、ステップ S303で選択した設計データ情報を、設 計データテーブルから削除する (ステップ S304)。
次に、設計データ読出 Z着込み部 204は、図 8のステップ S 110で生成した設計デ ータ情報を、設計データテーブルに追加して書き込む (ステップ S305)。
続いて、設計データ読出 Z書込部 204は、現在、再構成可能部 208において、回路 が実現されている設計データに係る設計データ情報のフラグを「1」に設定し (ステツ プ S306)、その他の設計データ情報のフラグを「0」に設定する。次に、設計データ 読出 Z書込部 204は、現在、再構成可能部 208において、回路が実現されている設 計データに係る設計データ情報の使用回数を、インクリメントし (ステップ S307)、設 計データ読出 Z書込部 204は処理を終了する。
[0081] <変形例>
本発明を上記の実施形態に基づき説明してきたが、本発明は、上記の実施形態に 限定されな!、のは勿論であり、以下のように実施した場合であっても本発明に含まれ る。
(1)上記の実施形態では、設計データ情報に、使用回数を示すフィールドを設け、 設計データが、再構成可能部 208におけるコンテンツ復号処理に使用された回数を
管理する構成を有する。そして、設計データ情報に含まれる使用回数が最も少ない 設計データ情報から、優先的に削除するように構成されているが、本発明における設 計データ情報は、使用回数を示すフィールドを有して!/、なくてもょ 、。
[0082] 例えば、設計データ記憶部 202は、図 11に示す設計データテーブル 500を記憶し ていてもよい。設計データテーブル 500は、複数の設計データ情報を含み、各設計 データ情報は、設計データ ID、暗号化設計データ、及びフラグを含む。図 4に示した 設計データテーブル 300との相違は、設計データ情報が使用回数のフィールドを含 まない点である。
[0083] このような使用回数を含まな 、設計データテーブルを記憶して 、る場合、設計デー タ読出 Z書込部 204は、設計データが暗号ィ匕コンテンツの復号に使用されると、設 計データテーブル 500における設計データ情報の記録位置を、 1段上位へ移動させ るように構成してちょい。
例えば、設計データ ID「B」により識別される設計データが、暗号ィ匕コンテンツの復 号に使用されると、設計データ読出 Z書込部 204は、設計データ情報 502の設計デ ータテーブル 500における記録位置を 1段上位へ移動させる。その結果、図 12の設 計データテーブル 500aに示すように、設計データ ID「I」を有する設計データ情報 50 1の 1段上位に、設計データ情報 502が配置される。
[0084] 設計データ読出 Z書込部 204は、再構成可能部 208でコンテンツの復号処理が行 われる都度、このような設計データ情報の並べ替えを行うことにより、設計データテー ブルは、使用回数が最大である設計データ情報が最上位に配され、下位に向かい、 使用回数の少な!/ヽ設計データ情報が配置される構成となる。
設計データテーブル力も設計データ情報を削除する場合には、設計データテープ ルの最下位力 優先的に削除することにより、上記実施形態と同様に、使用回数の 少ない設計データ情報を優先的の削除することができる。
[0085] また、設計データ情報の並べ替えの変形例として、再構成可能部 208でコンテンツ の復号処理に使用された設計データ情報を、設計データテーブルの最上位に配置 するよう〖こ構成してもよい。この構成により、最近使用された設計データが削除される のを防止することが可能となる。
図 13は、設計データ情報を並べ替え、設計データテーブルを更新する処理の動作 を示すフローチャートである。なお、ここに示す動作は、システム全体における位置づ けとしては、図 9のステップ S202の詳細に相当する。
[0086] 設計データ読出 Z書込部 204は、設計データ記憶部 202に記憶されている設計デ ータテーブルのデータサイズを取得する (ステップ S401)。次に、設計データ読出 Z 書込部 204は、ステップ S401で取得したデータサイズと、予め内部に記憶している データサイズ閾値とを比較する。設計データテーブルのデータサイズがデータサイズ 閾値以下の場合 (ステップ S402で NO)、ステップ S404へ進む。設計データテープ ルのデータサイズがデータサイズ閾値より大きい場合 (ステップ S402で YES)、設計 データ読出 Z書込部 204は、設計データテーブル内において最下位に位置する設 計データ情報を削除する (ステップ S403)。
[0087] 次に、設計データ読出 Z着込み部 204は、図 8のステップ S 110で生成した設計デ ータ情報を、設計データテーブルに追加して書き込む (ステップ S404)。
続いて、設計データ読出 Z書込部 204は、現在、再構成可能部 208において、回 路が実現されている設計データに係る設計データ情報のフラグを「1」に設定し (ステ ップ S405)、その他の設計データ情報のフラグを「0」に設定する。
[0088] 次に、設計データ読出 Z書込部 204は、現在、再構成可能部 208において、回路 が実現されている設計データに係る設計データ情報の、設計データテーブル内にお ける位置を、一段上位へ移動させ (ステップ S406)、設計データ読出 Z書込部 204 は処理を終了する。
なお、ステップ S403では、最下位に位置する設計データ情報を削除しているが、 設計データ情報を削除する際には、一度に所定数の設計データ情報を削除するよう に構成してもよい。これは、例えば、設計データテーブルのデータサイズに応じて、 削除する設計データ情報の数を決定するように構成してもよい。また、これは、設計 データ情報が使用回数のフィールドを含む実施形態にぉ 、ても、同様である。
[0089] (2)本発明における設計データは、その使用回数に応じて、格納する記憶領域を 変更するように構成してもよ ヽ。
例えば、本発明におけるコンテンツ利用装置は、設計データの記憶領域として、読
出速度が高速である EEPROMと、読出速度が低速である HDDとを備えるように構 成してもよい。そして、使用回数が多い設計データ情報を読出速度が高速である EE PROMに格納し、使用回数が少な 、設計データ情報を HDDへ格納するように構成 してちよい。
[0090] 図 14は、上記のような構成を有するコンテンツ利用装置の設計データ記憶部が格 納して 、る設計データテーブル 600のデータ構成を示す図である。同図に示すよう に設計データテーブル 600は、複数の設計データ情報 601、 602、…ゝ 603、 604、 …ゝ 605、及び 606を含む。
各設計データ情報は、設計データ ID、暗号化設計データ、フラグ、使用回数、及 び格納領域とを含む。上記の実施形態との相違点は、格納領域のフィールドを備え る点である。例えば、設計データテーブル 600では、使用回数が 1及び 2の何れかで ある場合には、設計データは HDDに格納されており、使用回数が 3以上である場合 には、設計データは EEPROMに格納されている。
[0091] また、設計データ読出 Z書込部は、設計データの使用回数に応じて、設計データ の格納場所を変更するように構成してもよい。これにより、今後も使用される可能性の 高い設計データを読出速度が高速である EEPROMに格納しておき、使用される可 能性の低い設計データを読出速度が低速である HDDに格納することができる。
(3)上記の実施形態における暗号処理部 205は、暗号化設計データの復号処理と 暗号化コンテンッの復号処理とを行う構成を有するが、本発明のコンテンツ利用装置 は、復号処理に限定されず、暗号化処理を行う場合も本発明に含まれる。
[0092] 更には、本発明は、暗号化処理 Z復号処理を行うコンテンツ利用装置に限定され ず、コンテンツの符号化処理 Z逆符号化処理等を行う場合にも適用できる。この場合 、コンテンツ利用装置は、複数の符号ィヒアルゴリズムに対応する回路を実現するため の複数個の設計データを保持しており、要求された符号化アルゴリズムに対応する 設計データを内部に保持している場合には、内部に保持する設計データに基づき、 再構成可能部にぉ 、て回路を再構成し、要求された符号ィ匕アルゴリズムに対応する 設計データを内部に保持していない場合には、外部の設計データサーバから、所望 の設計データを取得し、取得した設計データに基づき、再構成可能部において回路
を再構成するように構成してもよ 、。
[0093] (4)上記の実施形態では、コンテンツ利用装置 20と設計データサーバ 30とはネット ワーク 40を介して接続されており、コンテンツ利用装置 20は、ネットワーク 40を介し た通信により、設計データサーバ 30から設計データを取得する構成を有するが、本 発明において、コンテンツ利用装置 20は、ネットワーク経由で設計データを取得する 構成は必須ではない。例えば、コンテンツ利用装置 20は、記録媒体との間で情報の 入出力を行う媒体入出力手段を備え、媒体入出力手段を介して、設計データが記憶 されて ヽる記録媒体に直接アクセスし、当該記録媒体から設計データを取得する構 成であっても本発明に含まれる。
[0094] また、上記の実施形態では、コンテンツ利用装置 20とコンテンツサーバ 10とは、ネ ットワーク 40を介して接続されており、コンテンツ利用装置 20は、ネットワーク 40を介 した通信により、コンテンツサーノ 10からアルゴリズム特定情報と暗号ィ匕コンテンツと を取得する構成を有するが、本発明において、コンテンツ利用装置 20は、ネットヮー ク経由でアルゴリズム特定情報と暗号ィ匕コンテンツとを取得する構成は必須ではない 。上述のように、コンテンツ利用装置 20は、媒体入出力手段を備え、媒体入出力手 段を介して、記録媒体から、アルゴリズム特定情報と暗号化コンテンツとを取得する 構成であっても本発明に含まれる。
[0095] 更には、アルゴリズム特定情報及び暗号化コンテンツの内、何れかをネットワーク 4 0経由で取得し、何れかを記録媒体から取得するように構成してもよ!/ヽ。
(5)上記の実施形態では、コンテンツ鍵記憶部 209が保持する複数個のコンテンツ 鍵は、コンテンツ毎に異なる鍵である構成を有する力 本発明においては、コンテン ッ毎の異なる鍵である構成は必須ではな 、。
[0096] また、上記の実施形態では、固有鍵記憶部 206が保持する固有鍵とコンテンツ鍵 記憶部 209が保持するコンテンツ鍵とは、別のデータである構成としている力 本発 明はその構成に限定されるものではない。例えば、固有鍵とコンテンツ鍵は同一の鍵 であってもよい。更には、コンテンツ鍵は静的な鍵データではなぐ動的に算出され、 コンテンツ鍵記憶部 209においてテンポラリーに記憶される構成であってもよい。同 様に、暗号ィ匕設計データを復号する固有鍵も固有である必要はなぐ複数機器で共
有する鍵であってもよぐさらには、鍵データが変化、あるいは更新される構成であつ てもよい。
[0097] (6)上記の実施形態では、コンテンツ利用装置 20は、アルゴリズム特定情報が示 す設計データを保持していない場合、ネットワーク 40を介して、設計データを入手す る構成とした力 本発明はこの構成に限定されるものではない。例えば、コンテンツ利 用装置 20は、通知手段を備え、利用者に対して、当該設計データを保持していない 旨を通知するように構成してもよい。そして、利用者から、設計データ入手の指示を 受け付ける構成であってもよ 、。
[0098] (7)上記の実施形態では、設計データ記憶部 202に記憶されて 、る設計データテ 一ブルでは、再構成可能部 208で回路を構成するための設計データを記憶する構 成としたが、本発明はその構成に限定されず、例えば、復号部 207で実現されている 暗号ィ匕アルゴリズムも同一の設計データテーブルで管理するように構成してもよ 、。 そして、復号部 207の機能を暗号ィ匕コンテンツの復号処理に用いるように構成しても よい。
[0099] この構成によれば、例えば、復号部 207で実現されて ヽる暗号化アルゴリズムが D ESであり、暗号化コンテンツの復号に必要な復号回路のアルゴリズムが DESである 場合には、再構成可能部 208で改めて DESの復号回路を再構成する必要が無ぐ 復号部 207で暗号ィ匕コンテンツを復号することが可能となる。
(8)上記の実施形態では、コンテンツサーバ 10から受信するアルゴリズム特定情報 に基づ!/、て、暗号ィ匕コンテンツを復号するためのアルゴリズムを特定する構成とした 力 S、本発明はその構成に限定されるものではない。
例えば、コンテンツ利用装置 20が複数の供給元から、暗号ィ匕コンテンツを入手する 場合、暗号ィ匕コンテンツの入手先(暗号ィ匕コンテンツの供給元)に応じて、使用する 暗号アルゴリズムが予め決まって 、るように構成してもよ 、。
[0100] (9)上記の実施形態では、設計データテーブルを更新する場合、使用回数に応じ て設計データ情報を削除する構成としたが、本発明はその構成に限定されるもので はない。例えば、設計データ記憶部 202の容量不足により設計データを削除しなけ れば 、けな!/、場合、要領不足の解消に最も効率のょ 、設計データを 1つ以上削除
する構成であってもよい。具体的には、 30KBの設計データを追カ卩したい場合、 100 KBの設計データを削除する代わりに、 10KBの設計データと 20KBの設計データと を削除する構成であってもよい。
[0101] (10)上記の実施形態では、設計データテーブルを更新する場合、設計データテ 一ブルの最下位に位置する設計データ情報を削除する構成としたが、本発明はその 構成に限定されるものではない。例えば、定期的に設計データテーブルを参照して、 予め定められた数の設計データ情報を最下位力 順に削除していく構成であっても よい。
(11)本発明の実施の形態では、設計データ読出 Z書込部 204は、設計データ記 憶部 202の容量が不足した場合 (具体的には、設計データテーブルのデータサイズ がデータサイズ閾値より大きい場合)、設計データを削除する構成としたが、本発明 はその構成に限定されるものではない。例えば、設計データが暗号処理を実現する 機能であり、安全性が低下したことが判明した場合、外部からの指示に従い、当該設 計データを削除する構成であってもよい。この場合、再構成可能部 208において、当 該設計データに基づく回路が構成されている場合には、設計データと共にその回路 も削除する構成であってもよい。また、安全性の低下のみならず、外部からの設計デ ータの削除要求に従い、設計データ、あるいは再構成可能部 208の回路を削除する 構成であってもよい。
[0102] (12)上記の実施形態は、再構成可能部で回路が実現されている設計データは 1 つである場合についてのみ記載している力 本発明において、この構成は必須では なぐ 2つ以上の設計データに基づき、回路が実現されている場合も本発明に含まれ る。具体例として、再構成可能部において設計データ ID「B」により識別される設計デ ータと、設計データ ID「K」により識別される設計データとに基づき回路が構成されて いる場合に、設計データ記憶部が記憶する設計データテーブルでは、設計データ I D「B」を有する設計データ情報と、設計データ ID「K」を有する設計データ情報との フラグ欄に、「1」が設定される。その他の設計データ情報のフラグ欄には「0」が設定 されるように構成してちょい。
[0103] (13)請求項に記載の「使用頻度」の一例として、上記実施の形態では、設計デー
タを基に再構成可能部 208において構成された回路が、暗号ィ匕コンテンツの復号処 理に使用された使用回数を挙げて 、るがこれに限定されるものではな 、。
他の例として、設計データが再構成可能部 208にロードされたロード回数でもよい。 具体的には、設計データテーブル 300を構成する各設計データ情報は、使用回数 に代わり、ロード回数を含んでいる。設計データ読出 Z書込部 204は、設計データ記 憶部 202から暗号ィ匕設計データを読み出す度に、読み出した暗号ィ匕設計データと 対応する使用回数に 1加算する。
[0104] (14)本発明は、上記に示す方法であるとしてもよい。また、これらの方法をコンビュ ータにより実現するコンピュータプログラムであるとしてもよいし、前記コンピュータプ ログラム力もなるデジタル信号であるとしてもよい。
また、本発明は、前記コンピュータプログラム又は前記デジタル信号をコンピュータ 読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、 CD-RO M、 MO、 DVD, DVD-ROM, DVD -RAM, BD (Blu— ray Disc)、半導体メ モリなど、〖こ記録したものとしてもよい。また、これらの記録媒体に記録されている前 記コンピュータプログラム又は前記デジタル信号であるとしてもよい。
[0105] また、本発明は、前記コンピュータプログラム又は前記デジタル信号を、電気通信 回線、無線又は有線通信回線、インターネットを代表とするネットワーク等を経由して 伝送するものとしてもよ 、。
また、本発明は、マイクロプロセッサとメモリとを備えたコンピュータシステムであって 、前記メモリは、上記コンピュータプログラムを記憶しており、前記マイクロプロセッサ は、前記コンピュータプログラムに従って動作するとしてもよい。
[0106] また、前記プログラム又は前記デジタル信号を前記記録媒体に記録して移送する ことにより、又は前記プログラム又は前記デジタル信号を前記ネットワーク等を経由し て移送することにより、独立した他のコンピュータシステムにより実施するとしてもよい
(15)また本発明は、上記実施形態におけるコンテンツサーノ 10、コンテンツ利用 装置 20、及び設計データサーバ 30の機能ブロックの一部又は全てが集積回路であ る LSIとして実現される場合も本発明に含まれる。これらは個別に 1チップィ匕されても
良いし、一部又は全てを含むように 1チップィ匕されてもよい。ここでは、 LSIとしたが、 集積度の違いにより、 IC、システム LSI、スーパー LSI、ウルトラ LSIと呼称されること もめる。
[0107] また、集積回路化の手法は LSIに限るものではなぐ専用回路で実現してもよい。 L SI製造後に、プログラムすることが可能な FPGA (Field Programmable Gate Array) や LSI内部の回路セルの接続や設定を再構成可能なリコンフィギユラブル'プロセッ サを利用してもよい。
更には、半導体技術の進歩又は派生する別技術により LSIに置き換わる集積回路 化の技術が登場すれば、当然その技術を用いて機能ブロックの集積ィ匕を行ってもよ い。バイオ技術の適応などが可能性として有り得る。
[0108] (16)前記実施形態及び前記変形例をそれぞれ組み合わせた構成も、本発明に含 まれる。
産業上の利用可能性
[0109] 本発明は、コンテンツを利用者に提供する産業や、前記コンテンツを利用すること ができる機器を生産し、販売する産業において、経営的、継続的、且つ反復的に利 用することができる。
Claims
[1] 設計データに基づき、回路を再構成することが可能な再構成可能手段と、
コンテンツの利用に係る 1つの機能を実現する回路であるコンテンツ利用回路が、 前記再構成可能手段において構成されているか否か判定する第 1判定手段と、 前記再構成可能手段にぉ ヽて前記コンテンツ利用回路を構成するためのコンテン ッ利用設計データを、内部に保持している力否力判定する第 2判定手段と、 前記第 1及び前記第 2判定手段による判定が、共に否定的である場合に、前記コン テンッ利用設計データを、外部から取得する取得手段とを備え、
前記再構成可能手段は、取得した前記コンテンツ利用設計データに基づき、回路 を再構成する
ことを特徴とするコンテンツ利用装置。
[2] 前記コンテンツ利用装置は、
前記再構成可能手段にぉ 、て、コンテンツの利用に係る複数の機能を実現する回 路を構成するための、複数の設計データを保持する設計データ記憶手段を備え、 前記第 1判定手段は、前記設計データ記憶手段に、前記コンテンツ利用設計デー タが記憶されているか否かを判断することにより、前記判定を行う
ことを特徴とする請求項 1に記載のコンテンッ利用装置。
[3] 前記コンテンツの利用に係る前記機能は、前記コンテンツの暗号化、又は前記コン テンッが暗号化されて生成された暗号化コンテンツの復号であり、
前記コンテンツ利用回路は、前記暗号化の機能を実現するための回路、又は前記 復号の機能を実現するための回路である
ことを特徴とする請求項 2に記載のコンテンッ利用装置。
[4] 前記コンテンツ利用装置は、ネットワークを介して外部の設計データサーバと接続 されており、
前記取得手段は、
前記設計データサーバから、前記コンテンツ利用設計データを取得する ことを特徴とする請求項 2に記載のコンテンッ利用装置。
[5] 前記コンテンツ利用装置は、ネットワークを介して外部のコンテンツサーバと接続さ
れており、
前記コンテンツサーバから、前記暗号化コンテンツ、及び前記コンテンツ利用設計 データを一意に識別可能である設計データ識別子とを受信し、
前記取得手段は、
前記設計データサーバへ、前記設計データ識別子を出力し、前記コンテンツ利用 設計データの送信を要求し、
前記再構成可能手段は、
取得した前記コンテンツ利用設計データに基づき、前記暗号ィ匕コンテンツの復号を 実現するための回路である前記コンテンッ利用回路を再構成する
ことを特徴とする請求項 4に記載のコンテンッ利用装置。
[6] 前記コンテンツ利用装置は、記録媒体から情報を読み出す媒体入力手段を備え、 前記取得手段は、
前記媒体入力手段を介して、前記コンテンツ利用設計データが記録されて 、る記 録媒体から、前記コンテンツ利用設計データを取得する
ことを特徴とする請求項 3に記載のコンテンッ利用装置。
[7] 前記コンテンツの利用に係る前記機能は、コンテンツの符号化、又は符号化されて 生成されたコンテンツの逆符号ィ匕であり、
前記コンテンツ利用回路は、前記符号化の機能を実現するための回路、又は前記 逆符号化の機能を実現するための回路である
ことを特徴とする請求項 2に記載のコンテンツ利用装置。
[8] 前記設計データ記憶手段は、
複数の設計データが配列された設計データテーブルを記憶しており、
前記取得手段は、
前記コンテンツ利用設計データを取得すると、取得した前記コンテンツ利用設計デ ータを、前記設計データテーブルに書き込み、
前記コンテンツ利用装置は、更に、
前記設計データテーブルのデータ量に基づき、前記設計データ記憶手段から設計 データを削除するか否か判定する削除判定手段と、
前記削除判定手段により、設計データを削除すると判定された場合に、削除すべき 設計データを選択し、選択した前記設計データを、前記設計データテーブルから削 除する設計データ削除手段と
を備えることを特徴とする請求項 2に記載のコンテンツ利用装置。
[9] 前記設計データテーブルは、設計データ毎に、設計データと対応付けて、当該設 計データが前記再構成可能手段において回路構成された頻度を示す設計データ使 用情報を記憶しており、
前記設計データ削除手段は、
前記削除判定手段により、設計データを削除すると判定された場合に、設計データ 使用情報を読み、設計データ使用情報が示す使用頻度が最も低い設計データを、 前記削除すべき設計データとして選択する
ことを特徴とする請求項 8に記載のコンテンッ利用装置。
[10] 前記設計データ削除手段は、
前記削除判定手段により、設計データを削除すると判定された場合に、前記複数 の設計データ情報に含まれる設計データ使用情報を読み、設計データ使用情報が 示す使用頻度が所定値以下である設計データを、優先的に前記削除すべき設計デ ータとして選択する
ことを特徴とする請求項 8に記載のコンテンッ利用装置。
[11] 前記設計データ記憶手段は、
複数の設計データが配列された設計データテーブルを記憶しており、
前記取得手段は、
前記コンテンツ利用設計データを取得すると、取得した前記コンテンツ利用設計デ ータを、前記設計データテーブルに書き込み、
前記コンテンツ利用装置は、更に、
前記再構成可能手段において、回路が再構成されると、前記設計データテーブル に含まれる複数の設計データの配列を並べ替える更新手段を備える
ことを特徴とする請求項 2に記載のコンテンッ利用装置。
[12] 前記コンテンツ利用装置は、更に、
前記設計データテーブルのデータ量に基づき、前記設計データ記憶手段から設計 データを削除するか否か判定する削除判定手段と、
前記削除判定手段により、設計データを削除すると判定された場合に、前記設計 データテーブルの最下位から、所定数の設計データを削除する設計データ削除手 段と
を備えることを特徴とする請求項 11に記載のコンテンツ利用装置。
[13] 前記更新手段は、
前記再構成可能手段における回路の再構成に用いられた設計データの、前記設 計データテーブル内における配列を 1つ上位へ移動させる
ことを特徴とする請求項 12に記載のコンテンッ利用装置。
[14] 前記更新手段は、
前記再構成可能手段における回路の再構成に用いられた設計データの、前記設 計データテーブル内における配列を最上位へ移動させる
ことを特徴とする請求項 12に記載のコンテンッ利用装置。
[15] 前記設計データ記憶手段は、
第 1アクセス速度で設計データの読出を行う第 1記憶部と、
前記第 1アクセス速度より速い第 2アクセス速度で設計データの読出を行う第 2記憶 部とを備え、
前記再構成可能手段における回路構成の頻度が所定値以上の設計データを、前 記第 1記憶部に記憶し、前記頻度が所定値未満の設計データを、前記第 2記憶部に feす。
ことを特徴とする請求項 2に記載のコンテンッ利用装置。
[16] 前記設計データ記憶手段は、更に、
複数の設計データと使用頻度と格納場所とを対応付けた設計データテーブルを記 憶しており、
使用頻度に応じて各設計データの格納場所を前記第 1及び第 2記憶部の間で移 動させる
ことを特徴とする請求項 15に記載のコンテンッ利用装置。
[17] 前記設計データ記憶手段は、更に、
前記再構成可能手段で実現されている回路の構成に用いられた設計データを識別 するためのフラグを記憶して!/、る
ことを特徴とする請求項 2に記載のコンテンッ利用装置。
[18] 設計データに基づく再構成が可能な回路を含む再構成可能手段と、第 1判定手段 と、第 2判定手段と、取得手段とを備えるコンテンツ利用装置の動作方法であって、 前記第 1判定手段により、コンテンツの利用に係る 1つの機能を実現する回路であ るコンテンツ利用回路が、前記再構成可能手段の前記回路にお ヽて構成されて ヽる か否力判定するステップと、
前記第 2判定手段により、前記再構成可能手段において前記コンテンツ利用回路 を構成するためのコンテンツ利用設計データを、内部に保持しているカゝ否カゝ判定す るステップと、
前記第 1及び前記第 2判定手段による判定が、共に否定的である場合に、前記コン テンッ利用設計データを、外部から取得する取得ステップと、
前記再構成可能手段により、取得した前記コンテンツ利用設計データに基づき、前 記回路を再構成するステップと
を含むことを特徴とするコンテンツ利用方法。
[19] 設計データに基づく再構成が可能な回路を含む再構成可能手段と、第 1判定手段 と、第 2判定手段と、取得手段とを備えるコンテンツ利用装置で動作するコンピュータ プログラムであって、
前記第 1判定手段により、コンテンツの利用に係る 1つの機能を実現する回路であ るコンテンツ利用回路が、前記再構成可能手段の前記回路にお ヽて構成されて ヽる か否力判定させるステップと、
前記第 2判定手段により、前記再構成可能手段において前記コンテンツ利用回路 を構成するためのコンテンツ利用設計データを、内部に保持しているカゝ否カゝ判定さ せるステップと、
前記取得手段により、前記第 1及び前記第 2判定手段による判定が、共に否定的 である場合に、前記コンテンツ利用設計データを、外部から取得させるステップと、
前記再構成可能手段により、取得した前記コンテンツ利用設計データに基づき、回 路を再構成させるステップと
を含むことを特徴とするコンピュータプログラム。
[20] 請求項 19に記載のコンピュータプログラムを記憶しているコンピュータ読み取り可 能な記録媒体。
[21] 設計データに基づき、回路を再構成することが可能な再構成可能手段と、
コンテンツの利用に係る 1つの機能を実現する回路であるコンテンツ利用回路が、 前記再構成可能手段において構成されているか否か判定する第 1判定手段と、 前記再構成可能手段にぉ ヽて前記コンテンツ利用回路を構成するためのコンテン ッ利用設計データを、内部に保持している力否力判定する第 2判定手段と、 前記第 1及び前記第 2判定手段による判定が、共に否定的である場合に、前記コン テンッ利用設計データを、外部から取得する取得手段とを備え、
前記再構成可能手段は、取得した前記コンテンツ利用設計データに基づき、回路 を再構成する
ことを特徴とする集積回路。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US11/918,656 US20090055638A1 (en) | 2005-04-21 | 2006-04-21 | Algorithm update system |
| JP2007514680A JPWO2006115212A1 (ja) | 2005-04-21 | 2006-04-21 | アルゴリズム更新システム |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2005123221 | 2005-04-21 | ||
| JP2005-123221 | 2005-04-21 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2006115212A1 true WO2006115212A1 (ja) | 2006-11-02 |
Family
ID=37214828
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/JP2006/308438 Ceased WO2006115212A1 (ja) | 2005-04-21 | 2006-04-21 | アルゴリズム更新システム |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US20090055638A1 (ja) |
| JP (1) | JPWO2006115212A1 (ja) |
| WO (1) | WO2006115212A1 (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2010117968A (ja) * | 2008-11-14 | 2010-05-27 | National Institute Of Advanced Industrial Science & Technology | 再構成可能論理デバイスの論理プログラムデータ保護システム及び保護方法 |
| JP2017219931A (ja) * | 2016-06-03 | 2017-12-14 | 富士通株式会社 | 情報処理装置、情報処理方法、およびプログラム |
Families Citing this family (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8824672B1 (en) * | 2007-04-12 | 2014-09-02 | Iowa State University Research Foundation | Reconfigurable block encryption logic |
| US10162597B1 (en) * | 2012-09-11 | 2018-12-25 | EMC IP Holding Company LLC | Identifying IO access pattern in unique database structures |
| US9229960B2 (en) * | 2013-02-11 | 2016-01-05 | International Business Machines Corporation | Database management delete efficiency |
| US9378234B2 (en) | 2013-03-11 | 2016-06-28 | International Business Machines Corporation | Management of updates in a database system |
| US9229968B2 (en) | 2013-03-11 | 2016-01-05 | Intenational Business Machines Corporation | Management of searches in a database system |
| MX2020002997A (es) * | 2017-09-28 | 2020-07-22 | Guangdong Oppo Mobile Telecommunications Corp Ltd | Metodo y dispositivo terminal de comunicacion inalambrica. |
| US11475145B2 (en) * | 2018-12-14 | 2022-10-18 | Intel Corporation | Methods and apparatus for implementing a secure database using programmable integrated circuits with dynamic partial reconfigurability |
Citations (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0522281A (ja) * | 1991-07-15 | 1993-01-29 | Mitsubishi Electric Corp | 秘話装置 |
| JPH0540698A (ja) * | 1991-08-02 | 1993-02-19 | Nec Ibaraki Ltd | 主記憶ページ管理方式 |
| JPH06318180A (ja) * | 1993-05-07 | 1994-11-15 | Brother Ind Ltd | 文字データ記憶方法 |
| JPH0876974A (ja) * | 1994-09-09 | 1996-03-22 | Fujitsu Ltd | データ処理装置 |
| JPH1055135A (ja) * | 1996-08-09 | 1998-02-24 | Fujitsu Ltd | プログラマブルな論理素子/装置を用いた暗号化/復号化装置および方法 |
| JPH11232111A (ja) * | 1998-02-12 | 1999-08-27 | Fuji Xerox Co Ltd | 情報処理システム |
| JP2001211152A (ja) * | 2000-01-25 | 2001-08-03 | Sony Corp | データ処理装置、コンテンツデータ生成方法、およびデータ処理方法、並びにプログラム提供媒体 |
| JP2002049528A (ja) * | 2000-06-09 | 2002-02-15 | Internatl Business Mach Corp <Ibm> | キャッシュからデータをデモートする方法、システム及びプログラム |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6150837A (en) * | 1997-02-28 | 2000-11-21 | Actel Corporation | Enhanced field programmable gate array |
| US6101255A (en) * | 1997-04-30 | 2000-08-08 | Motorola, Inc. | Programmable cryptographic processing system and method |
| US6118869A (en) * | 1998-03-11 | 2000-09-12 | Xilinx, Inc. | System and method for PLD bitstream encryption |
| KR100456496B1 (ko) * | 2000-01-21 | 2004-11-10 | 소니 가부시끼 가이샤 | 데이터 인증 처리 시스템 |
| JP2001308843A (ja) * | 2000-04-19 | 2001-11-02 | Nec Commun Syst Ltd | 暗号復号化装置 |
-
2006
- 2006-04-21 WO PCT/JP2006/308438 patent/WO2006115212A1/ja not_active Ceased
- 2006-04-21 US US11/918,656 patent/US20090055638A1/en not_active Abandoned
- 2006-04-21 JP JP2007514680A patent/JPWO2006115212A1/ja active Pending
Patent Citations (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0522281A (ja) * | 1991-07-15 | 1993-01-29 | Mitsubishi Electric Corp | 秘話装置 |
| JPH0540698A (ja) * | 1991-08-02 | 1993-02-19 | Nec Ibaraki Ltd | 主記憶ページ管理方式 |
| JPH06318180A (ja) * | 1993-05-07 | 1994-11-15 | Brother Ind Ltd | 文字データ記憶方法 |
| JPH0876974A (ja) * | 1994-09-09 | 1996-03-22 | Fujitsu Ltd | データ処理装置 |
| JPH1055135A (ja) * | 1996-08-09 | 1998-02-24 | Fujitsu Ltd | プログラマブルな論理素子/装置を用いた暗号化/復号化装置および方法 |
| JPH11232111A (ja) * | 1998-02-12 | 1999-08-27 | Fuji Xerox Co Ltd | 情報処理システム |
| JP2001211152A (ja) * | 2000-01-25 | 2001-08-03 | Sony Corp | データ処理装置、コンテンツデータ生成方法、およびデータ処理方法、並びにプログラム提供媒体 |
| JP2002049528A (ja) * | 2000-06-09 | 2002-02-15 | Internatl Business Mach Corp <Ibm> | キャッシュからデータをデモートする方法、システム及びプログラム |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2010117968A (ja) * | 2008-11-14 | 2010-05-27 | National Institute Of Advanced Industrial Science & Technology | 再構成可能論理デバイスの論理プログラムデータ保護システム及び保護方法 |
| JP2017219931A (ja) * | 2016-06-03 | 2017-12-14 | 富士通株式会社 | 情報処理装置、情報処理方法、およびプログラム |
Also Published As
| Publication number | Publication date |
|---|---|
| JPWO2006115212A1 (ja) | 2008-12-18 |
| US20090055638A1 (en) | 2009-02-26 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US8144869B2 (en) | Content protection system, key data generation apparatus, and terminal apparatus | |
| JP4219680B2 (ja) | 不揮発性メモリカード、コンパクトディスクまたはその他のメディアから記録済みのオーディオ、ビデオまたはその他のコンテンツを再生するためのシステム、方法およびデバイス | |
| US7272229B2 (en) | Digital work protection system, key management apparatus, and user apparatus | |
| JP5338306B2 (ja) | データ記憶装置およびデータ記憶装置におけるデータ管理方法 | |
| WO2006115252A1 (ja) | 情報セキュリティ装置 | |
| US20050273618A1 (en) | Information recording medium, information recording device, information reproduction device, information delivery device, their methods, their programs, and recording medium recording programs thereon | |
| JP2009054144A (ja) | コンテンツ再生装置、コンテンツ再生方法、コンテンツ再生プログラム及び集積回路 | |
| JP4634399B2 (ja) | 管理サーバ装置、管理方法及び管理プログラム | |
| WO2006115212A1 (ja) | アルゴリズム更新システム | |
| US20090154694A1 (en) | Contents management system, and contents management device | |
| JPWO2007145220A1 (ja) | 書き換え可能な回路を備える装置、更新システム、更新方法、更新プログラム、及び集積回路 | |
| US20090013193A1 (en) | Circuit Building Device | |
| US7620993B2 (en) | Copyright protection system, key generation apparatus, recording apparatus, reproduction apparatus, read-out apparatus, decryption apparatus, recording medium, recording method and program | |
| JP2003204321A (ja) | 著作物保護システム及び鍵管理装置 | |
| KR20080067075A (ko) | 광디스크의 암호화 데이터 기록 및 재생방법 | |
| JP6980158B2 (ja) | データ処理装置、復号装置、データ処理方法、復号方法、データ処理プログラム及び復号プログラム | |
| JP2003345660A (ja) | 情報処理装置、情報処理方法、およびコンテンツ入出力処理システム、コンテンツ入出力処理方法、並びにコンピュータ・プログラム | |
| JP4801054B2 (ja) | 回路更新システム | |
| US8488793B2 (en) | Efficient rebinding of partitioned content encrypted using broadcast encryption | |
| JPWO2010061562A1 (ja) | 情報更新装置とその集積回路、情報更新方法、および、記録装置とその集積回路 | |
| WO2005124762A1 (ja) | 記録媒体及びコンテンツ再生システム | |
| JP2003348067A (ja) | 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム | |
| JP2004080631A (ja) | 記録方法、出力方法、記録装置及び出力装置 | |
| JP2007079630A (ja) | 車載用マルチメディア装置 | |
| CN1938693A (zh) | 记录再生装置及内容保护系统 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
| WWE | Wipo information: entry into national phase |
Ref document number: 2007514680 Country of ref document: JP |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 11918656 Country of ref document: US |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| NENP | Non-entry into the national phase |
Ref country code: RU |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 06745569 Country of ref document: EP Kind code of ref document: A1 |