(57)【要約】【課題】ユーザやグループの識別子は変更されることがあるため、これらユーザやグループの識別子を用いる必要のない情報のアクセス権管理技術を提供する。【解決手段】少なくとも一つの他の情報を特定する特定情報を、利用権限を表す権限情報として含む情報を取得する。また、過去に利用した情報を特定する利用履歴情報を記憶しており、取得した情報に含まれる権限情報を参照し、当該権限情報によって特定される他の情報が、利用履歴情報で特定される、過去に利用した情報に含まれる場合に取得した情報の利用を許可して処理する情報処理装置である。【選択図】図１
2009301207.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも一つの他の情報を特定する特定情報を、利用権限を表す権限情報として含む情報を取得する取得手段と、
過去に利用した情報を特定する利用履歴情報を記憶する記憶手段と、
前記取得した情報に含まれる権限情報を参照し、当該権限情報によって特定される他の情報が、前記利用履歴情報で特定される、過去に利用した情報に含まれるか否かを判断し、含まれる場合に取得した情報の利用を許可する許可手段と、
前記許可手段によって利用を許可された情報を処理する処理手段と、
を有することを特徴とする情報処理装置。
【請求項２】
前記特定情報は、情報のハッシュ値であることを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記利用履歴情報は、過去に利用した情報のハッシュ値に基づくブルームフィルタであることを特徴とする請求項１または２記載の情報処理装置。
【請求項４】
外部から受信される指示に基づいて、前記利用履歴情報が過去に利用した情報の少なくとも一部を利用した履歴のあることを表さないよう設定する設定手段をさらに含むことを特徴とする請求項１から３のいずれか一項に記載の情報処理装置。
【請求項５】
コンピュータを、
少なくとも一つの他の情報を特定する特定情報を、利用権限を表す権限情報として含む情報を取得する取得手段と、
過去に利用した情報を特定する利用履歴情報を記憶する記憶手段と、
前記取得した情報に含まれる権限情報を参照し、当該権限情報によって特定される他の情報が、前記利用履歴情報で特定される、過去に利用した情報に含まれるか否かを判断し、含まれる場合に取得した情報の利用を許可する許可手段と、
前記許可手段によって利用を許可された情報を処理する処理手段と、
として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及びプログラムに関する。
【背景技術】
【０００２】
個別ユーザーあるいは認定ユーザー・グループのメンバーに匿名でコンテンツにアクセスする権限を付与する方法として次のような方法が考えられている。
【０００３】
ペルソナ識別子を有するユーザーからアクセス要求を受信し、次いで、少なくとも一部としてペルソナ識別子および擬似ランダム・データのような検証データを含むチャレンジ・メッセージが作成される。チャレンジ・メッセージは、個別ユーザーあるいはグループのメンバーのみが抽出することができる認証オブジェクトを生成する権限付与の代行機能を果たすペルソナ・サーバーに送付される。生成された認証オブジェクトはユーザーに転送される。ペルソナ・サーバーから認証オブジェクトを受信すると、ユーザーはペルソナ・サーバーから暗号解読データを検索する。ペルソナ・ユーザーが正当なユーザーであれば、ペルソナ・サーバーから検索したデータを用いてユーザー・コンピュータの機密保護機能付きハードウェアによって認証オブジェクト・パッケージが解かれ、検証データが抽出される。ユーザーから検証データを受信して確認した後、コンテンツ・プロバイダーはユーザーが選択したコンテンツにアクセスすることを許可する（特許文献１）。
【特許文献１】特表２００４−５３６４１１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ユーザやグループの識別子は変更されることがあるため、これらユーザやグループの識別子を用いる必要のない情報のアクセス権管理技術を提供する。
【課題を解決するための手段】
【０００５】
請求項１記載の発明は、情報処理装置であって、少なくとも一つの他の情報を特定する特定情報を、利用権限を表す権限情報として含む情報を取得する取得手段と、過去に利用した情報を特定する利用履歴情報を記憶する記憶手段と、前記取得した情報に含まれる権限情報を参照し、当該権限情報によって特定される他の情報が、前記利用履歴情報で特定される、過去に利用した情報に含まれるか否かを判断し、含まれる場合に取得した情報の利用を許可する許可手段と、前記許可手段によって利用を許可された情報を処理する処理手段と、を有することとしたものである。
【０００６】
請求項２記載の発明は、請求項１記載の情報処理装置であって、前記特定情報は、情報のハッシュ値であることとしたものである。
【０００７】
請求項３記載の発明は、請求項１または２記載の情報処理装置であって、前記利用履歴情報は、過去に利用した情報のハッシュ値に基づくブルームフィルタであることとしたものである。
【０００８】
請求項４記載の発明は、請求項１から３のいずれか一項に記載の情報処理装置であって、外部から受信される指示に基づいて、前記利用履歴情報が過去に利用した情報の少なくとも一部を利用した履歴のあることを表さないよう設定する設定手段をさらに含むこととしたものである。
【０００９】
請求項５記載の発明は、プログラムであって、コンピュータを、少なくとも一つの他の情報を特定する特定情報を、利用権限を表す権限情報として含む情報を取得する取得手段と、過去に利用した情報を特定する利用履歴情報を記憶する記憶手段と、前記取得した情報に含まれる権限情報を参照し、当該権限情報によって特定される他の情報が、前記利用履歴情報で特定される、過去に利用した情報に含まれるか否かを判断し、含まれる場合に取得した情報の利用を許可する許可手段と、前記許可手段によって利用を許可された情報を処理する処理手段と、として機能させることとしたものである。
【発明の効果】
【００１０】
請求項１，５記載の発明によると、ユーザやグループの識別子を用いる必要のないアクセス権管理が可能となる。
【００１１】
請求項２記載の発明によると、ハッシュ値を用いて、ユーザやグループの識別子を用いる必要のないアクセス権管理が可能となる。
【００１２】
請求項３記載の発明によると、ブルーム・フィルタが用いられ、判断の高速化が図られる。
【００１３】
請求項４記載の発明によると、アクセス権の削除制御が可能となる。
【発明を実施するための最良の形態】
【００１４】
本発明の実施の形態について図面を参照しながら説明する。本発明の実施の形態に係る情報処理装置１は、制御部１１、記憶部１２、操作部１３、表示部１４、及び通信部１５を含んで構成される。
【００１５】
ここで制御部１１は、ＣＰＵ（Central Processing Unit）等のプログラム制御デバイスであり、記憶部１２に格納されたプログラムに従って動作する。本実施の形態では、この制御部１１は、利用者の指示によってアクセスの対象となる情報（ドキュメントのデータ等）を取得する。そして、この情報に対するアクセスの可否（利用権限の有無）を、利用者が過去にアクセスした情報の履歴に基づいて判断し、アクセス可能と判断したときに、取得した情報の利用（閲覧、編集等）の処理を実行する。この制御部１１の詳しい処理の内容は、後に述べる。
【００１６】
記憶部１２は、ＲＡＭ（Random Access Memory）等の記憶素子等を含んで構成される。この記憶部１２には、制御部１１によって実行されるプログラムが保持される。このプログラムは、ＤＶＤ−ＲＯＭ（Digital Versatile Disc-Read Only Memory）等のコンピュータ可読な記録媒体に格納されて提供され、ここに複写されたものであってもよい。また、この記憶部１２は、制御部１１のワークメモリとしても動作する。さらに本実施の形態では、この記憶部１２に、利用者が過去にアクセスした情報を表す履歴の情報（アクセス履歴情報：利用履歴情報に対応する）が保持される。この情報は、例えば、図２に示すように、利用者が過去にアクセスした情報の内容に基づいて演算されるハッシュ値のリストであってもよい。
【００１７】
操作部１３は、キーボードやマウスなどを含み、利用者の操作を受け付けて、当該操作の内容を制御部１１に出力する。表示部１４は、ディスプレイ等であり、制御部１１から入力される指示に従って情報を表示する。通信部１５は、例えばネットワークインタフェースであり、ネットワーク等の通信手段を介して接続されたファイルサーバや、他の情報処理装置との間で情報を授受する。
【００１８】
次に、本実施の形態の情報処理装置１による処理の内容について述べる。本実施の形態の制御部１１は、アクセス権を設定する処理（アクセス権設定処理）と、アクセス権の有無を判別する処理（権限判断処理）とを実行する。
【００１９】
［アクセス権設定処理］
制御部１１は、アクセス権の設定処理の対象となる情報（以下、区別のため対象情報と呼ぶ）の入力を受け、また、当該対象情報にアクセス権を設定する旨の指示を受ける。制御部１１は、利用者に対してアクセス権の元となる他の情報（対象情報とは異なる情報）を指定するように求める。ここで利用者が、他の情報を指定すると、制御部１１は、予め定められているハッシュ関数を用いて当該指定された他の情報のハッシュ値を演算する。そして、この演算したハッシュ値を対象情報に記録する。なお、制御部１１は、他の情報として複数の情報が指定された場合、指定された複数の情報のそれぞれについてハッシュ値を演算し、当該演算によって得られたハッシュ値の集合を対象情報に記録する。
【００２０】
これにより対象情報には、図３に例示するように、その内容（Ｃ）とともに、演算されたハッシュ値（またはその集合）のリスト（Ｌ）が記録される。
【００２１】
［アクセス処理］
また制御部１１は、後に述べる権限判断処理によりアクセス権限を判断した結果、アクセス権限があると判断して情報へのアクセスを行うごとに、予め定められているハッシュ関数を用いて（アクセス権設定処理におけるのと同じハッシュ関数を用いて）、アクセスした情報（ここでは例えば内容Ｃのみを用いることとしてもよい）についてのハッシュ値を演算する。そしてこの演算したハッシュ値を、アクセス履歴情報として記憶部１２に追記する。これにより、記憶部１２には、図２に例示したようなアクセス履歴情報が記録されることとなる。
【００２２】
［権限判断処理］
制御部１１による権限判断処理について述べる。制御部１１は、アクセスの対象となる情報を、利用者の指示に従って取得する。例えば制御部１１は、通信部１５を介し、ネットワーク等を介して接続されたファイルサーバからアクセスの対象となる情報を取得する。そして制御部１１は、取得した情報へのアクセス権の有無を調べる処理を開始する（図４）。制御部１１は、まず、取得した情報にアクセス権が設定されているか否かを調べる（Ｓ１）。ここでアクセス権が設定されているか否かは、取得した情報にハッシュ値のリストが記録されているか否かによって調べることができる。すなわち、取得した情報にハッシュ値のリストが記録されていなければ、制御部１１は、当該情報にはアクセス権が設定されていないと判断し、上述のアクセス処理を実行して、取得した情報のハッシュ値を算出して、当該算出したハッシュ値をアクセス履歴情報に記録する（Ｓ４）。
【００２３】
そして制御部１１は、情報へのアクセスを許可し、利用者の指示に従って情報を表示し、または編集する等の処理を実行する（Ｓ５）。
【００２４】
一方、処理Ｓ１において、取得した情報にアクセス権が設定されていれば、当該情報に権限情報として記録されたハッシュ値のリストを読み出す（Ｓ２）。
【００２５】
そして制御部１１は、読み出したハッシュ値のリストに含まれるハッシュ値が、記憶部１２に格納されているアクセス履歴情報に含まれているか否かを判断する（Ｓ３）。例えば、取得した情報から取り出したリストに含まれるハッシュ値ｈ１，ｈ２，…に一致するハッシュ値のすべてが、アクセス履歴情報に含まれるか否かを調べる。取得した情報から取り出したリストに含まれるハッシュ値ｈ１，ｈ２，…に一致するハッシュ値のすべてが、アクセス履歴情報に含まれている場合は、権限があったものとして、処理Ｓ４に移行して処理を続ける。
【００２６】
また、処理Ｓ３において、取得した情報から取り出したリストに含まれるハッシュ値ｈ１，ｈ２，…に一致するハッシュ値のすべてが、アクセス履歴情報に含まれているのでない場合は、権限がないものとして、取得した情報へのアクセスができない旨を利用者に提示し（Ｓ６）、処理を終了する。
【００２７】
なお、ここでは処理Ｓ３において、取得した情報から取り出したリストに含まれるハッシュ値ｈ１，ｈ２，…に一致するハッシュ値のすべてが、アクセス履歴情報に含まれるか否かを調べる例について述べたが、これに限らず、取得した情報から取り出したリストに含まれるハッシュ値ｈ１，ｈ２，…に一致するハッシュ値のいずれか一つがアクセス履歴情報に含まれるか否かを調べることとしてもよい。
【００２８】
［無効化処理］
さらに制御部１１は、外部から受信した指示に従って、アクセス履歴情報が、過去に利用した情報の少なくとも一部を利用した履歴のあることを表さないよう設定してもよい。一例として制御部１１は、アクセス履歴情報に含まれるハッシュ値の少なくとも一部を削除する。この指示は、例えば、削除の対象となる少なくとも一つのハッシュ値の情報を含む。制御部１１は、受信した指示に含まれるハッシュ値が、記憶部１２のアクセス履歴情報に格納されているか否かを調べ、アクセス履歴情報に格納されていれば、当該ハッシュ値を記憶部１２のアクセス履歴情報から削除する。
【００２９】
この指示は例えば管理者が、情報処理装置１を操作して生成してもよい。この指示を生成する際には、制御部１１は、削除の対象となるハッシュ値の元となる情報を指定するよう管理者に求める。管理者が情報を指定すると、制御部１１は、当該指定された情報のハッシュ値を算出し、当該算出したハッシュ値を削除の指示に含める。制御部１１は、また、管理者から入力される指示に従って、管理者の指定した宛先（情報処理装置１）に対して、当該削除の指示を送信する。
【００３０】
［動作］
本実施の形態の情報処理装置１は、以上のように構成され、次に示すように動作する。本実施の形態の情報処理装置１は、過去にアクセスした情報のハッシュ値のリストを、アクセス履歴情報として記憶している。以下の例では、このアクセス履歴情報に記録されているハッシュ値のリストがｈ１，ｈ２，ｈ３となっているものとする。
【００３１】
利用者がアクセスの対象となる情報Ａを指定すると、情報処理装置１が当該情報Ａを取得して、当該情報Ａにアクセス権を表すハッシュ値のリストが含まれているか否かを調べる。ここでハッシュ値のリストが含まれていれば、情報処理装置１は、アクセス権が設定されているものとして当該ハッシュ値のリストを参照する。ここで、当該リストにハッシュ値ｈ１が設定されているとすると、情報処理装置１は、この設定されているハッシュ値ｈ１が、アクセス履歴情報に含まれているので、情報Ａへのアクセスを許可し、利用者の指示に従って情報Ａを表示し、または情報Ａを編集するなどの処理を行う。
【００３２】
また、このアクセスを行わせる際、情報処理装置１は、情報Ａのハッシュ値ｈａを演算して、アクセス履歴情報に含めて記録する。これによりアクセス履歴情報に含まれたハッシュ値のリストは、ｈ１，ｈ２，ｈ３，ｈａとなる。
【００３３】
また、アクセス権を表すハッシュ値のリストに、ハッシュ値ｈ４を含む情報Ｂをアクセスの対象として利用者が指定すると、情報処理装置１は、当該情報Ｂを取得して、当該情報Ｂにアクセス権を表すハッシュ値のリストが含まれているか否かを調べる。ここでハッシュ値のリストが含まれているので、情報処理装置１は、アクセス権が設定されているものとして当該ハッシュ値のリストを参照する。そして情報処理装置１は、このリストに含まれるハッシュ値ｈ４が、記憶しているアクセス履歴情報に含まれていないので、情報Ｂへのアクセスを許可せず、その旨を表示する処理等を行って、処理を終了する。
【００３４】
［日時を利用する例］
さらに、本実施の形態において、アクセス履歴情報は、過去にアクセスした情報のハッシュ値等特定情報だけでなく、図５に例示するように、アクセスした日時（アクセス日時）を関連づけて記録してもよい。また、アクセス権を表す権限情報として、ハッシュ値等、特定情報のリストだけでなく、アクセス日からの経過時間を表す情報を含めてもよい。
【００３５】
例えば、権限情報としてアクセス日からの経過時間Ｔの情報を関連づけている場合、制御部１１は、権限判断処理において、アクセスの対象となった情報から取り出したハッシュ値のリストを参照し、当該リストに含まれるハッシュ値と、それに関連づけられたアクセス日時の情報とを検索により見いだす。
【００３６】
そしてここでハッシュ値が見いだされると、制御部１１は、それに関連づけられたアクセス日時の情報を参照し、それが現在（処理の日時）から権限情報において指定された経過時間Ｔを越えていないか否かを調べる。ここで、指定された経過時間を越えていなければ、制御部１１は、アクセス権があるものとして処理を行い、越えていればアクセス権がないものとして処理を行う。なお、見いだされたハッシュ値及びアクセス日時の情報が複数ある場合、そのいずれかが指定された経過時間を越えていなければ、アクセス権があるものとして処理を行ってもよいし、すべてが指定された経過時間を越えていない限り（いずれか一つでも経過時間を越えていれば）、アクセス権がないものとして処理を行ってもよい。
【００３７】
また、ハッシュ値についても、権限情報に含まれるすべてのハッシュ値が検索により見いだされない限りアクセス権がないものとしてもよいし、いずれかが検索により見いだされればアクセス権があるものとしてもよい。
【００３８】
［ブルームフィルタを用いる例］
また、ここまでの説明では、アクセス履歴情報として、利用者が過去にアクセスした情報のハッシュ値のリストをそのまま蓄積する例を説明したが、本実施の形態はこれに限られない。例えば、アクセス履歴情報は、過去にアクセスした情報のハッシュ値に基づくブルームフィルタ（Bloom Filter）であってもよい。
【００３９】
ブルームフィルタは、当初すべて「０」に初期化した長さＭビットのビット配列と、ｋ個の互いに異なるハッシュ関数ｆ１，ｆ２…ｆｋとを用いる。制御部１１は、アクセス処理の際、アクセスした情報について、予め定められたハッシュ関数によりハッシュ値（上述の例でアクセス履歴情報に追記していたハッシュ値）を求め、さらにここで求めたハッシュ値に対して上記ｋ個のハッシュ関数ｆ１，ｆ２…ｆｋを用いて、一般に互いに異なるハッシュ値ｈｆ１，ｈｆ２…ｈｆｋを得る。そして、これらのハッシュ値をＭで除した剰余を求め、求めたそれぞれの剰余に対応するビット配列上の各ビットを「１」とする。
【００４０】
また制御部１１は、権限判断処理において、アクセスの対象となった情報に含まれるハッシュ値のリストを取得し、このリストに含まれるハッシュ値を、上記互いに異なるｋ個のハッシュ関数ｆ１，ｆ２…ｆｋを用いて、一般に互いに異なるハッシュ値ｈｆ１，ｈｆ２…ｈｆｋを得る。そして、これらのハッシュ値をＭで除した剰余を求める。
【００４１】
制御部１１は、求めた剰余のそれぞれに対応するビット配列上の各ビット値を参照し、それらがすべて「１」となっているか否かを調べる。そしてこれらがすべて「１」となっていれば、アクセス権があるものとして処理を行う、いずれか一つでも「１」となっていなければ、アクセス権がないものとして処理を行う。
【００４２】
このブルームフィルタでは、擬陽性の判定の可能性（過去にアクセスしていないにも関わらずアクセスしたと判断される可能性）もあるが、十分無視できる場合は、有効に利用できる。さらに本実施の形態では、単純なブルームフィルタに変えて、カウンティングフィルタ（L. Fan, P. Cao, J. Almeida, and A. Broder. Summary cache: A scalable wide-area Web cache sharing protocol. In Proceeding of SIGCOMM ’98, 1998 ）を用いてもよい。このカウンティングフィルタを用いる場合、無効化処理として、特定のハッシュ値を指定して、上記ｋ個のハッシュ関数に対応するハッシュ値を求め、さらに各ハッシュ値をＭで除した剰余を求めて、求めた剰余のそれぞれに対応する配列上の位置にあるカウンタを「１」だけデクリメントする。
【００４３】
［アクセス権情報の別の例］
さらに本実施の形態では、アクセス権を表す権限情報が、アクセスの対象となる情報に含まれる例を示したが、これに限られるものではない。例えば、外部のサーバや、情報処理装置１の記憶部１２等に、各情報を特定するファイル名などの情報に関連づけて、権限情報となるハッシュ値等のリストを記憶させておき、制御部１１は、権限判定処理を実行する際に、この記憶されているリストを参照して、権限情報を取得してもよい。
【００４４】
［情報の例］
ここまでの説明において、情報は、例えばドキュメントの情報であるものとしたが、これに限らず、例えばウェブページなどであってもよい。この場合、ウェブページの内容に、アクセス権限を表す権限情報を含めておき、この権限情報によって示される他の情報（例えば他のウェブページ）にアクセスした履歴がない場合は、当該ウェブページを表示させない。
【００４５】
また、情報は、電子メールであってもよいし、これら電子メール、ウェブページ、ドキュメントなど複数の種類の情報を含むものであってもよい。例えば特定の電子メールのハッシュ値ｈｍを権限情報に含むウェブページを作成すれば、当該特定の電子メールを参照しなければ、閲覧できないウェブページとすることができる。
【００４６】
以上の通り、本実施の形態によると、利用者は、ユーザやグループ識別子の変更があっても、アクセス履歴情報を維持することで、アクセス権の再設定を行う必要がなく、ユーザやグループの識別子を用いる必要のない情報のアクセス権管理技術が提供される。
【００４７】
また、このアクセス権管理技術では暗号学的な処理を必ずしも必要としない。さらに、ブルームフィルタなどを用いれば、利用者がアクセスした情報の履歴を記録しているにもかかわらず、当該情報の漏洩によって、利用者がどの情報にアクセスしたことがあるかがわかり難くなる。
【図面の簡単な説明】
【００４８】
【図１】本発明の実施の形態に係る情報処理装置の構成、及び接続例を表すブロック図である。
【図２】本発明の実施の形態に係る情報処理装置が保持するアクセス履歴情報の例を表す説明図である。
【図３】本発明の実施の形態に係る情報処理装置が処理の対象とする情報の内容例を表す説明図である。
【図４】本発明の実施の形態に係る情報処理装置が行う処理の例を表すフローチャート図である。
【図５】本発明の実施の形態に係る情報処理装置が保持するアクセス履歴情報の別の例を表す説明図である。
【符号の説明】
【００４９】
１  情報処理装置、１１  制御部、１２  記憶部、１３  操作部、１４  表示部、１５  通信部。
【図１】
2009301207.tif 000003
【図２】
2009301207.tif 000004
【図３】
2009301207.tif 000005
【図４】
2009301207.tif 000006
【図５】
2009301207.tif 000007