(57)【要約】  認証機能を提供する方法が記載されている。この方法は、（ａ）  認証機関（ＣＡ）において、秘密Ｐを生成し、秘密Ｐを適用して第１の装置（３０，Ａ）に代わってデータストリング（ｍＡ）に署名し、署名されたデータストリングを第１の装置（３０，Ａ）に伝送するステップ、（ｂ）  データストリング（ｍＡ）の真正性を検証するための秘密情報を、認証機関（２０）から、秘密情報を使用して第２の鍵（ｋＡＢ２）を生成するように動作可能な第２の装置（４０，Ｂ）に伝送するステップ、（ｃ）  第１の装置（３０，Ａ）において、第２の装置（４０，Ｂ）に関係する公開情報を使用して、データストリングが真正なものである場合に生成可能な第１の鍵（ｋＡＢ１）を生成するステップ、（ｄ）  第２の鍵（ｋＡＢ２）を用いて、第２の装置（４０，Ｂ）から第１の装置（３０，Ａ）に伝送されるデータを保護するステップ、（ｅ）  第１の装置（３０，Ａ）において、第１の鍵（ｋＡＢ１）を用いて、第２の装置（４０，Ｂ）から第１の装置（３０，Ａ）に伝送された保護済みのデータにアクセスするステップ、を有している。
2008506293.tif 000002
【特許請求の範囲】
【請求項１】
認証機関と少なくとも第１の装置および第２の装置とを有するネットワークにデジタル認証機能を備える方法であって、
前記少なくとも第１の装置および第２の装置は、前記認証機関と通信を行うために前記認証機関に接続可能であり、
前記方法は、
（ａ）  前記認証機関において、秘密を生成し、前記秘密を適用して前記第１の装置に代わってデータストリングに署名し、署名された前記データストリングを前記第１の装置に伝送するステップ、
（ｂ）  前記データストリングの真正性を検証するための秘密情報を、前記認証機関から、前記秘密情報を使用して前記データストリングの真正性を検証するための第２の鍵を生成するように動作可能な前記第２の装置に伝送するステップ、
（ｃ）  前記第１の装置において、前記第２の装置に関係する公開情報を使用して、前記データストリングが真正なものである場合に生成可能な第１の鍵を生成するステップ、
（ｄ）  前記第２の鍵を用いて、前記第２の装置から前記第１の装置に伝送されるデータを保護するステップ、
（ｅ）  前記第１の装置において、前記第１の鍵を用いて、前記第２の装置から前記第１の装置に伝送された保護済みの前記データにアクセスするステップ、
を有する方法。
【請求項２】
前記ステップ（ｅ）において、前記保護済みのデータへのアクセスは、検証の間に前記認証機関がオンラインアクセスすることなく、実現される、請求項１に記載の方法。
【請求項３】
前記秘密は二変数多項式である、請求項１に記載の方法。
【請求項４】
前記第１の鍵は、前記第２の装置に関連する公開ストリングを使用して求められる多項式である、請求項１に記載の方法。
【請求項５】
前記ステップ（ａ）において、前記署名されたデータストリングは、第三者に知られないように、前記認証機関から前記第１の装置に伝送される、請求項１に記載の方法。
【請求項６】
前記署名されたデータストリングは、暗号化技術を使用して、第三者に知られないように伝送される、請求項５に記載の方法。
【請求項７】
前記第１の装置の伝送された保護済みのデータの検証が明示的に行われる、請求項１に記載の方法。
【請求項８】
前記第１の装置の伝送された保護済みのデータの検証が暗黙的に行われる、請求項１に記載の方法。
【請求項９】
前記方法が、Blomの方式とIBEとのうちの少なくともいずれか一方に基づいている、請求項１に記載の方法。
【請求項１０】
相互通信を行うように備えられた認証機関と複数の装置とを有する通信システムであって、
前記通信システムは、請求項１に記載の方法に従って動作する、通信システム。
【請求項１１】
請求項１に記載の方法に従って動作する通信ネットワークでのデータ検証のためのデジタル証明書。
【請求項１２】
請求項１に記載の方法を適用することによって検証が可能な暗号化データ。
【請求項１３】
前記暗号化データは、音声プログラムコンテンツおよび／又は映像プログラムコンテンツを有する、請求項１２に記載の暗号化データ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デジタル認証機能を提供する方法に関し、例えば、暗黙的な検証によりデジタル認証機能を提供する方法に関する。更に、本発明は、この方法を実現する装置およびシステムにも関する。更に、本発明は、本発明を実行する場合に生成されるデジタル証明書および関連するデータに関する。
【背景技術】
【０００２】
デジタル証明書は、暗号システムを実行する場合に役立つ暗号技術の要素である。デジタル証明書は、対応するストリング又はメッセージｍに署名され、認証機関（ＣＡ）により発行されるデジタル署名と規定される。斯かる証明書を発行することによって、ＣＡはストリングｍの真正性を保証する。他の装置は、デジタル署名をチェックすることによって、ストリングｍの真正性を検証することができる。
【０００３】
従来では、デジタル証明書は、公開鍵技術を使用して実現されている。斯かる技術では、認証機関（ＣＡ）が公開鍵とプライベート鍵とのキーペアを所有している。ここで、ＰＣＡおよびＳＣＡは、それぞれ公開鍵およびプライベート鍵を表す。ＣＡは、ＣＡのプライベート鍵ＳＣＡを使用してストリングｍに関する証明書CertＣＡ（ｍ）を発行する。Ｅ（ｙ，ｘ）が鍵ｙを使用して項目ｘが暗号化されていることを表す場合、証明書CertＣＡ（ｍ）は式１に記載されるような形式を取ることができる。
【数１】
2008506293.tif 000003
尚、証明書CertＣＡ（ｍ）に関して他の形式も潜在的に可能である。証明書CertＣＡ（ｍ）のデータサイズを小さくするために、証明書は、式２に記載されているような形式をとることがもっと有利である。
【数２】
2008506293.tif 000004
ここで、ｈは、データ圧縮を行うために任意の長さの入力を長さｎの出力に対応付ける（即ち、以下の式のようにする）ための一方向ハッシュ関数を示す。
【数３】
2008506293.tif 000005
したがって、ＣＡの公開鍵ＰＣＡを使用して証明書CertＣＡ（ｍ）を復号化したものを、ｍ又は適宜にｈ（ｍ）と照合することにより、どの装置も既知のストリングｍの真正性を明示的に検証することができる。斯かる検証手続きでは、検証の間、ＣＡはオンライン状態にあることは必要ではない。
【０００４】
従来では、証明書の一般的な使用方法は、装置の公開鍵をその装置の識別情報に結びつけることであり、例えば、上記の証明書CertＣＡ（ｍ）は、装置の公開鍵Pdevをその装置の識別情報に関連付けるために使用される。この場合、ストリングｍは、装置の公開鍵Pdevおよびその装置の識別情報と、公開鍵と識別情報との結びつきを与える追加の情報（例えば、安全が認証された幾つかのチャネルで装置がプライベート鍵Sdevを受け取った場合に関係する有効期間）を有することが好ましい。
【０００５】
ストリングｍの真正性を検証することができる同様の機能は、既知の対称鍵技術を使用して得ることができる。斯かる対称鍵技術では、ＣＡは秘密鍵ＫＣＡを有している。ＣＡはこの秘密鍵ＫＣＡを使用して、適宜に式３又は式４に示した関連する証明書CertＣＡ（ｍ）を生成する。
【数４】
2008506293.tif 000006
又は
【数５】
2008506293.tif 000007
この式３および式４の証明書CertＣＡ（ｍ）はストリングｍとともに公開されている。ストリングｍのコピーと証明書CertＣＡ（ｍ）とを得た装置がストリングｍのコピーの真正性を検証したい場合、この装置はＣＡに証明書CertＣＡ（ｍ）とストリングｍとを提供しなければならない。証明書CertＣＡ（ｍ）を受け取ると、ＣＡは、受け取った証明書CertＣＡ（ｍ）をＣＡの秘密鍵ＫＣＡを使用して復号化し、次に、受け取った証明書CertＣＡ（ｍ）から得られたストリングｍが受け取ったストリングｍに等しいことを検証する。斯かる状況におけるストリングｍは、鍵素材および上記のような他の属性を含んでいることが有利である。しかし、対称鍵技術は、認証を行うためにＣＡがオンライン状態の必要があるという問題、装置からＣＡまでの認証済み経路（例えば、共有された秘密に基づく認証済み経路）を装置が提供する必要があるという問題、に関係してくる。
【０００６】
したがって、上記の公開鍵技術に基づいた証明書は、ＣＡがオンライン状態にある必要がある対称鍵技術と比較して、ＣＡにオンライン接続をする必要のないもっと順応性のある暗号システムを実現することが可能である。しかし、公開鍵技術は、この技術を実現するのにハードウェアに費用がかかり、このハードウェアの消費電力も大きいという技術的な問題がある。
【０００７】
（例えば、認定の目的で）共通の秘密データ項目を生成する方法が知られている。例えば、公開された国際ＰＣＴ特許出願WO 2004/028075号には、第１のユーザファシリティと第２のユーザファシリティとの間で共通の秘密データ項目を生成する方法が記載されている。この方法は第１および第２のユーザファシリティを必要としており、第１および第２のユーザファシリティは、相互に対称の動作をそれぞれの相補データ項目に実行する。相補データ項目は、少なくとも部分的には秘密である固有の大きさに基づいている。対称動作の結果が、ユーザファシリティで、上記の秘密データ項目として使用される。特に、この方法は、アーベル多様体に規定されているＧＡＰ Diffie-Hellmann問題に帰属している相補的なデータを規定することに基づいた方法である。更に、アーベル多様体は楕円曲線であるので一次元である。
【発明の開示】
【発明が解決しようとする課題】
【０００８】
発明者は、デジタル認証機能を提供する既知の方法では、種々の問題（ハードウェアコストと、ハードウェア動作による消費電力と、認証済経路の必要性と、オンラインでＣＡが利用可能である必要性と、のうちの一つ以上の問題を含む）があることが分かった。これらの問題がきっかけとなり、発明者は、これらの問題に少なくとも部分的に対処するように本発明を考えた。
【０００９】
本発明の目的は、デジタル認証機能を備える別の方法を提供することにある。
【課題を解決するための手段】
【００１０】
本発明の第１の態様によれば、認証機関（ＣＡ）と少なくとも第１の装置（Ａ）および第２の装置（Ｂ）とを有するネットワークにデジタル認証機能を備える方法であって、上記少なくとも第１の装置および第２の装置は、上記認証機関（ＣＡ）と通信を行うために上記認証機関に接続可能であり、
上記方法は、
（ａ）  上記認証機関（ＣＡ）において、秘密Ｐを生成し、上記秘密Ｐを適用して上記第１の装置（Ａ）に代わってデータストリング（ｍＡ）に署名し、署名された上記データストリングを上記第１の装置（Ａ）に伝送するステップ、
（ｂ）  上記データストリング（ｍＡ）の真正性を検証するための秘密情報を、上記認証機関から、上記秘密情報を使用して上記データストリング（ｍＡ）の真正性を検証するための第２の鍵（ｋＡＢ２）を生成するように動作可能な上記第２の装置（Ｂ）に伝送するステップ、
（ｃ）  上記第１の装置（Ａ）において、上記第２の装置（Ｂ）に関係する公開情報を使用して、上記データストリング（ｍＡ）が真正なものである場合に生成可能な第１の鍵（ｋＡＢ１）を生成するステップ、
（ｄ）  上記第２の鍵（ｋＡＢ２）を用いて、上記第２の装置（Ｂ）から上記第１の装置（Ａ）に伝送されるデータを保護するステップ、
（ｅ）  上記第１の装置（Ａ）において、上記第１の鍵（ｋＡＢ１）を用いて、上記第２の装置（Ｂ）から上記第１の装置（Ａ）に伝送された保護済みの上記データにアクセスするステップ、
を有している。
【００１１】
本発明は、保護済みのデータの検証又は認証を行うのに、認証機関がオンラインで利用可能である必要がない点で有利である。
【００１２】
上記ステップ（ｅ）において、上記保護済みのデータへのアクセスは、検証の間に上記認証機関がオンラインアクセスすることなく、実現されることが好ましい。
【００１３】
本発明の方法において、上記秘密Ｐは二変数多項式であることが好ましい。
【００１４】
本発明の方法において、上記第１の鍵（ｋＡＢ１）は、上記第２の装置に関連する公開ストリングを使用して求められる多項式であることが好ましい。
【００１５】
本発明の方法の上記ステップ（ａ）において、上記署名されたデータストリングは、第三者に知られないように、上記認証機関から上記第１の装置（Ａ）に伝送されることが好ましい。より好ましくは、斯かる秘密伝送は暗号化技術を使用して実現される。
【００１６】
本発明の方法において、上記第１の装置（Ａ）の伝送された保護済みのデータの検証が明示的に行われることが好ましい。あるいは、上記第１の装置（Ａ）の伝送された保護済みのデータの検証は、暗黙的に行われる。
【００１７】
本発明による方法は、Blomの方式とIBE（Identity Based Encryption）とのうちの少なくともいずれか一方に基づいていることが好ましい。
【００１８】
本発明の第２の態様によれば、相互通信を行うように備えられた認証機関（ＣＡ）と複数の装置とを有する通信システムが提供される。上記通信システムは、本発明の第１の態様の方法に従って動作する。
【００１９】
本発明の第３の態様によれば、本発明の第１の態様の方法に従って動作する通信ネットワークでのデータ検証のためのデジタル証明書を提供する。
【００２０】
本発明の第４の態様によれば、本発明の第１の態様による方法を適用することによって検証が可能な暗号化データを提供する。上記暗号化データは、音声および映像のプログラムコンテンツであることが好ましい。
【００２１】
尚、本発明の特徴は、本発明の範囲を逸脱せずに、任意に組み合わせることができる。
【００２２】
本発明の実施例は、図面を基準にして、単なる例として記載されている。
【発明を実施するための最良の形態】
【００２３】
発明者は、多項式を利用したデジタル認証機能を提供することが実現可能であると考えた。斯かる方法は、上記の公開鍵技術よりも安価に実現することが可能であり、オンライン状態にあるサーバを必要とする上記の対称鍵技術よりも適応性に優れた他の利点を提供することができる。
【００２４】
概略的には、本発明は、図１に示すようなデジタル認証機能を提供する方法に関係している。図１には、符号１０によって概略的に表されている通信ネットワークが示されている。通信ネットワーク１０には、認証機関（ＣＡ）２０と、第１の装置（Ａ）３０と、第２の装置（Ｂ）４０と、が含まれている。認証機関２０および装置３０、４０は、相互に通信できるように結合されている。通信ネットワーク１０は、認証機関（ＣＡ）２０がサーバ又はデータベースであり且つ装置３０および４０がネットワーク１０を介してこのサーバ又はデータベースに結合されるユーザ装置であるような通信システムとして実現することができる。
【００２５】
この方法の第１のステップでは、ＣＡ２０はランダム秘密Ｐを選択又は生成する。ＣＡ２０は、この秘密Ｐを使用して、第１の装置Ａ３０に代わって、公開されたストリングｍＡに署名する。その後、ＣＡ２０は、署名されたストリングｍＡを、図１の矢印５０で示すように、第三者に知られないように第１の装置Ａ３０に伝送する。
【００２６】
この方法の第２のステップでは、第２の装置Ｂ４０は、矢印６０で示されているように、ＣＡ２０から幾つかの秘密情報を得て、これにより、第２の装置Ｂ４０は、鍵ＫＡＢを生成してストリングｍＡの真正性を暗黙的又は明示的に検証することができる。
【００２７】
この方法の第３のステップでは、第２の装置Ｂ４０により使用されるストリングｍＡが真正なものである場合、第１の装置Ａ３０は、第２の装置Ｂ４０に関する公然に利用可能な一部の情報７０を使用することによって、鍵ＫＡＢを生成するように動作できる。
【００２８】
この方法の第４のステップでは、第２の装置Ｂ４０は、第２の装置の鍵ＫＡＢを使用して、矢印８０で示されるように第２の装置Ｂ４０から第１の装置Ａ３０に伝送されるデータ（ＩＮＦＯ）を保護する。第１の装置Ａ３０は、第１の装置の鍵ＫＡＢを使用してデータ（ＩＮＦＯ）にアクセスするように動作可能である。
【００２９】
図１は本発明の方法を概略的に表しているが、以下に、本発明の方法のステップをもっと詳細に説明する。システム１０はデジタル認証機能を提供するために多項式を利用する。もっと具体的には、システム１０は、刊行物「非公開鍵の配布」（Advances in Cryptology - Proceedings of Crypto 82 pp. 231-236, 1983）に記載されたBlomの鍵確立法に基づいた方法を利用している。この刊行物は参照することにより本明細書に組み込まれている。
【００３０】
Blomの方法では、ネットワークにはＮ人のユーザが存在しており、ネットワークに伝送されるあらゆるメッセージは、Ｍビットの鍵で暗号化される。この鍵は発信元のユーザと宛先のユーザとの各ペアに固有の鍵である。Blomの方法は、各ユーザごとに可能な限り少ないビット数を記憶することを必要とする鍵方式を構成するよう動作する。Blomの方法では、必要なビット数は、ユーザストレージのサイズ（Ｓで表される）と呼ばれる。ネットワークにＮ人のユーザが存在しており、各ユーザが０〜Ｎ−１の範囲内の固有のユーザ番号ｉによって規定されている場合、ユーザｉのユーザアドレスａｉは、式５で表されているベクトルで表現できる。
【数６】
2008506293.tif 000008
ここで、ｌ＝logｂ（Ｎ）であり、式６に示すように、ユーザ番号にはｂが含まれている。
【数７】
2008506293.tif 000009
【００３１】
式７〜式９によって累積関数ｆも規定されている。
【数８】
2008506293.tif 000010
ここで
【数９】
2008506293.tif 000011
【数１０】
2008506293.tif 000012
【００３２】
Blomの方法では、ユーザｉとユーザｊとの間で行われる通信用の鍵ｋｉｊは、式１０により記載される。
【数１１】
2008506293.tif 000013
ここで、関数ｆｍ（．，．）は、各関数ｆｍ（．，．）の値の範囲として、ガロア体ＧＦ（２Ｍ）の部分集合を有しており、交換性以外の特性は有していないとする。Blomの方法に従って鍵ｋｉｊを計算する場合、ユーザｉは常にｆｍ（ａｉｍ，．）ｆを使用し、したがって各関数に対してｂ個の値を記憶する必要があるだけである。
【００３３】
Blomの方法は、ガロア体ＧＦ（ｑ）に多項式ｐ（ｘ，ｙ）を使用する。この多項式ｐ（ｘ，ｙ）はｐ（ｘ，ｙ）＝ｐ（ｙ，ｘ）の性質を有しており、各ユーザはガロア体ＧＦ（ｑ）の固有の要素ｉに関連している。この要素ｉはユーザを識別するために使用することができる。また、ガロア体ＧＦ（ｑ）の要素をＭビットで表すために、ｑは２Ｍの大きさであるとする。ユーザｉおよびｊ用に鍵を生成するために、多項式ｐ（ｉ，ｊ）を求める。したがって、特定のユーザｉは多項式ｐ（ｉ，ｙ）のみを知る必要があり、各ユーザは多項式全体の一部のみを知る。多項式は式１１により規定される。
【数１２】
2008506293.tif 000014
ここで、Ａはｎ×ｎの対称行列である。
【００３４】
各ユーザは、式１２に示されているベクトルｂｉの形でｎ個の係数を記憶する必要があるだけである。
【数１３】
2008506293.tif 000015
【００３５】
鍵ｋｉｊの計算には、最初に（ｊ０，ｊ１，...，ｊｎ−１）を計算し、次にこのベクトル（ｊ０，ｊ１，...，ｊｎ−１）とベクトルｂｉとのスカラー乗を実行することが含まれている。
【００３６】
本発明は、例えばBlom方法で使用されるような、多項式に基づいた認証機能を使用する。一般項については、図２に示されているように、ＣＡはランダム秘密多項式Ｐ（ｙ，ｘ）を選択し、この秘密多項式を使用して公開ストリングｍＡに署名し、装置Ａ用に署名を生成する。ＣＡは、この署名を第三者に知られないように（例えば、暗号化によって）装置Ａに送る。ＣＡから幾つかの秘密情報を得た装置Ｂは、装置Ｂが公開ストリングｍＡを使用して鍵ＫＡＢを生成するように、ｍＡの真正性を明示的又は暗黙的に検証することができる。装置Ｂに関する一部の公開情報を使用することによって、ストリングｍＡが真正である場合は装置Ａのみがこの鍵ＫＡＢを生成することもできる。したがって、装置Ｂは、鍵ＫＡＢを使用して、装置Ａに送るデータを保護することができる。
【００３７】
図２において、初期設定フェーズが実行される。この初期設定フェーズでは、ＣＡは、全てのｘおよびｙに対してＰ（ｘ，ｙ）＝Ｐ（ｙ，ｘ）となるようなランダム秘密の対称二変数多項式Ｐ（ｘ，ｙ）を選択する。ＣＡはｙ＝ｍＡのときの多項式Ｐ（ｙ，ｘ）の値を求めて多項式Ｐ（ｍＡ，ｘ）を得る。ここで、Ｐ（ｍＡ，ｘ）はｍＡへの署名である。ＣＡはこの一変数多項式Ｐ（ｍＡ，ｘ）を装置Ａに送る。さらに、初期設定フェーズでは、ＣＡは多項式Ｐ（ｂ，ｘ）を第三者に知られないように装置Ｂに送る。ここで、ｂは装置Ｂに関連する一部の公開ストリングである。ストリングｍＡとストリングｂとの両方とも、公開データベースに記憶することができる公開ストリングであるか、又は、ストリングｍＡおよびストリングｂは、それぞれ装置Ａ，Ｂに与えることができる公開ストリングである。
【００３８】
上記の初期設定フェーズの後、装置Ｂが、装置Ｂの有するストリングｍＡの真正性を明示的に検証したい場合は、例えば図３に示すように、装置Ｂは検証ステップを実行する。この検証ステップでは、装置Ｂは乱数ｒを選択する。その後、装置Ｂは、ｘ＝ｍＡとして多項式Ｐ（ｂ，ｘ）を求めて、鍵ｋＡＢ＝Ｐ（ｂ，ｍＡ）を得る。次に、装置Ｂは鍵ｋＡＢを使用して乱数ｒを暗号化する、即ち、装置ＢはＥ（ｋＡＢ，ｒ）を算出し、この暗号文を装置Ａに送る。
【００３９】
暗号文Ｅ（ｋＡＢ，ｒ）を受け取ると、装置Ａは鍵ｋ'ＡＢ＝Ｐ（ｍＡ，ｂ）を得る目的で、ｘ＝ｂのときの多項式Ｐ（ｍＡ，ｘ）を求める。次に、装置Ａは、数ｒ’＝Ｄ（ｋＡＢ’，Ｅ（ｋＡＢ，ｒ））を装置Ｂに送る。ここで、Ｄは復号化を表す。このとき、装置Ｂは、検証によってｒ＝ｒ’である場合のみ、ｍＡの真正性を受け入れる。初期設定フェーズの後のこのような検証には、ＣＡは参加していないが、装置Ａはオンラインで利用可能であることが必要である。図３は、本発明による明示的な認証に対応するものである。
【００４０】
図４に示されているように、装置Ｂは、ストリングｍＡのコンテンツに従って、特権情報（Privileged infomation）Ｘを装置Ａに送ることができる。情報Ｘは、例えば、音声コンテンツ又は映像コンテンツである。さらに、ストリングｍＡには、装置Ａがコンテンツの再生を認可されるかどうかに関する指示部分が含まれていることが好ましい。したがって、本発明を実際に使用する場合には、装置Ａは、情報Ｘが装置Ａに送られるようにするため、情報Ｘのためのリクエスト「Req（Ｘ）」を送る。リクエスト「Req（Ｘ）」を受け取ると、装置Ｂは、先ず、ストリングｍＡを検索する。装置Ｂは、ストリングｍＡを使用して、装置Ａが情報Ｘにアクセスすることが許されるかどうかを検証する（即ち、「Ver ｍＡ wrt Ｘ」）。装置Ｂが、装置Ａは確かに情報Ｘへのアクセスが許されるということがわかった場合、装置Ｂは、鍵「ｋＡＢ＝Ｐ（ｂ，ｍＡ）」を算出し、続いて鍵ｋＡＢを使用して情報を暗号化し（即ち、Ｅ（ｋＡＢ，Ｘ））、この暗号文を装置Ａに送る。
【００４１】
暗号化を受け取ると、装置ＡはｋＡＢ’＝Ｐ（ｍＡ，ｂ）を算出し、コンテンツを「Ｘ’＝Ｄ（ｋＡＢ’，Ｅ（ｋＡＢ，Ｘ））」として算出する。装置Ｂによって使用されるストリングｍＡが真正である場合、装置Ａは、鍵の適切な値を算出し（即ち、鍵ＫＡＢおよびＫＡＢ’が一致する）、したがって、装置Ａは情報Ｘにアクセスできる。逆に、ストリングｍＡがストリングｍＡ’に修正されるイベントが生じた場合、装置Ｂは、ｍＡ’の真正性を明示的に検証することができないが、鍵ｋＡＢ’＝Ｐ（ｂ，ｍＡ’）を生成し、この鍵を使用して情報Ｘを暗号化する。本発明に組み込まれるBlomの方法の特性により、装置Ａは、ｍＡ’とＰ（ｍＡ，Ｘ）しか分からない状態では鍵ｋＡＢ’を算出することができず、装置ＢはストリングｍＡの真正性を暗黙的に検証する。両方の場合において、装置Ａは、装置Ｂがメッセージの発信元である場合には（例えば、装置Ｂが、メッセージ認証コードを、装置Ａに送られるメッセージに加える場合）真正性を検証することができる。
【００４２】
図３およびこれに関連する記載は明示的な認証に対応したものであり、図４は暗黙的な認証に対応したものである。
【００４３】
上述された本発明は、ストリングｍＡの真正性を検証するのにＣＡ２０のオンラインアクセスを必要としない点で、表面上は、公開鍵証明書に似ている。本発明において好ましく利用されているBlomの方法のため、２つの装置Ａ，Ｂの間の対話で生じる修正ストリングｍＡにより、通常の公開鍵証明書と同様に、真正性のチェックに失敗する。しかし、本発明と通常の公開鍵証明書システムとの間にはかなりの違いがある。
【００４４】
図１〜図４に示す方法では、装置ＢはストリングｍＡの真正性を検証するのに装置Ａの協力が必要である。したがって装置Ａはオンラインアクセス可能であることが要求される。このようなオンラインアクセスは、ＣＡの公開鍵を知っていることによって検証が可能な公開鍵証明書、即ち公開検証、とは対照的である。
【００４５】
さらに、図１〜図４の方法は、証明書Ｐ（ｍＡ，ｘ）、Ｐ（ｂ，ｘ）をそれぞれ秘密に保持している装置Ａ、Ｂに頼っているが、秘密鍵およびプライベート鍵を使用する現在の暗号化システムとは異なり、装置Ａは証明書Ｐ（ｍＡ，ｘ）を秘密にすることで必ずしも得をするものではない。本発明では、装置Ａを、プライベート情報を公開していない準拠デバイスと見なすことができ、さらに、Ｐ（ｍＡ，Ｘ）は証明書としての役割を果たすだけでなく、装置Ａのプライベート鍵としての働きもすることができる。この場合、証明書Ｐ（ｍＡ，ｘ）を公開することは装置Ａにとって不利になる。
【００４６】
図１〜図４の方法では、公開鍵証明書の安全性は、計算が困難となる問題（例えば、離散対数問題又は大きい素数の因数分解）に依存している。前述された本発明により提供される安全性は、ｎ個のセキュア特性を提供するBlomの方法の特性に依存している。したがって、ｎが秘密Ｐ（ｙ，ｘ）の多項式の次数である場合、潜在的な攻撃者は、ｎ個よりも多い多項式を使用してＰ（ｍＡ，ｘ）を形成し、証明書Ｐ（ｍＡ’，ｓ）を生成する必要がある。本発明のこのやり方では、装置Ａ，Ｂは、公開鍵での演算よりも計算量の少ない対称鍵暗号と有限体（finite filed）により、多項式の算出を行っている。
【００４７】
図１〜図４に示されている本発明は、Blomの方法以外の他の方法に基づいて実現することができる。例えば、前述された本発明は、Blomの方法に代わるものとしてＩＢＥ（Identity Based Encryption）を使用することができる。ＩＢＥは公開鍵暗号化アルゴリズムとして規定される。ＩＢＥでは、公開鍵は任意のストリングとすることができ、この公開鍵と対をなすプライベート鍵が計算される。ＩＢＥは、プライベート鍵しか任意に選択することができない他の公開鍵アルゴリズム、又は公開鍵と公開鍵に対し相補的な関係にあるプライベート鍵との両方とも任意に選択することができない他の公開鍵アルゴリズムとは、明らかに区別される。
【００４８】
本発明においてBlomの方法を使用する利点は、証明書Ｐ（ｙ，ｘ）を求めるために使用される値を任意に選択することができ、したがって任意の情報をこの値に記憶することができる点である。さらに、この値は公開されており、したがって、実質的に公開鍵としての役割をする。さらに、本発明で使用される場合のBlomの方法は、ＩＢＥを使用する場合よりも計算が単純である。
【００４９】
尚、上記の本発明の実施例は、添付された特許請求の範囲に規定されている本発明の範囲から逸脱することなく修正できる。
【００５０】
図１〜図４に記載された本発明では、装置Ａ、Ｂは鍵Ｐ（ｍＡ，ｂ）＝Ｐ（ｂ，ｍＡ）を得ている。便宜上、この鍵を「マスターキー」と呼ぶ。各セッションに対して新しいランダム鍵が生成されるようにこのマスターキーに基づいてランダム鍵を得ることが多くの場合望ましい。少なくとも数百の規格プロトコルを使用して、以下の文献に記載された共通マスターキーに基づいてランダム鍵を得ることができる。この文献は、「"Handbook of Applied Cryptography" by A. Menezes, P. van Oorschot and S. van Stone, published by CRC Press 1996」であり、この文献は、参照することにより本明細書に組み込まれている。
【００５１】
したがって、本発明では、ストリングｍＡを使用して、検証可能であるべき情報が記憶される。多くの実際の状況では、ストリングｍＡに直接的に情報（例えば、プログラムコンテンツ）を記憶すると、ストリングをが長くなってしまうので、ストリングｍＡに直接的に情報を記憶することは現実的ではない。斯かる厄介なストリングサイズの問題を取り扱うために、ストリングは、上記の一方向ハッシュ関数を使用した式１３に記載されている情報の、サイズの小さい編集可能なバージョン（「digest」としても知られている）を有していることが好ましい。
【数１４】
2008506293.tif 000016
【００５２】
以下に本発明の他の実施例が記載されている。この実施例は上記の認証機能を利用している。
【００５３】
図５では、単純なコンテンツ管理システム２００が示されている。システム２００は、コンテンツ権利機関（ＣＲＡ）２１０を有している。ＣＲＡ２１０はシステム２００に含まれている装置にコンテンツ権利を発行するように動作できるものである。このコンテンツ権利は、システム２００に含まれる装置が、例えば或るコンテンツを再生することができるようにするための権利である。与えられたコンテンツＣｉを再生する権利は、ＲＣｉによって示されている。実際には、ＣＲＡ２１０は「ｅ−ショップ」（例えば、インターネットウェブサイト）として実現される。システム２００は、第１および第２のコンテンツマネージャ（ＣＭ１およびＣＭ２）２２０および２３０を更に有している。コンテンツマネージャ（ＣＭ１およびＣＭ２）２２０および２３０は、コンテンツ（好ましくは、暗号化されていないコンテンツ）へのアクセス権を有する信用できるサーバとして実現されることが好ましい。ＣＭ１２２０およびＣＭ２２３０は、例えば、セットトップボックス、又はインターネットに接続された他の信用できる装置、として実現されるものである。さらに、システム２００は、符号３００、３１０、３２０によって示される装置Ｄ１、Ｄ２、Ｄ３も有している。これらの装置は、コンテンツ（例えば、再生コンテンツ）を表示するように動作できるものである。装置３００、３１０、３２０は、実際には、ビデオディスプレイ又はオーディオ機器などのビデオ／オーディオ装置として実現することが好ましい。
【００５４】
システム２００の動作は図５を基準にして記載されている。
【００５５】
システム２００では、装置Ｄ１ ３００は、例えばお金を支払うことによって、プログラムコンテンツＣ１、Ｃ２、およびＣ３を或る期限Ｔ１まで再生する権利を取得する。同様に、装置Ｄ２は、例えばお金を支払うことによって、プログラムコンテンツＣ１およびＣ２を或る期限Ｔ２まで再生する権利を取得する。さらに、装置Ｄ３は、プログラムコンテンツＣ２を期限Ｔ３まで再生する権利を取得する。装置Ｄ１，Ｄ２，Ｄ３がこれら権利の取得することによって、装置Ｄ１，Ｄ２，Ｄ３は、それぞれ、データコンテンツストリングｍＤ１，ｍＤ２，ｍＤ３を公に受け取ることができる。データコンテンツストリングｍＤ１、ｍＤ２、およびｍＤ３は、式１４、１５および１６に記載されており、図５にも示されている。
【数１５】
2008506293.tif 000017
【数１６】
2008506293.tif 000018
【数１７】
2008506293.tif 000019
ここで、||は連結を示す。ストリングｍＤ１、ｍＤ２、ｍＤ３を公に受け取ることに関連して、装置Ｄ１、Ｄ２、Ｄ３は、それぞれ対応する多項式Ｐ(H(MD1),X)、Ｐ(h(mD2),x)、Ｐ(h(mD3),x)を第三者に知られないように受け取る。ここで、Ｐ（ｙ，ｘ）は、先に記載したような十分に高次のランダムな対称多項式であり、装置Ｄ１，Ｄ２，Ｄ３の多項式はＣＲＡ（コンテンツ権利機関）２１０によって選択される。
【００５６】
ＣＲＡ２１０は、ＣＭ１およびＣＭ２が信用できるサーバであると認め、ＣＭ１およびＣＭ２は、それぞれ多項式Ｐ(h(CM1),x)およびＰ(h(CM2),x)を受け取る。ＣＭ１サーバおよびＣＭ２サーバの両方とも、コンテンツＣ１、Ｃ２、Ｃ３を記憶している。
【００５７】
動作中、装置Ｄ１は、コンテンツＣ３用に、ＣＭ１にリクエストを送る。このリクエストは、リクエストされたコンテンツの基準（つまり、ＩＤＣ３）を有しており、式１４に与えられているストリングｍＤ１も有している。このリクエストを受け取ると、ＣＭ１２２０は、リクエストされたコンテンツＣ３の権利ＲＣ３がコンテンツストリングｍＤ１に含まれているかどうかを検証し、リクエストが送られた時間が期限Ｔ１より早いかどうかも検証する。装置Ｄ１ ３００からの要求に関連して行われた全てのチェックが有効であることが分かった場合、ＣＭ１２２０は以下のステップを実行する。
（ａ）  ＣＭ１２２０は、サイズが小さく編集されたストリングｍＤ１のバージョン（即ち、ストリングｍ＝ｈ(mD1)）を計算する。
（ｂ）  ＣＭ１２２０は、（ａ）から、ｘ＝ｍのときの多項式Ｐ(h(CM1),x)を求め、多項式の復号鍵Ｋを得る。
（ｃ）  ＣＭ１２２０は、（ｂ）から得られる復号鍵Ｋを使用して、コンテンツＣ３の暗号化されたバージョン（即ち、Ｅ（Ｋ，Ｃ３））を計算する。
（ｄ）  ＣＭ１２２０は、コンテンツＣ３の暗号化されたバージョンＥ（Ｋ，Ｃ３）を装置Ｄ１ ３００に送る。
【００５８】
ＣＭ１２２０から送られた暗号化データＥ（Ｋ，Ｃ３）を装置Ｄ１ ３００が受信すると、装置Ｄ１ ３００は、ｘ＝h(CM1)のときの多項式Ｐ(h(mD1),x)を求め、復号鍵Ｋ’を得る。次に、装置Ｄ１は、暗号化データＥ（Ｋ、Ｃ３）を処理し、式１７に従って、データコンテンツＣ３の復号化されたバージョンＣ３’を得る。
【数１８】
2008506293.tif 000020
【００５９】
装置Ｄ２３１０がＣＭ２２３０からコンテンツＣ３をリクエストしているとすると、装置Ｄ２は、データコンテンツＣ３の権利を有していない。ＣＭ２がコンテンツＣ３のリクエストとストリングｍＤ２＝Ｄ２||ＲＣ１||ＲＣ２||Ｔ２とを受け取ると、ＣＭ２はＲＣ３がｍＤ２の一部ではないことに気が付き、したがって、ＣＭ２はデータコンテンツＣ３を装置Ｄ２３１０に送らない。明らかに、装置Ｄ２３１０は、修正されたストリングｍ'Ｄ２＝Ｄ２||ＲＣ１||ＲＣ３||Ｔ２をＣＭ２に送るだろう。ＣＭ２はこの修正されたストリングを受け入れ、ｘ＝h(m'D2)のときのＰ(h(CM2),x)を求め、その結果、鍵Ｋ’を取得してＥ（Ｋ’，Ｃ３）を装置Ｄ２に送る。しかし、装置Ｄ２は、多項式Ｐ(h(mD2),x)にしかアクセスできない場合、鍵Ｋ’を計算することができない。したがって、装置Ｄ２３１０が受け取ったコンテンツを復号化することは不可能である。さらに、装置Ｄ２３１０がコンテンツ権利を修正しコンテンツＣ３のアクセス権を取得することは、実質的に不可能である。
【００６０】
明らかに、システム２００では、あらゆる装置ＤがあらゆるＣＭからコンテンツをリクエストすることができ、ＣＭはコンテンツ権利を明示的又は暗黙的に検証することができる。システム２００では、公開鍵セキュリティ技術を使用している他の関連するシステムと同様に、ＣＲＡ２１０はコンテンツ権利を発行する役割をし、コンテンツ配信の間にオンライン状態の必要はない。装置ＤはＣＭにより使用される鍵を生成してコンテンツを暗号化又は復号化できないので、装置Ｄはコンテンツ権利又は有効期限を変更することができない。
【００６１】
「有する」、「含む」、「組み込む」、「含有する」、「である」、および「備える」などの表現は、明細書および添付された特許請求の範囲を解釈する場合には、排他的なものではないと解釈されるべきである。つまり、明示的に規定されていない他の項目又は要素の存在が認められると解釈されるべきである。単数で記載されていることは、複数の場合もあると解釈されるべきであり、複数で記載されていることは、単数の場合もあると解釈されるべきである。
【図面の簡単な説明】
【００６２】
【図１】２つの装置と通信する認証機関を含む通信ネットワークの概略図を示しており、認証機関と２つの装置は、本発明によるデジタル認証を使用して相互に通信するように動作することができる。
【図２】図１に示すネットワークでの証明書配布の概略図である。
【図３】本発明による明示的なストリング認証の概略図である。
【図４】本発明による暗黙的なストリング認証の概略図である。
【図５】本発明によるデジタル認証機能を実行するシステムの概略図である。
【図１】
2008506293.tif 000021
【図２】
2008506293.tif 000022
【図３】
2008506293.tif 000023
【図４】
2008506293.tif 000024
【図５】
2008506293.tif 000025
【国際調査報告】
2008506293.tif 000026
2008506293.tif 000027