(57)【特許請求の範囲】
【請求項１】
n次元の鍵空間におけるターゲット鍵の生成の方法であって、nは2以上の整数であり、各鍵は前記鍵空間におけるある座標に対応し、前記ターゲット鍵は座標(x,y,…)に対応し、当該方法は、装置において：
・分割手段によって、n個の値によって構成される座標(X,Y,…)をもつ、記憶装置に記憶されている開始基本鍵KMTを、各鍵部分が一つの次元に対応するn個の鍵部分に分割する段階と；
・各次元について、一方向性関数適用手段によって、その次元に対応する鍵部分に一方向性関数をある回数適用し、前記回数はその次元についての最大座標値からターゲット鍵の次元の座標を引いたものに等しく、これによりターゲット基本鍵部分を得る段階と；
・組み合わせ手段によって、n個のターゲット基本鍵部分を組み合わせてターゲット基本鍵を得る段階と；
・記憶装置に記憶されている開始修正鍵K'MTと前記ターゲット鍵との間の前記鍵空間における距離を整数として表す距離値を生成する段階と；
・一方向性関数適用手段によって、開始修正鍵K'MTに一方向性関数を、前記距離値に等しい回数適用し、これによりターゲット修正鍵を得る段階と；
・XOR手段によってターゲット基本鍵およびターゲット修正鍵をXORしてターゲット鍵を得る段階とを含み、
ターゲット基本鍵およびターゲット修正鍵が等しい長さである、
方法。
【請求項２】
nが2に等しい、請求項１記載の方法。
【請求項３】
前記距離値は、各次元についての開始基本鍵KMTおよびターゲット鍵の座標間の差を足すことによって計算される、請求項１記載の方法。
【請求項４】
すべての鍵部分の長さが同一である、請求項１記載の方法。
【請求項５】
開始基本鍵および開始修正鍵が開始グローバル鍵に含まれる、請求項１記載の方法。
【請求項６】
n次元の鍵空間におけるターゲット鍵の生成のための装置であって、nは2以上の整数であり、各鍵は前記鍵空間におけるある座標に対応し、前記ターゲット鍵は座標(x,y,…)に対応し、当該装置は：
・n個の値によって構成される座標(X,Y,…)をもつ開始基本鍵KMTを取得し；
・前記開始基本鍵KMTを、各鍵部分が一つの次元に対応するn個の鍵部分に分割し；
・各次元について、一つの次元に対応する鍵部分に一方向性関数を、その次元についての最大座標値からターゲット鍵の次元の座標を引いたものに等しい回数だけ適用し、それによりターゲット基本鍵部分を取得し；
・n個のターゲット基本鍵部分を組み合わせて、ターゲット基本鍵を取得するよう適応されたプロセッサを有しており、
前記プロセッサがさらに：
・開始修正鍵K'MTを取得し；
・開始修正鍵K'MTとターゲット鍵との間の前記鍵空間における距離を整数として表す距離値を生成し；
・開始修正鍵K'MTに一方向性関数を前記距離値に等しい回数適用し、それによりターゲット修正鍵を取得し；
・ターゲット基本鍵およびターゲット修正鍵をXORしてターゲット鍵を取得するよう適応されており、
ターゲット基本鍵およびターゲット修正鍵が等しい長さである、
装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、概括的にはデジタル・コンテンツ保護に、詳細には初期鍵からの暗号化鍵および復号鍵の生成に関する。
【背景技術】
【０００２】
この節は、読者に技術の諸側面を紹介するために意図されている。それらの側面は本発明のさまざまな側面に関係することがありうる。この議論は、読者に、本発明のさまざまな側面のよりよい理解を容易にする背景情報を与える助けになると思われる。よって、これらの陳述はこの観点で読まれるべきであって、従来技術の自認として読まれるべきではないことを理解しておくべきである。
【０００３】
WO2008/055900は、初期の「マスター」鍵からの暗号化鍵および復号鍵の生成のためのシステムを教示している。このシステムは、低位の諸向上層（lower  enhancement  layers）のための諸復号鍵を生成しうるもとになる単一の鍵を受信側に提供するためにMPEG-4において有利に使用されうる。図１は、２かける２（すなわち４）の向上層についての鍵生成を例解する。鍵2,2へのアクセスをもつ受信機は、「マスター」鍵の特定の部分に一方向性関数、有利にはハッシュを適用することによって、鍵1,2；2,1および1,1を生成しうる。たとえば、鍵2,1を生成するために、受信機は鍵2,2の左側――L2,2――を鍵2,2の右側――R2,2――のハッシュ値――H(R2,2)――と連結する。
【０００４】
同様に、鍵1,2を生成するために、受信機は鍵2,2の右側――R2,2――を鍵2,2の左側――L2,2――のハッシュ値――H(L2,2)――と連結する。鍵1,1は、鍵2,2；2,1および1,2のいずれからでも生成されうる。当業者は、
鍵1,2を介して計算される鍵1,1  Key1,1＝L1,2‖H(R1,2)＝H(L2,2)‖H(R2,2)が、
鍵2,1を介して計算される鍵1,1  Key1,1＝H(L2,1)‖R2,1＝H(L2,2)‖H(R2,2)
と等しいことを認識するであろう。
【０００５】
当業者は、鍵を修正するために使われる関数が一方向性なので、鍵3,2を鍵2,2からまたは鍵3,1から生成することが計算量的に現実的でないことも認識するであろう（逆は可能であるが）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】WO2008/055900
【発明の概要】
【発明が解決しようとする課題】
【０００７】
のちに見るように、WO2008/055900には欠点がある。したがって、従来技術の欠点を克服するコンテンツ保護システムの必要があることが理解されるであろう。本発明はそのような解決策を提供する。
【課題を解決するための手段】
【０００８】
第一の側面では、本発明は、n次元の鍵空間におけるターゲット鍵の生成の方法であって、nは2以上の整数であり、各鍵は前記鍵空間におけるある座標に対応し、前記ターゲット鍵は座標(x,y,…)に対応する、方法に向けられる。n個の値から構成される座標(X,Y,…)をもつ開始基本鍵KMTが取得され、n個の鍵部分に分割され、各鍵部分が一つの次元に対応する。各次元について、その次元に対応する鍵部分に一方向性関数が、その次元についての最大座標値からターゲット鍵の次元の座標を引いたものに等しい回数だけ適用され、それによりターゲット基本鍵部分を取得する。n個のターゲット基本鍵部分が組み合わされて、ターゲット基本鍵が得られる。開始修正鍵K'MTが取得される。開始修正鍵K'MTとターゲット鍵との間の前記鍵空間における距離を整数として表す距離値が生成される。開始修正鍵K'MTに一方向性関数が前記距離値に等しい回数適用され、それによりターゲット修正鍵が得られる。次いで、ターゲット基本鍵およびターゲット修正鍵が組み合わされてターゲット鍵が得られる。
【０００９】
第一の好ましい実施形態では、nは2に等しい。
【００１０】
第二の好ましい実施形態では、ターゲット基本鍵およびターゲット修正鍵はXORされる。
【００１１】
第三の好ましい実施形態では、距離値は、各次元についての開始基本鍵KMTおよびターゲット鍵の座標間の差を足すことによって計算される。
【００１２】
第四の好ましい実施形態では、すべての鍵部分の長さは同一である。
【００１３】
第五の好ましい実施形態では、開始基本鍵および開始修正鍵は開始グローバル鍵に含まれる。
【００１４】
第二の側面では、本発明は、n次元の鍵空間におけるターゲット鍵の生成のための装置であって、nは2以上の整数であり、各鍵は前記鍵空間におけるある座標に対応し、前記ターゲット鍵は座標(x,y,…)に対応する、装置に向けられる。本装置は：n個の値から構成される座標(X,Y,…)をもつ開始基本鍵KMTを取得し；前記開始基本鍵KMTをn個の鍵部分に分割し、ここで、各鍵部分が一つの次元に対応し；各次元について、一つの次元に対応する鍵部分に一方向性関数を、その次元についての最大座標値からターゲット鍵の次元の座標を引いたものに等しい回数だけ適用し、それによりターゲット基本鍵部分を取得し；  n個のターゲット基本鍵部分を組み合わせて、ターゲット基本鍵を取得し；開始修正鍵K'MTを取得し；開始修正鍵K'MTとターゲット鍵との間の前記鍵空間における距離を整数として表す距離値を生成し；開始修正鍵K'MTに一方向性関数を前記距離値に等しい回数適用し、それによりターゲット修正鍵を取得し；ターゲット基本鍵およびターゲット修正鍵を組み合せてターゲット鍵を取得するよう適応されたプロセッサを有する。
【００１５】
本発明の好ましい特徴について、これから、限定しない例として、付属の図面を参照しつつ述べる。
【図面の簡単な説明】
【００１６】
【図１】従来技術の文書WO2008/055900において教示される鍵生成を示す図である。
【図２】本発明のある好ましい実施形態に基づいて、マスター基本鍵K33およびマスター修正鍵K'33からどのようにして鍵が計算されうるかを示す図である。
【図３】本発明のある好ましい実施形態に基づく鍵生成のためのシステムを示す図である。
【発明を実施するための形態】
【００１７】
本発明は、提起されている解決策が結託攻撃（collusion  attacks）に対して脆弱でありうることが発見されたという事実にその存在理由を見出す。
【００１８】
攻撃者が二つの受信機を分解し、少なくとも二つの保護されたライセンス鍵を入手する（あるいは他の仕方でこれらの鍵を取得する）とする。さらに、これらの鍵の一つが鍵2,1＝(L2,2‖H(R2,2))であり、他方の鍵は鍵1,2＝(H(L2,2)‖R2,2)であるとする。どちらの装置も鍵2,2を生成することはできないが、鍵2,1＝(L2,2‖H(R2,2))の左側の値と鍵1,2＝(H(L2,2)‖R2,2)の右側の値を使うことにより、攻撃者は鍵2,2＝(L2,2‖R2,2)を再構成できる。これが結託攻撃である。本発明は、この結託攻撃に対処するための一般的な鍵生成方式を二つの実施形態とともに提案する。
【００１９】
本発明の一般的な方式は、WO2008/055900における方式を、その鍵（以下「基本鍵」と呼ぶ）を修正鍵を用いて修正してセグメント鍵を生成することによって発展させる。
【００２０】
以下、次の記法を用いる。
【００２１】
・鍵空間はM×T個の異なるセグメント鍵（すなわち、一方の次元方向にM、他方の次元方向にT）を含み、各セグメント鍵はKSmtと表され、ここでm∈{1,…,M}であり、t∈{1,…,T}である。
【００２２】
・2kビット鍵Kmtは、22k-1＜Kmt＜22kとなるような鍵である。Kmtのk個の上位ビット（すなわち左側部分）はLmtと記され、k個の下位ビット（すなわち右側部分）はRmtと記される。換言すれば、Kmt＝Lmt‖Rmtであり、Lmt×2k＋Rmtと書くことができる。鍵Kmtとその表現Lmt‖Rmtの間の区別はしない。
【００２３】
・鍵KMTは、好ましくはWO2008/055900のようにして他の基本鍵が生成されうるもとになる2kビット・マスター基本鍵である。
【００２４】
・H1、H2およびH3は一方向性関数を表す。ここで、H1およびH2の出力のサイズはkビットであり、H3の出力のサイズは2kビットである。H1およびH2が同一であることが有利であるが、このことは必須ではない。H1、H2についての好適なハッシュ関数はたとえば、128ビットの出力をもつMD5であり、H3についてはたとえば256ビットの出力をもつSHA-256である。
【００２５】
・K'MTは、後述する2kビット・マスター修正鍵を表す。
【００２６】
修正鍵は基本鍵と相異なるものとして記述されるが、両方の鍵をグローバル鍵中で提供し、グローバル鍵が必要なときにいつでも分割されて修正鍵および基本鍵にされることも可能である。
【００２７】
セグメント鍵KSmtは次のようにして生成される：
・KMTを、KMT＝(LMT‖RMT)となるよう二つの部分、好ましくは（今の例におけるように）半分に分割する。
・第一および第二の距離値x＝M−mおよびy＝T−tが計算される。距離値は、ある次元方向において、マスター鍵と現在の鍵の間の「レベル」の差を表す。
・総合距離値zが計算される。総合距離値は、実施形態に依存して異なる仕方で計算される。
・セグメント鍵KSmtは
KSmt＝(H1x(LMT)‖H2y(RMT))  XOR  H3z(K'MT)
を計算することによって生成される。別の言い方をすれば、KSmt＝Kmt  XOR  K'mtである。
【００２８】
第一の実施形態では、z＝x＋yである。
【００２９】
第二の実施形態では、zは次のように計算される。
・x＝0かつy＝0であれば、z＝0；
・x＝0かつy≠0であれば、z＝2y−1；
・x≠0かつy＝0であれば、z＝2x−1；
・x≠0かつy≠0であれば、z＝2x＋2y−2。
【００３０】
鍵生成方式を、以下で例によって示す。
【００３１】
本例について、次のことを想定する。
・M＝3、T＝3；
・H1＝H2はkビットの出力をもち、H3は2kビットの出力をもつ。
・zは上記第二の実施形態に従って計算される。
【００３２】
図２は、マスター基本鍵K33およびマスター修正鍵K'33から、鍵KS32、KS31、KS23、KS22、KS21、KS13、KS12およびKS11がどのようにして計算されうるかを示している。当業者は、マスター基本鍵K33とマスター修正鍵K'33がヘッドエンドにおける装置によってランダムにまたは擬似ランダムに生成されることが好ましいことを認識するであろう。
【００３３】
すると、任意の装置（ヘッドエンドにおけるまたは受信機側における）がマスター基本鍵K33およびマスター修正鍵K'33から任意の鍵を生成しうる。一般的な仕方で表現すると、装置は、ある「上位」鍵から任意の「低位」鍵を生成できる――低位鍵は両方の次元方向において同じまたはより低い値をもつ――が、逆はできない。
【００３４】
もちろん、類似の計算により、ある低位鍵を、最も近いいくつかの上位鍵のうちの一つから生成すること、たとえばKS22をK32、K'32、MおよびTから、あるいはK23、K'23、MおよびTからのいずれかで生成することも可能である。たとえば、K32およびK'32から、KS22＝(H1(L32)‖R32)  XOR  H3(K'32)となる。
【００３５】
さらなる明確化のため、図２におけるzの種々の値がどのようにして計算されたかを説明する：
・m＝3,  t＝2:  x＝M−m＝3−3＝0；  y＝T−t＝3−2＝1；  z＝2y−1＝21−1＝1；
・m＝3,  t＝1:  x＝M−m＝3−3＝0；  y＝T−t＝3−1＝2；  z＝2y−1＝22−1＝3；
・m＝2,  t＝3:  x＝M−m＝3−2＝1；  y＝T−t＝3−3＝0；  z＝2x−1＝21−1＝1；
・m＝2,  t＝2:  x＝M−m＝3−2＝1；  y＝T−t＝3−2＝1；  z＝2x+2y−1＝21+21−2＝2；
・m＝2,  t＝1:  x＝M−m＝3−2＝1；  y＝T−t＝3−1＝2；  z＝2x+2y−1＝21+22−2＝4；
・m＝1,  t＝2:  x＝M−m＝3−1＝2；  y＝T−t＝3−2＝1；  z＝2x+2y−1＝22+21−2＝4；
・m＝1,  t＝1:  x＝M−m＝3−1＝2；  y＝T−t＝3−1＝2；  z＝2x+2y−1＝22+22−2＝6。
【００３６】
当業者は、XOR以外の好適な組み合わせ関数が可能であることを認識するであろう。たとえば、ターゲット鍵を、修正鍵および基本鍵の連結をハッシュすることによって得てもよい。
【００３７】
提案される方式では、「低位」セグメント鍵をもつ二つの受信機の結託は、「上位」セグメント鍵の計算を許容しない。
【００３８】
二つの受信機R1およびR2を考える。R1はK31およびK'31を受信し、一方、R2はK13およびK'13を受信する。よって、R1はセグメント鍵KS31、KS21およびKS11を生成しうる。R2はセグメント鍵KS13、KS12およびKS11を生成しうる。共有されるセグメント鍵はKS11であり、一方、KS31およびKS21はR1だけに限られており、KS13およびKS12はR2だけに限られている。
【００３９】
WO2008/055900の解決策では、R1からのL31とR2からのR13を組み合わせることによってKS33＝K33を生成することが可能であった。しかしながら、本発明に基づく方式ではこれは不可能である。KS33を計算するためには、二つの鍵K33およびK'33を計算しなければならない。
【００４０】
WO2008/055900の方式と同様、K33はR1からのK31のL31とR2からのK13のR13を組み合わせることによって容易に得られる。しかしながら、R1からのK'31とR2からのK'13を組み合わせることによってK'33を計算することは計算量的に困難である。
【００４１】
実際、K'33を計算しそれによりKS33を得るためには、K'31＝K'13＝H33(K'33)なので、H3の逆を必要とする。一方向性関数は、今のところ、逆を求めることはできないとされている。
【００４２】
K'32＝H31(K'33)、K'23＝H31(K'33)、K'22＝H32(K'33)を計算し、それによりR1からのK'31およびR2からのK'13を組み合わせることによってセグメント鍵KS32  KS23  KS22を生成することさえ可能ではない。
【００４３】
このように、修正鍵K'mtの使用は、本方式に、結託攻撃に対する耐性をもたらす。
【００４４】
よって、「上位」セグメント鍵が「低位」セグメント鍵の特徴の組み合わせによって生成できないことが認識されるであろう。
【００４５】
本発明の鍵生成方式は、DRM（Digital  Right  Management［デジタル権利管理］）技術によって提供される柔軟なサービスに特に適応されたMPEG-FGS（Fine  Grain  Scalability［微細粒度スケーラビリティ］）について特に好適である。スケーラブル暗号化技法は、好適な鍵管理方式と組み合わされれば、改善されたアクセス制御プロセスを可能にする。
【００４６】
本発明は二次元で記述してきたが、当業者は、基本鍵をn個の部分に分割することによってn次元に一般化されうることを認識するであろう。nは好ましくは2の冪乗である。
【００４７】
図３は、本発明のある好ましい実施形態に基づく鍵生成および配布のためのシステムを示している。システム２００は、少なくともマスター基本鍵KMTおよびマスター修正鍵K'MTを生成するよう適応されたコンテンツ・プロバイダー２１０を有する。これら二つの鍵は、すべてのセグメント鍵を生成することを許容する。コンテンツ・プロバイダー２１０はさらに、すべてのセグメント鍵を計算し、コンテンツを暗号化するためにそれらを使うよう適応されている。次いで暗号化されたコンテンツは、配送のために、適切な配送サーバー２３０、たとえばウェブ・サーバーに転送２６１される。コンテンツ・プロバイダー２１０はマスター鍵KMT、マスター修正鍵K'MTおよび必要な使用規則をライセンス・サーバー２４０に送る２６２。使用規則は、コンテンツがどのように使用されるべきか、典型的には品質レベルおよび可能な解像度を指定する。ライセンス・サーバー２４０はコンテンツ・ライセンスの生成およびユーザーへの配送を受け持つ。他端では、ユーザー装置２２０が配送サーバー２３０からコンテンツをダウンロードする２６３、２６４。暗号化されたコンテンツを消費できるためには、ユーザー装置２２０はライセンス・サーバー２４０にライセンスを要求２６５する。ライセンス・サーバー２４０は、基本鍵Kmtおよび修正鍵K'mtを含む有効なライセンスを生成する。これら二つの鍵は、ユーザー装置２２０によって要求される品質に適合するよう、ライセンス・サーバー２４０によって計算される。最後に、しばしば支払い後に、ライセンスがユーザー装置２２０に安全に送達２６６され、ライセンス中の使用規則に従って、暗号化されたコンテンツが解読され使用されることができるようになる。たとえば、ユーザー装置がビデオの完全な品質についての権利を取得する場合、ライセンスはマスター基本鍵KMTおよびマスター修正鍵K'MTを含む。ライセンス・サーバー２４０は通信のためのインターフェース・ユニット２４２、少なくとも一つのプロセッサ（以下「プロセッサ」）２４４およびライセンスを生成するよう適応されたメモリ空間２４６を有する。
【００４８】
上記第一および第二の実施形態において、zの値は相対的な仕方で、すなわち、K'mtが必ずしもマスター修正鍵K'MTでない場合に修正鍵K'mtから、計算されることもできる。これは第一の実施形態についてはうまく機能する。任意の低位修正鍵K'ijを得るために一方向性関数が修正鍵K'mtに適用されるべき回数をユーザー装置２２０が計算することが容易だからである。しかしながら、第二の実施形態ではもう少し事情は複雑になる。
【００４９】
実際、別の修正鍵K'mtに対する任意の修正鍵K'ijについてのzの計算は、MおよびTの知識を要求する。その場合、zの計算は次のようにして実行されうる。
１．まずK'ijについてz1を計算する、たとえばz1＝2M-i＋2T-j−2、
２．次にK'mtについてz2を計算する、たとえばz2＝2M-m＋2T-t−2、
３．最後にz＝z1−z2およびK'ij＝H3z(K'mt)。
【００５０】
M＝3、T＝3であり、受信された修正鍵はK'22であり、ユーザー装置２２０が最低位の修正鍵K'11を計算することを考える。その際、ユーザー装置２２０はK'11についてz1を計算し：z1＝2M-1＋2T-1−2＝22＋22−2＝6、K'22についてz2を計算する：z2＝2M-2＋2T-2−2＝21＋21−2＝2。K'22に対するK'11についてのzの値は、z＝z1−z2＝6−2＝4である。よって、K'11＝H3z(K'22)＝H34(K'22)である。よって、ユーザー装置は当該鍵空間についてのMおよびTに関する知識を必要とすることが見て取れるであろう。よって、ユーザー装置２２０がすでにMおよびTの値を有するのでない場合（たとえばユーザー装置がこれらの値を登録フェーズの間に、あるいはダウンロードされたコンテンツと一緒に取得した場合、それらの値が変わらないとすれば、有することがありうる）、これらの値はユーザー装置に、たとえばライセンス２６６と一緒にメッセージ内において、送達される。
【００５１】
このモデルの利点は、ユーザーが受信した暗号化されたコンテンツを他のユーザー２５０に超流通（super-distribution）を通じて再配送できるということである。これは、配送サーバーの直接的な関与なしに、スケーラブルなコンテンツが幅広い多様な装置（携帯電話、TVセット、ハイエンドPCなど）をもつ多数のユーザーに配送されることを許容する。スケーラブルなコンテンツが自由に配送できるものの、スケーラブルなコンテンツにアクセスするためには、受信者はライセンス・サーバーに接触して（支払いをして）セグメント解読のために必要とされる基本鍵および修正鍵を入手しなければならない。
【００５２】
コンテンツ・プロバイダー２１０およびユーザー装置２２０は通信のためのインターフェース・ユニット２１２、２２２、少なくとも一つのプロセッサ（以下「プロセッサ」）２１４、２２４およびメモリ空間２１６、２２６を有する。コンテンツ・プロバイダー２１０のプロセッサ２１４は、マスター基本鍵KMTおよびマスター修正鍵K'MTを生成するよう適応されているが、有利にはさらに、すべてのセグメント鍵KSmtを生成し、それらのセグメント鍵を使ってコンテンツを暗号化するよう適応されている。ユーザー装置２２０のプロセッサ２２２は、ライセンス中で受信された鍵からセグメント鍵を生成し、これらの鍵を使ってコンテンツを解読するよう適応される。
【００５３】
本稿および（適切な場合には）請求項および図面において開示される各特徴は、独立して設けられてもよいし、あるいは任意の適切な組み合わせで設けられてもよい。ハードウェアで実装されるものとして記述されている特徴はソフトウェアで実装されてもよく、逆にソフトウェアで実装されるものとして記述されている特徴はハードウェアで実装されてもよい。接続は、適用可能な場合には、無線接続または有線として実装されてもよく、必ずしも直接または専用の接続でなくてもよい。
【００５４】
請求項に参照符号があったとしても、単に例解のためであり、特許請求の範囲に対して限定する効果をもつものではない。
いくつかの付記を記載しておく。
〔付記１〕
n次元の鍵空間におけるターゲット鍵の生成の方法であって、nは2以上の整数であり、各鍵は前記鍵空間におけるある座標に対応し、前記ターゲット鍵は座標(x,y,…)に対応し、当該方法は、装置において：
・n個の値によって構成される座標(X,Y,…)をもつ開始基本鍵KMTを得る段階と；
・前記開始基本鍵KMTを、各鍵部分が一つの次元に対応するn個の鍵部分に分割する段階と；
・各次元について、その次元に対応する鍵部分に一方向性関数をある回数適用し、前記回数はその次元についての最大座標値からターゲット鍵の次元の座標を引いたものに等しく、これによりターゲット基本鍵部分を得る段階と；
・n個のターゲット基本鍵部分を組み合わせてターゲット基本鍵を得る段階と；
・開始修正鍵K'MTを得る段階と；
・開始修正鍵K'MTとターゲット鍵との間の前記鍵空間における距離を整数として表す距離値を生成する段階と；
・開始修正鍵K'MTに一方向性関数を、前記距離値に等しい回数適用し、これによりターゲット修正鍵を得る段階と；
・ターゲット基本鍵およびターゲット修正鍵をXORしてターゲット鍵を得る段階とを含む、
方法。
〔付記２〕
nが2に等しい、付記１記載の方法。
〔付記３〕
ターゲット基本鍵およびターゲット修正鍵が等しい長さである、付記１記載の方法。
〔付記４〕
前記距離値は、各次元についての開始基本鍵KMTおよびターゲット鍵の座標間の差を足すことによって計算される、付記１記載の方法。
〔付記５〕
すべての鍵部分の長さが同一である、付記１記載の方法。
〔付記６〕
開始基本鍵および開始修正鍵が開始グローバル鍵に含まれる、付記１記載の方法。
〔付記７〕
n次元の鍵空間におけるターゲット鍵の生成のための装置であって、nは2以上の整数であり、各鍵は前記鍵空間におけるある座標に対応し、前記ターゲット鍵は座標(x,y,…)に対応し、当該装置は：
・n個の値によって構成される座標(X,Y,…)をもつ開始基本鍵KMTを取得し；
・前記開始基本鍵KMTを、各鍵部分が一つの次元に対応するn個の鍵部分に分割し；
・各次元について、一つの次元に対応する鍵部分に一方向性関数を、その次元についての最大座標値からターゲット鍵の次元の座標を引いたものに等しい回数だけ適用し、それによりターゲット基本鍵部分を取得し；
・n個のターゲット基本鍵部分を組み合わせて、ターゲット基本鍵を取得するよう適応されたプロセッサを有しており、
前記プロセッサがさらに：
・開始修正鍵K'MTを取得し；
・開始修正鍵K'MTとターゲット鍵との間の前記鍵空間における距離を整数として表す距離値を生成し；
・開始修正鍵K'MTに一方向性関数を前記距離値に等しい回数適用し、それによりターゲット修正鍵を取得し；
・ターゲット基本鍵およびターゲット修正鍵をXORしてターゲット鍵を取得するよう適応されていることを特徴とする、
装置。
【図１】
0005474961.tif 000002
【図２】
0005474961.tif 000003
【図３】
0005474961.tif 000004