(57)【要約】  正しい受領者からの配信か否かを検証できるアクセストークンを生成するため、本発明の情報処理装置は、第１の時刻を取得する第１の時刻取得手段と、第１の時刻を基に第１のアクセストークンの有効期限を生成し、第１のアクセストークンと、有効期限と、第１のアクセストークンの受領者の識別情報とを含むポリシを生成するポリシ生成手段と、ポリシを基にデジタル署名を生成するデジタル署名生成手段と、ポリシとデジタル署名とを含む第２のアクセストークンを生成するアクセストークン生成手段と、第２のアクセストークンを送信する送信手段とを含む。
2018220693.tif 000002
【特許請求の範囲】
【請求項１】
第１の時刻を取得する第１の時刻取得手段と、
前記第１の時刻を基に第１のアクセストークンの有効期限を生成し、前記第１のアクセストークンと、前記有効期限と、前記第１のアクセストークンの受領者の識別情報とを含むポリシを生成するポリシ生成手段と、
前記ポリシを基にデジタル署名を生成するデジタル署名生成手段と、
前記ポリシと前記デジタル署名とを含む第２のアクセストークンを生成するアクセストークン生成手段と、
前記第２のアクセストークンを送信する送信手段と
を含む情報処理装置。
【請求項２】
前記ポリシ生成手段が、前記識別情報として、前記受領者を一意に識別する識別子にハッシュ関数を適用して計算したハッシュ値を用いる
請求項１に記載の情報処理装置。
【請求項３】
前記識別情報を暗号化する暗号化手段をさらに含み、
前記ポリシ生成手段が、前記暗号化手段が暗号化した前記識別情報を含む前記ポリシを生成する
請求項１又は２に記載の情報処理装置。
【請求項４】
第２のアクセストークンを受信する通信手段と、
第２の時刻を取得する第２の時刻取得手段と、
前記第２のアクセストークンに含まれる有効期限と前記第２の時刻とを基に前記第２のアクセストークンが有効か否かを判定する期限判定手段と、
前記第２のアクセストークンに含まれるデジタル署名を基に前記第２のアクセストークンが有効か否かを判定する署名判定手段と、
前記第２のアクセストークンに含まれる識別情報を基に前記第２のアクセストークンが不正に配信されたか否かを判定する受領者判定手段と
を含む検証装置。
【請求項５】
前記受領者判定手段が、
前記識別情報が同じ前記第２のアクセストークンを、所定の期間内に、所定の閾値より多く受信した場合に不正に配信されたと判定する
請求項４に記載の検証装置。
【請求項６】
前記受領者判定手段が、
前記識別情報が同じ前記第２のアクセストークンが、物理的に所定の距離以上離れた位置にある複数の装置から受信した場合に不正に配信されたと判定する
請求項４に記載の検証装置。
【請求項７】
第１の時刻を取得する第１の時刻取得手段と、
前記第１の時刻を基に第１のアクセストークンの有効期限を生成し、前記第１のアクセストークンと、前記有効期限と、前記第１のアクセストークンの受領者の識別情報とを含むポリシを生成するポリシ生成手段と、
前記ポリシを基にデジタル署名を生成するデジタル署名生成手段と、
前記ポリシと前記デジタル署名とを含む第２のアクセストークンを生成するアクセストークン生成手段と、
前記第２のアクセストークンを送信する送信手段と
を含む情報処理装置と、
前記第２のアクセストークンを受信する通信手段と、
第２の時刻を取得する第２の時刻取得手段と、
前記第２のアクセストークンに含まれる前記有効期限と前記第２の時刻とを基に前記第２のアクセストークンが有効か否かを判定する期限判定手段と、
前記第２のアクセストークンに含まれる前記デジタル署名を基に前記第２のアクセストークンが有効か否かを判定する署名判定手段と、
前記第２のアクセストークンに含まれる識別情報を基に前記第２のアクセストークンが不正に配信されたか否かを判定する受領者判定手段と
を含む検証装置と
を含む情報処理システム。
【請求項８】
前記識別情報と、前記識別情報に対応する前記受領者に関する情報とを関連付けて保存する関連情報保存手段と、
前記第２のアクセストークンに含まれる前記識別情報を基に、前記受領者に関する情報を抽出する受領者抽出手段と
を含む抽出装置をさらに含み、
前記検証装置が、不正に配信されたと判定した前記第２のアクセストークンを前記抽出装置に送信する
請求項７に記載の情報処理システム。
【請求項９】
第１の時刻を取得し、
前記第１の時刻を基に第１のアクセストークンの有効期限を生成し、前記第１のアクセストークンと、前記有効期限と、前記第１のアクセストークンの受領者の識別情報とを含むポリシを生成し、
前記ポリシを基にデジタル署名を生成し、
前記ポリシと前記デジタル署名とを含む第２のアクセストークンを生成し、
前記第２のアクセストークンを送信する
情報処理方法。
【請求項１０】
第１の時刻を取得する処理と、
前記第１の時刻を基に第１のアクセストークンの有効期限を生成し、前記第１のアクセストークンと、前記有効期限と、前記第１のアクセストークンの受領者の識別情報とを含むポリシを生成する処理と、
前記ポリシを基にデジタル署名を生成する処理と、
前記ポリシと前記デジタル署名とを含む第２のアクセストークンを生成する処理と、
前記第２のアクセストークンを送信する処理と
をコンピュータに実行させるプログラムをコンピュータ読み取り可能に記憶する記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報の処理に関し、特に、アクセスの権限を処理する情報処理装置などに関する。
【背景技術】
【０００２】
システムにおける資源に関する権限の移譲を安全に実現するための仕組みとして、認証情報であるアクセストークン（Ａｃｃｅｓｓ  Ｔｏｋｅｎ）を用いたシステムがある（例えば、特許文献１ないし５を参照）。例えば、コンピュータシステムの基盤をサービスとして提供するＩａａＳ（Ｉｎｆｒａｓｔｒｕｃｔｕｒｅ  ａｓ  ａ  Ｓｅｒｖｉｃｅ）において、システム外のユーザに対し権限を委譲したい場合がある。このような場合、権限は、アクセストークンシステムを用いて委譲される。【０００３】
例えば、特許文献１に記載の発明では、次のようにして、権限が委譲される。まず、アクセストークンシステムは、対象となる資源へのアクセス権限に関するアクセストークン（以下、「原アクセストークン」と呼ぶ）を生成する。さらに、アクセストークンシステムは、生成した原アクセストークンの有効期限を生成する。そして、アクセストークンシステムは、原アクセストークンと有効期限とを連結したポリシ（一般的には、文字列を用いて生成される）を基にデジタル署名を生成する。そして、アクセストークンシステムは、ポリシとデジタル署名とを連結したデータ（以下、「送信用アクセストークン」と呼ぶ）を、権限の委譲先（例えば、ユーザ）に渡す。その委譲先は、送信用アクセストークンを用いて委譲された資源に関する権限を取得し、その資源を用いた処理を実行する。【０００４】
図１６は、一般的なアクセストークンシステム９００の構成の一例を示すブロック図である。【０００５】
アクセストークンシステム９００は、生成装置９２０と、検証装置９３０と、ネットワーク９４０と、委譲先装置９５０と、資源管理装置９６０とを含む。【０００６】
ネットワーク９４０は、各装置間におけるデータの送信及び受信を仲介する通信路である。【０００７】
生成装置９２０は、資源に関する原アクセストークンを生成又は取得する。さらに、生成装置９２０は、時刻を取得し、時刻を基に有効期限を生成する。そして、生成装置９２０は、原アクセストークンと有効期限とを用いてポリシを生成する。そして、生成装置９２０は、予め保持するデジタル署名に用いる署名鍵を用いて、ポリシからデジタル署名を生成する。そして、生成装置９２０は、ポリシとデジタル署名とから委譲先装置９５０に送信するための送信用アクセストークンを生成し、送信用アクセストークンを委譲先装置９５０に送信する。【０００８】
図面を参照して、生成装置９２０の動作を説明する。【０００９】
図１７は、一般的な生成装置９２０の動作を説明するための流れ図である。【００１０】
生成装置９２０は、権限を委譲する対象となる資源への原アクセストークンを取得する（ステップＳ９１１）。【００１１】
次に、生成装置９２０は、原アクセストークンの有効期限を生成する（ステップＳ９１２）。【００１２】
さらに、生成装置９２０は、原アクセストークンと有効期限とを用いて、ポリシを生成する（ステップＳ９１３）。【００１３】
そして、生成装置９２０は、署名鍵とポリシとを基に、デジタル署名を生成する（ステップＳ９１４）。【００１４】
そして、生成装置９２０は、ポリシとデジタル署名とを基に、送信用アクセストークンを生成する（ステップＳ９１５）。【００１５】
生成装置９２０は、委譲先装置９５０に送信用アクセストークンを送信する（ステップS９１６）。【００１６】
委譲先装置９５０は、資源管理装置９６０が管理する資源を利用する際に、受信した送信用アクセストークンを資源管理装置９６０に送信する。【００１７】
資源管理装置９６０は、送信用アクセストークンを受信した場合、送信用アクセストークンを検証装置９３０に送信して、送信用アクセストークンの検証を依頼する。そして、資源管理装置９６０は、検証装置９３０の検証結果が有効な場合、委譲先装置９５０に資源の利用を許可する。【００１８】
検証装置９３０は、予め、検証に用いる検証鍵を保持する。そして、検証装置９３０は、検証時の時刻を取得する。そして、検証装置９３０は、検証鍵と時刻とを用いて、受信した送信用アクセストークンの有効性を検証する。【００１９】
図１８は、一般的な検証装置９３０の動作を説明するための流れ図である。【００２０】
検証装置９３０は、送信用アクセストークンを受信する（ステップＳ９２１）。【００２１】
検証装置９３０は、現在の時刻と、送信用アクセストークンに含まれる有効期限とを用いて、送信用アクセストークンが有効期限内であるか否か判定する（ステップＳ９２２）。【００２２】
期限が有効な場合（ステップＳ９２２でＹｅｓ）、検証装置９３０は、送信用アクセストークンに含まれるデジタル署名が有効か否かを検証する（ステップＳ９２３）。【００２３】
デジタル署名が有効な場合（ステップＳ９２３でＹｅｓ）、検証装置９３０は、送信用アクセストークンが有効であるとの検証結果を送信する（ステップＳ９２４）。【００２４】
期限が有効でない場合（ステップＳ９２２でＮｏ）、又は、デジタル署名が有効でない場合（ステップＳ９２３でＮｏ）、検証装置９３０は、送信用アクセストークンが有効でないとの検証結果を送信する（ステップＳ９２５）。【００２５】
このように、一般的なアクセストークンシステム９００は、アクセストークンを用いて資源へのアクセスの権限を委譲する。【００２６】
特許文献２は、なりすましを防止する技術を開示している。【００２７】
特許文献３は、あるアプリケーションの設定変更を実行する他のアプリケーションの権限に関する技術を開示している。【００２８】
特許文献４は、ユーザに関する複数の認証情報を用いて、ユーザの個人情報を開示しないアクセスを実現するための技術を開示している。【００２９】
特許文献５は、シングルサインオン用の認証トークンを生成する技術を開示している。【００３０】
なお、非特許文献１ないし５は、実施形態の説明に用いる技術を開示する文献である。
【先行技術文献】
【特許文献】
【００３１】
【特許文献１】米国特許出願公開第２０１６／０１２７３３０号明細書
【特許文献２】特開２０１７−００４１１５号公報
【特許文献３】特開２０１６−１３０９７３号公報
【特許文献４】特開２０１２−１６４１９１号公報
【特許文献５】特開２００８−２１９２６６号公報
【非特許文献】
【００３２】
【非特許文献１】Mihir Bellare, Ran Canetti, and Hugo Krawczyk, "Keying Hash Functions for Message Authentication", Annual International Cryptology Conference, Springer Berlin Heidelberg, Advances in Cryptology - CRYPTO '96, LNCS 1109, pp. 1-15, 1996.
【非特許文献２】T. Bray, "The JavaScript Object Notation (JSON) Data Interchange Format" (Request for Comments: 7159), Internet Engineering Task Force (IETF), March, 2014.
【非特許文献３】T. Berners-Lee, R. Fielding, L. Masinter "Uniform Resource Identifier (URI): Generic Syntax", (Request for Comments: 3986), Network Working Group, January, 2005.
【非特許文献４】A. Barth, "HTTP State Management Mechanism", (Request for Comments: 6265), Internet Engineering Task Force (IETF), April, 2011.
【非特許文献５】National Institute of Standards and Technology (NIST), "Advanced Encryption Standard (AES)", Federal Information Processing Standards Publication 197 (FIPS 197), November 26, 2001.
【発明の概要】
【発明が解決しようとする課題】
【００３３】
アクセストークンは、アクセストークンシステムに含まれる装置間において送信及び受信される。そして、装置間のネットワークは、複数の装置を用いて構成されている。そのため、悪意の者が操作する装置が、アクセストークンシステムに含まれる場合が想定される。つまり、正規のアクセストークンが、悪意のある者に受領される可能性がある。【００３４】
悪意のある受領者は、受領したアクセストークンを用いて、不正な権限の委譲を試みる可能性がある。【００３５】
この対策の一つは、アクセストークンの有効期限を短くすることである。アクセストークンの有効期限を短くすることは、悪意のある受領者が受領したアクセストークンを用いて不正に権限を移譲できる期間を短くし、被害を小さくする。【００３６】
しかし、有効期限を短くすると、アクセストークンの利用可能期間が短くなる。その結果、例えば、多くのアクセストークンを生成することが必要となる。つまり、有効期限を短くすることは、利便性を低下させることとなる。【００３７】
そこで、利便性を低下させることなくアクセストークンの不正使用を防止するために、アクセストークンの不正使用を検証する技術が望まれている。内容的に不正なアクセストークン（例えば、有効期限が切れている、あるいはデジタル署名が無効なアクセストークン）の検知は既に行われている。そのため、特に、不正な受領者が送付した内容的には正しいアクセストークン（例えば、有効期限及びデジタル署名が有効なアクセストークン）を検証する技術が望まれている。つまり、ここで望まれている技術は、アクセストークンの内容が有効であるか否かを検知する技術ではなく、正しいアクセストークンが正しい受領者によって送信されていることを検証する技術である。また、正しいアクセストークンが不正に送信されている場合、送信されているアクセストークンの正しい受領者を特定する技術も望まれる。【００３８】
特許文献１ないし５は、上記のアクセストークンシステムのような権限の委譲に関する認証情報（例えば、アクセストークン）に関して、認証情報が内容的に不正であるか否かを検出する技術を開示している。しかし、特許文献１ないし５は、正しいアクセストークンが正しい受領者によって送信されていることを検証する技術を開示してはいない。また、特許文献１ないし５は、正しいアクセストークンが不正に送信されている場合、送信されているアクセストークンの正しい受領者を特定する技術を開示していない。【００３９】
つまり、特許文献１ないし５に記載の技術は、アクセストークンシステムにおいて、アクセストークンが正しい受領者から送信されているかを検証できないという問題点があった。また、特許文献１ないし５に記載の技術は、正しいアクセストークンが不正に送信されている場合、送信されているアクセストークンの正しい受領者を特定できないという問題点があった。【００４０】
本発明の目的は、上記問題点を解決し、正しい受領者からの配信か否かを検証できるアクセストークンを生成する情報処理装置、及び／又は、アクセストークンの不正な配信を検証する検証装置などを提供することにある。
【課題を解決するための手段】
【００４１】
本発明の一形態における情報処理装置は、第１の時刻を取得する第１の時刻取得手段と、第１の時刻を基に第１のアクセストークンの有効期限を生成し、第１のアクセストークンと、有効期限と、第１のアクセストークンの受領者の識別情報とを含むポリシを生成するポリシ生成手段と、ポリシを基にデジタル署名を生成するデジタル署名生成手段と、ポリシとデジタル署名とを含む第２のアクセストークンを生成するアクセストークン生成手段と、第２のアクセストークンを送信する送信手段とを含む。【００４２】
本発明の一形態における検証装置は、第２のアクセストークンを受信する通信手段と、第２の時刻を取得する第２の時刻取得手段と、第２のアクセストークンに含まれる有効期限と第２の時刻とを基に第２のアクセストークンが有効か否かを判定する期限判定手段と、第２のアクセストークンに含まれるデジタル署名を基に第２のアクセストークンが有効か否かを判定する署名判定手段と、第２のアクセストークンに含まれる識別情報を基に第２のアクセストークンが不正に配信されたか否かを判定する受領者判定手段とを含む。【００４３】
本発明の一形態における情報処理システムは、上記の情報処理装置と、上記の検証装置とを含む。【００４４】
本発明の一形態における情報処理方法は、第１の時刻を取得し、第１の時刻を基に第１のアクセストークンの有効期限を生成し、第１のアクセストークンと、有効期限と、第１のアクセストークンの受領者の識別情報とを含むポリシを生成し、ポリシを基にデジタル署名を生成し、ポリシとデジタル署名とを含む第２のアクセストークンを生成し、第２のアクセストークンを送信する。【００４５】
本発明の一形態における記録媒体は、第１の時刻を取得する処理と、第１の時刻を基に第１のアクセストークンの有効期限を生成し、第１のアクセストークンと、有効期限と、第１のアクセストークンの受領者の識別情報とを含むポリシを生成する処理と、ポリシを基にデジタル署名を生成する処理と、ポリシとデジタル署名とを含む第２のアクセストークンを生成する処理と、第２のアクセストークンを送信する処理とをコンピュータに実行させるプログラムをコンピュータ読み取り可能に記憶する。
【発明の効果】
【００４６】
本発明に基づけば、正しい受領者からの配信か否かを検証できるアクセストークンを生成、又は、アクセストークンの不正な配信を検証するとの効果を奏することができる。
【図面の簡単な説明】
【００４７】
【図１】図１は、本発明における第１の実施形態に係る情報処理装置の構成の一例を示すブロック図である。
【図２】図２は、第１の実施形態に係る情報処理装置を含む情報処理システムの構成の一例を示すブロック図である。
【図３】図３は、第１の実施形態に係る検証装置の構成の一例を示すブロック図である。
【図４】図４は、第１の実施形態に係る情報処理装置の動作の一例を示す流れ図である。
【図５】図５は、第１の実施形態に係る検証装置の動作の一例を示す流れ図である。
【図６】図６は、第２の実施形態に係る情報処理装置を含む情報処理システムの構成の一例を示すブロック図である。
【図７】図７は、第２の実施形態に係る情報処理装置の構成の一例を示すブロック図である。
【図８】図８は、第２の実施形態に係る検証装置の構成の一例を示すブロック図である。
【図９】図９は、第３の実施形態に係る情報処理装置を含む情報処理システムの構成の一例を示すブロック図である。
【図１０】図１０は、第３の実施形態に係る情報処理装置の構成の一例を示すブロック図である。
【図１１】図１１は、第３の実施形態に係る検証装置の構成の一例を示すブロック図である。
【図１２】図１２は、第４の実施形態に係る情報処理システムの構成の一例を示すブロック図である。
【図１３】図１３は、第４の実施形態に係る検証装置の構成の一例を示すブロック図である。
【図１４】図１４は、第４の実施形態に係る抽出装置の構成の一例を示すブロック図である。
【図１５】図１５は、情報処理装置のハードウェア構成の一例を示すブロック図である。
【図１６】図１６は、一般的なアクセストークンシステムの構成の一例を示すブロック図である。
【図１７】図１７は、一般的な生成装置の動作を説明するための流れ図である。
【図１８】図１８は、一般的な検証装置の動作を説明するための流れ図である。
【発明を実施するための形態】
【００４８】
次に、本発明の実施形態について図面を参照して説明する。
【００４９】
なお、各図面は、本発明の実施形態を説明するためのものである。ただし、本発明は、各図面の記載に限られるわけではない。また、各図面の同様の構成には、同じ番号を付し、その繰り返しの説明を、省略する場合がある。また、以下の説明に用いる図面において、本発明の説明に関係しない部分の構成については、記載を省略し、図示しない場合もある。
【００５０】
（関連技術）
不正なアクセストークンの配信を検証するための技術として、本発明に関連する技術を説明する。
【００５１】
関連する技術の一例として、アクセストークンシステムにおいて、アクセストークンの生成装置が、生成した全てのアクセストークンと、そのアクセストークンにおける権限の委譲先（つまり、受領者）を示す情報との組を保存する技術が想定可能である。この場合、検証装置は、保存されている情報を基に、アクセストークンを送信してきた権限の委譲を希望する者が、そのアクセストークンに対して登録されている受領者か否かを検証することができる。
【００５２】
しかし、この技術は、アクセストークンと受領者との組を含むデータを記憶するための記憶装置（例えば、データベース）が必要である。この組の数は、アクセストークンの作成対象となる資源と受領者との組合せの数（資源の数と受領者の数の積）となる。そのため、システムが大きくなると、管理対象となる資源及び受領者が多くなるため、管理対象となるデータ量が、膨大な数となる。
【００５３】
つまり、この技術は、管理対象となるデータが増大し、データの保存及び管理コストが大きくなるという問題点があった。例えば、アクセストークンの発行が頻発した場合、管理用のデータが頻繁に書き換わることとなる。つまり、この技術は、管理用のデータを管理のためのコストが増大するとの問題があった。
【００５４】
本発明の目的の一つは、上記のような問題点を解決する情報処理装置などを提供することである。
【００５５】
＜第１の実施形態＞
以下、図面を参照して、第１の実施形態について説明する。
【００５６】
［構成の説明］
図２は、本発明における第１の実施形態に係る情報処理装置１２０などを含む情報処理システム１００の構成の一例を示すブロック図である。
【００５７】
情報処理システム１００は、情報処理装置１２０と、検証装置１３０と、ネットワーク１４０と、委譲先装置１５０と、資源管理装置１６０とを含む。
【００５８】
ネットワーク１４０は、各装置を接続する通信路である。ネットワーク１４０の構成は、任意である。ネットワーク１４０は、例えば、インターネット、イントラネット、又は、電話回線網でもよい。そのため、ネットワーク１４０の詳細な説明を省略する。
【００５９】
情報処理装置１２０は、資源管理装置１６０が管理する資源を用いて動作する装置から、資源を委譲するためのアクセストークン（以下、「原アクセストークン」又は「第１のアクセストークン」と呼ぶ）を取得する。そして、情報処理装置１２０は、原アクセストークンに対応して、資源を委譲するために送信するアクセストークン（以下、「受領者指定アクセストークン」又は「第２のアクセストークン」と呼ぶ）を生成し、委譲先装置１５０に送信する。受領者指定アクセストークンの詳細は、後ほど説明する。
【００６０】
なお、情報処理装置１２０は、自装置で使用する資源に対する受領者指定アクセストークンを生成して、委譲先装置１５０に送信してもよい。この場合、情報処理装置１２０において、原アクセストークンの取得は、不要である。
【００６１】
委譲先装置１５０は、受領者指定アクセストークンを受信すると、受信した受領者指定アクセストークンを用いて、資源管理装置１６０が管理する資源を使用する。資源の使用に際し、委譲先装置１５０は、受領者指定アクセストークンを資源管理装置１６０に送信する。なお、受領者指定アクセストークンを受信した委譲先装置１５０、又は、その委譲先装置１５０を管理又は操作する者が、具体的な「受領者」である。
【００６２】
資源管理装置１６０は、受領者指定アクセストークンを受信すると、受信した受領者指定アクセストークンを検証装置１３０に送信し、受領者指定アクセストークンの検証を依頼する。
【００６３】
検証装置１３０は、受信した受領者指定アクセストークンが正当であるか否かを検証する。
【００６４】
そして、資源管理装置１６０は、検証装置１３０における検証の結果として受領者指定アクセストークンが正当な場合、委譲先装置１５０が資源にアクセスすることを許可する。
【００６５】
委譲先装置１５０、資源管理装置１６０、及びネットワーク１４０は、一般的なアクセストークンシステムにおいて用いられる装置及び通信路と同様の構成を含み、同様に動作する。そのため、これらの構成の詳細な説明を省略する。
【００６６】
以下では、第１の実施形態に係る情報処理装置１２０と検証装置１３０とをさらに詳細に説明する。
【００６７】
なお、図２において、情報処理装置１２０、検証装置１３０、委譲先装置１５０、及び資源管理装置１６０は、別装置となっている。ただし、第１の実施形態において、複数の装置が、物理的に一つの装置に実装されてもよい。例えば、情報処理装置１２０と検証装置１３０とは、物理的に一つの装置（例えば、コンピュータ）に実装されていてもよい。あるいは、資源管理装置１６０と、検証装置１３０とが、物理的に一つの装置（例えば、コンピュータ）に実装されていてもよい。
【００６８】
以下で詳細に説明するように、情報処理装置１２０は、資源の権限を委譲するための情報として、受領者指定アクセストークンを生成する。さらに、情報処理装置１２０は、不正な配信を検証することができるように、受領者指定アクセストークンを生成する。ただし、これは、第１の実施形態に係る情報処理装置１２０が生成する情報を、受領者指定アクセストークンに限定するものではない。情報処理装置１２０は、アクセストークンに限らず、不正な配信を検証できる他の認証情報を生成してもよい。
【００６９】
次に、図面を参照して情報処理装置１２０の構成について説明する。
【００７０】
図１は、第１の実施形態に係る情報処理装置１２０の構成の一例を示すブロック図である。
【００７１】
情報処理装置１２０は、時刻取得部１２１と、ポリシ生成部１２２と、デジタル署名生成部１２３と、アクセストークン生成部１２４と、送信部１２５とを含む。
【００７２】
時刻取得部１２１は、現在の時刻を取得する。時刻取得部１２１は、例えば、時計又はカウンタである。時刻取得部１２１は、図示しない外部の計時装置から時刻を取得してもよい。
【００７３】
なお、時刻取得部１２１を後ほど説明する時刻取得部１３１と区別する場合、時刻取得部１２１を「第１の時刻取得手段」と呼ぶ。また、時刻取得部１３１を「第２の時刻取得手段」と呼ぶ。さらに、時刻取得部１２１が取得する時刻を「第１の時刻」と呼ぶ。また、時刻取得部１３１が取得する時刻を「第２の時刻」と呼ぶ。
【００７４】
ポリシ生成部１２２は、権限の委譲の対象となっている資源への原アクセストークンと、その資源の権限を受領する受領者を識別するため情報（以下、単に「識別情報」と呼ぶ）とを取得する。
【００７５】
ポリシ生成部１２２における原アクセストークン及び識別情報の取得元は、任意である。例えば、ポリシ生成部１２２は、図示しない記憶部に記憶されている原アクセストークン及び識別情報を取得してもよい。あるいは、ポリシ生成部１２２は、図示しない資源の権限を委譲したい装置から原アクセストークン及び識別情報を取得してもよい。あるいは、ポリシ生成部１２２は、自装置で使用している資源に関する原アクセストークンと識別情報とを生成してもよい。
【００７６】
さらに、原アクセストークン及び識別情報のデータ形式及び内容は、任意である。
【００７７】
例えば、原アクセストークンは、非特許文献３に記載されている「ＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）」、又は、非特許文献４に記載されている「Ｃｏｏｋｉｅ」でもよい。
【００７８】
また、例えば、識別情報は、受領者を一意に識別するための識別子（受領者識別子）である。より具体的には、受領者識別子は、例えば、受領者が所属する組織が割り当てた数値（例えば、社員番号又は会員番号）である。
【００７９】
さらに、ポリシ生成部１２２は、時刻取得部１２１から現在の時刻（第１の時刻）を取得する。そして、ポリシ生成部１２２は、時刻（第１の時刻）を基に有効期限を生成する。ポリシ生成部１２２における有効期限の生成方法は、任意である。例えば、ポリシ生成部１２２は、現在の時刻に予め保持する期間を加えて有効期限を生成してもよい。
【００８０】
そして、ポリシ生成部１２２は、原アクセストークンと、有効期限と、識別情報とを含むポリシを生成する。
【００８１】
ここで、ポリシの形式は、任意である。例えば、ポリシは、非特許文献２に記載されているＪＳＯＮ（ＪａｖａＳｃｒｉｐｔ  Ｏｂｊｅｃｔ  Ｎｏｔａｔｉｏｎ）形式のファイルを、Ｂａｓｅ６４を用いてコード化（エンコード）したデータでもよい。なお、Ｂａｓｅ６４とは、データを、６４種類の記号（通常は、アルファベットの大文字（２６文字）と小文字（２６文字）、数字（１０文字）、‘＋’、‘／’）を用いて記号化することである。
【００８２】
つまり、第１の実施形態のポリシは、上記のとおり、アクセス対象となっている資源の権限の委譲に関する原アクセストークンと、有効期限とに加え、識別情報を含む。
【００８３】
デジタル署名生成部１２３は、ポリシを基にデジタル署名を生成する。デジタル署名とは、送られてきたデータが改ざんされていないかを検証するための情報である。
【００８４】
そのため、デジタル署名生成部１２３は、まず、所定のハッシュ関数を用いて、ポリシのハッシュ値（第１のハッシュ値）を計算する。なお、情報処理装置１２０と検証装置１３０とは、このハッシュ関数を共有する。
【００８５】
第１の実施形態に係るハッシュ関数は、暗号学的ハッシュ関数であることが求められる。暗号的ハッシュ関数とは、一般的なハッシュ関数に望まれる性質に加え、次のような特性を備える。
（１）同一のハッシュ値であるのに、そっくりだが実は異なるというようなメッセージの作成が不可能であること。
（２）ハッシュ値から、そのようなハッシュ値となるメッセージを得ることが(事実上)不可能であること（原像計算困難性、弱衝突耐性）。
（３）同じハッシュ値となる、異なる2つのメッセージのペアを求めることが(事実上)不可能であること（強衝突耐性）
例えば、暗号学的ハッシュ関数（ｈ（ｘ））は、ハッシュ値（ｈ（ｘ））からｘを推測することが困難であることに加え、ハッシュ値が同じ（ｈ（ｘ１）＝ｈ（ｘ２））となる異なる二つの（ｘ１、ｘ２）を求めるのが難しい関数である。
【００８６】
そして、デジタル署名生成部１２３は、ハッシュ値からデジタル署名を生成する。
【００８７】
第１の実施形態に係るデジタル署名の方法は、任意である。例えば、デジタル署名は、公開鍵を用いたＲＳＡ（Ｒｉｖｅｓｔ  Ｓｈａｍｉｒ  ａｎｄ  Ａｄｌｅｍａｎ）署名、又は、非特許文献１に記載されているＨＭＡＣ（Ｈａｓｈ−ｂａｓｅｄ  Ｍｅｓｓａｇｅ  Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  Ｃｏｄｅ）である。デジタル署名生成部１２３は、予め、上記の方法に必要な情報（例えば、デジタル署名を生成するための署名鍵）を保持する。
【００８８】
アクセストークン生成部１２４は、ポリシと、デジタル署名とを含む受領者指定アクセストークンを生成する。
【００８９】
送信部１２５は、受領者指定アクセストークンを、委譲先装置１５０（つまり、受領者）に送信する。
【００９０】
委譲先装置１５０は、資源を使用する際に、受領者指定アクセストークンを資源管理装置１６０に送信する。
【００９１】
資源管理装置１６０は、受信した受領者指定アクセストークンを検証装置１３０に送信して、受領者指定アクセストークンの正当性の検証を依頼する。
【００９２】
検証装置１３０は、受領者した受領者指定アクセストークンが正当であるか否かを検証する。
【００９３】
次に、図面を参照して検証装置１３０の構成を説明する。
【００９４】
図３は、第１の実施形態に係る検証装置１３０の構成の一例を示すブロック図である。
【００９５】
検証装置１３０は、時刻取得部１３１と、期限判定部１３２と、署名判定部１３３と、受領者判定部１３４と、通信部１３５とを含む。
【００９６】
通信部１３５は、受領者指定アクセストークン（第２のアクセストークン）を受信する。
【００９７】
時刻取得部１３１は、現在の時刻（第２の時刻）を取得する。時刻取得部１３１は、例えば、時計又はカウンタである。時刻取得部１３１は、図示しない外部の計時装置から時刻を取得してもよい。
【００９８】
期限判定部１３２は、受領者指定アクセストークンが含む有効期限と第２の時刻とを基に、受領者指定アクセストークンが有効期限内であるか否か判定する。
【００９９】
有効期限内でない場合、検証装置１３０は、受領者指定アクセストークンを正当ではない（不正）と判定する。この場合、通信部１３５は、不正との検証結果を、資源管理装置１６０に送信する。その結果、資源管理装置１６０は、例えば、委譲先装置１５０に、「アクセス拒否」を示すメッセージを返却する。
【０１００】
有効期限内の場合、署名判定部１３３は、受領者指定アクセストークンに含まれるデジタル署名が有効であるか否かを判定する。
【０１０１】
具体的には、署名判定部１３３は、次のように動作する。署名判定部１３３は、予め、デジタル署名を復号するための検証用の鍵（検証鍵）を保持する。さらに、署名判定部１３３は、判定に用いるハッシュ関数を保持する。このハッシュ関数は、情報処理装置１２０と共有している関数である。そして、署名判定部１３３は、受領者指定アクセストークンに含まれるポリシにハッシュ関数と適用した値と、復号したデジタル署名とが一致するか否かを判定する。
【０１０２】
署名判定部１３３における判定を、変数と関数とを用いて説明すると次のようになる。
【０１０３】
説明に用いる変数として、署名鍵を「ｋｓ」、検証鍵を「ｋｖ」、平文（ポリシ）を「ｍ」とする。そして、デジタル署名生成部１２３における署名生成のアルゴリズムの関数を「Ｓｉｇｎ（鍵、文）」とする。例えば、デジタル署名を「σ」とすると、デジタル署名σは、「σ＝Ｓｉｇｎ（ｋｓ，ｍ）」である。なお、関数Ｓｉｇｎは、ハッシュ関数の機能を含む。
【０１０４】
そして、署名判定部１３３における検証のアルゴリズムの関数を「Ｖｅｒｉｆｙ（デジタル署名、文、復号鍵）」とする。関数Ｖｅｒｉｆｙは、引き数となっているデジタル署名を復号鍵で復号し、復号結果と引き数の文（ポリシ）との比較結果を出力する関数である。ここでは、一致の場合の関数Ｖｅｒｉｆｙの出力が「１」、一致しない場合の関数Ｖｅｒｉｆｙの出力が「０」とする。なお、関数Ｖｅｒｉｆｙはハッシュ関数の機能を含む。
【０１０５】
この場合、署名判定部１３３は、デジタル署名の判定として、「Ｖｅｒｉｆｙ（σ，ｍ，ｋｖ）＝１」が成り立つか否かを判定すればよい。
【０１０６】
デジタル署名が有効でない場合、検証装置１３０は、受領者指定アクセストークンを正当ではない（不正）と判定する。この場合、通信部１３５は、不正との検証結果を、資源管理装置１６０に送信する。その結果、資源管理装置１６０は、例えば、委譲先装置１５０に、「アクセス拒否」を示すメッセージを返却する。
【０１０７】
デジタル署名が有効な場合、受領者判定部１３４は、受領者指定アクセストークンに含まれる識別情報を基に、受領者指定アクセストークンが正当な配信であるか、否かを判定する。
【０１０８】
受領者指定アクセストークンが正当な配信ではない場合（不正配信の場合）、通信部１３５は、不正との検証結果を、資源管理装置１６０に送信する。その結果、資源管理装置１６０は、例えば、委譲先装置１５０に、「アクセス拒否」を示すメッセージを返却する。
【０１０９】
受領者指定アクセストークンが正当な配信の場合、通信部１３５は、正当との検証結果を、資源管理装置１６０に送信する。この場合、資源管理装置１６０は、委譲先装置１５０に、アクセスを許可する。
【０１１０】
受領者判定部１３４における判定は、任意である。例えば、受領者判定部１３４における判定は、情報処理システム１００の構成などを基に決定されればよい。
【０１１１】
以下、受領者判定部１３４における判定の例を説明する。
【０１１２】
検証装置１３０は、履歴として、受領者指定アクセストークンに対する判定の結果を保存する。例えば、この履歴は、受領者判定部２３４の判定結果（識別情報と、その識別情報を基にした判定の結果）とを含む。なお、履歴に含まれる判定の結果は、不正と判定した場合に限らず、正当と判定した場合を含んでもよい。さらに、この履歴は、期限判定部１３２の判定結果（有効期限の判定）、及び／又は、署名判定部１３３の判定結果（デジタル署名の判定）を含んでもよい。
【０１１３】
受領者判定部１３４は、その履歴を用いて識別情報を判定する。
【０１１４】
例えば、不正者は、アクセスの権限を取得するために、多量のアクセストークンを送信する場合がある。そこで、受領者判定部１３４は、所定の期間内に、同じ識別情報を含む受領者指定アクセストークンを所定の閾値より多く受信している場合、その識別情報を含む受領者指定アクセストークンを不正と判定する。
【０１１５】
ただし、受領者判定部１３４の判定は、上記に限定されない。
【０１１６】
例えば、不正者は、正規の受領者とは物理的に離れた位置（例えば、外国）にいる場合がある。そこで、受領者判定部１３４は、受領者指定アクセストークンの送信元の装置の位置が物理的に所定の距離以上離れた位置にある複数の装置となっている場合、受領者指定アクセストークンを不正と判定してもよい。検証装置１３０における位置の判定は、任意である。例えば、検証装置１３０は、受領者指定アクセストークンの送信用いられたパケットにおける送信元のＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）アドレスを用いて、送信元に位置を判定してもよい。
【０１１７】
さらに、受領者判定部１３４が識別情報を基に受領者指定アクセストークンを不正と判定した場合、検証装置１３０は、判定の結果の通知を実行してもよい。例えば、検証装置１３０は、その受領者指定アクセストークンを生成した情報処理装置１２０に、不正な受領者指定アクセストークンを受信したことを連絡してもよい。
【０１１８】
［動作の説明］
次に、図面を参照して、第１の実施形態に係る情報処理装置１２０などの動作を説明する。
【０１１９】
図４は、第１の実施形態に係る情報処理装置１２０の動作の一例を示す流れ図である。
【０１２０】
時刻取得部１２１は、現在の時刻（第１の時刻）を取得する（ステップＳ１０１）。
【０１２１】
ポリシ生成部１２２は、現在の時刻を基に有効期限を計算（生成）する。そして、ポリシ生成部１２２は、原アクセストークンと、有効期限と、識別情報とを含むポリシを生成する（ステップＳ１０２）。なお、ポリシ生成部１２２は、原アクセストークン及び識別情報を受信してもよく、生成してもよい。
【０１２２】
デジタル署名生成部１２３は、ポリシにハッシュ関数を適用してハッシュ値を計算し、ハッシュ値を基にデジタル署名を生成する（ステップＳ１０３）。
【０１２３】
アクセストークン生成部１２４は、ポリシとデジタル署名とを含む受領者指定アクセストークンを生成する（ステップＳ１０４）。
【０１２４】
送信部１２５は、受領者指定アクセストークンを送信する（ステップＳ１０５）。
【０１２５】
図５は、第１の実施形態に係る検証装置１３０の動作の一例を示す流れ図である。
【０１２６】
通信部１３５は、受領者指定アクセストークンを受信する（ステップＳ２０１）。
【０１２７】
時刻取得部１３１は、現在の時刻（第２の時刻）を取得する（ステップＳ２０２）。
【０１２８】
期限判定部１３２は、受領者指定アクセストークンの有効期限内であるか否かを判定する（ステップＳ２０３）。
【０１２９】
有効期限内ではない場合（ステップＳ２０３でＮｏ）、通信部１３５は、不正との検証結果を送信する（ステップＳ２０７）。
【０１３０】
有効期限内の場合（ステップＳ２０３でＹｅｓ）、署名判定部１３３は、受領者指定アクセストークンに含まれるデジタル署名が有効か否かを判定する（ステップＳ２０４）。
【０１３１】
デジタル署名が有効でない場合（ステップＳ２０４でＮｏ）、通信部１３５は、不正との検証結果を送信する（ステップＳ２０７）。
【０１３２】
デジタル署名が有効な場合（ステップＳ２０４でＹｅｓ）、受領者判定部１３４は、受領者指定アクセストークンに含まれる識別情報を基に受領者指定アクセストークンが不正な配信か否かを判定する（ステップＳ２０５）。
【０１３３】
受領者指定アクセストークンが不正な配信の場合（ステップＳ２０５でＹｅｓ）、通信部１３５は、不正との検証結果を送信する（ステップＳ２０７）。
【０１３４】
受領者指定アクセストークンが不正な配信ではない場合（正当な場合）（ステップＳ２０５でＮｏ）、通信部１３５は、受領者指定アクセストークンが正当であるとの検証結果を送信する（ステップＳ２０６）。
【０１３５】
［効果の説明］
次に、第１の実施形態に係る情報処理装置１２０の効果について説明する。
【０１３６】
情報処理装置１２０は、正しい受領者からの配信か否かを検証できるアクセストークンを生成するとの効果を奏することができる。
【０１３７】
その理由は次のとおりである。
【０１３８】
時刻取得部１２１（第１の時刻取得手段）は、現在の時刻（第１の時刻）を取得する。ポリシ生成部１２２は、現在の時刻を基に原アクセストークン（第１のアクセストークン）の有効期限を生成し、原アクセストークンと、有効期限と、原アクセストークンの受領者の識別情報とを含むポリシを生成する。デジタル署名生成部１２３は、ポリシを基にデジタル署名を生成する。アクセストークン生成部１２４は、ポリシとデジタル署名とを含む受領者指定アクセストークン（第２のアクセストークン）を生成する。送信部１２５は、受領者指定アクセストークンを送信する。
【０１３９】
このように、情報処理装置１２０は、受領者を識別する情報（識別情報）を含む受領者指定アクセストークンを生成して、送信する。そのため、受領者指定アクセストークンを受信した装置（例えば、検証装置１３０）は、受領者を識別する情報（識別情報）を用いて、アクセストークンの正しい受領者からの配信か否かを検証できる。
【０１４０】
すなわち、検証装置１３０は、受領者指定アクセストークンを基に、正しい受領者からの配信か否かを検証できるとの効果を奏する。
【０１４１】
この理由は、次のとおりである。
【０１４２】
通信部１３５は、受領者指定アクセストークン（第２のアクセストークン）を受信する。時刻取得部１３１（第２の時刻取得手段）は、現在の時刻（第２の時刻）を取得する。期限判定部１３２は、受領者指定アクセストークンに含まれる有効期限と現在の時刻とを基に受領者指定アクセストークンが有効か否かを判定する。署名判定部１３３は、受領者指定アクセストークンに含まれるデジタル署名を基に受領者指定アクセストークンが有効か否かを判定する。受領者判定部１３４が、受領者指定アクセストークンに含まれる識別情報を基に受領者指定アクセストークンが不正に配信されたか否かを判定する。
【０１４３】
このように、検証装置１３０は、有効期限の判定とデジタル署名の判定とに加え、受領者指定アクセストークンに含まれる識別情報を用いて受領者指定アクセストークンが不正に配信されたか否かを判定できる。
【０１４４】
情報処理装置１２０が生成した受領者指定アクセストークンを用いる場合、不正者が受領者指定アクセストークンを用いて資源のアクセス権限を取得しようとしても、検証装置１３０がその受領者指定アクセストークンの不正使用を検証できる。
【０１４５】
さらに、第１の実施形態は、必要とする情報の量を削減するとの効果を奏する。
【０１４６】
その理由は、検証装置１３０が不正な配信の判定に用いる情報が、受領者の識別情報（例えば、受領者識別子）であるためである。受領者の識別情報の数は、受領者と資源との組合せの数に比べ、小さい数となる。つまり、情報処理システム１００は、関連技術より少ない情報を用いて不正配信を検証できる。
【０１４７】
＜第２の実施形態＞
第１の実施形態は、不正に用いられたアクセストークンの正しい受領者を検証できる。しかし、第１の実施形態は、識別情報として、受領者識別子を用いている。受領者識別子は、受領者を一意に識別する情報である。つまり、受領者指定アクセストークンを取得した者は、受領者を一意に識別する情報を取得できることとなる。プライバシーの保護の観点からは、受領者の識別子は、知られない方が望ましい。そこで、第２の実施形態は、受領者の識別子を保護する。
【０１４８】
［構成の説明］
図面を参照して、第２の実施形態に係る情報処理装置２２０を含む情報処理システム２００の構成について説明する。
【０１４９】
図６は、第２の実施形態に係る情報処理装置２２０を含む情報処理システム２００の構成の一例を示すブロック図である。
【０１５０】
情報処理システム２００は、情報処理装置２２０と、検証装置２３０と、ネットワーク１４０と、委譲先装置１５０と、資源管理装置１６０とを含む。ネットワーク１４０、委譲先装置１５０、及び資源管理装置１６０は、第１の実施形態と同様のため、詳細な説明を省略する。
【０１５１】
次に、図面を参照して、情報処理装置２２０及び検証装置２３０の構成について説明する。
【０１５２】
図７は、第２の実施形態に係る情報処理装置２２０の構成の一例を示すブロック図である。
【０１５３】
情報処理装置２２０は、ポリシ生成部１２２に替えて、ポリシ生成部２２２を含む点で、第１の実施形態の情報処理装置１２０と異なる。第１の実施形態と同様の構成についての説明を適宜省略し、第２の実施形態に特有の構成を説明する。
【０１５４】
ポリシ生成部２２２は、受領者識別子にハッシュ関数を適用してハッシュ値（第２のハッシュ値）を計算する。そして、ポリシ生成部２２２は、受領者識別子に替えて、このハッシュ値を用いてポリシを生成する。ポリシ生成部２２２のその他の動作は、ポリシ生成部１２２の動作と同様である。
【０１５５】
ハッシュ値を算出するためのハッシュ関数は、一方向性関数である。ハッシュ値は、その値から元となったデータを推定することが困難な値である。つまり、情報処理装置２２０が生成した受領者指定アクセストークンに含まれる識別情報は、受領者の識別子を知ることが困難な情報である。
【０１５６】
ただし、同じ識別情報からは、同じハッシュ値が算出される。そのため、受領者指定アクセストークンを受領した装置（例えば、検証装置２３０）は、ハッシュ値を用いて、同じ識別情報を含むアクセストークンであるか否かを判定できる。
【０１５７】
なお、ハッシュ関数においては、異なる識別情報から同じハッシュ値が算出される可能性がある。ただし、ハッシュ関数を適切に選択すると、同じハッシュ値となる可能性は、実用上問題とならない程度に小さくできる。
【０１５８】
ポリシ生成部２２２は、ハッシュ関数として、デジタル署名生成部１２３が用いるハッシュ関数と同じハッシュ関数を用いてもよい。あるいは、ポリシ生成部２２２は、デジタル署名生成部１２３が用いるハッシュ関数とは異なるハッシュ関数を保持し、そのハッシュ関数を用いてハッシュ値を計算してもよい。さらに、情報処理装置２２０は、ポリシ生成部２２２（及び／又はデジタル署名生成部１２３）とは異なる構成として、ハッシュ関数を用いてハッシュ値を計算するハッシュ値計算部２２６を含んでもよい。そこで、図７は、破線を用いてハッシュ値計算部２２６を示している。
【０１５９】
このように、情報処理装置２２０は、識別情報として、受領者を一意に識別することができないハッシュ値を用いる。
【０１６０】
図８は、第２の実施形態に係る検証装置２３０の構成の一例を示すブロック図である。
【０１６１】
検証装置２３０は、受領者判定部１３４に替えて、受領者判定部２３４を含む点で、第１の実施形態の検証装置１３０と異なる。第１の実施形態と同様の構成についての説明を適宜省略し、第２の実施形態に特有の構成を説明する。
【０１６２】
受領者判定部２３４は、識別情報として、受領者識別子ではなく、受領者指定アクセストークンに含まれるハッシュ値を用いる。受領者判定部２３４のその他の動作は、第１の実施形態と同様である。
【０１６３】
このように、検証装置２３０は、識別情報として、受領者の識別子ではなく、ハッシュ値を用いる。ハッシュ値は、その値から元となったデータを推定することが困難である。つまり、検証装置２３０は、受領者の識別子を知ることが困難である。
【０１６４】
ただし、同じ識別情報からは、同じハッシュ値が算出される。そのため、検証装置２３０は、同じ識別情報を含む受領者指定アクセストークンであるか否かを判定できる。
【０１６５】
このように、第２の実施形態に係る情報処理装置２２０は、受領者の識別子を知らせずに不正な配信を判定できる受領者指定アクセストークンを生成する。
【０１６６】
［効果の説明］
第２の実施形態に係る情報処理装置２２０は、第１の実施形態の効果に加え、受領者の識別情報を保護するとの効果を奏する。
【０１６７】
その理由は、ポリシ生成部２２２が、受領者指定アクセストークンに、受領者の識別子のハッシュ値を含めるためである。
【０１６８】
＜第３の実施形態＞
第２の実施形態は、受領者識別子を保護する。しかし、同じ識別情報からは、同じハッシュ値が算出される。このため、第２の実施形態に係る検証装置２３０は、同じ識別情報を含む受領者指定アクセストークンであるか否かを判定できる。この場合、特定の装置が、アクセストークンと対応する資源とその資源にアクセスを試みる頻度とを基に、受領者を推測できる可能性がある。プライバシーの保護の観点から、受領者は、推測されない方が望ましい。
【０１６９】
そこで、第３の実施形態は、受領者の推測を防ぐことができる受領者指定アクセストークンを生成する。
【０１７０】
［構成の説明］
図面を参照して、第３の実施形態に係る情報処理装置３２０を含む情報処理システム３００の構成を説明する。
【０１７１】
なお、以下の説明では識別情報を取得する装置として、検証装置３３０を用いて説明する。ただし、第３の実施形態において、識別情報を取得する装置は、検証装置３３０に限定されない。例えば、図示しない資源管理するリソースサーバ、又は、所定のサービスを提供するアプリケーションサーバーが、受領者指定アクセストークンに含まれる識別情報を取得してもよい。
【０１７２】
図９は、第３の実施形態に係る情報処理装置３２０を含む情報処理システム３００の構成の一例を示すブロック図である。
【０１７３】
情報処理システム３００は、情報処理装置３２０と、検証装置３３０と、ネットワーク１４０と、委譲先装置１５０と、資源管理装置１６０とを含む。ネットワーク１４０、委譲先装置１５０、及び資源管理装置１６０は、第１の実施形態と同様のため、詳細な説明を省略する。
【０１７４】
次に、図面を参照して、情報処理装置３２０及び検証装置３３０の構成について説明する。
【０１７５】
図１０は、第３の実施形態に係る情報処理装置３２０の構成の一例を示すブロック図である。
【０１７６】
情報処理装置３２０は、ポリシ生成部１２２に替えて、ポリシ生成部３２２を含み、さらに、暗号化部３２７を含む点で、第１の実施形態の情報処理装置１２０と異なる。第１の実施形態と同様の構成についての説明を適宜省略し、第２の実施形態に特有の構成を説明する。
【０１７７】
暗号化部３２７は、識別情報を暗号化する。ここで、識別情報は、第１の実施形態における受領者識別子に限らず、第２の実施形態におけるハッシュ値でもよい。つまり、第３の実施形態は、第２の実施形態に適用可能である。
【０１７８】
暗号化部３２７が用いる暗号化の方法は、任意である。例えば、暗号化部３２７は、非特許文献５に記載されているＡＥＳ（Ａｄｖａｎｃｅｄ  Ｅｎｃｒｙｐｔｉｏｎ  Ｓｔａｎｄａｒｄ）のような秘密鍵暗号を用いてもよい。あるいは、暗号化部３２７は、デジタル署名生成部１２３が用いる暗号化と同じ暗号を用いてもよい。ポリシ生成部３２２及びデジタル署名生成部１２３が同じ暗号を用いる場合、情報処理装置３２０は、デジタル署名生成部１２３の外部の構成として、暗号化部３２７を含んでもよい。図１０は、この場合を含めるため、デジタル署名生成部１２３と暗号化部３２７とを点線を用いて接続している。
【０１７９】
ポリシ生成部３２２は、暗号化部３２７を用いて識別情報を暗号化する。そして、ポリシ生成部３２２は、原アクセストークンと、有効期限と、暗号化した識別情報とを含むポリシを生成する。
【０１８０】
このように、情報処理装置３２０は、復号鍵を備えていない装置では中身を知ることができないように識別情報を暗号化し、暗号化した識別情報を用いて受領者指定アクセストークンを生成する。つまり、情報処理装置３２０は、識別情報を保護する。
【０１８１】
図１１は、第３の実施形態に係る検証装置３３０の構成の一例を示すブロック図である。
【０１８２】
検証装置３３０は、受領者判定部１３４に替えて、受領者判定部３３４を含み、さらに復号化部３３７を含む点で、第１の実施形態の検証装置１３０と異なる。第１の実施形態と同様の構成についての説明を適宜省略し、第２の実施形態に特有の構成を説明する。
【０１８３】
受領者判定部３３４は、復号化部３３７を用いて、受領者指定アクセストークンに含まれる暗号化された識別情報を復号する。受領者判定部３３４のそれ以降の動作は、第１の実施形態と同様のため、詳細な説明を省略する。
【０１８４】
復号化部３３７は、暗号化部３２７が用いる暗号化に対応した復号鍵を用いて、識別情報を復号化する。
【０１８５】
なお、暗号化部３２７が用いる暗号化の方法が、デジタル署名生成部１２３が用いる暗号化と同じ暗号化の場合、受領者判定部３３４は、署名判定部１３３を用いる復号機能を用いてもよい。あるいは、この場合、情報処理装置３２０は、署名判定部１３３の外部の構成として、復号化部３３７を含んでもよい。図１１は、この場合を含めるため、署名判定部１３３と復号化部３３７とを点線を用いて接続している。
【０１８６】
なお、検証装置３３０以外の装置が、第３の実施形態に係る受領者指定アクセストークンに含まれる識別情報を取得する場合、その装置は、復号化部３３７に対応する構成を含み、識別情報を復号化すればよい。
【０１８７】
［効果の説明］
第３の実施形態に係る情報処理装置３２０は、第１の実施形態の効果に加え、受領者の識別情報を保護し、さらに、所定の装置において識別情報を取得することができるとの効果を奏する。
【０１８８】
その理由は、ポリシ生成部３２２が、暗号化部３２７を用いて、識別情報を暗号化し、暗号化した識別情報を含むポリシを生成するためである。
【０１８９】
＜第４の実施形態＞
受領者指定アクセストークンに含まれる識別情報は、受領者に関する情報の取得に用いることができる。例えば、受領者が、不正に受領者指定アクセストークンを用いる場合がある。
【０１９０】
そこで、第４の実施形態として、受領者指定アクセストークンを用いて受領者に関する情報を抽出する抽出装置４１０を含む情報処理システム４００を説明する。
【０１９１】
抽出装置４１０は、例えば、不正に受領者指定アクセストークンを送信した不正者の追跡などに用いられる。そこで、以下の説明において、抽出装置４１０は、検証装置４３０から不正と判定された受領者指定アクセストークンを受信して動作する。ただし、抽出装置４１０の動作は、検証装置４３０から受領者指定アクセストークンを受信する場合に限定されない。例えば、抽出装置４１０は、検証装置４３０から通知を受けた情報処理装置１２０から受領者指定アクセストークンを受信してもよい。
【０１９２】
［構成の説明］
図面を参照して、第４の実施形態に係る情報処理システム４００の構成について説明する。
【０１９３】
図１２は、第４の実施形態に係る情報処理システム４００の構成の一例を示すブロック図である。
【０１９４】
情報処理システム４００は、情報処理装置１２０と、検証装置４３０と、ネットワーク１４０と、委譲先装置１５０と、資源管理装置１６０と、抽出装置４１０とを含む。ネットワーク１４０、委譲先装置１５０、資源管理装置１６０、及び情報処理装置１２０は、第１の実施形態と同様のため、詳細な説明を省略する。
【０１９５】
次に、図面を参照して、各装置の構成について説明する。
【０１９６】
図１３は、第４の実施形態に係る検証装置４３０の構成の一例を示すブロック図である。
【０１９７】
検証装置４３０は、受領者判定部１３４及び通信部１３５に替えて、受領者判定部４３４及び通信部４３５を含む点で、第１の実施形態の検証装置１３０と異なる。第１の実施形態と同様の構成についての説明を適宜省略し、第４の実施形態に特有の構成を説明する。
【０１９８】
受領者判定部４３４は、受領者判定部１３４と同様に動作する。そして、受領者判定部４３４は、不正な配信と判定した受領者指定アクセストークンを、通信部４３５を介して、抽出装置４１０に送信する。
【０１９９】
通信部４３５は、通信部１３５と同様の動作に加え、受領者判定部４３４から受信した受領者指定アクセストークンを抽出装置４１０に送信する。
【０２００】
図１４は、第４の実施形態に係る抽出装置４１０の構成の一例を示すブロック図である。
【０２０１】
抽出装置４１０は、受領者抽出部４１２と、対応情報保存部４１３とを含む。
【０２０２】
対応情報保存部４１３は、識別情報と、その識別情報に対応する受領者に関する情報（例えば、住所、電話番号、名前、又は、所属）とを関連付けて保存する。
【０２０３】
受領者抽出部４１２は、対応情報保存部４１３に保存されている情報を用いて、受信した受領者指定アクセストークンに含まれる識別情報に対応する受領者に関する情報を抽出する。
【０２０４】
検証装置４３０は、受領者判定部４３４の判定結果の判定に基づく送信に加え、期限判定部１３２及び署名判定部１３３が無効と判定した受領者指定アクセストークンを、抽出装置４１０に送信してもよい。
【０２０５】
また、情報処理システム４００が情報処理装置１２０に替えて情報処理装置２２０を含む場合、対応情報保存部４１３は、ハッシュ値と、ハッシュ値に関連する情報とを保存すればよい。
【０２０６】
あるいは、情報処理システム４００が、情報処理装置１２０に替えて、情報処理装置３２０を含む場合、抽出装置４１０は、復号化部３３７と同様の構成を含めばよい。そして、受領者抽出部４１２は、その構成を用いて暗号化された識別情報を復号し、復号後の識別情報を用いて動作すればよい。
【０２０７】
［効果の説明］
第４の実施形態の情報処理システム４００は、第１の実施形態の効果に加え、受領者指定アクセストークンに含まれる識別情報に対応した受領者に関する情報を取得するとの効果を奏する。
【０２０８】
その理由は、抽出装置４１０が、受領者指定アクセストークンに含まれる識別情報を用いて、受領者に関連する情報を抽出するためである。
【０２０９】
［ハードウェア構成］
以上の説明した情報処理装置１２０、２２０、及び３２０のハードウェアについて、情報処理装置１２０を用いて説明する。
【０２１０】
以上の説明した情報処理装置１２０は、次のように構成される。例えば、情報処理装置１２０の各構成部は、ハードウェア回路で構成されてもよい。また、情報処理装置１２０において、各構成部は、ネットワークを介して接続した複数の装置を用いて、構成されてもよい。また、情報処理装置１２０において、複数の構成部は、１つのハードウェアで構成されてもよい。
【０２１１】
また、情報処理装置１２０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）と、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）とを含むコンピュータ装置として実現されてもよい。情報処理装置１２０は、上記構成に加え、さらに、入出力接続回路（ＩＯＣ：Ｉｎｐｕｔ  ａｎｄ  Ｏｕｔｐｕｔ  Ｃｉｒｃｕｉｔ）を含むコンピュータ装置として実現されてもよい。あるいは、情報処理装置１２０は、上記構成に加え、ネットワークインターフェース回路（ＮＩＣ：Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃｉｒｃｕｉｔ）を含むコンピュータ装置として実現されてもよい。
【０２１２】
図１５は、情報処理装置１２０に対応するハードウェア構成として、情報処理装置６００の構成の一例を示すブロック図である。
【０２１３】
情報処理装置６００は、ＣＰＵ６１０と、ＲＯＭ６２０と、ＲＡＭ６３０と、内部記憶装置６４０と、ＩＯＣ６５０と、ＮＩＣ６８０とを含み、コンピュータ装置を構成している。
【０２１４】
ＣＰＵ６１０は、ＲＯＭ６２０からプログラムを読み込む。そして、ＣＰＵ６１０は、読み込んだプログラムに基づいて、ＲＡＭ６３０と、内部記憶装置６４０と、ＩＯＣ６５０と、ＮＩＣ６８０とを制御する。そして、ＣＰＵ６１０を含むコンピュータは、これらの構成を制御し、図１に示されている、時刻取得部１２１と、ポリシ生成部１２２と、デジタル署名生成部１２３と、アクセストークン生成部１２４と、送信部１２５としての各機能を実現する。
【０２１５】
ＣＰＵ６１０は、各機能を実現する際に、ＲＡＭ６３０又は内部記憶装置６４０を、プログラムの一時記憶媒体として使用してもよい。
【０２１６】
また、ＣＰＵ６１０は、コンピュータで読み取り可能にプログラムを記憶した記憶媒体７００が含むプログラムを、図示しない記憶媒体読み取り装置を用いて読み込んでもよい。あるいは、ＣＰＵ６１０は、ＮＩＣ６８０を介して、図示しない外部の装置からプログラムを受け取り、ＲＡＭ６３０又は内部記憶装置６４０に保存して、保存したプログラムを基に動作してもよい。
【０２１７】
ＲＯＭ６２０は、ＣＰＵ６１０が実行するプログラム及び固定的なデータを記憶する。ＲＯＭ６２０は、例えば、Ｐ−ＲＯＭ（Ｐｒｏｇｒａｍｍａｂｌｅ−ＲＯＭ）又はフラッシュＲＯＭである。
【０２１８】
ＲＡＭ６３０は、ＣＰＵ６１０が実行するプログラム及びデータを一時的に記憶する。ＲＡＭ６３０は、例えば、Ｄ−ＲＡＭ（Ｄｙｎａｍｉｃ  ＲＡＭ）である。
【０２１９】
内部記憶装置６４０は、情報処理装置６００が長期的に保存するデータ及びプログラムを記憶する。また、内部記憶装置６４０は、ＣＰＵ６１０の一時記憶装置として動作してもよい。内部記憶装置６４０は、例えば、ハードディスク装置、光磁気ディスク装置、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）又はディスクアレイ装置である。
【０２２０】
ここで、ＲＯＭ６２０と内部記憶装置６４０は、不揮発性（ｎｏｎ−ｔｒａｎｓｉｔｏｒｙ）の記憶媒体である。一方、ＲＡＭ６３０は、揮発性（ｔｒａｎｓｉｔｏｒｙ）の記憶媒体である。そして、ＣＰＵ６１０は、ＲＯＭ６２０、内部記憶装置６４０、又は、ＲＡＭ６３０に記憶されているプログラムを基に動作可能である。つまり、ＣＰＵ６１０は、不揮発性記憶媒体又は揮発性記憶媒体を用いて動作可能である。
【０２２１】
ＩＯＣ６５０は、ＣＰＵ６１０と、入力機器６６０及び表示機器６７０とのデータを仲介する。ＩＯＣ６５０は、例えば、ＩＯインターフェースカード又はＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）カードである。さらに、ＩＯＣ６５０は、ＵＳＢのような有線に限らず、無線を用いてもよい。
【０２２２】
入力機器６６０は、情報処理装置６００の操作者からの入力指示を受け取る機器である。入力機器６６０は、例えば、キーボード、マウス、又はタッチパネルである。
【０２２３】
表示機器６７０は、情報処理装置６００の操作者に情報を表示する機器である。表示機器６７０は、例えば、液晶ディスプレイである。
【０２２４】
ＮＩＣ６８０は、ネットワークを介した図示しない外部の装置（例えば、検証装置１３０）とのデータのやり取りを中継する。ＮＩＣ６８０は、例えば、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）カードである。さらに、ＮＩＣ６８０は、有線に限らず、無線を用いてもよい。
【０２２５】
このように構成された情報処理装置６００は、情報処理装置１２０と同様の効果を得ることができる。
【０２２６】
その理由は、情報処理装置６００のＣＰＵ６１０が、プログラムに基づいて情報処理装置１２０と同様の機能を実現できるためである。
【０２２７】
なお、検証装置１３０、２３０、３３０、４３０、委譲先装置１５０、資源管理装置１６０、及び／又は、抽出装置４１０が、図１５に示されているコンピュータを用いて構成されてもよい。
【０２２８】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成及び詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【産業上の利用可能性】
【０２２９】
本発明は、Ｉｎｆｒａｓｔｒｕｃｔｕｒｅ  ａｓ  ａ  Ｓｅｒｖｉｃｅにおけるシステム外ユーザへ権限を安全に委譲するアクセストークン装置に適用できる。さらに、本発明は、コンピュータを用いてアクセストークンシステムを実現するためのプログラムに適用できる。
【符号の説明】
【０２３０】
１００    情報処理システム
１２０    情報処理装置
１２１    時刻取得部
１２２    ポリシ生成部
１２３    デジタル署名生成部
１２４    アクセストークン生成部
１２５    送信部
１３０    検証装置
１３１    時刻取得部
１３２    期限判定部
１３３    署名判定部
１３４    受領者判定部
１３５    通信部
１４０    ネットワーク
１５０    委譲先装置
１６０    資源管理装置
２００    情報処理システム
２２０    情報処理装置
２２２    ポリシ生成部
２２６    ハッシュ値計算部
２３０    検証装置
２３４    受領者判定部
３００    情報処理システム
３２０    情報処理装置
３２２    ポリシ生成部
３２７    暗号化部
３３０    検証装置
３３４    受領者判定部
３３７    復号化部
４００    情報処理システム
４１０    抽出装置
４１２    受領者抽出部
４１３    対応情報保存部
４３０    検証装置
４３４    受領者判定部
４３５    通信部
６００    情報処理装置
６１０    ＣＰＵ
６２０    ＲＯＭ
６３０    ＲＡＭ
６４０    内部記憶装置
６５０    ＩＯＣ
６６０    入力機器
６７０    表示機器
６８０    ＮＩＣ
７００    記憶媒体
９００    アクセストークンシステム
９２０    生成装置
９３０    検証装置
９４０    ネットワーク
９５０    委譲先装置
９６０    資源管理装置
【図１】
2018220693.tif 000003
【図２】
2018220693.tif 000004
【図３】
2018220693.tif 000005
【図４】
2018220693.tif 000006
【図５】
2018220693.tif 000007
【図６】
2018220693.tif 000008
【図７】
2018220693.tif 000009
【図８】
2018220693.tif 000010
【図９】
2018220693.tif 000011
【図１０】
2018220693.tif 000012
【図１１】
2018220693.tif 000013
【図１２】
2018220693.tif 000014
【図１３】
2018220693.tif 000015
【図１４】
2018220693.tif 000016
【図１５】
2018220693.tif 000017
【図１６】
2018220693.tif 000018
【図１７】
2018220693.tif 000019
【図１８】
2018220693.tif 000020
【国際調査報告】
2018220693.tif 000021
2018220693.tif 000022
2018220693.tif 000023
2018220693.tif 000024