(57)【特許請求の範囲】
【請求項１】
保護対象情報へのアクセスを制御する情報アクセス制御装置において、
ユーザの固有情報を保持する手段と、
上記保護対象情報の管理者から供給される上記保護対象情報の補助情報から上記保護対象情報の固有情報を算出する手段と、
上記保護対象情報の固有情報を保持する手段と、
上記保護対象情報へのアクセス制御用の補助情報を、少なくとも上記ユーザの固有情報および上記保護対象情報の固有情報から算出する手段と、
上記ユーザの固有情報および上記アクセス制御用の補助情報に基づいて、上記ユーザの固有情報と、上記アクセス制御用の補助情報を生成するために用いた上記保護対象情報の固有情報とが対応する場合に、上記保護対象情報へのアクセスを許容する手段とを有することを特徴とする情報アクセス制御装置。
【請求項２】
保護対象情報へのアクセスを制御する情報アクセス制御装置において、
ユーザの固有情報を保持する手段と、
保護対象情報の固有情報を保持する手段と、
上記保護対象情報へのアクセス制御用の補助情報を、少なくとも上記ユーザの固有情報および上記保護対象情報の固有情報から算出する手段と、
上記ユーザの固有情報および上記アクセス制御用の補助情報に基づいて、上記ユーザの固有情報と、上記アクセス制御用の補助情報を生成するために用いた上記保護対象情報の固有情報とが対応する場合に、上記保護対象情報へのアクセスを許容する手段とを有することを特徴とする情報アクセス制御装置。
【請求項３】
保護対象情報へのアクセスを制御する情報アクセス制御装置において、
ユーザの固有情報を保持する手段と、
上記保護対象情報の管理者から供給される上記情報の補助情報から上記保護対象情報の固有情報を算出する手段と、
上記保護対象情報の固有情報を保持する手段と、
上記保護対象情報の利用制御情報を保持する手段と、
上記保護対象情報へのアクセス制御用の補助情報を、少なくとも上記ユーザの固有情報、上記保護対象情報の固有情報および上記利用制御情報から算出する手段と、
上記ユーザの固有情報、上記利用制御方法および上記アクセス制御用の補助情報に基づいて、上記ユーザの固有情報と、上記アクセス制御用の補助情報を生成するために用いた上記保護対象情報の固有情報と、上記利用制御情報とが対応する場合に、上記保護対象情報へのアクセスを許容する手段とを有することを特徴とする情報アクセス制御装置。
【請求項４】
上記各手段のうち、少なくとも上記ユーザの固有情報を保持する手段、上記保護対象情報の固有情報を算出する手段、上記保護対象情報の固有情報を保持する手段、および上記保護対象情報へのアクセス制御用の補助情報を生成する手段が、各種情報の保持、伝達および処理の過程で上記各種情報が外部に漏洩するのを防止する防御手段を有する請求項１または２記載の情報アクセス制御装置。
【請求項５】
上記保護対象情報の補助情報は上記保護対象情報の固有情報を所定の方法で暗号化して生成されたものであり、上記保護対象情報の固有情報を算出する手段は、上記保護対象情報の補助情報を復号する手段を含む請求項１、２、３または４記載の情報アクセス制御装置。
【請求項６】
上記保護対象情報は、ＲＳＡ公開鍵暗号の法数ｎ、公開鍵Ｅにて暗号化されており、前記保護対象情報の固有情報は、法数ｎのもとでの前記公開鍵Ｅに対応する秘密鍵Ｄである、請求項１、２、３または４記載の情報アクセス制御装置。
【請求項７】
上記保護対象情報の秘密鍵Ｄが、上記公開鍵Ｅおよび法数ｎとは別の公開鍵ペアＥ’、ｎ’で暗号化されている請求項１、２、３、４または５記載の情報アクセス制御装置。
【請求項８】
上記保護対象情報へのアクセスの制御は復号により行われる請求項１、２、３、４、５、６または７記載の情報アクセス制御装置。
【請求項９】
上記保護対象情報へのアクセスの制御は認証に基づいて行われる請求項１、２、３、４、５、６または７記載の情報アクセス制御装置。
【請求項１０】
上記保護対象情報へのアクセスは、アプリケーションを利用することを含む請求項１、２、３、４、５、６、７、８または９記載の情報アクセス制御装置。
【請求項１１】
入力手段が、保護対象情報の補助情報を受け取るステップと、
ユーザ固有情報保持手段が、ユーザの固有情報を保持するステップと、
保護対象情報固有情報算出手段が、上記保護対象情報の補助情報から上記保護対象情報の固有情報を算出するステップと、
保護対象情報固有情報保持手段が、算出された上記保護対象情報の固有情報を保持するステップと、
アクセス制御用補助情報算出部が、上記保護対象情報へのアクセス制御用の補助情報を、少なくとも上記ユーザの固有情報および上記保護対象情報の固有情報から算出するステップと、
アクセス許容手段が、上記ユーザの固有情報および上記アクセス制御用の補助情報に基づいて、上記ユーザの固有情報と、上記アクセス制御用の補助情報を生成するために用いた上記保護対象情報の固有情報とが対応する場合に、上記保護対象情報へのアクセスを許容するステップとを有することを特徴とする情報アクセス制御方法。
【請求項１２】
ユーザの固有情報およびアクセス制御用の補助情報に基づいて、上記ユーザの固有情報と、上記アクセス制御用の補助情報を生成するために用いた保護対象情報の固有情報とが対応する場合に、上記保護対象情報へのアクセスを許容する情報アクセス制御装置において、保護対象情報へのアクセスを制御するために用いられるアクセス制御用補助情報を生成するアクセス制御用補助情報生成装置であって、
ユーザの固有情報を保持する手段と、
上記保護対象情報の管理者から供給される上記保護対象情報の補助情報から上記保護対象情報の固有情報を算出する手段と、
上記保護対象情報の固有情報を保持する手段と、
上記アクセス制御用補助情報を、少なくとも上記ユーザの固有情報および上記保護対象情報の固有情報から算出する手段とを有することを特徴とするアクセス制御用補助情報生成装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、暗号化された情報の復号や使用権の認証等により情報へのアクセス制御を行う手法に関し、とくにアクセス制御を行う際に用いる補助情報の生成技術に関する。
【０００２】
【従来の技術】
近年、暗号技術の進歩やネットワークの発展により、多くの電子流通方式が提案されている。電子流通の実現によりもたらされる効用は非常に多岐にわたるが、とくに有効な利用法のひとつとして、電子的なチケットの流通が挙げられる。ここでいうチケットとは、既存の乗車券、入場券のような紙に印刷された昔ながらのものから、ソフトウェアや電子化されたコンテンツの利用権（ライセンス）、使用料のような電子的な世界のものまでを含む。
【０００３】
一般的なチケット利用にあたっては、目的とするサービスの選択からはじまり、チケットの購入、支払い、受領、使用といった一連のプロセスが必要である。これらを人手で行うことは販売者にとってもユーザにとっても手間が大きいため、チケットを電子化し、電子的な決済手段と組み合わせてオンラインで処理することが検討されている。
【０００４】
たとえば、特開平８−１４７５００号公報に開示される、電子チケット販売・払戻システムおよびその販売・払戻方法では、複数のチケット発行者との電子マネーを介した安全な取り引きを実現する方法を提案している。この方法では、ユーザは、チケット発行者が作成した電子チケットを、遠隔地から電話回線などを通して入手することができる。この方法によれば、電子チケットの偽造もしくは不正複製を防止するとともに、ユーザは復号化手段を持たない端末装置でも電子チケットの内容の確認のみは可能である。
【０００５】
ところが、このような方法は、前述のような乗車券、入場券のような昔ながらのチケットとサービスが一対一に対応するものについては、チケットのオンライン発行自体は可能になるが、電子化されたサービスやコンテンツなどの情報（デジタル情報）までをチケットという概念により包括的に扱う場合には制約が大きい。すなわち、ユーザごとに使用回数、期間などの利用制御を変えるような、電子化によるさらなるメリットを享受するためには、その都度利用制御までを含めた別のチケットとして暗号化を行う必要があるなど、手間が大きい。また、電子マネーの利用を前提にしているという制約もある。
【０００６】
これに対し、本出願人は、ユーザ固有情報と、ユーザごとに割り当てた使用回数、期間などの利用制御情報とに基づいて情報提供側でチケットを生成し、これをユーザに送り、ユーザ側での情報の利用の制御を行う手法を提案している（特願平８−１９１７５６号）。なお、この出願の説明では、制御用の情報を証明用補助情報と呼んでいるが、広義のチケットとみなせる。この方法によれば、制御情報をデジタル情報と一緒に暗号化して配布する必要がなくなり、しかも制御情報の改ざんがあった場合の安全性を確保している。
【０００７】
しかしながら、前述のふたつの方法は、チケットの発行に際し、安全性のためにユーザの環境とは物理的・論理的に隔てられたサービスの提供者などから発行してもらう必要がある。これをサービスやコンテンツごと、すなわちチケットの適用単位ごとに行うことは、手間が大きい。通信回線などを通してオンラインで受け取るようにしたとしても、小額のチケットにおいては現状では通信コストの割合が大きくなるという第一の問題がある。
【０００８】
一方、このような電子チケットを用いるシステムにおいては、サービスまたはコンテンツを提供する業者（プロバイダ）がサービスに応じて複数存在し、これとは独立に秘密情報を扱い、チケット発行や課金を行う組織（センターと呼ぶ）を置くことが一般的である。このときセンター側は、たとえばコンテンツの鍵などの秘密情報を持っていることにより、その気になれば原理的にはコンテンツを自由に見ることができてしまう。こうした問題は、プロバイダにとってはセンターに対する心理的不信感となり得る。このことが第二の問題である。
【０００９】
【発明が解決しようとする課題】
本発明は、上述の事情を考慮してなされたものであり、前記第一の問題に対応し、ユーザのローカルな環境で、安全性を保ったまま独自に電子チケットを発行できるようにすることを目的とする。
【００１０】
また、本発明は、前記第二の問題に対応し、センターがコンテンツを復号できてしまわないように、センターがコンテンツの鍵を知る必要をなくすことを目的としている。
【００１１】
【課題を解決するための手段】
本発明によれば、上述の目的を達成するために、保護対象情報へのアクセスを制御する情報アクセス制御装置に、ユーザの固有情報を保持する手段と、上記保護対象情報の管理者から供給される上記保護対象情報の補助情報から上記保護対象情報の固有情報を算出する手段と、上記保護対象情報の固有情報を保持する手段と、上記保護対象情報へのアクセス制御用の補助情報を、少なくとも上記ユーザの固有情報および上記保護対象情報の固有情報から算出する手段と、上記ユーザの固有情報および上記補助情報に基づいて上記保護対象情報へのアクセスを許容する手段とを設けるようにしている。
【００１２】
この構成においては、情報アクセス制御装置側でアクセス制御用の補助情報を生成できるので、外部から頻繁にアクセス用補助情報を入手する必要がなくなる。
【００１３】
また、本発明によれば、保護対象情報へのアクセスを制御する情報アクセス制御装置に、ユーザの固有情報を保持する手段と、保護対象情報の固有情報を保持する手段と、上記保護対象情報へのアクセス制御用の補助情報を、少なくとも上記ユーザの固有情報および上記保護対象情報の固有情報から算出する手段と、上記ユーザの固有情報および上記アクセス制御用の補助情報に基づいて上記保護対象情報へのアクセスを許容する手段とを設けるようにしている。
【００１４】
この構成においても、情報アクセス制御装置側でアクセス制御用の補助情報を生成できるので、外部から頻繁にアクセス用補助情報を入手する必要がなくなる。
【００１５】
また、本発明によれば、上述の目的を達成するために、保護対象情報へのアクセスを制御する情報アクセス制御装置に、ユーザの固有情報を保持する手段と、上記保護対象情報の管理者から供給される上記情報の補助情報から上記保護対象情報の固有情報を算出する手段と、上記保護対象情報の固有情報を保持する手段と、上記保護対象情報の利用制御情報を保持する手段と、上記保護対象情報へのアクセス制御用の補助情報を、少なくとも上記ユーザの固有情報、上記保護対象情報の固有情報および上記利用制御情報から算出する手段と、上記ユーザの固有情報、上記利用制御方法および上記補助情報に基づいて上記保護対象情報へのアクセスを許容する手段とを設けるようにしている。
【００１６】
この構成においても、情報アクセス制御装置側でアクセス制御用の補助情報を生成できるので、外部から頻繁にアクセス用補助情報を入手する必要がなくなる。とくに、利用制御情報ごとにアクセス制御用補助情報をやり取りする必要がなく大変便利である。
【００１７】
また、上記構成において、上記各手段のうち、少なくとも上記ユーザの固有情報を保持する手段、上記保護対象情報の固有情報を算出する手段、上記保護対象情報の固有情報を保持する手段、および上記保護対象情報へのアクセス制御用の補助情報を生成する手段が、各種情報の保持、伝達および処理の過程で上記各種情報が外部に漏洩するのを防止する防御手段を有するようにしてもよい。
【００１８】
また、上記保護対象情報の補助情報は上記保護対象情報の固有情報を所定の方法で暗号化して生成されたものであり、上記保護対象情報の固有情報を算出する手段は、上記保護対象情報の補助情報を復号する手段を含むようにしてもよい。
【００１９】
また、上記保護対象情報は、ＲＳＡ公開鍵暗号の法数ｎ、公開鍵Ｅにて暗号化されており、前記保護対象情報の固有情報は、法数ｎのもとでの前記公開鍵Ｅに対応する秘密鍵Ｄとしてもよい。
【００２０】
また、上記保護対象情報の秘密鍵Ｄが、上記公開鍵Ｅおよび法数ｎとは別の公開鍵ペアＥ’、ｎ’で暗号化されるようにしてもよい。この場合、センター側で秘密鍵Ｄを保持する必要がなくなる。
【００２１】
また、上記保護対象情報へのアクセスの制御は暗号化により行われてもよく、認証に基づいて行われてもよい。
【００２２】
また、本発明によれば、上述の目的を達成するために、情報アクセス制御方法において、保護対象情報の補助情報を送出するステップと、上記保護対象情報の補助情報とを受け取るステップと、ユーザの固有情報を保持するステップと、上記保護対象情報の補助情報から上記保護対象情報の固有情報を算出するステップと、上記保護対象情報の固有情報を保持するステップと、上記保護対象情報へのアクセス制御用の補助情報を、少なくとも上記ユーザの固有情報および上記保護対象情報の固有情報から算出するステップと、上記ユーザの固有情報および上記補助情報に基づいて上記保護対象情報へのアクセスを許容するステップとを実行するようにしている。
この構成においても、情報アクセス制御装置側でアクセス制御用の補助情報を生成できるので、外部から頻繁にアクセス用補助情報を入手する必要がなくなる。
【００２３】
また、本発明によれば、上述の目的を達成するために、保護対象情報へのアクセスを制御するために用いられるアクセス制御用補助情報を生成するアクセス制御用補助情報生成装置に、ユーザの固有情報を保持する手段と、上記保護対象情報の管理者から供給される上記保護対象情報の補助情報から上記保護対象情報の固有情報を算出する手段と、上記保護対象情報の固有情報を保持する手段と、上記アクセス制御用補助情報を、少なくとも上記ユーザの固有情報および上記保護対象情報の固有情報から算出する手段とを設けるようにしている。
【００２４】
この構成においても、情報アクセス制御装置側でアクセス制御用の補助情報を生成できるので、外部から頻繁にアクセス用補助情報を入手する必要がなくなる。
【００２５】
なお、上述において上記保護対象情報はアプリケーションであってもよく、この発明によれば、保護対象情報のアプリケーションの利用も制御できる。
【００２６】
【発明の実施の態様】
［実施例１］
図１は、本発明の実施例１の構成を示す。本実施例では、暗号化されたコンテント（デジタル情報）を復号する際に、あらかじめ定められた複数の制御情報（利用期間、回数など）のうち、任意の条件を持つ利用チケットを、ユーザのローカル環境で発行し、そのチケットの条件のもとでコンテントを復号して利用する場合について説明する。
【００２７】
図１において、この実施例のデジタル情報アクセス制御装置は、入力部１００、カプセル保持部２００、チケット算出処理部３００、ユーザ固有情報保持部４００、証明処理部５００、チケットｔ保持部６００、制御情報Ｌ保持部７００、慣用暗号鍵Ｋ算出処理部８００、復号処理部９００、出力部１０００、トークン１１００からなる。以下それぞれについて説明する。
【００２８】
入力部１００は、ネットワーク１０１などによる外部環境との接続や、ＣＤ−ＲＯＭ，ＤＶＤなどのローカルなメディア１０２との接続を持ち、カプセル保持部２００にデジタル情報を供給する。
【００２９】
カプセル保持部２００は、安全にコンテントを保護する部分であり、チケット生成用情報２１０、鍵算出用情報２２０、慣用暗号により鍵Ｋで暗号化された暗号化コンテント（実行形式や可視化用データ）２３０を保持する。
【００３０】
鍵Ｋは、ＲＳＡ公開鍵暗号で暗号化されており、鍵算出用情報２２０は、ＲＳＡ公開鍵Ｅ、法数ｎ、および暗号化された鍵ＫE  ｍｏｄ  ｎを保持する。
【００３１】
チケット生成用情報２１０は、チケット生成用チケットｔ’について、チケット生成用公開鍵ｎ’，Ｅ’、およびその制御情報Ｌ’と、ｎ’，Ｅ’により暗号化したＲＳＡ秘密鍵ＤE'  ｍｏｄ  ｎ’を保持する。
【００３２】
ユーザ固有情報保持部４００は、ユーザを識別するための固有の情報としてユーザ認証鍵ｄＵ（４０１）を保持している。
【００３３】
制御情報Ｌ保持部７００は、使用期限や利用回数などの制御情報Ｌを保持している。この情報はあらかじめプロバイダよりユーザ個人宛てに配布されているものとする。
【００３４】
チケット算出処理部３００は、チケット生成用情報２１０から入力される情報に基づき、上記ＲＳＡ公開鍵Ｅに対応するＲＳＡ秘密鍵Ｄを秘密鍵Ｄ算出部３０１にて算出し、秘密鍵Ｄ保持部３０２に保持する。さらに、少なくともこの秘密鍵Ｄ、法数ｎ（２２２）、制御情報Ｌ、およびユーザ認証鍵ｄＵ（４０１）に基づきチケットｔ算出部３０３にてチケットｔを算出し、チケットｔ保持部６００に格納する。
【００３５】
証明処理部５００は、ＲＳＡ公開鍵暗号により暗号化されたデジタル情報（チャレンジと呼ぶ：Ｃで表記する）に対し、ユーザ認証鍵ｄＵ（４０１）、チケット、制御情報に基づく認証を行い、復号結果（レスポンスと呼ぶ：Ｒと表記する）を返すプログラムである。本実施例においては、チケット算出と鍵算出の両方に用いている。
【００３６】
チケットｔ保持部６００は、チケット算出処理部３００にて得られた結果を保持し、暗号化コンテントを復号して利用する際のチケットｔとして用いられる。本実施例では、チケットｔの算出式として具体的に次のものを用いる。
【００３７】
【数１】
ｔ＝Ｄ−ｈａｓｈ（ｄＵ，Ｌ）＋ωφ（ｎ）
算出式において、関数ｈａｓｈ（）は、ユーザ認証鍵ｄＵおよび制御情報Ｌを引数として取る一方向性ハッシュ関数であり、ωは乱数であり、φ（ｎ）は法数ｎのオイラー数である。ＲＳＡ暗号では、素数ｐ，ｑが与えられたとき、ｎ＝ｐ・ｑとして、Ｅ・Ｄ＝１  ｍｏｄ  （ｐ−１）（ｑ−１）となり、オイラー数φ（ｎ）＝（ｐ−１）（ｑ−１）である。
【００３８】
ここで、ユーザ環境においてはｐ，ｑが与えられていないため、オイラー数が不明であるが、前記よりＥ・Ｄ＝１  ｍｏｄ  φ（ｎ）であり、適当な倍数αにおいてαφ（ｎ）＝Ｅ・Ｄ−１となるので、トークンにＥを送れば、トークン内でφ（ｎ）の倍数が算出可能である。
【００３９】
なお、チケットを算出する方法は、秘密鍵Ｄから、法数ｎ、ユーザ認証鍵ｄＵおよび制御情報Ｌに依存した演算結果を加減算したものであれば良く、次のように一般化される。
【００４０】
【数２】
ｔ＝Ｄ−ｆ（Ｌ，ｎ，ｄＵ）
ここでｆ（  ）は一方向性関数である。
【００４１】
慣用暗号鍵Ｋ算出処理部８００は、鍵算出用情報２２０より得られるＫE  ｍｏｄ  ｎ、ＥをもとにチャレンジＣを計算し、これと前記ｎ，ｔおよびＬに基づいき証明処理部５００から得られるレスポンスＲにより、慣用暗号鍵Ｋを算出する。
【００４２】
復号処理部９００では、得られた鍵Ｋにより暗号化コンテントを復号する。
【００４３】
出力部１０００では、復号化されたコンテントの種類に応じ、実行形式であればプログラムの実行を、可視化コンテントであればビューワ／ブラウザなどによる可視化といった処理を出力とする。
【００４４】
トークン１１００は、少なくとも前記チケット算出処理部３００、ユーザ固有情報保持部４００、証明処理部５００を含み、保持、伝達および処理の過程で情報が外部に漏洩するのを防止する防御手段により保護（タンパープルーフ化）する仕組みである。このチケットを用いる枠組みでは、チケットによるアクセス制御のために、トークンによるタンパープルーフ化がされている必要がある。
【００４５】
つぎに本実施例の動作について説明する。まず、チケットｔがすでに算出され、その後、デジタル情報を復号する動作を、図２に従い説明する。
【００４６】
まず、証明処理部５００の動作について説明する。証明処理部５００は、入力としてユーザ認証鍵ｄＵ、制御情報Ｌ、チャレンジＣ、チケットｔおよび法数ｎを受け取り、制御情報Ｌが条件を満たす場合は次の値を計算する。
【００４７】
【数３】
Ｒ’＝Ｃhash(dU,L)  ｍｏｄ  ｎ
さらに、次の値を計算し、これをレスポンスＲとして出力する。
【００４８】
【数４】
Ｒ＝ＣtＲ’  ｍｏｄ  ｎ
次に、慣用暗号鍵Ｋ算出処理部８００の動作について説明する。慣用暗号鍵Ｋ算出処理部８００では、与えられたＫE  ｍｏｄ  ｎ、（Ｅ，ｎ）に加え、セッションごとに乱数ｒを生成する。慣用暗号鍵Ｋに乱数ｒを乗じたものを暗号化したチャレンジＣは、次のように表わされる。
【００４９】
【数５】
Ｃ＝ｒEＫE  ｍｏｄ  ｎ
このチャレンジＣをほかの既知の引数とともに証明処理部５００に入力する。
【００５０】
Ｃの計算時にｒを乗じているため、証明処理部５００より返るレスポンスＲに対し次のようにｒの逆数を乗ずることで鍵Ｋが得られる。
【００５１】
【数６】
ｒ-1Ｒ＝ｒ-1ｒＫ＝Ｋ
以上によりｔが算出されていれば慣用暗号鍵Ｋが得られ、暗号化コンテントが復号できる。
【００５２】
つぎに、チケットｔをローカル環境で生成する方法を述べる。
（１）まず、チケット発行用のチケットｔ’について、あらかじめ鍵ｎ’，Ｅ’，Ｄ’、および制御情報Ｌ’を用意する。ここでは、プロバイダと別に秘密情報を管理するセンターの存在を前提とし、Ｄ’はコンテンツの秘密鍵Ｄとともに、センターが保持するものとする。
（２）プロバイダは、センターに次の計算で求められるチケット発行用チケットｔ’および暗号化したＤの送付を受ける。
【００５３】
【数７】
ｔ’＝Ｄ’−ｈａｓｈ（Ｌ’，ｎ’）  ＋  φ（ｎ’）
ＤE'  ｍｏｄ  ｎ’
（３）プロバイダは、チケット生成用情報として、上記ｔ’、ＤE'  ｍｏｄ  ｎ’に加え、Ｌ’，Ｅ’，ｎ’をコンテンツに付与する。
（４）ユーザの処理装置において、コンテンツに付随するチケット生成用情報に基づき、チケット算出処理部３００にてチケットｔを計算する。この計算法には、鍵算出処理部３０１における計算と同様の方法を用いる。これについて図３に従いさらに詳しく説明する。
【００５４】
公開鍵Ｅ’で暗号化された秘密鍵Ｄを前述の慣用暗号鍵Ｋ算出処理におけるＫと同様に扱う。すなわち、与えられたＤE'  ｍｏｄ  ｎ、（Ｅ’，ｎ’）、乱数ｒに基づき、チャレンジＣ’を次のように計算する。
【００５５】
【数８】
Ｃ’＝（ｒ・Ｄ）E'  ｍｏｄ  ｎ’＝ｒE'ＤE'  ｍｏｄ  ｎ’
このチャレンジＣ’に加え、コンテントに付与されているｔ’，Ｌ’を引数とし、鍵算出とまったく同様に証明処理部５００を適用する。
すると証明処理部５００よりレスポンスＲが返るので、これに対し次のようにｒの逆数を乗ずることで秘密鍵Ｄが得られる。
【００５６】
【数９】
ｒ-1Ｒ＝ｒ-1ｒＤ＝Ｄ
ここで、チケットｔは前記のように次の計算で求められる。
【００５７】
【数１０】
ｔ＝Ｄ−ｈａｓｈ（ｄＵ，Ｌ）＋ωφ（ｎ）
Ｄが得られたことですべての引数が既知となるので、ｔを算出し、チケット保持部６００に格納する。あとは、チケットが既知の場合として説明した処理を行い、コンテントの復号を行う。
【００５８】
チケットの算出にあたっては秘密鍵Ｄが中間結果として計算されるため、チケット算出部３０３もトークン内に含まれる必要がある。
【００５９】
図２と図３を比較すれば明らかなように、慣用暗号鍵Ｋ算出処理部８００と証明処理部５００との間のやりとりは、秘密鍵Ｄ算出部３０１と証明処理部５００との間のやりとりとまったく同一の構成および処理をなす。したがって、証明処理部５００だけでなく、鍵算出部３０１および鍵算出処理部８００も実際にはまったく同じプログラムまたはハードウェアを用いることができる。
［実施例２］
つぎに本発明の実施例２について説明する。図４は、本発明の実施例２の構成を示す。本実施例では、実施例１においてセンターが保持することを前提としていたコンテントの暗号化に関する秘密鍵Ｄを、センターが知る必要をなくし、プロバイダが独自にコンテントの鍵を生成できるようにしている。
【００６０】
実施例１と異なるのは、トークンごとに異なるＲＳＡ鍵ｎｔ，Ｅｔ，Ｄｔを用いる点である。センターはこれらを管理し、秘密鍵Ｄそのものは保持しない。また、チケット生成用情報としてチケット発行用のチケットは存在せず、Ｄを暗号化して受け渡す方法として、前記のＲＳＡ公開鍵により暗号化したＤEt  ｍｏｄｎｔを用いる。
【００６１】
構成上異なるのは、チケット生成用情報２１０の代わりに暗号化秘密鍵Ｄ保持部１２００を用意し、ユーザ固有情報保持部４００に、トークン秘密鍵Ｄｔ（４０２）、トークン法数ｎｔ（４０２）を保持することである。
【００６２】
チケットｔを生成してから後の方法は実施例１と同じになるので、ここではチケットｔを生成する方法のみ述べる。
（１）前記のように、センターはトークンごとに異なるＲＳＡ鍵ｎｔ，Ｅｔ，Ｄｔを管理し、トークンにはｎｔ，Ｄｔをタンパプルーフ化して保持する。。
（２）ユーザは、コンテンツのチケット作成に必要なＤ（暗号化したもの）とＬをプロバイダに請求する。
（３）プロバイダは、センターにユーザのトークンのｎｔ，Ｅｔを要求し、暗号化秘密鍵（ＤEt  ｍｏｄ  ｎｔ）を計算して、Ｌとともにユーザに送る。
（４）ユーザの処理装置において、暗号化秘密鍵（ＤEt  ｍｏｄ  ｎｔ）およびトークン鍵ｎｔ，Ｄｔを用い、チケット算出処理部３００にてチケットｔを計算する。この計算法では、実施例１で述べた鍵算出処理部３０１における計算と類似した方法を用いる。これについて図５に従いさらに詳しく説明する。
【００６３】
公開鍵Ｅｔで暗号化された秘密鍵（ＤEt  ｍｏｄ  ｎｔ）を前述の慣用暗号鍵Ｋ算出処理におけるＫと同様に扱う。ただし、ここではチケット算出部３００全体がタンパプルーフ化されていることを前提に、乱数ｒは用いない例を示す。なお、これ以外にも、Ｅｔを別途与えるようにして、実施例１で述べたｒを乗じる方法を用いるなど、さまざまな実現が可能である。
【００６４】
与えられたＤEt  ｍｏｄ  ｎｔをチャレンジＣｔとする。
【００６５】
【数１１】
Ｃｔ＝ＤEt  ｍｏｄ  ｎｔ
トークン内でチケット生成用チケットｔｔを前記と同様に次のように計算する。
【００６６】
【数１２】
ｔｔ＝Ｄｔ−ｈａｓｈ（ｄＵ，Ｌ）＋ωφ（ｎｔ）
このチャレンジＣｔ、ｔｔに加え、プロバイダから送られたＬを証明処理部５００に入力し、レスポンスＲ、すなわち秘密鍵Ｄが得られる。
【００６７】
以上により、前記の例と同様にチケットｔを次の計算で求めることができ、あとは通常の復号が可能となる。
【００６８】
【数１３】
ｔ＝Ｄ−ｈａｓｈ（ｄＵ，Ｌ）＋ωφ（ｎ）
なおこの発明は上述の実施例に限定されるものでないことはいうまでもない。例えば、上述の実施例におけるチケット算出式は、すでに述べたように、ＤからｄＵ，Ｌ，ｎを引数とした関数を加減算したものであればよく、また、秘密鍵Ｄの算出方法は、実施例２で別の方法について述べたように、外部に漏洩しない方法であればよい。また、上述の実施例では復号鍵Ｋを算出して復号するようにしたが、上述チャレンジおよびレスポンスを利用して認証を行うようにしてもよいことはもちろんである。
【００６９】
また本発明はアナログ情報へのアクセス制御例えばアナログ情報へのアクセス権の認証にも用いることができる。
【００７０】
【発明の効果】
以上説明したように、本発明によれば、ユーザのローカルな環境で、安全性を保ったまま独自に電子的なチケットを発行できるようにすることができる。これにより、サービスやコンテンツごとにいちいちセンター等を介してチケットの取得を行う必要がなくなり、かつ、小額のチケットにおいては通信コストが不要になるというメリットがある。
【００７１】
また、センターがコンテンツを復号できてしまわないように、センターがコンテンツの鍵を知る必要をなくすことができる。これにより、センターがコンテンツを自由に見ることを防ぐことができ、無用な不信感を招くことがなくなる。
【００７２】
さらに、実施例に述べたような既存の鍵算出部と証明処理部をいわば二重に適用する実現方法によれば、本発明のために新たに用意する部分は非常に少なくて済み、ハードウェア、ソフトウェアを問わずコストをより低く押さえることが可能となる。とくに、ハードウェアによって実現する場合に低容量化やワンチップ化に有利である。
【図面の簡単な説明】
【図１】  本発明の実施例１の構成を示す図である。
【図２】  実施例１におけるコンテンツの復号動作について説明する図である。
【図３】  実施例１におけるチケット生成動作を説明する図である。
【図４】  本発明の実施例２の構成を示す図である。
【図５】  実施例２におけるチケット生成動作を説明する図である。
【符号の説明】
２００    カプセル保持部
３００    チケット算出処理部
４００    ユーザ固有情報保持部
５００    証明処理部
６００    チケットｔ保持部
７００    制御情報Ｌ保持部
８００    慣用暗号鍵算出処理部
９００    復号部
１１００    トークン
【図１】
0003690035.tif 000002
【図２】
0003690035.tif 000003
【図３】
0003690035.tif 000004
【図４】
0003690035.tif 000005
【図５】
0003690035.tif 000006