JP2007060627A - 再生装置および再生方法 - Google Patents

再生装置および再生方法 Download PDF

Info

Publication number
JP2007060627A
JP2007060627A JP2006144976A JP2006144976A JP2007060627A JP 2007060627 A JP2007060627 A JP 2007060627A JP 2006144976 A JP2006144976 A JP 2006144976A JP 2006144976 A JP2006144976 A JP 2006144976A JP 2007060627 A JP2007060627 A JP 2007060627A
Authority
JP
Japan
Prior art keywords
encryption
decryption
core
data
processing
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.)
Pending
Application number
JP2006144976A
Other languages
English (en)
Inventor
Kentaro Yokouchi
健太郎 横内
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Victor Company of Japan Ltd
Original Assignee
Victor Company of Japan Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Victor Company of Japan Ltd filed Critical Victor Company of Japan Ltd
Priority to JP2006144976A priority Critical patent/JP2007060627A/ja
Priority to US11/486,078 priority patent/US20070110227A1/en
Publication of JP2007060627A publication Critical patent/JP2007060627A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • G11B20/00217Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source
    • G11B20/00253Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source wherein the key is stored on the record carrier
    • G11B20/00362Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source wherein the key is stored on the record carrier the key being obtained from a media key block [MKB]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/00731Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a digital rights management system for enforcing a usage restriction
    • G11B20/00746Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a digital rights management system for enforcing a usage restriction wherein the usage restriction can be expressed as a specific number
    • G11B20/00753Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a digital rights management system for enforcing a usage restriction wherein the usage restriction can be expressed as a specific number wherein the usage restriction limits the number of copies that can be made, e.g. CGMS, SCMS, or CCI flags

Abstract

【課題】複数の暗号化方式に効率的に対処することができると共に、新しく定められた暗号化方式にも対応可能で、かつ、耐タンパー性が高いこと。
【解決手段】暗号復号部60では、媒体から読み出しプログラムメモリ62に記憶した暗号復号非コアプログラムを暗号復号非コア部63が実行して暗号復号アルゴリズムのうち秘匿性の低い非コア部分をソフトウエア処理する。また、暗号復号コア部65は、電子回路により構成されており、暗号復号アルゴリズムのうち秘匿性の高いコア部分をハードウエア処理する。
【選択図】図5

Description

本発明は、コンテンツデータが所定の暗号化アルゴリズムで暗号化された暗号化コンテンツデータと、その暗号化コンテンツデータを暗号復号するための暗号復号アルゴリズムのうち非コア部分の暗号復号非コアプログラムとが記録された媒体から暗号化コンテンツや暗号復号非コアプログラムを読み出し、コンテンツデータを再生する再生装置および再生方法に関する。
近年、デジタル記録、デジタル再生技術の普及により、音楽や画像を高品質で手軽に楽しむことができるようになってきた。さらに、レンタル制度や有料放送なども一般化している。このような環境下では、従来は表面上問題にならなかったコンテンツの違法なコピーが年々増加しており、そのためコンテンツの著作権者に与える損害が問題になっている。しかしながら、相変わらず個人によるコンテンツの違法コピーや組織的な違法コピーが後を絶たず、著作権の防衛と利権(著作権による利益)保護のための数々の提案がなされている。
また、記録方式が徐々にデジタル方式に移行しているので、コピーを繰り返しても信号の劣化が少なく、高品質の複製を容易に得ることができるので、特にデジタル情報が中心となるマルチメディア時代では、著作権保護が従来になく重要視されている。さらに、マルチメディア時代のデジタル記録・再生機器は単機能な専用の機器ばかりではなく、普及がめざましいパーソナルコンピュータ(以下、PCと略記する)が近年のプロセッサの性能向上により、アプリケーションソフトウエアによっては従来の専用機と同等の動作をさせることが可能になってきた。
例えば、CD(コンパクトディスク)プレーヤやDVD(デジタルビデオディスク又はデジタルバーサタイルディスク)プレーヤはもちろんのこと、最近ではDVDデコーダでさえPC上でアプリケーションソフトウエアにより再生や記録が行われる。さらに厄介なことには、PC上では専用機に比べてデジタルデータの複写や加工がより容易であるので、大容量の記録媒体やインターネットの普及により違法コピーされたデータが大量に、しかも劣化しない状態で流通する危険性が増大している。このように、今後開発される機器のうち、特にデジタル記録・再生機器はシステムとして著作権保護機能を盛り込まないと国際的にも、業界及び消費者のどちらからも受け入れられない。
DVDでは、前述した著作権保護の必要性から、映画業界、コンピュータ業界及び民生電子機器業界が共同で著作権保護システムについて議論して合意に至っている。DVD−Videoの著作権保護システムはCSS(コンテント・スクランブル・システム:Content Scramble System)と呼ばれ、MPEG方式で圧縮されたコンテンツデータをタイトル鍵と、ディスク鍵と、マスタ鍵とにより暗号化し、CSSに準拠するDVD再生装置のみがこの暗号化データを再生、暗号復号することができるようにしている。また、PCシステムによるDVD−ROMドライブとMPEGデコーダモジュールとの間では、不正なデータ転送によるデータの利用を防止するために伝送路上で転送先の相互認証を行っている。
これらDVD等の媒体における著作権保護(CSS)に従い暗号化されたデータを暗号復号する従来装置として、例えば、下記の特許文献1に記載されたものがある。
特開2000−124894号公報
上述したように、DVD−Videoにおける著作権保護の解決方法としてCSS方式が採用されているが、その適用範囲は読み出し専用で、しかもVideoアプリケーションの範囲に限定されている。しかしながら、最近では同じDVDファミリーでも書き換え可能なDVD−RAM、DVD−R/Wや書き込み可能なDVD−Rが製品として出現している。またこれらの媒体は従来のDVD−Videoプレーヤで再生可能であり、加えてこれらの書き込み可能な媒体は従来のDVD−Videoに収録された映画などのコンテンツをコピーすることが可能である。
したがって、著作権者は、DVD−Videoに収録されたコンテンツデータが書き込み可能なDVDに複数回コピーされ、DVD−Videoプレーヤにより再生、利用されることにより、著作権が侵害される危機感を持っている。そのため、既に従来のCSS方式とは異なる暗号化方式を用いたスクランブル方式や、書き込み可能なDVDに対応した新しいスクランブル方式が提案されている。また、将来的にも様々な工夫を凝らしたスクランブル方式や暗号化方式が次々と市場に出現することが容易に想像される。
ところで、スクランブルや暗号化の新方式が出現しなかったとしても、従来のCSS方式では計算量的な安全性のみしか保証されておらず、すべての鍵を確かめるという「総当たり攻撃」を行えば原理的には鍵が求まり、その解読が可能となる。その場合には暗号化方式の変更が必須であり、前述した暗号化方式が次々と市場に出現する状況と併せて、このままでは既存の暗号化方式と暗号復号化方式と新方式との間での非互換性により市場が大混乱に陥るおそれがある。
従来のCSS方式に対応した現在のDVD製品では上述した保護システムを更新することの想定がなされていなかった。すなわち、CSS方式の暗号復号部分はあらかじめ固定された唯一のアルゴリズムで設計されているため、新たなスクランブル方式が出現し、それに対応したディスクが市場に出ると現在の固定されたCSSアルゴリズムでは暗号復号化が行われず、従来のディスクの再生ができても新方式のディスクでは再生が行われず、ユーザは購入したディスクのコンテンツを利用できないことになる。このような状況では、現在普及している保護方式に対応し、かつ新たに提案された異なる保護方式にも対応し、さらに今後提案されるであろう保護方式にも随時対応できる更新性を持つ著作権保護機能などを持つ再生装置が必要になってくる。
また、上述の特許文献1に記載された従来装置では、基本ソフトウェア・モジュール10がデータ処理モジュール21と暗号化モジュール22を有しており、データ処理モジュール21が受信された暗号化原始データ・ストリームのCSS解読などを行い、暗号化モジュール22が再度、暗号化アルゴリズムを用いて再暗号化しているが、暗号復号化および暗号化処理をソフトウエア処理としているので、容易に解析されて著作権保護が破られる可能性があり、耐タンパー性が低い、という問題がある。
本発明は上記の事情を考慮してなされたもので、その目的は複数の暗号化方式に効率的に対処することができると共に、新たな暗号化方式にも容易に対応可能で、かつ、耐タンパー性の高い再生装置及び再生方法を提供することにある。
上記課題を解決するため、本発明の再生装置では、媒体に記録された暗号化コンテンツデータと、前記暗号化コンテンツデータを暗号復号するための暗号復号アルゴリズムのうち非コア部分の暗号復号非コアプログラムとを読み出す信号読み出し部と、前記信号読み出し部によって読み出された前記暗号復号非コアプログラムを前記暗号化コンテンツデータに対し実行して、前記非コア部分をソフトウエア処理する暗号復号非コア部と、前記暗号復号アルゴリズムのうち前記コア部分を電子回路により構成して、前記暗号復号非コア部によってソフトウエア処理された前記暗号化コンテンツデータを前記電子回路により実行して、前記コア部分をハードウエア処理する暗号復号コア部と、を有するものである。
ここで、前記暗号復号コア部は、外部との間で入出力されるデータのために使用される外部バスと、内部でのみ転送されるデータのために使用される内部バスと、前記暗号復号アルゴリズムのうち前記コア部分をハードウエア処理する電子回路により構成された暗号復号モジュールと、前記外部バスを介し前記暗号復号非コア部との間でデータおよびコマンドを送受信すると共に、前記内部バスを介し前記暗号復号モジュールとの間でデータおよびコマンドを送受信するシーケンサと、有し、前記外部バスと前記内部バスとは、物理的に分離されて設けられ、前記暗号復号モジュールによる暗号復号途中のデータは、前記内部バスを転送するのみで、かつ、前記外部バスには出力されないようにしても良い。
また、前記暗号復号コア部は、前記コア部分として、著作権保護のために使われる暗号復号アルゴリズムのうち繰り返し使用される暗号関数処理を含む、ようにしても良い。
また、前記暗号復号コア部は、前記コア部分として、暗号復号アルゴリズムのうち信号読み出し部用される暗号関数処理を含む、ようにしても良い。
また、本発明の再生方法は、媒体に記録された暗号化コンテンツデータと、前記暗号化コンテンツデータを暗号復号するための暗号復号アルゴリズムのうち非コア部分の暗号復号非コアプログラムとを読み出すステップと、読み出された前記暗号復号非コアプログラムを前記暗号化コンテンツデータに対し実行して、前記非コア部分をソフトウエア処理するステップと、前記暗号復号アルゴリズムのうち前記コア部分を構成する電子回路により、前記暗号復号非コア部によってソフトウエア処理された前記暗号化コンテンツデータを実行して、前記コア部分をハードウエア処理するステップと、を有するものである。
本発明の再生装置および再生方法によれば、媒体から暗号化コンテンツおよび暗号復号非コアプログラムを読み出し、読み出した暗号復号非コアプログラムを暗号化コンテンツに対し実行して、暗号復号アルゴリズムのうち非コア部分をソフトウエア処理する一方、暗号復号アルゴリズムのうちコア部分を電子回路により構成して、暗号復号非コア部によってソフトウエア処理された暗号化コンテンツを電子回路により実行して暗号復号アルゴリズムのうちコア部分をハードウエア処理するので、暗号復号アルゴリズムが変わっても、そのコア部分が変わらない場合には、暗号復号非コアプログラムを改変することにより、複数の暗号化方式に効率的に対処することができると共に、新しく定められた暗号化方式にも対応することができる。また、暗号復号アルゴリズムのうちコア部分をハードウエア処理するので、暗号復号アルゴリズムを全てソフトウエア処理する場合よりも、耐タンパー性、すなわち解析に対する耐性を向上させることができる。
以下、本発明の実施の形態について、1)コンテンツデータの暗号化と暗号復号非コアプログラムの作成、2)媒体への記録、3)再生と暗号復号の順に説明することとする。
1)コンテンツデータの暗号化と暗号復号非コアプログラムの作成
媒体に記録されるコンテンツデータは媒体のアプリケーションフォーマット、例えばDVDであればDVD−Video規格に従って圧縮処理やアプリケーションフォーマットに沿ったデータ構造の作成などを行うオーサリング処理と、ファイルシステムなど論理フォーマットに沿ったデータ構造の作成であるプリマスタリング処理とが施され、著作権保護のない記録データとして完成する。これら2つのプロセスで処理されたデータは、それぞれのフォーマットに要求される著作権保護のために決められた所定の処理、例えばCSS方式であればデータの暗号化や一方向関数による処理若しくはフラグデータの付加、CSS以外の方式であれば電子署名データの作成などが施されて媒体への記録データの準備が整う。
著作権保護されたコンテンツを利用するためには、暗号の復号やデータの一方向関数によるデータの照合、若しくは付加されている電子署名の検証が必要である。そのための再生装置側での暗号復号処理手順である暗号復号アルゴリズムが決定される。本実施の形態1では、この暗号復号非アルゴリズムは、本実施の形態1の再生装置専用のものとするため、全体の処理および秘匿性の低い暗号処理に関わらない非コア部分については、再生装置のCPUが暗号復号プログラムの実行によるソフトウエア処理を行うことを前提にして作成し、解読されては困る秘匿性の高いコア部分は、ハードウエア(電子回路)による処理を行うように暗号復号アルゴリズムが決定される。そして、非コア部分を処理するための暗号復号プログラムは、DVD等の媒体に記録されることになる。つまり、暗号復号アルゴリズムのうち、解読されては困る秘匿性の高いコア部分の処理はハードウエア(電子回路)が行うので、暗号復号非コアプログラムの実行による非コア部分のソフトウエア処理と、ハードウエア(電子回路)によるコア部分のハードウエア処理との間の処理の連携は、後述するようにハードウエア(電子回路)内のレジスタへのコマンドやデータ、ステータス等の書き込み処理を通じで行われる。
この結果、再生装置にある暗号復号アルゴリズムのうちのコア部分を処理するハードウエア(電子回路)の存在や構造、そのレジスタの存在、処理の内容を知らない場合には、非コア部分の暗号復号非コアプログラムを分析や解析しただけでは、これらの処理は再生装置のCPUから単なるI/Oやレジスタへのアクセスであることしか分からない。そのため、本発明では、暗号復号アルゴリズムのうち暗号復号非コアプログラムは、暗号化方式で保護されたコンテンツデータと共に後述する媒体への記録手順により媒体(DVD−ROM、DVD−RAM、DVD−R/W、DVD−Rのいずれでもよい)に記録される。
このように、再生装置側の暗号復号処理は、暗号復号アルゴリズムのうちコア部分を処理するハードウエアの制限を超えなければ、暗号復号非コアプログラムを改変することにより暗号復号非コアプログラムごとに変更可能である。したがってハッキングや脆弱性の発生などにより暗号化方式を変更する必要がある場合には、その変更に応じて、媒体に記録する暗号復号非コアプログラムを変更すれば、再生装置側ではその変更された暗号復号非コアプログラムを媒体から読み出し、新たな暗号復号非コアプログラムを実行するので、暗号復号アルゴリズムのうちコア部分の処理を隠蔽したまま、暗号復号処理が更新されて問題を解決することが可能になる。
2)媒体への記録
図1は、本発明の再生方法を実施する媒体の記録領域を示す説明図、図2は図1に示した媒体の記録領域のフォーマットを示す説明図、図3は媒体への記録装置の概略構成を示すブロック図である。
図1には媒体10の一例としてDVD−ROM(以下、ディスクとも言う)が示されている。媒体10は片面/両面、単層/復層のものが存在するが、ここでは片面、単層のディスクを例にして説明する。媒体10は内周から外周に向かってピットによる信号記録がスパイラル状になされる。内周部にはリードイン領域101が設けられ、中周部にはユーザがアクセスすることが可能なユーザデータ(メインデータ)領域102が設けられ、さらに外周部には再生終了後の記録領域であるリードアウト領域103が設けられる。これらの各記録領域101〜103には、図2(a)に示すように、内周部の記録開始領域、すなわち、リードイン領域101の開始点から所定のデータ単位ごとにセクタ番号が割り当てられ、再生箇所の識別のためにデータと共に媒体10に記録されている。
リードイン領域101の範囲は、あらかじめ規格により定められており、DVDの場合、セクタ番号で「00000h」〜「30000h」(hはヘキサデシマルを示す)である。そして、このリードイン領域101には、図2(b)に示すように、制御のためのコントロールデータを記録するためのコントロールデータ領域104が設けられており、このコントロールデータ領域104には、コントロールデータとして、図2(c)及び図2(d)に示すように、媒体の種類若しくはデータ構造や暗号化などの記録フォーマットを示す媒体フォーマット情報114aや、製造メーカなどが利用するディスク製造情報114b及びコンテンツ提供者のための領域であるコンテンツ供給者情報114cが16セクタを1単位としてコントロールデータ領域104に繰り返し記録されている。
図3は、映画や音楽などの各種AV(オーディオ・ビデオ)ソフトであるコンテンツを所定の暗号化アルゴリズムで暗号化して記録する記録装置110の概略構成を示すブロック図である。コンテンツ提供者は、AVデータ111と共にAVデータ111を暗号化するための暗号化プログラム112、暗号復号アルゴリズムのうち非コア部分をソフトウエア処理するための暗号復号非コアプログラム113、及び上述した媒体フォーマット情報114aやディスク製造情報114b、コンテンツ供給者情報114cなどのコントロールデータ114を用意する。
コンテンツであるAVデータ111は、信号処理部115に供給され、ここで例えばMPEG方式でエンコード(圧縮)されて圧縮されたユーザデータとなり、このユーザデータは暗号処理部116に供給される。暗号処理部116では、圧縮されたユーザデータの秘匿性を向上させるために、ユーザデータを暗号化プログラム112の実行によって暗号化(スクランブル)する。暗号化されたユーザデータ、すなわち暗号化コンテンツデータ119は、媒体フォーマッタ117に供給される。
媒体フォーマッタ117は、図2(b)に示すコントロールデータ領域104にコントロールデータ114及び暗号復号プログラム113が記録され、ユーザデータ領域102に暗号化されたユーザデータが記録されるように、媒体10をフォーマットして、これらコントロールデータ114、暗号復号非コアプログラム113及び暗号化コンテンツデータ119を記録部118に供給する。
媒体10には記録部118により、図2(b)に示すコントロールデータ領域104にコントロールデータ114として、図2(c)及び(d)に示すように、媒体の種類若しくはデータ構造や暗号化の種類などの記録フォーマットに関わる情報を示す媒体フォーマット情報114aや、製造メーカなどのディスク製造情報114b、及びコンテンツ提供者のコンテンツ供給者情報114cが合計16セクタを1単位として繰り返し記録される。
ここで、著作権保護されたコンテンツを暗号復号するために必要な暗号復号アルゴリズムのうち非コア部分を処理するための暗号復号非コアプログラム113は、コントロールデータ領域104のうち、例えば、図2(d)に示すコンテンツ供給者情報114cのうち利用されていない最後の部分に記録される。通常、ユーザにはコンテンツが記録されている図2(a)に示すユーザデータ領域102以外のデータの読み出しはできないようになっているので、記録された暗号復号非コアプログラム113は再生装置内部での利用以外は容易には読み出せない。
続いて、メインデータとして暗号化されたAVデータ111、すなわち暗号化コンテンツデータ119が図2(a)に示すユーザデータ領域102に記録され、最後に、図2(a)に示すリードアウト領域103が記録される。
3)再生と暗号復号
図4は、本発明に係る再生装置の実施の形態の全体構成を示すブロック図、図5は、図4に示す再生装置を構成する暗号復号部60の詳細な構成を示すブロック図、図6は、図5に示す暗号復号部60を構成する暗号復号コア部65の詳細な構成を示すブロック図である。
図4に示す本実施の形態1の再生装置は、媒体10から暗号化コンテンツデータ119や暗号復号非コアプログラム113、コントロールデータ114等を読み出す信号読み出し部20と、この信号読み出し部20で読み出された暗号化コンテンツデータ119を蓄積するデータ蓄積部30と、データ蓄積部30に蓄積された暗号コンテンツデータ119を暗号処理部116で用いた暗号アルゴリズムに対応した暗号復号アルゴリズムに従い順次暗号復号する暗号復号部60と、暗号復号されたコンテンツデータをコンテンツに復元する信号処理部40と、これらの構成要素の全体を制御する制御部50とを有しており、これらをバス70によって接続している。
図5は、暗号復号部60の詳細な構成を示すブロック図である。
一方、暗号復号部60は、図5に示したように、データ蓄積部30からデータを入力する入力I/F61と、媒体10のコントロールデータ領域104のコンテンツ供給者情報114cの最後の部分から読み出された暗号復号非コアプログラムを格納するプログラムメモリ62と、プログラムメモリ62に格納された暗号復号非コアプログラムを用いて、暗号復号化アルゴリズムのうちで秘匿性の低い非コア部分の処理を実行する暗号復号非コア部(CPU)63と、暗号復号処理されたデータを信号処理部40に供給するための出力I/F64と、電子回路等のハードウエア回路により構成され、暗号復号アルゴリズムのうちで解読されては困る秘匿性の高い暗号復号などのコア部分の処理をハードウエア処理する暗号復号コア部65とを備え、これらの構成要素がバス66で相互に接続されるとともに、制御線67によっても相互に接続されている。
図6は、暗号復号コア部65の詳細な構成を示すブロック図である。
暗号復号コア部65は図6に示したように、「処理の種類を表すコード」であるコマンドを記憶するコマンド・レジスタ71と、処理の状態を表す「ステータス」を記憶するステータス・レジスタ72と、「処理の入出力データ」を記憶するデータ・レジスタ73と、暗号復号コア部65の外部からコマンド・レジスタ71、ステータス・レジスタ72及びデータ・レジスタ73にデータを入出力する外部バス74と、データ・レジスタ73と外部バス74との間で入出力される複数のデータを選択する外部データセレクタ75と、コマンドをデコードして暗号復号コア部65の処理手順を決めるコマンド・デコーダ76と、決められた処理手順に従って後述する暗号復号モジュール80〜84を制御するシーケンサ77と、暗号復号コア部65の内部バス78と、データ・レジスタ73と内部バス78との間で入出力されるデータを選択する内部データセレクタ79と、暗号復号アルゴリズムのうちコア(基本)部分をハードウェア処理する電子回路により構成された1又は複数(ここでは、説明の便宜上5つとするが、それ以上でも以下でも勿論よい。)の暗号復号モジュール80〜84とを備えている。シーケンサ77と暗号復号モジュール80〜84とはモジュール制御線85によって接続されている。暗号復号モジュール80〜84は、それぞれ電子回路によりハードウエア化されており、それぞれのモジュール処理に必要な暗号鍵、テーブル、初期値等が組み込まれている。また、外部バス74と内部バス78とは、物理的に分離されて設けられ、暗号復号モジュール80〜84による暗号復号途中のデータは、内部バス78を転送するのみで、外部バス74には出力されないように構成している。
次に、図4、図5、図6に示した本実施の形態の再生装置の動作について説明する。
始めに、制御部50の初期動作により、信号読み出し部20は、媒体10のリードイン領域101のコントロールデータ領域104のコンテンツ供給者情報114cの最後の部分に格納されている暗号復号非コアプログラム113を読み出し、図5に示すように、暗号復号部60のプログラムメモリ62に格納する。暗号復号非コア部63は、その暗号復号非コアプログラム113に従って暗号復号アルゴリズムのうち非コア部分をソフトウエア処理行できるように準備されている。
次に、ユーザの操作などをトリガとして制御部50がコンテンツの再生を開始すると、信号読み出し部20は、媒体10に記録されている暗号化コンテンツデータ119を順次読み出すとともに、読み出した暗号化コンテンツデータ119を信号処理部40が処理するよりも早いレートでデータ蓄積部30に蓄積する。ここで、制御部50は、データ蓄積部30のデータ蓄積量が所定値に達すると、媒体10からの暗号化コンテンツデータ119の読み出しを休止する一方、データ蓄積量が所定の範囲の下限に達すると、再び媒体10からの暗号化コンテンツデータ119の読み出しを開始する、というように信号読み出し部20を制御して間欠再生状態にする。
そして、データ蓄積部30のデータ蓄積量が所定値に達すると、制御部50は、プログラムメモリ62に記憶された暗号復号非コアプログラム113の実行開始を、暗号復号部60の暗号復号非コア部63に指示する。
暗号復号部60では、図5に示すように、暗号復号非コア部63が入力I/F61およびバス66を介しデータ蓄積部30から暗号化コンテンツデータ119を順次読み出し、プログラムメモリ62に記憶されている暗号復号非コアプログラム113の処理手順に従って暗号復号する。
その際、本実施の形態1では、データ蓄積部30のデータ蓄積量が所定の範囲の上限に達すると、制御部50は、読み出した暗号化コンテンツデータ119に対し、暗号復号部60内のプログラムメモリ62に格納された暗号復号非コアプログラム113の実行によるソフトウエア処理を行うと共に、後述する電子回路により構成された暗号復号コア部65によりハードウエア処理を行い、暗号化コンテンツデータ119を暗号復号する。なお、この動作は、前記間欠的再生に伴う暗号化コンテンツデータ119の読み出し及びその休止にかかわらず連続的に行われる。
つまり、本実施の形態1では、解読されては困る暗号復号アルゴリズムのコア(基本)部分の処理は、電子回路により構成された暗号復号コア部65により別にハードウエア処理を行う。そのため、本実施の形態1の暗号復号非コアプログラム113は、暗号復号コア部65に処理開始を指示するための暗号復号指示情報としての「処理の種類を表すコード」と「処理の入力に当たるデータ(数値)」とを、暗号復号コア部65のコマンド・レジスタ71あるいはデータ・レジスタ73に書き込み、暗号復号指示情報を書き込んだ段階で、ステータス・レジスタ72に設定される暗号復号コア部65の実行状態である「ステータス」を監視するようにプログラミングされている。
そして、暗号復号コア部65では、その詳細を後述するように、データ・レジスタ73に書き込まれた「処理の入力に当たるデータ」を指定された手順で、暗号復号コア部65の外部からは中途のデータなど処理過程が見えないように、後述する内部バス78を使って処理して、結果を暗号復号コア部65のデータ・レジスタ73に書き込み、処理の終了を割り込み信号によって制御線67を介し暗号復号非コア部63に知らせる。この割り込み信号によって暗号復号非コア部63は、暗号復号コア部65による暗号復号アルゴリズムのうちコア部分の処理が終了したことを知り、引き続きプログラムメモリ62に記憶されている暗号復号非コアプログラム113を実行する。
この場合、制御部50や暗号復号部60などで処理されるこれら一連のプログラム処理を、プログラムメモリ62や入力I/F61及び出力I/F64や暗号復号部60に接続されるバス上のデータを解析して暗号復号処理を試みても、暗号復号アルゴリズムの肝心なコア(基本)部分の処理は暗号復号コア部65の内部で行われるので、外部からはデータ・レジスタ73へのデータの書き込み、データ・レジスタ73からのデータの読み出し処理としてしか解析することができず、結局、暗号復号処理アルゴリズムの肝心なコア部分の解析はできないことになる。
続いて、暗号復号部60は、データ蓄積部30から読み出した暗号化コンテンツデータに対する暗号復号処理が終わると、暗号復号したそのコンテンツデータを信号処理部40に送る。
信号処理部40は、自身に入力されたコンテンツデータを、例えば、MPEG方式のデコード(伸長)などの信号処理を行って、ユーザが視聴可能なコンテンツとして出力する。なお、データ蓄積部30に蓄積される暗号化コンテンツデータ119は、制御部50による間欠再生状態によって一定のデータ蓄積量が維持されているので、データ蓄積部30から読み出された暗号化コンテンツの出力までの一連の暗号復号処理が終わると、暗号復号部60はデータ蓄積部30から暗号化コンテンツを読み出し、プログラムメモリ62に記憶されている暗号復号非コアプログラム113の処理手順に従って再び暗号復号処理を続ける。ここで、制御部50は、データ蓄積部30に蓄積される暗号復号対象の暗号化コンテンツデータ119の蓄積量が所定の範囲内に維持されるように、暗号復号部60の暗号復号処理に関連付けて信号読み出し部20、データ蓄積部30および信号処理部40を制御している。
図7は、暗号復号コア部65に入力されるデータの形式の一例を示している。
このうち、図7(a)はコマンド・レジスタ71に書き込まれる処理の種類を表すコードである「コマンド」を入出力する際のデータ形式を示し、(b)はデータ・レジスタ73に暗号処理の入出力数値である「データ」を入出力する際のデータ形式を示し、(c)はステータス・レジスタ72に出力される暗号コアの処理状態を表すデータである「ステータス」を入出力する際のデータ形式を示している。
コマンド・レジスタ71にセットされる「コマンド」は16ビットの幅で構成されており、最上位のビット15(図7ではb15と記す。以下同様)は処理の開始を指示する「スタートビット」、ビット14〜12は未使用、ビット11〜8は暗号コアでの処理内容(種類)を表す部分であり、ビット7〜0の下位8ビットは処理対象となるデータの大きさ(処理データ数)(データの大きさ÷16ビット)を表す。
データ・レジスタ73は16ビット幅単位である。しかし、入力データ幅は最大128ビットなのでデータ・レジスタは8個(データ・レジスタ8〜データ・レジスタ1)存在する。
ステータス・レジスタ72にセットされる「ステータス」は16ビット幅で、最上位のビット15は暗号コアが利用可能な状態であることを表す「レディステータス」、ビット14〜ビット2は未使用、ビット1は暗号コアで何らかの異常が発生したとき処理エラーが発生したことを知らせる「エラーステータス」、ビット0は暗号コアが所定の処理を終了したことを知らせる「処理終了ステータス」である。
次に、暗号復号部60の暗号復号非コア部63と暗号復号コア部65の詳細な動作の一例について説明する。
まず、暗号復号部60の暗号復号非コア部63は、記録媒体10から読み出されプログラムメモリ62に記録された暗号復号非コアプログラム113の実行により暗号復号アルゴリズムのうちの非コア部分を処理している際、暗号復号コア部65で行われるコア部分を処理するタイミングが来ると、暗号復号コア部65のデータ・レジスタ73に「処理の入力に当たるデータ」を書き込む。さらに、この場合、暗号復号非コア部63は、コマンド・レジスタ71のビット11〜ビット8に「暗号処理の種類を表す4ビットのコード」と共に最上位の「スタートビット」に「1」を書き込む。
すると、暗号復号コア部65では、コマンド・レジスタ71の最上位のビットである「スタートビット」が「1」になったことをコマンド・デコーダ76が検出して、コマンド・レジスタ71のビット11〜ビット8の4ビットで示される「処理の種類を表すコード」をコマンド・デコーダ76に取り込む。コマンド・デコーダ76は、取り込んだ処理の種類に沿った分岐をするような分岐条件をシーケンサ77に送り、そのシーケンス77の状態遷移を開始させ暗号復号コア部65内部の処理を開始する。
シーケンサ77は、まず、内部データセレクタ79を制御してデータ・レジスタ73にセットされているデータから「処理の入力に当たるデータ」を内部バス78上に載せ、コマンド・デコーダ76が解釈した「処理の種類を表すコード」に従った暗号復号モジュール80〜84のいずれかを起動する。
これにより、起動したいずれかの暗号復号モジュール80〜84は、内部バス78上を流れるデータを入力して、暗号復号処理アルゴリズムのうち秘匿性の高いコア部分をハードウエア処理する。
ここで、暗号復号モジュール80〜84は、上述したように電子回路により構成されており、その内部に記憶した暗号鍵やテーブル、初期値を使って、暗号復号処理アルゴリズムのうち秘匿性の高いコア部分をハードウエア処理する。ここで、本実施の形態1では、暗号復号モジュール80〜84がハードウエア処理するコア部分の処理についてはこれ以上、詳細には説明しないが、後述する実施の形態2では、例えば、CPPM(Content Protection for Prerecorded Media)や、CPRM(Content Protection for Recordable Media)等の著作権保護で使われる暗号処理において繰り返し行われる共通な部分をコア部分とし、後述する実施の形態3では、例えば、DESやAES暗号復号化において繰り返し行われる、例えば、DES暗号復号処理における「転置処理」や「換字処理(S-box)」、「mod2の加算(排他論理和演算)」、非線形変換などの処理をコア部分としている。
また、暗号復号モジュール80〜84は、処理途中に他の暗号復号モジュール80〜84とのデータのやり取りが必要な場合には、内部バス78を介してデータのやり取りを行う。
そして、暗号復号モジュール80〜84は、一連の処理が終わると、処理終了の信号をモジュール制御線85を介しシーケンサ77に送る。シーケンサ77は、暗号復号モジュール80〜84の処理結果を内部バス78上に載せる状態に遷移する。内部バス78に載ったデータは、シーケンサ77の指示により内部データセレクタ79が制御され、データ・レジスタ73に書き込まれる。
シーケンサ77は、一連の処理が終わると、外部データセレクタ75を制御してデータ・レジスタ73にある暗号処理の結果であるデータを外部バス74に出力するとともに、処理終了状態をステータス・レジスタ72にセットし、暗号復号コア部65での処理を終了すると共に、外部バス74を介し暗号復号非コア部63にコア部分の処理終了を知らせる割り込み信号を送信する。
図8は、シーケンサ77の状態遷移の一例を示している。
つまり、シーケンサ77は、外部からのリセットによりステータス・レジスタ72に初期ステートを設定して(ST800)、スタート待ちのアイドリング状態に入り(ST810)、スタートすると、まず、データ・レジスタ73より内部データの選択を行う共に(ST820)、コア部分の処理に従って所定の暗号復号モジュール80〜84に分岐しながら暗号復号開始の指示を送る。すると、その指示を受けた所定の暗号復号モジュール80〜84は、暗号復号処理を行い(ST830−1〜ST830−n)、必要あれば他の暗号復号モジュール80〜84に対し内部バス78を介しデータを送信したり、データ・レジスタ73にその処理データをセーブする(ST840)。
そして、シーケンサ77は、データ・レジスタ73にセーブされた処理データを外部データとして選択し(ST850)、外部バス74を介し外部データを暗号復号コア部65外へ出力して(ST860)、処理が終了すると、ステータス・レジスタ72に正常終了や処理完了のステータスをセットする(ST870)。なお、暗号復号モジュール80〜84やシーケンサ77は、処理中にエラーが発生すると、ステータス・レジスタ72にエラー発生のステータスをセットして(ST880)、最初の処理、すなわちST810のアイドリング処理に戻り、最初から処理を行うことになる。
そして、暗号復号非コア部63は、シーケンサ77からのコア部分のハードウエア処理終了の割り込みを信号を受信すると、ステータス・レジスタ72にセットされた暗号復号コア部65の正常終了のステータスを確認して、続いて残りの暗号復号非コアプログラムを再開することになる。
そのため、暗号復号コア部65での一連の処理は、データ・レジスタ73に書き込まれた「処理の入力に当たるデータ」がコマンドで指定された手順で暗号復号モジュール80〜84と内部バス78を使って処理され、その結果が、再び、内部バス78、内部データセレクタ79を介して、データ・レジスタ73に書き込まれる。
ここで、本実施の形態1の暗号復号コア部65では、外部バス74と内部バス78とは、物理的に分離されて設けられ、暗号復号モジュール80〜84による暗号復号途中のデータは、内部バス78を転送するのみで、かつ、外部バス74には出力されないように設けられているので、暗号復号コア部65の外部からは、外部バス74を介してデータレジスタ73の入出力データまでは検出することができるが、暗号復号モジュール80〜84間を転送する内部バス78上の暗号復号途中のデータは、データ・レジスタ73や内部データセレクタ79により読み出し不可能であるので、暗号復号コア部65の外部からはコア部分の処理途中のデータは全く検出できないことになる。
このように、本実施の形態1では、暗号復号アルゴリズムのうち秘匿性の低い非コア部分の処理は、記録媒体10から読み出され暗号復号部60内のプログラムメモリ62に格納された解読可能な暗号復号非コアプログラム113を暗号復号非コア部63が実行することによってソフトウエア処理する一方、暗号復号アルゴリズムのうち秘匿性の高いコア部分は、暗号復号部60にある電子回路により構成され容易には解析されない暗号復号コア部65の暗号復号モジュール80〜84によってハードウエア処理される。
そのため、本実施の形態1によれば、暗号復号アルゴリズムのうち非コア部分のみ暗号復号非コアプログラム113として媒体10に記録し、読み出してソフトウエア処理されるので、暗号復号アルゴリズムが変わっても、そのコア部分が変わらない場合には、暗号復号非コアプログラムを改変することにより、暗号復号非コアプログラム113のみ改変することにより、複数の暗号化方式に効率的に対処することができると共に、新しく定められた暗号復号方式にも暗号復号コア部65の改造なしに対応することができる。その結果、暗号復号アルゴリズム全体を変更する場合に比べ、媒体10に記憶される暗号復号非コアプログラム113のみを変更すれば済むので、暗号復号アルゴリズム全体の変更が容易である。
また、本実施の形態1によれば、暗号復号アルゴリズムのうち秘匿性の高いコア部分は、暗号復号部60にある電子回路により構成され容易には解析されない暗号復号コア部65の暗号復号モジュール80〜84によってハードウエア処理されるので、暗号復号アルゴリズムを解析しようと、媒体10に記録された暗号復号非コアプログラム113や、制御部50や暗号復号部60のデータ入出力やバス上のデータを解析しようと試みても、肝心の暗号復号アルゴリズムのコア部分は、暗号復号コア部65のデータ・レジスタ73へのデータ書き込み、読み出し処理のみしか解析できず、暗号復号コア部65内の暗号復号の詳細な内部解析はできないので、暗号復号アルゴリズムを全てソフトウエア処理する場合よりも、耐タンパー性、すなわち解析に対する耐性を向上させることができる。
特に、本実施の形態1では、暗号復号コア部65では、外部バス74と内部バス78とが物理的に分離して設け、暗号復号モジュール80〜84による暗号復号途中のデータは、内部バス78を転送するのみで、かつ、外部バス74には出力されず、暗号復号コア部65の外部からはコア部分の処理途中のデータは検出できないように構成しているので、耐タンパー性をさらに向上させることができる。
また、本実施の形態1では、暗号復号アルゴリズムのうちコア部分以外の非コア部分の処理を暗号復号非コアプログラム113として構成し、DVD等の媒体10上に記憶するようにしたので、媒体10毎にあるいは媒体10の種類やグループ毎等に適応的に、その暗号復号非コアプログラム113を変更することにより、著作権保護ソフトウエアの更新可能となり、保護方式が破られてその変更が必要な場合にも、速やかに対応可能であり、さらに今後提案されると予想される新たな暗号化方式にも対応可能である。これにより、装置が製造された以降に新しく定められた暗号化方式に、単一のハードウエアで対応可能でありながらハッキングなどの行為に対して強い耐性を持つことができる。
なお、本実施の形態に係る再生装置は、単一の暗号復号方式のデータに対応する暗号復号装置であるが、2種類以上の暗号アルゴリズムが予想される場合、それらに対応した暗号復号アルゴリズムのうちの暗号復号非コアプログラム113をあらかじめ媒体10の特定の部分に複数記録しておき、暗号化コンテンツデータ119の管理領域(例えば、マネージメントファイル)や再生制御情報領域(例えば、ナビゲーションファイル)に暗号復号アルゴリズムの種類、すなわち、暗号復号アルゴリズムのいずれを使用すればよいかを示す識別子をデータ又はフラグとして記録しておき、媒体10から暗号復号を取り込む際に制御部50で選択的に対応する暗号復号非コアプログラム113を暗号復号部60のプログラムメモリ62に取り込んでもよいし、一括してプログラムメモリ62に読み込んでおいて暗号復号実行時に、暗号復号部60で判断してプログラムメモリ62上の暗号復号非コアプログラム113を切り替えるようにしてもよい。このようにすれば、暗号復号アルゴリズムの異なる暗号復号を順次実行する際でも異なる暗号復号非コアプログラム113を直ちに切り替え可能であり、複数の方式の暗号復号非コアプログラム113を順次読み込んで切り替えて実行する場合に比べ、迅速に切り替えることが可能である。
実施の形態2.
次に、本発明の暗号復号アルゴリズムのうち電子回路によりハードウエア処理するコア部分と、暗号復号アルゴリズムのうち暗号復号非コアプログラムの実行によりソフトウエア処理する非コア部分の具体例を、実施の形態2として説明する。なお、本実施の形態2では、ハードウエア処理するコア部分と、ソフトウエア処理する非コア部分の処理内容が異なるだけであり、それ以外の再生装置の構成や動作は、上記実施の形態1と同様である。
本実施の形態2では、著作権保護で使われる暗号処理の共通な部分について、DVD−Audioで用いられている「CPPM(Content Protection for Prerecorded Media)方式」や「CPRM(Content Protection for Recordable Media)方式」による著作権保護を一例に、本実施の形態2におけるコア部分と、非コア部分の一例を、説明する。
図9は、本実施の形態2のCPPM方式の暗号化および暗号復号化するためのディスク製造設備と再生機器、CPPM方式で保護されたDVD−Audioディスクの関係の一例を示したものである。
図9において、ディスク製造設備側91では、メディアキーブロック(MKB)911、メディア鍵912、アルバムID(ID album)913、暗号化対象パック914等のデータが準備される。そして、CPPMで保護されたDVD−AUDIOディスク92では、メディアキーブロック(MKB)911、アルバムID(ID album)913、CCI関連データ部915および可変データ部916のデータは、そのままDVD−AUDIOディスク92に記録される。
一方、ディスク製造設備側91では、アルバムID(ID album)913とメディア鍵912とは、C2暗号方式を用いたC2_G関数により、中間鍵Kauの生成が行なわれる。また、暗号化対象パックデータ914の一部であるCCI関連データ部915のデータであるDkc_1とKauとから中間鍵であるK1が生成される。以降同様の処理により、暗号化対象パックデータ914の一部であるCCI関連データ部915のデータDkc_2、Dkc_3、Dkc_4と順次生成され、中間鍵K2、K3、K4が生成され、最終的に暗号化対象パックデータ914の一部である可変データ部916と中間鍵K4からコンテンツを暗号化する鍵Kcが生成される。そして、残りの1920バイトの暗号化対象パックデータ914がC2_ECBC関数により暗号化され暗号化データ部917となり、CCI関連データ部915と、可変データ部916とからなる暗号化パック921が完成する。そして、その暗号化パック921は、メディアキーブロック(MKB)911、アルバムID(ID album)913のデータと共に、DVD−AUDIOディスク92に記録される。
一方、再生時には、図9に示すように、再生機器93では、先ずDVD−AUDIOディスク92からそこに記録されたメディアキーブロック(MKB)911、アルバムID(ID album)913および暗号化パック921を読み出す。
そして、再生機器93は、最初読み出されたメディアキーブロック(MKB)911と再生機器93の持つデバイス鍵からMKB処理を使ってディスク製造で用いられたメディア鍵912を復元する。
次にアルバムID(ID album)913と復元されたメディア鍵912からC2暗号方式のC2_G関数を用いて中間鍵Kauを生成し、以降ディスク製造時と同様に中間鍵と暗号化パックのデータの一部であるCCI関連データ部のデータDkc_1, Dkc_2, Dkc_3, Dkc_4から順次K1, K2, K3, K4を生成する。
最終的に暗号化パックデータ921の一部である可変データ部916と中間鍵K4からコンテンツを暗号復号する鍵Kcを復元し、暗号化パックデータ921の残り1920バイトの暗号化データ部をC2_DCBC関数を使って暗号復号し、暗号化する前のデータを復元する。
このようにCPPM方式の暗号化・暗号復号化処理においては、C2暗号方式を用いたC2_G関数が繰り返し使われる。前述した暗号処理する場合、暗号化および暗号復号双方におけるC2_G関数処理は、入出力データは異なるものの内部の構造・処理は同じである。
これら処理のうち、特に暗号化および暗号復号双方に使われるC2_G関数処理は、著作権保護で使われる暗号処理の共通な部分であり、実施の形態1の暗号復号コア部65で電子回路によりハードウエア処理を行う秘匿性の高いコア部分に該当する。
そして、その他の暗号復号コア部65への各種データを入力、処理の条件分岐などの判断処理は、さほど秘匿性が高くないので非コア部分に該当し、実施の形態1の暗号復号非コア部63がプログラム実行によるソフトウエア処理により実行する。
ここで、本実施の形態2では、著作権保護で使われる暗号処理に共通な部分であるコア部分として、ディスク製造設備91側と再生機器93側とで共通なC2_G関数、すなわちCPPM方式等におけるC2_G関数のように1つの著作権保護方式において入出力データは異なるが繰り返し使われる関数部分とする。
なお、本実施の形態2では、暗号および暗号復号アルゴリズムの更新(変更)が可能な著作権保護を実現するための提案なので、例えば、CPPMが破られた場合には、以降のメディア製造では、従来のCPPM方式での処理を止めて、今までのアルバムID(ID album)913とメディア鍵912とからC2_G関数を用いて中間鍵Kauを生成していた暗号または暗号復号アルゴリズム処理を、例えばDES方式が強度を増すためにトリプルDESになったように、C2_G関数を2度、3度使って中間鍵を生成するような暗号または暗号復号アルゴリズム処理に変更して、DVD−AUDIOディスク92に記録する。このようにすれば、暗号復号コア部65の変更なしに、暗号および暗号復号アルゴリズム処理の更新(変更)が可能となる。
図10は、前述したCPPM方式の著作権保護において再生機器93が行なう暗号復号化処理の一例を示すフローチャートである。
再生機器93では、DVD−AUDIOディスク92よりメディアキーブロック(MKB)911と、アルバムID(ID album)913と、暗号化パック921とを読み出し(S1010)、その読み出されたメディアキーブロック(MKB)911と再生機器93の持つデバイス鍵とから所定の暗号化処理であるMKB処理を使って(S1020)、ディスク製造で用いられたメディア鍵912を復元する。
次にDVD−AUDIOディスク92から読み出されたアルバムID(ID album)913と、上記で生成されたメディア鍵912とを入力し(S1030)、アルバムID(ID album)913とメディア鍵912に対しC2_G関数処理を施し(S1040)、中間鍵Kauを生成する。
以降C2_G関数処理と、内部で保持されている中間鍵K1, K2, K3, K4と、DVD−AUDIOディスク92から読み出された暗号化パック921のデータの一部であるCCI関連データ部915のデータDkc_1, Dkc_2, Dkc_3, Dkc_4を入力し(S1050)、C2_G関数処理を施して(S1060)、順次中間鍵K1, K2, K3, K4を生成する処理を繰り返し(S1070“No”)、暗号化パックデータ921の一部である可変データ部916と、中間鍵K4とからコンテンツを暗号復号化する鍵Kcを復元する(S1070“Yes”)。
そして、暗号化パックデータ921の残り1920バイトの暗号化データ部917を入力し(S1080)、最終的にはコンテンツを暗号復号化する鍵Kcを用いて「C2_DCBC」関数を使って暗号復号化し、暗号化する前のデータを復元する(S1090)。
ここで重要なのは、図9に示すブロック図、および図10に示すフローチャートからもわかるようにC2_G関数処理自体の秘匿性が高くないと、ディスク製造装置91側の暗号化、あるいは再生機器93側の暗号復号化が容易に破られ、有効な著作権保護を実現できないということである。
つまり、前述した暗号処理および暗号復号処理をする場合、全てをプログラムの実行によるソフトウエア処理で行なうことも可能である。しかし、ソフトウエアは作りやすく更新・変更が容易な反面、コードの逆アセンブルやエミュレータによるプログラムや変数のトレースによって容易に解析され易く、著作権保護が破られる危険性が非常に高い。
反対にハードウエアは、解析し難く、その耐性(耐タンパー性)は高く解読されにくい利点があるが、複数の著作権保護方式をサポートするとハードウエアの規模が大きくなる上に、設計変更等の設計想定外の処理内容の変更はきかないという欠点がある。
そのため、本実施の形態2では、秘匿性が高いコア部分に該当する図10に示すステップ1020や、1040、1060、1090の処理を、電子回路で構成している暗号復号コア部65によりハードウエア処理する一方、その他のさほど秘匿性が高くない非コア部分に該当する図8に示すステップ1010や、ステップ1030、ステップ1050、ステップ1070、ステップ1080の暗号復号コア部65へ各種データを入力したり、全体処理の条件分岐などの処理を、暗号復号非コア部63におけるプログラム実行によるソフトウエア処理としている。
このように、本実施の形態2によれば、暗号化および暗号復号化に使われる共通のC2_G関数処理等の「著作権保護で使われる暗号処理の共通な部分」を、秘匿性の高いコア部分としてハードウエアの電子回路で構成されている暗号復号コア部65によりハードウエア処理する一方、その他のさほど秘匿性が高くない非コア部分の処理を、暗号復号非コア部63におけるプログラム実行によるソフトウエア処理としので、上記実施の形態1の場合と同様に、CPPM方式やCPRM方式で保護されたDVDディスク等においても、暗号アルゴリズムや暗号復号アルゴリズムが変わっても、そのコア部分が変わらない場合には、暗号復号非コアプログラムを改変することにより、複数の暗号化方式に効率的に対処することができると共に、新しく定められた暗号化方式にもコア部分の改造なしに対応することができる。また、暗号復号コア部65は、暗号復号アルゴリズムのうちコア部分を電子回路により構成して、暗号復号非コア部によってソフトウエア処理された暗号化コンテンツを電子回路により実行してコア部分をハードウエア処理するので、暗号復号アルゴリズムを全てソフトウエア処理する場合より、耐タンパー性、すなわち解析に対する耐性を向上させることができる。
実施の形態3.
次に、暗号復号アルゴリズムのうちハードウエア処理するコア部分と、ソフトウエア処理する非コア部分の他の具体例を、実施の形態3として説明する。なお、本実施の形態3では、上記実施の形態2と同様に、ハードウエア処理するコア部分と、ソフトウエア処理する非コア部分の処理内容が異なるだけであり、それ以外の再生装置の構成や動作は、上記実施の形態1と同様である。
本実施の形態3では、著作権保護方式ではなく、DES(Data Encryption Standard )の暗号関数処理f(Rn-1, Kn)のように繰り返し使われる暗号関数処理を、秘匿性の高いコア部分としてハードウエア化する。
これは、上記で説明したCPPM/CPRM方式によるコンテンツ保護では、C2暗号化方式が用いられているが、近年の著作権保護方式では、より暗号強度の強い暗号方式もしくは複数の暗号関連技術を組み合わせて実装される場合がある。したがって、本発明の「解読されては困るコア部分」として、DES暗号化方式やAES暗号化方式あるいは複数の暗号化方式が用いられる場合がある。また、暗号化以外に暗号復号化も同様であり、さらに認証などに用いられる一方向関数や電子署名・検証の処理も何れかの暗号方式をベースにして行なわれている。
DES暗号復号アルゴリズムは、差分解読法であるので、DES暗号復号処理が繰り返し行われる、例えば、DES暗号復号処理における「転置処理」や「換字処理(S-box)」、「mod2の加算(排他論理和演算)」、非線形変換などの細かな要素も、解読されては困るコア部分と言える。
以下に、DES暗号化方式を例に上記の繰り返し使われる暗号化要素の具体例を説明する。
図11に、本実施の形態3のDES方式の暗号化ブロックの一例を示す。DES方式では、64ビットのデータブロック毎に暗号化・暗号復号化を行い、鍵の長さは56ビットである。
DES方式では、先ずデータに対し初期転置処理(Initial Permutation)(S1110)を行なった後、暗号関数処理(f(Rn-1, Kn))(S1120−1〜S1120−16)等の処理を16回繰り返し、最後に最終転置処理(Inverse Initial Permutation)(S1130)を行う。
また、各段の処理に使われる鍵K1、・・・、K16は、別途鍵スケジュラー(図示せず)により、8ビットのパリティビットを含む入力された56ビットの鍵データとの64ビットの鍵データから、異なった16種類の48ビットの鍵データが前述した各段の暗号化処理に供給される。
DESの暗号復号方式も図11とは逆の処理を行う。
よって、本実施の形態3では、前述した初期転置処理(Initial Permutation)(S1110)、暗号関数処理(f(Rn-1, Kn))(S1120−1〜S1120−16)、最終転置処理(Inverse Initial Permutation)(S1130)が、本実施の形態3の秘匿性の高いコア部分に該当し、暗号復号コア部65によりハードウエア処理する。その一方、DESの暗号復号方式において、その他のさほど秘匿性が高くない非コア部分の処理を、暗号復号非コア部63におけるプログラム実行によるソフトウエア処理することになる。
従って、本実施の形態3によれば、DES等の暗号復号アルゴリズムにおいても、初期転置処理(Initial Permutation)(S1110)、暗号関数処理(f(Rn-1, Kn))(S1120−1〜S1120−16)、最終転置処理(Inverse Initial Permutation)(S1130)等の秘匿性の高いコア部分は、電子回路により構成された暗号復号コア部65によりハードウエア処理する一方、その他のさほど秘匿性が高くない非コア部分の処理は、暗号復号非コア部63のプログラム実行によるソフトウエア処理することにより、複数の暗号化方式に効率的に対処することができると共に、新しく定められた暗号化方式にもコア部分の改造なしに対応することができ、また暗号復号アルゴリズムを全てソフトウエア処理する場合より、耐タンパー性、すなわち解析に対する耐性を向上させることができる。
本発明の再生方法を実施する媒体の記録領域を示す説明図である。 図1に示した媒体の記録領域のフォーマットを示す説明図である。 媒体への記録装置の概略構成を示すブロック図である。 図4は本発明に係る再生方法を実施する再生装置の全体構成を示すブロック図である。 図5に示す再生装置を構成する暗号復号部の詳細な構成を示すブロック図である。 図5に示す暗号復号暗号部を構成する暗号復号コア部の詳細な構成を示すブロック図である。 図6に示す暗号復号コア部に入力されるデータ形式の一例を示す図である。 図6に示す暗号復号コア部を構成するシーケンサの状態遷移の一例を示した図である。 実施の形態2のCPPM方式の暗号化および暗号復号化するためのディスク製造設備と再生機器、CPPM方式で保護されたDVD−Audioディスクの関係の一例を示すブロック図である。 実施の形態2におけるCPPM方式の著作権保護において再生機器93が行なう暗号復号化処理の一例を示すフローチャートである。 実施の形態3のDES方式の暗号化ブロックの一例を示すブロック図である。
符号の説明
10 媒体
20 信号読み出し部
30 データ蓄積部
40 信号処理部
50 制御部
60 暗号復号部
62 プログラムメモリ
63 暗号復号非コア部
65 暗号復号コア部
74 外部バス
78 内部バス
80〜84 暗号復号モジュール

Claims (5)

  1. 媒体に記録された暗号化コンテンツデータと、前記暗号化コンテンツデータを暗号復号するための暗号復号アルゴリズムのうち非コア部分の暗号復号非コアプログラムとを読み出す信号読み出し部と、 前記信号読み出し部によって読み出された前記暗号復号非コアプログラムを前記暗号化コンテンツデータに対し実行して、前記非コア部分をソフトウエア処理する暗号復号非コア部と、
    前記暗号復号アルゴリズムのうち前記コア部分を電子回路により構成して、前記暗号復号非コア部によってソフトウエア処理された前記暗号化コンテンツデータを前記電子回路により実行して、前記コア部分をハードウエア処理する暗号復号コア部と、
    を有する再生装置。
  2. 請求項1記載の再生装置において、
    前記暗号復号コア部は、
    外部との間で入出力されるデータのために使用される外部バスと、
    内部でのみ転送されるデータのために使用される内部バスと、
    前記暗号復号アルゴリズムのうち前記コア部分をハードウエア処理する電子回路により構成された暗号復号モジュールと、
    前記外部バスを介し前記暗号復号非コア部との間でデータおよびコマンドを送受信すると共に、前記内部バスを介し前記暗号復号モジュールとの間でデータおよびコマンドを送受信するシーケンサと、有し、
    前記外部バスと前記内部バスとは、物理的に分離されて設けられ、前記暗号復号モジュールによる暗号復号途中のデータは、前記内部バスを転送するのみで、かつ、前記外部バスには出力されないようにした、再生装置。
  3. 請求項1記載の再生装置において、
    前記暗号復号コア部は、
    前記コア部分として、著作権保護のために使われる暗号復号アルゴリズムのうち繰り返し使用される暗号関数処理を含む、再生装置。
  4. 請求項1記載の再生装置において、
    前記暗号復号コア部は、
    前記コア部分として、暗号復号アルゴリズムのうち信号読み出し部用される暗号関数処理を含む、再生装置。
  5. 媒体に記録された暗号化コンテンツデータと、前記暗号化コンテンツデータを暗号復号するための暗号復号アルゴリズムのうち非コア部分の暗号復号非コアプログラムとを読み出すステップと、 読み出された前記暗号復号非コアプログラムを前記暗号化コンテンツデータに対し実行して、前記非コア部分をソフトウエア処理するステップと、
    前記暗号復号アルゴリズムのうち前記コア部分を構成する電子回路により、前記暗号復号非コア部によってソフトウエア処理された前記暗号化コンテンツデータを実行して、前記コア部分をハードウエア処理するステップと、
    を有する再生方法。
JP2006144976A 2005-07-27 2006-05-25 再生装置および再生方法 Pending JP2007060627A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006144976A JP2007060627A (ja) 2005-07-27 2006-05-25 再生装置および再生方法
US11/486,078 US20070110227A1 (en) 2005-07-27 2006-07-14 Method and apparatus for reproducing contents data

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2005218035 2005-07-27
JP2006144976A JP2007060627A (ja) 2005-07-27 2006-05-25 再生装置および再生方法

Publications (1)

Publication Number Publication Date
JP2007060627A true JP2007060627A (ja) 2007-03-08

Family

ID=37923636

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006144976A Pending JP2007060627A (ja) 2005-07-27 2006-05-25 再生装置および再生方法

Country Status (2)

Country Link
US (1) US20070110227A1 (ja)
JP (1) JP2007060627A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8782428B2 (en) 2007-06-08 2014-07-15 Fujitsu Limited Encryption device and encryption method

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7166982B2 (en) * 2003-10-15 2007-01-23 International Rectifier Corporation Hardware based configurable motion control apparatus and method
WO2008105236A1 (ja) * 2007-02-27 2008-09-04 Mitsubishi Electric Corporation 情報配信方法、情報記録方法、情報再生方法、及び、情報記録媒体
US8990583B1 (en) 2007-09-20 2015-03-24 United Services Automobile Association (Usaa) Forensic investigation tool
KR101484110B1 (ko) * 2008-02-29 2015-01-28 삼성전자주식회사 메모리 컨트롤러 및 그에 따른 메모리 장치
KR101973510B1 (ko) * 2011-06-30 2019-05-09 삼성전자주식회사 컨텐츠를 보호하기 위한 저장 장치 및 호스트 장치와 그 방법
CN114385539A (zh) * 2022-01-12 2022-04-22 苏州国芯科技股份有限公司 一种usb存储设备的验证系统、方法、装置及介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040025012A1 (en) * 2002-07-30 2004-02-05 Burks David Patrick System for processing coded content and associated decoding instructions on a removable storage medium
US7007170B2 (en) * 2003-03-18 2006-02-28 Widevine Technologies, Inc. System, method, and apparatus for securely providing content viewable on a secure device
US8576924B2 (en) * 2005-01-25 2013-11-05 Advanced Micro Devices, Inc. Piecewise processing of overlap smoothing and in-loop deblocking

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8782428B2 (en) 2007-06-08 2014-07-15 Fujitsu Limited Encryption device and encryption method

Also Published As

Publication number Publication date
US20070110227A1 (en) 2007-05-17

Similar Documents

Publication Publication Date Title
JP5083420B2 (ja) 認証方法、記録装置及び再生装置
JP4613739B2 (ja) 情報処理装置、情報処理方法、および情報記録媒体、並びにコンピュータ・プログラム
TWI421861B (zh) 資訊處理裝置及方法,資訊記錄媒體製造裝置及方法及資訊記錄媒體
JPH11232779A (ja) コピー防止装置
US8863296B2 (en) Information processing apparatus, information recording medium, information processing method, and computer program
WO1997014147A1 (fr) Support, appareil et procede d'enregistrement d'informations
JP2006163757A (ja) 情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラム
JP2007060627A (ja) 再生装置および再生方法
JP2004030882A (ja) レンダリング装置、コピー制御方法及びプログラム
JP4123455B2 (ja) 情報処理方法及び情報処理装置
JP3735591B2 (ja) 信号処理装置、信号処理方法、及び記憶媒体
WO2005034422A1 (ja) 信号処理システム
JP4228863B2 (ja) 記録装置、信号処理システム、記録方法のプログラム並びにプログラムを格納した記録媒体
JP2000293945A (ja) 情報記録媒体、情報再生装置および逆スクランブル回路
JP2000003559A (ja) デ―タ再生方泡デ―タ再生装置、デ―タ符号化方泡デ―タ記録方泡デ―タ記録装置、認証方法及び半導体チップ
JP3689624B2 (ja) 情報記録媒体、情報記録方法及び情報再生方法
JP2001184787A (ja) 情報記録媒体、情報記録・再生装置、そして、情報記録・再生方法
WO2007046375A1 (ja) 情報記録媒体、データ構造およびデータ再生方法
JP2007287268A (ja) 記録装置
JP2006195973A (ja) データ処理装置
KR100279523B1 (ko) 카피 방지 장치 및 이러한 카피 방지 장치에 사용되는 정보 기록 매체
JP3984792B2 (ja) データ処理方法、データ処理装置
JP2004319085A (ja) 記録媒体、情報再生装置および情報再生方法
KR100965888B1 (ko) 콘텐츠 제공 또는 기록 방법 및 그 방법을 수행하는 장치
JP2006179172A (ja) 記録媒体、情報再生装置および情報再生方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080630

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20081216

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081219

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090417