(57)【要約】      （修正有）【課題】アクセス対象のうちの任意の領域が、アクセス領域として複数のユーザによって共有されるシステムにおける安全性をより高くする。【解決手段】フォルダなどのアクセス領域を複数有し、前記アクセス領域それぞれに、公開鍵認証方式に対応した互いに異なる公開鍵を設定する公開鍵設定部１３１と、前記公開鍵と対になる互いに異なる秘密鍵に対して、前記アクセス領域へのアクセスを認証する装置認証処理部１３２とを備える、情報処理装置。【選択図】図４
2014081787.tif 000002
【特許請求の範囲】
【請求項１】
公開鍵認証方式に対応した公開鍵を、アクセス対象のうちの任意の領域であるアクセス領域に設定する公開鍵設定部と、
前記公開鍵と対になる秘密鍵に対して、前記アクセス領域へのアクセスを認証する装置認証処理部と、
を備える、情報処理装置。
【請求項２】
前記公開鍵設定部は、複数の前記アクセス領域のそれぞれに対して、互いに異なる複数の前記公開鍵を設定し、
前記装置認証処理部は、互いに異なる複数の前記公開鍵とそれぞれ対になる、互いに異なる複数の秘密鍵に対して、前記アクセス領域へのアクセスを認証する、
請求項１に記載の情報処理装置。
【請求項３】
前記アクセス領域は、記憶媒体におけるデータ領域の少なくとも一部領域である、
請求項１に記載の情報処理装置。
【請求項４】
前記アクセス領域は、前記データ領域の一部領域に作成されたフォルダであり、
前記公開鍵設定部は、前記公開鍵と前記フォルダとを関連付けることにより、前記公開鍵を前記フォルダに設定する、
請求項３に記載の情報処理装置。
【請求項５】
前記公開鍵設定部は、前記公開鍵に対応する文字列を前記フォルダのフォルダ名に含めることにより、前記公開鍵を前記フォルダに設定する、
請求項４に記載の情報処理装置。
【請求項６】
前記公開鍵設定部は、前記公開鍵に関する情報を、前記フォルダ内の設定ファイルに含めることにより、前記公開鍵を前記フォルダに設定する、
請求項４に記載の情報処理装置。
【請求項７】
前記公開鍵設定部は、前記公開鍵に関する情報を、前記フォルダの属性情報に含めることにより、前記公開鍵を前記フォルダに設定する、
請求項４に記載の情報処理装置。
【請求項８】
前記公開鍵設定部は、前記フォルダに対するアクセス権限に含まれる各権限に対して前記公開鍵を個別に設定する、
請求項４に記載の情報処理装置。
【請求項９】
前記アクセス権限は、前記フォルダに対する書き込み権限及び前記フォルダに対する読み込み権限の少なくともいずれかを含む、
請求項８に記載の情報処理装置。
【請求項１０】
前記公開鍵認証方式は、前記公開鍵が多次多変数連立方程式に対応し、前記秘密鍵が前記多次多変数連立方程式の解に対応する、ＭＱ認証方式である、
請求項１に記載の情報処理装置。
【請求項１１】
前記アクセス対象は、物理的に施錠可能な筐体であり、
前記装置認証処理部は、前記アクセス領域へのアクセスを認証することで、前記筐体の開錠を認証する、
請求項１に記載の情報処理装置。
【請求項１２】
公開鍵認証方式に対応した秘密鍵と対になる公開鍵が設定された、外部装置におけるアクセス対象のうちの任意の領域であるアクセス領域へのアクセスの認証を受ける端末認証処理部、
を備える、情報処理端末。
【請求項１３】
前記アクセス領域は、前記外部装置における記憶媒体のデータ領域の少なくとも一部領域に設けられたフォルダであり、
前記フォルダのうち、前記端末認証処理部による認証処理に対応した前記秘密鍵と対になる前記公開鍵が設定された前記フォルダのみを表示画面に表示させる表示制御部、
を更に備える、請求項１２に記載の情報処理端末。
【請求項１４】
公開鍵認証方式に対応した公開鍵を、アクセス対象のうちの任意の領域であるアクセス領域に設定するステップと、
前記公開鍵と対になる秘密鍵に対して、前記アクセス領域へのアクセスを認証するステップと、
を含む、アクセス認証方法。
【請求項１５】
コンピュータに、
公開鍵認証方式に対応した公開鍵を、アクセス対象のうちの任意の領域であるアクセス領域に設定する機能と、
前記公開鍵と対になる秘密鍵に対して、前記アクセス領域へのアクセスを認証する機能と、
を実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、情報処理装置、情報処理端末、アクセス認証方法及びプログラムに関する。
【背景技術】
【０００２】
一般的に、あるアクセス対象のうちの任意の領域が、アクセス領域として複数のユーザによって共有されるシステム（以下、共有システムと呼ぶ。）においては、共有される当該アクセス領域の管理に対して様々なセキュリティ対策が施されている。
【０００３】
例えば、特許文献１には、共有ファイルサーバに保存されたファイルを複数のユーザによって共有するシステムにおいて、秘密鍵暗号方式の秘密鍵を用いてファイルを暗号化し、公開鍵を用いて当該秘密鍵を更に暗号化することによって、ファイル管理のセキュリティレベルを向上させることができるファイル管理システムが開示されている。
【０００４】
また、例えば、特許文献２には、同じく共有ファイルサーバに保存されたファイルを複数のユーザによって共有するシステムにおいて、名前や生年月日等のユーザの属性情報を用いてユーザの属性認証を行うことにより、暗号化されたファイルが復号化される、ファイル共有システムが開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００５−２０９１８１号公報
【特許文献２】特開２０１０−２４４４３２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
共有システムにおいては、有形無形を問わず、多様な種類のアクセス対象及びアクセス領域が存在し得る。従って、アクセス対象及びアクセス領域の重要性に応じて、その管理手法により高い安全性が求められる。
【０００７】
従って、上記特許文献１及び特許文献２に記載の技術においても、そのセキュリティ対策には、未だ向上の余地がある。例えば、特許文献１に記載の技術では、ファイルを暗号化する技術については開示されているが、当該ファイルにアクセスしようとするユーザの属性を認証することについては言及されていない。また、例えば、特許文献２に記載の技術では、ユーザの属性認証自体の安全性については既存の方法の利用を促すにとどまっている。
【０００８】
上記事情に鑑みれば、共有システムにおいては、アクセス領域の管理について、より高い安全性が実現されることが望ましい。そこで、本開示では、共有システムにおける安全性をより高くすることが可能な、新規かつ改良された情報処理装置、情報処理端末、アクセス認証方法及びプログラムを提案する。
【課題を解決するための手段】
【０００９】
本開示によれば、公開鍵認証方式に対応した公開鍵を、アクセス対象のうちの任意の領域であるアクセス領域に設定する公開鍵設定部と、前記公開鍵と対になる秘密鍵に対して、前記アクセス領域へのアクセスを認証する装置認証処理部と、を備える、情報処理装置が提供される。
【００１０】
また、本開示によれば、公開鍵認証方式に対応した秘密鍵と対になる公開鍵が設定された、外部装置におけるアクセス対象のうちの任意の領域であるアクセス領域へのアクセスの認証を受ける端末認証処理部、を備える、情報処理端末が提供される。
【００１１】
また、本開示によれば、公開鍵認証方式に対応した公開鍵を、アクセス対象のうちの任意の領域であるアクセス領域に設定するステップと、前記公開鍵と対になる秘密鍵に対して、前記アクセス領域へのアクセスを認証するステップと、を含む、アクセス認証方法が提供される。
【００１２】
また、本開示によれば、コンピュータに、公開鍵認証方式に対応した公開鍵を、アクセス対象のうちの任意の領域であるアクセス領域に設定する機能と、前記公開鍵と対になる秘密鍵に対して、前記アクセス領域へのアクセスを認証する機能と、を実現させるためのプログラムが提供される。
【００１３】
上記のように、本開示によれば、公開鍵設定部によって、公開鍵認証方式に対応した公開鍵が、アクセス対象のうちの任意の領域であるアクセス領域に設定される。また、装置認証処理部によって、前記公開鍵と対になる秘密鍵に対して、前記アクセス領域へのアクセスが認証される。
【００１４】
また、上記のように、本開示によれば、端末認証処理部が、公開鍵認証方式に対応した秘密鍵と対になる公開鍵が設定された、外部装置におけるアクセス対象のうちの任意の領域であるアクセス領域へのアクセスの認証を受ける。
【発明の効果】
【００１５】
以上説明したように本開示によれば、共有システムにおける安全性をより高くすることが可能となる。
【図面の簡単な説明】
【００１６】
【図１】公開鍵認証方式のアルゴリズムの概要を説明するための説明図である。
【図２】ｎパスの公開鍵認証方式のアルゴリズムの概要を説明するための説明図である。
【図３Ａ】本開示の一実施形態に係るアクセス認証処理の一例を示す概略図である。
【図３Ｂ】本開示の一実施形態に係るアクセス認証処理の一例を示す概略図である。
【図３Ｃ】本開示の一実施形態に係るアクセス認証処理の一例を示す概略図である。
【図３Ｄ】本開示の一実施形態に係るアクセス認証処理の一例を示す概略図である。
【図４】本開示の一実施形態に係る情報処理装置の概略構成を示す機能ブロック図である。
【図５Ａ】フォルダに対する公開鍵の設定方法を説明するための説明図である。
【図５Ｂ】フォルダに対する公開鍵の設定方法を説明するための説明図である。
【図５Ｃ】フォルダに対する公開鍵の設定方法を説明するための説明図である。
【図６】本開示の一実施形態に係る情報処理端末の概略構成を示す機能ブロック図である。
【図７】本開示の一実施形態に係るアクセス認証処理方法における処理シーケンスの一例を示すシーケンス図である。
【図８Ａ】本実施形態の変形例について説明するための説明図である。
【図８Ｂ】本実施形態の変形例について説明するための説明図である。
【図８Ｃ】本実施形態の変形例について説明するための説明図である。
【図８Ｄ】本実施形態の変形例について説明するための説明図である。
【図８Ｅ】本実施形態の変形例について説明するための説明図である。
【図９】本開示の一実施形態に係る情報処理装置及び情報処理端末のハードウェア構成を説明するためのブロック図である。
【図１０】３パス方式に係る具体的なアルゴリズムの構成について説明するための説明図である。
【図１１】３パス方式に係る具体的なアルゴリズムの並列化について説明するための説明図である。
【発明を実施するための形態】
【００１７】
以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【００１８】
なお、説明は以下の順序で行うものとする。
１．公開鍵認証方式の概要
１−１．公開鍵認証方式のアルゴリズム
１−２．ｎパスの公開鍵認証方式
２．アクセス認証処理の概要
３．装置の機能及び構成
３−１．サーバ
３−２．ユーザ端末
４．アクセス認証処理の処理シーケンス
５．変形例
６．ハードウェア構成
７．ＭＱ認証方式について
７−１．具体的なアルゴリズムの構成例
７−２．並列化アルゴリズムの構成例
８．まとめ
【００１９】
＜１．公開鍵認証方式の概要＞
本開示の一実施形態においては、共有システムにおけるアクセス対象のうちの任意の領域であるアクセス領域へのアクセスに対して、公開鍵認証方式を用いた認証が行われる。このような本開示の一実施形態に係る認証処理のことを、以下の説明においては、アクセス認証処理と呼ぶこととする。本項では、本開示の一実施形態に係るアクセス認証処理について説明するに先立ち、まず、公開鍵認証方式の概要について説明する。
【００２０】
［１−１．公開鍵認証方式のアルゴリズム］
まず、図１を参照しながら、公開鍵認証方式のアルゴリズムについて概要を説明する。図１は、公開鍵認証方式のアルゴリズムについて概要を説明するための説明図である。
【００２１】
公開鍵認証は、ある人（証明者）が、公開鍵ＰＫ及び秘密鍵ＳＫを利用して、他の人（検証者）に本人であることを納得させるために利用される。例えば、証明者Ａの公開鍵ＰＫＡは、検証者Ｂに公開される。一方、証明者Ａの秘密鍵ＳＫＡは、証明者Ａにより秘密に管理される。公開鍵認証の仕組みにおいては、公開鍵ＰＫＡに対応する秘密鍵ＳＫＡを知る者が証明者Ａ本人であるとみなされる。なお、以下の説明においては、上記のように、公開鍵ＰＫ及び秘密鍵ＳＫについて、その末尾にアルファベットを付すことにより、公開鍵ＰＫ及び秘密鍵ＳＫの所有関係を示すものとする。例えばユーザＡが所有する公開鍵ＰＫは、公開鍵ＰＫＡ、ユーザＡが所有する秘密鍵ＳＫは、秘密鍵ＳＫＡと記載する。
【００２２】
公開鍵認証の仕組みを利用して証明者Ａが証明者Ａ本人であることを検証者Ｂに証明するには、対話プロトコルを介して、証明者Ａが公開鍵ＰＫＡに対応する秘密鍵ＳＫＡを知っているという証拠を検証者Ｂに提示すればよい。そして、証明者Ａが秘密鍵ＳＫＡを知っているという証拠が検証者Ｂに提示され、その証拠を検証者Ｂが確認し終えた場合、証明者Ａの正当性（本人であること）が証明されたことになる。
【００２３】
ただし、公開鍵認証の仕組みには、安全性を担保するために以下の条件が求められる。
【００２４】
１つ目の条件は、「対話プロトコルを実行した際に秘密鍵ＳＫを持たない偽証者により偽証が成立してしまう確率を限りなく小さくする」ことである。この１つ目の条件が成り立つことを「健全性」と呼ぶ。つまり、健全性とは、「秘密鍵ＳＫを持たない偽証者により、対話プロトコルの実行中に無視できない確率で偽証が成立することはないこと」と言い換えられる。２つ目の条件は、「対話プロトコルを実行したとしても、証明者Ａが有する秘密鍵ＳＫＡの情報が検証者Ｂに一切漏れることがない」ことである。この２つ目の条件が成り立つことを「零知識性」と呼ぶ。
【００２５】
安全に公開鍵認証を行うには、健全性及び零知識性を有する対話プロトコルを利用する必要がある。仮に、健全性及び零知識性を有しない対話プロトコルを用いて認証処理を行った場合には、偽証された可能性及び秘密鍵の情報が漏れてしまった可能性が否定できないため、処理自体が成功裡に完了しても証明者の正当性を証明したことにはならない。従って、対話プロトコルの健全性及び零知識性を如何に保証するかが重要になる。
【００２６】
（モデル）
公開鍵認証方式のモデルには、図１に示すように、証明者と検証者という２つのエンティティが存在する。証明者は、鍵生成アルゴリズムＧｅｎを用いて、証明者固有の秘密鍵ＳＫと公開鍵ＰＫの組を生成する。次いで、証明者は、鍵生成アルゴリズムＧｅｎを用いて生成した秘密鍵ＳＫと公開鍵ＰＫの組を利用して検証者と対話プロトコルを実行する。このとき、証明者は、証明者アルゴリズムＰを利用して対話プロトコルを実行する。上記の通り、証明者は、証明者アルゴリズムＰを利用し、対話プロトコルの中で秘密鍵ＳＫを保有している証拠を検証者に提示する。
【００２７】
一方、検証者は、検証者アルゴリズムＶを利用して対話プロトコルを実行し、証明者が公開している公開鍵に対応する秘密鍵を、その証明者が保有しているか否かを検証する。つまり、検証者は、証明者が公開鍵に対応する秘密鍵を保有しているか否かを検証するエンティティである。このように、公開鍵認証方式のモデルは、証明者と検証者という２つのエンティティ、及び、鍵生成アルゴリズムＧｅｎ、証明者アルゴリズムＰ、検証者アルゴリズムＶという３つのアルゴリズムにより構成される。
【００２８】
なお、以上の説明及び以下の説明において、「証明者」、「検証者」、「ユーザＡ」、「ユーザＢ」等の表現を用いているが、これらの表現はエンティティを意味するものであってよい。従って、鍵生成アルゴリズムＧｅｎ、証明者アルゴリズムＰを実行する主体は、「証明者」のエンティティに対応する情報処理装置（情報処理端末）であってよい。同様に、検証者アルゴリズムＶを実行する主体は、情報処理装置（情報処理端末）であってよい。更に、後述する本実施形態に係るアクセス認証処理に関する各種の処理を行う主体は、情報処理装置（情報処理端末）であってよい。これら情報処理装置（情報処理端末）のハードウェア構成は、例えば、図９に示した通りである。つまり、鍵生成アルゴリズムＧｅｎ、証明者アルゴリズムＰ、検証者アルゴリズムＶは、ＲＯＭ９０３、ＲＡＭ９０５、ストレージ装置９１９、リムーバブル記録媒体９２９などに記録されたプログラムに基づいてＣＰＵ９０１などにより実行される。
【００２９】
（鍵生成アルゴリズムＧｅｎ）
鍵生成アルゴリズムＧｅｎは、証明者により利用される。鍵生成アルゴリズムＧｅｎは、証明者に固有の秘密鍵ＳＫと公開鍵ＰＫとの組を生成するアルゴリズムである。鍵生成アルゴリズムＧｅｎにより生成された公開鍵ＰＫは公開される。そして、公開された公開鍵ＰＫは、検証者により利用される。一方、鍵生成アルゴリズムＧｅｎにより生成された秘密鍵ＳＫは、証明者が秘密に管理する。そして、証明者により秘密に管理される秘密鍵ＳＫは、公開鍵ＰＫに対応する秘密鍵ＳＫを証明者が保有していることを検証者に対して証明するために利用される。形式的に、鍵生成アルゴリズムＧｅｎは、セキュリティパラメータ１λ（λは０以上の整数）を入力とし、秘密鍵ＳＫと公開鍵ＰＫを出力するアルゴリズムとして、下記の式（１）のように表現される。
【００３０】
【数１】
2014081787.tif 000003
【００３１】
（証明者アルゴリズムＰ）
証明者アルゴリズムＰは、証明者により利用される。証明者アルゴリズムＰは、公開鍵ｐｋに対応する秘密鍵ＳＫを証明者が保有していることを検証者に対して証明するためのアルゴリズムである。つまり、証明者アルゴリズムＰは、秘密鍵ＳＫと公開鍵ＰＫとを入力とし、対話プロトコルを実行するアルゴリズムである。
【００３２】
（検証者アルゴリズムＶ）
検証者アルゴリズムＶは、検証者により利用される。検証者アルゴリズムＶは、対話プロトコルの中で、公開鍵ＰＫに対応する秘密鍵ＳＫを証明者が保有しているか否かを検証するアルゴリズムである。検証者アルゴリズムＶは、公開鍵ＰＫを入力とし、対話プロトコルの実行結果に応じて０又は１（１ｂｉｔ）を出力するアルゴリズムである。なお、検証者は、検証者アルゴリズムＶが０を出力した場合には証明者が不正なものであると判断し、１を出力した場合には証明者が正当なものであると判断する。形式的に、検証者アルゴリズムＶは、下記の式（２）のように表現される。
【００３３】
【数２】
2014081787.tif 000004
【００３４】
上記の通り、意味のある公開鍵認証を実現するには、対話プロトコルが健全性及び零知識性という２つの条件を満たしている必要がある。しかし、証明者が秘密鍵ＳＫを保有していることを証明するためには、証明者が秘密鍵ＳＫに依存した手続きを実行し、その結果を検証者に通知した上で、その通知内容に基づく検証を検証者に実行させる必要がある。秘密鍵ＳＫに依存した手続きを実行するのは、健全性を担保するために必要である。一方で、秘密鍵ＳＫの情報が一切検証者に漏れないようにする必要がある。そのため、これらの要件を満たすように、上記の鍵生成アルゴリズムＧｅｎ、証明者アルゴリズムＰ、検証者アルゴリズムＶを巧妙に設計する必要がある。
【００３５】
［１−２．ｎパスの公開鍵認証方式］
次に、図２を参照しながら、ｎパスの公開鍵認証方式について説明する。図２は、ｎパスの公開鍵認証方式について説明するための説明図である。
【００３６】
上記の通り、公開鍵認証方式は、対話プロトコルの中で、証明者が公開鍵ＰＫに対応する秘密鍵ＳＫを保有していることを検証者に証明する認証方式である。また、対話プロトコルは、健全性及び零知識性という２つの条件を満たす必要がある。そのため、対話プロトコルの中では、図２に示すように、証明者及び検証者の双方がそれぞれ処理を実行しながらｎ回の情報交換を行う。
【００３７】
ｎパスの公開鍵認証方式の場合、証明者アルゴリズムＰを用いて証明者により処理（工程＃１）が実行され、情報Ｔ１が検証者に送信される。次いで、検証者アルゴリズムＶを用いて検証者により処理（工程＃２）が実行され、情報Ｔ２が証明者に送信される。さらに、ｋ＝３〜ｎについて処理の実行及び情報Ｔｋの送信が順次行われ、最後に処理（工程＃ｎ＋１）が実行される。このように、情報がｎ回送受信される方式のことを「ｎパス」の公開鍵認証方式と呼ぶ。
【００３８】
以上、図１及び図２を参照して、公開鍵認証方式の概要について説明した。なお、公開鍵認証方式の種類としては、例えば、「大きな合成数に対する素因数分解の困難性」を安全性の根拠とするＲＳＡ方式や、「楕円曲線上の離散対数問題に対する解の導出の困難性」を安全性の根拠とするＥＣＣ方式等が広く知られている。
【００３９】
本実施形態に係るアクセス認証処理においては、適用される公開鍵認証方式の種類は特に限定されず、あらゆる方式の公開鍵認証が適用され得る。例えば、本実施形態に係るアクセス認証処理には、公開鍵認証方式として、上記のＲＳＡ方式やＥＣＣ方式が用いられてもよい。また、例えば、本実施形態に係るアクセス認証処理には、公開鍵認証方式として、下記＜７．ＭＱ認証方式について＞で詳しく説明するＭＱ認証方式を含む、多次多変数連立方程式に対する求解問題の困難性を安全性の根拠とする認証方式が用いられてもよい。
【００４０】
＜２．アクセス認証処理の概要＞
次に、以上説明した公開鍵認証方式を用いた、本開示の一実施形態に係るアクセス認証処理の概要について説明する。なお、本項も含め、後述する＜３．装置の機能及び構成＞及び＜４．アクセス認証処理の処理シーケンス＞においては、共有システムの一例として、オンラインストレージサービスによるデータ共有システムを例に挙げて説明を行う。ただし、本開示の一実施形態における共有システムはかかる例に限定されず、他のあらゆる共有システムであってもよい。また、オンラインストレージサービスによるデータ共有システムにおいては、アクセスとは、データ領域に格納されている電子データに対して施すことが可能な各種の処理のことを示していてよい。電子データに対して施すことが可能な各種の処理とは、例えば、電子データに対する、閲覧処理、編集処理、読み込み処理、書き込み処理及び実行処理の少なくともいずれかの処理のことを示していてよい。
【００４１】
オンラインストレージサービスにおいては、例えば、クラウド上のストレージのデータ領域がユーザに割り当てられ、提供される。ユーザは、自身に割り当てられたデータ領域に、各種のデータ（ファイルやフォルダ）を格納することができる。また、ユーザは、自身に割り当てられたデータ領域のうちで、他のユーザと共有して編集できる領域を設定したり、他のユーザが閲覧することが可能な領域を設定したりすることができる。
【００４２】
ここで、一般的なオンラインストレージサービスでは、例えば、同一のサービスに登録している会員間においては、その会員ＩＤを互いに指定することにより、特定のユーザにだけデータの閲覧許可、編集許可を相互に与えることができる。しかし、同一のサービスに登録していないユーザに対しては、例えば、共有したいデータが格納されたフォルダのありかを示すＵＲＬを当該ユーザに通知する必要がある一方、当該ＵＲＬを知り得るユーザであれば誰でも当該データにアクセス可能であり、重要なデータを取り扱う際のセキュリティ対策としては不十分な面がある。
【００４３】
このようなオンラインストレージサービスによるデータ共有システムに対して、本実施形態に係るアクセス認証処理を適用することにより、より安全に、ストレージに格納されているデータを管理することが可能となる。以下にその概要について、図３Ａ−図３Ｄを参照して説明する。図３Ａ−図３Ｄは、本開示の一実施形態に係るアクセス認証処理の一例を示す概略図である。
【００４４】
図３Ａを参照すると、例えばユーザＡは、ネットワーク３００を介して、サーバ１０にアクセス可能な状態にある。サーバ１０は、例えばオンラインストレージサービスに適合したストレージを有するサーバであり、当該ストレージにおけるデータ領域１５０のうちの任意の領域を、当該オンラインストレージサービスを利用するユーザに提供することができる。なお、サーバ１０は、上記＜１．公開鍵認証方式の概要＞での説明及び以下の説明における情報処理装置に対応するものである。
【００４５】
図３Ａに示す例では、例えば、サーバ１０が有するデータ領域１５０の一部領域が、ユーザＡの領域１６０として、ユーザＡに提供されている。ユーザＡは、ユーザＡの領域１６０に、所望のデータ、例えば各種のファイルやフォルダを格納することができる。
【００４６】
なお、図３Ａ及び後述する図３Ｂ、Ｃ、Ｄにおいては、説明を簡単にするために、サーバ１０の構成については、例えばストレージに代表される記憶媒体のデータ領域のみを概念的に示し、他の構成については省略して示している。サーバ１０の概略構成及び各構成要素の機能については、＜３．装置の機能及び構成＞で後ほど詳しく説明する。また、サーバ１０のハードウェア構成については、＜６．ハードウェア構成＞で後ほど詳しく説明する。
【００４７】
更に、図３Ｂを参照すると、ユーザＡは、ユーザＡの領域１６０のうちの任意の領域を、他のユーザとデータを共有することができる共有領域１７０として設定することができる。ただし、本実施形態に係るアクセス認証処理においては、ユーザＡは、共有領域１７０を設定する際に、共有領域１７０にアクセスすることが可能なユーザを限定することができる。
【００４８】
具体例として、例えば、他のユーザＢが共有領域１７０にアクセス可能であるように、ユーザＡが共有領域１７０を設定する場合について考える。その場合、例えばユーザＢは、任意の公開鍵認証方式に対応した公開鍵及び秘密鍵の組み合わせである、公開鍵ＰＫＢ及び秘密鍵ＳＫＢを事前に所有しておく。ここで、公開鍵認証方式に対応した公開鍵及び秘密鍵を作成する方法は特に限定されず、公開鍵及び秘密鍵は、既存の公知なツールを用いて作成されてよい。
【００４９】
更に、ユーザＢは、公開鍵ＰＫＢ及び秘密鍵ＳＫＢのうち、公開鍵ＰＫＢをユーザＡに事前に通知しておく。なお、公開鍵ＰＫＢをユーザＡに事前に通知する手段は特に限定されず、例えばメモ、メール、口頭等、あらゆる通知手段が用いられてよい。
【００５０】
ユーザＢが共有領域１７０にアクセス可能であるようにするために、ユーザＡは、通知されたユーザＢの公開鍵ＰＫＢを、共有領域１７０に設定する。ここで、公開鍵ＰＫＢを設定する具体的な方法については、下記［３−１．サーバ］で詳しく説明する。
【００５１】
更に、例えば、図３Ｃに示すように、サーバ１０には、ネットワーク３００を介してサーバ１０と相互に通信可能な、ユーザ端末２０が接続されている。なお、ユーザ端末２０は、上記＜１．公開鍵認証方式の概要＞での説明及び以下の説明における情報処理端末に対応するものである。
【００５２】
例えば、ユーザ端末２０には秘密鍵ＳＫＢの情報が保存されており、ユーザＢが共有領域１７０にアクセスしようとすると、サーバ１０とユーザ端末２０との間で、共有領域１７０に設定されている公開鍵ＰＫＢと、ユーザ端末２０に保存されている秘密鍵ＳＫＢに対して、公開鍵認証方式を用いた認証処理が行われる。そして、当該認証処理の結果が認証ＯＫならば、ユーザ端末２０から共有領域１７０へのアクセスが許可される。
【００５３】
また、本実施形態に係るアクセス認証処理においては、共有領域１７０に、互いに異なる複数の公開鍵を設定することが可能である。例えば、図３Ｄに示すように、ユーザＡは、共有領域１７０に、ユーザＢが所有する公開鍵ＰＫＢ及びユーザＣが所有する公開鍵ＰＫＣを両方設定することができる。共有領域１７０に、公開鍵ＰＫＢ及び公開鍵ＰＫＣが両方設定されている場合、ユーザＢについて、共有領域１７０に設定されている公開鍵ＰＫＢと、ユーザ端末２０に保存されている秘密鍵ＳＫＢに対して、公開鍵認証方式を用いた認証処理が行われ、当該共有領域１７０へのユーザＢのアクセスが認証される。また、ユーザＣについても同様に、共有領域１７０に設定されている公開鍵ＰＫＣと、ユーザ端末２０に保存されている秘密鍵ＳＫＣに対して、公開鍵認証方式を用いた認証処理が行われ、当該共有領域１７０へのユーザＣのアクセスが認証される。
【００５４】
以上、図３Ａ−図３Ｄを参照して説明したように、本実施形態では、共有システムにおけるアクセス認証処理において、公開鍵認証方式に対応した公開鍵がアクセス対象のうちの任意の領域であるアクセス領域に設定され、当該公開鍵と対になる秘密鍵に対して、当該アクセス領域へのアクセスが認証される。従って、共有システムにおける安全性をより高くすることが可能となる。
【００５５】
また、本実施形態に係るアクセス認証処理は、例えば、オンラインストレージサービスを用いたデータ共有システムに対して好適に適用され得る。具体的には、図３Ａ−図３Ｄを参照して説明したように、共有システムが、オンラインストレージサービスを用いたデータ共有システムである場合、アクセス対象は、当該ストレージのデータ領域のうちのあるユーザに割り当てられたデータ領域であってよく、アクセス領域は、そのあるユーザに割り当てられたデータ領域のうちの更に任意のデータ領域（共有領域）であってよい。共有領域に公開鍵認証方式に対応した公開鍵が設定され、当該公開鍵と対になる秘密鍵に対して、当該共有領域へのアクセスが認証されることにより、共有領域に格納される各種のデータの管理がより安全に行われる。
【００５６】
なお、図３Ａ−図３Ｄにおいては、本実施形態に係るアクセス認証処理の一例として、オンラインストレージサービスを例に挙げて、アクセス対象が、当該ストレージのデータ領域１５０のうちの任意の領域であるユーザＡの領域１６０であり、アクセス領域が、ユーザＡの領域１６０のうちの任意の領域である共有領域１７０である場合について説明した。ただし、オンラインストレージサービスを用いたデータ共有システムにおいては、アクセス対象及びアクセス領域の関係性は、かかる実施形態に限定されない。例えば、ストレージのデータ領域１５０がアクセス対象であり、データ領域１５０のうちの任意の領域であるユーザＡの領域１６０がアクセス領域であると捉えることも可能である。アクセス対象がストレージのデータ領域１５０であり、アクセス領域がユーザＡの領域１６０である場合、例えば、ユーザＡが有する公開鍵認証方式に対応した公開鍵ＰＫＡ及び秘密鍵ＳＫＡのうち、公開鍵ＰＫＡがユーザＡの領域１６０に設定されてよい。公開鍵ＰＫＡがユーザＡの領域１６０に設定される場合、ユーザＡが、ユーザＡの領域１６０にアクセスしようとする際に、ユーザＡの領域１６０に設定されている公開鍵ＰＫＡと、ユーザＡが有している秘密鍵ＳＫＡに対して、公開鍵認証方式を用いた認証処理が行われてもよい。
【００５７】
更に、本実施形態に係るアクセス認証処理が適用される共有システムは、オンラインストレージサービスを用いた共有システムに限定されない。オンラインストレージサービスを用いた共有システム以外の共有システムの具体例については、下記＜５．変形例＞で後ほど詳しく説明する。
【００５８】
＜３．装置の機能及び構成＞
次に、本開示の一実施形態に係る情報処理装置及び情報処理端末の一構成例について説明する。なお、本項においては、共有システムの一例として、オンラインストレージサービスによるデータ共有システムを例に挙げて、本実施形態に係る情報処理装置及び情報処理端末の一構成例についての説明を行う。
【００５９】
［３−１．情報処理装置（サーバ）］
まず、図４を参照して、本開示の一実施形態に係る情報処理装置の一構成例について説明する。図４は、本開示の一実施形態に係る情報処理装置の概略構成を示す機能ブロック図である。なお、本実施形態においては、情報処理装置のことをサーバとも呼ぶ。つまり、本実施形態に係る情報処理装置は、上記＜２．アクセス認証処理の概要＞での説明及び以下の説明におけるサーバに対応するものである。
【００６０】
図４を参照すると、本実施形態に係るサーバ１０（情報処理装置１０）は、装置通信部１１０、ストレージ部１２０及び装置制御部１３０を備える。
【００６１】
装置通信部１１０は、サーバ１０を、例えば任意の通信網（ネットワーク）を介して、各種の外部装置と相互に通信可能に接続するためのインターフェースである。具体的には、本実施形態においては、装置通信部１１０は、サーバ１０を、任意のネットワークを介して、ユーザ端末２０及び／又は他の任意の端末と相互に通信可能に接続する。例えば、サーバ１０は、装置通信部１１０及びネットワークを介して、任意の端末から、ストレージ部１２０のデータ領域のうちの任意の領域に設定するための公開鍵ＰＫを受信することができる。また、例えば、サーバ１０は、装置通信部１１０及びネットワークを介して、ユーザ端末２０から、公開鍵ＰＫが設定されたデータに対するアクセス申請を受信することができる。更に、例えば、サーバ１０は、装置通信部１１０及びネットワークを介して、公開鍵認証処理に関する各種の情報をユーザ端末２０と相互にやり取りすることができる。なお、公開鍵認証処理に関する各種の情報とは、例えば、上記＜１．公開鍵認証方式の概要＞で説明した、対話プロトコルにおける情報Ｔ１、Ｔ２等であってよい。
【００６２】
ストレージ部１２０は、共有システムにおいて共有されるデータ領域が設けられる記憶媒体の一例である。上述したように、本実施形態においては、共有システムの一例として、オンラインストレージサービスによるデータ共有システムを例に挙げて説明を行うため、ストレージ部１２０のデータ領域のうちの任意の領域が、各種のデータを格納するためのデータ領域として任意のユーザに提供される。ストレージ部１２０は、電子データを記憶することが可能な記憶媒体であればその種類は限定されず、例えば、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）等の磁気記憶デバイス、又は各種の半導体記憶デバイス等によって構成されてもよい。
【００６３】
装置制御部１３０は、サーバ１０の動作を統合的に制御するとともに、本実施形態に係るアクセス認証処理に関する各種の情報を処理する。例えば、装置制御部１３０は、アクセス対象のうちの任意の領域であるアクセス領域に、公開鍵認証方式に対応した公開鍵を設定する。具体的には、本実施形態であれば、装置制御部１３０は、ストレージ部１２０のデータ領域のうちの任意の領域に、公開鍵認証方式に対応した公開鍵を設定する。
【００６４】
また、例えば、装置制御部１３０は、当該公開鍵と対になる秘密鍵に対して、当該アクセス領域へのアクセスを認証する。具体的には、本実施形態であれば、装置制御部１３０は、当該公開鍵と対になる秘密鍵に対して、ストレージ部１２０上の、当該公開鍵が設定されたデータ領域へのアクセスを認証する。
【００６５】
以下、装置制御部１３０の機能及び構成について、より詳細に説明する。装置制御部１３０は、例えば、公開鍵設定部１３１及び装置認証処理部１３２を有する。
【００６６】
公開鍵設定部１３１は、アクセス対象のうちの任意の領域であるアクセス領域に、公開鍵認証方式に対応した公開鍵を設定する。具体的には、本実施形態であれば、公開鍵設定部１３１は、例えば任意の端末から受信した公開鍵を、ストレージ部１２０のデータ領域のうちの任意の領域に設定する。
【００６７】
また、本実施形態に係るアクセス認証処理においては、公開鍵設定部１３１は、１つのアクセス領域に、互いに異なる複数の公開鍵を設定してもよい。１つのアクセス領域に、互いに異なる複数の公開鍵が設定される場合、例えば、各アクセス領域に設定された複数の公開鍵がリスト状に整理された公開鍵リストが、当該アクセス領域と関連付けられて保存されてもよい。例えば、図４に示す例では、公開鍵が設定されるアクセス領域がストレージ部１２０のデータ領域のうちの任意の領域であり、更に、当該任意の領域がフォルダである場合について図示している。更に、図４では、フォルダはストレージ部１２０内に複数設けられており、複数のフォルダ「フォルダ１」、「フォルダ２」、・・・、「フォルダＮ」のそれぞれに、複数の公開鍵が公開鍵リストとして設定される様子を模式的に示している。
【００６８】
ここで、アクセス領域に設定される互いに異なる複数の公開鍵は、例えば、互いに異なる複数のユーザによって所有される秘密鍵と、それぞれ対になる公開鍵であってよい。上記＜２．アクセス認証処理の概要＞で説明したように、本実施形態に係るアクセス認証処理においては、アクセス領域に設定された公開鍵と、秘密鍵との間で、当該アクセス領域に対するアクセス認証処理が行われるため、アクセス領域に設定された公開鍵と対になる秘密鍵を所有するユーザは、当該アクセス領域へのアクセスが可能になる。つまり、公開鍵設定部１３１が、どの公開鍵をどのアクセス領域に設定するかによって、ユーザに対するアクセス領域へのアクセスを制御することができる。
【００６９】
また、アクセス領域がストレージ部１２０のデータ領域のうちの任意の領域に格納された電子データ、例えばフォルダ及び／又はファイルである場合、公開鍵設定部１３１は、当該フォルダ及び／又はファイルに対するアクセス権限に含まれる各権限に対して公開鍵を個別に設定してもよい。ここで、アクセス権限とは、フォルダ及び／又はファイルに対する、書き込み権限及び読み込み権限の少なくともいずれかを含んでよい。更に、アクセス権限は、フォルダ及び／又はファイルに対する、閲覧権限、編集権限及び実行権限の少なくともいずれかを更に含んでもよい。つまり、公開鍵設定部１３１は、複数のユーザで共有したい電子データに対して、当該電子データへのアクセス権限として、ユーザごとに異なる権限を設定することができる。
【００７０】
なお、アクセス領域がストレージ部１２０のデータ領域のうちの任意の領域に設けられたフォルダである場合、公開鍵設定部１３１は、当該フォルダに公開鍵を設定する具体的な方法として、例えば、下記に示す各方法を行ってよい。
【００７１】
例えば、フォルダの属性情報として公開鍵が設定されてもよい。具体的には、ストレージ部１２０のデータ領域に作成されたフォルダに対して、例えばそのフォルダのプロパティとして、公開鍵を設定するための機能が設けられていてもよい。フォルダのプロパティから公開鍵が設定されることにより、公開鍵設定部１３１が当該フォルダに当該公開鍵を設定してもよい。
【００７２】
また、例えば、別の方法として、フォルダ内の隠れファイルに公開鍵が設定されてもよい。隠れファイルとは、通常時には非表示になっているファイルのことであり、例えば当該フォルダの設定ファイルであってよい。具体的には、隠れファイルに公開鍵に関する情報を書き込むことで、公開鍵設定部１３１が当該フォルダに当該公開鍵を設定してもよい。
【００７３】
また、例えば、更に別の方法として、フォルダ名に公開鍵が設定されてもよい。具体的には、フォルダ名が公開鍵に対応する文字列を含むようにしてもよい。つまり、フォルダ名が公開鍵に対応する文字列を含むことにより、公開鍵設定部１３１が当該フォルダに当該公開鍵を設定してもよい。
【００７４】
ここで、以上説明した、フォルダに公開鍵を設定するための具体的な方法について、図５Ａ−図５Ｃを参照して詳しく説明する。図５Ａ−図５Ｃは、フォルダに対する公開鍵の設定方法を説明するための説明図である。
【００７５】
図５Ａ−図５Ｃは、フォルダの中に格納されているファイルを閲覧する際に、例えば後述するユーザ端末２０（ユーザ端末２０）の端末表示部２３０の表示画面に表示される、ウインドウの一表示例を示している。図５Ａ−図５Ｃを参照すると、例えば、ウインドウ４００は、フォルダ名表示欄４１０、サブウインドウ４２０及びメインウインドウ４３０から構成される。
【００７６】
フォルダ名表示欄４１０には、例えば、閲覧対象としているフォルダのパスとフォルダ名が表示される。図５Ａ−図５Ｃに示す例では、フォルダ名表示欄４１０に、当該フォルダのパス及びフォルダ名として、例えば「Ｃ：￥ｈｏｍｅ」等が表示されている。
【００７７】
また、サブウインドウ４２０には、例えば、閲覧対象としているフォルダの属性情報が表示される。フォルダの属性情報は、例えば、当該フォルダの名前、当該フォルダのデータサイズ、当該フォルダの作成日時、当該フォルダの場所（パス）等の情報を含んでよい。
【００７８】
また、メインウインドウ４３０には、例えば、閲覧対象としているフォルダに格納されているデータ（例えばファイル）がアイコンとして表示される。ユーザは、メインウインドウ４３０に表示されたアイコンを参照することにより、当該フォルダに格納されているデータを確認することができる。
【００７９】
まず、図５Ａを参照して、フォルダの属性情報として公開鍵が設定される方法について説明する。図５Ａを参照すると、サブウインドウに、フォルダ「ｈｏｍｅ」の属性情報として、フォルダ「ｈｏｍｅ」に設定されている公開鍵ＰＫ１、ＰＫ２、・・・、ＰＫｎが表示されている。このように、属性情報として設定された公開鍵が、サブウインドウ４２０に、リストとして表示されてもよい。
【００８０】
次に、図５Ｂを参照して、フォルダ内の隠れファイルに公開鍵が設定される方法について説明する。図５Ｂを参照すると、メインウインドウ４３０に、他のファイル４３１とともに、隠れファイル４３２が表示されている。隠れファイル４３２の中には、例えば公開鍵ＰＫ１、ＰＫ２、・・・、ＰＫｎに関する情報が記載されていてよい。なお、隠れファイルは、表示画面上における表示と非表示とがユーザによって任意に切り替えられるようになっており、デフォルトでは非表示であるように設定されていてもよい。
【００８１】
次に、図５Ｃを参照して、フォルダ名に公開鍵が設定される方法について説明する。図５Ｃを参照すると、フォルダ名表示欄４１０に、当該フォルダのパス及びフォルダ名として、「Ｃ：￥ｈｏｍｅ＿ＰＫ１＿ＰＫ２＿・・・＿ＰＫｎ」が表示されている。ここで、「Ｃ：￥ｈｏｍｅ＿ＰＫ１＿ＰＫ２＿・・・＿ＰＫｎ」との表示における「ＰＫ１」、「ＰＫ２」、「ＰＫｎ」等の表示は、それぞれ、公開鍵ＰＫ１、ＰＫ２、ＰＫｎに対応する文字列であってよい。このように、フォルダ名に設定された公開鍵が、フォルダ名表示欄４１０に、フォルダ名として表示されてもよい。
【００８２】
図４に戻り、装置制御部１３０の機能及び構成についての説明を続ける。
【００８３】
装置認証処理部１３２は、アクセス領域に設定された公開鍵と対になる秘密鍵に対して、当該アクセス領域へのアクセスを認証する。具体的には、例えば、装置認証処理部１３２は、装置通信部１１０を介して、ユーザ端末２０から送信された、あるアクセス領域へのアクセス依頼を受信する。アクセス依頼を受信した装置認証処理部１３２は、アクセス依頼が行われたアクセス領域に設定されている公開鍵と、アクセス依頼を行ったユーザ端末２０が有する秘密鍵との間で、公開鍵認証方式を用いた認証処理を行う。当該公開鍵認証処理の結果、認証がＯＫであれば、装置認証処理部１３２は、アクセス依頼を行ったユーザ端末２０が、アクセス依頼が行われたアクセス領域にアクセスすることを許可する。
【００８４】
より具体的には、例えば図４に示す例であれば、アクセス領域は、ストレージ部１２０のデータ領域のうちの任意の領域に設けられた複数のフォルダのうちのいずれかであってよい。例えば、装置認証処理部１３２は、ユーザ端末２０から送信された、これら複数のフォルダのうちのいずれかに対するアクセス依頼を受信する。そして、アクセス依頼を受信した装置認証処理部１３２は、アクセス依頼が行われたフォルダに設定されている公開鍵リストに含まれる公開鍵と、アクセス依頼を行ったユーザ端末２０が有する秘密鍵との間で、公開鍵認証方式を用いた認証処理を行う。当該公開鍵認証処理の結果、認証がＯＫであれば、装置認証処理部１３２は、アクセス依頼を行ったユーザ端末２０が、アクセス申請が行われたフォルダにアクセスすることを許可する。
【００８５】
なお、当該公開鍵認証処理に際しては、サーバ１０の装置認証処理部１３２と、後述するユーザ端末２０の端末認証処理部２４２との間で、公開鍵認証処理に関する一連の情報のやり取りが行われる。公開鍵認証処理に関する一連の情報のやり取りとは、例えば、上記＜１．公開鍵認証方式の概要＞で説明した、対話プロトコルにおける情報Ｔ１、Ｔ２等のやり取りであってよい。
【００８６】
なお、図４では、装置制御部１３０が有する機能及び構成のうち、本実施形態に係るアクセス認証処理に関わるもの以外の構成については図示を省略しているが、装置制御部１３０は、サーバ１０を公知のオンラインストレージサーバとして機能させるための各種の機能及び構成を更に備えていてもよい。例えば、装置制御部１３０は、ストレージ部１２０のデータ領域のうちの任意の領域を、任意の複数のユーザにそれぞれ割り当てる機能を更に有していてもよい。また、装置制御部１３０は、各ユーザに割り当てたデータ領域に、各種のデータを格納する機能を更に有していてもよい。
【００８７】
また、図４では図示を省略するが、サーバ１０は、公知のオンラインストレージサーバが有する各種の機能及び構成を更に備えていてもよい。例えば、サーバ１０は、ストレージ部１２０とは別に、装置制御部１３０による様々な処理に用いられる各種の情報や、装置制御部１３０による様々な処理の結果を記憶するための装置記憶部を更に備えてもよい。また、例えば、サーバ１０は、サーバ１０に各種の情報や指示を入力するための装置入力部を更に備えてもよい。
【００８８】
［３−２．情報処理端末（ユーザ端末）］
次に、図６を参照して、本開示の一実施形態に係る情報処理端末の一構成例について説明する。図６は、本開示の一実施形態に係る情報処理端末の概略構成を示す機能ブロック図である。なお、本実施形態においては、情報処理端末のことをユーザ端末とも呼ぶ。つまり、本実施形態に係る情報処理端末は、上記＜２．アクセス認証処理の概要＞での説明及び以下の説明におけるユーザ端末に対応するものである。
【００８９】
図６を参照すると、本実施形態に係るユーザ端末２０（情報処理端末２０）は、端末通信部２１０、端末記憶部２２０、端末表示部２３０及び端末制御部２４０を備える。
【００９０】
端末通信部２１０は、ユーザ端末２０を、例えば任意の通信網（ネットワーク）を介して、各種の外部装置と相互に通信可能に接続するためのインターフェースである。具体的には、本実施形態においては、端末通信部２１０は、ユーザ端末２０を、任意のネットワークを介して、サーバ１０と相互に通信可能に接続する。例えば、ユーザ端末２０は、端末通信部２１０及びネットワークを介して、サーバ１０のストレージ部１２０のデータ領域のうち、公開鍵が設定されたデータ領域に対するアクセス依頼を、サーバ１０に送信することができる。更に、ユーザ端末２０は、端末通信部２１０及びネットワークを介して、公開鍵認証処理に関する各種の情報をサーバ１０と相互にやり取りすることができる。なお、公開鍵認証処理に関する各種の情報とは、例えば、上記＜１．公開鍵認証方式の概要＞で説明した、対話プロトコルにおける情報Ｔ１、Ｔ２等のやり取りであってよい。
【００９１】
端末記憶部２２０は、ユーザ端末２０によって処理される各種の情報を記憶するための記憶媒体の一例である。例えば、端末記憶部２２０は、端末制御部２４０による様々な処理に用いられる各種の情報や、端末制御部２４０による様々な処理の結果を記憶する。本実施形態においては、端末記憶部２２０は、例えば、公開鍵認証方式に対応した公開鍵ＰＫと、当該公開鍵ＰＫと対になる秘密鍵ＳＫとを記憶する。また、例えば、端末記憶部２２０は、後述する端末制御部２４０の端末認証処理部２４２が、サーバ１０の装置認証処理部１３２との間でやり取りする、公開鍵認証処理に関する各種の情報を記憶してもよい。
【００９２】
端末表示部２３０は、後述する表示制御部２４３による制御によって、表示画面上に各種の情報を表示することで、ユーザに当該情報を視覚的に伝達する機能を有する。本実施形態においては、端末表示部２３０は、例えば、サーバ１０のストレージ部１２０のデータ領域に設けられた各種のデータ、例えばファイルやフォルダに関する情報を、その表示画面上に表示してもよい。
【００９３】
端末制御部２４０は、ユーザ端末２０の動作を統合的に制御するとともに、本実施形態に係るアクセス認証処理に関する各種の情報を処理する。例えば、端末制御部２４０は、任意の公開鍵認証方式に対応した公開鍵及び秘密鍵の組み合わせ（鍵ペア）である、公開鍵ＰＫ及び秘密鍵ＳＫを生成する。
【００９４】
また、端末制御部２４０は、公開鍵認証方式に対応した秘密鍵ＳＫと対になる公開鍵ＰＫが設定された、外部装置におけるアクセス対象のうちの任意の領域であるアクセス領域へのアクセスの認証を受ける。具体的には、本実施形態であれば、端末制御部２４０は、公開鍵認証処理に関する各種の情報をサーバ１０と相互にやり取りすることにより、サーバ１０のストレージ部１２０のデータ領域のうちの、秘密鍵ＳＫと対になる公開鍵ＰＫが設定された任意の領域へのアクセスの認証を受ける。
【００９５】
以下、端末制御部２４０の機能及び構成について、より詳細に説明する。端末制御部２４０は、例えば、鍵生成部２４１、端末認証処理部２４２及び表示制御部２４３を有する。
【００９６】
鍵生成部２４１は、任意の公開鍵認証方式に対応した公開鍵及び秘密鍵の組み合わせである、公開鍵ＰＫ及び秘密鍵ＳＫを生成する。なお、鍵生成部２４１が、公開鍵認証方式に対応した公開鍵ＰＫ及び秘密鍵ＳＫを生成する方法は特に限定されず、公開鍵ＰＫ及び秘密鍵ＳＫは、既存の公知なツールを用いて作成されてよい。
【００９７】
端末認証処理部２４２は、公開鍵認証方式に対応した秘密鍵ＳＫと対になる公開鍵ＰＫが設定された、外部装置におけるアクセス対象のうちの任意の領域であるアクセス領域へのアクセスの認証を受ける。具体的には、本実施形態であれば、端末認証処理部２４２は、公開鍵認証処理に関する各種の情報をサーバ１０と相互にやり取りすることにより、秘密鍵ＳＫに対して、サーバ１０のストレージ部１２０のデータ領域のうちの、秘密鍵ＳＫと対になる公開鍵ＰＫが設定された任意の領域へのアクセスの認証を受ける。
【００９８】
より具体的には、例えば図４及び図６に示す例であれば、アクセス領域は、サーバ１０のストレージ部１２０のデータ領域のうちの任意の領域に設けられた複数のフォルダのうちのいずれかであってよい。例えば、端末認証処理部２４２は、サーバ１０に対して、これら複数のフォルダのうちのいずれかに対するアクセス依頼を送信する。アクセス依頼を受信したサーバ１０の装置認証処理部１３２は、端末認証処理部２４２と各種の情報を相互にやり取りすることにより、アクセス依頼が行われたフォルダに設定されている公開鍵リストに含まれる公開鍵と、アクセス依頼を行ったユーザ端末２０が有する秘密鍵との間で、公開鍵認証方式を用いた認証処理を行う。当該公開鍵認証処理の結果がＯＫであれば、端末認証処理部２４２は、アクセス依頼を行ったフォルダに対するアクセスの認証を受ける。
【００９９】
なお、当該公開鍵認証処理に際しては、サーバ１０の装置認証処理部１３２と、後述するユーザ端末２０の端末認証処理部２４２との間で、公開鍵認証処理に関する一連の情報のやり取りが行われる。公開鍵認証処理に関する一連の情報のやり取りとは、例えば、例えば、上記＜１．公開鍵認証方式の概要＞で説明した、対話プロトコルにおける情報Ｔ１、Ｔ２等のやり取りであってよい。
【０１００】
表示制御部２４３は、例えば端末表示部２３０における表示機能を制御し、端末表示部２３０の表示画面に、各種の情報を表示させる。具体的には、表示制御部２４３は、端末表示部２３０の表示画面に、サーバ１０のストレージ部１２０のデータ領域に設けられた各種のデータ、例えばファイルやフォルダに関する情報を表示させてもよい。また、上述したように、公開鍵認証処理においては、ユーザ端末２０とサーバ１０との間で各種の情報のやり取りが行われる。表示制御部２４３は、端末表示部２３０の表示画面に、端末認証処理部２４２と、サーバ１０の装置認証処理部１３２との間で行われる、公開鍵認証処理に関する一連の情報のやり取りを表示させてもよい。
【０１０１】
また、表示制御部２４３は、アクセス領域のうち、端末認証処理部２４２による認証処理に対応した秘密鍵ＳＫと対になる公開鍵ＰＫが設定されたアクセス領域のみを端末表示部２３０の表示画面に表示させてもよい。
【０１０２】
具体的には、表示制御部２４３は、端末表示部２３０の表示画面に、端末認証処理部２４２よる認証処理に対応した秘密鍵ＳＫと対になる公開鍵ＰＫが設定されたフォルダのみを表示させてもよい。より具体的には、例えば、ストレージ部１２０のデータ領域に設けられた複数のフォルダについて、いくつかのフォルダには、ユーザＢが所有する公開鍵ＰＫＢが設定されているが、その他のフォルダには公開鍵ＰＫＢが設定されていない場合がある。その場合、例えば、ユーザＢが、あるユーザ端末２０からサーバ１０に接続し、ストレージ部１２０のデータ領域に設けられたファイルやフォルダを閲覧しようとする際に、表示制御部２４３は、端末表示部２３０の表示画面に、公開鍵ＰＫＢが設定されているフォルダのみを表示させてもよい。なお、サーバ１０に接続し、ストレージ部１２０のデータ領域に設けられたファイルやフォルダを閲覧しようとしているユーザが、ユーザＢかどうかの判断は、例えば、ユーザ端末２０に対するログイン処理等によりユーザの判別が行われることによって、判断されてもよい。
【０１０３】
このように、例えば公開鍵ＰＫＢが設定されているフォルダのみが表示画面上に表示されることにより、ユーザＢにとっては、自身がアクセス可能なフォルダのみを閲覧することができる。従って、ユーザにとっての利便性を向上させることができる。
【０１０４】
以上、図４及び図６を参照して、本実施形態に係るサーバ１０及びユーザ端末２０の機能の一例、特に装置制御部１３０及び端末制御部２４０の機能の一例について詳細に示した。なお、サーバ１０及びユーザ端末２０の各構成要素は、汎用的な部材や回路を用いて構成されていてもよいし、各構成要素の機能に特化したハードウェアにより構成されていてもよい。また、装置制御部１３０及び端末制御部２４０については、各構成要素の機能を、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）等が全て行ってもよい。従って、本実施形態を実施する時々の技術レベルに応じて、適宜、利用する構成を変更することが可能である。
【０１０５】
なお、サーバ１０及びユーザ端末２０のハードウェア構成については、＜６．ハードウェア構成＞で後ほど詳しく説明する。
【０１０６】
以上説明したように、本実施形態に係るサーバ１０においては、公開鍵設定部１３１が、公開鍵認証方式に対応した公開鍵を、アクセス対象のうちの任意の領域であるアクセス領域に設定する。また、装置認証処理部１３２が、当該公開鍵と対になる秘密鍵に対して、当該アクセス領域へのアクセスを認証する。
【０１０７】
また、本実施形態に係るユーザ端末２０においては、端末認証処理部２４２が、公開鍵認証方式に対応した秘密鍵と対になる公開鍵が設定された、外部装置におけるアクセス対象のうちの任意の領域であるアクセス領域へのアクセスの認証を受ける。ここで、外部装置とは、例えば図４に示すサーバ１０であってよい。従って、共有システムにおける安全性をより高くすることが可能となる。
【０１０８】
なお、図４及び図６では、１つのサーバ１０と１つのユーザ端末２０とが、装置通信部１１０及び端末通信部２１０を介して、互いに通信可能に接続されている様子を示しているが、本実施形態はかかる例に限定されない。例えば、１つのサーバ１０に、互いに異なる複数のユーザ端末２０が接続されていてもよい。また、サーバ１０に接続される、互いに異なる複数のユーザ端末２０は、それぞれ異なる公開鍵ＰＫ及び秘密鍵ＳＫの鍵ペアを所有していてもよい。ユーザは、それぞれのユーザ端末２０からサーバ１０にそれぞれ接続することができ、また、それぞれの公開鍵ＰＫ及び秘密鍵ＳＫの鍵ペアに基づいて、アクセス認証処理を受けることができる。
【０１０９】
＜４．アクセス認証処理の処理シーケンス＞
次に、図７を参照して、本開示の一実施形態に係るアクセス認証処理方法について説明する。図７は、本開示の一実施形態に係るアクセス認証処理方法における処理シーケンスの一例を示すシーケンス図である。なお、本項では、共有システムの一例として、オンラインストレージサービスによるデータ共有システムを例に挙げて、本実施形態に係るアクセス認証処理の処理シーケンスについての説明を行う。また、具体例として、ユーザＡが、オンラインストレージサービスによって割り当てられた自身のデータ領域のうちの任意の領域を、他のユーザＢと共有する場合について説明する。なお、本実施形態に係るアクセス認証処理が適用されるのは、オンラインストレージサービスによるデータ共有システムに限定されず、他の共有システムであってもよい。
【０１１０】
なお、サーバ１０及びユーザ端末２０の各構成要素、例えば、装置通信部１１０、公開鍵設定部１３１、装置認証処理部１３２、端末通信部２１０、鍵生成部２４１及び端末認証処理部２４２等の機能については、上記＜３．装置の機能及び構成＞で説明しているため、ここでは詳細な説明は省略する。
【０１１１】
図７を参照すると、本実施形態に係るアクセス認証処理においては、まず、ユーザＢ（ユーザ端末２０）によって、任意の公開鍵認証方式に対応した公開鍵及び秘密鍵の組み合わせ（鍵ペア）である、公開鍵ＰＫＢ及び秘密鍵ＳＫＢが生成される（ステップＳ７０１）。公開鍵ＰＫＢ及び秘密鍵ＳＫＢは、例えば、ユーザ端末２０の鍵生成部２４１によって生成されてもよい。更に、生成された公開鍵ＰＫＢ及び秘密鍵ＳＫＢは、例えば、ユーザ端末２０の端末記憶部２２０に記憶されてもよい。なお、公開鍵ＰＫＢ及び秘密鍵ＳＫＢに対応する公開鍵認証方式の種類は特に限定されず、あらゆる種類の方式が用いられてよい。また、公開鍵ＰＫＢ及び秘密鍵ＳＫＢは、鍵生成部２４１によって生成されなくてもよく、ユーザＢ（ユーザ端末２０）が公開鍵ＰＫＢ及び秘密鍵ＳＫＢを所有していれば、その入手方法は限定されない。
【０１１２】
次に、ユーザＢからユーザＡに、生成された公開鍵ＰＫＢ及び秘密鍵ＳＫＢのうち、公開鍵ＰＫＢが通知される（ステップＳ７０３）。ユーザＢからユーザＡへの公開鍵ＰＫＢの通知手段は特に限定されず、例えばメモ、メール、口頭等、あらゆる通知手段が用いられてよい。
【０１１３】
次に、ユーザＡが、オンラインストレージサービスに対するログイン処理を行う（ステップＳ７０５）。ここで言うログインとは、例えば当該オンラインストレージサービスを利用するための申請であってよい。具体的には、本実施形態においては、ユーザＡは、当該オンラインストレージサービスにログインすることで、サーバ１０のストレージ部１２０のデータ領域のうちで、ユーザＡに割り当てられているデータ領域を利用することができる。
【０１１４】
次に、ユーザＡは、サーバ１０に対して、データ領域のうちで自身に割り当てられている領域のうち、他のユーザであるユーザＢと共有したい任意の領域（共有領域）に、ステップＳ７０１で通知された公開鍵ＰＫＢの設定を依頼する（ステップＳ７０７）。依頼を受けたサーバ１０では、当該共有領域に公開鍵ＰＫＢが設定される（ステップＳ７０９）。ステップＳ７０９では、例えば、上記［３−１．サーバ］で説明したように、サーバ１０の公開鍵設定部１３１によって、当該共有領域に公開鍵ＰＫＢが設定される。
【０１１５】
次に、ユーザＢが、サーバ１０に対して、ユーザＡによって公開鍵ＰＫＢが設定された設定された共有領域に対するアクセス依頼を送信する（ステップＳ７１１）。当該アクセス依頼は、例えば上記［３−２．ユーザ端末］で説明したように、ユーザ端末２０の端末通信部２１０を介してサーバ１０に対して送信されてよい。
【０１１６】
次に、アクセス依頼を受信したサーバ１０と、当該アクセス依頼を送信したユーザ端末２０との間で、共有領域に対して、公開鍵認証方式を用いたアクセス認証処理が行われる（ステップＳ７１３）。アクセス認証処理は、例えば、上記［３−１．サーバ］及び上記［３−２．ユーザ端末］で説明したように、装置認証処理部１３２と端末認証処理部２４２との間で行われてよい。
【０１１７】
ステップＳ７１３でのアクセス認証処理の結果、認証ＯＫであった場合には、サーバ１０によって、ユーザ端末２０から当該共有領域へのアクセスが許可される（ステップＳ７１５）。そして、ユーザＢ（ユーザ端末２０）は、アクセスが許可されたデータ領域へのアクセスを行うことができる（ステップＳ７１７）。つまり、ユーザＢ（ユーザ端末２０）は、サーバ１０から、当該共有領域に格納されている各種のデータに対して、書き込み、読み込み、編集等の各種の処理を行うことができる（ステップＳ７１９）。
【０１１８】
以上、図７を参照して説明したように、本開示の一実施形態に係るアクセス認証方法においては、公開鍵認証方式に対応した公開鍵が、アクセス対象のうちの任意の領域であるアクセス領域に設定され、前記公開鍵と対になる秘密鍵に対して、前記アクセス領域へのアクセスが認証される。従って、共有システムにおける安全性をより高くすることが可能となる。
【０１１９】
なお、以上の説明では、共有システムの一例としてオンラインストレージサービスによるデータ共有システムを例に挙げて、アクセス対象が、当該ストレージのデータ領域であり、アクセス領域が、当該データ領域のうちの任意の領域である場合について説明した。ただし、本実施形態に係るアクセス認証処理は、かかる例に限定されず、共有システムであれば他のシステムであっても適用することが可能である。
【０１２０】
＜５．変形例＞
次に、ここまで説明してきた一実施形態の変形例について説明する。以上の説明では、共有システムの一例としてオンラインストレージサービスによるデータ共有システムを例に挙げて、アクセス対象が、当該ストレージのデータ領域であり、アクセス領域が、当該データ領域のうちの任意の領域である場合について説明してきた。しかし、本実施形態は、かかる例に限定されない。例えば、アクセス対象は、物理的に施錠可能な筐体であり、アクセス認証処理によって、当該筐体の開錠が認証されてもよい。より具体的には、例えば、アクセス対象は、施錠可能な複数のロッカーの集合体であり、アクセス領域はそのうちのいくつかのロッカーであってよい。
【０１２１】
つまり、本実施形態においては、情報処理装置（サーバ）の装置認証処理部が、アクセス領域へのアクセスを認証することで、筐体の開錠を認証してもよい。すなわち、アクセス対象が施錠可能な複数のロッカーの集合体であり、アクセス領域がそのうちのいくつかのロッカーである場合、アクセスとは、当該ロッカーを開錠する処理のことを示していてよい。
【０１２２】
以下では、図８Ａ−図８Ｅを参照して、本開示の一実施形態の変形例として、アクセス対象が、施錠可能な複数のロッカーの集合体であり、アクセス領域がそのうちのいくつかのロッカーである場合のアクセス認証処理について、具体的に説明する。図８Ａ−図８Ｅは、本実施形態の変形例について説明するための説明図である。なお、当該変形例においては、サーバ１０の機能及び構成は、例えば図４に示すサーバ１０において、ストレージ部１２０が、施錠可能なロッカーの集合体に置換されたものに対応する。また、当該ロッカー各々の施錠及び開錠を行う駆動部が更に存在し、当該駆動部が、装置制御部１３０からの制御により、各ロッカーの施錠及び開錠を行う。ここでは、図４に示すサーバ１０との相違点について主に説明を行うものとし、変更のない構成については、その詳細な説明を省略する。
【０１２３】
上述したように、本変形例においては、施錠可能なロッカーの集合体のうちの任意のロッカーが、アクセス領域として取り扱われる。図８Ａ−図８Ｅでは、ある１つのロッカーがアクセス領域である場合を例に挙げて、本実施形態に係るアクセス認証処理の処理手順について説明する。まず、図８Ａに示すように、例えばあるユーザによって、ロッカー６００に荷物が入れられる。
【０１２４】
次に、ロッカー６００が施錠される際に、図８Ｂに示すように、例えば図４に示す公開鍵設定部１３１によって、ロッカー６００に公開鍵ＰＫが設定される。ここでは、公開鍵ＰＫの一例として、例えば文字列「１Ａ２ｕ９ｙＤ６５Ｂ」で表される公開鍵ＰＫがロッカー６００に設定されたとする。
【０１２５】
ロッカー６００に公開鍵ＰＫが設定されていることは、例えば図８Ｃに示すように、ロッカー６００の扉の一部領域に設けられた表示窓に、当該公開鍵ＰＫを表す文字列である「１Ａ２ｕ９ｙＤ６５Ｂ」が表示されることによって、明示されてもよい。ロッカー６００に設けられた表示窓に、公開鍵ＰＫを表す文字列が表示されることによって、他のユーザに対して、ロッカー６００に公開鍵が設定されているかどうかを通知することができる。また、当該公開鍵ＰＫを所有するユーザに対しては、ロッカー６００に自身が所有する公開鍵が設定されているかどうかを通知することができる。すなわち、ロッカー６００に設けられた表示窓に、公開鍵ＰＫを表す文字列が表示されることによって、ユーザに対する視認性を確保することができる。
【０１２６】
ロッカー６００から荷物を取り出す、すなわち、ロッカー６００を開錠するためには、公開鍵認証方式を用いたアクセス認証処理が行われる。例えば、図８Ｄに示すように、ロッカー６００に設定されている公開鍵ＰＫと、当該公開鍵ＰＫと対になる秘密鍵ＳＫとの間で、例えば図４に示す装置認証処理部１３２によって、公開鍵認証方式を用いた認証処理が行われる。認証処理の結果、認証ＯＫであった場合には、例えば、ロッカーの施錠及び開錠を行う機能を有する駆動部に、装置認証処理部１３２からその旨が通知される。そして、認証ＯＫの旨の通知を受けた当該駆動部によって、ロッカー６００が開錠され、図８Ｅに示すように、中の荷物が取り出される。
【０１２７】
以上、図８Ａ−図８Ｅを参照して説明したように、本変形例においては、公開鍵認証方式を用いたアクセス認証処理によってロッカーの開錠が行われるため、より安全に荷物を保管することができる。また、本変形例においては、物理的な（有形な）鍵を用いないため、物理的な鍵を用いる既存のロッカーにおいて起こり得る、鍵の紛失等のトラブルを回避することができる。
【０１２８】
また、本変形例においては、荷物を入れるユーザと荷物を取り出すユーザとが同一のユーザであってもよいし、異なるユーザであってもよい。荷物を入れるユーザと荷物を取り出すユーザとが同一のユーザである場合には、当該ユーザが公開鍵ＰＫと秘密鍵ＳＫの鍵ペアを所有していればよい。一方、荷物を入れるユーザ（例えば、ユーザＡ）と荷物を取り出すユーザ（例えば、ユーザＢ）とが異なるユーザである場合には、例えば、ユーザＢは、ユーザＡに対して、ユーザＢが所有している公開鍵ＰＫＢ及び秘密鍵ＳＫＢの鍵ペアのうち、公開鍵ＰＫＢを事前に通知しておく。ユーザＡは、ロッカーを施錠する際に、通知された公開鍵ＰＫＢを当該ロッカーに設定する。ユーザＢは、自身の公開鍵ＰＫＢが設定されているロッカーを、自身が所有する秘密鍵ＳＫＢを用いることによって、開錠することができる。従って、ユーザＡとユーザＢとが直接面会して鍵の受け渡しを行わなくてもよく、荷物の受け渡しを安全に行うことができる。
【０１２９】
なお、本変形例に係るロッカーが、例えばいわゆるコインロッカーである場合には、ロッカーに公開鍵ＰＫを設定して施錠するとき、又は、秘密鍵ＳＫを用いてロッカーを開錠するとき等に、適宜課金処理が行われてもよい。
【０１３０】
＜６．ハードウェア構成＞
次に、図９を参照しながら、本開示の実施形態に係る情報処理装置（サーバ）及び情報処理端末（ユーザ端末）のハードウェア構成について、詳細に説明する。図９は、本開示の一実施形態に係る情報処理装置及び情報処理端末のハードウェア構成を説明するためのブロック図である。
【０１３１】
サーバ１０及びユーザ端末２０は、主に、ＣＰＵ９０１と、ＲＯＭ９０３と、ＲＡＭ９０５と、を備える。また、サーバ１０及びユーザ端末２０は、更に、ホストバス９０７と、ブリッジ９０９と、外部バス９１１と、インターフェース９１３と、入力装置９１５と、出力装置９１７と、ストレージ装置９１９と、通信装置９２１と、ドライブ９２３と、接続ポート９２５とを備える。
【０１３２】
ＣＰＵ９０１は、演算処理装置及び制御装置として機能し、ＲＯＭ９０３、ＲＡＭ９０５、ストレージ装置９１９又はリムーバブル記録媒体９２９に記録された各種プログラムに従って、サーバ１０及びユーザ端末２０内の動作全般又はその一部を制御する。ＣＰＵ９３１は、本実施形態においては、例えば装置制御部１３０及び端末制御部２４０に対応する。ＲＯＭ９０３は、ＣＰＵ９０１が使用するプログラムや演算パラメータ等を記憶する。ＲＡＭ９０５は、ＣＰＵ９０１が使用するプログラムや、プログラムの実行において適宜変化するパラメータ等を一次記憶する。これらはＣＰＵバス等の内部バスにより構成されるホストバス９０７により相互に接続されている。
【０１３３】
ホストバス９０７は、ブリッジ９０９を介して、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ／Ｉｎｔｅｒｆａｃｅ）バスなどの外部バス９１１に接続されている。
【０１３４】
入力装置９１５は、例えば、マウス、キーボード、タッチパネル、ボタン、スイッチ及びレバー等、ユーザが操作する操作手段である。また、入力装置９１５は、例えば、赤外線やその他の電波を利用したリモートコントロール手段（いわゆる、リモコン）であってもよいし、サーバ１０及びユーザ端末２０の操作に対応した携帯電話やＰＤＡ等の外部接続機器９３１であってもよい。さらに、入力装置９１５は、例えば、上記の操作手段を用いてユーザにより入力された情報に基づいて入力信号を生成し、ＣＰＵ９０１に出力する入力制御回路などから構成されている。サーバ１０及びユーザ端末２０のユーザは、この入力装置９１５を操作することにより、サーバ１０及びユーザ端末２０に対して各種のデータを入力したり処理動作を指示したりすることができる。
【０１３５】
出力装置９１７は、取得した情報をユーザに対して視覚的又は聴覚的に通知することが可能な装置で構成される。このような装置として、ＣＲＴディスプレイ装置、液晶ディスプレイ装置、プラズマディスプレイ装置、ＥＬディスプレイ装置及びランプ等の表示装置や、スピーカ及びヘッドホン等の音声出力装置や、プリンタ装置等がある。出力装置９１７は、例えば、サーバ１０及びユーザ端末２０が行った各種処理により得られた結果を出力する。具体的には、表示装置は、サーバ１０及びユーザ端末２０が行った各種処理により得られた結果を、テキスト又はイメージで表示する。当該表示装置は、本実施形態においては、例えば端末表示部２３０に対応する。他方、音声出力装置は、再生された音声データや音響データ等からなるオーディオ信号をアナログ信号に変換して出力する。
【０１３６】
ストレージ装置９１９は、サーバ１０及びユーザ端末２０の記憶部の一例として構成されたデータ格納用の装置である。本実施形態においては、例えば、ストレージ部１２０及び端末記憶部２２０に対応する。また、サーバ１０が、ストレージ部１２０以外に、装置制御部１３０による様々な処理に用いられる各種の情報や、装置制御部１３０による様々な処理の結果を記憶するための装置記憶部を更に備える場合には、当該装置記憶部も、ストレージ装置９１９に対応する構成であってよい。ストレージ装置９１９は、例えば、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）等の磁気記憶部デバイス、半導体記憶デバイス、光記憶デバイス又は光磁気記憶デバイス等により構成される。このストレージ装置９１９は、ＣＰＵ９０１が実行するプログラムや各種データ及び外部から取得した各種のデータを格納する。また、例えば、ストレージ装置９１９は、公開鍵認証方式に対応した公開鍵ＰＫ及び秘密鍵ＳＫの鍵ペアに関する情報を記憶してもよい。更に、例えば、ストレージ装置９１９には、オンラインストレージサービスにおいてユーザに提供されるデータ領域が設けられてもよい。
【０１３７】
通信装置９２１は、例えば、通信網９２７（ネットワーク９２７）に接続するための通信デバイス等で構成された通信インターフェースである。例えば、本実施形態においては、通信装置９２１は、装置通信部１１０及び端末通信部２１０に対応する。また、例えば、本実施形態においては、通信網９２７は、図３Ａ−図３Ｄに示すネットワーク３００に対応してもよい。つまり、本実施形態においては、サーバ１０とユーザ端末２０とは、通信装置９２１及び通信網９２７を介して、互いに通信可能に接続されてよい。通信装置９２１は、例えば、有線若しくは無線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、Ｂｌｕｅｔｏｏｔｈ（登録商標）又はＷＵＳＢ（Ｗｉｒｅｌｅｓｓ  ＵＳＢ）用の通信カード等である。また、通信装置９２１は、光通信用のルータ、ＡＤＳＬ（Ａｓｙｍｍｅｔｒｉｃ  Ｄｉｇｉｔａｌ  Ｓｕｂｓｃｒｉｂｅｒ  Ｌｉｎｅ）用のルータ又は各種通信用のモデム等であってもよい。この通信装置９２１は、例えば、インターネットや他の通信機器との間で、例えばＴＣＰ／ＩＰ等の所定のプロトコルに則して信号等を送受信することができる。また、通信装置９２１に接続される通信網９２７は、有線又は無線によって接続されたネットワーク等により構成され、例えば、インターネット、家庭内ＬＡＮ、赤外線通信、ラジオ波通信又は衛星通信等であってもよい。
【０１３８】
また、上記＜３．装置の機能及び構成＞における説明では言及しなかったが、本実施形態に係るサーバ１０及びユーザ端末２０は、図９に示すドライブ９２３及び接続ポート９２５を更に備えてもよい。
【０１３９】
ドライブ９２３は、記録媒体用リーダライタであり、サーバ１０及びユーザ端末２０に内蔵、あるいは外付けされる。ドライブ９２３は、装着されている磁気ディスク、光ディスク、光磁気ディスク又は半導体メモリ等のリムーバブル記録媒体９２９に記録されている情報を読み出して、例えばＲＡＭ９０５に出力する。また、ドライブ９２３は、装着されている磁気ディスク、光ディスク、光磁気ディスク又は半導体メモリ等のリムーバブル記録媒体９２９に記録を書き込むことも可能である。リムーバブル記録媒体９２９は、例えば、ＤＶＤメディア、ＨＤ−ＤＶＤメディア、Ｂｌｕ−ｒａｙメディア等である。また、リムーバブル記録媒体９２９は、コンパクトフラッシュ（登録商標）（ＣｏｍｐａｃｔＦｌａｓｈ：ＣＦ）、フラッシュメモリ又はＳＤメモリカード（Ｓｅｃｕｒｅ  Ｄｉｇｉｔａｌ  ｍｅｍｏｒｙ  ｃａｒｄ）等であってもよい。また、リムーバブル記録媒体９２９は、例えば、非接触型ＩＣチップを搭載したＩＣカード（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ  ｃａｒｄ）又は電子機器等であってもよい。
【０１４０】
接続ポート９２５は、外部接続機器９３１をサーバ１０及びユーザ端末２０に直接接続するためのポートである。接続ポート９２５の一例として、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）ポート、ＩＥＥＥ１３９４ポート、ＳＣＳＩ（Ｓｍａｌｌ  Ｃｏｍｐｕｔｅｒ  Ｓｙｓｔｅｍ  Ｉｎｔｅｒｆａｃｅ）ポート等がある。接続ポート９２５の別の例として、ＲＳ−２３２Ｃポート、光オーディオ端子、ＨＤＭＩ（Ｈｉｇｈ−Ｄｅｆｉｎｉｔｉｏｎ  Ｍｕｌｔｉｍｅｄｉａ  Ｉｎｔｅｒｆａｃｅ）ポート等がある。この接続ポート９２５に外部接続機器９３１を接続することで、サーバ１０及びユーザ端末２０は、外部接続機器９３１から各種のデータを取得したり、外部接続機器９３１に各種のデータを提供したりする。例えば、サーバ１０及びユーザ端末２０は、本実施形態に係るアクセス認証処理に用いられる公開鍵認証方式に関する各種の情報を、外部接続機器９３１から取得してもよい。
【０１４１】
以上、本開示の実施形態に係るサーバ１０及びユーザ端末２０の機能を実現可能なハードウェア構成の一例を示した。上記の各構成要素は、汎用的な部材を用いて構成されていてもよいし、各構成要素の機能に特化したハードウェアにより構成されていてもよい。従って、本実施形態を実施する時々の技術レベルに応じて、適宜、利用するハードウェア構成を変更することが可能である。
【０１４２】
なお、上述のような本実施形態に係るサーバ１０及びユーザ端末２０の各機能を実現するためのコンピュータプログラムを作製し、パーソナルコンピュータ等に実装することが可能である。また、このようなコンピュータプログラムが格納された、コンピュータで読み取り可能な記録媒体も提供することができる。記録媒体は、例えば、磁気ディスク、光ディスク、光磁気ディスク、フラッシュメモリなどである。また、上記のコンピュータプログラムは、記録媒体を用いずに、例えばネットワークを介して配信してもよい。
【０１４３】
＜７．ＭＱ認証方式について＞
以上、本開示の一実施形態について詳細に説明した。ここで、本開示の一実施形態に係るアクセス認証処理においては、上述したように、共有システムにおけるアクセス対象のうちの任意の領域に対するアクセスに対して、公開鍵認証方式を用いた認証が行われる。ただし、その公開鍵認証方式の種類は特に限定されるものではなく、任意の公開鍵認証方式を適用することが可能である。ここで、公開鍵認証方式として、多次多変数連立方程式に対する求解問題の困難性を安全性の根拠とする公開鍵認証方式を用いることにより、本実施形態において、より格別な効果を得ることができる。
【０１４４】
そこで、本項では、多次多変数連立方程式に対する求解問題の困難性を安全性の根拠とする公開鍵認証方式について説明し、更に、当該公開鍵認証方式を用いることにより生じる効果について詳しく説明する。ここで、以下の［７−１．具体的なアルゴリズムの構成例］及び［７−２．並列化アルゴリズムの構成例］では、当該公開鍵認証方式の具体的な一例として、多次多変数連立方程式が２次の多変数連立方程式である場合について説明する。なお、２次の多変数連立方程式に対する求解問題の困難性を安全性の根拠とする公開鍵認証方式のことを、ＭＱ（Ｍｕｌｔｉｖａｒｉａｔｅ  Ｑｕａｄｒａｔｉｃ）認証方式と呼ぶ場合がある。
【０１４５】
また、同じく以下の［７−１．具体的なアルゴリズムの構成例］及び［７−２．並列化アルゴリズムの構成例］では、当該公開鍵認証方式の具体的な一例として、＜１．公開鍵認証方式の概要＞で説明したｎパスの公開鍵認証方式においてｎが３の場合（すなわち、３パスの公開鍵認証方式）について説明する。なお、３パスの公開鍵認証方式のことを「３パス方式」と呼ぶ場合がある。
【０１４６】
［７−１．具体的なアルゴリズムの構成例］
まず、図１０を参照しながら、３パス方式に係る具体的なアルゴリズムの構成例について説明する。図１０は、３パス方式に係る具体的なアルゴリズムの構成について説明するための説明図である。ここでは、公開鍵ＰＫの一部として２次多項式の組（ｆ１（ｘ），…，ｆｍ（ｘ））を利用する場合について考える。ただし、２次多項式ｆｉ（ｘ）は、下記の式（３）のように表現されるものとする。また、ベクトル（ｘ１，…，ｘｎ）をｘと表記し、２次多項式の組（ｆ１（ｘ），…，ｆｍ（ｘ））を多変数多項式Ｆ（ｘ）と表記することにする。
【０１４７】
【数３】
2014081787.tif 000005
【０１４８】
また、２次多項式の組（ｆ１（ｘ），…，ｆｍ（ｘ））は、下記の式（４）のように表現することができる。なお、Ａ１，…，Ａｍは、ｎ×ｎ行列である。更に、ｂ１，…，ｂｍはそれぞれｎ×１ベクトルである。
【０１４９】
【数４】
2014081787.tif 000006
【０１５０】
この表現を用いると、多変数多項式Ｆは、下記の式（５）及び式（６）のように表現することができる。この表現が成り立つことは、下記の式（７）から容易に確認することができる。
【０１５１】
【数５】
2014081787.tif 000007
【０１５２】
このようにＦ（ｘ＋ｙ）をｘに依存する第１の部分と、ｙに依存する第２の部分と、ｘ及びｙの両方に依存する第３の部分とに分けたとき、第３の部分に対応する項Ｇ（ｘ，ｙ）は、ｘ及びｙについて双線形になる。以下、項Ｇ（ｘ，ｙ）を双線形項と呼ぶ場合がある。この性質を利用すると、効率的なアルゴリズムを構築することが可能になる。
【０１５３】
例えば、ベクトルｔ０∈Ｋｎ、ｅ０∈Ｋｍを用いて、多変数多項式Ｆ（ｘ＋ｒ）のマスクに利用する多変数多項式Ｆ１（ｘ）をＦ１（ｘ）＝Ｇ（ｘ，ｔ０）＋ｅ０と表現する。この場合、多変数多項式Ｆ（ｘ＋ｒ０）とＧ（ｘ）との和は、下記の式（８）のように表現される。ここで、ｔ１＝ｒ０＋ｔ０、ｅ１＝Ｆ（ｒ０）＋ｅ０とおけば、多変数多項式Ｆ２（ｘ）＝Ｆ（ｘ＋ｒ０）＋Ｆ１（ｘ）は、ベクトルｔ１∈Ｋｎ、ｅ１∈Ｋｍにより表現することができる。そのため、Ｆ１（ｘ）＝Ｇ（ｘ，ｔ０）＋ｅ０に設定すれば、Ｋｎ上のベクトル及びＫｍ上のベクトルを用いてＦ１及びＦ２を表現できるようになり、通信に必要なデータサイズの少ない効率的なアルゴリズムを実現することが可能になる。
【０１５４】
【数６】
2014081787.tif 000008
【０１５５】
なお、Ｆ２（或いはＦ１）からｒ０に関する情報が一切漏れることはない。例えば、ｅ１及びｔ１（或いはｅ０及びｔ０）を与えられても、ｅ０及びｔ０（或いはｅ１及びｔ１）を知らない限り、ｒ０の情報を一切知ることはできない。従って、零知識性が担保される。以下、上記の論理に基づいて構築された３パス方式のアルゴリズムについて説明する。ここで説明する３パス方式のアルゴリズムは、以下のような鍵生成アルゴリズムＧｅｎ、証明者アルゴリズムＰ、検証者アルゴリズムＶにより構成される。
【０１５６】
（鍵生成アルゴリズムＧｅｎ）
鍵生成アルゴリズムＧｅｎは、環Ｋ上で定義されるｍ本の多変数多項式ｆ１（ｘ１，…，ｘｎ），…，ｆｍ（ｘ１，…，ｘｎ）、及びベクトルｓ＝（ｓ１，…，ｓｎ）∈Ｋｎを生成する。次に、鍵生成アルゴリズムＧｅｎは、ｙ＝（ｙ１，…，ｙｍ）←（ｆ１（ｓ），…，ｆｍ（ｓ））を計算する。そして、鍵生成アルゴリズムＧｅｎは、（ｆ１（ｘ１，…，ｘｎ），…，ｆｍ（ｘ１，…，ｘｎ），ｙ）を公開鍵ＰＫに設定し、ｓを秘密鍵に設定する。
【０１５７】
（証明者アルゴリズムＰ、検証者アルゴリズムＶ）
以下、図１０を参照しながら、対話プロトコルの中で証明者アルゴリズムＰが実行する処理及び検証者アルゴリズムＶが実行する処理について説明する。この対話プロトコルの中で、証明者は、秘密鍵ｓの情報を検証者に一切漏らさずに、「自身がｙ＝Ｆ（ｓ）を満たすｓを知っていること」を検証者に示す。一方、検証者は、証明者がｙ＝Ｆ（ｓ）を満たすｓを知っているか否かを検証する。なお、公開鍵ＰＫは、検証者に公開されているものとする。また、秘密鍵ｓは、証明者により秘密に管理されているものとする。以下、図１０に示したフローチャートに沿って説明を進める。
【０１５８】
工程＃１：
図１０に示すように、まず、証明者アルゴリズムＰは、ランダムにベクトルｒ０，ｔ０∈Ｋｎ及びｅ０∈Ｋｍを生成する。次いで、証明者アルゴリズムＰは、ｒ１←ｓ−ｒ０を計算する。この計算は、秘密鍵ｓをベクトルｒ０によりマスクする操作に相当する。さらに、証明者アルゴリズムＰは、ｔ１←ｒ０−ｔ０を計算する。次いで、証明者アルゴリズムＰは、ｅ１←Ｆ（ｒ０）−ｅ０を計算する。
【０１５９】
工程＃１（続き）：
次いで、証明者アルゴリズムＰは、ｃ０←Ｈ（ｒ１，Ｇ（ｔ０，ｒ１）＋ｅ０）を計算する。次いで、証明者アルゴリズムＰは、ｃ１←Ｈ（ｔ０，ｅ０）を計算する。次いで、証明者アルゴリズムＰは、ｃ２←Ｈ（ｔ１，ｅ１）を計算する。工程＃１で生成されたメッセージ（ｃ０，ｃ１，ｃ２）は、検証者アルゴリズムＶに送られる。
【０１６０】
工程＃２：
メッセージ（ｃ０，ｃ１，ｃ２）を受け取った検証者アルゴリズムＶは、３つの検証パターンのうち、どの検証パターンを利用するかを選択する。例えば、検証者アルゴリズムＶは、検証パターンの種類を表す３つの数値｛０，１，２｝の中から１つの数値を選択し、選択した数値を要求Ｃｈに設定する。この要求Ｃｈは証明者アルゴリズムＰに送られる。
【０１６１】
工程＃３：
要求Ｃｈを受け取った証明者アルゴリズムＰは、受け取った要求Ｃｈに応じて検証者アルゴリズムＶに送る返答Ｒｓｐを生成する。Ｃｈ＝０の場合、証明者アルゴリズムＰは、返答Ｒｓｐ＝（ｒ０，ｔ１，ｅ１）を生成する。Ｃｈ＝１の場合、証明者アルゴリズムＰは、返答Ｒｓｐ＝（ｒ１，ｔ０，ｅ０）を生成する。Ｃｈ＝２の場合、証明者アルゴリズムＰは、返答Ｒｓｐ＝（ｒ１，ｔ１，ｅ１）を生成する。工程＃３で生成された返答Ｒｓｐは、検証者アルゴリズムＶに送られる。
【０１６２】
工程＃４：
返答Ｒｓｐを受け取った検証者アルゴリズムＶは、受け取った返答Ｒｓｐを利用して以下の検証処理を実行する。
【０１６３】
Ｃｈ＝０の場合、検証者アルゴリズムＶは、ｃ１＝Ｈ（ｒ０−ｔ１，Ｆ（ｒ０）−ｅ１）の等号が成り立つか否かを検証する。さらに、検証者アルゴリズムＶは、ｃ２＝Ｈ（ｔ１，ｅ１）の等号が成り立つか否かを検証する。検証者アルゴリズムＶは、これらの検証が全て成功した場合に認証成功を示す値１を出力し、検証に失敗があった場合に認証失敗を示す値０を出力する。
【０１６４】
Ｃｈ＝１の場合、検証者アルゴリズムＶは、ｃ０＝Ｈ（ｒ１，Ｇ（ｔ０，ｒ１）＋ｅ０）の等号が成り立つか否かを検証する。さらに、検証者アルゴリズムＶは、ｃ１＝Ｈ（ｔ０，ｅ０）の等号が成り立つか否かを検証する。検証者アルゴリズムＶは、これらの検証が全て成功した場合に認証成功を示す値１を出力し、検証に失敗があった場合に認証失敗を示す値０を出力する。
【０１６５】
Ｃｈ＝２の場合、検証者アルゴリズムＶは、ｃ０＝Ｈ（ｒ１，ｙ−Ｆ（ｒ１）−Ｇ（ｔ１，ｒ１）−ｅ１）の等号が成り立つか否かを検証する。さらに、検証者アルゴリズムＶは、ｃ２＝Ｈ（ｔ１，ｅ１）の等号が成り立つか否かを検証する。検証者アルゴリズムＶは、これらの検証が全て成功した場合に認証成功を示す値１を出力し、検証に失敗があった場合に認証失敗を示す値０を出力する。
【０１６６】
以上、３パス方式に係る効率的なアルゴリズムの構成例について説明した。
【０１６７】
［７−２．並列化アルゴリズムの構成例］
次に、図１１を参照しながら、図１０に示した３パス方式のアルゴリズムを並列化する方法について説明する。図１１は、３パス方式に係る具体的なアルゴリズムの並列化について説明するための説明図である。なお、鍵生成アルゴリズムＧｅｎの構成については、上記［７−１．具体的なアルゴリズムの構成例］で説明した鍵生成アルゴリズムＧｅｎと同様であるため、ここでは詳細な説明を省略する。
【０１６８】
さて、上記の対話プロトコルを適用すれば、偽証が成功する確率を２／３以下に抑制することができる。従って、この対話プロトコルを２回実行すれば、偽証が成功する確率を（２／３）２以下に抑制することができる。更に、この対話プロトコルをＮ回実行すると、偽証が成功する確率は（２／３）Ｎとなり、Ｎを十分に大きい数（例えば、Ｎ＝１４０）にすれば、偽証が成功する確率は無視できる程度に小さくなる。
【０１６９】
対話プロトコルを複数回実行する方法としては、例えば、メッセージ、要求、返答のやり取りを逐次的に複数回繰り返す直列的な方法と、１回分のやり取りで複数回分のメッセージ、要求、返答のやり取りを行う並列的な方法とが考えられる。更に、直列的な方法と並列的な方法とを組み合わせたハイブリッド型の方法も考えられる。ここでは、図１１を参照しながら、３パス方式に係る上記の対話プロトコルを並列的に実行するアルゴリズム（以下、並列化アルゴリズム）について説明する。
【０１７０】
工程＃１：
図１１に示すように、まず、証明者アルゴリズムＰは、ｉ＝１〜Ｎについて以下の処理（１）〜処理（６）を実行する。
処理（１）：証明者アルゴリズムＰは、ランダムにベクトルｒ０ｉ，ｔ０ｉ∈Ｋｎ及びｅ０ｉ∈Ｋｍを生成する。
処理（２）：証明者アルゴリズムＰは、ｒ１ｉ←ｓ−ｒ０ｉを計算する。この計算は、秘密鍵ｓをベクトルｒ０ｉによりマスクする操作に相当する。さらに、証明者アルゴリズムＰは、ｔ１ｉ←ｒ０ｉ＋ｔ０ｉを計算する。
処理（３）：証明者アルゴリズムＰは、ｅ１ｉ←Ｆ（ｒ０ｉ）−ｅ０ｉを計算する。
処理（４）：証明者アルゴリズムＰは、ｃ０ｉ←Ｈ（ｒ１ｉ，Ｇ（ｒ１ｉ，ｔ０ｉ）＋ｅ０ｉ）を計算する。
処理（５）：証明者アルゴリズムＰは、ｃ１ｉ←Ｈ（ｔ０ｉ，ｅ０ｉ）を計算する。
処理（６）：証明者アルゴリズムＰは、ｃ２ｉ←Ｈ（ｔ１ｉ，ｅ１ｉ）を計算する。
【０１７１】
工程＃１（続き）
ｉ＝１〜Ｎについて上記の処理（１）〜処理（６）を実行した後、証明者アルゴリズムＰは、Ｃｍｔ←Ｈ（ｃ０１，ｃ１１，ｃ２１，…，ｃ０Ｎ，ｃ１Ｎ，ｃ２Ｎ）を計算する。工程＃１で生成されたハッシュ値Ｃｍｔは、検証者アルゴリズムＶに送られる。このように、メッセージ（ｃ０１，ｃ１１，ｃ２１，…，ｃ０Ｎ，ｃ１Ｎ，ｃ２Ｎ）をハッシュ値に変換してから検証者アルゴリズムＶに送ることで、通信量を削減することが可能になる。
【０１７２】
工程＃２：
ハッシュ値Ｃｍｔを受け取った検証者アルゴリズムＶは、ｉ＝１〜Ｎのそれぞれについて、３つの検証パターンのうち、どの検証パターンを利用するかを選択する。例えば、検証者アルゴリズムＶは、ｉ＝１〜Ｎのそれぞれについて、検証パターンの種類を表す３つの数値｛０，１，２｝の中から１つの数値を選択し、選択した数値を要求Ｃｈｉに設定する。要求Ｃｈ１，…，ＣｈＮは、証明者アルゴリズムＰに送られる。
【０１７３】
工程＃３：
要求Ｃｈ１，…，ＣｈＮを受け取った証明者アルゴリズムＰは、受け取った要求Ｃｈ１，…，ＣｈＮのそれぞれ応じて検証者アルゴリズムＶに送る返答Ｒｓｐ１，…，ＲｓｐＮを生成する。Ｃｈｉ＝０の場合、証明者アルゴリズムＰは、Ｒｓｐｉ＝（ｒ０ｉ，ｔ１ｉ，ｅ１ｉ，ｃ０ｉ）を生成する。Ｃｈｉ＝１の場合、証明者アルゴリズムＰは、Ｒｓｐｉ＝（ｒ１ｉ，ｔ０ｉ，ｅ０ｉ，ｃ２ｉ）を生成する。Ｃｈｉ＝２の場合、証明者アルゴリズムＰは、Ｒｓｐｉ＝（ｒ１ｉ，ｔ１ｉ，ｅ１ｉ，ｃ１ｉ）を生成する。
【０１７４】
工程＃３で生成された返答Ｒｓｐ１，…，ＲｓｐＮは、検証者アルゴリズムＶに送られる。
【０１７５】
工程＃４：
返答Ｒｓｐ１，…，ＲｓｐＮを受け取った検証者アルゴリズムＶは、受け取った返答Ｒｓｐ１，…，ＲｓｐＮを利用して以下の処理（１）〜処理（３）をｉ＝１〜Ｎについて実行する。但し、検証者アルゴリズムＶは、Ｃｈｉ＝０の場合に処理（１）を実行し、Ｃｈｉ＝１の場合に処理（２）を実行し、Ｃｈｉ＝２の場合に処理（３）を実行する。
【０１７６】
処理（１）：Ｃｈｉ＝０の場合、検証者アルゴリズムＶは、Ｒｓｐｉから（ｒ０ｉ，ｔ１ｉ，ｅ１ｉ，ｃ０ｉ）を取り出す。次いで、検証者アルゴリズムＶは、ｃ１ｉ＝Ｈ（ｒ０ｉ−ｔ１ｉ，Ｆ（ｒ０ｉ）−ｅ１ｉ）を計算する。さらに、検証者アルゴリズムＶは、ｃ２ｉ＝Ｈ（ｔ１ｉ，ｅ１ｉ）を計算する。そして、検証者アルゴリズムＶは、（ｃ０ｉ，ｃ１ｉ，ｃ２ｉ）を保持する。
【０１７７】
処理（２）：Ｃｈｉ＝１の場合、検証者アルゴリズムＶは、Ｒｓｐｉから（ｒ１ｉ，ｔ０ｉ，ｅ０ｉ，ｃ２ｉ）を取り出す。次いで、検証者アルゴリズムＶは、ｃ０ｉ＝Ｈ（ｒ１ｉ，Ｇ（ｔ０ｉ，ｒ１ｉ）＋ｅ０ｉ）を計算する。さらに、検証者アルゴリズムＶは、ｃ１ｉ＝Ｈ（ｔ０ｉ，ｅ０ｉ）を計算する。そして、検証者アルゴリズムＶは、（ｃ０ｉ，ｃ１ｉ，ｃ２ｉ）を保持する。
【０１７８】
処理（３）：Ｃｈｉ＝２の場合、検証者アルゴリズムＶは、Ｒｓｐｉから（ｒ１ｉ，ｔ１ｉ，ｅ１ｉ，ｃ１ｉ）を取り出す。次いで、検証者アルゴリズムＶは、ｃ０ｉ＝Ｈ（ｒ１ｉ，ｙ−Ｆ（ｒ１ｉ）−Ｇ（ｔ１ｉ，ｒ１ｉ）−ｅ１ｉ）を計算する。さらに、検証者アルゴリズムＶは、ｃ２ｉ＝Ｈ（ｔ１ｉ，ｅ１ｉ）を計算する。そして、検証者アルゴリズムＶは、（ｃ０ｉ，ｃ１ｉ，ｃ２ｉ）を保持する。
【０１７９】
処理（１）〜処理（３）をｉ＝１〜Ｎについて実行した後、検証者アルゴリズムＶは、Ｃｍｔ＝Ｈ（ｃ０１，ｃ１１，ｃ２１，…，ｃ０Ｎ，ｃ１Ｎ，ｃ２Ｎ）の等号が成り立つか否かを検証する。検証者アルゴリズムＶは、この検証が成功した場合に認証成功を示す値１を出力し、検証に失敗した場合に認証失敗を示す値０を出力する。
【０１８０】
以上、３パス方式に係る効率的な並列化アルゴリズムの構成例について説明した。
【０１８１】
なお、以上説明した、多次多変数連立方程式に対する求解問題の困難性を安全性の根拠とする公開鍵認証方式のより詳細な説明については、例えば、特開２０１２−９８６９０号公報等を参照することができる。
【０１８２】
以上図１０及び図１１を参照して説明したように、ＭＱ認証方式においては、公開鍵として多変数多項式が用いられる。公開鍵として多変数多項式が用いられることにより、例えば現在広く用いられているＲＳＡ方式やＥＣＣ方式と比べて、数学的な求解性の困難性を保ちつつ、公開鍵のサイズを小さくすることが可能となる。例えば、一般的なＲＳＡ方式、ＥＣＣ方式における公開鍵のサイズが、それぞれ、１０２４ｂｉｔ、１６０ｂｉｔ程度であるのに対して、ＭＱ認証方式では、公開鍵のサイズを、最小で８０ｂｉｔで作成することができる。
【０１８３】
例えば、公開鍵のサイズが８０ｂｉｔである場合、当該公開鍵を表す文字列は、平仮名であれば１５文字程度で構成することができる。従って、例えば、あるユーザが、公開鍵を表す文字列が表記されている様を目にした場合、当該文字列が自身のものであるかどうかを、直感的に判断しやすくなる。一方、従来のＲＳＡ方式やＥＣＣ方式では、公開鍵のサイズが大きくなる分、その公開鍵を表す文字列の文字数も多く（長さも長く）なる。従って、表記されている文字列が、自身のものであるかどうかを直感的に判断することは難しくなる。つまり、公開鍵認証方式としてＭＱ認証方式を用いることで、公開鍵のサイズを小さくすることができ、公開鍵を表す文字列に対するユーザの視認性を高くすることができる。
【０１８４】
従って、例えば、上記［３−１．情報処理装置（サーバ）］で説明したように、アクセス領域がストレージのデータ領域のうちの任意の領域に設けられたフォルダであり、当該フォルダに公開鍵が設定される場合に、公開鍵認証方式としてＭＱ認証方式を用いることで、更なる効果を得ることができる。例えば、上記［３−１．情報処理装置（サーバ）］で説明したように、フォルダに公開鍵を設定する際に、フォルダ名に公開鍵に対応する文字列を含ませることができる。公開鍵認証方式としてＭＱ認証方式を用いることで、その公開鍵に対応する文字列の長さをより短くすることができるため、フォルダ名が煩雑にならない。また、公開鍵に対応する文字列の長さをより短くすることができるため、フォルダ名に対するユーザの視認性を高くすることができ、例えばユーザが、画面上に表示されているフォルダの中から、自身が有する秘密鍵と対になる公開鍵が設定されているフォルダをより容易に発見することができるようになる。従って、公開鍵認証方式としてＭＱ認証方式を用いることで、共有システムにおけるユーザの利便性を向上させることができる。
【０１８５】
＜８．まとめ＞
以上説明したように、本開示の一実施形態によれば、以下の効果を得ることができる。
【０１８６】
本実施形態では、共有システムにおけるアクセス認証処理において、公開鍵認証方式に対応した公開鍵がアクセス対象のうちの任意の領域であるアクセス領域に設定され、当該公開鍵と対になる秘密鍵に対して、当該アクセス領域へのアクセスが認証される。従って、共有システムにおける安全性をより高くすることが可能となる。
【０１８７】
具体的には、本実施形態に係るアクセス認証処理は、例えば、オンラインストレージサービスを用いたデータ共有システムに対して好適に適用され得る。例えば、共有システムが、オンラインストレージサービスを用いたデータ共有システムである場合、アクセス対象は、当該ストレージのデータ領域のうちのあるユーザに割り当てられたデータ領域であってよく、アクセス領域は、そのあるユーザに割り当てられたデータ領域のうちの更に任意のデータ領域（共有領域）であってよい。共有領域に公開鍵認証方式に対応した公開鍵が設定され、当該公開鍵と対になる秘密鍵に対して、当該共有領域へのアクセスが認証されることにより、共有領域へのアクセスのセキュリティレベルを、より向上させることができる。また、共有領域にアクセス可能なユーザを、より確実に制限することが可能となる。
【０１８８】
また、本実施形態において適用される共有システムは、オンラインストレージサービスを用いたデータ共有システムに限定されない。例えば、アクセス対象は、物理的に施錠可能な筐体であり、アクセス認証処理によって、当該筐体の開錠が認証されてもよい。具体的には、例えば、アクセス対象は、施錠可能な複数のロッカーの集合体であり、アクセス領域はそのうちのいくつかのロッカーであってよい。公開鍵認証方式を用いたアクセス認証処理によってロッカーの開錠が行われることにより、より安全に荷物を保管することが可能になる。また、物理的な（有形な）鍵が用いられないため、物理的な鍵を用いる既存のロッカーにおいて起こり得る、鍵の紛失等のトラブルを回避することができる。
【０１８９】
更に、本実施形態において用いられる公開鍵認証方式の種類は、特に限定されるものではない。ただし、公開鍵認証方式として、多次多変数連立方程式に対する求解問題の困難性を安全性の根拠とする公開鍵認証方式、特にＭＱ認証方式を用いることにより、本実施形態において、より格別な効果を得ることができる。
【０１９０】
具体的には、公開鍵認証方式としてＭＱ認証方式を用いることで、公開鍵のサイズを小さくすることができ、公開鍵を表す文字列に対するユーザの視認性を高くすることができる。例えば、アクセス領域がストレージのデータ領域のうちの任意の領域に設けられたフォルダであり、当該フォルダに公開鍵が設定するために、フォルダ名に公開鍵に対応する文字列を含ませる場合について考える。その場合、公開鍵認証方式としてＭＱ認証方式を用いることで、公開鍵のサイズを小さくすることができ、その公開鍵に対応する文字列の長さをより短くすることができるため、フォルダ名が煩雑にならず、また、フォルダ名に対するユーザの視認性を高くすることができる。従って、公開鍵認証方式としてＭＱ認証方式を用いることで、共有システムにおけるユーザの利便性を向上させることができる。
【０１９１】
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
【０１９２】
なお、以下のような構成も本開示の技術的範囲に属する。
（１）公開鍵認証方式に対応した公開鍵を、アクセス対象のうちの任意の領域であるアクセス領域に設定する公開鍵設定部と、前記公開鍵と対になる秘密鍵に対して、前記アクセス領域へのアクセスを認証する装置認証処理部と、を備える、情報処理装置。
（２）前記公開鍵設定部は、複数の前記アクセス領域のそれぞれに対して、互いに異なる複数の前記公開鍵を設定し、前記装置認証処理部は、互いに異なる複数の前記公開鍵とそれぞれ対になる、互いに異なる複数の秘密鍵に対して、前記アクセス領域へのアクセスを認証する、前記（１）に記載の情報処理装置。
（３）前記アクセス領域は、記憶媒体におけるデータ領域の少なくとも一部領域である、前記（１）又は（２）に記載の情報処理装置。
（４）前記アクセス領域は、前記データ領域の一部領域に作成されたフォルダであり、前記公開鍵設定部は、前記公開鍵と前記フォルダとを関連付けることにより、前記公開鍵を前記フォルダに設定する、前記（３）に記載の情報処理装置。
（５）前記公開鍵設定部は、前記公開鍵に対応する文字列を前記フォルダのフォルダ名に含めることにより、前記公開鍵を前記フォルダに設定する、前記（４）に記載の情報処理装置。
（６）前記公開鍵設定部は、前記公開鍵に関する情報を、前記フォルダ内の設定ファイルに含めることにより、前記公開鍵を前記フォルダに設定する、前記（４）に記載の情報処理装置。
（７）前記公開鍵設定部は、前記公開鍵に関する情報を、前記フォルダの属性情報に含めることにより、前記公開鍵を前記フォルダに設定する、前記（４）に記載の情報処理装置。
（８）前記公開鍵設定部は、前記フォルダに対するアクセス権限に含まれる各権限に対して前記公開鍵を個別に設定する、前記（４）に記載の情報処理装置。
（９）前記アクセス権限は、前記フォルダに対する書き込み権限及び前記フォルダに対する読み込み権限の少なくともいずれかを含む、前記（８）に記載の情報処理装置。
（１０）前記公開鍵認証方式は、前記公開鍵が多次多変数連立方程式に対応し、前記秘密鍵が前記多次多変数連立方程式の解に対応する、ＭＱ認証方式である、前記（１）〜（９）のいずれか１項に記載の情報処理装置。
（１１）前記アクセス対象は、物理的に施錠可能な筐体であり、前記装置認証処理部は、前記アクセス領域へのアクセスを認証することで、前記筐体の開錠を認証する、前記（１）又は（２）に記載の情報処理装置。
（１２）公開鍵認証方式に対応した秘密鍵と対になる公開鍵が設定された、外部装置におけるアクセス対象のうちの任意の領域であるアクセス領域へのアクセスの認証を受ける端末認証処理部、を備える、情報処理端末。
（１３）前記アクセス領域は、前記外部装置における記憶媒体のデータ領域の少なくとも一部領域に設けられたフォルダであり、前記フォルダのうち、前記端末認証処理部による認証処理に対応した前記秘密鍵と対になる前記公開鍵が設定された前記フォルダのみを表示画面に表示させる表示制御部、を更に備える、前記（１２）に記載の情報処理装置。
（１４）公開鍵認証方式に対応した公開鍵を、アクセス対象のうちの任意の領域であるアクセス領域に設定するステップと、前記公開鍵と対になる秘密鍵に対して、前記アクセス領域へのアクセスを認証するステップと、を含む、アクセス認証方法。
（１５）コンピュータに、公開鍵認証方式に対応した公開鍵を、アクセス対象のうちの任意の領域であるアクセス領域に設定する機能と、前記公開鍵と対になる秘密鍵に対して、前記アクセス領域へのアクセスを認証する機能と、を実現させるためのプログラム。
【符号の説明】
【０１９３】
１０    サーバ（情報処理装置）
２０    ユーザ端末（情報処理端末）
１１０    装置通信部
１２０    ストレージ部
１３０    装置制御部
１３１    公開鍵設定部
１３２    装置認証処理部
２１０    端末通信部
２２０    端末記憶部
２３０    端末表示部
２４０    端末制御部
２４１    鍵生成部
２４２    装置認証処理部
２４３    表示制御部
６００    ロッカー
【図１】
2014081787.tif 000009
【図２】
2014081787.tif 000010
【図３Ａ】
2014081787.tif 000011
【図３Ｂ】
2014081787.tif 000012
【図３Ｃ】
2014081787.tif 000013
【図３Ｄ】
2014081787.tif 000014
【図４】
2014081787.tif 000015
【図５Ａ】
2014081787.tif 000016
【図５Ｂ】
2014081787.tif 000017
【図５Ｃ】
2014081787.tif 000018
【図６】
2014081787.tif 000019
【図７】
2014081787.tif 000020
【図８Ａ】
2014081787.tif 000021
【図８Ｂ】
2014081787.tif 000022
【図８Ｃ】
2014081787.tif 000023
【図８Ｄ】
2014081787.tif 000024
【図８Ｅ】
2014081787.tif 000025
【図９】
2014081787.tif 000026
【図１０】
2014081787.tif 000027
【図１１】
2014081787.tif 000028