(57)【要約】【課題】所定の場所への訪問確認のためのシステム、プログラム、携帯端末装置、サーバ及び方法を提供すること。【解決手段】携帯端末装置のユーザが所定の場所を訪れたことを確認するために使用されるシステムであって、前記システムは携帯端末装置及びサーバを備え、当該サーバは制御装置及び１以上の無線装置を含み、１以上の無線装置がサービス通知を送信し、携帯端末装置が訪問確認要求を送信し、少なくとも１つの無線装置がタスク通知を送信し、携帯端末装置がタスク通知に基づいてタスクを実行し、タスク完了通知を繰り返し送信し、少なくとも１つの無線装置が解答要求を送信し、携帯端末装置が解答通知を送信し、少なくとも１つの無線装置が携帯端末装置から送信された解答通知を受信し、制御装置が解答通知に基づいて訪問確認要求の正当性を判定する、システム。【選択図】図１
2019040549.tif 000002
【特許請求の範囲】
【請求項１】
携帯端末装置のユーザが所定の場所を訪れたことを確認するために使用されるシステムであって、前記システムは携帯端末装置及びサーバを備え、当該サーバは制御装置及び１以上の無線装置を含み、
前記１以上の無線装置が、訪問確認サービスが利用可能であることを通知するサービス通知を送信し、
前記携帯端末装置が、前記サービス通知を受信すると、当該携帯端末装置のユーザを識別するユーザ識別子を含む訪問確認要求を送信し、
前記１以上の無線装置のうちの少なくとも１つの無線装置が、前記訪問確認要求を受信し、前記ユーザ識別子に紐付けられたトークン及びタスクを通知するタスク通知を送信し、
前記携帯端末装置が、前記タスク通知に基づいてタスクを実行し、
前記携帯端末装置が、前記タスクを完了すると、前記トークンを含むタスク完了通知を繰り返し送信し、
前記１以上の無線装置のうちの少なくとも１つの無線装置が、前記タスク完了通知が繰り返し送信されたことを確認すると、タスクの出力である解答を要求する解答要求を送信し、
前記携帯端末装置が、前記解答要求を受信すると、前記タスクの解答を含む解答通知を送信し、
前記１以上の無線装置のうちの少なくとも１つの無線装置が、前記携帯端末装置から送信された解答通知を受信し、
前記制御装置が、前記解答通知に基づいて前記訪問確認要求の正当性を判定する、
システム。
【請求項２】
前記訪問確認要求の正当性を判定することは、時間的密度正当性判定のための所定時間内に前記１以上の無線装置によって受信された前記ユーザ識別子に紐付けられたトークンを含むタスク完了通知の数が所定の範囲内であるか否かにも基づいて行われる、
請求項１に記載のシステム。
【請求項３】
前記訪問確認要求の正当性を判定することは、前記１以上の無線装置のうち、前記ユーザ識別子に紐付けられたトークンを含むタスク完了通知を受信した無線装置が空間的密度正当性判定のための所定期間内に受信したタスク完了通知の数が、空間的密度上限値を超えないか否かにも基づいて行われる、
請求項１または２に記載のシステム。    
【請求項４】
前記タスクは前記トークンに紐付けられた合成数の素因数分解であり、
前記解答通知は、前記合成数の素因数分解の実行によって得られた素数を含む、
請求項１〜３のいずれか１項に記載のシステム。
【請求項５】
携帯端末装置のユーザが所定の場所を訪れたことを確認するために使用されるサーバであって、当該サーバは制御装置及び１以上の無線装置を含み、
前記１以上の無線装置が、訪問確認サービスが利用可能であることを通知するサービス通知を送信し、
前記１以上の無線装置のうちの少なくとも１つの無線装置が、携帯端末装置から送信されたユーザ識別子を含む訪問確認要求を受信し、前記ユーザ識別子に紐付けられたトークン及びタスクを通知するタスク通知を送信し、
前記１以上の無線装置のうちの少なくとも１つの無線装置が、前記携帯端末装置からタスク完了通知が繰り返し送信されたことを確認すると、タスクの出力である解答を要求する解答要求を送信し、
前記１以上の無線装置のうちの少なくとも１つの無線装置が、前記携帯端末装置から送信された解答通知を受信し、
前記制御装置が、前記解答通知に基づいて前記訪問確認要求の正当性を判定する、
サーバ。
【請求項６】
携帯端末装置のユーザが所定の場所を訪れたことを確認するために使用される携帯端末装置であって、
１以上の無線装置から送信されたサービス通知を受信すると、当該携帯端末装置のユーザを識別するユーザ識別子を含む訪問確認要求を送信し、
前記１以上の無線装置のうちの少なくとも１つの無線装置から受信された、前記ユーザ識別子に紐付けられたトークン及びタスクを通知するタスク通知に基づいてタスクを実行し、
前記タスクを完了すると、前記トークンを含むタスク完了通知を繰り返し送信し、
前記携帯端末装置が、前記１以上の無線装置のうちの少なくとも１つの無線装置から解答要求を受信すると、タスクの解答を含む解答通知を送信する、
携帯端末装置。
【請求項７】
携帯端末装置のユーザが所定の場所を訪れたことを確認するために使用されるシステムのための一組のプログラムであって、前記システムは携帯端末装置及びサーバを備え、当該サーバは制御装置及び１以上の無線装置を含み、前記一組のプログラムは、
前記１以上の無線装置に、訪問確認サービスが利用可能であることを通知するサービス通知を送信する段階と、
前記携帯端末装置に、前記サービス通知を受信すると、当該携帯端末装置のユーザを識別するユーザ識別子を含む訪問確認要求を送信する段階と、
前記１以上の無線装置のうちの少なくとも１つの無線装置に、前記訪問確認要求を受信し、前記ユーザ識別子に紐付けられたトークン及びタスクを通知するタスク通知を送信する段階と、
前記携帯端末装置に、前記タスク通知に基づいてタスクを実行する段階と、
前記携帯端末装置に、前記タスクを完了すると、前記トークンを含むタスク完了通知を繰り返し送信する段階と、
前記１以上の無線装置のうちの少なくとも１つの無線装置に、前記タスク完了通知が繰り返し送信されたことを確認すると、タスクの出力である解答を要求する解答要求を送信する段階と、
前記携帯端末装置に、前記解答要求を受信すると、前記タスクの解答を含む解答通知を送信する段階と、
前記１以上の無線装置のうちの少なくとも１つの無線装置に、前記携帯端末装置から送信された解答通知を受信する段階と、
前記制御装置に、前記解答通知に基づいて前記訪問確認要求の正当性を判定する段階と、
を実行させる一組のプログラム。
【請求項８】
携帯端末装置のユーザが所定の場所を訪れたことを確認するために使用されるプログラムであって、前記プログラムは、制御装置及び１以上の無線装置を含むサーバに、
訪問確認サービスが利用可能であることを通知するサービス通知を送信する段階と、
携帯端末装置から送信されたユーザ識別子を含む訪問確認要求を受信し、前記ユーザ識別子に紐付けられたトークン及びタスクを通知するタスク通知を送信する段階と、
前記１以上の無線装置のうちの少なくとも１つの無線装置が、タスクの出力である解答を要求する解答要求を送信する段階と、
前記１以上の無線装置のうちの少なくとも１つの無線装置が、前記携帯端末装置からタスク完了通知が繰り返し送信されたことを確認すると、前記携帯端末装置から送信された解答通知を受信する段階と、
前記制御装置が、前記解答通知に基づいて前記訪問確認要求の正当性を判定する段階と、
を実行させるプログラム。
【請求項９】
携帯端末装置のユーザが所定の場所を訪れたことを確認するために使用されるプログラムであって、前記プログラムは携帯端末装置に、
１以上の無線装置から送信されたサービス通知を受信すると、当該携帯端末装置のユーザを識別するユーザ識別子を含む訪問確認要求を送信する段階と、
前記１以上の無線装置のうちの少なくとも１つの無線装置から受信された、前記ユーザ識別子に紐付けられたトークン及びタスクを通知するタスク通知に基づいてタスクを実行する段階と、
前記タスクを完了すると、前記トークンを含むタスク完了通知を繰り返し送信する段階と、
前記携帯端末装置が、前記１以上の無線装置のうちの少なくとも１つの無線装置から解答要求を受信すると、タスクの解答を含む解答通知を送信する段階と、
を実行させるプログラム。
【請求項１０】
携帯端末装置のユーザが所定の場所を訪れたことを確認するために使用されるシステムによって実行される方法であって、前記システムは携帯端末装置及びサーバを備え、当該サーバは制御装置及び１以上の無線装置を含み、前記方法は、
前記１以上の無線装置が、訪問確認サービスが利用可能であることを通知するサービス通知を送信する段階と、
前記携帯端末装置が、前記サービス通知を受信すると、当該携帯端末装置のユーザを識別するユーザ識別子を含む訪問確認要求を送信する段階と、
前記１以上の無線装置のうちの少なくとも１つの無線装置が、前記訪問確認要求を受信し、前記ユーザ識別子に紐付けられたトークン及びタスクを通知するタスク通知を送信する段階と、
前記携帯端末装置が、前記タスク通知に基づいてタスクを実行する段階と、
前記携帯端末装置が、前記タスクを完了すると、前記トークンを含むタスク完了通知を繰り返し送信する段階と、
前記１以上の無線装置のうちの少なくとも１つの無線装置が、前記タスク完了通知が繰り返し送信されたことを確認すると、タスクの出力である解答を要求する解答要求を送信する段階と、
前記携帯端末装置が、前記解答要求を受信すると、前記タスクの解答を含む解答通知を送信する段階と、
前記１以上の無線装置のうちの少なくとも１つの無線装置が、前記携帯端末装置から送信された解答通知を受信する段階と、
前記制御装置が、前記解答通知に基づいて前記訪問確認要求の正当性を判定する段階と、
を含む方法。
【請求項１１】
携帯端末装置のユーザが所定の場所を訪れたことを確認するために使用され、制御装置と１以上の無線装置を備えるサーバによって実行される方法であって、
訪問確認サービスが利用可能であることを通知するサービス通知を送信する段階と、
携帯端末装置から送信されたユーザ識別子を含む訪問確認要求を受信し、前記ユーザ識別子に紐付けられたトークン及びタスクを通知するタスク通知を送信する段階と、
前記１以上の無線装置のうちの少なくとも１つの無線装置が、前記携帯端末装置からタスク完了通知が繰り返し送信されたことを確認すると、タスクの出力である解答を要求する解答要求を送信する段階と、
前記１以上の無線装置のうちの少なくとも１つの無線装置が、前記携帯端末装置から送信された解答通知を受信する段階と、
前記制御装置が、前記解答通知に基づいて前記訪問確認要求の正当性を判定する段階と、
を含む方法。
【請求項１２】
携帯端末装置のユーザが所定の場所を訪れたことを確認するために使用される携帯端末装置によって実行される方法であって、
サーバに含まれる１以上の無線装置から送信されたサービス通知を受信すると、当該携帯端末装置のユーザを識別するユーザ識別子を含む訪問確認要求を送信する段階と、
前記１以上の無線装置のうちの少なくとも１つの無線装置から受信された、前記ユーザ識別子に紐付けられたトークン及びタスクを通知するタスク通知に基づいてタスクを実行する段階と、
前記タスクを完了すると、前記トークンを含むタスク完了通知を繰り返し送信する段階と、
前記携帯端末装置が、前記１以上の無線装置のうちの少なくとも１つの無線装置から解答要求を受信すると、タスクの解答を含む解答通知を送信する段階と、
を含む方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、所定の場所への訪問確認のためのシステム、プログラム、携帯端末装置、サーバ及び方法に関する。
【背景技術】
【０００２】
店舗等の所定の場所を訪れた者に対して店舗やオンラインゲームにおける特典を与えるサービスが知られている。特許文献１は、ＧＰＳを用いて位置を特定し、登録された店舗等を訪問したことを確認するチェックイン処理を実行してネットゲームのためのポイントを提供するシステムを開示する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−０００５５２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
所定の場所を訪れたユーザに対して店舗やゲーム等の特典を与えるチェックインサービスを提供する際に、ＧＰＳを用いてユーザ等の位置を特定するシステムを採用した場合、悪意のある者が位置情報を改竄することによって、実際には所定の場所を訪れていないにもかかわらず、そこを訪れたと偽って特典を不正に取得されるおそれがある。
【０００５】
近距離型の無線通信（ＮＦＣ（Near Field Radio Communication））を用いて、所定の場所にユーザが訪問したことを検知することも可能である。ＮＦＣは、偽造防止や暗号化のための仕組みが設計当初から組み込まれており、ＮＦＣを搭載する携帯端末装置と、ＮＦＣリーダとの間においてセキュアな通信セッションをアドホックに確立する。これにより、ペアリング等の追加処理なくＮＦＣリーダに携帯端末を近づけるだけで、所定位置でのチェックインを実行する機能を容易に実現することができる。しかし、ＮＦＣの通信可能範囲は１０ｃｍ程度以下と狭く、また、指向性も比較的強いため、ＮＦＣリーダに携帯端末をかざす必要がある。そのため、ある特定のエリアに集まった大量のユーザ群を、同時にチェックインさせることはできない。
【０００６】
大量のユーザ群を同時にチェックインさせる方式としては、ＢＬＥ（Bluetooth（登録商標） Low Energy）ビーコンや２次元コードを用いる方式が考えられる。ＢＬＥビーコンを用いた方式においては、ＢＬＥビーコンと呼ばれる超小型デバイスが、ＵＵＩＤやＵＲＬを埋め込んだＢＬＥのアドバタイジングパケットを周囲にブロードキャストし、これを受信した携帯端末装置に現在位置に応じた動作を取らせることが可能である。しかしながら、この方式では、不正なアプリケーションを用いてビーコンを受信することができ、そのビーコンをネットワーク上に転送するスニッフィングにより、１台のデバイスが複数のデバイスの代理を行い、遠隔地に存在するユーザのための認証を得ることができる。
【０００７】
また、２次元コードは、例えば代表的な２次元コードであるＱＲコード（登録商標）であれば、バイナリで最大２，９５３バイトまでを、印刷物の上にエンコードすることができるため、ネットワーク識別子となるＵＲＬなどを格納し、チェックインのためのエントリーポイントとすることができる。しかしながら、２次元コードは、単純な印刷物であるため、カメラで撮影し、画像として保存するだけで、容易に複製可能である。したがって、ネットワーク上に２次元コードが不正に流通することを防止することはできない。
【０００８】
このように、不正を防止する耐タンパ性を有しつつ、大量のユーザの所定の場所への訪問を同時に確認できるスケーラビリティを有するチェックインサービスを提供するためシステムは実現されていない。
【課題を解決するための手段】
【０００９】
本発明は上記の課題に鑑みてなされたものであり、以下のような特徴を有している。すなわち、本発明の一実施態様におけるシステムは、携帯端末装置のユーザが所定の場所を訪れたことを確認するために使用されるシステムであって、前記システムは携帯端末装置及びサーバを備え、当該サーバは制御装置及び１以上の無線装置を含み、前記１以上の無線装置が、訪問確認サービスが利用可能であることを通知するサービス通知を送信し、前記携帯端末装置が、前記サービス通知を受信すると、当該携帯端末装置のユーザを識別するユーザ識別子を含む訪問確認要求を送信し、前記１以上の無線装置のうちの少なくとも１つの無線装置が、前記訪問確認要求を受信し、前記ユーザ識別子に紐付けられたトークン及びタスクを通知するタスク通知を送信し、前記携帯端末装置が、前記タスク通知に基づいてタスクを実行し、前記携帯端末装置が、前記タスクを完了すると、前記トークンを含むタスク完了通知を繰り返し送信し、前記１以上の無線装置のうちの少なくとも１つの無線装置が、前記タスク完了通知が繰り返し送信されたことを確認すると、タスクの出力である解答を要求する解答要求を送信し、前記携帯端末装置が、前記解答要求を受信すると、前記タスクの解答を含む解答通知を送信し、前記１以上の無線装置のうちの少なくとも１つの無線装置が、前記携帯端末装置から送信された解答通知を受信し、前記制御装置が、前記解答通知に基づいて前記訪問確認要求の正当性を判定する。
【００１０】
前記訪問確認要求の正当性を判定することは、時間的密度正当性判定のための所定時間内に前記１以上の無線装置によって受信された前記ユーザ識別子に紐付けられたトークンを含むタスク完了通知の数が所定の範囲内であるか否かにも基づいて行われてもよい。
【００１１】
前記訪問確認要求の正当性を判定することは、前記１以上の無線装置のうち、前記ユーザ識別子に紐付けられたトークンを含むタスク完了通知を受信した無線装置が空間的密度正当性判定のための所定期間内に受信したタスク完了通知の数が、空間的密度上限値を超えないか否かにも基づいて行われてもよい。    
【００１２】
前記タスクを前記トークンに紐付けられた合成数の素因数分解とすることができ、前記解答通知は、前記合成数の素因数分解の実行によって得られた素数を含むこともできる。
【００１３】
本発明の一実施態様におけるサーバは、携帯端末装置のユーザが所定の場所を訪れたことを確認するために使用されるサーバであって、当該サーバは制御装置及び１以上の無線装置を含み、前記１以上の無線装置が、訪問確認サービスが利用可能であることを通知するサービス通知を送信し、前記１以上の無線装置のうちの少なくとも１つの無線装置が、携帯端末装置から送信されたユーザ識別子を含む訪問確認要求を受信し、前記ユーザ識別子に紐付けられたトークン及びタスクを通知するタスク通知を送信し、前記１以上の無線装置のうちの少なくとも１つの無線装置が、前記携帯端末装置からタスク完了通知が繰り返し送信されたことを確認すると、タスクの出力である解答を要求する解答要求を送信し、前記１以上の無線装置のうちの少なくとも１つの無線装置が、前記携帯端末装置から送信された解答通知を受信し、前記制御装置が、前記解答通知に基づいて前記訪問確認要求の正当性を判定する。
【００１４】
本発明の一実施態様における携帯端末装置は、携帯端末装置のユーザが所定の場所を訪れたことを確認するために使用される携帯端末装置であって、１以上の無線装置から送信されたサービス通知を受信すると、当該携帯端末装置のユーザを識別するユーザ識別子を含む訪問確認要求を送信し、前記１以上の無線装置のうちの少なくとも１つの無線装置から受信された、前記ユーザ識別子に紐付けられたトークン及びタスクを通知するタスク通知に基づいてタスクを実行し、前記タスクを完了すると、前記トークンを含むタスク完了通知を繰り返し送信し、前記携帯端末装置が、前記１以上の無線装置のうちの少なくとも１つの無線装置から解答要求を受信すると、タスクの解答を含む解答通知を送信する。
【００１５】
また、本発明の一つの実施態様における一組のプログラムは、携帯端末装置のユーザが所定の場所を訪れたことを確認するために使用されるシステムのための一組のプログラムであって、前記システムは携帯端末装置及びサーバを備え、当該サーバは制御装置及び１以上の無線装置を含み、前記一組のプログラムは、前記１以上の無線装置に、訪問確認サービスが利用可能であることを通知するサービス通知を送信する段階と、前記携帯端末装置に、前記サービス通知を受信すると、当該携帯端末装置のユーザを識別するユーザ識別子を含む訪問確認要求を送信する段階と、前記１以上の無線装置のうちの少なくとも１つの無線装置に、前記訪問確認要求を受信し、前記ユーザ識別子に紐付けられたトークン及びタスクを通知するタスク通知を送信する段階と、前記携帯端末装置に、前記タスク通知に基づいてタスクを実行する段階と、前記携帯端末装置に、前記タスクを完了すると、前記トークンを含むタスク完了通知を繰り返し送信する段階と、前記１以上の無線装置のうちの少なくとも１つの無線装置に、前記タスク完了通知が繰り返し送信されたことを確認すると、タスクの出力である解答を要求する解答要求を送信する段階と、前記携帯端末装置に、前記解答要求を受信すると、前記タスクの解答を含む解答通知を送信する段階と、前記１以上の無線装置のうちの少なくとも１つの無線装置に、前記携帯端末装置から送信された解答通知を受信する段階と、前記制御装置に、前記解答通知に基づいて前記訪問確認要求の正当性を判定する段階と、を実行させる。
【００１６】
また、本発明の一実施態様におけるプログラムは、携帯端末装置のユーザが所定の場所を訪れたことを確認するために使用されるプログラムであって、前記プログラムは、制御装置及び１以上の無線装置を含むサーバに、訪問確認サービスが利用可能であることを通知するサービス通知を送信する段階と、携帯端末装置から送信されたユーザ識別子を含む訪問確認要求を受信し、前記ユーザ識別子に紐付けられたトークン及びタスクを通知するタスク通知を送信する段階と、前記１以上の無線装置のうちの少なくとも１つの無線装置が、タスクの出力である解答を要求する解答要求を送信する段階と、前記１以上の無線装置のうちの少なくとも１つの無線装置が、前記携帯端末装置からタスク完了通知が繰り返し送信されたことを確認すると、前記携帯端末装置から送信された解答通知を受信する段階と、前記制御装置が、前記解答通知に基づいて前記訪問確認要求の正当性を判定する段階と、を実行させる。
【００１７】
本発明の一実施態様におけるプログラムは、携帯端末装置のユーザが所定の場所を訪れたことを確認するために使用されるプログラムであって、前記プログラムは携帯端末装置に、１以上の無線装置から送信されたサービス通知を受信すると、当該携帯端末装置のユーザを識別するユーザ識別子を含む訪問確認要求を送信する段階と、前記１以上の無線装置のうちの少なくとも１つの無線装置から受信された、前記ユーザ識別子に紐付けられたトークン及びタスクを通知するタスク通知に基づいてタスクを実行する段階と、前記タスクを完了すると、前記トークンを含むタスク完了通知を繰り返し送信する段階と、前記携帯端末装置が、前記１以上の無線装置のうちの少なくとも１つの無線装置から解答要求を受信すると、タスクの解答を含む解答通知を送信する段階と、を実行させる。
【００１８】
本発明の一つの実施態様における方法は、携帯端末装置のユーザが所定の場所を訪れたことを確認するために使用されるシステムによって実行される方法であって、前記システムは携帯端末装置及びサーバを備え、当該サーバは制御装置及び１以上の無線装置を含み、前記方法は、前記１以上の無線装置が、訪問確認サービスが利用可能であることを通知するサービス通知を送信する段階と、前記携帯端末装置が、前記サービス通知を受信すると、当該携帯端末装置のユーザを識別するユーザ識別子を含む訪問確認要求を送信する段階と、
前記１以上の無線装置のうちの少なくとも１つの無線装置が、前記訪問確認要求を受信し、前記ユーザ識別子に紐付けられたトークン及びタスクを通知するタスク通知を送信する段階と、前記携帯端末装置が、前記タスク通知に基づいてタスクを実行する段階と、前記携帯端末装置が、前記タスクを完了すると、前記トークンを含むタスク完了通知を繰り返し送信する段階と、前記１以上の無線装置のうちの少なくとも１つの無線装置が、前記タスク完了通知が繰り返し送信されたことを確認すると、タスクの出力である解答を要求する解答要求を送信する段階と、前記携帯端末装置が、前記解答要求を受信すると、前記タスクの解答を含む解答通知を送信する段階と、前記１以上の無線装置のうちの少なくとも１つの無線装置が、前記携帯端末装置から送信された解答通知を受信する段階と、前記制御装置が、前記解答通知に基づいて前記訪問確認要求の正当性を判定する段階と、を含む。
【００１９】
また、本発明の一つの実施態様における方法は、携帯端末装置のユーザが所定の場所を訪れたことを確認するために使用され、制御装置と１以上の無線装置を備えるサーバによって実行される方法であって、訪問確認サービスが利用可能であることを通知するサービス通知を送信する段階と、携帯端末装置から送信されたユーザ識別子を含む訪問確認要求を受信し、前記ユーザ識別子に紐付けられたトークン及びタスクを通知するタスク通知を送信する段階と、前記１以上の無線装置のうちの少なくとも１つの無線装置が、前記携帯端末装置からタスク完了通知が繰り返し送信されたことを確認すると、タスクの出力である解答を要求する解答要求を送信する段階と、前記１以上の無線装置のうちの少なくとも１つの無線装置が、前記携帯端末装置から送信された解答通知を受信する段階と、前記制御装置が、前記解答通知に基づいて前記訪問確認要求の正当性を判定する段階と、を含む。
【００２０】
本発明の一つの実施態様における方法は、携帯端末装置のユーザが所定の場所を訪れたことを確認するために使用される携帯端末装置によって実行される方法であって、サーバに含まれる１以上の無線装置から送信されたサービス通知を受信すると、当該携帯端末装置のユーザを識別するユーザ識別子を含む訪問確認要求を送信する段階と、前記１以上の無線装置のうちの少なくとも１つの無線装置から受信された、前記ユーザ識別子に紐付けられたトークン及びタスクを通知するタスク通知に基づいてタスクを実行する段階と、前記タスクを完了すると、前記トークンを含むタスク完了通知を繰り返し送信する段階と、前記携帯端末装置が、前記１以上の無線装置のうちの少なくとも１つの無線装置から解答要求を受信すると、タスクの解答を含む解答通知を送信する段階と、を含む。
【発明の効果】
【００２１】
本発明によれば、悪意のある利用者が不正に認証を得ることを防止しつつ、大量のユーザが所定の場所を訪問したことを実質的に同時に確認可能な訪問確認システムを実現することができる。
【図面の簡単な説明】
【００２２】
【図１】本発明の一実施形態に係るシステムの全体構成である。
【図２】本発明の一実施形態に係るサーバのハードウェア構成図である。
【図３】本発明の一実施形態に係る携帯端末装置のハードウェア構成図である。
【図４】本発明の一実施形態に係るサーバの機能ブロック図である。
【図５】本発明の一実施形態に係る携帯端末装置の機能ブロック図である。
【図６】本発明の一実施形態に係る情報処理を示すフローチャートである。
【図７】本発明の一実施形態に係る正当性判定の情報処理を示すフローチャートである。
【発明を実施するための形態】
【００２３】
以下、図面を参照して、本発明の一つの実施形態を説明する。本実施形態に係る訪問確認システム１００は、図１に示すように、サーバ１０１と１以上の携帯端末装置１０４とを備えるシステムによって実現することができる。サーバ１０１は制御装置１０２と１以上の無線装置１０３を含む。サーバ１０１は無線装置１０３を介して携帯端末装置１０４と無線通信を行うことができる。
【００２４】
本実施形態におけるサーバ１０１は、携帯端末装置１０４のユーザからの訪問確認要求を受け付けて、正当であるか否かを判定する装置であり、図２に示すように、制御装置１０２及び１つ以上の無線装置１０３を備える。制御装置１０２は、処理装置２０１、表示装置２０２、入力装置２０３、記憶装置２０４、通信装置２０５及びバス２１０を備える。記憶装置２０４はサーバ用プログラム２０６を格納する。通信装置２０５は１以上の無線装置１０３と接続される。通信装置２０５と無線装置１０３との間の接続はいかなる形態であってもかまわない。例えば、有線ＬＡＮや無線ＬＡＮによって接続することができる。無線装置１０３は携帯端末装置１０４と無線接続することができる。本実施形態においては、通信方式はＢＬＥ（Bluetooth（登録商標） Low Energy）とするが、その他の方式であってもかまわない。
【００２５】
処理装置２０１は、プログラム２０６、入力装置２０３からの入力データまたは通信装置２０５を介して無線装置１０３から受信したデータ等に基づいて、各種の処理を行う。処理装置２０１は、サーバ１０１が備える各装置を制御するプロセッサを備えており、プロセッサが含むレジスタや記憶装置２０４をワーク領域として各種処理を行う。これらの各構成部はバス２１０によって接続されるが、それぞれが必要に応じて個別に接続される形態であってもかまわない。表示装置（ディスプレイ）２０２は、処理装置２０１の制御に従って管理用アプリケーション画面等を表示する。
【００２６】
本実施形態におけるサーバ１０１は、例えば、インターネットに接続されたサーバコンピュータとインターネットを介してサーバコンピュータに接続されたＢＬＥサーバによって実現することができる。サーバコンピュータが処理装置２０１として動作し、ＢＬＥサーバが無線装置１０３として動作する。ＢＬＥサーバは、Centralモード及びScanningモードのＢＬＥの２系統のＢＬＥチップを搭載することで無線装置１０３を実現してもよい。さらに、ＢＬＥサーバの処理装置が、サーバコンピュータの処理装置と協働して、サーバ１０１の処理装置２０１を実現してもよい。
【００２７】
本実施形態における携帯端末装置１０４は、無線通信によって訪問確認要求をサーバ１０１へ送信して、オンラインゲーム等のアカウントとその所定の場所を訪問したユーザとの紐付けを行うチェックインを行うための装置である。携帯端末装置１０４は、例えば、携帯電話機、スマートフォン、タブレット端末、携帯ゲーム機等の携帯型装置とすることができる。携帯端末装置１０４は、図３に示すように、処理装置３０１、表示装置３０２、入力装置３０３、記憶装置３０４、通信装置３０５及びバス３１０を備える。記憶装置３０４は携帯端末用プログラム３０６を格納する。
【００２８】
処理装置３０１は、プログラム３０６、入力装置３０３からの入力データまたは通信装置３０５から受信したデータ等に基づいて、訪問確認用アプリケーションやウェブブラウザ等のアプリケーションの実行、画像処理などの各種の処理を行う。処理装置３０１は、携帯端末装置１０４が備える各装置を制御するプロセッサを備えており、プロセッサが含むレジスタや記憶装置３０４をワーク領域として各種処理を行う。これらの各構成部はバス３１０によって接続されるが、それぞれが必要に応じて個別に接続される形態であってもかまわない。
【００２９】
記憶装置２０４及び３０４は、ハードディスク、メインメモリ、及びバッファメモリを含む。ただしハードディスクは、情報を格納できるものであればいかなる不揮発性ストレージまたは不揮発性メモリであってもよく、着脱可能なものであってもかまわない。記憶装置２０４及び３０４には、プログラム２０６及び３０６やこれらのプログラムの実行に伴って参照されうる各種のデータが記憶される。
【００３０】
図４は本発明のサーバ１０１の機能ブロック図の一例を示す。サーバ１０１は、サーバ制御部４０１、サーバ表示部４０２、サーバ入力部４０３、サーバ記憶部４０４及び１つ以上の無線部４０８を備える。
【００３１】
サーバ表示部４０２はサーバのユーザに提示するために情報を表示する。サーバ入力部４０３はユーザからの入力を受け付ける。サーバ記憶部４０４は、サーバ制御部４０１によって実行される情報処理に必要な情報を格納する。サーバ制御部４０１は、ＤＢ１（４０５）及びＤＢ２（４０６）を備える。ＤＢ１は訪問確認要求を送信した携帯端末装置１０４のユーザを識別するユーザ識別子をトークンとタスクに紐付けて記憶する。トークンは当該ユーザＩＤに訪問確認要求が正当であるかを判定するために一時的に割り当てられた識別子であり、タスクは訪問確認要求の正当性を確認するために携帯端末装置１０４に与えられるものである。制御部４０１は１以上の無線部４０８を介して、訪問確認サービスが利用可能であることを通知するサービス通知を送信し、携帯端末装置１０４から送信されるユーザ識別子を含む訪問確認要求を受信し、当該ユーザ識別子に紐付けられたトークン及びタスクを通知するタスク通知を送信する。制御部４０１は、少なくとも１つの無線部４０８を介してタスクを完了した携帯端末装置１０４から繰り返しタスク完了通知を受信すると、無線部４０８からタスクの出力である解答を要求する解答要求を送信し、携帯端末装置１０４から送信された解答通知を受信し、解答通知に基づいて訪問確認要求の正当性を判定する。
【００３２】
本実施形態においてサーバ制御部４０１は、図２に記載されたハードウェア構成に含まれるサーバ用プログラム２０６が処理装置２０１によって実行されることにより実現されるが、集積回路等を用意することによっても実現できる。また、サーバ表示部４０２、サーバ入力部４０３、サーバ記憶部４０４及び無線部４０８はそれぞれ図２に記載した表示装置２０２、入力装置２０３、記憶装置２０４及び無線装置１０３の各ハードウェアによって実現されるが、サーバ用プログラム２０６が処理装置２０１等によって実行され、各ハードウェアと協働することによって実現されてもよい。
【００３３】
図５は本発明の携帯端末装置１０４の機能ブロック図の一例を示す。携帯端末装置１０４は、携帯端末制御部５０１、携帯端末表示部５０２、携帯端末入力部５０３、携帯端末記憶部５０４及び携帯端末通信部５０５を備える。携帯端末表示部５０２はユーザに提示するための情報を表示する。携帯端末入力部５０３はユーザからの入力を受け付ける。携帯端末記憶部５０４は携帯端末制御部５０１によって実行される情報処理に必要な情報を格納する。
【００３４】
携帯端末の制御部５０１は、携帯端末通信部５０５を介して、サーバ１０１から送信された訪問確認サービスが利用可能であることを通知するサービス通知を受信し、携帯端末装置１０４のユーザを識別するユーザ識別子を含む訪問確認要求を送信し、これに応答してサーバ１０１から送信されたトークンを含むタスク通知を受信する。さらに、制御部５０１は、受信したタスク通知に基づいてタスクを実行し、タスクが完了すると、通信部５０５を介してトークンを含むタスク完了通知を繰り返し送信する。その後、制御部５０１は通信部５０５を介して、タスクの出力である解答を要求する解答要求をサーバ１０１から受信すると、タスクの解答を含む解答通知を送信する。
【００３５】
本実施形態において携帯端末制御部５０１は、図３に記載されたハードウェア構成に含まれる携帯端末用プログラム３０６が処理装置３０１によって実行されることにより実現されるが、集積回路等を用意することによっても実現できる。また、携帯端末表示部５０２、携帯端末入力部５０３、携帯端末記憶部５０４及び携帯端末通信部５０５はそれぞれ図３に記載した表示装置３０２、入力装置３０３、記憶装置３０４及び通信装置３０５の各ハードウェアによって実現されるが、プログラム３０６が処理装置３０１等によって実行され、各ハードウェアと協働することによって実現されてもよい。
【００３６】
次に、本実施形態におけるサーバ１０１及び携帯端末装置１０４の動作のフローチャートを図６に示した。本実施形態においては、携帯端末装置１０４であるスマートフォンのユーザが所定の場所を訪問したことを判定し、オンラインゲームにおけるアイテム等の特典を付与する場合を例にとって説明する。本実施形態においては、訪問確認が正当であると判定されたユーザ、すなわち実際に所定の場所を訪問したと認証されたユーザとオンラインゲームのアカウントとを紐付ける「チェックイン」を行い、チェックインがなされたアカウントに対して特典が付与される。
【００３７】
所定の場所は狭い空間に限定されず、例えば、オンラインゲームに関連するイベントを行っている広いイベント会場とすることができる。ユーザは、イベント会場を実際に訪れ、訪問確認用アプリケーションで訪問確認要求を行って認証がなされると、実際にその場所を訪問したとみなされて、このユーザのゲームアカウントに対して特典が配布される。
【００３８】
本実施形態において、サーバ１０１の無線装置１０３が所定の場所である会場に設置される。ここでは、無線装置１０３としてＢＬＥサーバの無線装置を用い、無線部４０８を実現する。ＢＬＥサーバは、会場全体をカバーできるように例えば数メートル間隔で設置される。ＢＬＥサーバは、Peripheralモード（アドバタイジングモード）のＢＬＥと、Centralモード（Scanningモード）のＢＬＥの２系統のＢＬＥチップを搭載し、有線または無線ＬＡＮを経由して、制御装置１０２に接続され、全体としてサーバ１０１を実現する。本実施形態においては、広いイベント会場を想定し、複数の無線装置１０３を設置するものとしたが、十分に狭いイベント会場であれば無線装置１０３は１つであってもよいし、広いイベント会場であったとしても、１つの無線装置でカバーできる範囲を訪問することを要求することで、本発明を実現することができる。
【００３９】
本実施形態におけるシステムが起動されると、まず、サーバ１０１の無線部４０８は、訪問確認サービスが利用可能であることを通知するサービスのアドバタイズ（サービス通知の送信）を継続的に行う（Ｓ６０１）。本実施形態においては無線部４０８を実現するＢＬＥサーバがPeripheralモードで起動し、固定ＵＵＩＤでサービスをアドバタイズする。当該ＵＵＩＤは訪問確認サービスが利用可能であることを示すものであるため、すべてのＢＬＥサーバで共通のＵＵＩＤを使用してサービスのアドバタイズを行う。ＢＬＥのアドバタイジングパケットは、２０ｍｓ毎にブロードキャストされる。
【００４０】
ユーザは携帯端末用プログラム３０６として訪問確認用アプリケーションを携帯端末装置１０４にダウンロードしてインストールした後、会場を訪れて訪問確認用アプリケーションを起動すると、携帯端末装置１０４がサービスのアドバタイズメントを受信する（Ｓ６０２）。訪問確認用アプリケーションをダウンロードせずに、訪問確認用ウェブページにアクセスして、当該ウェブページを携帯端末装置１０４で表示して、当該ウェブページを介してＢＬＥ通信を行うこともできる。携帯端末装置１０４は、サービスのアドバタイズメントの受信により訪問確認サービスが利用可能な領域にいると判定し、チェックインを受けるために、訪問確認要求処理を開始する。この際、サービスのアドバタイズメントを受信したら自動的に、処理を開始してもよいし、訪問確認サービスが利用可能であることを表示部５０２を介してユーザに提示し、ユーザの開始指示を入力部５０３から受け付けてから、開始してもよい。携帯端末装置１０４がユーザＩＤを含む訪問確認要求をサーバ１０１へ送信する（Ｓ６０３）。ユーザＩＤは当該携帯端末装置１０４のユーザに固有の識別子である。
【００４１】
本実施形態において、携帯端末装置１０４はＢＬＥ通信機能を有し、まず、CentralモードでＢＬＥを起動する。そして、無線部４０８が固定ＵＵＩＤでアドバタイズするサービスのアドバタイズメントを受信してサービスを発見すると、訪問確認要求処理を開始するために、ＢＬＥにおける一般的な接続処理を行い、無線部４０８を介したサーバ１０１とのコネクションを確立する。その後、携帯端末装置１０４は、ユーザＩＤを含む訪問確認要求を無線部４０８へ送信する。無線部４０８が受け付ける同時コネクション数を制限するために、一定数以上のコネクションが成立した場合は、サービスのアドバタイジングパケットの送出を停止してよい。
【００４２】
サーバ１０１の無線部４０８が訪問確認要求を受信すると（Ｓ６０４）、サーバ１０１の制御部４０１はトークン及びタスクを生成し、当該トークン及びタスク情報をタスク通知に含めて無線部４０８を介して送信してコネクションを終了する（Ｓ６０５）。タスク情報は、携帯端末装置１０４において実行されるべきタスクを示すものである。タスク実行前にコネクションを切断することにより、一度に大量の訪問確認要求が発生した場合においても、特定の携帯端末装置が無線リソース（ＢＬＥ接続）を継続的に占有し続けることがなくなるため、自動的かつ強制的な負荷分散が実現される。
【００４３】
トークンは、訪問確認要求を送信してきたユーザを識別する一時的なＩＤであり、ユーザＩＤと紐付けられる。本実施形態においては、トークンをタスク通知におけるＵＵＩＤとして送信する。本実施形態においてタスクは、与えられた合成数を素因数分解し、得られた素数の組を解答として送信することである。ここでは、タスク情報は素因数分解するための合成数である。合成数は、２以上の素数の積で表すことのできる正の整数である。サーバ１０１は訪問確認要求を受信するとタスクである素因数分解の対象となる合成数を生成し、無線部４０８を介して生成された合成数をタスク情報としてタスク通知に含めて携帯端末装置１０４へ送信する。
【００４４】
タスクは、素因数分解に限らず、解答の生成に携帯端末装置の多くのリソースを使用し、一定以上の時間を要するものであればどのようなものであってもよい。例えば、素因数分解に代えて、固有値分解や暗号学的ハッシュ関数を用いて生成したハッシュ値から元になった値を逆生成する問題とすることもできるし、複数種類のタスクから選択的に与えられたり、組み合わせて与えられたりすることもできる。素因数分解をタスクとした場合、合成数は、記憶部に格納した素数のリストから２以上の素数を選択して乗算することで容易に生成できる。また、素数を大きくすればするほど素因数分解には時間を要するから、携帯端末装置が費やすべき時間に基づいて合成数を決定することができる。暗号学的ハッシュ関数を用いて生成したハッシュ値から元になった値を逆生成する問題は、例えば、ハッシュ関数のSHA１に文字列（例えば、"The quick brown fox jumps over the lazy dog"）を入力して計算されたハッシュ値（例えば、"2fd4e1c6 7a2d28fc ed849ee1 bb76e739 1b93eb12"）から、元の文字列（"The quick brown fox jumps over the lazy dog"）を復元するタスクである。
【００４５】
制御部４０１はユーザＩＤをトークン及びタスクと紐付けてデータベースＤＢ１（４０５）に格納する（Ｓ６０６）。本実施形態におけるＤＢ１に格納するデータのデータ構造Ｐは次のとおりである。
【数１】
2019040549.tif 000003
【００４６】
UserIDはユーザＩＤであり、ＵＵＩＤはユーザＩＤに紐付けられたトークン、Taskは携帯端末装置１０４において実行されるべきタスクであり、本実施形態においては合成数である。TimestampはユーザＩＤとＵＵＩＤ（トークン）との紐付けが行われた時間を示すタイムスタンプ、Valid_Untilは紐付けの有効期限を示す。この有効期限をトークンの有効期限または訪問確認要求の有効期限とすることができる。ＤＢ１は、サーバ１０１が新たなトークンの紐付けを行うたびに、ユーザＩＤとＵＵＩＤとを紐付けて格納する。また、訪問確認要求の正当性判定処理が終了した場合や紐付けの有効期限を過ぎた場合等、データを保持する必要がなくなったときに、紐付けの解除、すなわち、データの削除を行う。
【００４７】
携帯端末装置１０４は、タスク通知を受信すると（Ｓ６０７）、タスク通知に含まれるタスク情報に基づいてタスクを実行する（Ｓ６０８）。本実施形態においては、タスク情報として与えられた合成数を素因数分解するというタスクを実行する。大きな整数の素因数分解には高速な解法が存在せず、素数一つずつで割り切れるかを試み続ける必要があるため、携帯端末装置１０４が次の処理に移行するために強制的な待ち時間を与えることになる。これにより、一つの携帯端末装置１０４を使用して、複数のアカウントのための訪問確認処理を同時並行的に実行する不正行為を防止することを可能とする。本実施形態においては、携帯端末装置１０４は記憶部５０４に素数リストを記憶し、ここから一つずつ読み出した素数で合成数を除算することで、素因数分解を実行する。
【００４８】
携帯端末装置１０４が素因数分解を完了すると、携帯端末装置１０４はPeripheralモードへ移行し、タスク通知に含まれたトークンをＵＵＩＤとしたアドバタイジングパケットによってタスク完了通知を繰り返し送信する（Ｓ６０９）。ＢＬＥのアドバタイジングパケットは、２０ｍｓ毎にブロードキャストされる。タスク完了通知の送信をブロードキャストとすることにより、不特定の無線部４０８がこれを受信することを可能とする。ユーザはチェックイン処理を携帯端末装置１０４に実行させつつ、会場内を移動することが想定される。したがって、タスク完了通知を送信する際には、携帯端末装置１０４が受信したサービスのアドバタイズメントを送信した無線部４０８のカバレッジを離れて、他の無線部４０８のカバレッジ内に移動している場合がある。タスク完了通知がブロードキャストされれば、タスク完了通知をいずれかの無線部４０８が受信できればよいから、ユーザの移動を許容する、より利便性の高いシステムを提供することが可能となる。
【００４９】
サーバ１０１の複数の無線部４０８のうちの少なくとも一つが、タスク完了通知を繰り返し受信する（Ｓ６１０）。制御部４０１は、ＤＢ１を参照して、タスク完了通知に含まれるトークンに紐付いたユーザＩＤを特定し、特定されたユーザＩＤに紐付けて、当該トークン、トークンの受信時間、トークンを受信した無線部４０８（ＢＬＥサーバ）のＩＤをＤＢ２にタスク完了通知履歴情報格納する（Ｓ６１１）。本実施形態における、ＤＢ２に格納されるタスク完了通知履歴情報Ｒのデータ構造は次のとおりである。
【数２】
2019040549.tif 000004
【００５０】
ここで、UserIDは訪問確認要求を行っているユーザのユーザＩＤ、UUIDはユーザＩＤに紐付けられたトークン、Timestampは完了通知であるアドバタイジングパケットを受信した時刻を示すタイムスタンプ、BLE_Serverは当該アドバタイジングパケットを受信した無線部４０８を実現するＢＬＥサーバのＩＤである。
【００５１】
一定期間、タスク完了通知が繰り返し受信されると、サーバ１０１はタスクの出力である解答を要求する解答要求を送信する（Ｓ６１２）。本実施形態においては、５分間、２０ｍｓ間隔でタスク完了通知がアドバタイズされる。携帯端末装置１０４に一定期間、タスク完了通知を繰り返し送信させることにより、携帯端末装置１０４の無線リソースを消費させ、複数のチェックイン処理を同時並行的に実行することを防止することができる。
【００５２】
タスク完了通知の受信は一定期間とせずに、所定回数受信された場合とすることもできる。また、タスク完了通知の受信時間または回数は、一つの無線部４０８によって受信されたタスク完了通知に限定してもよいし、すべての無線部４０８によって受信されたタスク完了通知を含めてもよい。すべての無線部４０８によって受信されたタスク完了通知を考慮する場合には、例えば、受信時間に基づいて、同じ時間に携帯端末装置１０４から送信されたタスク完了通知は１回の受信とすることが好ましい。タスク完了通知の送信中にユーザの移動を許容するためには、複数の無線部４０８によって受信されたタスク完了通知を考慮する態様とすることが好ましい。
【００５３】
携帯端末装置１０４は、タスク解答要求を受信すると（Ｓ６１３）、タスクを実行して得られた解答、本実施形態においては、素因数分解によって得られた素数をタスク解答通知に含めて送信する（Ｓ６１４）。解答通知に含めて送信すべき解答は、タスクを実行したことを示すことできる情報であれば、どのようなものであってもよい。
【００５４】
本実施形態においては、サーバ１０１の無線部４０８は、Peripheralモードで動作可能であるとともに、常時Centralモードで起動している。無線部４０８を介してサーバ１０１が携帯端末装置１０４がアドバタイズするサービスを発見すると、一定期間、タスク完了通知であるアドバタイジングパケットを受信する（Ｓ６１０）。一定期間過後、携帯端末装置１０４がアドバタイズを継続している場合は、通常のＢＬＥコネクションとして、携帯端末装置１０４へ接続して、タスク解答要求を送信する（Ｓ６１２）。一定期間経過後とせず、一定回数繰り返し送信されていることが確認された後に、タスク回答要求を送信することとしてもよい。Peripheralモードの携帯端末装置１０４は、接続を受け付けてタスク解答要求を受信すると（Ｓ６１３）、接続先の無線部４０８を介して、計算した素因数分解結果を含んだタスク解答通知をサーバ１０１へ送信する（Ｓ６１４）。タスク解答通知はトークンをＵＵＩＤとして送信する。
【００５５】
サーバ１０１は、タスク解答通知を受信すると（Ｓ６１５）、訪問確認要求の正当性判定処理を実行する（Ｓ６１６）。
【００５６】
本実施形態における正当性判定処理のフローチャートを図７に示した。サーバ１０１の制御部４０１は、まず、タスク解答通知に含まれる解答の数学的正当性を検証する（Ｓ７０１）。受信されたタスク解答通知に含まれたトークンに基づいて、当該トークンに紐付けられたユーザＩＤ及び合成数をＤＢ１から読み出し、受信されたタスク解答通知に含まれた素因数分解結果である素数を乗算することにより得られた値と比較する。両者が一致した場合には数学的正当性ありと判定され、一致しない場合には数学的正当性なしと判定される。ＤＢ１に合成数ではなく、合成数を作成した素数を格納しておき、ＤＢ１に格納された素数とタスク解答通知に含まれる素数とを比較することによって、数学的正当性を検証してもよい。数学的正当性なしと判定された場合には、訪問確認要求は不当と判定されて（Ｓ７０２）、正当性判定処理は終了する。
【００５７】
数学的正当性ありと判定された場合には、次にタスク完了通知の時間的密度の正当性を検証する（Ｓ７０３）。時間的密度とは、タスク完了通知の受信が、ある程度の間隔で行われていることを確認するものである。もし、時間的密度が有意に低い場合は、携帯端末装置１０４が複数の訪問確認要求処理を同時並行的に、不正に実行している可能性があるため、不正と判定する。サーバ１０１が所定の範囲内の時間的密度でタスク完了通知を受信した場合、時間的密度が正当なタスク完了通知であると判定する。時間的密度の正当性なしと判定された場合には、訪問確認要求は不当と判定されて（Ｓ７０２）、正当性判定処理は終了する。
【００５８】
本実施形態においては、携帯端末装置１０４はタスク完了通知を５分間、２０ｍｓ毎にブロードキャストする。すべての無線部４０８によって受信されたタスク完了通知の数が所定の範囲内にあるときに、サーバ１０１は、携帯端末装置１０４からのタスク完了通知は時間的密度が正当であると判定する。例えば、タスク完了通知の受信数が５分間に１４０００〜１５０００である場合には正当であるとする。タスク完了通知の受信数に所定の許容範囲を持たせることにより、無線通信の影響等によって、不正ではないにもかかわらずタスク完了通知がサーバ１０１において受信できなかった場合にもこれを許容して、正当な確認要求を不正と判定することを防止することを可能とする。
【００５９】
本実施形態では、制御部４０１が解答通知に含まれるトークンに基づいてＤＢ２（４０６）から当該トークンに紐付けられたタスク完了通知のTimestampをすべて読み出し、時間的密度の正当性を判定する。具体的には、最初に受信したタスク完了通知から５分間に受信されたタスク完了通知の数をカウントして、タスク完了通知の総数が１４０００〜１５０００である場合には正当であると判定する。
【００６０】
さらに、タイムスタンプの間隔が所定の範囲の間隔でなければ不当と判定してもよい。例えば、タスク完了通知のTimestampから、タスク完了通知の受信間隔を算出し、すべての受信間隔が所定の範囲の間隔（例えば、１５ｍｓ〜４５ｍｓ）で送信されていない場合には、不当なタスク完了通知であると判定することもできる。これにより、タスク解答通知の必要数を短時間でバースト的に送信することで、一つの携帯端末装置によって同時並列的に複数のチェックイン処理を実行する不正行為を防止することができる。
【００６１】
時間的密度が正当性ありと判定された場合には、さらに、空間的密度の正当性判定を行う（Ｓ７０４）。空間的密度とは、１つの無線部４０８が、ある単位時間内に受信するタスク完了通知の数を意味する。この空間的密度が、１つの無線部のカバレッジの広さやイベント会場への来場者数等との比較において過剰である場合は、１人が大量のデバイスを持ち込んでチェックインを試みる不正行為が行われている可能性があると判定する。
【００６２】
本実施形態においては、制御部４０１がＤＢ２（４０６）を参照し、当該タスク完了通知を受信した無線部４０８が所定の時間内に受信した、全てのトークンに紐付けられたタスク完了通知の数が空間的密度上限値以下であるか否かを判定し、上限値以下であれば空間的密度は正当であると判定し、上限値を超えている場合には不当であると判定し（Ｓ７０２）、正当性判定処理は終了する。数学的密度の正当性は、一つのＵＵＩＤに紐付けられたタスク完了通知について検証したが、空間的密度の正当性は他のＵＵＩＤを含むすべてのＵＵＩＤに紐付けられたタスク完了通知について検証する。
【００６３】
例えば、本実施形態においては、無線装置は数メートル間隔で配置するから、一つの無線部４０８のカバレッジ（半径数メートル）に存在し得るユーザの数は２０人を超えることはないと考えられる。そこで、タスク完了通知受信数のための空間的密度上限値を５００×２０人＝１００００／秒とすることができる。空間的密度の正当性は、タスク完了通知数に限らず、例えば、訪問確認要求やタスク解答通知の受信数に基づいて判定することもできる。本実施形態において、無線部４０８が受信したタスク完了通知は、ＤＢ２に格納されたタスク完了通知を無線部４０８の識別子（BLE_Server）でソートすることにより得られる。
【００６４】
空間的密度の正当性ありと判定されると（Ｓ７０４）、訪問確認要求は正当であると判定されて（Ｓ７０５）、正当性判定処理が終了し、訪問確認要求処理も終了する。
【００６５】
さらに、本実施形態においては、訪問確認要求が正当であると判定された場合には、サーバ１０１は、オンラインゲームのアカウントと会場を訪問したユーザとの紐付け(チェックイン)を実行し、オンラインゲームにおけるアカウントに当該オンラインゲーム内で利用可能な仮想アイテム等の特典を付与する処理を実行する。チェックインが正常に終了したことを通知する情報を携帯端末装置１０４へ送信してもよい。一方、訪問確認要求が不当であると判定されたときは、当該携帯端末装置１０４についての訪問確認要求処理はＳ６０５に戻り、新たなトークン及び合成数を割り当てて送信し、不正でないことが確定するまで繰り返しタスクの実行を要求する。他の実施形態においては、不正であると判定された場合には、携帯端末装置１０４へその旨を表示するための通知を送信して、訪問確認要求処理をいったん終了し、再度、初めから訪問確認要求処理を開始してもよい。
【００６６】
本実施形態では、サーバ側の負荷を小さくすることができる一方で、１回の訪問確認要求処理に携帯端末装置側のＣＰＵ時間とBluetooth帯域を大きく消費するため、１デバイスが訪問確認要求の有効期間内に認証を得てチェックインできる回数を、改造されたプログラムを用いても１回程度に限定することができる。したがって、不正を行うためには、現地にアカウントの数分だけのBluetoothデバイスを用意するか、あるいは、不正を行うアカウントの数倍の時間だけ、現地に滞在し続ける必要があり、大規模な不正を効果的に防止することができる。
【００６７】
本実施形態においては、数学的正当性、時間的密度正当性及び空間的密度正当性のすべてにおいて正当であると判定された場合に、訪問確認要求が正当であると判定される形態について説明した。時間的密度正当性判定により、携帯端末装置が並列して複数の訪問確認要求処理を実行していないことを確認し、さらに、空間的密度正当性判定により携帯端末装置の総量を確認することにより、一人が多数のデバイスを持ち込んでいないこと、ユーザの携帯端末装置が確かにその場に存在し、かつ、正当な挙動を行う正規のアプリケーションを利用した携帯端末装置であることを確認できる。
【００６８】
他の実施形態として、Ｓ７０４を省略して、数学的正当性と時間的密度の正当性のみを判定する形態とすることもできる。ＢＬＥパケットを観測し、他のネットワークへリレーするスニファリングツールを用いて一つのＢＬＥデバイスから複数のユーザが遠隔チェックインすることを防止することができる。また、更に他の実施形態として、Ｓ７０３を省略して、数学的正当性と空間的正当性のみを判定する形態とすることもできる。この場合には、小型デバイスを大量に持ち込む不正なチェックインを防止することができる。
【００６９】
本実施形態においては、ＢＬＥサーバに含まれる無線装置で無線部４０８を実現するものとした。ＢＬＥサーバは無線部４０８の機能にとどまらず、制御部２０１の機能、例えば、タスク通知生成機能、ＤＢ１及びＤＢ２への情報格納処理やタスク解答要求機能等を実現してもよい。各ＢＬＥサーバで実行可能な処理を各ＢＬＥサーバに実行させることにより負荷を分散することができる。
【００７０】
以上に説明した処理または動作において、矛盾が生じない限りにおいて、処理または動作を自由に変更することができる。また以上に説明してきた各実施形態は、本発明を説明するための例示であり、本発明はこれらの実施形態に限定されるものではない。本発明は、その要旨を逸脱しない限り、種々の形態で実施することができる。また、本実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、本実施形態に記載されたものに限定されるものではない。
【符号の説明】
【００７１】
１００  訪問確認システム
１０１  サーバ
１０２  制御装置
１０４  携帯端末装置
２０１  処理装置
２０２  表示装置
２０３  入力装置
２０４  記憶装置
２０５  通信装置
２０６  サーバ用プログラム
２１０  バス
３０１  処理装置
３０２  表示装置
３０３  入力装置
３０４  記憶装置
３０５  通信装置
３０６  携帯端末用プログラム
３１０  バス
４０１  サーバ制御部
４０２  サーバ表示部
４０３  サーバ入力部
４０４  サーバ記憶部
４０５  ＤＢ１
４０６  ＤＢ２
４０８  無線部
５０１  携帯端末制御部
５０２  携帯端末表示部
５０３  携帯端末入力部
５０４  携帯端末記憶部
５０５  携帯端末通信部
【図１】
2019040549.tif 000005
【図２】
2019040549.tif 000006
【図３】
2019040549.tif 000007
【図４】
2019040549.tif 000008
【図５】
2019040549.tif 000009
【図６】
2019040549.tif 000010
【図７】
2019040549.tif 000011