JP3988172B2 - 情報処理装置および方法、並びに記録媒体 - Google Patents
情報処理装置および方法、並びに記録媒体 Download PDFInfo
- Publication number
- JP3988172B2 JP3988172B2 JP20795397A JP20795397A JP3988172B2 JP 3988172 B2 JP3988172 B2 JP 3988172B2 JP 20795397 A JP20795397 A JP 20795397A JP 20795397 A JP20795397 A JP 20795397A JP 3988172 B2 JP3988172 B2 JP 3988172B2
- Authority
- JP
- Japan
- Prior art keywords
- key
- random number
- generated
- pseudo
- data
- 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 - Lifetime
Links
- 230000010365 information processing Effects 0.000 title claims description 39
- 238000000034 method Methods 0.000 title description 60
- 238000012545 processing Methods 0.000 claims description 46
- 238000003672 processing method Methods 0.000 claims description 6
- 230000006870 function Effects 0.000 description 74
- 230000008569 process Effects 0.000 description 51
- 238000010586 diagram Methods 0.000 description 21
- 239000000654 additive Substances 0.000 description 13
- 230000000996 additive effect Effects 0.000 description 13
- 238000004364 calculation method Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 3
- 230000015654 memory Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 101100376843 Bacillus subtilis (strain 168) youA gene Proteins 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
- G06F21/445—Program or device authentication by mutual authentication, e.g. between devices or programs
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B19/00—Driving, starting, stopping record carriers not specifically of filamentary or web form, or of supports therefor; Control thereof; Control of operating function ; Driving both disc and head
- G11B19/02—Control of operating function, e.g. switching from recording to reproducing
- G11B19/04—Arrangements for preventing, inhibiting, or warning against double recording on the same blank or against other recording or reproducing malfunctions
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B19/00—Driving, starting, stopping record carriers not specifically of filamentary or web form, or of supports therefor; Control thereof; Control of operating function ; Driving both disc and head
- G11B19/02—Control of operating function, e.g. switching from recording to reproducing
- G11B19/12—Control of operating function, e.g. switching from recording to reproducing by sensing distinguishing features of or on records, e.g. diameter end mark
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
- G11B20/0021—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40052—High-speed IEEE 1394 serial bus
- H04L12/40104—Security; Encryption; Content protection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40052—High-speed IEEE 1394 serial bus
- H04L12/40117—Interconnection of audio or video/imaging devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2211/00—Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
- G06F2211/007—Encryption, En-/decode, En-/decipher, En-/decypher, Scramble, (De-)compress
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2103—Challenge-response
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Storage Device Security (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Description
【発明の属する技術分野】
本発明は、情報処理装置および方法、並びに記録媒体に関し、特に、より安全にデータを授受することができるようにした、情報処理装置および方法、並びに記録媒体に関する。
【0002】
【従来の技術】
最近、AV機器やパーソナルコンピュータなどの電子機器を、例えばIEEE1394シリアルバスを介して相互に接続し、相互の間でデータを授受することができるようにするシステムが提案されている。
【0003】
このようなシステムにおいて、例えば一般のユーザが、DVDプレーヤにより再生出力された映画情報を、1394シリアルバスを介してモニタに出力し、表示させる行為は、一般的に、DVD(ディスク)を購入した時点において、映画情報の著作権者から許容されているものとされる。しかしながら、DVDプレーヤから再生された映画情報を、光磁気ディスク、その他の記録媒体に記録する行為は、著作権者からの特別な許諾が必要となる。このような場合、例えば、光磁気ディスク装置に、映画情報を記録することが許可されているか否かを表すキーを記憶しておき、このキーを利用して、その光磁気ディスク装置が正当な装置(著作権者からのライセンスを受けた装置)であるか否かを認証するようにし、正当な装置として認証された場合には、その光磁気ディスク装置に映画情報の記録を許容するようにすることが考えられる。
【0004】
このような場合、映画情報を伝送する側の装置(以下、このような装置をソース(source)と称する)と、伝送を受けた装置(以下、このような装置をシンク(sink)と称する)との間で、相手側の装置が適正な装置であるか否かを認証する必要がある。
【0005】
図32は、このような認証を行う従来の方法を表している。同図に示すように、ソースとシンクは、それぞれ著作権者から予め所定の関数fを受け取り、それぞれのメモリに記憶しておく。この関数fは、その入力と出力から、その関数fを特定するのが困難な関数であり、また、知らないものが、その関数fに対して任意の入力を与えた場合に得られる出力を推定するのが困難な関数とされる。そして、この関数fは、著作権者から許可された装置にのみ与えられ、記憶される。
【0006】
ソースは乱数rを発生し、これを1394バスを介してシンクに伝送する。また、ソースは、関数fに対して乱数rを適用して、x(=f(r))を生成する。
【0007】
一方、シンク側においては、ソース側から転送されてきた乱数rを関数fに適用して、y(=f(r))を生成する。そして、このyをソース側に伝送する。
【0008】
ソース側においては、演算により求めたxと、シンク側から伝送されてきたyを比較し、両者が一致するか否か(x=yであるか否か)を判定する。両者が一致していれば、ソース側は、シンク側を正当な装置であると認証し、映画情報を所定のキーで暗号化して、シンク側に伝送する。
【0009】
このキーとしては、シンクが伝送してきたyを関数fに適用して生成した値k(=f(y))が用いられる。シンク側においても、同様にして、yに関数fを適用して、キーk(=f(y))を生成する。そして、このキーkを用いて、ソース側から伝送されてきた、暗号化されている映画データを復号する。
【0010】
【発明が解決しようとする課題】
しかしながら、このような方法においては、ソースまたはシンクとして、データを授受するすべての電子機器が、同一の関数fを秘密裡に保持する必要がある。
【0011】
その結果、例えば、不正なユーザによって、1つの電子機器に保持されている関数fが盗まれてしまったような場合、この不正なユーザは、1394バスを介して授受されるデータを監視することにより、鍵kを生成することができ、暗号化されているデータを解読することが可能となる。その結果、不正なユーザは、所望の電子機器になりすまして、不正に情報を盗むことが可能となる。
【0012】
本発明はこのような状況に鑑みてなされたものであり、暗号または復号に必要な情報が盗まれたとしても、不正なユーザが、これを用いて所望の電子機器になりすますことができないようし、より安全性を図るようにするものである。
【0022】
【課題を解決するための手段】
請求項1に記載の情報処理装置は、ユニークな乱数である第1のキーLK、第2のキーLK'、および公開鍵暗号で用いられる関数Gと、自分自身に固有の識別データを記憶する記憶手段と、擬似乱数を発生する擬似乱数発生手段と、他の情報処理装置から伝送されてきた、識別データに基づき他の情報処理装置が生成した疑似乱数および鍵 sk を用いて生成した情報に対して、第2のキー LK' に対して関数Gを適用して生成した値と、第1のキー LK を用いて、鍵 sk と同一の鍵 sk' を生成する処理を行う処理手段とを備え、第2のキーLK'は、識別データと、鍵 sk を用いて生成した情報に対応する第3のキー SVK に基づいて生成されているデータHを、擬似乱数発生手段に適用して得られる擬似乱数 pRNG(H) と、第1のキー LK を擬似乱数発生手段に適用して得られる擬似乱数 pRNG(LK) に基づいて生成されるデータRを、関数Gの逆関数G ^-1 に適用して生成されていることを特徴とする。
【0023】
請求項3に記載の情報処理方法は、ユニークな乱数である第1のキーLK、第2のキーLK'、および公開鍵暗号で用いられる関数Gと、自分自身に固有の識別データを記憶する記憶ステップと、擬似乱数を発生する擬似乱数発生ステップと、他の情報処理装置から伝送されてきた、識別データに基づき他の情報処理装置が生成した疑似乱数および鍵 sk を用いて生成した情報に対して、第2のキー LK' に対して関数Gを適用して生成した値と、第1のキー LK を用いて、鍵 sk と同一の鍵 sk' を生成する処理を行う処理ステップとを備え、第2のキーLK'は、識別データと、鍵 sk を用いて生成した情報に対応する第3のキー SVK に基づいて生成されているデータHを、擬似乱数発生ステップによって得られる擬似乱数 pRNG(H) と、第1のキー LK を擬似乱数発生ステップによって得られる擬似乱数 pRNG(LK) に基づいて生成されるデータRを、関数Gの逆関数G ^-1 に適用して生成されていることを特徴とする。
【0024】
請求項4に記載の記録媒体は、ユニークな乱数である第1のキーLK、第2のキーLK'、および公開鍵暗号で用いられる関数Gと、自分自身に固有の識別データを記憶する記憶ステップと、擬似乱数を発生する擬似乱数発生ステップと、他の情報処理装置から伝送されてきた、識別データに基づき他の情報処理装置が生成した疑似乱数および鍵 sk を用いて生成した情報に対して、第2のキー LK' に対して関数Gを適用して生成した値と、第1のキー LK を用いて、鍵 sk と同一の鍵 sk' を生成する処理を行う処理ステップとを含み、第2のキーLK'は、識別データと、鍵 sk を用いて生成した情報に対応する第3のキー SVK に基づいて生成されているデータHを、擬似乱数発生ステップによって得られる擬似乱数 pRNG(H) と、第1のキー LK を擬似乱数発生ステップによって得られる擬似乱数 pRNG(LK) に基づいて生成されるデータRを、関数Gの逆関数G ^-1 に適用して生成されているコンピュータが読み取り可能なプログラムが記録されていることを特徴とする。
【0034】
請求項1に記載の情報処理装置、請求項3に記載の情報処理方法、および請求項4に記載の記録媒体においては、ユニークな乱数である第1のキーLK、第2のキーLK'、および公開鍵暗号で用いられる関数Gと、自分自身に固有の識別データが記憶され、擬似乱数が発生され、他の情報処理装置から伝送されてきた、識別データに基づき他の情報処理装置が生成した疑似乱数および鍵 sk を用いて生成した情報に対して、第2のキー LK' に対して関数Gを適用して生成した値と、第1のキー LK を用いて、鍵 sk と同一の鍵 sk' を生成される。また、第2のキー LK' は、識別データと、鍵 sk を用いて生成した情報に対応する第3のキー SVK に基づいて生成されているデータHを、擬似乱数発生手段に適用して得られる擬似乱数 pRNG(H) と、第1のキー LK を擬似乱数発生手段に適用して得られる擬似乱数 pRNG(LK) に基づいて生成されるデータRを、関数Gの逆関数G ^-1 に適用して生成されている。
【0037】
【発明の実施の形態】
以下に本発明の実施の形態を説明するが、特許請求の範囲に記載の発明の各手段と以下の実施の形態との対応関係を明らかにするために、各手段の後の括弧内に、対応する実施の形態(但し一例)を付加して本発明の特徴を記述すると、次のようになる。但し勿論この記載は、各手段を記載したものに限定することを意味するものではない。
【0053】
請求項1に記載の情報処理装置は、ユニークな乱数である第1のキーLK(例えば、図9のLK)、第2のキーLK'(例えば、図9のLK')、および公開鍵暗号で用いられる関数G(例えば、図9の関数G)と、自分自身に固有の識別データ(例えば、図9の ID )を記憶する記憶手段(例えば、図9のEEPROM50)と、擬似乱数を発生する擬似乱数発生手段(例えば、図9の pRNG )と、他の情報処理装置から伝送されてきた、識別データに基づき他の情報処理装置が生成した疑似乱数および鍵 sk を用いて生成した情報に対して、第2のキー LK' に対して関数Gを適用して生成した値と、第1のキー LK を用いて、鍵 sk と同一の鍵 sk' を生成する処理を行う処理手段(例えば、図2のCPU41)とを備え、第2のキーLK'は、識別データと、鍵 sk を用いて生成した情報に対応する第3のキー SVK に基づいて生成されているデータHを、擬似乱数発生手段に適用して得られる擬似乱数 pRNG(H) と、第1のキー LK を擬似乱数発生手段に適用して得られる擬似乱数 pRNG(LK) に基づいて生成されるデータRを、関数Gの逆関数G ^-1 に適用して生成されていることを特徴とする。
【0055】
請求項2に記載の情報処理装置は、他の情報処理装置から伝送されてきた、擬似乱数pRNG(H)を用いて暗号化されている第4のキーSKを、第2のキーLK'を関数Gに適用して得られるデータG(LK')と、擬似乱数pRNG(LK)を用いて復号するキー復号手段(例えば、図9のステップS110)をさらに備えることを特徴とする。
【0056】
請求項3に記載の情報処理方法は、ユニークな乱数である第1のキーLK(例えば、図9のLK)、第2のキーLK'(例えば、図9のLK')、および公開鍵暗号で用いられる関数G(例えば、図9の関数G)と、自分自身に固有の識別データを記憶する記憶ステップ(例えば、図9のEEPROM50)と、擬似乱数を発生する擬似乱数発生ステップ(例えば、図9の pRNG )と、他の情報処理装置から伝送されてきた、識別データに基づき他の情報処理装置が生成した疑似乱数および鍵 sk を用いて生成した情報に対して、第2のキー LK' に対して関数Gを適用して生成した値と、第1のキー LK を用いて、鍵 sk と同一の鍵 sk' を生成する処理を行う処理ステップ(例えば、図2のCPU41)とを備え、第2のキーLK'は、識別データと、鍵 sk を用いて生成した情報に対応する第3のキー SVK に基づいて生成されているデータHを、擬似乱数発生ステップによって得られる擬似乱数 pRNG(H) と、第1のキー LK を擬似乱数発生ステップによって得られる擬似乱数 pRNG(LK) に基づいて生成されるデータRを、関数Gの逆関数G ^-1 に適用して生成されていることを特徴とする。
【0061】
図1は、本発明を適用した情報処理システムの構成例を表している。この構成例においては、IEEE1394シリアルバス11を介してDVDプレーヤ1、パーソナルコンピュータ2、光磁気ディスク装置3、データ放送受信装置4、モニタ5、テレビジョン受像機6が相互に接続されている。
【0062】
図2は、この内のDVDプレーヤ1、パーソナルコンピュータ2、および光磁気ディスク装置3の内部のより詳細な構成例を表している。DVDプレーヤ1は、1394インタフェース26を介して、1394バス11に接続されている。CPU21は、ROM22に記憶されているプログラムに従って各種の処理を実行し、RAM23は、CPU21が各種の処理を実行する上において必要なデータやプログラムなどを適宜記憶する。操作部24は、ボタン、スイッチ、リモートコントローラなどにより構成され、ユーザにより操作されたとき、その操作に対応する信号を出力する。ドライブ25は、図示せぬDVD(ディスク)を駆動し、そこに記録されているデータを再生するようになされている。EEPROM27は、装置の電源オフ後も記憶する必要のある情報(この実施の形態の場合、鍵情報)を記憶するようになされている。内部バス28は、これらの各部を相互に接続している。
【0063】
光磁気ディスク装置3は、CPU31乃至内部バス38を有している。これらは、上述したDVDプレーヤ1におけるCPU21乃至内部バス28と同様の機能を有するものであり、その説明は省略する。ただし、ドライブ35は、図示せぬ光磁気ディスクを駆動し、そこにデータを記録または再生するようになされている。
【0064】
パーソナルコンピュータ2は、1394インタフェース49を介して1394バス11に接続されている。CPU41は、ROM42に記憶されているプログラムに従って各種の処理を実行する。RAM43には、CPU41が各種の処理を実行する上において必要なデータやプログラムなどが適宜記憶される。入出力インタフェース44には、キーボード45とマウス46が接続されており、それらから入力された信号をCPU41に出力するようになされている。また、入出力インタフェース44には、ハードディスク(HDD)47が接続されており、そこにデータ、プログラムなどを記録再生することができるようになされている。入出力インタフェース44にはまた、拡張ボード48を適宜装着し、必要な機能を付加することができるようになされている。EEPROM50には、電源オフ後も保持する必要のある情報(この実施の形態の場合、各種の鍵情報)が記憶されるようになされている。例えば、PCI(Peripheral Component Interconnect)、ローカルバスなどにより構成される内部バス51は、これらの各部を相互に接続するようになされている。
【0065】
なお、この内部バス51は、ユーザに対して解放されており、ユーザは、拡張ボード48に所定のボードを適宜接続したり、所定のソフトウェアプログラムを作成して、CPU41にインストールすることで、内部バス51により伝送されるデータを適宜受信することができるようになされている。
【0066】
これに対して、DVDプレーヤ1や光磁気ディスク装置3などのコンシューマエレクトロニクス(CE)装置においては、内部バス28や内部バス38は、ユーザに解放されておらず、特殊な改造などを行わない限り、そこに伝送されるデータを取得することができないようになされている。
【0067】
次に、所定のソースとシンクとの間で行われる認証の処理について説明する。この認証の処理は、図3に示すように、ソースとしての、例えばDVDプレーヤ1のROM22に予め記憶されているソフトウェアプログラムの1つとしてのファームウェア20と、シンクとしての、例えばパーソナルコンピュータ2のROM42に記憶されており、CPU41が処理するソフトウェアプログラムの1つとしてのライセンスマネージャ62との間において行われる。
【0068】
図4は、ソース(DVDプレーヤ1)と、シンク(パーソナルコンピュータ2)との間において行われる認証の手順を示している。DVDプレーヤ1のEEPROM27には、サービスキー(service_key)と関数(hash)が予め記憶されている。これらはいずれも著作権者から、このDVDプレーヤ1のユーザに与えられたものであり、各ユーザは、EEPROM27に、これを秘密裡に保管しておくものである。
【0069】
サービスキーは、著作権者が提供する情報毎に与えられるものであり、この1394バス11で構成されるシステムにおいて、共通のものである。なお、本明細書において、システムとは、複数の装置で構成される全体的な装置を示すものとする。
【0070】
hash関数は、任意長の入力に対して、64ビットまたは128ビットなどの固定長のデータを出力する関数であり、y(=hash(x))を与えられたとき、xを求めることが困難であり、かつ、hash(x1)=hash(x2)となるx1と、x2の組を求めることも困難となる関数である。1方向hash関数の代表的なものとして、MD5やSHAなどが知られている。この1方向hash関数については、Bruce Schneier著の「Applied Cryptography(Second Edition),Wiley」に詳しく解説されている。
【0071】
一方、シンクとしての例えばパーソナルコンピュータ2は、著作権者から与えられた、自分自身に固有の識別番号(ID)とライセンスキー(license_key)をEEPROM50に秘密裡に保持している。このライセンスキーは、nビットのIDとmビットのサービスキーを連結して得たn+mビットのデータ(ID || service_key)に対して、hash関数を適用して得られる値である。すなわち、ライセンスキーは次式で表される。
licence_key=hash(ID || service_key)
【0072】
IDとしては、例えば1394バス11の規格に定められているnode_unique_IDを用いることができる。このnode_unique_IDは、図5に示すように、8バイト(64ビット)で構成され、最初の3バイトは、IEEEで管理され、電子機器の各メーカーにIEEEから付与される。また、下位5バイトは、各メーカーが、自分自身がユーザに提供する各装置に対して付与することができるものである。各メーカーは、例えば下位5バイトに対してシリアルに、1台に1個の番号を割り当てるようにし、5バイト分を全部使用した場合には、上位3バイトがさらに別の番号となっているnode_unique_IDの付与を受け、そして、その下位5バイトについて1台に1個の番号を割り当てるようにする。従って、このnode_unique_IDは、メーカーに拘らず、1台毎に異なるものとなり、各装置に固有のものとなる。
【0073】
ステップS1において、DVDプレーヤ1のファームウェア20は、1394インタフェース26を制御し、1394バス11を介してパーソナルコンピュータ2に対してIDを要求する。パーソナルコンピュータ2のライセンスマネージャ62は、ステップS2において、このIDの要求を受信する。すなわち、1394インタフェース49は、1394バス11を介してDVDプレーヤ1から伝送されてきたID要求の信号を受信すると、これをCPU41に出力する。CPU41のライセンスマネージャ62は、このID要求を受けたとき、ステップS3においてEEPROM50に記憶されているIDを読み出し、これを1394インタフェース49を介して1394バス11からDVDプレーヤ1に伝送する。
【0074】
DVDプレーヤ1においては、ステップS4で1394インタフェース26が、このIDを受け取ると、このIDがCPU21で動作しているファームウェア20に供給される。
【0075】
ファームウェア20は、ステップS5において、パーソナルコンピュータ2から伝送を受けたIDと、EEPROM27に記憶されているサービスキーを結合して、データ(ID || service_key)を生成し、このデータに対して、次式に示すようにhash関数を適用して、キーlkを生成する。
lk=hash(ID || service_key)
【0076】
次に、ステップS6において、ファームウェア20は、暗号鍵skを生成する。この暗号鍵skの詳細については後述するが、この暗号鍵skは、セッションキーとしてDVDプレーヤ1とパーソナルコンピュータ2のそれぞれにおいて利用される。
【0077】
次に、ステップS7において、ファームウェア20は、ステップS5で生成した鍵lkを鍵として、ステップS6で生成した暗号鍵skを暗号化して、暗号化データ(暗号化鍵)eを得る。すなわち、次式を演算する。
e=Enc(lk, sk)
【0078】
なお、Enc(A,B)は、共通鍵暗号方式で、鍵Aを用いて、データBを暗号化することを意味する。
【0079】
次に、ステップS8で、ファームウェア20は、ステップS7で生成した暗号化データeをパーソナルコンピュータ2に伝送する。すなわち、この暗号化データeは、DVDプレーヤ1の1394インタフェース26から1394バス11を介してパーソナルコンピュータ2に伝送される。パーソナルコンピュータ2においては、ステップS9で、この暗号化データeを1394インタフェース49を介して受信する。ライセンスマネージャ62は、このようにして受信した暗号化データeを、ステップS10で、EEPROM50に記憶されているライセンスキーを鍵として、次式に示すように復号し、復号鍵sk'を生成する。
sk'=Dec(license_key,e)
【0080】
なお、ここで、Dec(A,B)は、共通鍵暗号方式で鍵Aを用いて、データBを復号することを意味する。
【0081】
なお、この共通鍵暗号方式における暗号化のアルゴリズムとしては、DESが知られている。共通鍵暗号化方式についても、上述した、Applied Cryptography(Second Edition)に詳しく解説されている。
【0082】
DVDプレーヤ1において、ステップS5で生成するキーlkは、パーソナルコンピュータ2のEEPROM50に記憶されている(license_key)と同一の値となる。すなわち、次式が成立する。
lk=license_key
【0083】
従って、パーソナルコンピュータ2において、ステップS10で復号して得たキーsk'は、DVDプレーヤ1において、ステップS6で生成した暗号鍵skと同一の値となる。すなわち、次式が成立する。
sk'=sk
【0084】
このように、DVDプレーヤ1(ソース)とパーソナルコンピュータ2(シンク)の両方において、同一の鍵sk,sk'を共有することができる。そこで、この鍵skをそのまま暗号鍵として用いるか、あるいは、これを基にして、それぞれが疑似乱数を作り出し、それを暗号鍵として用いることができる。
【0085】
ライセンスキーは、上述したように、各装置に固有のIDと、提供する情報に対応するサービスキーに基づいて生成されているので、他の装置がskまたはsk'を生成することはできない。また、著作権者から認められていない装置は、ライセンスキーを有していないので、skあるいはsk'を生成することができない。従って、その後DVDプレーヤ1が暗号鍵skを用いて再生データを暗号化してパーソナルコンピュータ2に伝送した場合、パーソナルコンピュータ2が適正にライセンスキーを得たものである場合には、暗号鍵sk'を有しているので、DVDプレーヤ1より伝送されてきた、暗号化されている再生データを復号することができる。しかしながら、パーソナルコンピュータ2が適正なものでない場合、暗号鍵sk'を有していないので、伝送されてきた暗号化されている再生データを復号することができない。換言すれば、適正な装置だけが共通の暗号鍵sk,sk'を生成することができるので、結果的に、認証が行われることになる。
【0086】
仮に1台のパーソナルコンピュータ2のライセンスキーが盗まれたとしても、IDが1台1台異なるので、そのライセンスキーを用いて、他の装置がDVDプレーヤ1から伝送されてきた暗号化されているデータを復号することはできない。従って、安全性が向上する。
【0087】
図6は、ソース(DVDプレーヤ1)に対して、パーソナルコンピュータ2だけでなく、光磁気ディスク装置3もシンクとして機能する場合の処理例を表している。
【0088】
この場合、シンク1としてのパーソナルコンピュータ2のEEPROM50には、IDとしてID1が、また、ライセンスキーとしてlicense_key1が記憶されており、シンク2としての光磁気ディスク装置3においては、EEPROM37に、IDとしてID2が、また、ライセンスキーとしてlicense_key2が記憶されている。
【0089】
DVDプレーヤ1(ソース)とパーソナルコンピュータ2(シンク1)の間において行われるステップS11乃至ステップS20の処理は、図4におけるステップS1乃至ステップS10の処理と実質的に同様の処理であるので、その説明は省略する。
【0090】
すなわち、上述したようにして、DVDプレーヤ1は、パーソナルコンピュータ2に対して認証処理を行う。そして次に、ステップS21において、DVDプレーヤ1は、光磁気ディスク装置3に対して、IDを要求する。光磁気ディスク装置3においては、ステップS22で1394インタフェース36を介して、このID要求信号が受信されると、そのファームウェア30(図10)は、ステップS23でEEPROM37に記憶されているID(ID2)を読み出し、これを1394インタフェース36から、1394バス11を介してDVDプレーヤ1に伝送する。DVDプレーヤ1のファームウェア20は、ステップS24で、1394インタフェース26を介して、このID2を受け取ると、ステップS25で、次式から鍵lk2を生成する。
lk2=hash(ID2 || service_key)
【0091】
さらに、ファームウェア20は、ステップS26で次式を演算し、ステップS16で生成した鍵skを、ステップS25で生成した鍵lk2を用いて暗号化し、暗号化したデータe2を生成する。
e2=Enc(lk2,sk)
【0092】
そして、ステップS27で、ファームウェア20は、この暗号化データe2を1394インタフェース26から1394バス11を介して光磁気ディスク装置3に伝送する。
【0093】
光磁気ディスク装置3においては、ステップS28で1394インタフェース36を介して、この暗号化データe2を受信し、ステップS29で次式を演算して、暗号鍵sk2’を生成する。
sk2’=Dec(license_key2,e2)
【0094】
以上のようにして、パーソナルコンピュータ2と光磁気ディスク装置3のそれぞれにおいて、暗号鍵sk1’,sk2’が得られたことになる。これらの値は、DVDプレーヤ1における暗号鍵skと同一の値となっている。
【0095】
図6の処理例においては、DVDプレーヤ1が、パーソナルコンピュータ2と、光磁気ディスク装置3に対して、それぞれ個別にIDを要求し、処理するようにしているのであるが、同報通信によりIDを要求することができる場合は、図7に示すような処理を行うことができる。
【0096】
すなわち、図7の処理例においては、ステップS41で、ソースとしてのDVDプレーヤ1が、全てのシンク(この例の場合、パーソナルコンピュータ2と光磁気ディスク装置3)に対して同報通信でIDを要求する。パーソナルコンピュータ2と光磁気ディスク装置3は、それぞれステップS42とステップS43で、このID転送要求の信号を受け取ると、それぞれステップS44またはステップS45で、EEPROM50またはEEPROM37に記憶されているID1またはID2を読み出し、これをDVDプレーヤ1に転送する。DVDプレーヤ1は、ステップS46とステップS47で、これらのIDをそれぞれ受信する。
【0097】
DVDプレーヤ1においては、さらにステップS48で、次式から暗号鍵lk1を生成する。
lk1=hash(ID1 || service_key)
【0098】
さらに、ステップS49において、次式から暗号鍵lk2が生成される。
lk2=hash(ID2 || service_key)
【0099】
DVDプレーヤ1においては、さらにステップS50で、暗号鍵skが生成され、ステップS51で、次式で示すように、暗号鍵skが、鍵lk1を鍵として暗号化される。
e1=Enc(lk1,sk)
【0100】
さらに、ステップS52においては、暗号鍵skが、鍵lk2を鍵として、次式に従って暗号化される。
e2=Enc(lk2,sk)
【0101】
さらに、ステップS53においては、ID1,e1,ID2,e2が、それぞれ次式で示すように結合されて、暗号化データeが生成される。
e=ID1 || e1 || ID2 || e2
【0102】
DVDプレーヤ1においては、さらにステップS54で、以上のようにして生成された暗号化データeが同報通信で、パーソナルコンピュータ2と光磁気ディスク装置3に伝送される。
【0103】
パーソナルコンピュータ2と光磁気ディスク装置3においては、それぞれステップS55またはステップS56で、これらの暗号化データeが受信される。そして、パーソナルコンピュータ2と光磁気ディスク装置3においては、それぞれステップS57またはステップS58において、次式で示す演算が行われ、暗号鍵sk1’,sk2’が生成される。
sk1’=Dec(license_key1,e1)
sk2’=Dec(license_key2,e2)
【0104】
図8は、1つのシンクが複数のサービスを受けること(複数の種類の情報の復号)ができるようになされている場合の処理例を表している。すなわち、この場合においては、例えば、シンクとしてのパーソナルコンピュータ2は、複数のライセンスキー(license_key1,license_key2,license_key3など)をEEPROM50に記憶している。ソースとしてのDVDプレーヤ1は、そのEEPROM27に複数のサービスキー(service_key1,service_key2,service_key3など)を記憶している。この場合、DVDプレーヤ1は、ステップS81でシンクとしてのパーソナルコンピュータ2に対してIDを要求するとき、DVDプレーヤ1が、これから転送しようとする情報(サービス)を識別するservice_IDを転送する。パーソナルコンピュータ2においては、ステップS82で、これを受信したとき、EEPROM50に記憶されている複数のライセンスキーの中から、このservice_IDに対応するものを選択し、これを用いて、ステップS90で復号処理を行う。その他の動作は、図4における場合と同様である。
【0105】
図9は、さらに他の処理例を表している。この例においては、ソースとしてのDVDプレーヤ1が、そのEEPROM27に、service_key、hash関数、および疑似乱数発生関数pRNGを記憶している。これらは、著作権者から与えられたものであり、秘密裡に保管される。また、シンクとしてのパーソナルコンピュータ2のEEPROM50には、著作権者から与えられたID、LK,LK'、関数G、および疑似乱数数発生関数pRNGを有している。
【0106】
LKは、著作権者が作成したユニークな乱数であり、LK'は、次式を満足するように生成されている。
LK'=G^−1(R)
R=pRNG(H) (+) pRNG(LK)
H=hash(ID || service_key)
【0107】
なお、G^−1(^はべき乗を意味する)は、Gの逆関数を意味する。G^−1は、所定の規則を知っていれば、簡単に計算することができるが、知らない場合には、計算することが難しいような特徴を有している。このような関数としては、公開鍵暗号に用いられている関数を利用することができる。
【0108】
また、疑似乱数発生関数は、ハードウェアとして設けるようにすることも可能である。
【0109】
DVDプレーヤ1のファームウェア20は、最初にステップS101において、パーソナルコンピュータ2のライセンスマネージャ62に対してIDを要求する。パーソナルコンピュータ2のライセンスマネージャ62は、ステップS102でID要求信号を受け取ると、EEPROM50に記憶されているIDを読み出し、ステップS103で、これをDVDプレーヤ1に伝送する。DVDプレーヤ1のファームウェア20は、ステップS104でこのIDを受け取ると、ステップS105で次式を演算する。
H=hash(ID || service_key)
【0110】
さらに、ファームウェア20は、ステップS106で鍵skを生成し、ステップS107で次式を演算する。
e=sk (+) pRNG(H)
【0111】
なお、A(+)Bは、AとBの排他的論理和の演算を意味する。
【0112】
すなわち、疑似ランダム発生キーpRNGにステップS105で求めたHを入力することで得られた結果、pRNG(H)と、ステップS106で生成した鍵skのビット毎の排他的論理和を演算することで、鍵SKを暗号化する。
【0113】
次に、ステップS108で、ファームウェア20は、eをパーソナルコンピュータ2に伝送する。
【0114】
パーソナルコンピュータ2においては、ステップS109でこれを受信し、ステップS110で、次式を演算する。
sk'=e (+) G(LK') (+) pRNG(LK)
【0115】
すなわち、DVDプレーヤ1から伝送されてきたe、EEPROM50に記憶されている関数Gに、やはりEEPROM50に記憶されているLK'を適用して得られる値G(LK')、並びに、EEPROM50に記憶されているLK'を、やはりEEPROM50に記憶されている疑似乱数発生関数pRNGに適用して得られる結果pRNG(LK)の排他的論理和を演算し、鍵sk'を得る。
【0116】
ここで、次式に示すように、sk=sk'となる。
sk'=e (+) G(LK') (+) pRNG(LK)
=sk (+) pRNG(H) (+) R (+) pRNG(LK)
=sk (+) pRNG(H) (+) pRNG(H) (+) pRNG(LK) (+) pRNG(LK)
=sk
【0117】
このようにして、ソースとしてのDVDプレーヤ1とシンクとしてのパーソナルコンピュータ2は、同一の鍵sk,sk'を共有することができる。LK,LK'を作ることができるのは、著作権者だけであるので、ソースが不正に、LK,LK'を作ろうとしても作ることができないので、より安全性を高めることができる。
【0118】
以上においては、ソースとシンクにおいて認証を行うようにしたが、例えばパーソナルコンピュータ2には、通常、任意のアプリケーションプログラムをロードして用いることができる。そして、このアプリケーションプログラムとしては、不正に作成したものが使用される場合もある。従って、各アプリケーションプログラム毎に、著作権者から許可を得たものであるか否かを判定する必要がある。そこで、図3に示すように、各アプリケーション部61とライセンスマネージャ62との間においても、上述したように、認証処理を行うようにすることができる。この場合、ライセンスマネージャ62がソースとなり、アプリケーション部61がシンクとなる。
【0119】
次に、以上のようにして、認証が行われた後(暗号鍵の共有が行われた後)、暗号鍵を用いて、ソースから暗号化したデータをシンクに転送し、シンクにおいて、この暗号化したデータを復号する場合の動作について説明する。
【0120】
図10に示すように、DVDプレーヤ1、あるいは光磁気ディスク装置3のように、内部の機能が一般ユーザに解放されていない装置においては、1394バス11を介して授受されるデータの暗号化と復号の処理は、それぞれ1394インタフェース26または1394インタフェース36で行われる。この暗号化と復号化には、セッションキーSと時変キーiが用いられるが、このセッションキーSと時変キーi(正確には、時変キーiを生成するためのキーi’)は、それぞれファームウェア20またはファームウェア30から、1394インタフェース26または1394インタフェース36に供給される。セッションキーSは、初期値として用いられる初期値キーSsと時変キーiを攪乱するために用いられる攪乱キーSiとにより構成されている。この初期値キーSsと攪乱キーSiは、上述した認証において生成された暗号鍵sk(=sk')の所定のビット数の上位ビットと下位ビットにより、それぞれ構成するようにすることができる。このセッションキーSは、セッション毎に(例えば、1つの映画情報毎に、あるいは、1回の再生毎に)、適宜、更新される。これに対して、攪乱キーSiとキーi’から生成される時変キーiは、1つのセッション内において、頻繁に更新されるキーであり、例えば、所定のタイミングにおける時刻情報などを用いることができる。
【0121】
いま、ソースとしてのDVDプレーヤ1から再生出力した映像データを1394バス11を介して光磁気ディスク装置3とパーソナルコンピュータ2に伝送し、それぞれにおいて復号するものとする。この場合、DVDプレーヤ1においては、1394インタフェース26において、セッションキーSと時変キーiを用いて暗号化処理が行われる。光磁気ディスク装置3においては、1394インタフェース36において、セッションキーSと時変キーiを用いて復号処理が行われる。
【0122】
これに対して、パーソナルコンピュータ2においては、ライセンスマネージャ62が、セッションキーSのうち、初期値キーSsをアプリケーション部61に供給し、攪乱キーSiと時変キーi(正確には、時変キーiを生成するためのキーi’)を1394インタフェース49(リンク部分)に供給する。そして、1394インタフェース49において、攪乱キーSiとキーi’から時変キーiが生成され、時変キーiを用いて復号が行われ、その復号されたデータは、アプリケーション部61において、さらにセッションキーS(正確には、初期値キーSs)を用いて復号が行われる。
【0123】
このように、パーソナルコンピュータ2においては、内部バス51が、ユーザに解放されているので、1394インタフェース49により第1段階の復号だけを行い、まだ暗号の状態としておく。そして、アプリケーション部61において、さらに第2段階の復号を行い、平文にする。これにより、パーソナルコンピュータ2に対して、適宜、機能を付加して、内部バス51において授受されるデータ(平文)をハードディスク47や他の装置にコピーすることを禁止させる。
【0124】
このように、この発明の実施の形態においては、内部バスが解放されていないCE装置においては、暗号化、または復号処理は、セッションキーSと時変キーiを用いて1度に行われるが、内部バスが解放されている装置(パーソナルコンピュータ2など)においては、復号処理が、時変キーiを用いた復号処理と、セッションキーSを用いた復号処理に分けて行われる。このように、1段階の復号処理と、2段階に分けた復号処理の両方ができるようにするには、次式を成立させることが必要となる。
Dec(S,Dec(i, Enc(algo(S+i),Data)))=Data
【0125】
なお、上記式において、algo(S+i)は、所定のアルゴリズムにセッションキーSと時変キーiを入力して得られた結果を表している。
【0126】
図11は、上記式を満足する1394インタフェース26の構成例を表している。この構成例においては、アディティブジェネレータ71により生成したmビットのデータが、シュリンクジェネレータ73に供給されている。また、LFSR(Linear Feedback Sift Register)72が1ビットのデータを出力し、シュリンクジェネレータ73に供給している。シュリンクジェネレータ73は、LFSR72の出力に対応して、アディティブジェネレータ71の出力を選択し、選択したデータを暗号鍵として加算器74に出力している。加算器74は、入力された平文(1394バス11に伝送するmビットのデータ)と、シュリンクジェネレータ73より供給されるmビットのデータ(暗号鍵)とを加算し、加算した結果を暗号文(暗号化されたデータ)として、1394バス11に出力するようになされている。
【0127】
加算器74の加算処理は、mod 2^m(^はべき乗を意味する)で、シュリンクジェネレータ73の出力と平文を加算することを意味する。換言すれば、mビットのデータ同志が加算され、キャリオーバを無視した加算値が出力される。
【0128】
図12は、図11に示した1394インタフェース26のさらにより詳細な構成例を表している。ファームウェア20から出力されたセッションキーSのうち、初期値キーSsは、加算器81を介してレジスタ82に転送され、保持される。この初期値キーSsは、例えば、55ワード(1ワードは8ビット乃至32ビットの幅を有する)により構成される。また、ファームウェア20から供給されたセッションキーSのうちの、例えばLSB側の32ビットで構成される攪乱キーSiは、レジスタ85に保持される。
【0129】
レジスタ84には、キーi’が保持される。このキーi’は、例えば1394バス11を介して1個のパケットが伝送される毎に、2ビットのキーi’がレジスタ84に供給され、16パケット分の(32ビット分の)キーi’がレジスタ84に保持されたとき、加算器86により、レジスタ85に保持されている32ビットの攪乱キーSiと加算され、最終的な時変キーiとして加算器81に供給される。加算器81は、そのときレジスタ82に保持されている値と加算器86より供給された時変キーiを加算し、その加算結果をレジスタ82に供給し、保持させる。
【0130】
レジスタ82のワードのビット数が、例えば8ビットである場合、加算器86より出力される時変キーiが32ビットであるので、時変キーiを4分割して、各8ビットをレジスタ82の所定のアドレス(0乃至54)のワードに加算するようにする。
【0131】
このようにして、レジスタ82には、最初に初期値キーSsが保持されるが、その後、この値は、16パケット分の暗号文を伝送する毎に、時変キーiで更新される。
【0132】
加算器83は、レジスタ82に保持されている55ワードのうちの所定の2ワード(図12に示されているタイミングの場合、アドレス23とアドレス54のワード)を選択し、その選択した2ワードを加算して、シュリンクジェネレータ73に出力する。また、この加算器73の出力は、図12に示すタイミングでは、レジスタ82のアドレス0に転送され、前の保持値に代えて保持される。
【0133】
そして、次のタイミングにおいては、加算器83に供給されるレジスタ82の2ワードのアドレスは、アドレス54とアドレス23から、それぞれアドレス53とアドレス22に、1ワード分だけ、図中上方に移動され、加算器83の出力で更新されるアドレスも、図中、より上方のアドレスに移動される。ただし、アドレス0より上方のアドレスは存在しないので、この場合には、アドレス54に移動する。
【0134】
なお、加算器81,83,86では、排他的論理和を演算させるようにすることも可能である。
【0135】
LFSR72は、例えば、図13に示すように、nビットのシフトレジスタ101と、シフトレジスタ101のnビットのうちの所定のビット(レジスタ)の値を加算する加算器102により構成されている。シフトレジスタ101は、加算器102より供給されるビットを、図中最も左側のレジスタbnに保持すると、それまでそこに保持されていたデータを右側のレジスタbn-1にシフトする。レジスタbn-1,bn-2,・・・も、同様の処理を行う。そして、さらに次のタイミングでは、各ビットの値を加算器102で加算した値を再び、図中最も左側のビットbnに保持させる。以上の動作が順次繰り返されて、図中最も右側のレジスタb1から出力が1ビットずつ順次出力される。
【0136】
図13は、一般的な構成例であるが、例えば、より具体的には、LFSR72を図14に示すように構成することができる。この構成例においては、シフトレジスタ101が31ビットにより構成され、その図中右端のレジスタb1の値と左端のレジスタb31の値が、加算器102で加算され、加算された結果がレジスタb31に帰還されるようになされている。
【0137】
LFSR72より出力された1ビットのデータが論理1であるとき、条件判定部91は、アディティブジェネレータ71の加算器83より供給されたmビットのデータをそのままFIFO92に転送し、保持させる。これに対して、LFSR72より供給された1ビットのデータが論理0であるとき、条件判定部91は、加算器83より供給されたmビットのデータを受け付けず、暗号化処理を中断させる。このようにして、シュリンクジェネレータ73のFIFO92には、アディティブジェネレータ71で生成したmビットのデータのうち、LFSR72が論理1を出力したタイミングのもののみが選択され、保持される。
【0138】
FIFO92により保持したmビットのデータが、暗号鍵として、加算器74に供給され、伝送されるべき平文のデータ(DVDからの再生データ)に加算されて、暗号文が生成される。
【0139】
暗号化されたデータは、DVDプレーヤ1から1394バス11を介して光磁気ディスク装置3とパーソナルコンピュータ2に供給される。
【0140】
光磁気ディスク装置3は、1394インタフェース36において、1394バス11から受信したデータを復号するために、図15に示すような構成を有している。この構成例においては、シュリンクジェネレータ173にアディティブジェネレータ171の出力するmビットのデータと、LFSR172が出力する1ビットのデータが供給されている。そして、シュリンクジェネレータ173の出力するmビットの鍵が、減算器174に供給されている。減算器174は、暗号文からシュリンクジェネレータ173より供給される鍵を減算して、平文を復号する。
【0141】
すなわち、図15に示す構成は、図11に示す構成と基本的に同様の構成とされており、図11における加算器74が、減算器174に変更されている点だけが異なっている。
【0142】
図16は、図15に示す構成のより詳細な構成例を表している。この構成も、基本的に図12に示した構成と同様の構成とされているが、図12における加算器74が、減算器174に変更されている。その他のアディティブジェネレータ171、LFSR172、シュリンクジェネレータ173、加算器181、レジスタ182、加算器183、レジスタ184,185、加算器186、条件判定部191、FIFO192は、図12におけるアディティブジェネレータ71、LFSR72、シュリンクジェネレータ73、加算器81、レジスタ82、加算器83、レジスタ84,85、加算器86、条件判定部91、およびFIFO92に対応している。
【0143】
従って、その動作は、基本的に図12に示した場合と同様であるので、その説明は省略するが、図16の例においては、シュリンクジェネレータ173のFIFO192より出力されたmビットの鍵が、減算器174において、暗号文から減算されて平文が復号される。
【0144】
以上のように、1394インタフェース36においては、セッションキーS(初期値キーSsと攪乱キーSi)と時変キーiを用いて、暗号化データが1度に復号される。
【0145】
これに対して、上述したように、パーソナルコンピュータ2においては、1394インタフェース49とアプリケーション部61において、それぞれ個別に、2段階に分けて復号が行われる。
【0146】
図17は、1394インタフェース49において、ハード的に復号を行う場合の構成例を表しており、その基本的構成は、図15に示した場合と同様である。すなわち、この場合においても、アディティブジェネレータ271、LFSR272、シュリンクジェネレータ273、および減算器274により1394インタフェース49が構成されており、これらは、図15におけるアディティブジェネレータ171、LFSR172、シュリンクジェネレータ173、および減算器174と基本的に同様の構成とされている。ただし、図17の構成例においては、アディティブジェネレータ271に対して、ライセンスマネージャ62から、時変キーiを生成するためのキーi’と、セッションキーSのうち、時変キーiを攪乱するための攪乱キーSiとしては、図15における場合と同様のキーが供給されるが、初期値キーSsとしては、全てのビットが0である単位元が供給される。
【0147】
すなわち、図18に示すように、初期値キーSsの全てのビットが0とされるので、実質的に、初期値キーSsが存在しない場合と同様に、時変キーiだけに基づいて暗号鍵が生成される。その結果、減算器274においては、暗号文の時変キーiに基づく復号だけが行われる。まだ初期値キーSsに基づく復号が行われていないので、この復号の結果得られるデータは、完全な平文とはなっておらず、暗号文の状態になっている。従って、このデータを内部バス51から取り込み、ハードディスク47や、その他の記録媒体に記録したとしても、それをそのまま利用することができない。
【0148】
そして、以上のようにして、1394インタフェース49において、ハード的に時変キーiに基づいて復号されたデータをソフト的に復号するアプリケーション部61の構成は、図19に示すように、アディティブジェネレータ371、LFSR372、シュリンクジェネレータ373および減算器374により構成される。その基本的構成は、図15に示したアディティブジェネレータ171、LFSR172、シュリンクジェネレータ173、および減算器174と同様の構成となっている。
【0149】
ただし、セッションキーSのうち、初期値キーSsは、図15における場合と同様に、通常の初期値キーが供給されるが、時変キーiを生成するための攪乱キーSiとキーi’は、それぞれ全てのビットが0である単位元のデータとされる。
【0150】
その結果、図20にその詳細を示すように(そのアディティブジェネレータ371乃至FIFO392は、図16におけるアディティブジェネレータ171乃至FIFO192に対応している)、レジスタ384に保持されるキーi’とレジスタ385に保持される攪乱キーSiは、全てのビットが0であるため、加算器386の出力する時変キーiも全てのビットが0となり、実質的に時変キーiが存在しない場合と同様の動作が行われる。すなわち、初期値キーSsだけに基づく暗号鍵が生成される。そして、減算器374においては、このようにして生成された暗号鍵に基づいて暗号文が平文に復号される。上述したように、この暗号文は、1394インタフェース49において、時変キーiに基づいて第1段階の復号が行われているものであるので、ここで、初期値キーSsに基づいて第2段階の復号を行うことで、完全な平文を得ることができる。
【0151】
光磁気ディスク装置3においては、以上のようにして暗号文が復号されると、CPU31が、復号されたデータをドライブ35に供給し、光磁気ディスクに記録させる。
【0152】
一方、パーソナルコンピュータ2においては、CPU41(アプリケーション部61)が、以上のようにして復号されたデータを、例えばハードディスク47に供給し、記録させる。パーソナルコンピュータ2においては、拡張ボード48として所定のボードを接続して、内部バス51で授受されるデータをモニタすることができるが、内部バス51に伝送されるデータを最終的に復号することができるのは、アプリケーション部61であるので、拡張ボード48は、1394インタフェース49で、時変キーiに基づく復号が行われたデータ(まだ、セッションキーSに基づく復号が行われていないデータ)をモニタすることができたとしても、完全に平文に戻されたデータをモニタすることはできない。そこで、不正なコピーが防止される。
【0153】
なお、セッションキーの共有は、例えば、Diffie-Hellman法などを用いて行うようにすることも可能である。
【0154】
なお、この他、例えばパーソナルコンピュータ2における1394インタフェース49またはアプリケーション部61の処理能力が比較的低く、復号処理を行うことができない場合には、セッションキーと時変キーのいずれか、あるいは両方をソース側において、単位元で構成するようにし、シンク側においても、これらを単位元で用いるようにすれば、実施的にセッションキーと時変キーを使用しないで、データの授受が可能となる。ただし、そのようにすれば、データが不正にコピーされるおそれが高くなる。
【0155】
アプリケーション部61そのものが、不正にコピーしたものである場合、復号したデータが不正にコピーされてしまう恐れがあるが、上述したようにアプリケーション部61をライセンスマネージャ62で認証するようにすれば、これを防止することが可能である。
【0156】
この場合の認証方法としては、共通鍵暗号方式の他、公開鍵暗号方式を用いたデジタル署名を利用することができる。
【0157】
以上の図11、図12、図15乃至図20に示す構成は、準同形(homomorphism)の関係を満足するものとなっている。すなわち、キーK1,K2がガロアフィールドGの要素であるとき、両者の群演算の結果、K1・K2もガロアフィールドGの要素となる。そして、さらに、所定の関数Hについて次式が成立する。
H(K1・K2)=H(K1)・H(K2)
【0158】
図21は、さらに1394インタフェース26の他の構成例を表している。この構成例においては、セッションキーSがLFSR501乃至503に供給され、初期設定されるようになされている。LFSR501乃至503の幅n1乃至n3は、それぞれ20ビット程度で、それぞれの幅n1乃至n3は、相互に素になるように構成される。従って、例えば、セッションキーSのうち、例えば、上位n1ビットがLFSR501に初期設定され、次の上位n2ビットがLFSR502に初期設定され、さらに次の上位n3ビットがLFSR503に初期設定される。
【0159】
LFSR501乃至503は、クロッキングファンクション506より、例えば論理1のイネーブル信号が入力されたとき、mビットだけシフト動作を行い、mビットのデータを出力する。mの値は、例えば、8,16,32,40などとすることができる。
【0160】
LFSR501とLFSR502の出力は、加算器504に入力され、加算される。加算器504の加算値のうち、キャリー成分は、クロッキングファンクション506に供給され、sum成分は、加算器505に供給され、LFSR503の出力と加算される。加算器505のキャリー成分は、クロッキングファンクション506に供給され、sum成分は、排他的論理和回路508に供給される。
【0161】
クロッキングファンクション506は、加算器504と加算器505より供給されるデータの組み合わせが、00,01,10,11のいずれかであるので、これらに対応して、LFSR501乃至503に対して、000乃至111のいずれか1つの組み合わせのデータを出力する。LFSR501乃至503は、論理1が入力されたとき、mビットのシフト動作を行い、新たなmビットのデータを出力し、論理0が入力されたとき、前回出力した場合と同一のmビットのデータを出力する。
【0162】
排他的論理和回路508は、加算器505の出力するsum成分とレジスタ507に保持された時変キーiの排他的論理和を演算し、その演算結果を排他的論理和回路509に出力する。排他的論理和回路509は、入力された平文と、排他的論理和回路508より入力された暗号鍵の排他的論理和を演算し、演算結果を暗号文として出力する。
【0163】
図22は、光磁気ディスク装置3における1394インタフェース36の構成例を表している。この構成例におけるLFSR601乃至排他的論理和回路609は、図21におけるLFSR501乃至排他的論理和回路509と同様の構成とされている。従って、その動作も、基本的に同様となるので、その説明は省略する。ただし、図21の構成例においては、暗号化処理が行われるのに対して、図22の構成例においては、復号処理が行われる。
【0164】
図23は、パーソナルコンピュータ2の1394インタフェース49の構成例を表している。この構成例におけるLFSR701乃至排他的論理和回路709も、図22における、LFSR601乃至排他的論理和回路609と同様の構成とされている。ただし、LFSR701乃至703に初期設定されるセッションキーSは、全てのビットが0の単位元とされている。従って、この場合、実質的にレジスタ707に保持された時変キーiだけに対応して復号化処理が行われる。
【0165】
図24は、パーソナルコンピュータ2のアプリケーション部61の構成例を表している。この構成例におけるLFSR801乃至排他的論理和回路809は、図22における、LFSR601乃至排他的論理和回路609と基本的に同様の構成とされている。ただし、レジスタ807に入力される時変キーiが、全てのビットが0である単位元とされている点のみが異なっている。従って、この構成例の場合、セッションキーSだけに基づいて暗号鍵が生成され、復号処理が行われる。
【0166】
なお、図19、図20、および図24に示す処理は、アプリケーション部61において行われるので、ソフト的に処理されるものである。
【0167】
ところで、何らかの理由でlicense_keyが盗まれてしまったような場合には、適宜、これを変更(更新)するようにすることができる。勿論、このlicense_keyが実際に盗まれなくても、盗まれるおそれがある場合には、所定の周期で、これを更新するようにすることができる。この場合、例えば、DVD(ディスク)内に、そのとき有効とされるlicense_keyのバージョン(この実施の形態の場合、hash関数の適用回数)が記録される。また、対象となる操作が、DVDプレーヤではなく、例えば衛星を介して伝送されてくる情報を受信する受信装置である場合には、衛星から、そのバージョンの情報が受信装置に向けて伝送される。
【0168】
図25と図26は、DVDプレーヤにおいて、license_keyを更新する場合の処理例を表している。なお、この実施の形態の場合には、図4に示した情報が、DVDプレーヤ1のEEPROM27とパーソナルコンピュータ2のEEPROM50に記憶されている他、EEPROM50にはhash関数も記憶されている。
【0169】
最初に、ステップS151において、ソースとしてのDVDプレーヤ1は、シンクとしてのパーソナルコンピュータ2に対して、IDを要求する。パーソナルコンピュータ2は、ステップS152で、このID要求信号を受け取ると、ステップS153で、自分自身のIDをDVDプレーヤ1に送出する。DVDプレーヤ1は、ステップS154で、このIDを受信する。
【0170】
次に、DVDプレーヤ1は、ステップS155で、次式から鍵lkを演算する。
lk=hash(ID || service_key)
【0171】
以上の処理は、図4のステップS1乃至S5の処理と同様の処理である。
【0172】
次に、ステップS156に進み、DVDプレーヤ1は、ステップS155で演算した鍵lkが有効なバージョンのものであるか否かを判定する。すなわち、上述したように、DVDには、現在有効なlicense_key(=lk)のバージョン(hash関数の適用回数)が記録されている。ステップS155で生成した鍵lkは、hash関数を1回適用して求めたものである。このhash関数の適用回数がバージョンで規定されている回数と等しくない場合、鍵lkは無効と判定される。この場合、ステップS157に進み、DVDプレーヤ1は、更新回数(演算回数)を示す変数gに1を初期設定し、lkgにlkを設定する。そして、ステップS158において、現在の鍵lkgにhash関数を1回適用し、新たな鍵lkg+1を演算する。すなわち、次式を演算する。
lkg+1=hash(lkg)
【0173】
ステップS159では、ステップS158で求められた鍵lkg+1が有効であるか否かを判定する。すなわち、バージョンに規定された回数と同一の回数だけhash関数を適用したか否かを判定する。適用回数がバージョンに規定されている回数に達していないとき、ステップS160に進み、DVDプレーヤ1は、変数gを1だけインクリメントする。そして、ステップS158に戻り、再び現在の鍵lkgにhash関数を適用し、演算する。
【0174】
以上のようにして、バージョンに規定されている回数とhash関数を適用した回数が等しくなるまで、同様の処理が繰り返し実行される。
【0175】
なお、この繰り返し回数には、例えば100回など上限値を設けるようにしてもよい。
【0176】
ステップS159で、バージョンに対応する回数だけhash関数が適用されたと判定された場合(有効な鍵lkg+1が得られたと判定された場合)、並びに、ステップS156で、鍵lkが有効であると判定された場合、ステップS161に進み、上述した場合と同様にして、暗号鍵skを生成する。ステップS162では、ステップS155またはステップS158で生成した鍵lkgを鍵として、暗号鍵skを暗号化する。すなわち、次式を演算する。
e=Enc(lkg,sk)
【0177】
次に、ステップS163において、DVDプレーヤ1は、パーソナルコンピュータ2に対して、ステップS162で暗号化したデータeと、hash関数の適用回数を表す変数gを伝送する。パーソナルコンピュータ2においては、ステップS164でこれを受信すると、ステップS165で、パーソナルコンピュータ2におけるhash関数の適用回数を表す変数wに1を初期設定する。次に、ステップS166に進み、ステップS164で受信した変数gと、ステップS165で設定した変数wの値が等しいか否かを判定する。両者が等しくない場合、ステップS167に進み、パーソナルコンピュータ2のEEPROM50に記憶されているlicense_keyにhash関数を適用して、新たなlicense_keyw+1を次式から求める。
license_keyw+1=hash(license_keyw)
【0178】
次に、ステップS168に進み、wを1だけインクリメントして、ステップS166に戻る。ステップS166で再び変数gと変数wが等しいか否かを判定し、両者が等しいと判定されるまで、ステップS167,S168の処理が繰り返し実行される。
【0179】
ステップS166で、変数gが変数wと等しいと判定された場合(現在有効なlicense_keywが得られた場合)、ステップS169に進み、次式から暗号鍵sk'が演算される。
sk'=Dec(license_keyw,e)
【0180】
以上のように、license_key(=lk)を適宜更新するようにすれば、より安全性を高めることができる。
【0181】
なお、図25と図26に示した処理例の場合、バージョンを表す変数gをソース側からシンク側に伝送するようにしたが、これを伝送しないで、license_keyを更新することも可能である。この場合、図25の処理に続いて、図27に示す処理が実行される。
【0182】
すなわち、この例の場合、ステップS163で、DVDプレーヤ1からパーソナルコンピュータ2に対して、暗号化データeだけが伝送され、バージョンを表す変数gは伝送されない。ステップS164で、パーソナルコンピュータ2がこの暗号化データeを受信すると、ステップS165で、この暗号化データeをlicense_keyを用いて復号する処理が、次式で示すように実行される。
sk'=Dec(license_key,e)
【0183】
また、ステップS166で、DVDプレーヤ1は、ステップS161で生成した暗号鍵skを用いて、送出するデータを暗号化し、伝送する。パーソナルコンピュータ2は、ステップS167でこれを受信すると、ステップS168で、ステップS165で求めた暗号鍵sk'を用いて、復号する処理を実行する。次に、ステップS169で、復号した結果得られたデータが正しいか否かを判定する。この判定は、例えばMPEG方式のTS(Transport Stream)パケットが受信されている場合には、そのヘッダ部分に、同期合わせのためのコード(16進表示で47)が挿入されているので、このコードが完全であるか否かをチェックすることで行うことができる。
【0184】
正しい復号ができなかった場合には、ステップS170に進み、パーソナルコンピュータ2は、次式に従って、license_keyを更新する。
license_key=hash(license_key)
【0185】
次に、ステップS171に進み、ステップS170で求めたlicense_keyを鍵として、ステップS164で受信した暗号化データeを、次式に従って復号する。
sk'=Dec(license_key,e)
【0186】
そして、ステップS168に戻り、ステップS171で求めた暗号鍵sk'を用いて、ステップS167で受信した暗号化されているデータを復号する。ステップS169では、正しい復号が行われたか否かを再び判定する。以上のようにして、ステップS169で正しい復号が行われたと判定されるまで、ステップS170,S171,S168の処理が繰り返し実行される。
【0187】
以上のようにしても、license_keyを更新することができる。
【0188】
また、ソース側における暗号鍵の生成処理とシンク側における復号鍵(暗号鍵)の生成処理は、それぞれ処理対象とするデータと同期を取る必要がある。
【0189】
例えば、図21に示すソース側の1394インタフェース26において、LFSR501乃至排他的論理和回路508で生成する暗号鍵と、これを用いて暗号化するデータとしての平文の位相関係が、図22に示すシンク側の1394インタフェース36において、LFSR601乃至排他的論理和回路608で生成される暗号鍵と、この暗号鍵を用いて復号される暗号文の位相関係と一致している必要がある。そこで、図示は省略しているが、図21の1394インタフェース26においては、入力される平文に同期して暗号鍵が生成されるようになされており、また、図22の1394インタフェース36においては、入力される暗号文に同期して、暗号鍵が生成されるようになされてる。
【0190】
従って、例えばソース側から1394バス11を介してシンク側に送出された暗号文を構成するパケットや所定のビットが何らかの理由で欠落してしまったような場合、ソース側における平文と暗号鍵の位相に対応する位相を、シンク側の暗号文と暗号鍵において保持することができなくなる。そこで、両者の位相関係が所定のタイミングで確実に更新される(初期化される)ようにすることができる。図28は、このような処理を行う場合の構成例を表している。
【0191】
すなわち、この構成例においては、排他的論理和回路901が、乱数発生器903が発生する乱数と、入力される平文の排他的論理和を演算し、排他的論理和回路904と演算回路902に出力するようになされている。演算回路902にはまた、セッションキーSも入力されている。演算回路902は、セッションキーSと排他的論理和回路901の出力Ciに対して、所定の演算を施して、その演算結果を乱数発生器903に出力するようになされている。
【0192】
排他的論理和回路904は、排他的論理和回路901より入力されたデータと、時変キーiの排他的論理和を演算し、暗号文として1394バス11に出力するようになされている。
【0193】
同様に、シンク側においては、排他的論理和回路911が1394バス11を介して入力される暗号文と、時変キーiの排他的論理和を演算し、排他的論理和回路912と演算回路913に出力している。演算回路913には、セッションキーSも入力されている。演算回路913は、排他的論理和回路911からの入力Ciと、セッションキーSに対して所定の演算を施して、その演算結果を乱数発生器914に出力している。乱数発生器914は、演算回路913から入力される値を初期値として乱数を発生し、発生した乱数を排他的論理和回路912に出力している。排他的論理和回路912は、排他的論理和回路911より供給される暗号文と、乱数発生器914より入力される乱数との排他的論理和を演算し、暗号文を復号して平文として出力するようになされている。
【0194】
乱数発生器903は、例えば図29に示すように、LFSR931乃至クロッキングファンクション936により構成されている。これらは、図21に示したLFSR501乃至クロッキングファンクション506と同様の構成とされている。
【0195】
なお、図示は省略するが、シンク側の乱数発生器914も、図29に示した構成と同様に構成されている。
【0196】
また、ソース側の演算回路902とシンク側の演算回路913は、それぞれ図30のフローチャートに示すような処理を実行するように構成されている。
【0197】
次に、その動作について説明する。
【0198】
ソース側の演算回路902は、排他的論理和回路901からの入力Ciに、所定の関数fを適用して、Viを演算する機能、すなわち、次式を演算する機能を有している。
Vi=f(S,Ci)
【0199】
ステップS201では、上記式におけるCiに0を初期設定して次式が演算される。
V0=f(S,0)
【0200】
演算回路902は、ステップS201で演算した値を、ステップS202で乱数発生器903に出力する。乱数発生器903では、演算回路902の出力V0が、LFSR931乃至933に入力され、初期設定される。そして、図21に示した場合と同様にして、乱数が生成され、加算器935から出力される。この乱数が排他的論理和回路901に供給される。
【0201】
排他的論理和回路901は、この乱数と入力された平文との排他的論理和を演算し、演算結果Ciを演算回路902に供給する。
【0202】
演算回路902においては、次に、ステップS203において、変数iに1が初期設定され、ステップS204において、排他的論理和回路901から入力されたデータがCiに設定される。
【0203】
次に、ステップS205に進み、演算回路902は、次式を演算する。
Vi=f(S,Ci)+Vi-1
【0204】
いまの場合、i=1であるから、次式が演算される。
V1=f(S,C1)+V0
【0205】
次に、ステップS206に進み、いま取り込まれたデータCiが予め設定してある所定の値Tと等しいか否かが判定される。両者の値が等しくない場合、ステップS207に進み、変数iが1だけインクリメントされた後、ステップS204に戻る。すなわち、いまの場合、i=2とされ、次に入力されたデータがC2に設定される。
【0206】
次に、ステップS205で次式が演算される。
V2=f(S,C2)+V1
【0207】
ステップS206では、C2の値が所定の値Tと等しいか否かが判定され、等しくなければ、ステップS207に進み、変数iが1だけインクリメントされ、再びステップS204以降の処理が実行される。
【0208】
ステップS206において、Ciの値が所定の値Tと等しいと判定された場合、ステップS208に進み、ステップS205で演算された値Viが乱数発生器903に出力される。乱数発生器903では、ステップS202で説明した場合と同様に、この値がLFSR931乃至933に初期値として設定される。そして、この初期値に対応する乱数が加算器935から出力される。
【0209】
演算回路902は、Viを乱数発生器903に出力した後、ステップS203に戻り、変数iを1に初期設定した後、それ以降の処理を繰り返し実行する。
【0210】
いま、例えばTの値が8ビットで表されるものとし、Ciの値は、その発生確率が均等であるとすると、256(=28)回に1回の割合で、Ciの値はTと等しくなることになる。従って、乱数発生器903の発生する乱数は、256回に1回の割合で初期化(更新)されることになる。
【0211】
排他的論理和回路901より出力されたデータは、排他的論理和回路904に入力され、時変キーiとの排他的論理和が演算された後、暗号文として1394バス11に出力される。
【0212】
シンク側においては、排他的論理和回路911が、1394バス11を介して入力された暗号文と、時変キーiの排他的論理和を演算し、その演算結果Ciを、演算回路913に出力している。演算回路913は、上述したソース側の演算回路902と同様の処理を実行し、256回に1回の割合で、乱数発生器914に初期値Viを供給する。乱数発生器914は、入力された値Viを初期値として乱数を発生し、発生した乱数を排他的論理和回路912に出力する。排他的論理和回路912は、入力された乱数と、排他的論理和回路911より入力された暗号化されているデータとの排他的論理和を演算し、演算結果を平文として出力する。
【0213】
このように、演算回路913は、排他的論理和回路911が暗号データを256回出力すると1回の割合で初期値を発生する。従って、シンク側に1394バス11を介して入力される暗号データに欠落が生じたとしても、シンク側の暗号文と乱数の位相関係は、暗号データ256個に1個の割合で初期化されるため、その時点で位相関係が回復することになる。
【0214】
なお、演算回路902または演算回路913が初期値を出力するのは、T=Ciとなった場合であるから、256回に1回の割合で定期的に初期値が出力されるのではなく、平均すると確率的にそのようになるにすぎない。
【0215】
なお、送信または受信した暗号データの数をカウントして、同様の処理を実行させるようにすることも可能であるが、そのようにすると、1394バス11上でデータが欠落すると、ソース側におけるデータのカウント値とシンク側におけるデータのカウント値とが異なる値となってしまい、結局、両者の同期を取ることができなくなってしまう。そこで、上記した実施の形態のようにするのが好ましい。
【0216】
また、乱数発生器903または乱数発生器914に供給する初期値としては、排他的論理和回路901または911の出力するデータCiをそのまま利用することも可能である。しかしながら、このデータCiは、1394バス11上を伝送されるデータであり、盗まれるおそれがある。そこで、データCiを初期値として直接利用せず、これに対して所定の演算を施すことによって生成された値Viを初期値とするようにすれば、より安全性を高めることができる。
【0217】
図4の処理例においては、キーlkを固定するようにしているが、毎回、変更することも可能である。図31は、この場合の処理例を表している。
【0218】
ステップS211において、DVDプレーヤ1のファームウェア20は、1394インタフェース26を制御し、1394バス11を介してパーソナルコンピュータ2に対してIDを要求する。パーソナルコンピュータ2のライセンスマネージャ62は、ステップS212において、このIDの要求を受信する。すなわち、1394インタフェース49は、1394バス11を介してDVDプレーヤ1から伝送されてきたID要求の信号を受信すると、これをCPU41に出力する。CPU41のライセンスマネージャ62は、このID要求を受けたとき、ステップS213においてEEPROM50に記憶されているIDを読み出し、これを1394インタフェース49を介して1394バス11からDVDプレーヤ1に伝送する。
【0219】
DVDプレーヤ1においては、ステップS214で1394インタフェース26が、このIDを受け取ると、このIDがCPU21で動作しているファームウェア20に供給される。
【0220】
ファームウェア20は、ステップS215において、パーソナルコンピュータ2から伝送を受けたIDと、EEPROM27に記憶されているservice_keyを結合して、データ(ID || service_key)を生成し、このデータに対して、次式に示すようにhash関数を適用して、キーlkを生成する。
lk=hash(ID || service_key)
【0221】
ファームウェア20は、ステップS216において、乱数rを生成し、ステップS217において、キーlkと乱数rを結合したデータに対して、hash関数を適用し、キーlk'を生成する(キーlkをキーlk'に変更する)。
lk'=hash(lk || r)
【0222】
次に、ステップS218において、ファームウェア20は、暗号鍵skを生成する。次に、ステップS219において、ファームウェア20は、ステップS217で生成した鍵lk'を鍵として、ステップS218で生成した暗号鍵skを暗号化して、暗号化データ(暗号化鍵)eを得る。すなわち、次式を演算する。
e=Enc(lk', sk)
【0223】
次に、ステップS220で、ファームウェア20は、ステップS219で生成した暗号化データeと、ステップS216で生成した乱数rを、パーソナルコンピュータ2に伝送する。すなわち、この暗号化データeと乱数rは、DVDプレーヤ1の1394インタフェース26から1394バス11を介してパーソナルコンピュータ2に伝送される。パーソナルコンピュータ2においては、ステップS221で、この暗号化データeと乱数rを1394インタフェース49を介して受信する。ライセンスマネージャ62は、EEPROM50に記憶されているlicense_keyと、このようにして受信した乱数rを結合したデータに対して、hash関数を適用し、キーlk"を生成する。
lk"=hash(licence_key || r)
【0224】
さらにライセンスマネージャ62は、ステップS223において、ステップS222で生成した鍵lk"を鍵として、受信した暗号化データeを次式に示すように復号して、暗号鍵sk'を生成する。
sk'=Dec(lk',e)
【0225】
DVDプレーヤ1において、ステップS217で生成されるキーlk'は、パーソナルコンピュータ2においてステップS222で生成されるキーlk"と同一の値となる。すなわち、次式が成立する。
lk'=lk"
【0226】
従って、パーソナルコンピュータ2において、ステップS223で復号して得たキーsk'は、DVDプレーヤ1において、ステップS218で生成した暗号鍵skと同一の値となる。すなわち、次式が成立する。
sk'=sk
【0227】
このように、暗号鍵skを暗号化して送信する際に、暗号鍵skを暗号化する暗号鍵lk'を毎回変化させるようにすると、それだけ暗号鍵lk',skを解読される恐れが少なくなる。
【0228】
以上においては、DVDプレーヤ1をソースとし、パーソナルコンピュータ2と光磁気ディスク装置3をシンクとしたが、いずれの装置をソースとするかシンクとするかは任意である。
【0229】
また、各電子機器を接続する外部バスも、1394バスに限らず、種々のバスを利用することができ、それに接続する電子機器も、上述した例に限らず、任意の装置とすることができる。
【0230】
なお、上記各種の指令を実行するプログラムは、磁気ディスク、CD-ROMディスクなどの提供媒体を介してユーザに提供したり、ネットワークなどの提供媒体を介してユーザに提供し、必要に応じて内蔵するRAMやハードディスクなどに記憶して利用させるようにすることができる。
【0234】
【発明の効果】
以上の如く、請求項1に記載の情報処理装置、請求項3に記載の情報処理方法、および請求項4に記載の記録媒体によれば、第2のキーLK'を、第1のキーLKと、関数Gの逆関数G^-1に基づいて生成するようにしたので、より安全性を高めることができる。
【図面の簡単な説明】
【図1】本発明を適用した情報処理システムの構成例を示すブロック図である。
【図2】図1のDVDプレーヤ1、パーソナルコンピュータ2、および光磁気ディスク装置3の内部の構成例を示すブロック図である。
【図3】認証処理を説明する図である。
【図4】認証処理を説明するタイミングチャートである。
【図5】 node_unique_IDのフォーマットを示す図である。
【図6】他の認証処理を説明するタイミングチャートである。
【図7】さらに他の認証処理を説明するタイミングチャートである。
【図8】他の認証処理を説明するタイミングチャートである。
【図9】他の認証処理を説明するタイミングチャートである。
【図10】暗号化処理を説明するブロック図である。
【図11】図10の1394インタフェース26の構成例を示すブロック図である。
【図12】図11の1394インタフェース26のより詳細な構成例を示すブロック図である。
【図13】図12のLFSR72のより詳細な構成例を示すブロック図である。
【図14】図13のLFSR72のより具体的な構成例を示すブロック図である。
【図15】図10の1394インタフェース36の構成例を示すブロック図である。
【図16】図15の1394インタフェース36のより詳細な構成例を示すブロック図である。
【図17】図10の1394インタフェース49の構成例を示すブロック図である。
【図18】図17の1394インタフェース49のより詳細な構成例を示すブロック図である。
【図19】図10のアプリケーション部61の構成例を示すブロック図である。
【図20】図19のアプリケーション部61のより詳細な構成例を示すブロック図である。
【図21】図10の1394インタフェース26の他の構成例を示すブロック図である。
【図22】図10の1394インタフェース36の他の構成例を示すブロック図である。
【図23】図10の1394インタフェース49の他の構成例を示すブロック図である。
【図24】図10のアプリケーション部61の他の構成例を示すブロック図である。
【図25】他の認証処理を説明するタイミングチャートである。
【図26】図25に続くタイミングチャートである。
【図27】図25に続く他のタイミングチャートである。
【図28】本発明の情報処理システムの他の構成例を示すブロック図である。
【図29】図28の乱数発生器903の構成例を示すブロック図である。
【図30】図28の演算回路902の処理を説明するフローチャートである。
【図31】他の認証処理を説明するタイミングチャートである。
【図32】従来の認証方法を説明するタイミングチャートである。
【符号の説明】
1 DVDプレーヤ, 2 パーソナルコンピュータ, 3 光磁気ディスク装置, 11 1394バス, 20 ファームウェア, 21 CPU, 25 ドライブ, 26 1394インタフェース, 27 EEPROM, 31 CPU,35 ドライブ, 36 1394インタフェース, 37 EEPROM, 41 CPU, 47 ハードディスク, 48 拡張ボード, 49 1394インタフェース, 50 EEPROM, 51 内部バス, 61 アプリケーション部, 62 ライセンスマネージャ
Claims (4)
- ユニークな乱数である第1のキーLK、第2のキーLK'、および公開鍵暗号で用いられる関数Gと、自分自身に固有の識別データを記憶する記憶手段と、
擬似乱数を発生する擬似乱数発生手段と、
他の情報処理装置から伝送されてきた、前記識別データに基づき前記他の情報処理装置が生成した疑似乱数および鍵 sk を用いて生成した情報に対して、前記第2のキー LK' に対して前記関数Gを適用して生成した値と、前記第1のキー LK を用いて、前記鍵 sk と同一の鍵 sk' を生成する処理を行う処理手段と
を備え、
前記第2のキーLK'は、前記識別データと、前記鍵 sk を用いて生成した情報に対応する第3のキー SVK に基づいて生成されているデータHを、前記擬似乱数発生手段に適用して得られる擬似乱数 pRNG(H) と、前記第1のキー LK を前記擬似乱数発生手段に適用して得られる擬似乱数 pRNG(LK) に基づいて生成されるデータRを、前記関数Gの逆関数G ^-1 に適用して生成されている
ことを特徴とする情報処理装置。 - 前記他の情報処理装置から伝送されてきた、前記擬似乱数pRNG(H)を用いて暗号化されている第4のキーSKを、前記第2のキーLK'を前記関数Gに適用して得られるデータG(LK')と、前記擬似乱数pRNG(LK)を用いて復号するキー復号手段を
さらに備えることを特徴とする請求項1に記載の情報処理装置。 - 暗号化されているデータを復号するための鍵を生成する情報処理装置の情報処理方法において、
ユニークな乱数である第1のキーLK、第2のキーLK'、および公開鍵暗号で用いられる関数Gと、自分自身に固有の識別データを記憶する記憶ステップと、
擬似乱数を発生する擬似乱数発生ステップと、
他の情報処理装置から伝送されてきた、前記識別データに基づき前記他の情報処理装置が生成した疑似乱数および鍵 sk を用いて生成した情報に対して、前記第2のキー LK' に対して前記関数Gを適用して生成した値と、前記第1のキー LK を用いて、前記鍵 sk と同一の鍵 sk' を生成する処理を行う処理ステップと
を備え、
前記第2のキーLK'は、前記識別データと、前記鍵 sk を用いて生成した情報に対応する第3のキー SVK に基づいて生成されているデータHを、前記擬似乱数発生ステップによって得られる擬似乱数 pRNG(H) と、前記第1のキー LK を前記擬似乱数発生ステップによって得られる擬似乱数 pRNG(LK) に基づいて生成されるデータRを、前記関数Gの逆関数G ^-1 に適用して生成されている
ことを特徴とする情報処理方法。 - 暗号化されているデータを復号するための鍵を生成する情報処理をコンピュータに実行させるプログラムであって、
ユニークな乱数である第1のキーLK、第2のキーLK'、および公開鍵暗号で用いられる関数Gと、自分自身に固有の識別データを記憶する記憶ステップと、
擬似乱数を発生する擬似乱数発生ステップと、
他の情報処理装置から伝送されてきた、前記識別データに基づき前記他の情報処理装置が生成した疑似乱数および鍵 sk を用いて生成した情報に対して、前記第2のキー LK' に対して前記関数Gを適用して生成した値と、前記第1のキー LK を用いて、前記鍵 sk と同一の鍵 sk' を生成する処理を行う処理ステップと
を含み、
前記第2のキーLK'は、前記識別データと、前記鍵 sk を用いて生成した情報に対応する第3のキー SVK に基づいて生成されているデータHを、前記擬似乱数発生ステップによって得られる擬似乱数 pRNG(H) と、前記第1のキー LK を前記擬似乱数発生ステップによって得られる擬似乱数 pRNG(LK) に基づいて生成されるデータRを、前記関数Gの逆関数G ^-1 に適用して生成されている
コンピュータが読み取り可能なプログラムが記録されている記録媒体。
Priority Applications (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP20795397A JP3988172B2 (ja) | 1997-04-23 | 1997-08-01 | 情報処理装置および方法、並びに記録媒体 |
US09/059,757 US6360320B2 (en) | 1997-04-23 | 1998-04-14 | Information processing apparatus, information processing method, information processing system and recording medium using an apparatus id and provided license key for authentication of each information to be processed |
EP98303001A EP0874299B1 (en) | 1997-04-23 | 1998-04-20 | Data transmission, reception, encryption, decryption and recording |
EP07014045A EP1845431A1 (en) | 1997-04-23 | 1998-04-20 | Data transmission, reception, encryption, decryption and recording |
DE69839330T DE69839330T2 (de) | 1997-04-23 | 1998-04-20 | Übertragung, Empfang, Verschlüsselung, Entschlüsselung und Aufzeichnung von Daten |
MYPI98001757A MY128076A (en) | 1997-04-23 | 1998-04-21 | Information processing apparatus, information processing method, information processing system and recording medium |
KR10-1998-0014435A KR100495189B1 (ko) | 1997-04-23 | 1998-04-23 | 데이터전송장치및방법,암호화장치및방법,데이터수신장치및방법,데이터해독장치및방법,및프로그램기록을위한기록매체 |
CN98114719A CN1125407C (zh) | 1997-04-23 | 1998-04-23 | 信息处理装置,信息处理方法,信息处理系统 |
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10610497 | 1997-04-23 | ||
JP9-143699 | 1997-06-02 | ||
JP9-106104 | 1997-06-02 | ||
JP14369997 | 1997-06-02 | ||
JP20795397A JP3988172B2 (ja) | 1997-04-23 | 1997-08-01 | 情報処理装置および方法、並びに記録媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH1155248A JPH1155248A (ja) | 1999-02-26 |
JP3988172B2 true JP3988172B2 (ja) | 2007-10-10 |
Family
ID=27310656
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP20795397A Expired - Lifetime JP3988172B2 (ja) | 1997-04-23 | 1997-08-01 | 情報処理装置および方法、並びに記録媒体 |
Country Status (7)
Country | Link |
---|---|
US (1) | US6360320B2 (ja) |
EP (2) | EP0874299B1 (ja) |
JP (1) | JP3988172B2 (ja) |
KR (1) | KR100495189B1 (ja) |
CN (1) | CN1125407C (ja) |
DE (1) | DE69839330T2 (ja) |
MY (1) | MY128076A (ja) |
Families Citing this family (113)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4751209A (en) * | 1985-10-11 | 1988-06-14 | Matsushita Electric Industrial Co., Ltd. | Dielectric ceramic compositions |
JP2000004256A (ja) * | 1998-04-17 | 2000-01-07 | Toshiba Corp | ストリ―ムデ―タ処理システムおよびストリ―ムデ―タの制限方法 |
JP3951464B2 (ja) | 1998-07-28 | 2007-08-01 | 株式会社日立製作所 | ディジタル信号処理装置 |
US8380041B2 (en) * | 1998-07-30 | 2013-02-19 | Tivo Inc. | Transportable digital video recorder system |
US6233389B1 (en) * | 1998-07-30 | 2001-05-15 | Tivo, Inc. | Multimedia time warping system |
US7558472B2 (en) * | 2000-08-22 | 2009-07-07 | Tivo Inc. | Multimedia signal processing system |
US8577205B2 (en) * | 1998-07-30 | 2013-11-05 | Tivo Inc. | Digital video recording system |
EP1026898A1 (en) * | 1999-02-04 | 2000-08-09 | CANAL+ Société Anonyme | Method and apparatus for encrypted transmission |
JP2000236325A (ja) | 1999-02-09 | 2000-08-29 | Lg Electronics Inc | デジタルデータファイルの暗号化装置及びその方法 |
KR100320181B1 (ko) * | 1999-02-09 | 2002-01-10 | 구자홍 | 디지탈 데이터 파일 암호화 방법 |
US6615192B1 (en) | 1999-03-12 | 2003-09-02 | Matsushita Electric Industrial Co., Ltd. | Contents copying system, copying method, computer-readable recording medium and disc drive copying contents but not a cipher key via a host computer |
US6816596B1 (en) * | 2000-01-14 | 2004-11-09 | Microsoft Corporation | Encrypting a digital object based on a key ID selected therefor |
US6829708B1 (en) * | 1999-03-27 | 2004-12-07 | Microsoft Corporation | Specifying security for an element by assigning a scaled value representative of the relative security thereof |
TW518497B (en) | 1999-03-30 | 2003-01-21 | Sony Corp | Information processing system |
US6735313B1 (en) * | 1999-05-07 | 2004-05-11 | Lucent Technologies Inc. | Cryptographic method and apparatus for restricting access to transmitted programming content using hash functions and program identifiers |
US7143445B1 (en) | 1999-05-31 | 2006-11-28 | Sony Corporation | Information processing apparatus, information processing method, and program storage medium |
JP4011792B2 (ja) * | 1999-06-16 | 2007-11-21 | 株式会社東芝 | 記録方法、再生方法、記録装置、再生装置及び記録媒体 |
JP4099741B2 (ja) * | 1999-06-18 | 2008-06-11 | ソニー株式会社 | データ通信装置および方法、並びに記録媒体 |
US6477252B1 (en) * | 1999-08-29 | 2002-11-05 | Intel Corporation | Digital video content transmission ciphering and deciphering method and apparatus |
WO2001041104A1 (fr) * | 1999-11-30 | 2001-06-07 | Sanyo Electric Co., Ltd. | Enregistreur |
AU1730801A (en) * | 1999-12-07 | 2001-06-18 | Fujitsu Limited | Device for reproducing data |
US6772340B1 (en) * | 2000-01-14 | 2004-08-03 | Microsoft Corporation | Digital rights management system operating on computing device and having black box tied to computing device |
AU2000269232A1 (en) * | 2000-01-14 | 2001-07-24 | Microsoft Corporation | Specifying security for an element by assigning a scaled value representative ofthe relative security thereof |
KR100337179B1 (ko) * | 2000-03-10 | 2002-05-18 | 이중학 | 광디스크 복사 사용 방지 장치 및 방법 |
JP3985461B2 (ja) | 2000-05-02 | 2007-10-03 | 日本ビクター株式会社 | 認証方法、コンテンツ送信側機器、コンテンツ受信側機器、認証システム |
US7606492B2 (en) * | 2000-10-04 | 2009-10-20 | Enablence Usa Fttx Networks Inc. | System and method for communicating optical signals upstream and downstream between a data service provider and subscribers |
US6973271B2 (en) | 2000-10-04 | 2005-12-06 | Wave7 Optics, Inc. | System and method for communicating optical signals between a data service provider and subscribers |
US7130541B2 (en) * | 2000-10-04 | 2006-10-31 | Wave7 Optics, Inc. | System and method for communicating optical signals upstream and downstream between a data service provider and subscriber |
JP2002132141A (ja) * | 2000-10-20 | 2002-05-09 | Sony Corp | データ記憶装置、およびデータ記録方法、データ再生方法、並びにプログラム提供媒体 |
US7085281B2 (en) * | 2000-10-26 | 2006-08-01 | Wave7 Optics, Inc. | Method and system for processing upstream packets of an optical network |
US6662284B2 (en) * | 2001-02-20 | 2003-12-09 | Hewlett-Packard Development Company, L.C. | Computer apparatus, method and memory including license key |
US20070230921A1 (en) * | 2001-04-05 | 2007-10-04 | Barton James M | Multimedia time warping system |
KR20020083851A (ko) * | 2001-04-30 | 2002-11-04 | 주식회사 마크애니 | 디지털 컨텐츠의 보호 및 관리를 위한 방법 및 이를이용한 시스템 |
US6966837B1 (en) | 2001-05-10 | 2005-11-22 | Best Robert M | Linked portable and video game systems |
JP4545994B2 (ja) * | 2001-07-02 | 2010-09-15 | 三洋電機株式会社 | データ再生装置それに用いるデータ再生回路、およびデータ記録装置 |
US7218855B2 (en) * | 2001-07-05 | 2007-05-15 | Wave7 Optics, Inc. | System and method for communicating optical signals to multiple subscribers having various bandwidth demands connected to the same optical waveguide |
US20030072059A1 (en) * | 2001-07-05 | 2003-04-17 | Wave7 Optics, Inc. | System and method for securing a communication channel over an optical network |
US7529485B2 (en) * | 2001-07-05 | 2009-05-05 | Enablence Usa Fttx Networks, Inc. | Method and system for supporting multiple services with a subscriber optical interface located outside a subscriber's premises |
US7269350B2 (en) * | 2001-07-05 | 2007-09-11 | Wave7 Optics, Inc. | System and method for communicating optical signals between a data service provider and subscribers |
US20060020975A1 (en) * | 2001-07-05 | 2006-01-26 | Wave7 Optics, Inc. | System and method for propagating satellite TV-band, cable TV-band, and data signals over an optical network |
WO2003005612A1 (en) | 2001-07-05 | 2003-01-16 | Wave7 Optics, Inc. | Methods and systems for providing return path for signals generated by legacy terminals in optical network |
US6654565B2 (en) | 2001-07-05 | 2003-11-25 | Wave7 Optics, Inc. | System and method for increasing upstream communication efficiency in an optical network |
US7877014B2 (en) * | 2001-07-05 | 2011-01-25 | Enablence Technologies Inc. | Method and system for providing a return path for signals generated by legacy video service terminals in an optical network |
US7333726B2 (en) * | 2001-07-05 | 2008-02-19 | Wave7 Optics, Inc. | Method and system for supporting multiple service providers within a single optical network |
US7146104B2 (en) | 2001-07-05 | 2006-12-05 | Wave7 Optics, Inc. | Method and system for providing a return data path for legacy terminals by using existing electrical waveguides of a structure |
US7190901B2 (en) * | 2001-07-05 | 2007-03-13 | Wave7 Optices, Inc. | Method and system for providing a return path for signals generated by legacy terminals in an optical network |
US7593639B2 (en) * | 2001-08-03 | 2009-09-22 | Enablence Usa Fttx Networks Inc. | Method and system for providing a return path for signals generated by legacy terminals in an optical network |
EP1507261B1 (en) * | 2001-08-08 | 2016-07-20 | Panasonic Intellectual Property Management Co., Ltd. | Copyright protection system, recording device, decryption device, and recording medium |
AU2002349879A1 (en) * | 2001-09-10 | 2003-03-24 | Wave7 Optics, Inc. | System and method for securing a communication channel |
FR2829603A1 (fr) * | 2001-09-11 | 2003-03-14 | St Microelectronics Sa | Procede et dispositif de stockage et de lecture de donnees numeriques sur un support physique |
JP3746229B2 (ja) * | 2001-09-29 | 2006-02-15 | 株式会社東芝 | 受信データ記録再生装置及び受信データ記録再生方法 |
FR2834155B1 (fr) * | 2001-12-21 | 2005-02-18 | Gemplus Card Int | Procede de generation de cles electroniques cryptographiques et composant correspondant |
DE10164131A1 (de) * | 2001-12-30 | 2003-07-17 | Juergen K Lang | Kryptographisches Modul zur Speicherung und Wiedergabe kopier-und nutzungsgeschützter elektronischer Ton- und Bildmedien |
DE10164134A1 (de) * | 2001-12-30 | 2003-07-17 | Juergen K Lang | System und Verfahren zur Erstellung und Verbreitung kopier- und nutzungsgeschützter elektronischer Ton- und Bildmedien und deren Dateninhalte |
DE10164133A1 (de) * | 2001-12-30 | 2003-07-17 | Juergen K Lang | System und Verfahren zur Wiedergabe kopier- und nutzungsgeschützter Ton- und Bildmedien |
DE10164135A1 (de) * | 2001-12-30 | 2003-07-17 | Juergen K Lang | System und Verfahren zur kopier- und nutzungsgeschützten Ver- und Entschlüsselung, Übertragung und Speicherung elektronischer Ton- und Bildmedien |
US7038910B1 (en) | 2002-01-07 | 2006-05-02 | Wave7 Optics, Inc. | System and method for removing heat from a subscriber optical interface |
US7583897B2 (en) * | 2002-01-08 | 2009-09-01 | Enablence Usa Fttx Networks Inc. | Optical network system and method for supporting upstream signals propagated according to a cable modem protocol |
US7350081B1 (en) | 2002-04-29 | 2008-03-25 | Best Robert M | Secure execution of downloaded software |
US7623786B2 (en) * | 2002-05-20 | 2009-11-24 | Enablence Usa Fttx Networks, Inc. | System and method for communicating optical signals to multiple subscribers having various bandwidth demands connected to the same optical waveguide |
US7530116B2 (en) * | 2002-06-06 | 2009-05-05 | Macrovision Corporation | Controlling the downloading and recording of digital data |
US7885896B2 (en) | 2002-07-09 | 2011-02-08 | Avaya Inc. | Method for authorizing a substitute software license server |
US8041642B2 (en) | 2002-07-10 | 2011-10-18 | Avaya Inc. | Predictive software license balancing |
US20040044900A1 (en) * | 2002-08-29 | 2004-03-04 | Bei Wang | Copy protection of DVD related web content |
US7966520B2 (en) * | 2002-08-30 | 2011-06-21 | Avaya Inc. | Software licensing for spare processors |
US7698225B2 (en) * | 2002-08-30 | 2010-04-13 | Avaya Inc. | License modes in call processing |
US7681245B2 (en) * | 2002-08-30 | 2010-03-16 | Avaya Inc. | Remote feature activator feature extraction |
US7707116B2 (en) * | 2002-08-30 | 2010-04-27 | Avaya Inc. | Flexible license file feature controls |
KR100924773B1 (ko) * | 2002-09-16 | 2009-11-03 | 삼성전자주식회사 | 메타데이터 암호화 및 복호화 방법과 암호화된 메타데이터관리 방법 및 그 시스템 |
NZ539799A (en) * | 2002-10-08 | 2008-12-24 | David Powell | Method and appartus for precast and framed block construction using a number of differently shaped inter-operational planar elements |
US7058260B2 (en) * | 2002-10-15 | 2006-06-06 | Wave7 Optics, Inc. | Reflection suppression for an optical fiber |
JP4214454B2 (ja) | 2002-12-13 | 2009-01-28 | ソニー株式会社 | 映像信号処理システム、映像信号処理装置および方法、記録媒体、並びにプログラム |
US7890997B2 (en) * | 2002-12-26 | 2011-02-15 | Avaya Inc. | Remote feature activation authentication file system |
US7370212B2 (en) * | 2003-02-25 | 2008-05-06 | Microsoft Corporation | Issuing a publisher use license off-line in a digital rights management (DRM) system |
US7260557B2 (en) * | 2003-02-27 | 2007-08-21 | Avaya Technology Corp. | Method and apparatus for license distribution |
US7454141B2 (en) | 2003-03-14 | 2008-11-18 | Enablence Usa Fttx Networks Inc. | Method and system for providing a return path for signals generated by legacy terminals in an optical network |
US7231518B1 (en) * | 2003-03-28 | 2007-06-12 | Cisco Technology, Inc. | System and method for authenticating a storage device for use with driver software in a storage network |
US8467534B2 (en) * | 2003-04-16 | 2013-06-18 | Broadcom Corporation | Method and system for secure access and processing of an encryption/decryption key |
CN1833400B (zh) * | 2003-08-05 | 2011-12-28 | 松下电器产业株式会社 | 著作权保护系统 |
KR20050075877A (ko) * | 2004-01-16 | 2005-07-25 | 삼성전자주식회사 | 데이터 재전송 장치 및 방법 |
JP4290036B2 (ja) * | 2004-02-27 | 2009-07-01 | キヤノン株式会社 | 情報処理装置及び印刷制御装置 |
US7627764B2 (en) * | 2004-06-25 | 2009-12-01 | Intel Corporation | Apparatus and method for performing MD5 digesting |
CA2576944A1 (en) * | 2004-08-10 | 2006-02-23 | Wave7 Optics, Inc. | Countermeasures for idle pattern srs interference in ethernet optical network systems |
US7599622B2 (en) * | 2004-08-19 | 2009-10-06 | Enablence Usa Fttx Networks Inc. | System and method for communicating optical signals between a data service provider and subscribers |
US7707405B1 (en) | 2004-09-21 | 2010-04-27 | Avaya Inc. | Secure installation activation |
US8229858B1 (en) | 2004-09-30 | 2012-07-24 | Avaya Inc. | Generation of enterprise-wide licenses in a customer environment |
US7747851B1 (en) * | 2004-09-30 | 2010-06-29 | Avaya Inc. | Certificate distribution via license files |
US20060075428A1 (en) * | 2004-10-04 | 2006-04-06 | Wave7 Optics, Inc. | Minimizing channel change time for IP video |
EP1813111A2 (en) | 2004-11-19 | 2007-08-01 | Tivo, Inc. | Method and apparatus for secure transfer of previously broadcasted content |
US20060187863A1 (en) * | 2004-12-21 | 2006-08-24 | Wave7 Optics, Inc. | System and method for operating a wideband return channel in a bi-directional optical communication system |
US8725646B2 (en) | 2005-04-15 | 2014-05-13 | Microsoft Corporation | Output protection levels |
US20060265758A1 (en) | 2005-05-20 | 2006-11-23 | Microsoft Corporation | Extensible media rights |
US7616901B2 (en) | 2005-08-10 | 2009-11-10 | Enablence Usa Fttx Networks Inc. | Countermeasures for idle pattern SRS interference in ethernet optical network systems |
US20070047959A1 (en) * | 2005-08-12 | 2007-03-01 | Wave7 Optics, Inc. | System and method for supporting communications between subcriber optical interfaces coupled to the same laser transceiver node in an optical network |
US7814023B1 (en) | 2005-09-08 | 2010-10-12 | Avaya Inc. | Secure download manager |
EP1765012A1 (fr) * | 2005-09-14 | 2007-03-21 | Nagravision S.A. | Méthode de vérification d'un dispositif cible relié à un dispositif maître |
US20070162740A1 (en) * | 2006-01-12 | 2007-07-12 | Relan Sandeep K | Systems, methods, and apparatus for packet level security |
US8826023B1 (en) * | 2006-06-30 | 2014-09-02 | Symantec Operating Corporation | System and method for securing access to hash-based storage systems |
US7751559B2 (en) * | 2006-09-07 | 2010-07-06 | International Business Machines Corporation | Secure transmission of cryptographic key |
JP4953801B2 (ja) * | 2006-12-25 | 2012-06-13 | パナソニック株式会社 | パスワード設定方法、映像受信システム、プログラム、および記録媒体 |
EP1968316A1 (en) | 2007-03-06 | 2008-09-10 | Nagravision S.A. | Method to control the access to conditional access audio/video content |
US7907735B2 (en) * | 2007-06-15 | 2011-03-15 | Koolspan, Inc. | System and method of creating and sending broadcast and multicast data |
EP2088764B1 (fr) * | 2008-02-11 | 2010-10-06 | Nagravision S.A. | Méthode de mise à jour et de gestion d'une application de traitement de données audiovisuelles incluse dans une unité multimédia au moyen d'un module d'accès conditionnel |
JP5289476B2 (ja) * | 2011-02-04 | 2013-09-11 | 株式会社東芝 | 通信装置および鍵算出装置 |
CA2839236C (en) | 2011-07-01 | 2019-05-21 | Nagravision S.A. | A method for playing repeatable events on a media player |
US8842828B2 (en) * | 2012-08-01 | 2014-09-23 | Qualcomm Incorporated | System and method for hybrid multiple source decryption |
KR101363290B1 (ko) | 2012-08-30 | 2014-02-18 | 고려대학교 산학협력단 | 단말간 경량화된 인증된 키 공유방법 |
US10262164B2 (en) | 2016-01-15 | 2019-04-16 | Blockchain Asics Llc | Cryptographic ASIC including circuitry-encoded transformation function |
JP6473876B2 (ja) * | 2016-12-01 | 2019-02-27 | 株式会社ユートピア企画 | セキュアネットワーク通信方法 |
US10372943B1 (en) | 2018-03-20 | 2019-08-06 | Blockchain Asics Llc | Cryptographic ASIC with combined transformation and one-way functions |
US10404454B1 (en) * | 2018-04-25 | 2019-09-03 | Blockchain Asics Llc | Cryptographic ASIC for derivative key hierarchy |
EP3620917B1 (de) * | 2018-09-06 | 2021-10-27 | Siemens Aktiengesellschaft | Verwalten von lizenzen für soft-ip auf einem partiell rekonfigurierbaren hardware-system |
US11469893B2 (en) * | 2019-11-22 | 2022-10-11 | Johnson Controls Tyco IP Holdings LLP | Systems and methods for establishing secured connections for IoT devices |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS619052A (ja) * | 1984-06-25 | 1986-01-16 | Toshiba Corp | 通信ネツトワ−クシステム |
DE3565918D1 (en) * | 1984-08-10 | 1988-12-01 | Gretag Ag | Enciphering/deciphering method |
US4815130A (en) * | 1986-10-03 | 1989-03-21 | Communications Satellite Corporation | Stream cipher system with feedback |
JPH03179841A (ja) * | 1990-10-19 | 1991-08-05 | Matsushita Electric Ind Co Ltd | 暗号デジタル放送受信装置 |
US5073935A (en) | 1990-12-17 | 1991-12-17 | Jose Pastor | Method for secure communication |
US5418854A (en) | 1992-04-28 | 1995-05-23 | Digital Equipment Corporation | Method and apparatus for protecting the confidentiality of passwords in a distributed data processing system |
WO1995005712A2 (en) | 1993-08-13 | 1995-02-23 | Frank Thomson Leighton | Secret key exchange |
EP0940814B1 (en) | 1993-12-18 | 2003-06-25 | Sony Corporation | Data reproduction apparatus and data storage medium |
JP2762909B2 (ja) | 1993-12-27 | 1998-06-11 | 日本電気株式会社 | 電子署名装置 |
US5533127A (en) * | 1994-03-18 | 1996-07-02 | Canon Information Systems, Inc. | Encryption system |
EP0688929B1 (en) * | 1994-06-21 | 2004-10-13 | Microchip Technology Inc. | Secure self-learning |
US5796839A (en) * | 1995-10-16 | 1998-08-18 | Sony Corporation | Encryption method, encryption apparatus, recording method, decoding method, decoding apparatus and recording medium |
US5883958A (en) * | 1996-04-01 | 1999-03-16 | Sony Corporation | Method and device for data decryption, a method and device for device identification, a recording medium, a method of disk production, and a method and apparatus for disk recording |
-
1997
- 1997-08-01 JP JP20795397A patent/JP3988172B2/ja not_active Expired - Lifetime
-
1998
- 1998-04-14 US US09/059,757 patent/US6360320B2/en not_active Expired - Lifetime
- 1998-04-20 EP EP98303001A patent/EP0874299B1/en not_active Expired - Lifetime
- 1998-04-20 EP EP07014045A patent/EP1845431A1/en not_active Withdrawn
- 1998-04-20 DE DE69839330T patent/DE69839330T2/de not_active Expired - Lifetime
- 1998-04-21 MY MYPI98001757A patent/MY128076A/en unknown
- 1998-04-23 KR KR10-1998-0014435A patent/KR100495189B1/ko not_active IP Right Cessation
- 1998-04-23 CN CN98114719A patent/CN1125407C/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
KR100495189B1 (ko) | 2005-11-23 |
MY128076A (en) | 2007-01-31 |
DE69839330T2 (de) | 2009-07-16 |
EP0874299A3 (en) | 1999-10-13 |
US6360320B2 (en) | 2002-03-19 |
CN1202658A (zh) | 1998-12-23 |
US20010044897A1 (en) | 2001-11-22 |
CN1125407C (zh) | 2003-10-22 |
DE69839330D1 (de) | 2008-05-21 |
KR19980081635A (ko) | 1998-11-25 |
EP1845431A1 (en) | 2007-10-17 |
EP0874299B1 (en) | 2008-04-09 |
JPH1155248A (ja) | 1999-02-26 |
EP0874299A2 (en) | 1998-10-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3988172B2 (ja) | 情報処理装置および方法、並びに記録媒体 | |
JP3864401B2 (ja) | 認証システム、電子機器、認証方法、および記録媒体 | |
KR100466474B1 (ko) | 암호화장치및방법,복호장치및방법,정보처리장치및방법 | |
JP4496440B2 (ja) | 暗号化コンテンツ送信装置 | |
KR20000076003A (ko) | 정보 처리 시스템, 정보 처리 장치 및 정보 처리 방법 | |
JP4748109B2 (ja) | 暗号化装置および方法、復号装置および方法、情報処理装置および方法、並びに情報再生装置 | |
JP2010246158A (ja) | 暗号化装置および方法、並びに復号装置および方法 | |
JP2006340407A (ja) | 暗号化装置および方法、並びに復号装置および方法 | |
JP2007043738A (ja) | 電子機器 | |
JP4496506B2 (ja) | 暗号化コンテンツ送信装置 | |
JP2013179701A (ja) | 暗号化装置および方法 | |
JP2013017225A (ja) | 暗号化装置および方法 | |
JP2012070430A (ja) | 復号装置および方法 | |
JP2016015783A (ja) | 暗号化装置 | |
JP2015043611A (ja) | 復号装置 | |
JP2013192267A (ja) | 暗号処理装置および暗号処理方法、並びに、復号処理装置および復号処理方法 | |
JP2015019430A (ja) | 復号装置 | |
JP2014064318A (ja) | 暗号化装置および方法 | |
JP2015029243A (ja) | 情報処理装置および情報処理方法 | |
JP2014147109A (ja) | 情報処理装置および情報処理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20051110 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060110 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070322 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070518 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20070625 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070708 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100727 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100727 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110727 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120727 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130727 Year of fee payment: 6 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |