(57)【要約】  問題生成部（２２１）は、問題を生成する。通信部（２３１）は、問題をユーザ装置に提示し、ユーザ装置から問題の回答を取得する。回答判定部（２２２）は、回答が正しいか否かを判定し、回答が正しい場合に、ユーザ装置からのアクセスを許可する。
2018216172.tif 000002
【特許請求の範囲】
【請求項１】
問題を生成する問題生成部と、
前記問題をユーザ装置に提示する問題提示部と、
前記ユーザ装置から前記問題の回答を取得する回答取得部と、
前記回答が正しいか否かを判定し、前記回答が正しい場合に、前記ユーザ装置からのアクセスを許可する回答判定部とを有する情報処理装置。
【請求項２】
前記問題提示部は、
前記問題を複数のユーザ装置に提示し、
前記回答取得部は、
前記複数のユーザ装置の各々から前記問題の回答を取得し、
前記回答判定部は、
前記複数のユーザ装置の各々からの回答が正しいか否かを判定し、正しい回答を行ったユーザ装置からのアクセスを許可する請求項１に記載の情報処理装置。
【請求項３】
前記問題生成部は、
前記回答取得部による前記複数のユーザ装置の各々からの回答の取得時期がランダムになると予想される問題を生成する請求項２に記載の情報処理装置。
【請求項４】
前記問題生成部は、
複数の正答がある問題を生成し、
前記回答判定部は、
いずれかのユーザ装置からの回答が正しい場合に、当該ユーザ装置からの正答が既に他のいずれかのユーザ装置から回答されている否かを判定し、
当該ユーザ装置からの正答が他のいずれのユーザ装置からも回答されていない場合に、当該ユーザ装置からのアクセスを許可し、
当該ユーザ装置からの正答が既に他のいずれかのユーザ装置から回答されている場合に、当該ユーザ装置からのアクセスを許可しない請求項２に記載の情報処理装置。
【請求項５】
前記問題生成部は、
ユーザ装置ごとに問題を生成し、
前記問題提示部は、
ユーザ装置ごとに対応する問題を提示する請求項２に記載の情報処理装置。
【請求項６】
前記問題生成部は、
前記問題提示部が問題を提示するユーザ装置の数に応じて問題の難易度を変化させる請求項２に記載の情報処理装置。
【請求項７】
前記回答判定部は、
正しい回答を行ったユーザ装置の数が規定数を超えるまでは、正しい回答を行ったユーザ装置からのアクセスを許可し、正しい回答を行ったユーザ装置の数が前記規定数を超えた後は、正しい回答を行ったユーザ装置からのアクセスを許可しない請求項２に記載の情報処理装置。
【請求項８】
前記回答取得部は、
前記ユーザ装置から、前記ユーザ装置を利用するユーザの個人識別情報が含まれる回答を取得し、
前記情報処理装置は、更に、
前記個人識別情報が正当であるか否かを判定する個人識別情報判定部を有し、
前記回答判定部は、
前記回答が正しく、前記個人識別情報が正当である場合に、前記ユーザ装置からのアクセスを許可する請求項１に記載の情報処理装置。
【請求項９】
前記情報処理装置は、更に、
前記個人識別情報を用いて、前記ユーザ装置のためのデータ処理を実行する処理実行部を有する請求項８に記載の情報処理装置。
【請求項１０】
コンピュータが、問題を生成し、
前記コンピュータが、前記問題をユーザ装置に提示し、
前記コンピュータが、前記ユーザ装置から前記問題の回答を取得し、
前記コンピュータが、前記回答が正しいか否かを判定し、前記回答が正しい場合に、前記ユーザ装置からのアクセスを許可する情報処理方法。
【請求項１１】
問題を生成する問題生成処理と、
前記問題をユーザ装置に提示する問題提示処理と、
前記ユーザ装置から前記問題の回答を取得する回答取得処理と、
前記回答が正しいか否かを判定し、前記回答が正しい場合に、前記ユーザ装置からのアクセスを許可する回答判定処理とをコンピュータに実行させる情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法及び情報処理プログラムに関する。
【背景技術】
【０００２】
多数のユーザ装置が単一もしくは少数のサーバ装置に一度にアクセスを行うと、ネットワークの負荷及びサーバ装置の負荷が一時的に増大する。このような場合には、サービスが低下する可能性又はサービスが停止する可能性がある。このようなアクセスの急増に対しては、サーバ装置の数を増加させること又はサーバ装置の処理能力を向上させることで対処可能であるが、一時的な高負荷への耐性だけを目的にサーバ装置の能力を向上させることはコスト面で非効率である。
この点、特許文献１及び特許文献２には、複数のユーザ装置からのサーバ装置へのアクセスの集中を緩和する方式が開示されている。特許文献１及び特許文献２の方式では、各ユーザ装置がサーバ装置にアクセスするタイミングをランダムに決定することで各ユーザ装置がサーバ装置にアクセスするタイミングを分散させている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１５−１１４９８０号公報
【特許文献２】特開２０１４−１３４８７４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１及び特許文献２の方式は、複数のユーザ装置が協調して動作する場合、もしくは複数のユーザ装置が利害関係なく動作する場合には問題なく機能する。しかしながら、先着順に処理を行うシステム（例えば販売／予約システム）などで、複数のユーザ装置が先を争ってサーバ装置にアクセスする場合には、特許文献１及び特許文献２の方式は、うまく機能しないという課題がある。
すなわち、特許文献１及び特許文献２の方式では、各ユーザ装置はランダムに決定されたアクセスタイミングを無視してサーバ装置にアクセスすることが可能である。このため、各ユーザ装置が決定されたアクセスタイミングを無視して利己的にサーバ装置にアクセスすると、アクセスの集中を緩和することができない。
各ユーザ装置のアクセスタイミングをサーバ装置が一元管理することで利己的なアクセスを防止することは可能である。しかし、このようなアクセスタイミングの一元管理はサーバ装置にとって別の負荷となる。【０００５】
本発明は上記の課題を解決することを主な目的とする。より具体的には、本発明は、ユーザ装置からのアクセスの集中を効果的に緩和することができる構成を得ることを主な目的する。
【課題を解決するための手段】
【０００６】
本発明に係る情報処理装置は、
問題を生成する問題生成部と、
前記問題をユーザ装置に提示する問題提示部と、
前記ユーザ装置から前記問題の回答を取得する回答取得部と、
前記回答が正しいか否かを判定し、前記回答が正しい場合に、前記ユーザ装置からのアクセスを許可する回答判定部とを有する。
【発明の効果】
【０００７】
本発明によれば、ユーザ装置が回答を行う時期がランダムになり、この結果、ユーザ装置からのアクセスの集中を効果的に緩和することができる。
【図面の簡単な説明】
【０００８】
【図１】実施の形態１に係る通信システムの構成例を示す図。
【図２】実施の形態１に係るサーバ装置の機能構成例を示す図。
【図３】実施の形態１に係るサーバ装置のハードウェア構成例を示す図。
【図４】実施の形態１に係るユーザ装置の機能構成例を示す図。
【図５】実施の形態１に係るユーザ装置のハードウェア構成例を示す図。
【図６】実施の形態１に係るサーバ乱数と目標値の例を示す図。
【図７】実施の形態１に係るサーバ乱数と目標値とユーザ乱数の例を示す図。
【図８】実施の形態１に係るサーバ装置とユーザ装置の動作例を示すフローチャート。
【図９】実施の形態２に係るサーバ装置の機能構成例を示す図。
【図１０】実施の形態２に係るユーザ装置の機能構成例を示す図。
【図１１】実施の形態２に係るサーバ乱数と目標値と個人識別情報とユーザ乱数の例を示す図。
【図１２】実施の形態２に係る個人識別情報の例を示す図。
【図１３】実施の形態２に係るサーバ装置とユーザ装置の動作例を示すフローチャート。
【発明を実施するための形態】
【０００９】
以下、本発明の実施の形態について、図を用いて説明する。以下の実施の形態の説明及び図面において、同一の符号を付したものは、同一の部分又は相当する部分を示す。
【００１０】
実施の形態１．
本実施の形態では、サーバ装置は、複数のユーザ装置にランダムなアクセスタイミングを指定する代わりに、回答に時間を要する問題を各ユーザ装置に与え、各ユーザ装置に問題を解かせる。そして、本実施の形態では、サーバ装置は、正しい回答を得たユーザ装置のみにアクセスを許可する。このようにすることで、結果的にアクセスタイミングを分散させ、アクセスの集中を緩和することが可能になる。また、このようにすることで、利己的なユーザ装置が勝手なタイミングでサーバ装置にアクセスすることも防止することができる。
【００１１】
＊＊＊構成の説明＊＊＊
図１は、本実施の形態に係る通信システム１０の構成例を示す。
ネットワーク１０１には多数のユーザ装置３０１が接続している。各ユーザ装置３０１は、サーバ装置２０１へのアクセスを試みる。
なお、サーバ装置２０１は、情報処理装置の例である。また、サーバ装置２０１により行われる動作は、情報処理方法及び情報処理プログラムの例である。
【００１２】
図２は、サーバ装置２０１の機能構成例を示す。
【００１３】
問題生成部２２１は、ユーザ装置３０１からのアクセスを許可するためにユーザ装置３０１に解かせる問題を生成する。問題生成部２２１は、生成が容易で、回答の確認も容易であり、回答の生成には時間を要し、事前に回答を準備することが困難である問題を生成する。つまり、問題生成部２２１は、複数のユーザ装置３０１の各々からの回答の取得時期がランダムになると予想される問題を生成する。問題生成部２２１は、例えば、「サーバ装置が生成した乱数ｒＳに対し、乱数ｒＳと連結して一方向性関数を適用した結果が目標値ｔ未満になるような乱数ｒを見つけよ（Ｈ（ｒＳ｜ｒ）＜ｔ、Ｈは例えばＳＨＡ−２５６などの一方向性関数、｜は連結）」のように回答が複数存在する問題を生成することができる。また、問題生成部２２１は、例えば、「二つの巨大な素数の積からなる合成数を素因数分解せよ」のように回答が決まっている問題を生成してもよい。なお、問題生成部２２１自身は回答を生成する必要はない。
問題生成部２２１が行う処理は問題生成処理に相当する。
【００１４】
通信部２３１は、ユーザ装置３０１との通信を行う。
より具体的には、通信部２３１は、問題生成部２２１が生成した問題をユーザ装置３０１に提示（送信）する。また、通信部２３１は、ユーザ装置３０１から問題の回答を取得（受信）する。
通信部２３１は、問題提示部と回答取得部の例である。
また、通信部２３１により行われる処理は問題提示処理と回答取得処理に相当する。
【００１５】
回答判定部２２２は、ユーザ装置３０１から受信した回答が、問題生成部２２１が生成した問題に対する正しい回答であるか否かを判定する。例えば、問題生成部２２１が前述の問題を生成した場合は、回答判定部２２２は、Ｈ（ｒＳ｜ｒ）を計算して、計算結果が目標値ｔ未満であるか否かを確認する。または、回答判定部２２２は、受信した素数の積が問題として与えた合成数と一致するか否かを確認する。回答判定部２２２も、自身で回答を生成する必要はない。
また、回答判定部２２２は、ユーザ装置３０１からの回答が正しい場合に、ユーザ装置３０１からのアクセスを許可する。具体的には、回答判定部２２２は、ユーザ装置３０１から処理実行部２２３へのアクセスを許可する。より詳細には、回答判定部２２２は、ユーザ装置３０１からの回答が正しい場合に、処理実行部２２３が当該ユーザ装置３０１のためのデータ処理を実行することを許可する。
なお、回答判定部２２２により行われる処理は回答判定処理に相当する。
【００１６】
処理実行部２２３は、回答判定部２２２から、ユーザ装置３０１のためのデータ処理の実行が許可された場合に、ユーザ装置３０１のためのデータ処理を実行する。処理実行部２２３は、任意のデータ処理を実行可能であるが、例えば、処理実行部２２３は、ユーザ装置３０１に対して販売／予約サービスを提供するためのデータ処理を実行する。
【００１７】
問題記憶部２１１は、問題生成部２２１が生成した問題を記憶する。図６は問題記憶部２１１が記憶するデータの一例を表す。図６の詳細は後述する。
【００１８】
回答記憶部２１２は、ユーザ装置３０１の回答生成部３２１が生成し、サーバ装置２０１の回答判定部２２２が正答であると確認した回答を記憶する。図７は回答記憶部２１２が記憶するデータの一例を表す。図７の詳細は後述する。
【００１９】
図３は、サーバ装置２０１のハードウェア構成例を示す。
【００２０】
サーバ装置２０１はコンピュータであり、サーバ装置２０１のハードウェア構成として、図３に示すように、バス９０１に、メモリ９１１、プロセッサ９１２、通信モジュール９１３、入力インタフェース９１４、ディスプレイ９１５が接続されている。
メモリ９１１は、例えばＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）などの主記憶装置や、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）やフラッシュメモリ、ハードディスク装置などの補助記憶装置である。
プロセッサ９１２は、例えば、プログラムを実行するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）である。
通信モジュール９１３は、データの通信処理を実行する電子回路である。通信モジュール９１３は、例えば通信ボードである。
入力インタフェース９１４は、サーバ装置２０１に対する入力データを処理するデバイスであり、例えば、タッチパネル、ハードボタン、マウス、キーボードなどである。
ディスプレイ９１５は、サーバ装置２０１による処理結果を表示するデバイスである。
サーバ装置２０１では、図２に示す問題生成部２２１、回答判定部２２２、処理実行部２２３及び通信部２３１をプログラムで実現することができる。
プログラムは、通常はメモリ９１１に記憶されており、プロセッサ９１２に読み込まれ、実行される。
図３では、問題生成部２２１、回答判定部２２２、処理実行部２２３及び通信部２３１を実現するプログラムをプロセッサ９１２が実行している状態を模式的に表している。
更に、メモリ９１１の外部記憶装置には、オペレーティングシステム（ＯＳ）も記憶されており、ＯＳの少なくとも一部が主記憶装置にロードされ、プロセッサ９１２は、ＯＳを実行しながら、上記プログラムを実行する。
また、以下の説明において、問題記憶部２１１、回答記憶部２１２が記憶する情報やデータ、問題生成部２２１、回答判定部２２２、処理実行部２２３、通信部２３１の処理の結果を示す情報やデータや信号値や変数値が、メモリ９１１にファイルとして記憶される。
【００２１】
なお、図３の構成は、あくまでもサーバ装置２０１のハードウェア構成の一例を示すものである。サーバ装置２０１のハードウェア構成は図３に記載の構成に限らず、他の構成であってもよい。
【００２２】
図４は、ユーザ装置３０１の機能構成例を示す。
【００２３】
通信部３３１は、サーバ装置２０１との通信を行う。
より具体的には、通信部３３１は、サーバ装置２０１から送信された問題を受信する。また、通信部３３１は、回答生成部３２１により生成された問題の回答をサーバ装置２０１に送信する。
【００２４】
回答生成部３２１は、サーバ装置２０１から受信した問題に対する回答を生成する。
【００２５】
処理実行部３２２は、回答生成部３２１が生成した回答がサーバ装置２０１に受理された場合に、ユーザ装置３０１が本来行うべきデータ処理を実行する。処理実行部３２２は、任意のデータ処理を実行可能であるが、例えば、処理実行部３２２は、サーバ装置２０１が提供する販売／予約サービスを受けるために必要なデータ処理を実行する。
【００２６】
図５は、ユーザ装置３０１のハードウェア構成例を示す。
【００２７】
ユーザ装置３０１はコンピュータであり、ユーザ装置３０１のハードウェア構成として、図５に示すように、バス９２１に、メモリ９３１、プロセッサ９３２、通信モジュール９３３、入力インタフェース９３４、ディスプレイ９３５が接続されている。
バス９２１は実質的にバス９０１と同じである。
また、メモリ９３１は実質的にメモリ９１１と同じであり、プロセッサ９３２は実質的にプロセッサ９１２と同じである。また、通信モジュール９３３は実質的に通信モジュール９１３と同じであり、入力インタフェース９３４は実質的に入力インタフェース９１４と同じであり、ディスプレイ９３５は実質的にディスプレイ９１５と同じである。
ユーザ装置３０１では、図４に示す回答生成部３２１、処理実行部３２２及び通信部３３１をプログラムで実現することができる。
プログラムは、通常はメモリ９３１に記憶されており、プロセッサ９３２に読み込まれ、実行される。
図５では、回答生成部３２１、処理実行部３２２及び通信部３３１を実現するプログラムをプロセッサ９３２が実行している状態を模式的に表している。
更に、メモリ９３１の外部記憶装置には、オペレーティングシステム（ＯＳ）も記憶されており、ＯＳの少なくとも一部が主記憶装置にロードされ、プロセッサ９３２は、ＯＳを実行しながら、上記プログラムを実行する。
また、以下の説明において、回答生成部３２１、処理実行部３２２、通信部３３１の処理の結果を示す情報やデータや信号値や変数値が、メモリ９３１にファイルとして記憶される。
【００２８】
なお、図５の構成は、あくまでもユーザ装置３０１のハードウェア構成の一例を示すものである。ユーザ装置３０１のハードウェア構成は図５に記載の構成に限らず、他の構成であってもよい。
【００２９】
＊＊＊動作の説明＊＊＊
次に、本実施の形態に係る通信システム１０の動作の流れを、図８のフローチャートを参照しながら説明する。ここでは一組のサーバ装置２０１とユーザ装置３０１に関する動作の流れを説明するが、サーバ装置２０１は複数のユーザ装置３０１に同じ処理を並行して行ってもよい。なお、ユーザ装置３０１とサーバ装置２０１との間の情報の送受信は通信部２３１と通信部３３１により行われる。
【００３０】
まず、ステップＳ１０１において、ユーザ装置３０１がサーバ装置２０１に対してアクセスを要求する。
【００３１】
次に、ステップＳ１０２において、サーバ装置２０１の問題生成部２２１が問題を生成し、生成した問題を問題記憶部２１１に保存する。
問題生成部２２１は、生成および回答確認が容易で、回答の生成には時間を要し、事前に回答を準備することが困難であるような問題を生成する。問題生成部２２１は、毎回全く異なるタイプの問題を生成してもよい。また、問題生成部２２１は、問題のひな形を事前に決めておき、問題の一部分だけを毎回生成してもよい。また、問題生成部２２１は、ユーザ装置３０１ごとに異なる問題を生成してもよいし、複数のユーザ装置３０１に対して同一の問題を利用してもよい（この場合はユーザ装置３０１ごとにステップＳ１０２を実行する必要はない）。
【００３２】
本実施の形態では、「サーバ装置が生成した乱数ｒＳに対し、乱数ｒＳと連結して一方向性関数を適用した結果が目標値ｔ未満になるような乱数ｒを見つけよ（Ｈ（ｒＳ｜ｒ）＜ｔ、Ｈは例えばＳＨＡ−２５６などの一方向性関数、｜は連結）」というひな形を事前に決めておくものとする。そして、ユーザ装置３０１からのアクセス要求があった際に、問題生成部２２１がサーバ乱数ｒＳを生成するものとする。目標値ｔは問題の難易度を決定するパラメータである。目標値ｔを変化させることで回答生成にかかる時間（および、単位時間あたりにユーザ装置３０１から受信すると予想される回答数）が変化する。このため、問題生成部２２１は、サーバ装置２０１の処理能力やユーザ装置３０１の数を考慮して目標値ｔを決定する。
また、本実施の形態では全ユーザ装置３０１に対して同一の問題を利用することとする。結果として、問題記憶部２１１には、問題を特定する情報として、図６のようにサーバ乱数ｒＳと目標値ｔが記憶される。
【００３３】
次に、ステップＳ１０３において、通信部２３１がユーザ装置３０１に問題を送信する。本実施の形態のように問題のひな形を事前に決めておく場合は、通信部２３１は、問題を特定する情報（本実施の形態ではサーバ乱数ｒＳと目標値ｔ）だけを送信すればよい。
【００３４】
サーバ装置２０１から問題を受信したユーザ装置３０１の回答生成部３２１は、ステップＳ１０４において、受信した問題に対する正しい回答を生成する。
回答生成部３２１の動作の詳細は問題の内容に依存するが、本実施の形態では、回答生成部３２１は、例えば、ユーザ乱数ｒを順次生成しながらＨ（ｒＳ｜ｒ）の値を計算し、Ｈ（ｒＳ｜ｒ）の値と目標値ｔとを比較する処理を、Ｈ（ｒＳ｜ｒ）の値が目標値ｔ未満になるまで繰り返す。
【００３５】
回答が生成できたユーザ装置３０１は、ステップＳ１０５において、サーバ装置２０１に回答を送信する。本実施の形態では、ユーザ装置３０１は、Ｈ（ｒＳ｜ｒ）＜ｔを満たすようなユーザ乱数ｒを送信する。
【００３６】
サーバ装置２０１では通信部２３１がユーザ装置３０１からの回答を受信し、通信部２３１が回答判定部２２２に回答を転送する。
回答判定部２２２は、ステップＳ１０６において、問題記憶部２１１を参照しながら、受信した回答が、生成した問題に対する正しい回答であるか否かを判定する。本実施の形態では、回答判定部２２２は、Ｈ（ｒＳ｜ｒ）＜ｔを満たすかどうかを判定する。
【００３７】
受信した回答が正しい場合（ステップＳ１０６でＹＥＳ）は、処理がステップＳ１０７に進む。
受信した回答が正しくない場合（ステップＳ１０６でＮＯ）は、処理が終了する（ユーザ装置３０１側でも以降の処理は実行されない）。
【００３８】
更に、回答判定部２２２は、ステップＳ１０７において、回答記憶部２１２を参照しながら、受信した回答が以前に他のユーザ装置３０１から受信した回答のいずれとも異なる、新たな回答であるかを確認する。
受信した回答が新たな回答である場合（ステップＳ１０７でＹＥＳ）は、処理がステップＳ１０８に進む。
一方、受信した回答が新たな回答でない場合（ステップＳ１０７でＮＯ）は、処理が終了する（ユーザ装置３０１側でも以降の処理は実行されない）。
【００３９】
本実施の形態では、ステップＳ１０７において、回答判定部２２２は、受信したユーザ乱数ｒが、対応する問題の回答であるユーザ乱数として、回答記憶部２１２に含まれていないことを確認する。
本ステップにおける確認は、あるユーザ装置３０１が生成した回答を他のユーザ装置３０１でも使い回すことで、サーバ装置２０１に想定よりも多い回答が到着し、アクセス集中緩和の効果が得られなくなることを防止することが目的である。
回答の使い回しが難しい場合、複数のユーザ装置３０１から同一の回答を受信した場合にもアクセスを許可する場合などでは、ステップＳ１０７及びステップＳ１０８を省略してもよい（この場合、回答記憶部２１２も不要である）。
【００４０】
以上の確認後、回答判定部２２２は、ステップＳ１０８において、受信した回答を対応する問題と関連付けて回答記憶部２１２に保存する。
本実施の形態では、回答判定部２２２は、受信したユーザ乱数を、サーバ乱数、目標値と関連付けて回答記憶部２１２に保存する。
同一の問題に対して複数のユーザ装置３０１が異なる回答を生成した場合、回答記憶部２１２には図７のような情報が記憶されることになる。
【００４１】
以上の処理が完了すると、サーバ装置２０１に対するユーザ装置３０１のアクセスが受理されたことになる。
具体的には、回答判定部２２２は、処理実行部２２３に、該当するユーザ装置３０１のためのデータ処理の実行が許可されたことを通知する。
以降、ステップＳ１０９及びステップＳ１１０において、サーバ装置２０１の処理実行部２２３と、ユーザ装置３０１の処理実行部３２２とが相互に通信を行い、通信システム１０で本来行うべき任意のデータ処理（例えば販売／予約サービスの提供）を実行する。つまり、処理実行部２２３は、ユーザ装置３０１のためのデータ処理を実行する。
【００４２】
＊＊＊実施の形態の効果の説明＊＊＊
以上により、ユーザ装置３０１からサーバ装置２０１へのアクセスのタイミングがランダムになり、サーバ装置２０１へのアクセスの集中を緩和することができる。
つまり、以上の処理によって、各ユーザ装置３０１は時間を要する回答生成処理（ステップＳ１０４）を行ってからサーバ装置２０１と本来行うべきデータ処理を実行することになる。各ユーザ装置３０１における回答生成処理時間にはばらつきが生じると考えられるため、結果的に各ユーザ装置３０１からのアクセスタイミングが自動的に分散される。このため、サーバ装置２０１へのアクセスの集中を緩和することができる。
【００４３】
また、正しい回答が得られるまでは本来行うべきデータ処理が実行できない（ステップＳ１０６で処理実行部２２３へのアクセスが拒否される）ため、ユーザ装置３０１が勝手なタイミングでサーバ装置２０１にアクセスするメリットがない。この結果、通信量やサーバ装置２０１の処理量を最小限に抑えることができる（アクセス集中を原因とする無駄な再送などが発生しない）。
【００４４】
また、本実施の形態のように、全ユーザ装置３０１に対して同一の問題を利用すれば、サーバ装置２０１で管理する情報量が少なくて済むという効果もある。すなわち、ユーザ装置３０１の数が多くなっても、サーバ装置２０１が管理する情報は、アクセスを受理したユーザ装置３０１に関するものだけでよい。
【００４５】
なお、本実施の形態では、ユーザ装置３０１からのアクセス要求（ステップＳ１０１）を受信してからサーバ装置２０１で問題を生成（ステップＳ１０２）している。これに代えて、サーバ装置２０１で問題をあらかじめ生成しておき、ユーザ装置３０１からのアクセス要求があれば直ちに問題をユーザ装置３０１に送信（ステップＳ１０３）するようにしてもよい。
【００４６】
また、販売／予約システムなどで販売／予約の開始時刻が決まっている場合は、サーバ装置２０１は、多数のユーザ装置３０１からのアクセス要求をあらかじめ受け付けておいて、開始時刻と同時に一斉に問題の送信を行ってもよい。一斉送信には同報通信が利用できる。また、サーバ装置２０１は、各ユーザ装置３０１に対して問題を送信するのではなく、問題を一般公開して、複数のユーザ装置３０１に問題を提示してもよい。こうすることで、ステップＳ１０１のアクセス要求が集中することも防止できる。
【００４７】
また、多数のユーザ装置３０１からのアクセス要求をあらかじめ受け付けておくことで問題生成部２２１は、ユーザ装置３０１の数を把握でき、サーバ装置２０１の処理能力を考慮して適切な難易度（目標値ｔ）を決定することができる。
【００４８】
また、本実施の形態では、問題の難易度（目標値ｔ）を事前に決めているが、問題生成部２２１は、問題生成部２２１が問題を提示するユーザ装置３０１の数に応じて問題の難易度を変化させてもよい。例えば、問題生成部２２１は、ステップＳ１０１で実際に受信されたアクセス要求の数に応じて難易度を動的に変化させてもよい。例えば、アクセス要求の数が想定よりも多かった場合に、問題生成部２２１は、難易度を再設定して問題を生成してもよい。
【００４９】
また、本実施の形態では、販売数／予約数に限りがある場合について言及していない。この点につき、回答判定部２２２は、正しい回答を行ったユーザ装置３０１の数が規定数（販売数／予約数）を超えるまでは、正しい回答を行ったユーザ装置からのアクセスを許可する。そして、正しい回答を行ったユーザ装置の数が規定数（販売数／予約数）を超えた後は、回答判定部２２２は、正しい回答を行ったユーザ装置からのアクセスを許可しないようにしてもよい。
また、処理実行部２２３で任意の処理が可能であるため、処理実行部２２３が販売／予約の打ち切りなどの処理を実行してもよい。同様に、アクセス受理後に抽選又はその他の処理を行う場合は、処理実行部２２３が抽選又はその他の処理を行うようにしてもよい。
【００５０】
実施の形態２．
例えばチケット販売システムにおいて、人気チケットの入手が困難であることから、チケットが高値で転売される場合があり、問題となることがある。
本実施の形態では、ユーザ装置３０１から送信される回答に個人識別情報を含ませる。また、本実施の形態では、サーバ装置２０１が回答に含まれる個人識別情報が正当であるか否かを判定する。このようにすることで、チケットの転売や、回答生成処理の外部委託を抑止することができる。
【００５１】
＊＊＊構成の説明＊＊＊
本実施の形態に係る通信システム１０の構成例は、図１に示すものと同じである。
【００５２】
図９は、本実施の形態に係るサーバ装置２０１の機能構成例を示す。
【００５３】
個人識別情報判定部２２４は、ユーザ装置３０１から受信した回答に含まれる個人識別情報が正当であるか否かを判定する。
回答判定部２２２は、ユーザ装置３０１から受信した回答が正しく、また、個人識別情報判定部２２４により個人識別情報が正当と判定された場合に、ユーザ装置３０１からのアクセスを許可する。
処理実行部２２３は、個人識別情報判定部２２４により正当と判定された個人識別情報を利用して、本来行うべきデータ処理を実行する。
また、回答記憶部２１２は、個人識別情報を含む回答を記憶する。図１１は回答記憶部２１２が記憶するデータの一例を表す。図１１の詳細は後述する。
上記以外の構成要素は、実施の形態１と同様であるため、説明を省略する。また、サーバ装置２０１のハードウェア構成例も、実施の形態１と同様であるため、説明を省略する。なお、個人識別情報判定部２２４は、問題生成部２２１等と同様に、プログラムで実現される。個人識別情報判定部２２４を実現するプログラムはプロセッサ９１２により実行される。
【００５４】
図１０は、本実施の形態に係るユーザ装置３０１の機能構成例を示す。
【００５５】
個人識別情報記憶部３１１は、通信システム１０でサービスを受ける個人（ユーザ装置３０１を利用するユーザ）を識別するための個人識別情報を記憶する。
個人識別情報記憶部３１１は、例えば、氏名、個人番号（マイナンバー、ソーシャルセキュリティナンバー等）、クレジットカード番号を個人識別情報として記憶する。また、個人識別情報記憶部３１１は、顔画像などのバイナリデータを個人識別情報として記憶してもよい。
図１２は個人識別情報記憶部３１１が記憶するデータの一例を表す。
回答生成部３２１は、サーバ装置２０１から受信した問題に対する回答を、個人識別情報を利用して生成する。
処理実行部３２２は、個人識別情報を利用して、本来行うべきデータ処理を実行する。
上記以外の構成要素は、実施の形態１と同様であるため、説明は省略する。また、ユーザ装置３０１のハードウェア構成例も、実施の形態１と同様であるため、説明は省略する。個人識別情報記憶部３１１は、例えばメモリ９３１により実現される。
【００５６】
＊＊＊動作の説明＊＊＊
次に、本実施の形態に係る通信システム１０の動作の流れを、図１３のフローチャートを参照しながら説明する。
本実施の形態では、実施の形態１と異なり、問題及び回答に個人識別情報が含まれる。また、本実施の形態では、実施の形態１と異なり、個人識別情報判定部２２４が、個人識別情報の正当性を判定し、処理実行部２２３と処理実行部３２２が個人識別情報を用いて本来のデータ処理を行う。
本実施の形態では、問題生成部２２１は、「サーバ装置が生成した乱数ｒＳに対し、乱数ｒＳおよび個人識別情報ｉｄと連結して一方向性関数を適用した結果が目標値ｔ未満になるような乱数ｒを見つけよ（Ｈ（ｒＳ｜ｉｄ｜ｒ）＜ｔ）」というひな形を利用して問題を生成する。なお、サーバ乱数ｒＳ及び目標値ｔは実施の形態１と同じである。
【００５７】
ステップＳ１０１からステップＳ１０７までは、実施の形態１と同様である。
本実施の形態では、ステップＳ１０２において、問題生成部２２１は、前述のように、個人識別情報ｉｄが含まれる問題を生成する。また、ステップＳ１０４において、回答生成部３２１は、回答に個人識別情報ｉｄを含ませる。つまり、通信部３３１は、ステップＳ１０５において、個人識別情報ｉｄとユーザ乱数ｒとが含まれる回答を送信する。
【００５８】
サーバ装置２０１の個人識別情報判定部２２４は、ステップＳ１５１において、ユーザ装置３０１から受信した回答に含まれる個人識別情報ｉｄが正当であるか否かを判定する。
個人識別情報ｉｄの正当性が確認できた場合（ステップＳ１５１でＹＥＳ）は、処理がステップＳ１０８に進む。
受信した個人識別情報ｉｄにフォーマットエラーがある場合、受信した個人識別情報ｉｄが存在しない個人識別情報である場合など、受信した個人識別情報ｉｄの正当性が確認できなかった場合（ステップＳ１５１でＮＯ）は、処理が終了する（ユーザ装置３０１側でも以降の処理は実行されない）。
【００５９】
以上の確認後、回答判定部２２２は、ステップＳ１０８において、受信した回答を対応する問題と関連付けて回答記憶部２１２に保存する。本実施の形態では、回答に個人識別情報ｉｄとユーザ乱数ｒとが含まれるため、回答記憶部２１２には例えば図１１のような情報が記憶されることになる。
【００６０】
以上の処理が完了すると、サーバ装置２０１に対するユーザ装置３０１のアクセスが受理されたことになる。
具体的には、回答判定部２２２は、処理実行部２２３に、該当するユーザ装置３０１のためのデータ処理の実行が許可されたことを通知する。
以降、ステップＳ１５２及びステップＳ１５３において、サーバ装置２０１の処理実行部２２３と、ユーザ装置３０１の処理実行部３２２とが相互に通信を行い、正当性が確認された個人識別情報ｉｄを利用して、通信システム１０で本来行うべき任意のデータ処理（例えば販売／予約サービスの提供）を実行する。
個人識別情報ｉｄがクレジットカード番号であれば、クレジットカード番号を利用して料金を引き落とすことが可能である。
また、個人識別情報ｉｄが氏名であれば、氏名をチケットに印字することが可能である。
また、個人識別情報ｉｄが顔画像であれば、顔画像をチケットに印字することが可能である。
【００６１】
＊＊＊実施の形態の効果の説明＊＊＊
以上のように、例えば氏名又は顔画像をチケットに印字することで、チケット転売業者が購入したチケットを不特定の利用者に転売することを防止できる。
また、チケット利用時に、チケット利用者に個人識別情報ｉｄを提示させてチケット利用者の正当性を確認する例を想定する。この場合に、例えば個人識別情報ｉｄにクレジットカード番号を利用していれば、チケット利用者がチケット転売業者にチケット購入（もしくは回答生成処理）を依頼することが抑止できる。つまり、チケット利用者は自分のクレジットカード番号をチケット転売業者に開示することを躊躇し、チケット転売業者も自分のクレジットカード番号をチケット利用者に開示することを躊躇するため、このような行為を抑止することができる。
なお、実施の形態１に記載したバリエーションは、本実施の形態についても同様に適用可能である。
【００６２】
以上、本発明の実施の形態について説明したが、これら２つの実施の形態を組み合わせて実施しても構わない。
あるいは、これら２つの実施の形態のうち、１つを部分的に実施しても構わない。
あるいは、これら２つの実施の形態を部分的に組み合わせて実施しても構わない。
なお、本発明は、これらの実施の形態に限定されるものではなく、必要に応じて種々の変更が可能である。
【００６３】
＊＊＊ハードウェア構成の説明＊＊＊
最後に、サーバ装置２０１及びユーザ装置３０１のハードウェア構成の補足説明を行う。
以上では、サーバ装置２０１の機能構成（問題生成部２２１、回答判定部２２２、処理実行部２２３、個人識別情報判定部２２４、通信部２３１）はプログラムで実現され、当該プログラムがプロセッサ９１２により実行されることを説明した。
これに代えて、サーバ装置２０１の機能構成（問題生成部２２１、回答判定部２２２、処理実行部２２３、個人識別情報判定部２２４、通信部２３１）が処理回路により実現されてもよい。処理回路は、例えば、ロジックＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）、ＧＡ（Ｇａｔｅ  Ａｒｒａｙ）、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）、ＦＰＧＡ（Ｆｉｅｌｄ−Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）である。
同様に、ユーザ装置３０１の機能構成（回答生成部３２１、処理実行部３２２、通信部３３１）はプログラムで実現され、当該プログラムがプロセッサ９３２により実行されることを説明した。
これに代えて、ユーザ装置３０１の機能構成（回答生成部３２１、処理実行部３２２、通信部３３１）が処理回路により実現されてもよい。処理回路は、例えば、ロジックＩＣ、ＧＡ、ＡＳＩＣ、ＦＰＧＡである。
なお、本明細書では、プロセッサと、メモリと、プロセッサとメモリの組合せと、処理回路との上位概念を、「プロセッシングサーキットリー」という。
つまり、プロセッサと、メモリと、プロセッサとメモリの組合せと、処理回路とは、それぞれ「プロセッシングサーキットリー」の具体例である。
【符号の説明】
【００６４】
１０  通信システム、１０１  ネットワーク、２０１  サーバ装置、２１１  問題記憶部、２１２  回答記憶部、２２１  問題生成部、２２２  回答判定部、２２３  処理実行部、２２４  個人識別情報判定部、２３１  通信部、３０１  ユーザ装置、３１１  個人識別情報記憶部、３２１  回答生成部、３２２  処理実行部、３３１  通信部、９０１  バス、９１１  メモリ、９１２  プロセッサ、９１３  通信モジュール、９１４  入力インタフェース、９１５  ディスプレイ、９２１  バス、９３１  メモリ、９３２  プロセッサ、９３３  通信モジュール、９３４  入力インタフェース、９３５  ディスプレイ。
【図１】
2018216172.tif 000003
【図２】
2018216172.tif 000004
【図３】
2018216172.tif 000005
【図４】
2018216172.tif 000006
【図５】
2018216172.tif 000007
【図６】
2018216172.tif 000008
【図７】
2018216172.tif 000009
【図８】
2018216172.tif 000010
【図９】
2018216172.tif 000011
【図１０】
2018216172.tif 000012
【図１１】
2018216172.tif 000013
【図１２】
2018216172.tif 000014
【図１３】
2018216172.tif 000015
【手続補正書】
【提出日】平成29年9月22日(2017.9.22)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
問題を生成する問題生成部と、
前記問題を複数のユーザ装置に提示する問題提示部と、
前記複数のユーザ装置の各々から前記問題の回答を取得する回答取得部と、
前記複数のユーザ装置の各々からの回答が正しいか否かを判定し、正しい回答を行ったユーザ装置からのアクセスを許可する回答判定部とを有し、
前記問題生成部は、
前記複数のユーザ装置の各々が正しい回答を生成できるまでの時間がランダムになると予想される問題を生成する情報処理装置。
【請求項２】
前記問題生成部は、
複数の正答がある問題を生成し、
前記回答判定部は、
いずれかのユーザ装置からの回答が正しい場合に、当該ユーザ装置からの正答が既に他のいずれかのユーザ装置から回答されている否かを判定し、
当該ユーザ装置からの正答が他のいずれのユーザ装置からも回答されていない場合に、当該ユーザ装置からのアクセスを許可し、
当該ユーザ装置からの正答が既に他のいずれかのユーザ装置から回答されている場合に、当該ユーザ装置からのアクセスを許可しない請求項１に記載の情報処理装置。
【請求項３】
前記問題生成部は、
ユーザ装置ごとに問題を生成し、
前記問題提示部は、
ユーザ装置ごとに対応する問題を提示する請求項１に記載の情報処理装置。
【請求項４】
前記問題生成部は、
前記問題提示部が問題を提示するユーザ装置の数に応じて問題の難易度を変化させる請求項１に記載の情報処理装置。
【請求項５】
前記回答判定部は、
正しい回答を行ったユーザ装置の数が規定数を超えるまでは、正しい回答を行ったユーザ装置からのアクセスを許可し、正しい回答を行ったユーザ装置の数が前記規定数を超えた後は、正しい回答を行ったユーザ装置からのアクセスを許可しない請求項１に記載の情報処理装置。
【請求項６】
前記回答取得部は、
前記複数のユーザ装置の各々から、各ユーザ装置を利用するユーザの個人識別情報が含まれる回答を取得し、
前記情報処理装置は、更に、
前記個人識別情報が正当であるか否かを判定する個人識別情報判定部を有し、
前記回答判定部は、
前記回答が正しく、前記個人識別情報が正当であるユーザ装置からのアクセスを許可する請求項１に記載の情報処理装置。
【請求項７】
前記情報処理装置は、更に、
前記個人識別情報を用いて、前記回答が正しく、前記個人識別情報が正当であるユーザ装置のためのデータ処理を実行する処理実行部を有する請求項６に記載の情報処理装置。
【請求項８】
コンピュータが、問題を生成する問題生成処理と、
前記コンピュータが、前記問題を複数のユーザ装置に提示する問題提示処理と、
前記コンピュータが、前記複数のユーザ装置の各々から前記問題の回答を取得する回答取得処理と、
前記コンピュータが、前記複数のユーザ装置の各々からの回答が正しいか否かを判定し、正しい回答を行ったユーザ装置からのアクセスを許可する回答判定処理とを有し、
前記問題生成処理において、
前記コンピュータは、前記複数のユーザ装置の各々が正しい回答を生成できるまでの時間がランダムになると予想される問題を生成する情報処理方法。
【請求項９】
問題を生成する問題生成処理と、
前記問題を複数のユーザ装置に提示する問題提示処理と、
前記複数のユーザ装置の各々から前記問題の回答を取得する回答取得処理と、
前記複数のユーザ装置の各々からの回答が正しいか否かを判定し、正しい回答を行ったユーザ装置からのアクセスを許可する回答判定処理とをコンピュータに実行させ、
前記問題生成処理において、
前記コンピュータに、前記複数のユーザ装置の各々が正しい回答を生成できるまでの時間がランダムになると予想される問題を生成させる情報処理プログラム。
【国際調査報告】
2018216172.tif 000016
2018216172.tif 000017
2018216172.tif 000018
2018216172.tif 000019