JP4702596B2 - Decoding circuit, decoding device, decoding method, and decoding program - Google Patents

Decoding circuit, decoding device, decoding method, and decoding program Download PDF

Info

Publication number
JP4702596B2
JP4702596B2 JP2005055163A JP2005055163A JP4702596B2 JP 4702596 B2 JP4702596 B2 JP 4702596B2 JP 2005055163 A JP2005055163 A JP 2005055163A JP 2005055163 A JP2005055163 A JP 2005055163A JP 4702596 B2 JP4702596 B2 JP 4702596B2
Authority
JP
Japan
Prior art keywords
key
version
valid
input
decryption
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.)
Expired - Fee Related
Application number
JP2005055163A
Other languages
Japanese (ja)
Other versions
JP2006245704A (en
Inventor
大輔 武田
和弘 原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2005055163A priority Critical patent/JP4702596B2/en
Publication of JP2006245704A publication Critical patent/JP2006245704A/en
Application granted granted Critical
Publication of JP4702596B2 publication Critical patent/JP4702596B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は復号回路、復号装置、復号方法及び復号プログラムに関し、例えば暗号化データを復号するモジュールに適用して好適なものである。 The present invention relates to a decryption circuit , a decryption apparatus, a decryption method, and a decryption program , and is suitable for application to a module for decrypting encrypted data, for example.

近年、インターネット等のネットワークを介した種々のコンテンツ配信サービスが広く普及している。このようなコンテンツ配信サービスでは、CDやDVDといった媒体を介してではなく、コンテンツのデータ(以下、これをコンテンツデータとも呼ぶ)そのものを所定のサーバからネットワークを介してユーザの端末に提供するようになされているため、コンテンツの不正利用を防止することがいっそう強く求められており、このため様々なセキュリティ対策が講じられている。   In recent years, various content distribution services via networks such as the Internet have become widespread. In such a content distribution service, content data (hereinafter also referred to as content data) itself is provided from a predetermined server to a user terminal via a network, not via a medium such as a CD or a DVD. Therefore, there is a strong demand for preventing unauthorized use of content, and various security measures have been taken.

このようなセキュリティ対策のひとつとして、外部からの不正な解析や改竄を困難にした特殊なモジュール(いわゆるタンパレジスタントモジュール)を実装した端末が広く利用されている(例えば特許文献1参照)。   As one of such security measures, a terminal equipped with a special module (so-called tamper resistant module) that makes unauthorized analysis or tampering from outside difficult is widely used (see, for example, Patent Document 1).

実際上、このようなモジュールを実装した端末では、例えば、コンテンツの利用に係わる暗号化データの復号を、このモジュール内で実行することにより、この復号の処理をブラックボックス化して、コンテンツの不正利用を防止するようになされている。
特開2001−22271公報(第9図)
In practice, a terminal equipped with such a module, for example, executes decryption of encrypted data related to the use of the content within this module, thereby converting the decryption process into a black box and using the content illegally. Has been made to prevent.
Japanese Patent Laid-Open No. 2001-22271 (FIG. 9)

ところで、上述のようなモジュールが、ある程度限定された目的に使用するデータの暗号化を行う場合、予めモジュール内に、暗号化データの復号に使用する鍵を書き込んでおくことが多い。このようにすれば、モジュールに対して、所望の暗号化データを入力するだけで、モジュールの出力から、暗号化データを復号したデータを得ることができるので、モジュールに対する煩雑な操作を行うことなく、モジュールを利用することができる。このように、モジュールの利用を簡易化することは、例えば、端末の製造業者(すなわちモジュールの利用者)に対して、モジュールを単体で配布するような場合、大きな利点となる。   By the way, when the above-described module encrypts data used for a purpose limited to some extent, a key used for decrypting encrypted data is often written in the module in advance. In this way, it is possible to obtain data obtained by decrypting the encrypted data from the output of the module simply by inputting the desired encrypted data to the module, so that no complicated operation is performed on the module. Modules can be used. Thus, simplifying the use of a module is a great advantage when, for example, a module is distributed alone to a terminal manufacturer (that is, a module user).

一方で、このように鍵をモジュール内に書き込んでおく場合、この鍵が破られたときの対策を講じておく必要がある。そこで従来、モジュール内に複数の鍵を書き込んでおき、ある鍵が破られた場合、破られていない別の鍵を使用するようにして、破られた鍵を使用できなくするといった対策を講じていた。ここで、破られた鍵に代えて別の鍵を使用するようにすることを「鍵をリニューアルする」と言い、このような処理を「リニューアル処理」と呼ぶ。また破られた鍵の使用を禁止することを「鍵をリボークする」と言い、このような処理を「リボーク処理」と呼ぶ。   On the other hand, when the key is written in the module in this way, it is necessary to take measures when the key is broken. Therefore, conventionally, multiple keys are written in the module, and if a key is broken, another measure that has not been broken is used so that the broken key cannot be used. It was. Here, using another key instead of the broken key is called “key renewal”, and such processing is called “renewal processing”. Prohibiting the use of a broken key is called “revoking a key”, and such processing is called “revocation processing”.

ところが、このようにリニューアル/リボーク処理を行う場合、例えば、どの鍵をどの鍵にリニューアルするのか、あるいはどの鍵をリボークするのかといったリニューアル/リボーク処理のための特別な命令をモジュールに与える必要があるなど、モジュールに対する煩雑な操作を行わなければならなかった。   However, when performing the renewal / revoke process in this way, it is necessary to give a special instruction for the renewal / revoke process to the module, for example, which key is renewed to which key or which key is revoked. It was necessary to perform complicated operations on the module.

このように、従来の復号用モジュールでは、鍵のリニューアル及び鍵のリボークを容易に行い得るとは言い難いという問題があった。   As described above, the conventional decryption module has a problem in that it is difficult to easily renew the key and revoke the key.

本発明は以上の点を考慮してなされたもので、鍵のリニューアル及び鍵のリボークを一段と容易に行い得る復号回路、復号装置、復号方法及び復号プログラムを提案しようとするものである。 The present invention has been made in consideration of the above points, and an object of the present invention is to propose a decryption circuit , a decryption device, a decryption method, and a decryption program that can perform key renewal and key revocation more easily.

かかる課題を解決するため本発明の復号回路においては、有効な鍵のバージョンを記憶する有効鍵バージョン記憶部と、複数のバージョンの鍵を記憶する鍵記憶部と、暗号化データと共に入力される鍵のバージョンと有効鍵バージョン記憶部に記憶される有効な鍵のバージョンとを比較することにより、入力される鍵のバージョンが有効であるか否かを検証する検証部と、検証部による検証結果に応じて、鍵記憶部に記憶される入力される鍵のバージョンに対応する鍵を用いて、入力される暗号化データを復号する復号部と、復号部による復号が成功し、かつ入力される鍵のバージョンと有効鍵バージョン記憶部に記憶される有効な鍵のバージョンとが異なるとき、当該有効バージョン記憶部に記憶される当該有効な鍵のバージョンを当該入力される鍵のバージョンに更新した後に、復号部で復号された平文データを出力する更新部とを設け、検証部が、入力される鍵のバージョンが鍵記憶部に記憶される鍵の複数のバージョンの範囲内であり、かつ有効鍵バージョン記憶部に記憶される有効な鍵のバージョンに対応するとき、当該入力される鍵のバージョンが有効であると判定するようにした。 In order to solve such a problem, in the decryption circuit of the present invention, an effective key version storage unit that stores a version of a valid key, a key storage unit that stores a plurality of versions of a key, and a key input together with encrypted data The verification unit verifies whether the version of the input key is valid by comparing the version of the key and the version of the valid key stored in the valid key version storage unit, and the verification result by the verification unit Accordingly, using the key corresponding to the version of the input key stored in the key storage unit, the decryption unit that decrypts the input encrypted data, and the key that is successfully decrypted by the decryption unit and that is input When the version of the valid key stored in the valid key version storage unit is different from the version of the valid key stored in the valid version storage unit, After updating the version of the key to be provided with an update unit for outputting plaintext data decoded by the decoding unit, the verification unit, multiple versions of the key version of the key to be input is stored in the key storage unit in the range of, and when the corresponding enable key version version valid key stored in the storage unit, version of the key to be the input to so that you determined to be valid.

このように、暗号化データを復号する際に、当該暗号化データと共に入力される鍵のバージョンと有効鍵バージョン記憶部に記憶される有効な鍵のバージョンとを比較し、この比較結果に応じて、有効鍵バージョン記憶部に記憶される有効な鍵のバージョンを、入力される鍵のバージョンに更新して鍵をリニューアルするようにしたことにより、例えば、どの鍵をどの鍵にリニューアルするのかといった、鍵をリニューアルするための特別な命令が入力されなくとも、暗号化データの復号時に、自動的に鍵のリニューアルを行うことができる。   As described above, when decrypting the encrypted data, the version of the key input together with the encrypted data is compared with the version of the valid key stored in the valid key version storage unit. By updating the version of the valid key stored in the valid key version storage unit to the version of the input key and renewing the key, for example, which key is renewed to which key, Even if a special command for renewing the key is not input, the key can be renewed automatically when the encrypted data is decrypted.

また、このように有効鍵バージョン記憶部に記憶される有効な鍵のバージョンを、入力される鍵のバージョンに更新するようにしたことにより、このとき同時に、更新前まで有効であったバージョンの鍵が無効になるため自動的に鍵をリボークすることができる。   In addition, by updating the valid key version stored in the valid key version storage unit to the version of the input key in this way, at the same time, the version key that was valid until before the update is simultaneously obtained. Since it becomes invalid, the key can be revoked automatically.

本発明によれば、暗号化データを復号する際に、当該暗号化データと共に入力される鍵のバージョンと有効鍵バージョン記憶部に記憶される有効な鍵のバージョンとを比較し、この比較結果に応じて、有効鍵バージョン記憶部に記憶される有効な鍵のバージョンを、入力される鍵のバージョンに更新して鍵をリニューアルするようにしたことにより、例えば、どの鍵をどの鍵にリニューアルするのかといった、鍵をリニューアルするための特別な命令が入力されなくとも、暗号化データの復号時に、自動的に鍵のリニューアルを行うことができ、またこのように有効鍵バージョン記憶部に記憶される有効な鍵のバージョンを、入力される鍵のバージョンに更新することにより、このとき同時に、更新前まで有効であったバージョンの鍵が無効になるため自動的に鍵をリボークすることができるので、煩雑な操作を行うことなく、暗号化データの復号時に、必要に応じて自動的に鍵のリニューアル及び鍵のリボークを行うことができ、かくして、鍵のリニューアル及び鍵のリボークを一段と容易に行い得る復号回路、復号装置、復号方法及び復号プログラムを実現することができる。 According to the present invention, when decrypting the encrypted data, the version of the key input together with the encrypted data is compared with the version of the valid key stored in the valid key version storage unit. In response, the version of the valid key stored in the valid key version storage unit is updated to the input key version and the key is renewed, for example, which key is renewed to which key. Even if a special command for renewing the key is not input, the key can be automatically renewed when the encrypted data is decrypted, and the valid key stored in the valid key version storage unit as described above. By updating the version of the correct key to the version of the key entered, the version of the key that was valid before the update is invalidated As a result, the key can be automatically revoked, so that the renewal of the key and the revoking of the key can be automatically performed as necessary when decrypting the encrypted data without performing a complicated operation. Thus, it is possible to realize a decryption circuit , a decryption device, a decryption method, and a decryption program that can perform key renewal and key revocation more easily.

以下図面について、本発明の一実施の形態を詳述する。   Hereinafter, an embodiment of the present invention will be described in detail with reference to the drawings.

(1)コンテンツ再生装置の構成
図1において、1は全体としてネットワークNTを介して配信される楽曲コンテンツを再生可能なコンテンツ再生装置を示し、当該コンテンツ再生装置1の筐体表面やリモートコントローラ(図示せず)に設けられた各種操作ボタンでなる操作入力部2がユーザによって操作されると、当該操作入力部2でこれを認識し、この操作に応じた操作入力信号を入力処理部3に送出する。入力処理部3は、供給される操作入力信号に対して所定の処理を施すことによりこの操作入力信号を操作コマンドに変換し、これをバス4を介してホストCPU(Central Processing Unit)5に送出する。
(1) Configuration of Content Playback Device In FIG. 1, reference numeral 1 denotes a content playback device capable of playing back music content distributed via the network NT as a whole. When the operation input unit 2 composed of various operation buttons provided in (not shown) is operated by the user, the operation input unit 2 recognizes this and sends an operation input signal corresponding to this operation to the input processing unit 3 To do. The input processing unit 3 performs predetermined processing on the supplied operation input signal to convert the operation input signal into an operation command, and sends the operation command to a host CPU (Central Processing Unit) 5 via the bus 4. To do.

ホストCPU5は、ROM(Read Only Memory)6又はハードディスクドライブ7に予め記憶されている基本プログラムやアプリケーションプログラム等の各種プログラムをバス4を介してRAM(Random Access Memory)8に読み出す。そしてこのホストCPU5は、これら各種プログラムをRAM8上に展開し、展開した各種プログラムに従って全体を制御すると共に、所定の演算処理や、入力処理部3から与えられる操作コマンドに応じた処理(例えばコンテンツ取得処理やコンテンツ再生処理等)を実行する。   The host CPU 5 reads various programs such as basic programs and application programs stored in advance in a ROM (Read Only Memory) 6 or a hard disk drive 7 into a RAM (Random Access Memory) 8 via the bus 4. The host CPU 5 expands these various programs on the RAM 8 and controls the whole according to the expanded various programs, and also performs predetermined arithmetic processing and processing (for example, content acquisition) according to an operation command given from the input processing unit 3. Processing, content reproduction processing, etc.).

実際上、ホストCPU5は、例えば、ユーザにより操作入力部2を介して楽曲コンテンツの取得操作が行われると、これに応じて、通信処理部9及びネットワークインタフェース10を順次介して、ネットワークNT上のコンテンツ配信サーバ(図示せず)にアクセスし、このコンテンツ配信サーバに対して楽曲コンテンツの配信を要求する要求信号を送信する。   In practice, for example, when the user performs an operation for acquiring music content via the operation input unit 2, the host CPU 5 responds to the request on the network NT via the communication processing unit 9 and the network interface 10 sequentially. A content distribution server (not shown) is accessed, and a request signal for requesting distribution of music content is transmitted to the content distribution server.

コンテンツ配信サーバは、所定の暗号化を施したコンテンツデータ(以下、これを暗号化コンテンツデータとも呼ぶ)を蓄積しており、コンテンツ再生装置1からアクセスされると、このコンテンツ再生装置1との間で所定のユーザ認証処理を行い、コンテンツ再生装置1が正規ユーザであると確認できた場合にのみ、コンテンツ再生装置1から送られてくる要求信号に応じて、要求された楽曲コンテンツに対応する暗号化コンテンツデータを、ネットワークNTを介してコンテンツ再生装置1に送信する。またこのときコンテンツ配信サーバは、例えば要求された楽曲コンテンツが有料であれば、この楽曲コンテンツの配信にともなう対価をコンテンツ再生装置1のユーザに対して課金するための課金処理を実行する。   The content distribution server stores content data subjected to predetermined encryption (hereinafter also referred to as encrypted content data), and when accessed from the content playback device 1, The encryption corresponding to the requested music content is performed in response to the request signal sent from the content reproduction apparatus 1 only when the predetermined user authentication process is performed and it is confirmed that the content reproduction apparatus 1 is an authorized user. The encrypted content data is transmitted to the content reproduction apparatus 1 via the network NT. At this time, if the requested music content is charged, for example, the content distribution server executes a charging process for charging the user of the content reproduction apparatus 1 for the fee associated with the distribution of the music content.

コンテンツ再生装置1のホストCPU5は、コンテンツ配信サーバから配信される暗号化コンテンツデータをネットワークインタフェース10及び通信処理部9を順次介して取り込み、これをハードディスクドライブ7に記録する。   The host CPU 5 of the content reproduction apparatus 1 takes in the encrypted content data distributed from the content distribution server via the network interface 10 and the communication processing unit 9 in order, and records them in the hard disk drive 7.

そしてホストCPU5は、ユーザにより操作入力部2を介してハードディスクドライブ7内の暗号化コンテンツデータに対する再生操作が行われると、これに応じて、指定された暗号化コンテンツデータをハードディスクドライブ7から読み出し、この暗号化コンテンツデータをデータ復号モジュール11に送出する。   When the user performs a reproduction operation on the encrypted content data in the hard disk drive 7 via the operation input unit 2, the host CPU 5 reads the specified encrypted content data from the hard disk drive 7 in response to this. This encrypted content data is sent to the data decryption module 11.

データ復号モジュール11は、暗号化データの復号を行うモジュールであり、例えば、ハードディスクドライブ7から読み出された暗号化コンテンツデータを復号することにより暗号化を解いたコンテンツデータを得、このコンテンツデータを音声処理部12に送出する。   The data decryption module 11 is a module for decrypting encrypted data. For example, the decrypted content data read from the hard disk drive 7 is decrypted to obtain decrypted content data, and the content data is It is sent to the voice processing unit 12.

音声処理部12は、データ復号モジュール11から供給されるコンテンツデータに対してデジタルアナログ変換処理やイコライジング処理等の音声処理を施し、この結果得られる音声信号をスピーカSPに送出して、スピーカSPからこの音声信号に基づく音声を出力する。   The audio processing unit 12 performs audio processing such as digital-analog conversion processing and equalizing processing on the content data supplied from the data decoding module 11, and sends out the resulting audio signal to the speaker SP. Voice based on this voice signal is output.

さらに、このコンテンツ再生装置1は、データ復号モジュール11に加えて、暗号化モジュール13、MAC(Message Authentication Code)モジュール14、及びファームウェア復号モジュール15を有している。   In addition to the data decryption module 11, the content reproduction apparatus 1 includes an encryption module 13, a MAC (Message Authentication Code) module 14, and a firmware decryption module 15.

暗号化モジュール13は、各種データの暗号化を行うモジュールであり、例えば、コンテンツ配信サーバに送信する送信データを暗号化する。こうすることでコンテンツ再生装置1では、送信データが送信経路で傍受されるのを防止する。またMACモジュール14は、各種データのMAC値を算出するモジュールであり、例えば、復号したコンテンツデータのMAC値を算出する。そしてコンテンツ再生装置1では、コンテンツデータに付随するMAC値と、このMACモジュール14で算出したMAC値とを比較することで、コンテンツデータの正当性を検証する。   The encryption module 13 is a module that encrypts various data, and for example, encrypts transmission data to be transmitted to the content distribution server. By doing so, the content reproduction apparatus 1 prevents transmission data from being intercepted on the transmission path. The MAC module 14 is a module that calculates the MAC value of various data, and for example, calculates the MAC value of the decrypted content data. The content reproduction apparatus 1 verifies the validity of the content data by comparing the MAC value associated with the content data with the MAC value calculated by the MAC module 14.

ファームウェア復号モジュール15は、暗号化ファームウェアの復号を行うモジュールであり、ハードディスクドライブ7から読み出された暗号化ファームウェアを復号することにより、暗号化を解いたファームウェアを得、これを出力する。このファームウェアは、例えば、他のモジュール(データ復号モジュール11、暗号化モジュール14、及びMACモジュール15)の機能に対応するファームウェアであり、このファームウェアが、ファームウェア復号モジュール15から他のモジュールに供給されることで、他のモジュールでファームウェアに応じた機能を実現するようになされている。   The firmware decryption module 15 is a module for decrypting the encrypted firmware, and obtains the decrypted firmware by decrypting the encrypted firmware read from the hard disk drive 7 and outputs it. This firmware is, for example, firmware corresponding to the functions of other modules (the data decryption module 11, the encryption module 14, and the MAC module 15), and this firmware is supplied from the firmware decryption module 15 to the other modules. Thus, functions according to the firmware are realized in other modules.

実際上、ファームウェア復号モジュール15は、内部に書き込まれているファームウェア復号用の鍵と、ファームウェア復号用のプログラムとを用いて、供給される暗号化ファームウェアを復号し、この結果得られるファームウェアを、対応するモジュールに出力する。ちなみに、ここでは、ファームウェアを暗号化した鍵を用いて、暗号化したファームウェアを復号することができるものとする。   In practice, the firmware decryption module 15 decrypts the supplied encrypted firmware using the firmware decryption key and the firmware decryption program written therein, and the firmware obtained as a result is supported. Output to the module. Incidentally, here, it is assumed that the encrypted firmware can be decrypted using a key obtained by encrypting the firmware.

さらに、このファームウェア復号モジュール15は、内部にファームウェアの復号に用いる鍵が書き込まれているため、この鍵が破られた場合の対策として、リニューアル/リボーク処理を実行し得るようにもなされている。   Further, since the firmware decryption module 15 has a key used for decrypting the firmware written therein, as a countermeasure when this key is broken, a renewal / revoke process can be executed.

ここで実際上、このファームウェア復号モジュール15で、どのようにリニューアル/リボーク処理を実行するのかを、ファームウェア復号モジュール15の内部構成と合わせて説明する。   Here, how the firmware decryption module 15 actually executes the renewal / revocation process will be described together with the internal configuration of the firmware decryption module 15.

(2)ファームウェア復号モジュールの内部構成及びリニューアル/リボーク処理手順
まず、ファームウェア復号モジュール15の内部構成について、図2を用いて説明する。図2に示すように、ファームウェア復号モジュール15は、複数バージョンの鍵を記憶する鍵記憶部20を有しており、この鍵記憶部20に書き込まれた複数バージョンの鍵を利用して、リニューアル/リボーク処理を実行するようになされている。この鍵記憶部20は、外部からのアクセスが禁止された例えばROMであり、ここでは説明の便宜上、バージョン「1」〜バージョン「10」までの10個の鍵が書き込まれているものとする。
(2) Internal Configuration of Firmware Decoding Module and Renewal / Revocation Processing Procedure First, the internal configuration of the firmware decoding module 15 will be described with reference to FIG. As shown in FIG. 2, the firmware decryption module 15 has a key storage unit 20 that stores a plurality of versions of keys, and uses the plurality of versions of keys written in the key storage unit 20 to renew / A revoke process is performed. The key storage unit 20 is, for example, a ROM that is prohibited from being accessed from the outside. Here, for convenience of explanation, it is assumed that ten keys from version “1” to version “10” are written.

また、このファームウェア復号モジュール15は、現在どのバージョンの鍵が有効であるのか(すなわち現在どのバージョンの鍵を使用すべきであるのか)を示す有効鍵バージョン情報を記憶する有効鍵バージョン記憶部21を有している。この有効鍵バージョン記憶部21は、外部からのアクセスが禁止された例えば不揮発性メモリである。ちなみに、ここでは、番号の小さいバージョンの鍵から使用するようになされている。すなわち、例えば有効鍵バージョン情報が示すバージョンが「3」であれば、バージョン「1」とバージョン「2」の鍵は既にリボークされ、バージョン「3」の鍵が現在使用すべき鍵であり、バージョン「4」、「5」、「6」、「7」、「8」、「9」、「10」の鍵が未使用であることを表す。   Further, the firmware decryption module 15 includes an effective key version storage unit 21 for storing effective key version information indicating which version of the key is currently valid (that is, which version of the key should be used at present). Have. The valid key version storage unit 21 is, for example, a nonvolatile memory that is prohibited from being accessed from the outside. By the way, here, it is made to use from the key of the version with a small number. That is, for example, if the version indicated by the valid key version information is “3”, the keys of version “1” and version “2” have already been revoked, and the key of version “3” is the key that should be used now. It represents that the keys “4”, “5”, “6”, “7”, “8”, “9”, “10” are unused.

実際上、このようなファームウェア復号モジュール15に対して、外部から暗号化ファームウェアと共に、この暗号化ファームウェアを暗号化している鍵のバージョンが示されたファームウェア鍵バージョン情報とが供給される。ちなみに、このファームウェア鍵バージョン情報は、対応する暗号化ファームウェアに紐付けられた状態で、この暗号化ファームウェアと共にハードディスクドライブ7に記録されており、ここでは説明の便宜上、ファームウェア鍵バージョン情報が示すバージョンを「n」、有効鍵バージョン情報が示すバージョンを「N」とする。   In practice, the firmware decrypting module 15 is supplied with the firmware key version information indicating the version of the key encrypting the encrypted firmware together with the encrypted firmware from the outside. Incidentally, this firmware key version information is recorded in the hard disk drive 7 together with the encrypted firmware in a state linked to the corresponding encrypted firmware. Here, for convenience of explanation, the version indicated by the firmware key version information is used. “N” and the version indicated by the valid key version information are “N”.

これら暗号化ファームウェア及びファームウェア鍵バージョン情報は、まずファームウェア復号モジュール15のバージョン検証部22に入力される。バージョン検証部22は、有効鍵バージョン記憶部21に記憶している有効鍵バージョン情報が示すバージョン「N」と、入力されたファームウェア鍵バージョン情報が示すバージョン「n」とを比較する。そしてこの比較の結果、入力されたファームウェア鍵バージョン情報が示すバージョン「n」の鍵が有効である(実際には、入力されたファームウェア鍵バージョン情報が示すバージョン「n」が、バージョン「1」〜「10」の間で、かつ有効鍵バージョン情報が示すバージョン「N」以上である)と確認できた場合、バージョン検証部22は、暗号化ファームウェア及び鍵バージョン情報を復号部23に供給する。   The encrypted firmware and firmware key version information are first input to the version verification unit 22 of the firmware decryption module 15. The version verification unit 22 compares the version “N” indicated by the valid key version information stored in the valid key version storage unit 21 with the version “n” indicated by the input firmware key version information. As a result of this comparison, the key of the version “n” indicated by the input firmware key version information is valid (in fact, the version “n” indicated by the input firmware key version information is the version “1” to “1”). If it is confirmed that the version is “10” and the version “N” or higher indicated by the valid key version information), the version verification unit 22 supplies the encrypted firmware and the key version information to the decryption unit 23.

復号部23は、供給されるファームウェア鍵バージョン情報が示すバージョン「n」の鍵を鍵記憶部20から読み出し、この鍵を使用して暗号化ファームウェアを復号することにより、暗号化を解いたファームウェアを得る。ここで、この復号部23は、得られたファームウェアのMAC値を算出し、この算出したMAC値と、復号したファームウェアに付随しているMAC値とを比較することにより、復号したファームウェアの正当性を検証するようにもなされている。そして、この検証の結果、復号したファームウェアの正当性が確認できた場合、復号部23は、このファームウェア及びファームウェア鍵バージョン情報をリニューアル処理部24に供給する。   The decryption unit 23 reads the key of the version “n” indicated by the supplied firmware key version information from the key storage unit 20 and decrypts the encrypted firmware by using this key to decrypt the decrypted firmware. obtain. Here, the decoding unit 23 calculates the MAC value of the obtained firmware, and compares the calculated MAC value with the MAC value attached to the decoded firmware, thereby verifying the validity of the decoded firmware. It has also been made to verify. If the validity of the decrypted firmware is confirmed as a result of the verification, the decryption unit 23 supplies the firmware and firmware key version information to the renewal processing unit 24.

ここでリニューアル処理部24は、リニューアル処理を行う必要があるか否かを判断する。つまりリニューアル処理部24は、供給されるファームウェア鍵バージョン情報が示すバージョン「n」が、有効鍵バージョン記憶部21に記憶されている有効鍵バージョン情報が示すバージョン「N」よりも大きい場合、このとき有効鍵バージョン情報が示すバージョン「N」の鍵が破られており、リニューアル処理を実行する必要があると判断して、有効鍵バージョン記憶部21に記憶している有効鍵バージョン情報のバージョン「N」を、供給されたファームウェア鍵バージョン情報のバージョン「n」に更新してリニューアル処理を行う。   Here, the renewal processing unit 24 determines whether or not it is necessary to perform the renewal processing. That is, when the version “n” indicated by the supplied firmware key version information is greater than the version “N” indicated by the valid key version information stored in the valid key version storage unit 21, It is determined that the key of the version “N” indicated by the valid key version information has been broken and it is necessary to execute the renewal process, and the version “N” of the valid key version information stored in the valid key version storage unit 21 is determined. Is updated to the version “n” of the supplied firmware key version information, and the renewal process is performed.

このようなリニューアル処理を行うことにより、ファームウェア復号モジュール15の復号部23では、次回以降、バージョン「n」以上の鍵でなければ暗号化ファームウェアを復号できなくなる。つまり、このリニューアル処理により、リニューアル処理部24は、有効鍵バージョン情報のバージョン「N」をバージョン「n」に更新する(リニューアルする)と共に、バージョン「N」の鍵の使用を禁止する(リボークした)ことになる。   By performing such a renewal process, the decryption unit 23 of the firmware decryption module 15 cannot decrypt the encrypted firmware from the next time unless the key is version “n” or higher. That is, by this renewal processing, the renewal processing unit 24 updates (renews) the version “N” of the valid key version information to the version “n” and prohibits the use of the key of the version “N” (revoked). )

このようにしてリニューアル/リボーク処理を行った後、リニューアル処理部24は、ファームウェアを出力する。ただし、リニューアル処理を行う必要がないと判断した場合には、リニューアル処理を行わずにファームウェアを出力する。   After performing the renewal / revoke process in this way, the renewal processing unit 24 outputs the firmware. However, if it is determined that the renewal process is not necessary, the firmware is output without performing the renewal process.

このように、ファームウェア復号モジュール15では、暗号化ファームウェアと共に外部から供給されるファームウェア鍵バージョン情報と、有効鍵バージョン記憶部21に記憶している有効鍵バージョン情報とを比較し、この比較結果に応じて、リニューアル/リボーク処理を実行する。   In this way, the firmware decryption module 15 compares the firmware key version information supplied from the outside together with the encrypted firmware with the valid key version information stored in the valid key version storage unit 21, and according to the comparison result. The renewal / revoke process is executed.

かくして、ホストCPU5側(すなわちファームウェア復号モジュール15の利用者側)から見れば、例えばバージョン「1」の鍵が破られた場合、このときハードディスクドライブ7に記録している、バージョン「1」の鍵で暗号化された暗号化ファームウェアと、バージョン「1」を示すファームウェア鍵バージョン情報とを、バージョン「2」の鍵で暗号化された暗号化ファームウェアと、バージョン「2」を示すファームウェア鍵バージョン情報とに更新し、ファームウェア復号モジュール15による復号時に、バージョン「2」の鍵で暗号化された暗号化ファームウェアと、バージョン「2」を示すファームウェア鍵バージョン情報とを、ファームウェア復号モジュール15に入力するだけで、自動的にバージョン「1」の鍵をバージョン「2」の鍵にリニューアルすると共に、バージョン「1」の鍵をリボークすることができる。   Thus, when viewed from the host CPU 5 side (that is, the user side of the firmware decryption module 15), for example, when the key of version "1" is broken, the key of version "1" recorded in the hard disk drive 7 at this time The encrypted firmware encrypted with the key, the firmware key version information indicating the version “1”, the encrypted firmware encrypted with the key of the version “2”, and the firmware key version information indicating the version “2”. And when the decryption by the firmware decryption module 15 is performed, only the encrypted firmware encrypted with the version “2” key and the firmware key version information indicating the version “2” are input to the firmware decryption module 15. Automatically lock the key of version “1” As well as renewal in the key of John "2", it is possible to revoke the key of version "1".

すなわち、ファームウェア復号モジュール15は、暗号化ファームウェアと共に入力されるファームウェア鍵バージョン情報をもとに、自動的にリニューアル/リボーク処理を行うことができる。   That is, the firmware decryption module 15 can automatically perform the renewal / revoke process based on the firmware key version information input together with the encrypted firmware.

ここで、ファームウェア復号モジュール15によるリニューアル/リボーク処理手順について、図3のフローチャートを用いて、より詳しく説明する。   Here, the renewal / revocation processing procedure by the firmware decryption module 15 will be described in more detail with reference to the flowchart of FIG.

ファームウェア復号モジュール15は、外部から暗号化ファームウェア及びファームウェア鍵バージョン情報が供給されると、リニューアル/リボーク処理手順RT1を開始して、ステップSP1に移る。   When the encrypted firmware and the firmware key version information are supplied from the outside, the firmware decryption module 15 starts the renewal / revoke processing procedure RT1 and proceeds to step SP1.

ステップSP1において、ファームウェア復号モジュール15は、供給された暗号化ファームウェア及びファームウェア鍵バージョン情報をバージョン検証部22に入力して、次のステップSP2に移る。   In step SP1, the firmware decryption module 15 inputs the supplied encrypted firmware and firmware key version information to the version verification unit 22, and proceeds to the next step SP2.

ステップSP2において、ファームウェア復号モジュール15は、バージョン検証部22により、ファームウェア鍵バージョン情報が示すバージョン「n」が、鍵記憶部20に書き込まれている鍵のバージョンの範囲内であるか否かを判定する。つまり、このステップSP2では、ファームウェア鍵バージョン情報が示すバージョン「n」が、鍵記憶部20に書き込まれている鍵のバージョンの最小値であるバージョン「Nmin」(すなわちバージョン「1」)以上で、かつ最大値であるバージョン「Nmax」(すなわちバージョン「10」)以下であるか否かを判定する。   In step SP <b> 2, the firmware decryption module 15 determines whether the version “n” indicated by the firmware key version information is within the key version range written in the key storage unit 20 by the version verification unit 22. To do. That is, in this step SP2, the version “n” indicated by the firmware key version information is equal to or higher than the version “Nmin” (that is, version “1”) that is the minimum value of the key version written in the key storage unit 20, In addition, it is determined whether or not the version is “Nmax” (ie, version “10”) that is the maximum value or less.

ここで否定結果を得ると、このことは、例えば、鍵記憶部20に記憶されている鍵のバージョンがバージョン「1」〜「10」であるにも係わらず、バージョン「1」〜「10」の範囲外のバージョン「0」を示すファームウェア鍵バージョン情報が入力されたことを表し、このときファームウェア復号モジュール15は、このファームウェア鍵バージョン情報が不正なものであると認識して、以降の処理を中止して終了ステップSP9に移り、このリニューアル/リボーク処理手順RT1を終了する。   If a negative result is obtained here, this means that, for example, although the key versions stored in the key storage unit 20 are versions “1” to “10”, the versions “1” to “10” This indicates that firmware key version information indicating version “0” outside the range is input. At this time, the firmware decryption module 15 recognizes that the firmware key version information is invalid, and performs the subsequent processing. Cancel and move to the end step SP9 to end the renewal / revocation process procedure RT1.

これに対してこのステップSP2で肯定結果を得ると、ファームウェア復号モジュール15は、ファームウェア鍵バージョン情報が示すバージョン「n」が、鍵記憶部20に記憶されている鍵のバージョンの範囲内であると認識して、次のステップSP3に移る。   On the other hand, if a positive result is obtained in step SP2, the firmware decryption module 15 determines that the version “n” indicated by the firmware key version information is within the key version range stored in the key storage unit 20. Recognize and move to next step SP3.

ステップSP3において、ファームウェア復号モジュール15は、ファームウェア鍵バージョン情報が示すバージョン「n」の鍵が、リボークされていない鍵であるか否かを判定する。つまり、このステップSP3では、ファームウェア鍵バージョン情報が示すバージョン「n」が、有効鍵バージョン記憶部21に記憶されている有効鍵バージョン情報が示すバージョン「N」以上であるか否かを判定する。   In step SP3, the firmware decryption module 15 determines whether the key of the version “n” indicated by the firmware key version information is a key that has not been revoked. That is, in this step SP3, it is determined whether or not the version “n” indicated by the firmware key version information is greater than or equal to the version “N” indicated by the valid key version information stored in the valid key version storage unit 21.

ここで否定結果を得ると、このことは、ファームウェア鍵バージョン情報が示すバージョン「n」の鍵が、すでにリボークされていることを表し、このときファームウェア復号モジュール15は、以降の処理を中止して終了ステップSP9に移り、このリニューアル/リボーク処理手順RT1を終了する。   If a negative result is obtained here, this means that the key of the version “n” indicated by the firmware key version information has already been revoked. At this time, the firmware decryption module 15 stops the subsequent processing. The process proceeds to end step SP9, and this renewal / revocation process procedure RT1 is ended.

これに対して、このステップSP3で肯定結果を得ると、ファームウェア復号モジュール15は、ファームウェア鍵バージョン情報が示すバージョン「n」の鍵が、リボークされておらず、使用可能な鍵であると認識して、次のステップSP4に移る。   On the other hand, if a positive result is obtained in step SP3, the firmware decryption module 15 recognizes that the key of the version “n” indicated by the firmware key version information has not been revoked and is a usable key. Then, the process proceeds to the next step SP4.

ステップSP4において、ファームウェア復号モジュール15は、復号部23により、ファームウェア鍵バージョン情報が示すバージョン「n」の鍵を鍵記憶部20から読み出して、この読み出したバージョン「n」の鍵を用いて暗号化ファームウェアを復号し、さらに復号したファームウェアに対して、上述したようなMAC値を利用した検証を行い、次のステップSP5に移る。   In step SP4, the firmware decryption module 15 uses the decryption unit 23 to read out the key of the version “n” indicated by the firmware key version information from the key storage unit 20, and encrypts it using the read version “n” key. The firmware is decrypted, and the decrypted firmware is verified using the MAC value as described above, and the process proceeds to the next step SP5.

ステップSP5において、ファームウェア復号モジュール15は、復号部23による、暗号化ファームウェアの復号処理が正常に終了したか否かを判定する。ここで否定結果を得ると、このことは、例えば、暗号化ファームウェアを暗号化している鍵と、ファームウェア鍵バージョン情報が示すバージョン「n」の鍵とが異なっていることにより、正常に復号できなかったこと、あるいは復号できたものの、検証の結果、復号したファームウェアが不正に改竄されたものであることを表し、このときファームウェア復号モジュール15は、以降の処理を中止して終了ステップSP9に移り、このリニューアル/リボーク処理手順RT1を終了する。   In step SP5, the firmware decryption module 15 determines whether or not the decryption process of the encrypted firmware by the decryption unit 23 has ended normally. If a negative result is obtained here, this means that, for example, the key that encrypts the encrypted firmware and the key of the version “n” indicated by the firmware key version information cannot be decrypted normally. Or the decrypted firmware has been tampered with as a result of verification. At this time, the firmware decrypting module 15 stops the subsequent processing and moves to the end step SP9. This renewal / revoke processing procedure RT1 is terminated.

このように、暗号化ファームウェアの復号処理が正常に終了しなかった場合には、以降の処理を中止することで、例えば、暗号化ファームウェアを暗号化している鍵と関係なく、ファームウェア鍵バージョン情報が示すバージョンを大きくして、自由にリニューアル処理を実行するような不正な動作を防止することができる。   As described above, when the decryption process of the encrypted firmware does not end normally, the subsequent process is stopped, so that, for example, the firmware key version information can be obtained regardless of the key encrypting the encrypted firmware. By increasing the version shown, it is possible to prevent illegal operations such as executing renewal processing freely.

これに対して、このステップSP5で肯定結果を得ると、ファームウェア復号モジュール15は、ステップSP6に移り、このステップSP6において、リニューアル処理部24によりリニューアル処理を行う必要があるか否かを判定する。つまり、このステップSP6では、ファームウェア鍵バージョン情報が示すバージョン「n」が、有効鍵バージョン記憶部21に記憶されている有効鍵バージョン情報が示すバージョン「N」と等しいか否かを判定する。   On the other hand, if a positive result is obtained in step SP5, the firmware decoding module 15 proceeds to step SP6, and determines whether or not the renewal processing unit 24 needs to perform the renewal processing in step SP6. That is, in step SP6, it is determined whether or not the version “n” indicated by the firmware key version information is equal to the version “N” indicated by the valid key version information stored in the valid key version storage unit 21.

ここで否定結果を得ると、このことは、ファームウェア鍵バージョン情報が示すバージョン「n」が、有効鍵バージョン記憶部21に記憶されている有効鍵バージョン情報が示すバージョン「N」よりも大きく、この結果、バージョン「N」の鍵が破られていて、リニューアル処理を行う必要があることを表し、このときファームウェア復号モジュール15は、ステップSP7に移る。   If a negative result is obtained here, this means that the version “n” indicated by the firmware key version information is greater than the version “N” indicated by the valid key version information stored in the valid key version storage unit 21. As a result, the key of version “N” has been broken and it is necessary to perform the renewal process. At this time, the firmware decryption module 15 proceeds to step SP7.

ステップSP7において、ファームウェア復号モジュール15は、有効鍵バージョン記憶部21に記憶している有効鍵バージョン情報が示すバージョン「N」を、供給されたファームウェア鍵バージョン情報が示すバージョン「n」に更新するリニューアル処理を行う。このとき、バージョン「N」の鍵は、バージョン「n」の鍵よりもバージョンが小さいので自動的にリボークされることになる。このようにして鍵のリニューアル及び鍵のリボークを行った後、ファームウェア復号モジュール15は、次のステップSP8に移る。   In step SP7, the firmware decryption module 15 renews the version “N” indicated by the valid key version information stored in the valid key version storage unit 21 with the version “n” indicated by the supplied firmware key version information. Process. At this time, the version “N” key is automatically revoked because the version is smaller than the version “n” key. After renewing the key and revoking the key in this way, the firmware decryption module 15 proceeds to the next step SP8.

これに対して、上述のステップSP6で肯定結果を得ると、このことはファームウェア鍵バージョン情報が示すバージョン「n」と、有効鍵バージョン記憶部21に記憶されている有効鍵バージョン情報が示すバージョン「N」とが等しく、リニューアル処理を行う必要がないことを表し、このときファームウェア復号モジュール15は、ステップSP8に移る。   On the other hand, when a positive result is obtained in step SP6 described above, this indicates that the version “n” indicated by the firmware key version information and the version “0” indicated by the valid key version information stored in the valid key version storage unit 21 are displayed. N ”is equal, indicating that renewal processing is not required. At this time, the firmware decoding module 15 proceeds to step SP8.

ステップSP8においてファームウェア復号モジュール15は、復号部23によって不復号したファームウェアを外部に出力して、終了ステップSP9に移り、このリニューアル/リボーク処理手順RT1を終了する。   In step SP8, the firmware decryption module 15 outputs the firmware that has not been decrypted by the decryption unit 23 to the outside, proceeds to the end step SP9, and terminates the renewal / revocation processing procedure RT1.

このような手順で、ファームウェア復号モジュール15は、暗号化ファームウェアを復号する際、必要に応じてリニューアル/リボーク処理を実行するようになされている。   With such a procedure, the firmware decryption module 15 executes a renewal / revoke process as necessary when decrypting the encrypted firmware.

また、コンテンツ再生装置1では、図4に示すように、ファームウェア復号モジュール15で暗号化ファームウェアの復号に使用する鍵を、他のモジュール(データ復号モジュール11、暗号化モジュール14、及びMACモジュール15)に受け渡すことで、この鍵を各モジュールで共用するようにもなされている。   Further, in the content reproduction apparatus 1, as shown in FIG. 4, the key used for decryption of the encrypted firmware by the firmware decryption module 15 is used as another module (the data decryption module 11, the encryption module 14, and the MAC module 15). This key is shared by each module by passing it to.

ここで、実際上ファームウェア復号モジュール15は、鍵を暗号化してから、バス4を介して他のモジュールに受け渡すようになされており、これによりこの鍵が、他のモジュールへ受け渡される際に外部(例えばホストCPU5)から傍受されるのを防止することができる。   Here, in practice, the firmware decryption module 15 encrypts the key and then passes it to another module via the bus 4, so that when this key is passed to the other module, Eavesdropping from the outside (for example, the host CPU 5) can be prevented.

したがって、データ復号モジュール11では、ファームウェア復号モジュール15から受け渡される鍵を復号し、この復号した鍵を使用して、入力される暗号化データ(例えば暗号化コンテンツデータ)を復号することにより、平文データ(例えばコンテンツデータ)を得、これを出力する。暗号化モジュール13は、ファームウェア復号モジュール15から受け渡される鍵を復号し、この復号した鍵を使用して、入力される各種データを暗号化することにより、暗号化データを得、これを出力する。MACモジュール14は、ファームウェア復号モジュール15から受け渡される鍵を復号し、この復号した鍵を使用して、入力される各種データのMAC値を算出することにより、MAC値を得、これを出力する。   Therefore, the data decryption module 11 decrypts the key delivered from the firmware decryption module 15 and decrypts the input encrypted data (for example, encrypted content data) using the decrypted key, thereby clearing the plaintext. Data (for example, content data) is obtained and output. The encryption module 13 decrypts the key delivered from the firmware decryption module 15, encrypts various input data using the decrypted key, obtains encrypted data, and outputs this . The MAC module 14 decrypts the key delivered from the firmware decryption module 15 and calculates the MAC value of various input data using the decrypted key, thereby obtaining the MAC value and outputting it. .

またこのとき、各モジュールでは、同じバージョンの鍵を使用することになる。つまり、ファームウェア復号モジュール15でのリニューアル/リボーク処理により、ファームウェア復号モジュール15で使用する鍵が更新されると、これに応じてこのファームウェア復号モジュール15から他のモジュールに受け渡される鍵も更新される。   At this time, the same version key is used in each module. That is, when the key used in the firmware decryption module 15 is updated by the renewal / revoke processing in the firmware decryption module 15, the key transferred from the firmware decryption module 15 to another module is also updated accordingly. .

この場合、ファームウェア復号モジュール15でのリニューアル/リボーク処理は、各モジュールに対応するファームウェアを復号するときのみ、すなわち各モジュールを利用するときの初回のみ実行すればよい。こうすることで、各モジュールで鍵を利用する度に毎回リニューアル/リボーク処理を実行することを回避して、ファームウェア復号モジュール15での処理負荷を低減させることができる。このことは、多くのモジュールで、同一の鍵を使用する場合、特に重要となる。   In this case, the renewal / revoke process in the firmware decryption module 15 may be executed only when decrypting the firmware corresponding to each module, that is, only when the module is used for the first time. By doing so, it is possible to avoid executing the renewal / revocation process every time the key is used in each module, and to reduce the processing load on the firmware decryption module 15. This is particularly important when many modules use the same key.

(3)動作及び効果
以上の構成においてファームウェア復号モジュール15では、外部から暗号化ファームウェアとファームウェア鍵バージョン情報とが入力されると、まず、このファームウェア鍵バージョン情報が示すバージョン「n」と、有効鍵バージョン記憶部21に記憶している有効鍵バージョン情報が示すバージョン「N」とを比較する。
(3) Operation and Effect In the above configuration, in the firmware decryption module 15, when the encrypted firmware and the firmware key version information are input from the outside, first, the version “n” indicated by the firmware key version information and the valid key The version “N” indicated by the valid key version information stored in the version storage unit 21 is compared.

そしてこの比較の結果、ファームウェア復号モジュール15は、ファームウェア鍵バージョン情報が示すバージョン「n」が、鍵記憶部20に書き込まれている鍵のバージョンの範囲内で、かつ有効鍵バージョン記憶部21に記憶している有効鍵バージョン情報が示すバージョン「N」以上である場合、このファームウェア鍵バージョン情報が示すバージョン「n」が有効であると判断して、バージョン「n」の鍵を、鍵記憶部20から読み出し、このバージョン「n」の鍵を使用して、入力された暗号化ファームウェアを復号する。   As a result of this comparison, the firmware decryption module 15 stores the version “n” indicated by the firmware key version information in the valid key version storage unit 21 within the key version range written in the key storage unit 20. If the version “N” indicated by the valid key version information being used is equal to or higher than the version “n” indicated by the firmware key version information, the key storage unit 20 determines that the version “n” is valid. And using the version “n” key, the inputted encrypted firmware is decrypted.

つづいてファームウェア復号モジュール15は、有効鍵バージョン情報が示すバージョン「N」の鍵をリニューアルする必要があるか否かを判定する。ここでファームウェア復号モジュール15は、ファームウェア鍵バージョン情報が示すバージョン「n」が、有効鍵バージョン情報が示すバージョン「N」よりも大きい場合、有効鍵バージョン情報が示すバージョン「N」の鍵が破られており、このバージョン「N」の鍵をリニューアルする必要があると判定して、有効鍵バージョン記憶部21に記憶している有効鍵バージョン情報のバージョン「N」をファームウェア鍵バージョン情報が示すバージョン「n」に更新してリニューアルする。   Subsequently, the firmware decryption module 15 determines whether or not it is necessary to renew the key of the version “N” indicated by the valid key version information. Here, when the version “n” indicated by the firmware key version information is greater than the version “N” indicated by the valid key version information, the firmware decryption module 15 breaks the key of the version “N” indicated by the valid key version information. Therefore, it is determined that the key of this version “N” needs to be renewed, and the version “N” of the valid key version information stored in the valid key version storage unit 21 indicates the version “ Update to "n" and renew.

このとき、ファームウェア復号モジュール15では、鍵記憶部20に書き込まれている複数の鍵を、バージョンの小さい順に使用するように設定されているため、バージョン「n」の鍵よりもバージョンが小さいバージョン「N」の鍵は自動的にリボークされる。   At this time, since the firmware decryption module 15 is set to use a plurality of keys written in the key storage unit 20 in order from the smallest version, the version “n” that is smaller than the version “n” key. The “N” key is automatically revoked.

このようにして、必要に応じてリニューアル/リボーク処理を行った後、ファームウェア復号モジュール15は、復号したファームウェアを出力する。   In this way, after performing renewal / revocation processing as necessary, the firmware decryption module 15 outputs the decrypted firmware.

かくして、ファームウェア復号モジュール15では、どの鍵をどの鍵にリニューアルするのか、あるいはどの鍵をリボークするのかといったリニューアル/リボーク処理のための特別な命令が外部から入力されなくとも、暗号化ファームウェアの復号時に、暗号化ファームウェアと共に外部から入力されるファームウェア鍵バージョン情報と、有効鍵バージョン記憶部21に記憶している有効鍵バージョン情報とを比較し、この比較結果に応じて自動的にリニューアル/リボーク処理を行うことができる。   Thus, the firmware decryption module 15 does not need to input a special instruction for renewal / revoke processing such as which key is renewed to which key or which key is revoked, even when the encrypted firmware is decrypted. The firmware key version information input from the outside together with the encrypted firmware is compared with the valid key version information stored in the valid key version storage unit 21, and renewal / revoke processing is automatically performed according to the comparison result. It can be carried out.

つまり、このファームウェア復号モジュール15では、モジュールの利用者(端末のユーザも含む)に対して、リニューアル/リボーク処理を意識させることなく、ファームウェア復号モジュール15のもともとの機能である暗号化ファームウェアの復号時に、必要に応じて自動的にリニューアル/リボーク処理を行うことができる。   That is, in the firmware decryption module 15, when the module user (including the user of the terminal) is not aware of the renewal / revoke process, the firmware decryption module 15 can decrypt the encrypted firmware that is the original function of the firmware decryption module 15. The renewal / revoke process can be automatically performed as necessary.

また、このようにファームウェア復号モジュール15が、必要に応じて自動的にリニューアル/リボーク処理を行うことができるので、モジュールの利用者に対して、リニューアル/リボーク処理を行うための命令を公開せずに、リニューアル/リボーク処理を行うことができる。   In addition, since the firmware decryption module 15 can automatically perform the renewal / revoke process as necessary in this manner, the instruction for performing the renewal / revoke process is not disclosed to the module user. In addition, renewal / revoke processing can be performed.

この結果、例えばリニューアル/リボーク処理を行うための命令をモジュールの利用者が不正に使用してリニューアル処理を複数回実行させることにより鍵記憶部20に書き込まれている鍵の数が特定されてしまうといったセキュリティホールを未然に防ぐこともできる。   As a result, for example, the number of keys written in the key storage unit 20 is specified when the module user improperly uses a command for performing the renewal / revoke process and executes the renewal process a plurality of times. It is possible to prevent such security holes.

以上の構成によれば、暗号化ファームウェアを復号する際に、当該暗号化ファームウェアと共に入力されるファームウェア鍵バージョン情報が示すバージョン「n」と、有効鍵バージョン記憶部21に記憶している有効鍵バージョン情報が示すバージョン「N」とを比較し、この比較結果に応じて、有効鍵バージョン記憶部21に記憶している有効鍵バージョン情報が示すバージョン「N」を、ファームウェア鍵バージョン情報が示すバージョン「n」に更新して鍵をリニューアルするようにしたことにより、例えば、どの鍵をどの鍵にリニューアルするのかといった、鍵をリニューアルするための特別な命令が入力されなくとも、暗号化ファームウェアの復号時に、自動的に鍵のリニューアルを行うことができ、またこのようにして有効鍵バージョン記憶部21に記憶している有効鍵バージョン情報が示すバージョン「N」を、ファームウェア鍵バージョン情報が示すバージョン「n」に更新することにより、このとき同時に、更新前まで有効であったバージョンの鍵が無効になるため自動的に鍵をリボークすることができるので、煩雑な操作を行うことなく、暗号化ファームウェアの復号時に、必要に応じて自動的に鍵のリニューアル及び鍵のリボークを行うことができ、かくして、鍵のリニューアル及び鍵のリボークを一段と容易に行うことができる。   According to the above configuration, when decrypting the encrypted firmware, the version “n” indicated by the firmware key version information input together with the encrypted firmware and the valid key version stored in the valid key version storage unit 21 The version “N” indicated by the information is compared, and according to the comparison result, the version “N” indicated by the valid key version information stored in the valid key version storage unit 21 is changed to the version “N” indicated by the firmware key version information. By updating to “n” and renewing the key, for example, when a special command for renewing the key, such as which key is renewed to which key, is not input, the decryption of the encrypted firmware The key can be renewed automatically, and in this way the valid key By updating the version “N” indicated by the valid key version information stored in the version storage unit 21 to the version “n” indicated by the firmware key version information, at the same time, the version valid before the update is updated. Since the key becomes invalid, the key can be revoked automatically, so renewing the key and revoking the key automatically when necessary when decrypting the encrypted firmware without performing complicated operations. Thus, key renewal and key revocation can be performed more easily.

(4)他の実施の形態
なお上述の実施の形態においては、ファームウェア復号モジュール15に加えて、データ復号モジュール11、暗号化モジュール13、及びMACモジュール14をコンテンツ再生装置1に実装した場合について述べたが、本発明はこれに限らず、コンテンツ再生装置1の機能に合わせて、この他種々のモジュールを実装するようにしてもよい。この場合も、上述の実施の形態と同様に、ファームウェア復号モジュール15で使用される鍵を、他のモジュールに受け渡して、他のモジュールで行う処理にこの鍵を使用することができる。
(4) Other Embodiments In the above-described embodiment, a case where the data decryption module 11, the encryption module 13, and the MAC module 14 are mounted on the content reproduction apparatus 1 in addition to the firmware decryption module 15 will be described. However, the present invention is not limited to this, and various other modules may be mounted in accordance with the function of the content reproduction apparatus 1. Also in this case, as in the above-described embodiment, the key used in the firmware decryption module 15 can be transferred to another module and used for processing performed in the other module.

また上述の実施の形態においては、ファームウェア復号モジュール15が、内部に書き込まれたファームウェア復号用のプログラムを実行することで、暗号化データとしての暗号化ファームウェアの復号、及びリニューアル/リボーク処理を行う、いわゆるソフトウェアモジュールである場合について述べたが、本発明はこれに限らず、例えば、ファームウェア復号モジュール15が、暗号化ファームウェアの復号、及びリニューアル/リボーク処理を行う専用のデバイスを有するハードウェアモジュールであってもよい。   In the above-described embodiment, the firmware decryption module 15 executes the firmware decryption program written therein, thereby performing decryption of the encrypted firmware as encrypted data and renewal / revoke processing. Although the case of a so-called software module has been described, the present invention is not limited to this. For example, the firmware decryption module 15 is a hardware module having a dedicated device for performing decryption of encrypted firmware and renewal / revoke processing. May be.

さらに上述の実施の形態においては、ファームウェア実行手段としての、ファームウェア復号モジュール15、データ復号モジュール11、暗号化モジュール13、及びMACモジュール14をそれぞれ別々のモジュールとして、コンテンツ再生装置1に実装した場合について述べたが、本発明はこれに限らず、これらファームウェア復号モジュール15、データ復号モジュール11、暗号化モジュール13、及びMACモジュール14の機能を有する1個のモジュールを実装するようにしてもよい。この場合、これらの機能をファームウェアでソフトウェア的に実現してもよいし、これらの機能を専用デバイスでハードウェア的に実現してもよい。   Furthermore, in the above-described embodiment, a case where the firmware decrypting module 15, the data decrypting module 11, the encrypting module 13, and the MAC module 14 as the firmware executing means are mounted on the content reproducing apparatus 1 as separate modules. As described above, the present invention is not limited to this, and one module having the functions of the firmware decryption module 15, the data decryption module 11, the encryption module 13, and the MAC module 14 may be mounted. In this case, these functions may be realized by software using firmware, or these functions may be realized by hardware using a dedicated device.

さらに上述の実施の形態においては、ファームウェア鍵バージョン情報と、暗号化ファームウェアとを互いに紐付けた状態で、ハードディスクドライブ7に記録しておき、必要に応じてこれらをファームウェア復号モジュール15に入力するようにした場合について述べたが、本発明はこれに限らず、例えば、暗号化ファームウェアにファームウェア鍵バージョン情報を埋め込んだ状態で、ハードディスクドライブ7に記録しておき、必要に応じてこのファームウェア鍵バージョン情報が埋め込まれた暗号化ファームウェアをファームウェア復号モジュール15に入力するようにしてもよい。このようにファームウェア鍵バージョン情報を暗号化ファームウェアに埋め込んでおけば、ファームウェア鍵バージョン情報が解析・改竄される危険性を低減させることもできる。   Furthermore, in the above-described embodiment, the firmware key version information and the encrypted firmware are recorded in the hard disk drive 7 in a state of being linked to each other, and these are input to the firmware decryption module 15 as necessary. However, the present invention is not limited to this. For example, the firmware key version information is recorded in the hard disk drive 7 with the firmware key version information embedded in the encrypted firmware. May be input to the firmware decrypting module 15. If the firmware key version information is embedded in the encrypted firmware in this way, the risk of the firmware key version information being analyzed / tampered can be reduced.

さらに上述の実施の形態においては、鍵記憶部20及び有効鍵バージョン記憶部21を別々のメモリ(ROM及び不揮発性メモリ)にした場合について述べたが、本発明はこれに限らず、鍵記憶部20及び有効鍵バージョン記憶部21を一つのメモリにしてもよい。この場合、有効鍵バージョン記憶部21が書換可能である必要があるので、利用するメモリとしては、書換可能な不揮発性メモリ等が望ましい。   Furthermore, in the above-described embodiment, the case where the key storage unit 20 and the valid key version storage unit 21 are separate memories (ROM and nonvolatile memory) has been described. However, the present invention is not limited to this, and the key storage unit 20 and the valid key version storage unit 21 may be combined into one memory. In this case, since the valid key version storage unit 21 needs to be rewritable, a rewritable nonvolatile memory or the like is desirable as the memory to be used.

さらに上述の実施の形態においては、ファームウェア復号モジュール15を、コンテンツ再生装置1に実装した場合について述べたが、本発明はこれに限らず、データを復号する必要のある復号装置であれば、この他種々の復号装置に実装してもよい。   Furthermore, in the above-described embodiment, the case where the firmware decrypting module 15 is mounted on the content reproduction device 1 has been described. However, the present invention is not limited to this, and any decryption device that needs to decrypt data can be used. You may mount in various other decoding apparatuses.

さらに上述の実施の形態においては、復号部23により復号したファームウェアの正当性を検証するために、MAC値を利用した検証方法を用いた場合について述べたが、本発明はこれに限らず、例えば、MAC値の代わりに、ハッシュ値を用いる等、正当性を検証し得る方法であれば、この他種々の方法を用いてもよい。   Furthermore, in the above-described embodiment, the case where the verification method using the MAC value is used to verify the correctness of the firmware decoded by the decoding unit 23 is described, but the present invention is not limited to this, for example, Various other methods may be used as long as the method can verify the validity, such as using a hash value instead of the MAC value.

さらに上述の実施の形態においては、ファームウェア復号モジュール15が、鍵を暗号化してから、バス4を介して他のモジュールに受け渡すようにした場合について述べたが、本発明はこれに限らず、例えば、ファームウェア復号モジュール15と他のモジュールとを外部から隠蔽した専用バスで繋ぎ、この専用バスを介して鍵を受け渡すようにしてもよいし、上述のように、ファームウェア復号モジュール15と他のモジュールとを1つのモジュールとし、このモジュール内で鍵を受け渡すようにしてもよい。このようにしても上述の実施の形態と同様、鍵が他のモジュールに受け渡される際に外部から傍受されるのを防止することができる。   Furthermore, in the above-described embodiment, the case where the firmware decryption module 15 encrypts the key and then passes the key to another module via the bus 4 is described. However, the present invention is not limited to this, For example, the firmware decryption module 15 and another module may be connected to each other by a dedicated bus concealed from the outside, and the key may be transferred via the dedicated bus. A module may be a single module, and a key may be transferred within the module. Even in this way, as in the above-described embodiment, it is possible to prevent the key from being intercepted from the outside when it is delivered to another module.

さらに上述の実施の形態においては、有効鍵バージョン記憶部21と、鍵記憶部20と、検証部としてのバージョン検証部22と、復号部23と、更新部としてのリニューアル処理部24とによって、復号回路、信号処理手段及び信号処理装置としてのファームウェア復号モジュール15を構成するようにした場合について述べたが、本発明はこれに限らず、これらと同機能を有するものであれば、この他種々の構成を用いるようにしてもよい。   Furthermore, in the above-described embodiment, decryption is performed by the valid key version storage unit 21, the key storage unit 20, the version verification unit 22 as a verification unit, the decryption unit 23, and the renewal processing unit 24 as an update unit. Although the case where the firmware decoding module 15 as a circuit, a signal processing means, and a signal processing device is configured has been described, the present invention is not limited thereto, and various other types can be used as long as they have the same function as these. A configuration may be used.

さらに上述の実施の形態においては、暗号化データ記憶手段としてのハードディスクドライブ7と、信号処理手段としてのファームウェア復号モジュール15とによって、復号装置及び信号処理装置としてのコンテンツ再生装置1を構成するようにした場合について述べたが、本発明はこれに限らず、これらと同機能を有するものであれば、この他種々の構成を用いるようにしてもよい。   Further, in the above-described embodiment, the hard disk drive 7 as the encrypted data storage unit and the firmware decryption module 15 as the signal processing unit constitute the decryption device and the content reproduction device 1 as the signal processing device. However, the present invention is not limited to this, and various other configurations may be used as long as they have the same functions.

本発明は、内部に書き込まれた鍵を使用して復号を行う回路及び装置で広く利用できる。   The present invention can be widely used in circuits and apparatuses that perform decryption using a key written therein.

コンテンツ再生装置の全体構成を示す略線図である。It is a basic diagram which shows the whole structure of a content reproduction apparatus. ファームウェア復号モジュールの内部構成を示す略線図である。It is a basic diagram which shows the internal structure of a firmware decoding module. リニューアル/リボーク処理手順を示すフローチャートである。It is a flowchart which shows a renewal / revocation process procedure. 鍵の受け渡しを示す略線図である。It is a basic diagram which shows delivery of a key.

符号の説明Explanation of symbols

1……コンテンツ再生装置、2……操作入力部、3……入力処理部、4……バス、5……ホストCPU、6……ROM、7……ハードディスクドライブ、8……RAM、9……通信処理部、10……ネットワークインタフェース、11……データ復号モジュール、12……音声処理部、13……暗号化モジュール、14……MACモジュール、15……ファームウェア復号モジュール、20……鍵記憶部、21……有効鍵バージョン記憶部、22……バージョン検証部、23……復号部、24……リニューアル処理部、NT……ネットワーク、SP……スピーカ。
DESCRIPTION OF SYMBOLS 1 ... Content reproduction apparatus, 2 ... Operation input part, 3 ... Input processing part, 4 ... Bus, 5 ... Host CPU, 6 ... ROM, 7 ... Hard disk drive, 8 ... RAM, 9 ... Communication processing unit, 10: Network interface, 11: Data decryption module, 12: Audio processing unit, 13: Encryption module, 14: MAC module, 15: Firmware decryption module, 20: Key storage , 21... Valid key version storage unit, 22... Version verification unit, 23... Decryption unit, 24... Renewal processing unit, NT.

Claims (9)

有効な鍵のバージョンを記憶する有効鍵バージョン記憶部と、
複数のバージョンの鍵を記憶する鍵記憶部と、
暗号化データと共に入力される鍵のバージョンと上記有効鍵バージョン記憶部に記憶される有効な鍵のバージョンとを比較することにより、上記入力される鍵のバージョンが有効であるか否かを検証する検証部と、
上記検証部による検証結果に応じて、上記鍵記憶部に記憶される上記入力される鍵のバージョンに対応する鍵を用いて、入力される上記暗号化データを復号する復号部と、
上記復号部による復号が成功し、かつ上記入力される鍵のバージョンと上記有効鍵バージョン記憶部に記憶される上記有効な鍵のバージョンとが異なるとき、当該有効バージョン記憶部に記憶される当該有効な鍵のバージョンを当該入力される鍵のバージョンに更新した後に、上記復号部で復号された平文データを出力する更新部と
を具え
上記検証部は、
上記入力される鍵のバージョンが上記鍵記憶部に記憶される鍵の複数のバージョンの範囲内であり、かつ上記有効鍵バージョン記憶部に記憶される上記有効な鍵のバージョンに対応するとき、当該入力される鍵のバージョンが有効であると判定する
復号回路。
A valid key version storage unit for storing a valid key version;
A key storage unit for storing a plurality of versions of keys;
By comparing the version of the key input together with the encrypted data with the version of the valid key stored in the valid key version storage unit, it is verified whether or not the version of the input key is valid. A verification unit;
A decryption unit that decrypts the input encrypted data using a key corresponding to the version of the input key stored in the key storage unit according to a verification result by the verification unit;
When the decryption by the decryption unit is successful and the input key version is different from the valid key version stored in the valid key version storage unit, the valid version stored in the valid version storage unit An update unit that outputs the plaintext data decrypted by the decryption unit after the key version is updated to the input key version .
The verification part
When the version of the input key is within a range of a plurality of versions of the key stored in the key storage unit and corresponds to the version of the valid key stored in the effective key version storage unit, A decryption circuit that determines that the version of the input key is valid .
上記入力される暗号化データは、暗号化されたファームウェアである
求項1に記載の復号回路。
The input encrypted data is encrypted firmware
Decoding circuit according to Motomeko 1.
上記有効鍵バージョン記憶部と上記鍵記憶部とが同一メモリである
求項1に記載の復号回路。
The valid key version storage unit and the key storage unit are the same memory.
Decoding circuit according to Motomeko 1.
特定の鍵により暗号化された暗号化データと、当該特定の鍵のバージョンとを記憶する暗号化データ記憶手段と、
有効な鍵のバージョンを記憶する有効鍵バージョン記憶手段と、複数のバージョンの鍵を記憶する鍵記憶手段と、暗号化データと共に入力される鍵のバージョンと上記有効鍵バージョン記憶手段に記憶される有効な鍵のバージョンとを比較することにより、上記入力される鍵のバージョンが有効であるか否かを検証する検証手段と、当該検証手段による検証結果に応じて、上記鍵記憶手段に記憶される上記入力される鍵のバージョンに対応する鍵を用いて、入力される上記暗号化データを復号する復号手段と、当該復号手段による復号が成功し、かつ上記入力される鍵のバージョンと上記有効鍵バージョン記憶手段に記憶される上記有効な鍵のバージョンとが異なるとき、当該有効バージョン記憶手段に記憶される当該有効な鍵のバージョンを当該入力される鍵のバージョンに更新した後に、上記復号手段で復号された平文データを出力する更新手段とを有する信号処理手段と
を具え
上記信号処理手段の上記検証手段は、
上記入力される鍵のバージョンが上記鍵記憶手段に記憶される鍵の複数のバージョンの範囲内であり、かつ上記有効鍵バージョン記憶手段に記憶される上記有効な鍵のバージョンに対応するとき、当該入力される鍵のバージョンが有効であると判定する
復号装置。
Encrypted data storage means for storing encrypted data encrypted with a specific key and a version of the specific key;
Valid key version storage means for storing a valid key version, key storage means for storing a plurality of version keys, a key version input together with encrypted data, and a valid key stored in the valid key version storage means A verifier that verifies whether the input key version is valid by comparing the key version with a valid key, and stores the key in the key storage unit according to the verification result of the verifier Decryption means for decrypting the input encrypted data using a key corresponding to the version of the input key; successful decryption by the decryption means; and the input key version and the valid key The version of the valid key stored in the valid version storage means when the version of the valid key stored in the version storage means is different After updating the version of the key being the input, comprising a signal processing means having an updating means for outputting the plaintext data decrypted by the decoding means,
The verification means of the signal processing means is:
When the version of the input key is within a range of a plurality of versions of the key stored in the key storage means and corresponds to the version of the valid key stored in the valid key version storage means, A decryption device that determines that a version of an input key is valid .
上記入力される暗号化データは、暗号化されたファームウェアであり、上記信号処理手段から出力される上記平文データとしてのファームウェアを実行するファームウェア実行手段を具える
求項に記載の復号装置。
The input encrypted data is encrypted firmware, and includes firmware execution means for executing firmware as the plaintext data output from the signal processing means.
Decoding apparatus according to Motomeko 4.
上記復号手段が用いた上記鍵を用いて、入力される暗号化データを復号する更なる復号手段を具える
求項に記載の復号装置。
A further decryption means for decrypting the input encrypted data using the key used by the decryption means;
Decoding apparatus according to Motomeko 4.
更に、
上記復号手段が用いた上記鍵を用いて、入力されるデータを暗号化する暗号化手段と、
上記復号手段が用いた上記鍵を用いて、入力されるデータのMAC値を算出するMAC手段と
を具える
求項4に記載の復号装置。
Furthermore,
An encryption means for encrypting input data using the key used by the decryption means;
MAC means for calculating the MAC value of the input data using the key used by the decryption means.
Decoding apparatus according to Motomeko 4.
信号処理装置の検証部が、当該信号処理装置に暗号化データと共に入力される鍵のバージョンと、上記信号処理装置の有効鍵バージョン記憶部に記憶される有効な鍵のバージョンとを比較することにより、上記入力される鍵のバージョンが有効であるか否かを検証する検証ステップと、
上記信号処理装置の復号部が、上記検証ステップでの検証結果に応じて、上記信号処理装置の鍵記憶部に記憶される複数のバージョンの鍵のうち上記入力される鍵のバージョンに対応する鍵を用いて、入力される上記暗号化データを復号する復号ステップと、
上記信号処理装置の更新部が、上記復号ステップでの復号が成功し、かつ上記入力される鍵のバージョンと上記有効な鍵のバージョンとが異なるとき、上記有効鍵バージョン記憶部に記憶される当該有効な鍵のバージョンを当該入力される鍵のバージョンに更新した後に、上記復号ステップで復号された平文データを出力する更新ステップと
を具え
上記検証ステップでは、
上記検証部が、上記入力される鍵のバージョンが上記鍵記憶部に記憶される鍵の複数のバージョンの範囲内であり、かつ上記有効鍵バージョン記憶部に記憶される上記有効な鍵のバージョンに対応するとき、当該入力される鍵のバージョンが有効であると判定する
復号方法。
The verification unit of the signal processing device compares the version of the key input to the signal processing device together with the encrypted data with the version of the valid key stored in the valid key version storage unit of the signal processing device. A verification step for verifying whether the input key version is valid;
The decryption unit of the signal processing device has a key corresponding to the input key version among a plurality of version keys stored in the key storage unit of the signal processing device according to the verification result in the verification step. A decryption step of decrypting the input encrypted data using
The update unit of the signal processing device stores the effective key version storage unit when the decryption at the decryption step is successful and the version of the input key is different from the version of the valid key. An update step of outputting the plaintext data decrypted in the decryption step after the valid key version is updated to the input key version ;
In the above verification step,
The verification unit determines that the version of the input key is within a range of a plurality of versions of the key stored in the key storage unit and the effective key version stored in the valid key version storage unit A decryption method that, when corresponding, determines that the version of the input key is valid .
信号処理装置に対し
上記信号処理装置の検証部が、上記信号処理装置に暗号化データと共に入力される鍵のバージョンと、上記信号処理装置の有効鍵バージョン記憶部に記憶される有効な鍵のバージョンとを比較することにより、上記入力される鍵のバージョンが有効であるか否かを検証する検証ステップと、
上記信号処理装置の復号部が、上記検証ステップでの検証結果に応じて、上記信号処理装置の鍵記憶部に記憶される複数のバージョンの鍵のうち上記入力される鍵のバージョンに対応する鍵を用いて、入力される上記暗号化データを復号する復号ステップと、
上記信号処理装置の更新部が、上記復号ステップでの復号が成功し、かつ上記入力される鍵のバージョンと上記有効な鍵のバージョンとが異なるとき、上記有効鍵バージョン記憶部に記憶される当該有効な鍵のバージョンを当該入力される鍵のバージョンに更新した後に、上記復号ステップで復号された平文データを出力する更新ステップと
を実行させ
さらに上記検証ステップで、
上記検証部が、上記入力される鍵のバージョンが上記鍵記憶部に記憶される鍵の複数のバージョンの範囲内であり、かつ上記有効鍵バージョン記憶部に記憶される上記有効な鍵のバージョンに対応するとき、当該入力される鍵のバージョンが有効であると判定するようにさせるための
復号プログラム。
To the signal processor,
The verification unit of the signal processing device compares the version of the key input to the signal processing device together with the encrypted data with the version of the valid key stored in the valid key version storage unit of the signal processing device. A verification step for verifying whether the version of the input key is valid;
The decryption unit of the signal processing device has a key corresponding to the input key version among a plurality of version keys stored in the key storage unit of the signal processing device according to the verification result in the verification step. A decryption step of decrypting the input encrypted data using
The update unit of the signal processing device stores the effective key version storage unit when the decryption at the decryption step is successful and the version of the input key is different from the version of the valid key. After updating the valid key version to the input key version, the update step for outputting the plaintext data decrypted in the decryption step is executed , and
Furthermore, in the above verification step,
The verification unit determines that the version of the input key is within a range of a plurality of versions of the key stored in the key storage unit and the effective key version stored in the valid key version storage unit A decryption program for determining that the input key version is valid when it corresponds .
JP2005055163A 2005-02-28 2005-02-28 Decoding circuit, decoding device, decoding method, and decoding program Expired - Fee Related JP4702596B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005055163A JP4702596B2 (en) 2005-02-28 2005-02-28 Decoding circuit, decoding device, decoding method, and decoding program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005055163A JP4702596B2 (en) 2005-02-28 2005-02-28 Decoding circuit, decoding device, decoding method, and decoding program

Publications (2)

Publication Number Publication Date
JP2006245704A JP2006245704A (en) 2006-09-14
JP4702596B2 true JP4702596B2 (en) 2011-06-15

Family

ID=37051679

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005055163A Expired - Fee Related JP4702596B2 (en) 2005-02-28 2005-02-28 Decoding circuit, decoding device, decoding method, and decoding program

Country Status (1)

Country Link
JP (1) JP4702596B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4702861B2 (en) * 2009-09-30 2011-06-15 株式会社ソニー・コンピュータエンタテインメント Content activation method and content reproduction apparatus
JP6972721B2 (en) * 2017-07-18 2021-11-24 富士フイルムビジネスイノベーション株式会社 Information processing equipment and information processing programs

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07253753A (en) * 1994-03-15 1995-10-03 Fujitsu Ltd Ciphering circuit
WO1999038078A1 (en) * 1998-01-21 1999-07-29 Tokyo Electron Limited Storage device, encrypting/decrypting device, and method for accessing nonvolatile memory
JPH11274999A (en) * 1998-03-25 1999-10-08 Hitachi Ltd Mobile communication method and mobile communication system
JPH11308564A (en) * 1998-04-20 1999-11-05 Olympus Optical Co Ltd Digital evidence camera system, decoding key acquisition registration system and digital image edit system
JP2002135243A (en) * 2000-10-20 2002-05-10 Sony Corp Data reproducing apparatus, data recording apparatus, data reproducing method, data recording method, list updating method and program providing medium
JP2002247542A (en) * 2001-02-14 2002-08-30 Matsushita Electric Ind Co Ltd Video secrecy device
JP2002358209A (en) * 2001-06-01 2002-12-13 Canon Inc Information processing method and device thereof
JP2003198532A (en) * 2001-12-27 2003-07-11 Mitsubishi Electric Corp Master station, slave station, enciphering system, enciphering method, enciphering program, deciphering method and deciphering program
JP2004280287A (en) * 2003-03-13 2004-10-07 Matsushita Electric Ind Co Ltd Memory card
WO2004105308A1 (en) * 2003-05-22 2004-12-02 Fujitsu Limited Encrypted data reception device and decryption key updating method

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07253753A (en) * 1994-03-15 1995-10-03 Fujitsu Ltd Ciphering circuit
WO1999038078A1 (en) * 1998-01-21 1999-07-29 Tokyo Electron Limited Storage device, encrypting/decrypting device, and method for accessing nonvolatile memory
JPH11274999A (en) * 1998-03-25 1999-10-08 Hitachi Ltd Mobile communication method and mobile communication system
JPH11308564A (en) * 1998-04-20 1999-11-05 Olympus Optical Co Ltd Digital evidence camera system, decoding key acquisition registration system and digital image edit system
JP2002135243A (en) * 2000-10-20 2002-05-10 Sony Corp Data reproducing apparatus, data recording apparatus, data reproducing method, data recording method, list updating method and program providing medium
JP2002247542A (en) * 2001-02-14 2002-08-30 Matsushita Electric Ind Co Ltd Video secrecy device
JP2002358209A (en) * 2001-06-01 2002-12-13 Canon Inc Information processing method and device thereof
JP2003198532A (en) * 2001-12-27 2003-07-11 Mitsubishi Electric Corp Master station, slave station, enciphering system, enciphering method, enciphering program, deciphering method and deciphering program
JP2004280287A (en) * 2003-03-13 2004-10-07 Matsushita Electric Ind Co Ltd Memory card
WO2004105308A1 (en) * 2003-05-22 2004-12-02 Fujitsu Limited Encrypted data reception device and decryption key updating method

Also Published As

Publication number Publication date
JP2006245704A (en) 2006-09-14

Similar Documents

Publication Publication Date Title
JP4906854B2 (en) Information processing apparatus, information recording apparatus, information processing system, program update method, program, and integrated circuit
KR101122923B1 (en) Encryption and data-protection for content on portable medium
JP4555046B2 (en) Data transfer system and data transfer method
US7971261B2 (en) Domain management for digital media
JP5025009B2 (en) Authentication method, host computer and recording medium
JP4622087B2 (en) Information processing apparatus, information processing method, and program storage medium
US7484090B2 (en) Encryption apparatus, decryption apparatus, secret key generation apparatus, and copyright protection system
US8370647B2 (en) Information processing apparatus, information processing method, and program
US20020184259A1 (en) Data reproducing/recording apparatus/ method and list updating method
JP5097130B2 (en) Information terminal, security device, data protection method, and data protection program
US7831831B2 (en) Authentication communication system, authentication communication apparatus, and authentication communication method
CN100524283C (en) Method and device for consuming rights objects having inheritance structure
US20080219451A1 (en) Method and system for mutual authentication between mobile and host devices
US20080256527A1 (en) Method of generating firmware update file, method and apparatus for updating firmware by using the firmware update file
WO2011152065A1 (en) Controller, control method, computer program, program recording medium, recording apparatus, and method of manufacturing recording apparatus
US20100023760A1 (en) Method, system, and data server for checking revocation of content device and transmitting data
KR20080101999A (en) Method for installing software for using contents and apparatus thereof
JP2006524860A (en) How to store revocation lists
JP2004519882A (en) Authentication method and data transmission system
JP2005512170A (en) Information protection method and apparatus against unauthorized use
JP4702596B2 (en) Decoding circuit, decoding device, decoding method, and decoding program
JPWO2009044508A1 (en) Copyright protection system, playback device, and playback method
US20120110639A1 (en) Storage device, and authentication method and authentication device of storage device
JP2010097502A (en) Encryption-decryption system, encryption device, decryption device and encryption-decryption method
KR100964386B1 (en) Digital cinema management apparatus and method thereof

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070910

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101116

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101125

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110117

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110210

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110223

LAPS Cancellation because of no payment of annual fees