(57)【要約】記憶媒体（１０１）上のコンテンツへのアクセスを許可する方法であって、記憶媒体（１０１）の、ウォブル等の特性（１０２）から、暗号データ（Ｙ）を取得する工程と、記憶媒体（１０１）からヘルパーデータ（Ｗ）を読み出す工程と、暗号データ（Ｙ）とヘルパーデータ（Ｗ）とへのデルタ縮約関数の適用に基づいて、アクセスを許可する工程とを含む方法、および対応の装置（１１０）。デルタ縮約関数は、本来の主入力値に十分類似した任意の暗号データ（Ｙ）の値が同一の出力値をもたらすような、ヘルパーデータ（Ｗ）の適当な値の選択を可能とする。実質的に異なる暗号データ（Ｙ）の値は、異なる出力値をもたらす。
2006513520.tif 000002
【特許請求の範囲】
【請求項１】
記憶媒体上のコンテンツへのアクセスを許可する方法であって、前記記憶媒体の特性から暗号データを取得する工程と、前記記憶媒体からヘルパーデータを読み出す工程と、前記暗号データと前記ヘルパーデータとへのデルタ縮約関数の適用に基づいて、前記アクセスを許可する工程とを含むことを特徴とする方法。
【請求項２】
少なくとも前記デルタ縮約関数の前記適用に基づいて、前記コンテンツを解読するための解読鍵を導出する工程を含むことを特徴とする請求項１記載の方法。
【請求項３】
さらに再生または記録装置により供給されるデータに基づいて、前記解読鍵を導出することを特徴とする請求項２記載の方法。
【請求項４】
前記デルタ縮約関数の出力が、前記記憶媒体上に記録された制御値に対応するときに、前記アクセスが許可されることを特徴とする請求項１記載の方法。
【請求項５】
前記デルタ縮約関数の前記出力に暗号化関数を適用する工程と、該暗号化関数の出力を前記制御値と比較する工程とを含むことを特徴とする請求項４記載の方法。
【請求項６】
前記暗号化関数が、一方向ハッシュ関数であることを特徴とする請求項５記載の方法。
【請求項７】
前記デルタ縮約関数が、前記暗号データに対する行列乗算と、前記ヘルパーデータの少なくとも一部の線形加算と、前記ヘルパーデータの一部により量子化範囲が規定される量子化と、エラー訂正復号との組合せを含んでいることを特徴とする請求項１記載の方法。
【請求項８】
記憶媒体上のコンテンツへのアクセスを許可するように設計された装置であって、前記記憶媒体の特性から暗号データを取得する第１読出手段と、前記記憶媒体からヘルパーデータを読み出す第２読出手段と、前記暗号データと前記ヘルパーデータとへのデルタ縮約関数の適用に基づいて、前記アクセスを許可するアクセス制御手段とを含むことを特徴とする装置。
【請求項９】
請求項８記載の装置を含み、該装置によりアクセスが許可されたときに再生および／または記録を実施するように設計されている再生および／または記録装置。
【請求項１０】
プロセッサに請求項１記載の方法を実行させるように設計されたコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、記憶媒体上のコンテンツへのアクセスを許可する方法および装置であって、アクセスが許可されるべきか否かを決定するのに用いられる暗号データが、記憶媒体の特性から取得されるような方法および装置に関するものである。
【０００２】
本発明はまた、上記のような装置を含む再生および／または記録装置と、本発明に係る方法をプロセッサに実行させるように設計された、コンピュータプログラムとにも関するものである。
【背景技術】
【０００３】
ＣＤやＤＶＤ等のような記憶媒体上のコンテンツを不正コピーから守るために、コンテンツを暗号化して記憶することがよく行われる。このことは、権限を有する再生装置は、必要な解読鍵の取得が可能なものでなくてはならないことを意味し、その際、好ましくは、権限を有さない再生装置はそれら解読鍵を取得できないような手法がとられる。典型的には、これらの解読鍵は、記憶媒体上に隠されたデータから生成され、好ましくは、記憶媒体上に隠されたデータと再生装置に隠されたデータとから生成される。かかるデータは、権限を有する再生装置の製造時において、それらの再生装置に与えられる。このシステムは、たとえばＤＶＤビデオに用いられている。
【０００４】
上記の形態では、暗号化されたコンテンツと記憶媒体上に隠された解読データとの全体を第２の記憶媒体上にコピーすることができる、クローニング攻撃が可能である。そのようなクローニング攻撃に対する防衛は、ディスク上のデータとして解読データを記憶するのではなく、ディスク自体の中に解読データを隠すことによって実現することができる。これを行うための１つの手法が、いわゆる「ウォブル」を用いる手法である。解読データは、記憶媒体の物理パラメータの変動として、その記憶媒体から取得される。異なる媒体は、異なるウォブルを有するか、全くウォブルを有さず、したがって、そのディスクについては、異なる解読鍵が生成される。このことは、コンテンツの解読が失敗することを意味する。そのような「ウォブル」を生成し、かかる「ウォブル」内に情報を記憶する様々な技術が記載された、本発明と譲受人を同じくする米国特許第５，７２４，３２７号（整理番号ＰＨＮ１３９２２）を参照されたい。
【０００５】
記録可能なＣＤまたはＤＶＤディスクをプレスする処理において発生する元来の収差を用いて、それらのディスクに記録されるであろうコンテンツを暗号化するための暗号鍵を生成することも可能である。ディスクの元来の特性を用いて、固有の識別子を生成する技術の一例については、欧州特許出願公開ＥＰ−Ａ−０７０６１７４号を参照されたい。そのようなアプローチについて知られている１つの問題は、物理特性の測定における小さな偏差が、誤った鍵をもたらし得るという問題である。通常、この問題は、元来の特性ではなく、意図的に作られた、高い信頼性で測定可能な識別子を用いることにより回避される。意図的に書き込まれた補足データから暗号識別子を導出する技術が記載された、本発明と譲受人および発明者を同じくする米国特許第６，２０９，０９２号（整理番号ＰＨＮ１６３７２）を参照されたい。この米国特許の技術は、ディスクの追加加工を必要とし、したがって、加工をより複雑かつ高コストなものとする。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
本発明の１つの目的は、冒頭の段落で述べたような方法であって、記憶媒体の特性の測定値の小さな偏差を許容する方法を提供することである。
【課題を解決するための手段】
【０００７】
本発明によれば、上記の目的は、記憶媒体の特性から暗号データを取得する工程と、その記憶媒体からヘルパーデータを読み出す工程と、暗号データとヘルパーデータとへのデルタ縮約関数の適用に基づいてアクセスを許可する工程とを含む方法において達成される。
【０００８】
デルタ縮約関数（ｄｅｌｔａ−ｃｏｎｔｒａｃｔｉｎｇ  ｆｕｎｃｔｉｏｎ）は、主入力（暗号データ）と副入力（ヘルパーデータ）とを有し、それら主入力および副入力に基づいて出力を生成する関数である。副入力は、主入力信号値の複数の範囲、および主入力信号値の各範囲に対する対応の出力値を規定するという意味において、制御入力であると言える。
【０００９】
より厳密に言えば、任意の本来の主入力値に対して、デルタ縮約関数は、その本来の主入力値に十分類似した任意の主入力値が同一の出力値をもたらすような、副入力の適当な値の選択を可能とする。一方、実質的に異なる主入力値は、異なる出力値をもたらす。
【００１０】
測定値の暗号化処理を可能とするには、測定値は、暗号化処理に先立って、離散的な値に量子化されなくてはならない。いかなる測定値もいくらかのノイズを含んでいると思われるので、量子化の結果は、実験ごとに異なるかもしれない。特に、物理パラメータが量子化の閾値に近い値をとる場合には、わずかな量のノイズが結果を変えてしまうこともあり得る。量子化されたデータを暗号化関数に適用した後では、わずかな変動が強められ、その結果は、期待された結果とは似つかないものとなってしまう。このことは、基本的には暗号化関数に必要な特性である。
【００１１】
量子化の閾値に近すぎる暗号データを特定の担体用に適合させるように、ヘルパーデータの適当な選択を行うことができるので、デルタ縮約関数は、取得される暗号データの信頼性を高める。たとえ元来発生している収差由来の測定値が低い信頼性を有するものであるとしても、これにより、かかる測定値を用いることも可能となる。
【００１２】
国際特許出願国際公開ＷＯ００／５１２４４号、および、Ａｒｉ  ＪｕｅｌｓならびにＭａｒｔｉｎ  Ｗａｔｔｅｎｂｅｒｇ著、Ｇ．Ｔｓｕｄｉｋ編により発表された対応の記事「Ａ  Ｆｕｚｚｙ  Ｃｏｍｍｉｔｍｅｎｔ  Ｓｃｈｅｍｅ（ファジーコミットメント方式）」、第６回コンピュータおよび通信セキュリティＡＣＭ会議（Ｓｉｘｔｈ  ＡＣＭ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ｃｏｍｐｕｔｅｒ  ａｎｄ  Ｃｏｍｍｕｎｉｃａｔｉｏｎｓ  Ｓｅｃｕｒｉｔｙ）、第２８−３６頁、ＡＣＭプレス、１９９９年は共に、参照値に近い値であるが必ずしも参照値に一致する値でなくてもよい生体測定値に基づいて人物を認証する、いわゆるファジーコミットメント方式を開示している。この方式は、攻撃者が参照値に関する情報を知ることを防止する。上記の記事には、この方式の生体認証への応用例のみが記載されており、この方式をウォブルに基づく記憶媒体の認証に応用することについてはもちろんのこと、コピー防止に応用することについても、開示も示唆もされていない。
【００１３】
本発明の多くの有利な実施形態が、従属請求項で規定されている。
【００１４】
本発明の別の１つの目的は、冒頭の段落で述べたような装置であって、記憶媒体の特性の測定値の小さな偏差を許容することのできる装置を提供することである。
【００１５】
本発明によれば、この目的は、記憶媒体上のコンテンツへのアクセスを許可するように設計された装置であって、記憶媒体の特性から暗号データを取得する第１読出手段と、その記憶媒体からヘルパーデータを読み出す第２読出手段と、暗号データとヘルパーデータとへのデルタ縮約関数の適用に基づいてアクセスを許可するアクセス制御手段とを含む装置において達成される。
【発明を実施するための最良の形態】
【００１６】
以下、図面に示した実施形態を参照しながら、本発明の上記およびその他の特徴を明らかにする。全図面に亘って、同一の参照番号は、類似または対応の特徴部分を示している。図面に示された特徴部分のうちのいくつかは、典型的にはソフトウェア内において実装されるものであり、それ自体、ソフトウェアモジュールやオブジェクトといったソフトウェア的な存在を表すものである。
【００１７】
図１は、本発明に従うホスト装置１１０と記憶媒体１０１とを含むシステム１００の模式図である。ホスト装置１１０は、ユーザーが記憶媒体１０１を置くことができる媒体受け部１１１と、記憶媒体１０１からデータを読み出す読出モジュール１１２と、記憶媒体１０１から読み出されたコンテンツを処理し、処理されたコンテンツデータを出力部１１９に供給する様々な処理手段１１３−１１７と、ユーザーがホスト装置１１０の動作を制御するのに使用できるユーザー入力モジュール１１８とを含んでいる。ホスト装置１１０はまた、制御モジュール１２０も含んでいる。この制御モジュール１２０の作用は、後で説明する。
【００１８】
図１では、ホスト装置１１０は、たとえばコンパクトディスク（ＣＤ）リーダーやデジタルバーサタイルディスク（ＤＶＤ）リーダーといったような、光ディスクドライブとして実現されている。しかしながら、装置１１０は、フロッピーディスクドライブとして、または、リムーバブルハードディスク、スマートカード、フラッシュメモリ等の記憶媒体用の読出装置としても、容易に実現され得る。ホスト装置１１０が一部を構成するシステム１００は、たとえば、ＣＤプレーヤーおよび／またはレコーダー、ＤＶＤプレーヤーおよび／またはレコーダー、パソコン、テレビシステム、ラジオシステム等であってもよい。図４は、ホスト装置１１０を含むオーディオ再生装置４００を示した模式図である。装置４００は、ホスト装置１１０により適当なアクセスが許可された場合においてのみ、記憶媒体１０１上のコンテンツの再生および／または記憶媒体１０１上へのコンテンツの記録を行うように設計されている。たとえば、ホスト装置１１０が読出しのためのアクセスのみを許可した場合は、装置４００は、コンテンツの記録またはコピーを行うことはない。
【００１９】
ユーザーが記憶媒体１０１を媒体受け部１１１に置いた後、読出モジュール１１２が始動させられる。この始動は、自動的に行われてもよいし、ユーザーによるユーザー入力モジュール１１８の作動に応答して（たとえば、ボタンを押すことによって）行われてもよい。記憶媒体１０１上に記録されたコンテンツにアクセスするには（たとえば、コンテンツの読出し、再生、処理、またはコピーを許可するには）、権限付与が必要であると想定されている。アクセスの権限が付与されているか否かを確証するために、ここで、読出モジュール１１２が、記憶媒体１０１から暗号データを読み出し、この暗号データを制御モジュール１２０に供給する。
【００２０】
制御モジュール１２０は、暗号データを受け取り、このデータに基づいてアクセス権限付与を試行する。この試行には、ホスト装置１１０に記憶された暗号データ、またはシステム１００によって供給された暗号データも関与する。この権限付与が確証できない場合、制御モジュール１２０は、たとえば、出力部１１９にエラー信号を供給したり、ホスト装置１１０のフロントパネルにあるＬＥＤを作動させることにより、エラー状態を知らせる。
【００２１】
権限付与が確証されると、読出モジュール１１２は、記憶媒体１０１からコンテンツデータを読み出し、そのコンテンツデータを処理手段１１３−１１７に供給する。暗号データが記憶されている特性に応じて、暗号データの読出しとコンテンツデータの読出しとに、異なる読出手段が必要とされることもあり得る。処理手段１１３−１１７の出力は、出力部１１９へと送られ、この出力部１１９から、システム１００の他の構成要素によるコンテンツの読出しが可能とされている（たとえば、コンテンツを動画としてレンダリングすることや、スピーカーにおいてレンダリングされるオーディオ信号を生成することによる読出し）。最初に、ホスト装置１１０が準拠システム１００内にインストールされていることを、ホスト装置１１０に確証させることが望ましいかもしれない。このことは、出力１１９がデジタル出力である場合、特に重要である。システム１００の準拠性が確証できない場合には、出力部１１９には何らコンテンツが存在しないはずである。
【００２２】
ホスト装置１１０は、多種多様な処理手段を備え得る。図１の例示的な実施形態では、処理手段は、解読モジュール１１３、透かし検出モジュール１１４、条件付アクセスモジュール１１５、信号処理モジュール１１６、およびバス暗号化モジュール１１７を含んでいる。
【００２３】
まず、記憶媒体１０１から読み出されたままの状態のコンテンツは、制御モジュール１２０から供給された解読鍵を用いて、解読モジュール１１３によって解読される。透かし検出モジュール１１４は、解読されたコンテンツデータを処理して、その中に含まれる埋込データを有する透かしを探索する。この透かしは、たとえば、デジタル著作権管理データ、コンテンツ所有者の識別情報、または記憶担体のリファレンス情報を含み得る。
【００２４】
条件付アクセスモジュール１１５は、コンテンツデータへのアクセスを統制するように設計されている。この条件付アクセスモジュール１１５は、厳格なコピー禁止体制を遵守させるようにプログラムされてもよいし、コンテンツのデジタル出力への供給を許可しないようにプログラムされてもよい。後者の場合、条件付アクセスモジュール１１５は、アナログ信号のみが生成され出力部１１９に供給されるべきであることを示す信号を、信号処理手段１１６に送る。条件付アクセスモジュール１１５はまた、アナログ出力部１１９に供給される信号中において、マクロビジョンその他のコピー防止機構のスイッチオンを行うようにプログラムされてもよい。条件付アクセスモジュール１１５はさらに、出力部１１９に供給される信号中に、特定のタイプの透かしを埋め込むようにプログラムされてもよい。条件付アクセスモジュール１１５はまた、デジタル出力部１１９に供給される信号中において、特定のタイプの暗号化のスイッチオンを行うようにプログラムされてもよい。
【００２５】
信号処理モジュール１１６は、コンテンツデータを、出力部１１９上に提供可能な信号へと変換する役割を担う。この処理は、たとえばアナログオーディオおよび／またはビデオ信号を生成する処理を含み得るが、信号中に透かしデータを埋め込む処理、コンテンツの特定部分をフィルタ抽出する処理、コンテンツのデモ再生版を生成する処理等も含んでいてもよい。実行されるべき厳密な信号処理動作または変換動作は、たとえば、コンテンツのタイプ、コンテンツ内に埋め込まれたデジタル著作権管理データ、条件付アクセスモジュール１１５の出力等に依存する。
【００２６】
バス暗号化モジュール１１７は、出力部１１９上に提供されるオーディオおよび／またはビデオ信号を暗号化する。たとえば、ホスト装置１１０は、システム１００の他の構成要素と共に認証プロトコルに関与し得る。この認証プロトコルの結果として、ホスト装置１１０と他の構成要素とが、秘密鍵を共有する。それにより、コンテンツは、その秘密鍵を用いて暗号化され、暗号化された形態で出力部１１９上に提供され得るようになる。こうすることにより、出力部１１９から読出しを行うことができる他の構成要素（たとえば、出力部１１９と接続されたバスで音を聴くことにより、読出しを行うことができる構成要素）は、そのコンテンツにアクセスできないこととなる。
【００２７】
ここで、重要なこととして、処理モジュール１１３−１１７はすべて、全体または一部がソフトウェアの形態で実装されていてもよいホスト装置１１０の構成要素である点に留意されたい。必ずしも、これらモジュール１１３−１１７のすべてを常に使用しなくてはならないわけではない。本願と譲受人を同じくする欧州特許出願第０２０７７４０６．３号（整理番号ＰＨＮＬ０２０５４９）に記載されているアプローチを用いることにより、これらモジュール１１３−１１７のフレキシブルな構成および制御が実現できる。
【００２８】
暗号データは、記憶媒体の物理パラメータの変動１０２として、記憶媒体１０１上に暗号化されている。この変動は、暗号データを表す変化パターンを示している。かかる記憶媒体の物理パラメータは、記憶媒体上の「ウォブル」と呼ばれることがある。そのような「ウォブル」を生成し、かかる「ウォブル」内に情報を記憶する様々な技術が記載された、本発明と譲受人を同じくする米国特許第５，７２４，３２７号（整理番号ＰＨＮ１３９２２）を参照されたい。当然ながら、かかる物理パラメータに元来生じている変動も、シーズとして用いられ得る。
【００２９】
好ましくは、暗号データは、そのトラックに沿って中間領域と交互に配された、光検出可能なマークのパターンとして表される。これらの変動１０２は、好ましくは、トラック方向と交差する方向に関する、トラック位置の変動である。
【００３０】
トラックに沿って情報マークを有する記憶媒体１０１の別の１つの実施形態は、トラックに沿った情報マークの存在の有無によってもたらされる第１の変動と、そのトラックに付随する変動によってもたらされる第２の変動とを示す。ここで第１の変動は、記録担体上に記録された情報信号を表し、第２の変動は、コードを表す変化パターンを示す。
【００３１】
暗号データを得るための他の選択肢もまた可能である。Ｒ．Ｐａｐｕ、Ｂ．Ｒｅｃｈｔ、Ｊ．Ｔａｙｌｏｒ、およびＮ．Ｇｅｒｈｅｎｆｅｌｄによる論文「Ｐｈｙｓｉｃａｌ  ｏｎｅ−ｗａｙ  ｆｕｎｃｔｉｏｎｓ（物理的な一方向関数）」、サイエンス、第２９７巻、２０、２００２年９月２０日、第２０２６−２０３０頁を参照されたい。無秩序な散乱媒体が、レーザービームによって励起され、結果として得られた光パターンが測定される。かかる散乱媒体は、光ディスクの表面上のいずれかの個所において、または光ディスク内に埋め込まれたいずれかの個所において、使用され得る。測定された光パターンは、暗号データとしての役割を果たす。この方法に関しては、信頼性が高められる必要があることも、よく認識されている。
【００３２】
読出モジュール１１２は、上記の記憶媒体の物理パラメータの変動１０２を読み出し、暗号データを再構成して、制御モジュール１２０に供給する。物理パラメータの変動の測定には、通常、たとえばディスクの光ピックアップのサーボ制御ループに接続された回路のような、特別の回路が必要とされる。測定された変動は、たとえば測定結果の小さな誤差を補償するための巡回冗長検査（Ｃｙｃｌｉｃ  Ｒｅｄｕｎｄａｎｃｙ  Ｃｈｅｃｋ；ＣＲＣ）のような、追加データを伴う暗号データを含んでいてもよい。暗号データは、圧縮その他の暗号化を施された形態で記憶されていてもよい。したがって、暗号データを使用可能な形態にするためには、測定された変動に、復元、復号、またはその他の処理を施す必要があるかもしれない。これらの変動を他の目的に使用できるようにするために、これらの変動に増強その他の処理を施さなくてはならない場合には、処理された変動が、暗号データを表すものである。
【００３３】
ここで、物理パラメータは、高い信頼性で測定できるように選択されなくてもよいことが分かった。記録可能なＣＤまたはＤＶＤディスクのプレス処理において生じる元来の収差を、パラメータとして用いることも可能である。以下、このことをより詳細に説明する。
【００３４】
読出モジュール１１２はまた、ヘルパーデータを記憶媒体１０１から読み出す。このヘルパーデータは、通常の形態で記憶媒体１０１上に記録されるものでよく、たとえば、ＣＤ上のデータトラックとして、または媒体１０１の専用のセクター内に記録され得る。また、たとえば透かしを用いて、記憶媒体１０１上に記録されたコンテンツ内に、ヘルパーデータを埋め込むことも可能であると考えられる。
【００３５】
制御モジュール１２０内における権限付与処理（この権限付与処理に基づいて、記憶媒体１０１へのアクセスが許可される）は、暗号データとヘルパーデータとへのデルタ縮約関数の適用に基づいている。この適用について説明するため、まず、いくつかの表記法を説明する。
・  Ｙ：記憶媒体１０１の物理パラメータの値を測定することにより得られたままの状態の、暗号データ。
・  Ｗ：記憶媒体１０１から読み出されたヘルパーデータ。
・  Ｖ：制御値。
・  Ｇ（）：デルタ縮約関数。
・  Ｆ（）：暗号化関数。好ましくは狭義の一方向ハッシュ関数であるが、所望の暗号特性を実現できる関数であれば、たとえば鍵付一方向ハッシュ関数、トラップドアハッシュ関数、非対称解読関数、または対称暗号化関数までも含めて、いかなる暗号化関数を用いてもよい。
【００３６】
図２に図解した権限付与処理は、以下のように進行する。暗号データＹとヘルパーデータＷとの両方が、上記に説明したようにして取得され、縮約モジュール２０５に供給される。ここで、デルタ縮約関数Ｇ（）が、暗号データＹおよびヘルパーデータＷに適用され、
Ｚ＝Ｇ（Ｙ，Ｗ）
が得られる。
【００３７】
暗号化関数Ｆ（）（たとえば、よく知られた暗号化のための一方向ハッシュ関数ＳＨＡ−１、ＭＤ５、ＲＩＰＥ−ＭＤ、ＨＡＶＡＬ、またはＳＮＥＲＦＵのうちの１つ）は、ハッシュモジュール２０６内において、デルタ縮約関数Ｇ（）の出力結果に適用される。すなわち、
Ｕ＝Ｆ（Ｚ）＝Ｆ（Ｇ（Ｙ，Ｗ））
である。
【００３８】
関数Ｆ（）の出力結果Ｕは、比較器２０７内において、制御値Ｖと比較される。ＵとＶとが一致した場合には、権限付与が許可される。一致しなかった場合には、権限付与は許可されない。制御値Ｖは、ヘルパー値Ｗと全く同様に、記憶媒体１０１上に存在していてもよいし、別の経路を介して取得されてもよい。たとえば、制御値Ｖは、スマートカード上に記憶されていてもよいし、記憶媒体に添付されたチップインディスク上に記憶されていてもよいし（たとえば、本願と出願人を同じくする国際特許出願国際公開ＷＯ０２／１７３１６号（整理番号ＰＨＮＬ０１０２３３）参照）、外部のサーバーに接触することにより取得されてもよい。
【００３９】
制御値Ｖは、たとえば、記憶媒体１０１の製造時、または記憶媒体１０１上へのコンテンツの記録時において、予め計算される。物理パラメータが読み出されて、値Ｘが取得される。値Ｖは、ランダムに（または擬似ランダムに）選択された何らかの秘密値Ｓに、ハッシュ関数Ｆ（）を適用した出力結果として計算される。すなわち、
Ｖ＝Ｆ（Ｓ）
である。
【００４０】
この秘密値Ｓは、ヘルパーデータＷの決定にも用いられる。Ｗは、Ｇ（Ｘ，Ｗ）がＳに等しくなるように計算される。実用上、このことは、Ｇ（）は逆関数Ｗ＝Ｇ−１（Ｘ，Ｓ）の計算が可能なものであることを意味する。
【００４１】
上記に説明したように、任意の主入力値に対して、デルタ縮約関数Ｇ（）は、その本来の主入力値に十分類似した任意の主入力値が同一の出力値をもたらすような、副入力の適当な値の選択を可能とする。一方、実質的に異なる主入力値は、異なる出力値をもたらす。
【００４２】
非常に望ましくはあるが、本発明の目的のために厳密に必須ではない１つの特性として、「イプシロン・リビーリング（ｅｐｓｉｌｏｎ  ｒｅｖｅａｌｉｎｇ）」の特性がある。この特性は、不正なベリファイアが、関数の副入力の値のみを参照して、主入力の値を参照しないような状況に対処する。このような場合、ベリファイアは、出力値についてほとんど学習を行わない（たとえばイプシロンより多くは学習しない）べきである。そのような攻撃の典型的な例は、暗号データＹを用いずに、不正コピーされたディスクからデータを取得しようとするハッカーにより、ディスクドライブが改変される例である。
【００４３】
第１の実施形態として、副入力は、可能性のあるすべての主入力値とそれらの対応の出力値との、網羅的なリストとして選択され得る。第２の実施形態は、主入力から副入力を減算し、その結果を最も近い整数に丸める関数、または同様の減算結果を、所与の幾何学格子上の最近傍点にマッピングする関数を利用する（ＪｕｅｌｓおよびＷａｔｔｅｎｂｅｒｇによる上記で引用した論文参照）。
【００４４】
別の１つの実施形態では、主入力Ｙは、複数の値を項とするベクトルであると想定される。副入力は、Ｙのどの項が離散的な値に量子化されても不明確さを生じさせないような「大きな」値を含んでいるかに関する情報を包含する、ベクトルＷである。この場合、Ｚ＝Ｗ＊ｓｉｇｎ（Ｙ）である。ここで、この＊は、１つ１つの項ごとの乗算を表しており、ベクトルＷは、０および１の値を含んでいる。関数ｓｉｇｎ（Ｙ）は、Ｙが負であるときに−１を返し、Ｙが正であるときに＋１を返し、Ｙが０に等しいときに０を返す関数である。したがって、結果として得られるベクトルは、−１、０、および１の値を含む。
【００４５】
別の１つの実施形態では、Ｇ（Ｗ，Ｙ）がエラー訂正手法を適用する。Ｙは、離散的な値に量子化される。Ｗは、冗長性を含んでいる。ここでの例として、１つのエラーを訂正することができるハミング（７，４）コードを考える。この（７，４）コードの例では、Ｙの長さとＷの長さとを合わせた長さが７であり、Ｙの長さが４である。したがって、Ｗの長さは３となるはずである。Ｙは４つの成分を含み、すなわちＹ＝（ｙ１，ｙ２，ｙ３，ｙ４）であり、Ｗは３つの成分を含み、すなわちＷ＝（ｗ１，ｗ２，ｗ３）である。登録の際、
【数１】
2006513520.tif 000003
を規定する。
【００４６】
出力Ｚは、３つの成分（ｚ１，ｚ２，ｚ３）を含んでおり、これらは、
【数２】
2006513520.tif 000004
として計算される。ここで、Ｇは復号関数であり、たとえばＪ．Ｂ．Ｆｒａｌｅｉｇｈ、「Ａ  ｆｉｒｓｔ  ｃｏｄｅ  ｉｎ  Ａｂｓｔｒａｃｔ  Ａｌｇｅｂｒａ（抽象代数学における最初の規則）」、Ａｄｄｉｓｏｎ  Ｗｅｓｌｅｙ、Ｒｅａｄｉｎｇ、ＭＡ、１９９３年、第５版、第１４９−１５７頁で説明されているような関数である。最近傍デコーダは、７ビットのストリング、すなわち、ｓｉｇｎ（ｙ１）、ｓｉｇｎ（ｙ２）、ｓｉｇｎ（ｙ３）、ｓｉｇｎ（ｙ４）、ｗ１、ｗ２、ｗ３を調べる。
【００４７】
このストリングが、
【数３】
2006513520.tif 000005
の条件を満足しない場合には、デコーダは、この７ビットのストリング内に含まれるビットのうちの１つの反転を試みる。このビットの反転は、変更されたストリングが上記の条件を満たすか、あるいは変更されたストリングが上記の条件を満たすことなくすべてのビットが反転されるまで、行われる。この関数は明らかに、１ビットに等しいデルタを有するデルタ縮約関数である。制御値Ｖは、Ｖ＝Ｆ（ｓ１，ｓ２，ｓ３）として、登録時に予め計算される。
【００４８】
この関数Ｇ（）はデルタ縮約関数である（すなわち、この関数Ｇ（）は、Ｙのわずかな乱れには敏感でない）が、Ｗが分かっていさえすれば、Ｚの値を隠すという点においては、より好ましさの低い特性を有している。実際、この関数は３つのビットを明かしてしまうものである。すなわち、ある所与のＷに対して、Ｙの不確定性は、４ビットから１ビットへと減らされる。しかしながら、より大きなコードワードについては、かかる特性はより好ましいものとされ得る。特に、コードのレートが１／２よりも顕著に低い場合にはそうである。そのような場合には、Ｙの未知のビットの数と比較して、少数の冗長ビットＷのみがベリファイアに提供される。符号化方法の使用法については、ＪｕｅｌｓおよびＷａｔｔｅｎｂｅｒｇによる上記で引用した論文を参照されたい。
【００４９】
さらに別の１つの実施形態では、主入力および副入力は等しい長さのベクトルであり、Ｙ＝（ｙ１，ｙ２，ｙ３，・・・）、Ｗ＝（ｗ１，ｗ２，ｗ３，・・・）、かつＺ＝（ｚ１，ｚ２，ｚ３，・・・）である。Ｙ、Ｗ、およびＺのｉ次元目に関するデルタ縮約関数Ｇ（）は、ステップサイズをｑとして、
【数４】
2006513520.tif 000006
である。
【００５０】
登録時において、Ｘのｉ番目の成分（ｘｉと表記する）が測定される。Ｗに関しては、任意の小さなδに対してｘｉ＋ｗｉ＋δが同一のｚｉに量子化されるような値に、ｘｉ＋ｗｉの値がされるように、ｗｉの値が計算されなくてはならない。秘密値Ｓは、Ｙ、Ｗ、およびＺと同一の長さを有するベクトルとして選択される。Ｓのｉ次元目に関しては、測定されたｘｉに対して
【数５】
2006513520.tif 000007
となるように、ｗｉおよび整数ｎが選択される。
【００５１】
ここで、ｎ＝・・・，−１，０，１，２，・・・は、−ｑ／２＜ｗｉ＜ｑ／２となるように選択される。ｎの値は破棄されるが、ｗｉの値は、ヘルパーデータＷとしてリリースされる。制御値Ｖは、Ｖ＝Ｆ（Ｓ）として、秘密値Ｓから直接取得される。認証の際、縮約モジュール２０５が、上記に説明したデルタ縮約関数Ｇ（）を実行して、Ｚを取得する。
【００５２】
ここまで提示してきた実施形態より、様々な種類のデルタ縮約関数の存在が分かるであろう。用途の広い実装形態では、デルタ縮約関数は、ヘルパーデータＷが４つの部分Ｗ１、Ｗ２、Ｗ３、Ｗ４に分けられた以下の演算の、１つ以上を含み得る。
−  主入力ベクトルＹに対する（線形）行列乗算（Ｗ１は行列を規定する）。
−  たとえば（上記で最後に述べた実施形態で説明した）Ｙ＋Ｗ２のような、ヘルパーデータＷ２の線形加算。
−  Ｗ３が量子化範囲を規定する量子化。
−  エラー訂正復号。Ｗ４は、たとえば冗長ビットを含むものであってもよい（たとえば、冗長ビットがヘルパーデータから直接取得される、上記でハミング（７，４）コードとして説明した例）。
【００５３】
図３は、上記すべての演算の組合せの一例を示している。デルタ縮約関数Ｇ（）は、線形行列演算Ｈ（実数または虚数に対して）、ヘルパーデータＷ２の加算、量子化器／スライサーＱ、およびエラー訂正コード（ＥＣＣ）ブロックに分割される。
【００５４】
演算Ｈは、ヘルパーデータＷ１を用いて、ｎ１ビットの長さを有する出力Ｙ１を生成する。ヘルパーデータＷ２を加算した結果は、ｎ２ビットの長さを有する出力Ｙ２である。Ｙ２は量子化器／スライサーＱに供給され、この量子化器／スライサーＱは、Ｙ２およびＷ３から、やはり長さがｎ２である出力Ｙ３を生成する。ＥＣＣブロックは、入力Ｙ３およびＷ４から、ｎ３個の信頼性の高いビットＺを計算する。暗号化関数Ｆ（）は、Ｚをハッシュして、ｎ４ビットの長さを有するＵとする。
【００５５】
ハミング（７，４）コードの例示的な実施形態が示したとおり、ヘルパーデータ内におけるエラー訂正冗長ビットの使用を避けることは、情報を隠す特性の点では利点を有する。すなわち、ヘルパーデータが冗長ビット（たとえばＣＲＣビット）の形式でエラー訂正コード内に挿入されることのないような、デルタ縮約関数の下位分類を考えることが有用である（冗長性のないデルタ縮約関数）。ヘルパービットをエラー訂正デコーダへの入力として直接用いるのではなく、デコーダに提供される冗長ビットが、主入力および副入力から情報ビットと同様の手法で生成される。それでもなお、冗長性のないデルタ縮約関数は、エラー訂正復号を含んでいてもよい。図３では、このことは、信号Ｗ４が存在しないことを意味する。
【００５６】
暗号化されたコンテンツデータＥＣＤの解読モジュール１１３内における解読のための、解読鍵Ｋの基として、値Ｚを用いることが可能である。値Ｚは、そのまま用いられてもよいし、たとえばハッシュ関数を値Ｚに適用すること等により、処理されてもよい。しかしながら、ここでハッシュ関数Ｆ（Ｚ）を用いるべきではない。なぜならば、ハッシュ関数Ｆ（Ｚ）を用いると、解読鍵がプレーンテキストで利用可能な値Ｖに等しくなるためである。しかしながら、実際の実装形態の複雑さを節減するために、Ｆ（Ｚ’）の使用を選択してもよい。ここで、Ｚ’は、Ｚをわずかに変更したもの（たとえば、１つのビットを反転させることによって変更したもの）である。
【００５７】
解読鍵Ｋはさらに、システム１００により供給されたデータからも導出され得る。たとえば、コンテンツの解読に必要な最終的な解読鍵を得るために、導出された解読鍵に連鎖させられる秘密値が、工場において、ホスト装置１１０がインストールされている装置４００にプログラムされてもよい。値Ｚ（処理された値であっても、処理されていない値であってもよい）とシステムにより供給されたデータとの組合せが、ハッシュ関数に供給されて、解読鍵が取得されてもよい。
【００５８】
続いて、制御モジュール１２０は、解読鍵を解読モジュール１１３に供給することができる。この解読モジュール１１３は、上記に説明したように、この解読鍵を用いてコンテンツを解読することができる。このようにして、コンテンツへのアクセスが暗黙的に許可される。誤った解読鍵が得られている場合には、解読は失敗し、適切な出力は得られない。この場合、解読が失敗したことはその出力から明らかであるので、Ｖを取得し、ＵをＶと比較することは不要である。
【００５９】
解読鍵を何ら供給する必要がない場合でさえも、アクセスを制御することは可能である。比較器２０７がＵとＶとの間の違いを検出すれば、制御モジュール１２０は、出力部１１９上に提示された信号を抑制することができる。言い換えれば、コンテンツ自体の保護にかかわらず、データＵとＶとが一致しない場合には、コンテンツへのアクセスは許可されない。
【００６０】
この最後のオプションは、本発明を、コピー防止方法（たとえば暗号化を含まないシステムに追加導入されるコピー防止方法）として使用することを可能とする。１つの例は、ダウンロードされたオーディオの、家庭内における、ＣＤ−Ｒへの適法な記録である。図２の認証方法は、新世代のプレーヤー内において応用することが可能である。ヘルパー値Ｗおよび制御値Ｙは、工場において、空のＣＤ−Ｒ上に記憶される。既存のＣＤプレーヤーとの互換性を担保するため、記録装置は、コンテンツを平文で記憶する。新規なプレーヤーは、ディスクからＷおよびＶを取得し、認証を実行し、適法に生成されたＣＤ−Ｒを再生するが、かかるＣＤ−Ｒの不正なビットコピーは再生しない。かかる不正なビットコピーも、ＷおよびＶの値のコピーを含むが、この新規なディスクは異なるウォブルを有するので、この新規なディスク上の値Ｙは、Ｖとは異なるＵの値をもたらす。
【００６１】
ここで、上記に説明した実施形態は、本発明を限定するものではなく、単に説明のためのものであり、当業者においては、特許請求の範囲による本発明の範囲から逸脱することなく、多くの変更実施形態を設計することが可能である点に留意されたい。
【００６２】
たとえば、本願と出願人を同じくする国際特許出願国際公開ＷＯ０１／９５３２７号（整理番号ＰＨＮＬ０００３０３）には、通常の手法によるコピー防止および記憶媒体に対する制御のためのデータ記憶方法であるが、記憶媒体の物理パラメータの意図的に作られた変動を用いて、データの暗号化ハッシュを記憶するデータ記憶方法が開示されている。その記憶されたデータのハッシュが、その物理パラメータの測定値と一致することを確認することによって、記憶媒体へのアクセスが統制される。さらに、本発明に従うヘルパーデータの記憶およびデルタ縮約関数の使用を行うことにより、この確認処理の信頼性が高められる。
【００６３】
各請求項において括弧内に記された参照符号は、その請求項を限定するものと捉えられるべきものではない。「含む」または「備える」との語は、請求項に列挙された以外の要素または工程の存在を排除するものではない。ある要素の前に置かれた「１つの」との語は、そのような要素が複数存在することを排除するものではない。本発明は、いくつかの明確な構成要素を含むハードウェアによって実装されてもよいし、適切にプログラミングされたコンピュータによって実装されてもよい。
【００６４】
いくつかの手段を列挙した装置の請求項については、それら手段のうちのいくつかが、ハードウェアの１つの同一の項目によって実現されてもよい。特定の複数の施策が単に互いに異なる従属請求項で規定されているという事実は、それらの施策の組合せは有利に使用できないということを意味するものではない。
【図面の簡単な説明】
【００６５】
【図１】本発明に従うホスト装置と記憶媒体とを含むシステムの模式図
【図２】権限付与処理を図解した模式図
【図３】デルタ縮約関数の１つの実施形態を図解した模式図
【図４】ホスト装置を含むオーディオ再生装置を示した模式図
【図１】
2006513520.tif 000008
【図２】
2006513520.tif 000009
【図３】
2006513520.tif 000010
【図４】
2006513520.tif 000011
【国際調査報告】
2006513520.tif 000012
2006513520.tif 000013
2006513520.tif 000014
2006513520.tif 000015
2006513520.tif 000016