JP4427693B2 - データ処理装置および方法、並びにデータ復号処理装置および方法 - Google Patents
データ処理装置および方法、並びにデータ復号処理装置および方法 Download PDFInfo
- Publication number
- JP4427693B2 JP4427693B2 JP28108798A JP28108798A JP4427693B2 JP 4427693 B2 JP4427693 B2 JP 4427693B2 JP 28108798 A JP28108798 A JP 28108798A JP 28108798 A JP28108798 A JP 28108798A JP 4427693 B2 JP4427693 B2 JP 4427693B2
- Authority
- JP
- Japan
- Prior art keywords
- key
- content
- storage
- encrypted
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0822—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0838—Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
- H04L9/0841—Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
- H04L9/0844—Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols with user authentication or key authentication, e.g. ElGamal, MTI, MQV-Menezes-Qu-Vanstone protocol or Diffie-Hellman protocols using implicitly-certified keys
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3271—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
- H04L9/3273—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response for mutual authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/60—Digital content management, e.g. content distribution
Description
【発明の属する技術分野】
本発明は、データ処理装置および方法、並びにデータ復号処理装置および方法に関し、特に、情報を暗号化して記録するデータ処理装置および方法、並びにデータ復号処理装置および方法に関する。
【0002】
【従来の技術】
従来の、例えば、FD(Floppy Disc)、CD-R(Compact Disk Recordable)、DVD-RAM(Digital Versatile Disc Random Access Memory)、MD(Mini Disc:商標)等の情報記録媒体に情報を読み書きする情報処理装置は、情報を暗号化して記録する機能は有せず、情報を暗号化して記録したい場合には、予め暗号化した情報をこれらの情報処理装置に供給する必要があった。
【0003】
しかし、上記の暗号化は、不正な複製や不正な読み出しを制限したいという要求に答えるためのものであり、事前に暗号化したのでは、結局、不正な複製は防ぐことができない。なぜならば、暗号化プログラムまたは復号プログラムが、例えば、PC(Personal Computer)上のプログラムとして供給されていた場合、このプログラムをコピーして配布すれば、暗号化した情報をそのまま複製し、複製したプログラムで復号し利用することができるからである。
【0004】
また、暗号化または復号のプログラムが情報処理装置のファームウェアとして格納されている場合でも、情報記録媒体の情報そのものは、容易に複製が可能であり、そのファームウェアが格納された情報処理装置を用意すれば、複製した情報を利用することが可能である。
【0005】
これを解決するため、特殊なメモリ、例えば、読み出しシーケンス等を秘密にした半導体メモリに情報を保存することが考えられる。読み出しシーケンス等を知らない限り、情報の読み出しが困難になるからである。
【0006】
【発明が解決しようとする課題】
しかしながら、このような特殊な半導体メモリの利用には、読み出しシーケンスに対応した所定の回路が必要になり、また、半導体メモリそのものも汎用品とはならず、単価が大きく上昇してしまう。
【0007】
本発明はこのような状況に鑑みてなされたものであり、安価な汎用の半導体メモリを使用して、不正な情報の複製を防止することを目的とする。
【0008】
【課題を解決するための手段】
請求項1に記載のデータ処理装置は、コンテンツ鍵を復号するための配送鍵を記憶する記憶手段と、配送鍵によってコンテンツ鍵を復号する復号手段と、記憶媒体との相互認証を行うとともに、記憶媒体と共有するための一時鍵を生成する相互認証手段と、復号手段で復号されたコンテンツ鍵を一時鍵によって暗号化する暗号化手段と、少なくとも、一時鍵によって暗号化したコンテンツ鍵を記憶媒体に送信する送信手段とを備えることを特徴とする。
【0009】
請求項3に記載のデータ処理方法は、記憶手段により、コンテンツ鍵を復号するための配送鍵を記憶する記憶ステップと、復号手段により、配送鍵によってコンテンツ鍵を復号する復号ステップと、相互認証手段により、記憶媒体との相互認証を行うとともに、記憶媒体と共有するための一時鍵を生成する相互認証ステップと、暗号化手段により、復号ステップで復号されたコンテンツ鍵を一時鍵によって暗号化する暗号化ステップと、送信手段により、少なくとも、一時鍵によって暗号化したコンテンツ鍵を記憶媒体に送信する送信ステップとを含むことを特徴とする。
【0010】
請求項4に記載のデータ処理装置は、コンテンツ鍵を復号するための配送鍵を記憶する記憶手段と、配送鍵によって暗号化されたコンテンツ鍵を復号する第1の復号手段と、記憶媒体との相互認証を行うとともに、記憶媒体と共有するための一時鍵を生成する相互認証手段と、記憶媒体から一時鍵によって暗号化された保存鍵を受信する受信手段と、一時鍵によって保存鍵を復号する第2の復号手段と、第1の復号手段で復号されたコンテンツ鍵を保存鍵によって暗号化する暗号化手段と、少なくとも、保存鍵で暗号化したコンテンツ鍵を記憶媒体に送信する送信手段とを備えることを特徴とする。
【0011】
請求項5に記載のデータ処理方法は、記憶手段により、コンテンツ鍵を復号するための配送鍵を記憶する記憶ステップと、第1の復号手段により、配送鍵によって暗号化されたコンテンツ鍵を復号する第1の復号ステップと、相互認証手段により、記憶媒体との相互認証を行うとともに、記憶媒体と共有するための一時鍵を生成する相互認証ステップと、受信手段により、記憶媒体から一時鍵によって暗号化された保存鍵を受信する受信ステップと、第2の復号手段により、一時鍵によって保存鍵を復号する第2の復号ステップと、暗号化手段により、第1の復号ステップで復号されたコンテンツ鍵を保存鍵によって暗号化する暗号化ステップと、送信手段により、少なくとも、保存鍵で暗号化したコンテンツ鍵を記憶媒体に送信する送信ステップとを含むことを特徴とする。
【0018】
請求項6に記載のデータ復号処理装置は、記憶媒体と相互認証を行うともに、記憶媒体と共有するための一時鍵を生成する相互認証手段と、記憶媒体から一時鍵によって暗号化された保存鍵を受信する受信手段と、一時鍵によって保存鍵を復号する第1の復号手段と、記憶媒体から保存鍵によって暗号化されたコンテンツ鍵を読み出す読み出し手段と、保存鍵によってコンテンツ鍵を復号する第2の復号手段と、コンテンツ鍵によってコンテンツを復号する第3の復号手段とを備えることを特徴とする。
【0019】
請求項7に記載のデータ復号処理方法は、相互認証手段により、記憶媒体と相互認証を行うともに、記憶媒体と共有するための一時鍵を生成する相互認証ステップと、受信手段により、記憶媒体から一時鍵によって暗号化された保存鍵を受信する受信ステップと、第1の復号手段により、一時鍵によって保存鍵を復号する第1の復号ステップと、読み出し手段により、記憶媒体から保存鍵によって暗号化されたコンテンツ鍵を読み出す読み出しステップと、第2の復号手段により、保存鍵によってコンテンツ鍵を復号する第2の復号ステップと、第3の復号手段により、コンテンツ鍵によってコンテンツを復号する第3の復号ステップとを含むことを特徴とする。
【0020】
請求項1に記載のデータ処理装置および請求項3に記載のデータ処理方法においては、コンテンツ鍵を復号するための配送鍵が記憶され、配送鍵によってコンテンツ鍵が復号され、記憶媒体との相互認証が行われるとともに、記憶媒体と共有するための一時鍵が生成され、復号されたコンテンツ鍵が一時鍵によって暗号化され、少なくとも、一時鍵によって暗号化したコンテンツ鍵が記憶媒体に送信される。
【0021】
請求項4に記載のデータ処理装置および請求項5に記載のデータ処理方法においては、コンテンツ鍵を復号するための配送鍵が記憶され、配送鍵によって暗号化されたコンテンツ鍵が復号され、記憶媒体との相互認証が行われるとともに、記憶媒体と共有するための一時鍵が生成され、記憶媒体から一時鍵によって暗号化された保存鍵が受信され、一時鍵によって保存鍵が復号され、復号されたコンテンツ鍵が保存鍵によって暗号化され、少なくとも、保存鍵で暗号化したコンテンツ鍵が記憶媒体に送信される。
【0025】
請求項6に記載のデータ復号処理装置および請求項7に記載のデータ復号処理方法においては、記憶媒体と相互認証を行われるともに、記憶媒体と共有するための一時鍵が生成され、記憶媒体から一時鍵によって暗号化された保存鍵が受信され、一時鍵によって保存鍵が復号され、記憶媒体から保存鍵によって暗号化されたコンテンツ鍵が読み出され、保存鍵によってコンテンツ鍵が復号され、コンテンツ鍵によってコンテンツが復号される。
【0026】
【発明の実施の形態】
以下に本発明の実施の形態を説明するが、特許請求の範囲に記載の発明の各手段と以下の実施の形態との対応関係を明らかにするために、各手段の後の括弧内に、対応する実施の形態(但し一例)を付加して本発明の特徴を記述すると、次のようになる。但し勿論この記載は、各手段を記載したものに限定することを意味するものではない。
【0027】
請求項1に記載のデータ処理装置は、コンテンツ鍵を復号するための配送鍵を記憶する記憶手段(例えば、図1の記憶部15)と、配送鍵によってコンテンツ鍵を復号する復号手段(例えば、図1の復号部14)と、記憶媒体との相互認証を行うとともに、記憶媒体と共有するための一時鍵を生成する相互認証手段(例えば、図1の相互認証部12)と、コンテンツ鍵を一時鍵によって暗号化する暗号化手段(例えば、図1の暗号化部13)と、少なくとも、一時鍵によって暗号化したコンテンツ鍵を記憶媒体に送信する送信手段(例えば、図1の通信部11)とを備えることを特徴とする。
【0028】
請求項4に記載のデータ処理装置は、コンテンツ鍵を復号するための配送鍵を記憶する記憶手段(例えば、図1の記憶部15)と、配送鍵によって暗号化されたコンテンツ鍵を復号する第1の復号手段(例えば、図1の復号部14)と、記憶媒体との相互認証を行うとともに、記憶媒体と共有するための一時鍵を生成する相互認証手段(例えば、図1の相互認証部12)と、記憶媒体から一時鍵によって暗号化された保存鍵を受信する受信手段(例えば、図1の通信部11)と、一時鍵によって保存鍵を復号する第2の復号手段(例えば、図1の復号部14)と、第1の復号手段で復号されたコンテンツ鍵を保存鍵によって暗号化する暗号化手段(例えば、図1の暗号化部13)と、少なくとも、保存鍵で暗号化したコンテンツ鍵を記憶媒体に送信する送信手段(例えば、図1の通信部11)とを備えることを特徴とする。
【0031】
請求項6に記載のデータ復号処理装置は、記憶媒体と相互認証を行うともに、記憶媒体と共有するための一時鍵を生成する相互認証手段(例えば、図1の相互認証部12)と、記憶媒体から一時鍵によって暗号化された保存鍵を受信する受信手段(例えば、図1の通信部11)と、一時鍵によって保存鍵を復号する第1の復号手段(例えば、図1の復号部14)と、記憶媒体から保存鍵によって暗号化されたコンテンツ鍵を読み出す読み出し手段(例えば、図1の通信部11)と、保存鍵によってコンテンツ鍵を復号する第2の復号手段(例えば、図1の復号部14)と、コンテンツ鍵によってコンテンツを復号する第3の復号手段(例えば、図1の復号部14)とを備えることを特徴とする。
【0032】
図1は、本発明に係る情報処理装置および情報記録媒体の一実施の形態の構成を示すブロック図である。読み書き装置1は、ネットワークに接続され、ネットワークから供給された音楽、静止画像、動画像、コンピュータのプログラム等の情報(以下、コンテンツと称する)を、装着されたICメモリ2に記憶させ、また、ICメモリ2に記憶されているコンテンツを読み出す。通信部11は、ICメモリ2にコンテンツまたは後述する暗号化されたコンテンツ鍵Kco等を送信し、ICメモリ2からコンテンツまたは後述する暗号化されたコンテンツ鍵Kcoなどを受信する。相互認証部12は、ICメモリ2の相互認証部23と、後述する相互認証処理により、相互認証し、相互認証後、ICメモリ2との通信で、所定の期間利用される一時鍵Ktempを生成する。
【0033】
暗号化部13は、ネットワークを介して供給されたコンテンツ、またはコンテンツの復号に必要な鍵(以下、コンテンツ鍵Kcoと称する)等を、共通鍵暗号方式であるDES(Data Encryption Standard)等の所定の方式で暗号化し、通信部11に供給する。
【0034】
DESは、56ビットの共通鍵を用い、平文の64ビットを1ブロックとして処理する暗号方式である。DESの処理は、平文を撹拌し、暗号文に変換する部分(データ撹拌部)と、データ撹拌部で使用する鍵(拡大鍵)を共通鍵から生成する部分(鍵処理部)からなる。DESのすべてのアルゴリズムは公開されているので、ここでは、データ撹拌部の基本的な処理を簡単に説明する。
【0035】
まず、平文の64ビットは、上位32ビットのH0、および下位32ビットのL0に分割される。鍵処理部から供給された48ビットの拡大鍵K1、および下位32ビットのL0を入力とし、下位32ビットのL0をF関数で撹拌した値が算出される。F関数は、数値を所定の規則で置き換える「換字」およびビット位置を所定の規則で入れ替える「転置」の2種類の基本変換から構成されている。次に、上位32ビットのH0と、F関数の出力が排他的論理和され、その結果は下位32ビットのL1とされる。下位32ビットのL0は、上位32ビットのH1とされる。
【0036】
上位32ビットのH0および下位32ビットのL0を基に、以上の処理を16回繰り返し、得られた上位32ビットのH16および下位32ビットのL16が暗号文として出力される。復号は、暗号化に使用した共通鍵を用いて、上記の手順を逆にたどることで実現される。
【0037】
復号部14は、コンテンツ、コンテンツ鍵Kco等を共通鍵暗号方式であるDES等の所定の方式で復号する。記憶部15は、ネットワークを介して供給されたコンテンツ鍵Kcoを復号する配送用鍵Kdなどを記憶し、暗号化部13または復号部14に供給する。乱数生成部16は、コンテンツ鍵Kco等として使用される所定の桁数の乱数を発生する。データ圧縮部17は、ネットワークを介して供給されたコンテンツを、ATRAC2(Adaptive Transform Acoustic Coding 2:商標)等の所定の方式で圧縮し、暗号化部13に供給する。
【0038】
読み書き装置1に装着され、コンテンツを記憶するICメモリ2は、コンテンツ等の記憶等を制御する制御ブロック41および実際にコンテンツ等を記憶する情報記憶ブロック42からなる。制御ブロック41は、シングルチップの暗号処理専用ICで構成され、多層構造を有し、その内部のメモリセルはアルミニウム層等のダミー層に挟まれ、また、動作する電圧または周波数の幅が狭い等、外部から不正にデータが読み出せない耐タンパー性を有する。
【0039】
制御ブロック41は、通信部21、メモリコントローラ22、相互認証部23、暗号化部24、記憶部25、および復号部26からなる。通信部21は、読み書き装置1からコンテンツまたは暗号化されたコンテンツ鍵Kco等を受信し、読み書き装置1にコンテンツまたは暗号化されたコンテンツ鍵Kcoなどを送信する。メモリコントローラ22は、通信部21が受信した暗号化されたコンテンツまたはコンテンツ鍵Kco等を、情報記憶ブロック42に書き込み、また、情報記憶ブロック42に書き込まれたコンテンツ等を読み出し、通信部21等に供給する。相互認証部23は、読み書き装置1の相互認証部12と、後述する相互認証処理により、相互認証し、相互認証後、読み書き装置1との通信で、所定の期間利用される一時鍵Ktempを生成する。
【0040】
暗号化部24は、一旦、復号部26が復号したコンテンツ鍵Kcoを、保存用鍵Ksaveで暗号化し、メモリコントローラ22に供給する。復号部26は、一時鍵Ktempで暗号化されたコンテンツ鍵Kco、または保存用鍵Ksaveで暗号化されたコンテンツ鍵Kcoなどを復号し、暗号化部24または通信部21に供給する。記憶部25は、そのICメモリ2に特有の(ICメモリ2毎に、異なる)値を有する保存用鍵Ksaveなどを記憶し、暗号化部24または復号部26に供給する。
【0041】
情報記憶ブロック42は、EEPROM(Electrically Erasable Programmable Read Only Memory)、フラッシュメモリ、強誘電体メモリなどの電気的に記憶内容を書き換えできる、汎用の不揮発性メモリで構成され、データ検索用テーブル31、識別情報テーブル32、暗号化データ33、および非暗号化データ34が記憶される。データ検索用テーブル31には、暗号化データ33、および非暗号化データ34として記憶されている情報の内容とその記憶位置を表すデータが記憶されている。識別情報テーブル32には、記憶されている情報の内容が、暗号化されているか否かを示すデータが記憶される。暗号化データ33としては、暗号化されたコンテンツ、コンテンツ鍵Kcoなどが記憶されている。非暗号化データ34としては、暗号化されていない、コンテンツの使用許諾情報等が記憶される。
【0042】
図2は、読み書き装置1が、コンテンツ鍵Kcoで暗号化されたコンテンツ、および配送用鍵Kdで暗号化されたコンテンツ鍵Kcoをネットワークを介して受信し、コンテンツ鍵Kcoを復号し、再度、コンテンツ鍵Kcoを図3または図4で後述する相互認証の処理で共有する一時鍵Ktempで暗号化して、コンテンツ、コンテンツ鍵Kco、および所定の情報をICメモリ2に送信し、ICメモリ2がコンテンツ鍵Kcoで暗号化されたコンテンツ、保存用鍵Ksaveで暗号化されたコンテンツ鍵Kco、および所定の情報を記憶する処理を説明するフローチャートである。ステップS11において、読み書き装置1の相互認証部12は、ICメモリ2の相互認証部23と相互認証し、一時鍵Ktemp(例えば、後述する図3のステップS42,S45の連接R2‖R3)を共有する。その処理の詳細は、図3を参照して後述する。ステップS12において、記憶部15および記憶部25は、相互認証部12または相互認証部23がステップS11の相互認証処理で一時鍵Ktempを生成する。ステップS13において、読み書き装置1の復号部14は、ネットワークを介して受信した、配送用鍵Kdで暗号化されているコンテンツ鍵Kcoを、予めネットワークを介して受信し、記憶部15に記憶している配送用鍵Kdを用いて、DESなどの共通鍵暗号方式で復号する。ステップS14において、復号部14は、コンテンツ鍵Kcoと一緒に配送用鍵Kdで暗号化され、ネットワークを介して受信した使用許諾情報、料金情報、および使用回数情報などを復号し、取り出す。
【0043】
ステップS15において、暗号化部13は、ステップS14で復号されたコンテンツ鍵Kco、使用許諾情報、料金情報、および使用回数情報などを、ステップS11で共有した一時鍵Ktempで暗号化する。ステップS16において、通信部11は、コンテンツ鍵Kcoで暗号化されているコンテンツ、一時鍵Ktempで暗号化されているコンテンツ鍵Kco、一時鍵Ktempで暗号化されている使用許諾情報、一時鍵Ktempで暗号化されている料金情報、および一時鍵Ktempで暗号化されている使用回数情報などをICメモリ2の通信部21に送信し、ICメモリ2の通信部21は、それらのデータを受信する。
【0044】
ステップS17において、ICメモリ2の復号部26は、通信部21が受信した一時鍵Ktempで暗号化されているコンテンツ鍵Kco、一時鍵Ktempで暗号化されている使用許諾情報、一時鍵Ktempで暗号化されている料金情報、および一時鍵Ktempで暗号化されている使用回数情報などを、ステップS11で共有した一時鍵Ktempで復号する。ステップS18において、ICメモリ2の暗号化部24は、ステップS17で復号されたコンテンツ鍵Kcoを、予め記憶部25に記憶された保存用鍵Ksaveで暗号化する。ステップS19において、メモリコントローラ22は、保存用鍵Ksaveで暗号化されたコンテンツ鍵Kcoを情報記憶ブロック42の所定の位置に暗号化データ33として記憶させる。ステップS20において、メモリコントローラ22は、コンテンツ鍵Kcoで暗号化されているコンテンツを情報記憶ブロック42の所定の位置に暗号化データ33として記憶させる。
【0045】
ステップS21において、メモリコントローラ22は、ステップS17で復号した使用許諾情報、料金情報、および使用回数情報などを、情報記憶ブロック42の所定の位置に非暗号化データ34として記憶させる。ステップS22において、メモリコントローラ22は、コンテンツ、コンテンツ鍵Kco、使用許諾情報、料金情報、および使用回数情報などの記憶した位置を示す情報をデータ検索用テーブル31に記憶させ、コンテンツ、コンテンツ鍵Kco、使用許諾情報、料金情報、および使用回数情報などそれぞれが暗号化されているか否かを示す情報を識別情報テーブル32に記憶させる。
【0046】
以上のように、読み書き装置1は、コンテンツおよびコンテンツに付随する情報を、必要に応じて暗号化し、ICメモリ2に記憶させる。
【0047】
図3は、図2のステップS11に対応する、1つの共通鍵で、共通鍵暗号であるDESを用いる、読み書き装置1の相互認証部12とICメモリ2の相互認証部23との相互認証の動作を説明するフローチャートである。ステップS31において、読み書き装置1の相互認証部12は、64ビットの乱数R1を生成する(乱数生成部16が生成するようにしてもよい)。ステップS32において、読み書き装置1の相互認証部12は、乱数R1を、記憶部15に予め記憶している共通鍵Kcで暗号化する(暗号化部13で暗号化するようにしてもよい)。ステップS33において、読み書き装置1の相互認証部12は、通信部11を介して暗号化された乱数R1をICメモリ2の相互認証部23に送信する。
【0048】
ステップS34において、ICメモリ2の相互認証部23は、受信した乱数R1を、記憶部25に予め記憶している共通鍵Kcで復号する。ステップS35において、ICメモリ2の相互認証部23は、32ビットの乱数R2を生成する。ステップS36において、ICメモリ2の相互認証部23は、ステップS34で復号した64ビットの乱数R1の下位32ビットを乱数R2で入れ替え、連接R1H‖R2を生成する。なお、ここでRiHは、Riの上位ビットを表し、A‖Bは、AとBの連接(nビットのAの下位に、mビットのBを結合して、(n+m)ビットとしたもの)を表す。ステップS37において、ICメモリ2の相互認証部23は、連接R1H‖R2を共通鍵Kcで暗号化する。ステップS38において、ICメモリ2の相互認証部23は、通信部21を介して、暗号化した連接R1H‖R2を読み書き装置1に送信する。
【0049】
ステップS39において、読み書き装置1の相互認証部12は、受信した連接R1H‖R2を共通鍵Kcで復号する。ステップS40において、読み書き装置1の相互認証部12は、復号したR1H‖R2の上位32ビットR1Hを調べ、ステップS31で生成した、乱数R1の上位32ビットR1Hと一致すれば、ICメモリ2が正当なメモリであることを認証する。生成した乱数R1Hと、受信したR1Hが一致しないとき、処理は終了される。
【0050】
両者が一致するとき、ステップS41において、読み書き装置1の相互認証部12は、32ビットの乱数R3を生成する。ステップS42において、読み書き装置1の相互認証部12は、受信し、復号した32ビットの乱数R2を上位に設定し、生成した乱数R3をその下位に設定し、連接R2‖R3を生成する。ステップS43において、読み書き装置1の相互認証部12は、連接R2‖R3を共通鍵Kcで暗号化する。ステップS44において、読み書き装置1の相互認証部12は、暗号化された連接R2‖R3をICメモリ2の相互認証部23に送信する。
【0051】
ステップS45において、ICメモリ2の相互認証部23は、通信部21を介して、受信した連接R2‖R3を共通鍵Kcで復号する。ステップS46において、ICメモリ2の相互認証部23は、復号した連接R2‖R3の上位32ビットを調べ、ステップS35で生成した乱数R2と一致すれば、読み書き装置1を正当な読み書き装置として認証し、一致しなければ、不正な読み書き装置として、処理を終了する。
【0052】
以上のように、ICメモリ2の相互認証部23と読み書き装置1の相互認証部12は、相互認証する。相互認証に利用された乱数の連接R2‖R3は、その相互認証に続く処理にだけ有効な一時鍵Ktempとして利用される。
【0053】
図4は、図2のステップS11に対応して、公開鍵暗号である、160ビット長の楕円曲線暗号を用いて行われる、読み書き装置1の相互認証部12とICメモリ2の相互認証部23との相互認証の動作を説明するフローチャートである。ステップS51において、読み書き装置1の相互認証部12は、64ビットの乱数R1を生成する。ステップS52において、読み書き装置1の相互認証部12は、読み書き装置1の名前、自分自身の公開鍵Kprw、および認証局の署名を含む証明書(認証局から予め取得しておいたもの)、並びに乱数R1をICメモリ2の相互認証部23に送信する。
【0054】
署名は、データまたは後述する証明書に付け、改竄のチェックおよび作成者認証をするためのデータであり、送信したいデータを基にハッシュ関数でハッシュ値をとり、これを公開鍵暗号の秘密鍵で暗号化して作成される。
【0055】
ハッシュ関数および署名の照合について説明する。ハッシュ関数は、送信したい所定のデータを入力とし、所定のビット長のデータに圧縮し、ハッシュ値として出力する関数である。ハッシュ関数は、ハッシュ値(出力)から入力を予測することが難しく、ハッシュ関数に入力されたデータの1ビットが変化したとき、ハッシュ値の多くのビットが変化し、また、同一のハッシュ値を持つ入力データを探し出すことが困難である特徴を有する。
【0056】
署名とデータを受信した受信者は、署名を公開鍵暗号の公開鍵で復号し、その結果(ハッシュ値)を得る。さらに受信されたデータのハッシュ値が計算され、計算されたハッシュ値と、署名を復号して得られたハッシュ値とが、等しいか否かが判定される。送信されたデータのハッシュ値と復号したハッシュ値が等しいと判定された場合、受信したデータは改竄されておらず、公開鍵に対応した秘密鍵を保持する送信者から送信されたデータであることがわかる。署名のハッシュ関数としては、MD4,MD5,SHA-1などが用いられる。
【0057】
次に公開鍵暗号について説明する。暗号化および復号で同一の鍵(共通鍵)を使用する共通鍵暗号方式に対し、公開鍵暗号方式は、暗号化に使用する鍵と復号するときの鍵が異なる。公開鍵暗号を用いる場合、鍵の一方を公開しても他方を秘密に保つことができ、公開しても良い鍵は、公開鍵と称され、他方の秘密に保つ鍵は、秘密鍵と称される。
【0058】
公開鍵暗号の他の例である楕円曲線暗号について、簡単に説明する。楕円曲線y^2=x^3+ax+b上の、ある点をBとする。楕円曲線上の点の加算を定義し、nBは、Bをn回加算した結果を表す。同様に、減算も定義する。BとnBからnを算出することは、困難であることが証明されている。BとnBを公開鍵とし、nを秘密鍵とする。乱数rを用いて、暗号文C1およびC2は、平文Mから、公開鍵で式(1)および式(2)の処理で算出される。
C1=M+rnB (1)
C2=rB (2)
【0059】
暗号文C1およびC2は、式(3)の処理で平文Mに、復号される。
M=C1-nC2 (3)
【0060】
暗号を復号できるのは、秘密鍵nを有するものだけである。以上のように、楕円曲線は、暗号化に使用する鍵と復号するときの鍵を、異なる鍵とすることができる。
【0061】
また、公開鍵暗号の中で代表的なRSA(Rivest-Shamir-Adleman)暗号についても、簡単に説明する。まず、2つの十分に大きな素数であるpおよびqを求め、さらにpとqの積であるnを求める。(p-1)と(q-1)の最小公倍数Lを算出し、更に、3以上L未満で、かつ、Lと互いに素な数eを求める(すなわち、eとLを共通に割り切れる数は、1のみである)。
【0062】
次に、Lを法とする乗算に関するeの乗法逆元dを求める。すなわち、d,e、およびLの間には、ed=1 mod Lが成立し、dはユークリッドの互除法で算出できる。このとき、nとeが公開鍵とされ、p,q,およびdが、秘密鍵とされる。
【0063】
暗号文Cは、平文Mから、式(4)の処理で算出される。
C=M^e mod n (4)
【0064】
暗号文Cは、式(5)の処理で平文Mに、復号される。
M=C^d mod n (5)
【0065】
証明は省略するが、RSA暗号で平文を暗号文に変換して、それが復号できるのは、フェルマーの小定理に根拠をおいており、式(6)が成立するからである。
M=C^d=(M^e)^d=M^(ed) mod n (6)
【0066】
秘密鍵pとqを知っているならば、公開鍵eから秘密鍵dは算出できるが、公開鍵nの素因数分解が計算量的に困難な程度に公開鍵nの桁数を大きくすれば、公開鍵nを知るだけでは、公開鍵eから秘密鍵dは計算できず、復号できない。以上のように、楕円曲線と同様に、RSA暗号でも、暗号化に使用する鍵と復号するときの鍵を、異なる鍵とすることができる。
【0067】
ステップS53において、ICメモリ2の相互認証部23は、受信した証明書の署名(認証局の秘密鍵Kscaで暗号化されている)を、予め取得しておいた認証局の公開鍵Kpcaで復号し、平文のまま格納された読み書き装置1の公開鍵Kprwおよび読み書き装置1の名前を取り出す。証明書が認証局が発行した適正なものであれば、証明書の署名を復号することが可能であり、復号して得られた公開鍵Kprwおよび読み書き装置1の名前(ID)のハッシュ値は、平文のまま証明書に格納された読み書き装置1の公開鍵Kprwおよび読み書き装置1の名前(ID)にハッシュ関数を適用し、得られたハッシュ値と一致する。これにより、公開鍵Kprwが改竄されたものでない適正なものであることが認証される。署名を復号出来なかったり、できてもハッシュ値が一致しないときには、適正な公開鍵でないか、適正な読み書き装置でないことになる。この時処理は終了される。
【0068】
適正な認証結果が得られたとき、ステップS54において、ICメモリ2の相互認証部23は、64ビットの乱数R2を生成する。ステップS55において、ICメモリ2の相互認証部23は、乱数R1および乱数R2の連接R1‖R2を生成する。ステップS56において、ICメモリ2の相互認証部23は、連接R1‖R2を自分自身の秘密鍵Ksicで暗号化する。ステップS57において、ICメモリ2の相互認証部23は、連接R1‖R2を、ステップS53で取得した読み書き装置1の公開鍵Kprwで暗号化する。ステップS58において、ICメモリ2の相互認証部23は、秘密鍵Ksicで暗号化された連接R1‖R2、公開鍵Kprwで暗号化された連接R1‖R2、および自分自身の公開鍵Kpicを含む証明書(認証局から予め取得しておいたもの)を読み書き装置1の相互認証部12に送信する。
【0069】
ステップS59において、読み書き装置1の相互認証部12は、受信した証明書の署名を予め取得しておいた認証局の公開鍵Kpcaで復号し、正しければ証明書から公開鍵Kpicを取り出す。この場合の処理は、ステップS53における場合と同様であるので、その説明は省略する。ステップS60において、読み書き装置1の相互認証部12は、ICメモリ2の秘密鍵Ksicで暗号化されている連接R1‖R2を、ステップS59で取得した公開鍵Kpicで復号する。ステップS61において、読み書き装置1の相互認証部12は、自分自身の公開鍵Kprwで暗号化されている連接R1‖R2を、自分自身の秘密鍵Ksrwで復号する。ステップS62において、読み書き装置1の相互認証部12は、ステップS60で復号された連接R1‖R2と、ステップS61で復号された連接R1‖R2を比較し、一致すればICメモリ2を適正なものとして認証し、一致しなければ、不適正なものとして、処理を終了する。
【0070】
適正な認証結果が得られたとき、ステップS63において、読み書き装置1の相互認証部12は、64ビットの乱数R3を生成する。ステップS64において、読み書き装置1の相互認証部12は、ステップS60で取得した乱数R2および生成した乱数R3の連接R2‖R3を生成する。ステップS65において、読み書き装置1の相互認証部12は、連接R2‖R3を、ステップS59で取得した公開鍵Kpicで暗号化する。ステップS66において、読み書き装置1の相互認証部12は、暗号化した連接R2‖R3をICメモリ2の相互認証部23に送信する。
【0071】
ステップS67において、ICメモリ2の相互認証部23は、暗号化された連接R2‖R3を自分自身の秘密鍵Ksicで復号する。ステップS68において、ICメモリ2の相互認証部23は、復号した乱数R2が、ステップS54で生成した乱数R2(暗号化する前の乱数R2)と一致すれば、読み書き装置1を適正な読み書き装置として認証し、一致しなけば、不適正な読み書き装置として、処理を終了する。
【0072】
以上のように、公開鍵暗号方式を用いても、ICメモリ2の相互認証部23と読み書き装置1の相互認証部12は、相互認証できる。共通鍵暗号を使用した場合と同様に、相互認証に利用された乱数の連接R2‖R3は、その相互認証に続く処理にだけ有効な一時鍵Ktempとして利用される。
【0073】
図5は、読み書き装置1が、ネットワークを介して受信した平文のコンテンツを圧縮し、生成したコンテンツ鍵Kcoで暗号化し、コンテンツ鍵Kcoを図3または図4で後述する相互認証の処理で共有する一時鍵Ktempで、暗号化して、コンテンツおよびコンテンツ鍵KcoをICメモリ2に送信し、ICメモリ2がコンテンツ鍵Kcoで暗号化されたコンテンツ、および保存用鍵Ksaveで暗号化されたコンテンツ鍵Kcoを記憶する処理を説明するフローチャートである。ステップS71において、読み書き装置1の相互認証部11は、ICメモリ2の相互認証部21と相互認証し、一時鍵Ktempを共有する。相互認証の処理は、図3および図4を使用して説明した処理と同様であるので、詳細な説明は省略する。ステップS72において、記憶部15および記憶部25は、一時鍵Ktempを生成する。
【0074】
ステップS73において、データ圧縮部17は、ATRAC2等の方式で、ネットワークを介して受信した平文のコンテンツを圧縮する。ステップS74において、乱数生成部16は、コンテンツ鍵Kcoとして用いる所定の桁数の乱数を生成し、暗号化部13に供給する。ステップS75において、暗号化部13は、DES等の所定の方式により、コンテンツを、ステップS74で生成したコンテンツ鍵Kcoで暗号化する。ステップS76において、暗号化部13は、DES等の所定の方式により、コンテンツ鍵KcoをステップS71で共有した一時鍵Ktempで暗号化する。ステップS77において、通信部11は、暗号化したコンテンツおよび暗号化したコンテンツ鍵Kcoを、ICメモリ2の通信部21に送信し、ICメモリ2の通信部21は、暗号化したコンテンツおよび暗号化したコンテンツ鍵Kcoを受信する。
【0075】
ステップS78において、ICメモリ2の復号部26は、通信部21で受信したコンテンツ鍵Kcoを一時鍵Ktempで復号する。ステップS79において、暗号化部24は、ステップS78で復号したコンテンツ鍵Kcoを、予め記憶部25が記憶している保存用鍵Ksaveで暗号化する。ステップS80において、メモリコントローラ22は、暗号化したコンテンツ鍵Kcoを情報記憶ブロック42に暗号化データ33として記憶させる。ステップS81において、メモリコントローラ22は、ステップS78にて通信部21で受信した、コンテンツ鍵Kcoで暗号化されているコンテンツを情報記憶ブロック42に暗号化データ33として記憶させる。ステップS82において、メモリコントローラ22は、コンテンツ、およびコンテンツ鍵Kcoの記憶する位置を示す情報を、データ検索用テーブル31に記憶させ、コンテンツ、およびコンテンツ鍵Kcoが暗号化されていることを示す情報を識別情報テーブル32に記憶させる。
【0076】
以上のように、読み書き装置1は、ネットワークを介して受信した平文のコンテンツを圧縮し、暗号化して、ICメモリ2に記憶させる。
【0077】
図6は、読み書き装置1が、コンテンツ鍵Kcoで暗号化されたコンテンツ、および配送用鍵Kdで暗号化されたコンテンツ鍵Kcoをネットワークを介して受信し、コンテンツ鍵Kcoを復号し、再度、コンテンツ鍵KcoをICメモリ2が記憶する保存用鍵Ksaveで暗号化して、コンテンツ、コンテンツ鍵Kco、および所定の情報をICメモリ2に送信し、ICメモリ2がコンテンツ鍵Kcoで暗号化されたコンテンツ、保存用鍵Ksaveで暗号化されたコンテンツ鍵Kco、および所定の情報を記憶する処理を説明するフローチャートである。ステップS91において、読み書き装置1の相互認証部11は、ICメモリ2の相互認証部21と相互認証し、一時鍵Ktempを共有する。相互認証の処理は、図3および図4を使用して説明した処理と同様であるので、詳細な説明は省略する。ステップS92において、記憶部15および記憶部25は、一時鍵Ktempを生成する。ステップS93において、ICメモリ2の暗号化部24は、予め記憶部25が記憶している保存用鍵Ksaveを一時鍵Ktempで暗号化する。ステップS94において、通信部21は、読み書き装置1の通信部11に暗号化した保存用鍵Ksaveを送信し、読み書き装置1の通信部11は、暗号化した保存用鍵Ksaveを受信する。
【0078】
ステップS95において、読み書き装置1の復号部14は、通信部11で受信した保存用鍵Ksaveを一時鍵Ktempで復号する。ステップS96において、復号部14は、ネットワークを介して受信したコンテンツ鍵Kcoを、予め記憶部15が記憶する配送用鍵Kdで復号する。ステップS97において、復号部14は、コンテンツ鍵Kcoと共にネットワークを介して受信した、配送用鍵Kdで暗号化されている使用許諾情報、料金情報、および使用回数情報などを復号し、取り出す。ステップS98において、暗号化部13は、ステップS96で復号したコンテンツ鍵Kco、ステップS97で復号した使用許諾情報、ステップS97で復号した料金情報、およびステップS97で復号した使用回数情報などを、ステップS95で復号した保存用鍵Ksaveで暗号化する。ステップS99において、通信部11は、コンテンツ鍵Kcoで暗号化されたコンテンツ、保存用鍵Ksaveで暗号化されたコンテンツ鍵Kco、保存用鍵Ksaveで暗号化された使用許諾情報、保存用鍵Ksaveで暗号化された料金情報、および保存用鍵Ksaveで暗号化された使用回数情報などをICメモリ2の通信部21に送信し、ICメモリ2の通信部21は、これらのデータを受信する。
【0079】
ステップS100において、ICメモリ2の復号部26は、通信部21で受信した保存用鍵Ksaveで暗号化された使用許諾情報、保存用鍵Ksaveで暗号化された料金情報、および保存用鍵Ksaveで暗号化された使用回数情報などを、予め記憶部25が記憶する保存用鍵Ksaveで復号する。ステップS101において、メモリコントローラ22は、復号した使用許諾情報、料金情報、および使用回数情報などを、情報記憶ブロック42に非暗号化データ34として記憶させる。ステップS102において、メモリコントローラ22は、ステップS99で受信した、保存用鍵Ksaveで暗号化されたコンテンツ鍵Kcoを情報記憶ブロック42に暗号化データ33として記憶させる。ステップS103において、メモリコントローラ22は、コンテンツ鍵Kcoで暗号化されたコンテンツを情報記憶ブロック42に暗号化データ33として記憶させる。ステップS104において、メモリコントローラ22は、コンテンツ、コンテンツ鍵Kco、使用許諾情報、料金情報、および使用回数情報などの記憶した位置を示す情報をデータ検索用テーブルに記録させ、コンテンツ、コンテンツ鍵Kco、使用許諾情報、料金情報、および使用回数情報などがそれぞれ暗号化されているか否かを示す情報を識別情報テーブルに記憶させる。
【0080】
以上のように、読み書き装置1は、ICメモリ2が予め記憶する保存用鍵Ksaveで、コンテンツおよびコンテンツに付随する情報を暗号化し、ICメモリ2に記憶させる。なお、使用許諾情報、料金情報および使用回数情報等は、一時鍵Ktempで暗号化して送っても良い。
【0081】
図7は、読み書き装置1が、ネットワークを介して受信した平文のコンテンツを圧縮し、生成したコンテンツ鍵Kcoで暗号化し、コンテンツ鍵KcoをICメモリ2が記憶する保存用鍵Ksaveで暗号化して、コンテンツおよびコンテンツ鍵KcoをICメモリ2に送信し、ICメモリ2がコンテンツ鍵Kcoで暗号化されたコンテンツ、および保存用鍵Ksaveで暗号化されたコンテンツ鍵Kcoを記憶する処理を説明するフローチャートである。ステップS111において、読み書き装置1の相互認証部11は、ICメモリ2の相互認証部21と相互認証し、一時鍵Ktempを共有する。相互認証の処理は、図3および図4を使用して説明した処理と同様であるので、詳細な説明は省略する。ステップS112において、記憶部15および記憶部25は、相互認証部12または相互認証部23が生成した、図3のステップS42,S45の連接R2‖R3(または、図4のステップS64,S67の連接R2‖R3)を一時鍵Ktempとして記憶する。ステップS113において、暗号部24は、一時鍵Ktempを生成する。ステップS114において、通信部21は、一時鍵Ktempで暗号化された保存用鍵Ksaveを読み書き装置1の通信部11に送信し、読み書き装置1の通信部11は、一時鍵Ktempで暗号化された保存用鍵Ksaveを受信する。
【0082】
ステップS115において、復号部14は、通信部11が受信した保存用鍵Ksaveを一時鍵Ktempで復号する。ステップS116において、データ圧縮部17は、ATRAC2等の所定の方式で平文のコンテンツを圧縮する。ステップS117において、乱数生成部16は、コンテンツ鍵Kcoとなる所定の桁数の乱数を生成し、暗号化部13に供給する。ステップS118において、暗号化部13は、DES等の所定の方式により、ネットワークを介して受信した平文のコンテンツをコンテンツ鍵Kcoで暗号化する。ステップS119において、暗号化部13は、コンテンツ鍵Kcoを保存用鍵Ksaveで暗号化する。ステップS120において、通信部11は、コンテンツ鍵Kcoで暗号化したコンテンツおよび保存用鍵Ksaveで暗号化されたコンテンツ鍵KcoをICメモリ2の通信部21に送信し、ICメモリ2の通信部21は、コンテンツ鍵Kcoで暗号化したコンテンツおよび保存用鍵Ksaveで暗号化されたコンテンツ鍵Kcoを受信する。
【0083】
ステップS121において、メモリコントローラ22は、通信部21で受信した、保存用鍵Ksaveで暗号化されたコンテンツ鍵Kcoを情報記憶ブロック42に暗号化データ33として記憶させる。ステップS122において、メモリコントローラ22は、通信部21で受信した、コンテンツ鍵Kcoで暗号化したコンテンツを情報記憶ブロック42に暗号化データ33として記憶させる。ステップS123において、メモリコントローラ22は、コンテンツ、およびコンテンツ鍵Kcoの記憶している位置を示す情報をデータ検索用テーブル31に記憶させ、コンテンツ、およびコンテンツ鍵Kcoが暗号化されていることを示す情報を識別情報テーブル32に記憶させる。
【0084】
以上のように、読み書き装置1は、ネットワークを介して受信した平文のコンテンツを圧縮し、ICメモリ2が記憶する保存用鍵Ksaveで暗号化して、ICメモリ2に記憶させる。なお、使用許諾情報、料金情報および使用回数情報等は、一時鍵Ktempで暗号化して送っても良い。
【0085】
次に、ICメモリ2に記憶されたコンテンツを読み出す処理を説明する。図8は、ICメモリ2に記憶されたデータを読み出す処理を説明するフローチャートである。ステップS131において、ICメモリ2のメモリコントローラ22は、識別情報テーブル32のデータから、読み出しするデータが暗号化されているか否かを判定し、読み出しするデータが暗号化されていると判定された場合、ステップS132に進み、読み書き装置1およびICメモリ2は、復号の処理を実行し、処理を終了する。ステップS11の復号の処理は、図9または図10のフローチャートを用いて、その詳細を後述する。
【0086】
ステップS131において、読み出しするデータが暗号化されていないと判定された場合、メモリコントローラ22は、所定のデータを情報記憶ブロック42から読み出し、通信部21を介して、読み書き装置1の通信部11に送信し、処理を終了する。
【0087】
図9は、図8のステップS132に対応する、復号の処理を説明するフローチャートである。ステップS141において、読み書き装置1の相互認証部12は、ICメモリ2の相互認証部23と相互認証し、一時鍵Ktempを共有する。相互認証の処理は、図3および図4を使用して説明した処理と同様であるので、詳細な説明は省略する。ステップS142において、記憶部15および記憶部25は、一時鍵Ktempを生成する。ステップS143において、メモリコントローラ22は、情報記憶ブロック42から、データ検索用テーブルを参照して、保存用鍵Ksaveで暗号化されたコンテンツ鍵Kcoを読み出す。ステップS144において、復号部26は、保存用鍵Ksaveで暗号化されたコンテンツ鍵Kcoを、記憶部25が記憶する保存用鍵Ksaveで復号する。
【0088】
ステップS145において、暗号化部24は、復号したコンテンツ鍵Kcoを、ステップS142で生成した一時鍵Ktempで暗号化する。ステップS146において、メモリコントローラ22は、情報記憶ブロック42から、データ検索用テーブルを参照して、コンテンツ鍵Kcoで暗号化されたコンテンツを読み出す。ステップS147において、通信部21は、コンテンツ鍵Kcoで暗号化されたコンテンツおよび一時鍵Ktempで暗号化されたコンテンツ鍵Kcoを読み書き装置1の通信部11に送信し、読み書き装置1の通信部11は、コンテンツ鍵Kcoで暗号化されたコンテンツおよび一時鍵Ktempで暗号化されたコンテンツ鍵Kcoを受信する。
【0089】
ステップS148において、読み書き装置1の復号部14は、通信部11が受信したコンテンツ鍵Kcoを、ステップS142で生成した一時鍵Ktempで復号する。ステップS149において、復号部14は、コンテンツをコンテンツ鍵Kcoで復号する。
【0090】
以上のように、読み書き装置1は、ICメモリ2に、暗号化され記憶されたコンテンツを復号する。
【0091】
図10は、図8のステップS132に対応する、他の復号の処理を説明するフローチャートである。ステップS151およびステップS152の処理は、図9のステップS141およびステップS142と、それぞれ同様の処理であるのでその説明は省略する。ステップS153において、暗号化部24は、記憶部25が記憶する保存用鍵Ksaveを一時鍵Ktempで暗号化する。ステップS154において、メモリコントローラ22は、情報記憶ブロック42から、データ検索用テーブルを参照して、保存用鍵Ksaveで暗号化されたコンテンツ鍵Kco、およびコンテンツ鍵Kcoで暗号化されたコンテンツを読み出す。ステップS155において、通信部21は、一時鍵Ktempで暗号化された暗号化保存用鍵Ksave、保存用鍵Ksaveで暗号化されたコンテンツ鍵Kco、およびコンテンツ鍵Kcoで暗号化されたコンテンツを読み書き装置1の通信部11に送信し、読み書き装置1の通信部11は、それらのデータを受信する。
【0092】
ステップS156において、読み書き装置1の復号部14は、ステップS155で受信した、一時鍵Ktempで暗号化された保存用鍵Ksaveを記憶部15が記憶する一時鍵Ktempで復号する。ステップS157において、復号部14は、ステップS155で受信した、保存用鍵Ksaveで暗号化されたコンテンツ鍵Kcoを保存用鍵Ksaveで復号する。ステップS158において、復号部14は、ステップS155で受信した、コンテンツ鍵Kcoで暗号化されたコンテンツをコンテンツ鍵Kcoで復号する。
【0093】
このように、読み書き装置1は、ICメモリ2に記憶された保存用鍵Ksaveを用いて、ICメモリ2に記憶されたコンテンツを復号する。
【0094】
以上のように、コンテンツ鍵KcoがICメモリ2毎に異なる保存用鍵Ksaveで暗号化さるので、コンテンツの不正な複製は防止され、かつ、コンテンツが汎用メモリに記憶されるので、ICメモリ2は安価に提供できる。
【0095】
なお、共通鍵暗号方式は、ブロック暗号であるDESとして説明したが、NTT(商標)が提案するFEAL、IDEA(International Data Encription Algorithm)、または1ビット乃至数ビット単位で暗号化するストリーム暗号などでもよい。
【0096】
また、コンテンツおよびコンテンツ鍵Kcoの暗号化は、共通鍵暗号方式を利用するとして説明したが、公開鍵暗号方式で暗号化してもよい。
【0097】
なお、本明細書において、システムとは、複数の装置により構成される装置全体を表すものとする。
【0098】
また、上記したような処理を行うコンピュータプログラムをユーザに提供する提供媒体としては、磁気ディスク、CD-ROM、固体メモリなどの記録媒体の他、ネットワーク、衛星などの通信媒体を利用することができる。
【0099】
【発明の効果】
請求項1に記載のデータ処理装置および請求項3に記載のデータ処理方法によれば、コンテンツ鍵を復号するための配送鍵を記憶し、配送鍵によってコンテンツ鍵を復号し、記憶媒体との相互認証を行うとともに、記憶媒体と共有するための一時鍵を生成し、復号されたコンテンツ鍵を一時鍵によって暗号化し、少なくとも、一時鍵によって暗号化したコンテンツ鍵を記憶媒体に送信するようにしたので、安価な汎用の半導体メモリを使用して、不正な情報の複製を防止することができるようになる。
【0100】
請求項4に記載のデータ処理装置および請求項5に記載のデータ処理方法によれば、コンテンツ鍵を復号するための配送鍵を記憶し、配送鍵によって暗号化されたコンテンツ鍵を復号し、記憶媒体との相互認証を行うとともに、記憶媒体と共有するための一時鍵を生成し、記憶媒体から一時鍵によって暗号化された保存鍵を受信し、一時鍵によって保存鍵を復号し、復号されたコンテンツ鍵を保存鍵によって暗号化し、少なくとも、保存鍵で暗号化したコンテンツ鍵を記憶媒体に送信するようにしたので、安価な汎用の半導体メモリを使用して、不正な情報の複製を防止することができるようになる。
【0103】
請求項6に記載のデータ復号処理装置および請求項7に記載のデータ復号処理方法によれば、記憶媒体と相互認証を行うともに、記憶媒体と共有するための一時鍵を生成し、記憶媒体から一時鍵によって暗号化された保存鍵を受信し、一時鍵によって保存鍵を復号し、記憶媒体から保存鍵によって暗号化されたコンテンツ鍵を読み出し、保存鍵によってコンテンツ鍵を復号し、コンテンツ鍵によってコンテンツを復号するようにしたので、安価な汎用の半導体メモリを使用して、不正な情報の複製を防止することができるようになる。
【図面の簡単な説明】
【図1】本発明に係る情報処理装置および情報記録媒体の一実施の形態の構成を示すブロック図である。
【図2】ネットワークを介して受信したコンテンツおよびコンテンツ鍵Kcoを記憶する処理を説明するフローチャートである。
【図3】共通鍵暗号方式で鍵を2つ使用するときの相互認証の処理を説明するフローチャートである。
【図4】公開鍵暗号方式を使用するときの相互認証の処理を説明するフローチャートである。
【図5】ネットワークを介して受信したコンテンツを圧縮して記憶する処理を説明するフローチャートである。
【図6】ネットワークを介して受信したコンテンツを記憶する他の処理を説明するフローチャートである。
【図7】ネットワークを介して受信したコンテンツを記憶する他の処理を説明するフローチャートである。
【図8】 ICメモリ2に記憶されたデータを読み出す処理を説明するフローチャートである。
【図9】復号の処理を説明するフローチャートである。
【図10】復号の他の処理を説明するフローチャートである。
【符号の説明】
1 読み書き装置, 2 ICメモリ, 11 通信部, 12 相互認証部,13 暗号化部, 14 復号部, 16 乱数生成部, 19 情報記憶ブロック, 23 相互認証部, 25 記憶部
Claims (7)
- コンテンツ鍵によってコンテンツを暗号化し、少なくとも前記コンテンツ鍵を記憶媒体に記憶するデータ処理装置において、
前記コンテンツ鍵を復号するための配送鍵を記憶する記憶手段と、
前記配送鍵によって前記コンテンツ鍵を復号する復号手段と、
前記記憶媒体との相互認証を行うとともに、前記記憶媒体と共有するための一時鍵を生成する相互認証手段と、
前記復号手段で復号された前記コンテンツ鍵を前記一時鍵によって暗号化する暗号化手段と、
少なくとも、前記一時鍵によって暗号化した前記コンテンツ鍵を前記記憶媒体に送信する送信手段と
を備えることを特徴とするデータ処理装置。 - 前記一時鍵は、前記コンテンツ鍵を暗号化するだけでなく、前記コンテンツ鍵で暗号化された使用許諾情報、料金情報、または使用回数情報も暗号化する
ことを特徴とする請求項1に記載のデータ処理装置。 - 記憶手段、復号手段、相互認証手段、暗号化手段、および送信手段を備えるデータ処理装置のデータ処理方法であって、コンテンツ鍵によってコンテンツを暗号化し、少なくとも前記コンテンツ鍵を記憶媒体に記憶するデータ処理方法において、
前記記憶手段により、前記コンテンツ鍵を復号するための配送鍵を記憶する記憶ステップと、
前記復号手段により、前記配送鍵によって前記コンテンツ鍵を復号する復号ステップと、
前記相互認証手段により、前記記憶媒体との相互認証を行うとともに、前記記憶媒体と共有するための一時鍵を生成する相互認証ステップと、
前記暗号化手段により、前記復号ステップで復号された前記コンテンツ鍵を前記一時鍵によって暗号化する暗号化ステップと、
前記送信手段により、少なくとも、前記一時鍵によって暗号化した前記コンテンツ鍵を前記記憶媒体に送信する送信ステップと
を含むことを特徴とするデータ処理方法。 - コンテンツ鍵によってコンテンツを暗号化し、少なくとも前記コンテンツ鍵を記憶媒体に記憶するデータ処理装置において、
前記コンテンツ鍵を復号するための配送鍵を記憶する記憶手段と、
前記配送鍵によって暗号化された前記コンテンツ鍵を復号する第1の復号手段と、
前記記憶媒体との相互認証を行うとともに、前記記憶媒体と共有するための一時鍵を生成する相互認証手段と、
前記記憶媒体から前記一時鍵によって暗号化された保存鍵を受信する受信手段と、
前記一時鍵によって前記保存鍵を復号する第2の復号手段と、
前記第1の復号手段で復号された前記コンテンツ鍵を前記保存鍵によって暗号化する暗号化手段と、
少なくとも、前記保存鍵で暗号化した前記コンテンツ鍵を前記記憶媒体に送信する送信手段と
を備えることを特徴とするデータ処理装置。 - 記憶手段、第1の復号手段、相互認証手段、受信手段、第2の復号手段、暗号化手段、および送信手段を備えるデータ処理装置のデータ処理方法であって、コンテンツ鍵によってコンテンツを暗号化し、少なくとも前記コンテンツ鍵を記憶媒体に記憶するデータ処理方法において、
前記記憶手段により、前記コンテンツ鍵を復号するための配送鍵を記憶する記憶ステップと、
前記第1の復号手段により、前記配送鍵によって暗号化された前記コンテンツ鍵を復号する第1の復号ステップと、
前記相互認証手段により、前記記憶媒体との相互認証を行うとともに、前記記憶媒体と共有するための一時鍵を生成する相互認証ステップと、
前記受信手段により、前記記憶媒体から前記一時鍵によって暗号化された保存鍵を受信する受信ステップと、
前記第2の復号手段により、前記一時鍵によって前記保存鍵を復号する第2の復号ステップと、
前記暗号化手段により、前記第1の復号ステップで復号された前記コンテンツ鍵を前記保存鍵によって暗号化する暗号化ステップと、
前記送信手段により、少なくとも、前記保存鍵で暗号化した前記コンテンツ鍵を前記記憶媒体に送信する送信ステップと
を含むことを特徴とするデータ処理方法。 - コンテンツを復号するコンテンツ鍵を記憶する記憶媒体から前記コンテンツ鍵を受信し、当該コンテンツ鍵で前記コンテンツを復号するデータ復号処理装置において、
前記記憶媒体と相互認証を行うともに、前記記憶媒体と共有するための一時鍵を生成する相互認証手段と、
前記記憶媒体から前記一時鍵によって暗号化された保存鍵を受信する受信手段と、
前記一時鍵によって前記保存鍵を復号する第1の復号手段と、
前記記憶媒体から前記保存鍵によって暗号化された前記コンテンツ鍵を読み出す読み出し手段と、
前記保存鍵によって前記コンテンツ鍵を復号する第2の復号手段と、
前記コンテンツ鍵によって前記コンテンツを復号する第3の復号手段と
を備えることを特徴とするデータ復号処理装置。 - 相互認証手段、受信手段、第1の復号手段、読み出し手段、第2の復号手段、および第3の復号手段を備えるデータ復号処理装置のデータ復号処理方法であって、コンテンツを復号するコンテンツ鍵を記憶する記憶媒体から前記コンテンツ鍵を受信し、当該コンテンツ鍵で前記コンテンツを復号するデータ復号処理方法において、
前記相互認証手段により、前記記憶媒体と相互認証を行うともに、前記記憶媒体と共有するための一時鍵を生成する相互認証ステップと、
前記受信手段により、前記記憶媒体から前記一時鍵によって暗号化された保存鍵を受信する受信ステップと、
前記第1の復号手段により、前記一時鍵によって前記保存鍵を復号する第1の復号ステップと、
前記読み出し手段により、前記記憶媒体から前記保存鍵によって暗号化された前記コンテンツ鍵を読み出す読み出しステップと、
前記第2の復号手段により、前記保存鍵によって前記コンテンツ鍵を復号する第2の復号ステップと、
前記第3の復号手段により、前記コンテンツ鍵によって前記コンテンツを復号する第3の復号ステップと
を含むことを特徴とするデータ復号処理方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP28108798A JP4427693B2 (ja) | 1998-10-02 | 1998-10-02 | データ処理装置および方法、並びにデータ復号処理装置および方法 |
US09/410,788 US7127612B1 (en) | 1998-10-02 | 1999-10-01 | Information processing apparatus, information processing method, information providing medium, information decryption apparatus, and information recording medium |
US11/447,260 US7734920B2 (en) | 1998-10-02 | 2006-06-06 | Information processing apparatus, information processing method, information providing medium, information decryption apparatus, and information recording medium |
US12/766,414 US8156555B2 (en) | 1998-10-02 | 2010-04-23 | Information processing apparatus, information processing method, information providing medium, information decryption apparatus, and information recording medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP28108798A JP4427693B2 (ja) | 1998-10-02 | 1998-10-02 | データ処理装置および方法、並びにデータ復号処理装置および方法 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2000115154A JP2000115154A (ja) | 2000-04-21 |
JP2000115154A5 JP2000115154A5 (ja) | 2005-11-17 |
JP4427693B2 true JP4427693B2 (ja) | 2010-03-10 |
Family
ID=17634163
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP28108798A Expired - Fee Related JP4427693B2 (ja) | 1998-10-02 | 1998-10-02 | データ処理装置および方法、並びにデータ復号処理装置および方法 |
Country Status (2)
Country | Link |
---|---|
US (3) | US7127612B1 (ja) |
JP (1) | JP4427693B2 (ja) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19906450C1 (de) * | 1999-02-16 | 2000-08-17 | Fraunhofer Ges Forschung | Verfahren und Vorrichtung zum Erzeugen eines verschlüsselten Nutzdatenstroms und Verfahren und Vorrichtung zum Entschlüsseln eines verschlüsselten Nutzdatenstroms |
GB9925227D0 (en) | 1999-10-25 | 1999-12-22 | Internet Limited | Data storage retrieval and access system |
JP4055393B2 (ja) * | 2001-10-30 | 2008-03-05 | ソニー株式会社 | データ処理装置およびその方法とプログラム |
US7773754B2 (en) * | 2002-07-08 | 2010-08-10 | Broadcom Corporation | Key management system and method |
EP1603138A1 (fr) * | 2004-04-15 | 2005-12-07 | STMicroelectronics SA | Mémoire non volatile comprenant des moyens de brouillage de la lecture de cellules mémoire |
JP2006041570A (ja) * | 2004-07-22 | 2006-02-09 | Sony Corp | 情報処理システム、情報処理装置、情報処理方法、並びにプログラム |
US8191131B2 (en) * | 2006-08-23 | 2012-05-29 | International Business Machines Corporation | Obscuring authentication data of remote user |
US8032764B2 (en) * | 2006-11-14 | 2011-10-04 | Texas Instruments Incorporated | Electronic devices, information products, processes of manufacture and apparatus for enabling code decryption in a secure mode using decryption wrappers and key programming applications, and other structures |
CN101272240B (zh) * | 2007-03-21 | 2013-01-23 | 华为技术有限公司 | 一种会话密钥的生成方法、系统和通信设备 |
TWI401583B (zh) * | 2009-08-06 | 2013-07-11 | Phison Electronics Corp | 資料擾亂/解擾亂與資料處理方法及其控制器與儲存系統 |
US8862902B2 (en) * | 2011-04-29 | 2014-10-14 | Seagate Technology Llc | Cascaded data encryption dependent on attributes of physical memory |
US10230762B2 (en) * | 2012-08-31 | 2019-03-12 | Jpmorgan Chase Bank, N.A. | System and method for sharing information in a private ecosystem |
US9734091B2 (en) * | 2014-08-16 | 2017-08-15 | Accenture Global Services Limited | Remote load and update card emulation support |
US10992453B2 (en) * | 2016-05-18 | 2021-04-27 | International Business Machines Corporation | System architecture for encrypting external memory |
JP6444359B2 (ja) * | 2016-11-17 | 2018-12-26 | Kddi株式会社 | 通信システム、通信装置、通信方法、及びプログラム |
US10923442B2 (en) * | 2017-03-10 | 2021-02-16 | Drexel University | Protecting analog circuits with parameter biasing obfuscation |
CN110995685B (zh) * | 2019-11-26 | 2022-07-19 | 中国银联股份有限公司 | 数据的加解密方法、装置、系统及存储介质 |
CN112929325B (zh) * | 2019-12-06 | 2023-08-04 | 阿里巴巴集团控股有限公司 | 信息处理方法、系统、电子设备和可读存储介质 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4238854A (en) * | 1977-12-05 | 1980-12-09 | International Business Machines Corporation | Cryptographic file security for single domain networks |
US4799061A (en) * | 1985-11-18 | 1989-01-17 | International Business Machines Corporation | Secure component authentication system |
JPH0575598A (ja) | 1991-09-18 | 1993-03-26 | Matsushita Electric Ind Co Ltd | 鍵データ共有装置 |
JPH06289782A (ja) | 1993-04-07 | 1994-10-18 | Matsushita Electric Ind Co Ltd | 相互認証方法 |
JPH07123086A (ja) | 1993-10-27 | 1995-05-12 | Nippon Telegr & Teleph Corp <Ntt> | Icカードを利用した著作物通信管理システム |
JPH08186667A (ja) | 1995-01-05 | 1996-07-16 | Matsushita Electric Ind Co Ltd | デジタル情報記録システム |
US5758069A (en) * | 1996-03-15 | 1998-05-26 | Novell, Inc. | Electronic licensing system |
JP3272283B2 (ja) * | 1997-11-14 | 2002-04-08 | 富士通株式会社 | 電子データ保管装置 |
FR2781918B1 (fr) * | 1998-07-31 | 2000-10-06 | St Microelectronics Sa | Memoire rom a correction par redondance |
-
1998
- 1998-10-02 JP JP28108798A patent/JP4427693B2/ja not_active Expired - Fee Related
-
1999
- 1999-10-01 US US09/410,788 patent/US7127612B1/en not_active Expired - Fee Related
-
2006
- 2006-06-06 US US11/447,260 patent/US7734920B2/en not_active Expired - Fee Related
-
2010
- 2010-04-23 US US12/766,414 patent/US8156555B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US7127612B1 (en) | 2006-10-24 |
US20100205440A1 (en) | 2010-08-12 |
US7734920B2 (en) | 2010-06-08 |
US20060236107A1 (en) | 2006-10-19 |
US8156555B2 (en) | 2012-04-10 |
JP2000115154A (ja) | 2000-04-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6859535B1 (en) | Digital content protection system | |
US8156555B2 (en) | Information processing apparatus, information processing method, information providing medium, information decryption apparatus, and information recording medium | |
US8712046B2 (en) | Cryptographic key split combiner | |
US7499551B1 (en) | Public key infrastructure utilizing master key encryption | |
KR100683342B1 (ko) | 디지털 데이터 기록장치, 디지털 데이터 메모리장치, 및제한정보를 포함하는 관리정보를 각 관리정보 송신/수신세션 내의 상이한 키를 이용하여 변환하는 디지털 데이터이용장치 | |
US20060195402A1 (en) | Secure data transmission using undiscoverable or black data | |
US20060177062A1 (en) | Methods for Point Compression for Jacobians of Hyperelliptic Curves | |
US6718468B1 (en) | Method for associating a password with a secured public/private key pair | |
KR20060020688A (ko) | 개선된 안전 인증 채널 | |
WO2001078298A1 (fr) | Systeme et procede de traitement d'informations | |
JPH08328962A (ja) | 端末機と、当該端末機に接続されるメモリカードからなるシステム | |
US7617402B2 (en) | Copyright protection system, encryption device, decryption device and recording medium | |
US6704868B1 (en) | Method for associating a pass phase with a secured public/private key pair | |
JP2000113587A (ja) | 記録装置および方法、復号装置および方法、提供媒体、並びに情報記録媒体 | |
JP4731034B2 (ja) | 著作物保護システム、暗号化装置、復号化装置および記録媒体 | |
JPH09261217A (ja) | 通信装置及びその方法 | |
WO2021044465A1 (ja) | 暗号化装置、復号装置、コンピュータプログラム、暗号化方法、復号方法及びデータ構造 | |
CN113114458A (zh) | 加密证书生成、解密方法及装置、加密证书系统 | |
JPWO2002089397A1 (ja) | データ伝送方法、データ伝送装置及びデータ送信装置並びにデータ受信装置、ファイル装置 | |
JP2005051479A (ja) | 時限暗号化/復号システム | |
JP4000899B2 (ja) | 認証付暗号方法及び認証付復号方法及び装置及びプログラム及びコンピュータが読み取り可能な記録媒体 | |
JP3931497B2 (ja) | 情報転送システム | |
JPH06138820A (ja) | 暗号化装置及び暗号復号装置 | |
JP2007516633A (ja) | メッセージを符号化/復号化する方法および関連する装置 | |
JPH06236147A (ja) | セキュリテイ装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050930 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050930 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20081127 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090115 |
|
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: 20091119 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20091202 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121225 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131225 Year of fee payment: 4 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |