(57)【要約】  コンピュータにより提供されるサービスの安全性と信頼性の向上を図るために、認証装置１は送信部１５と判定部１６を備えている。送信部１５は、認証処理に使用する情報を認証対象のユーザが入力する基になる情報であるチャレンジを、当該チャレンジをユーザ８に提示する端末装置７に向けて送信する。この際、送信部１５は複数の互いに異なるチャレンジを端末装置７に送信する。判定部１６は、チャレンジに基づいてユーザ８が端末装置７に入力した情報であるレスポンスの正誤を判定し、また、チャレンジとそれに対するレスポンスとに関わる時間情報がレスポンスに関わる条件を満たしているか否かを判断する。
2015194135.tif 000002
【特許請求の範囲】
【請求項１】
認証処理に使用する情報を認証対象のユーザが入力する基になる情報であるチャレンジを、当該チャレンジを前記ユーザに提示する端末装置に向けて送信する送信手段と、
前記チャレンジに基づいて前記ユーザが前記端末装置に入力した情報であるレスポンスの正誤を判定する認証処理を実行する判定手段と
を有し、
前記送信手段は、前記ユーザに対する複数の互いに異なるチャレンジを前記端末装置に送信する機能を有し、それらチャレンジの少なくとも一つは、前記ユーザの生体情報を含む前記レスポンスを前記ユーザに要求する情報であり、
前記判定手段は、前記チャレンジと、当該チャレンジに対する前記レスポンスとに関わる時間情報が、前記レスポンスに関わる条件を満たしているか否かを判断する機能をもさらに備えている認証装置。
【請求項２】
前記判定手段は、前記レスポンスに含まれている生体情報を利用して、前記認証対象のユーザが予め登録されているユーザであることを確認する本人確認と、前記認証対象のユーザに対して割り当てられている識別情報が一つであることを確認する一意性確認とのうちの一方又は両方を行う機能をさらに備えている請求項１に記載の認証装置。
【請求項３】
前記送信手段は、前記複数のチャレンジを前記端末装置に送信すると共に、当該複数のチャレンジが前記端末装置によって連続的に前記ユーザに提示されるように前記端末装置を制御する情報を前記端末装置に送信する請求項１又は請求項２に記載の認証装置。
【請求項４】
前記送信手段は、前記複数のチャレンジが前記端末装置によって連続的に順々に前記ユーザに提示されるように前記複数のチャレンジをストリームの態様でもって前記端末装置に送信する請求項１又は請求項２に記載の認証装置。
【請求項５】
前記送信手段は、前記各チャレンジが前記端末装置によって前記ユーザに提示されている出力持続時間が互いに異なるように前記端末装置を制御する情報を前記端末装置に送信する請求項１乃至請求項４の何れか一つに記載の認証装置。
【請求項６】
前記チャレンジは、画像あるいは音声である請求項１乃至請求項５の何れか一つに記載の認証装置。
【請求項７】
請求項１乃至請求項６の何れか一つに記載の認証装置と、
前記認証装置から送信された複数の前記チャレンジを認証対象のユーザに提示し、かつ、前記チャレンジに対する前記ユーザのレスポンスを受け付け当該レスポンスを前記認証装置に送信する前記端末装置と
を備える認証システム。
【請求項８】
認証処理に使用する情報を認証対象のユーザが入力する基になる情報であるチャレンジを、当該チャレンジを前記ユーザに提示する端末装置に向けて送信する際に、ユーザの生体情報を含むレスポンスを前記ユーザに要求するチャレンジを含む複数の互いに異なるチャレンジを前記端末装置にコンピュータが送信し、
前記チャレンジと、当該チャレンジに基づいて前記ユーザが前記端末装置に入力したレスポンスの正誤をコンピュータが判定し、
また、前記チャレンジと、当該チャレンジに対する前記レスポンスとに関わる時間情報が、前記レスポンスに関わる条件を満たしているか否かを判断する認証方法。
【請求項９】
認証処理に使用する情報を認証対象のユーザが入力する基になる情報であるチャレンジを、当該チャレンジを前記ユーザに提示する端末装置に向けて送信する際に、ユーザの生体情報を含むレスポンスを前記ユーザに要求するチャレンジを含む複数の互いに異なるチャレンジを前記端末装置に送信する処理と、
前記チャレンジと、当該チャレンジに基づいて前記ユーザが前記端末装置に入力したレスポンスの正誤を判定する処理と、
また、前記チャレンジと、当該チャレンジに対する前記レスポンスとに関わる時間情報が、前記レスポンスに関わる条件を満たしているか否かを判断する処理と
をコンピュータに実行させる処理手順が記憶されているコンピュータ記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、本人確認等の認証の技術に関する。
【背景技術】
【０００２】
オンラインサービスのユーザがコンピュータプログラム（いわゆるbot）ではなく人間であることを確認するために、キャプチャ（CAPTCHA（Completely Automated Public Turing test to tell Computers and Humans Apart））が利用される場合がある。キャプチャ（CAPTCHA）は、チャレンジ・レスポンス・テストの一種であり、逆チューリングテスト（reverse Turing test）又はhuman interaction proofsと呼ばれることもある。本明細書では、オンラインサービスのユーザが人間であるか否かを確認することを実存性の確認と述べる。実存性とは、ユーザが生存している人間であり、実体のないコンピュータプログラムではないことを意味する。【０００３】
また、一般的に、安全かつ信頼性の高いオンラインサービスを提供するためには、本人確認（個人認証）が必要である。本人確認とは、オンラインサービスにアクセスするユーザがオンラインサービスの利用を許可された人物であるか否かを確認する処理である。一例として、本人確認の処理では、ユーザによって入力されたユーザＩＤ（identification）およびパスワードが登録されたものと一致するか否かが判断され、一致する場合に、ユーザは、サービスの利用を許可された人物であると判断される。他の例では、ユーザの生体情報（バイオメトリクス情報）が予め登録された生体情報と一致する否かが判断され、一致する場合に、ユーザは、サービスの利用を許可された人物であると判断される。その生体情報としては、例えば、顔画像と音声（声紋）の一方又は両方が利用される。【０００４】
例えば、特許文献１に開示されている本人確認方法では、（ａ）選択されたフレーズを話すときのユーザの音声データおよび映像データが取得され、（ｂ）これら音声データと映像データに基づいた識別用の音声特徴と映像特徴が生成される。さらに、当該本人確認方法では、（ｃ）それら音声特徴および映像特徴が予め登録された特徴ベクトルと比較されることによって、ユーザは、本人であるか否かが判断される。【０００５】
特許文献２に開示されている本人確認（個人認証）方法では、発語時の時系列の顔画像が取得され、これら時系列の顔画像に基づいて、ユーザは、本人であるか否かが判断される。具体的には、特許文献２では、発語直前の顔画像を基準フレームとし、各音素が発音されている期間の中央時刻の顔画像を音素フレームとする。特許文献２に開示されている認証装置は、基準フレームと音素フレームの特徴点を取得し、基準フレームの特徴点に対する音素フレームの特徴点の変位量（特徴点変位量）を求める。そして、認証装置は、複数の音素フレームについて求めた複数の特徴点変位量から構成される１つの特徴ベクトルを生成し、当該特徴ベクトルを予め登録されているテンプレートベクトルと比較する。さらに、認証装置は、その比較により特徴ベクトルとテンプレートベクトルとの類似度を求め、当該類似度に基づいて本人であるか否かを判断する。【０００６】
特許文献３は、チャレンジ／レスポンス型の指静脈認証システムを開示している。特許文献３における認証システムでは、個人認証に使用する指がランダムに指定され、さらに、個人認証に使用する指の部位（照合対象部位）がランダムに決定される。【０００７】
特許文献４は、ユーザの本人確認（個人認証）に加えて、実存性を確認することを開示している。特許文献４に開示されている認証システムでは、パスワード、生体情報、パスポート、運転免許証、又はIC（integrated circuit）カード等を利用してユーザの本人確認（個人認証）の処理が実行される。さらに、この認証システムでは、本人確認の処理が実行された時のユーザの位置および時刻の情報が取得され、当該取得した情報が保存される。さらにまた、当該認証システムでは、本人確認が実行された時のユーザの位置および時刻と、その直近（換言すれば前回）の本人確認が実行された時のユーザの位置および時刻とが比較される。そして、認証システムでは、ユーザの移動距離および移動時間が適切であるか否かが判断され、当該判断を利用してユーザの実存性が確認される。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開平９−１７９５８３号公報
【特許文献２】特開２００６−２６８５６３号公報
【特許文献３】特開２００９−０３１９８６号公報
【特許文献４】特開２００８−２６９５５６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
ところで、一般的に、キャプチャ（CAPTCHA）を利用した実存性の確認は、チャレンジ画像を利用する。チャレンジ画像とは、ランダムな文字列を解読するコンピュータプログラム（解読プログラム）に基づき動作するコンピュータが認識し難いような歪みやノイズを文字に加えた画像である。実存性の確認の処理では、例えば、チャレンジ画像がユーザに提示され、そのチャレンジ画像をユーザが正しく読み取ることができたか否かが判断される。そして、ユーザが正しく読み取ることができた場合は、ユーザの実存性が確認される。しかしながら、進化した解読プログラムに対処するために、キャプチャのチャレンジ画像はもはや人間でも容易に判別できないほど複雑化している。したがって、既存のキャプチャとは異なる新たな指標に基づいてユーザの実存性を確認する手法の必要性が高くなっている。【００１０】
また、安全かつ信頼性の高いオンラインサービスを提供するという観点では、キャプチャによる実存性の確認だけでは十分ではなく、キャプチャに加えて、本人確認と一意性の確認との一方又は両方が必要である。なお、本明細書における一意性とは、一人の個人に対して１つのオンラインアカウントのみが発行されていること、言い換えると、一人の個人に対して複数のオンラインアカウントが重複して発行されていないことを意味する。【００１１】
本発明は上記課題を解決するために考え出された。すなわち、本発明の主な目的は、コンピュータにより提供されるサービスの安全性と信頼性の向上を図る技術を提供することにある。
【課題を解決するための手段】
【００１２】
上記目的を達成するために、本発明の認証装置は、
認証処理に使用する情報を認証対象のユーザが入力する基になる情報であるチャレンジを、当該チャレンジを前記ユーザに提示する端末装置に向けて送信する送信手段と、
前記チャレンジに基づいて前記ユーザが前記端末装置に入力した情報であるレスポンスの正誤を判定する認証処理を実行する判定手段と
を有し、
前記送信手段は、前記ユーザに対する複数の互いに異なるチャレンジを前記端末装置に送信する機能を有し、それらチャレンジの少なくとも一つは、前記ユーザの生体情報を含む前記レスポンスを前記ユーザに要求する情報であり、
前記判定手段は、前記チャレンジと、当該チャレンジに対する前記レスポンスとに関わる時間情報が、前記レスポンスに関わる条件を満たしているか否かを判断する機能をもさらに備えている。【００１３】
本発明の認証システムは、
本発明の認証装置と、
前記認証装置から送信された複数の前記チャレンジを認証対象のユーザに提示し、かつ、前記チャレンジに対する前記ユーザのレスポンスを受け付け当該レスポンスを前記認証装置に送信する前記端末装置と
を備える。【００１４】
本発明の認証方法は、
認証処理に使用する情報を認証対象のユーザが入力する基になる情報であるチャレンジを、当該チャレンジを前記ユーザに提示する端末装置に向けて送信する際に、ユーザの生体情報を含むレスポンスを前記ユーザに要求するチャレンジを含む複数の互いに異なるチャレンジを前記端末装置にコンピュータが送信し、
前記チャレンジと、当該チャレンジに基づいて前記ユーザが前記端末装置に入力したレスポンスの正誤をコンピュータが判定し、
また、前記チャレンジと、当該チャレンジに対する前記レスポンスとに関わる時間情報が、前記レスポンスに関わる条件を満たしているか否かを判断する。【００１５】
本発明のプログラム記憶媒体は、
認証処理に使用する情報を認証対象のユーザが入力する基になる情報であるチャレンジを、当該チャレンジを前記ユーザに提示する端末装置に向けて送信する際に、ユーザの生体情報を含むレスポンスを前記ユーザに要求するチャレンジを含む複数の互いに異なるチャレンジを前記端末装置に送信する処理と、
前記チャレンジと、当該チャレンジに基づいて前記ユーザが前記端末装置に入力したレスポンスの正誤を判定する処理と、
また、前記チャレンジと、当該チャレンジに対する前記レスポンスとに関わる時間情報が、前記レスポンスに関わる条件を満たしているか否かを判断する処理と
をコンピュータに実行させる処理手順が記憶されている。【００１６】
なお、上記した本発明の主な目的は、本発明の認証装置に対応する本発明の認証方法によっても達成される。また、上記した本発明の主な目的は、本発明の認証装置および本発明の認証方法に対応するコンピュータプログラムおよびプログラム記憶媒体によっても達成される。
【発明の効果】
【００１７】
本発明によれば、コンピュータにより提供されるサービスの安全性と信頼性の向上を図ることができる。
【図面の簡単な説明】
【００１８】
【図１】本発明に係る第１実施形態の認証装置の構成を簡略化して表すブロック図である。
【図２】本発明に係る第２実施形態の認証システムであるオンラインサービスシステムの構成を簡略化して表すブロック図である。
【図３】第２実施形態における認証装置の動作例を説明するフローチャートである。
【図４】第２実施形態における認証処理を含むアカウントの発行手順の一例を説明するシーケンス図である。
【図５】第２実施形態における認証処理を含むオンラインサービスの利用手順の一例を説明するシーケンス図である。
【図６】チャレンジの具体例を表す図である。
【図７】チャレンジの別の具体例を表す図である。
【図８】さらに、チャレンジの別の具体例を表す図である。
【図９】さらにまた、チャレンジの別の具体例を表す図である。
【図１０】第２実施形態におけるチャレンジとこれに対するレスポンスとの時間関係の具体例を表す図である。
【発明を実施するための形態】
【００１９】
以下に、本発明に係る実施形態を図面を参照しながら説明する。
【００２０】
＜第１実施形態＞
図１は、本発明に係る第１実施形態の認証装置の構成を簡略化して表すブロック図である。この認証装置１は、端末装置７に接続されている。この端末装置７には、情報を入力する入力部（図示せず）と、情報を出力する出力部（図示せず）とが備えられている。入力部としては、例えば、キーボードやタッチパネル等が挙げられる。また、出力部としては、音声を発するスピーカや、映像を映し出すディスプレイ等が挙げられる。
【００２１】
認証装置１は、送信部２と、判定部３とを備えている。これら送信部２と判定部３は、例えばプロセッサ（図示せず）を備えた制御装置５がコンピュータプログラムを実行することによって実現される機能部である。
【００２２】
送信部２は、チャレンジを端末装置７に向けて送信する機能を備えている。チャレンジとは、認証処理に使用する情報を認証対象のユーザ８が入力する基になる情報（例えば、画像データや音声データ）である。ユーザ８は、例えば、端末装置７の出力部によりチャレンジが提示されると、端末装置７の入力部を利用して当該端末装置７にそのチャレンジに基づいた情報（レスポンス）を入力する。
【００２３】
この第１実施形態では、送信部２は、認証対象のユーザ８に対して複数の互いに異なるチャレンジを送信する。また、それら複数のチャレンジのうちの少なくとも一つは、ユーザ８の生体情報が含まれるレスポンスをユーザ８に要求する情報である。
【００２４】
判定部３は、ユーザ８が端末装置７に入力したレスポンスを端末装置７から受信した場合に、認証処理として、チャレンジに対するレスポンスの正誤を判定する機能を備えている。例えば、チャレンジが、複数の数字（例えば歪んでいる数字）が写っている画像データであるとする。この場合には、ユーザ８は、その画像（チャレンジ）から読み取った数字を端末装置７に入力する。そして、その入力された数字がレスポンスとして端末装置７から認証装置１に送信される。判定部３は、そのレスポンスとして入力された数字が、チャレンジとしての画像データに映し出されている数字と一致するか否かを判断する。そして、一致している場合には、判定部３は、レスポンスは正しいと判断する。この場合には、認証装置１は、ユーザ８の実存性（レスポンスがコンピュータ（コンピュータプログラム）ではなく、実在する人間によって入力されたこと）を確認することができる。
【００２５】
また、例えば、チャレンジが、ユーザ８の生体情報を含むレスポンスを要求する情報である場合には、判定部３は、レスポンスとして端末装置７から受信した生体情報を、予め登録されているユーザ８の生体情報に比較する。そして、判定部３は、受信した生体情報（レスポンス）と、登録されている生体情報とが合致している場合には、ユーザ８が、予め登録されているユーザであると判断する（本人確認できる）。
【００２６】
さらに、判定部３は、認証処理として、送信部２が送信したチャレンジと、端末装置７から受信したレスポンスとに関わる時間情報がレスポンスに関わる条件を満たしているか否かを判断する機能を備えている。
【００２７】
例えば、その条件とは、レスポンスが人間によるものであると想定できる実存性の条件である。つまり、チャレンジに含まれている情報の状態によっては、その情報をチャレンジから人間は容易に解読できるが、コンピュータは解読が難しい場合がある。このような場合には、ユーザ８が人間である場合と、コンピュータである場合とにおいて、チャレンジが提示されてからレスポンスが入力するまでの時間に差異が生じると想定される。このような時間差を利用して、判定部３は、ユーザ８の実存性を確認することができる。
【００２８】
この第１実施形態の認証装置１は、複数のチャレンジを利用してユーザ８に対する認証処理を実行するので、認証に対する信頼性を高めることができる。また、認証装置１は、チャレンジに対するレスポンスの正誤判定だけでなく、チャレンジとレスポンスに関わる時間情報を利用して、例えばユーザ８の実存性を確認する機能を備えている。このため、例えば、人間が容易に判別できない程の歪みやノイズを含む画像データをチャレンジとして採用しなければならないという事態を認証装置１は回避することができる。
【００２９】
さらに、認証装置１は、チャレンジの少なくとも一つとして、ユーザ８の生体情報を含むレスポンスを要求することから、そのレスポンスに含まれる生体情報を利用して、本人確認をも行うことができる。すなわち、この第１実施形態の認証装置１は、いわゆるチャレンジ・レスポンス・テストとして、ユーザ８の実存性確認だけでなく、本人確認をも実行できるから、認証に対する信頼性をより高めることができる。これにより、コンピュータにより提供されるサービスに関する認証装置として第１実施形態の認証装置１を採用することによって、当該認証装置１は、そのサービスの安全性と信頼性の向上を図ることができる。
【００３０】
＜第２実施形態＞
以下に、本発明に係る第２実施形態を説明する。
【００３１】
図２は、第２実施形態の認証装置を備えたコンピュータシステムであるオンラインサービスシステムの構成例を表すブロック図である。第２実施形態のオンラインサービスシステムは、サーバ１０を備えている。サーバ１０は、情報通信網３０を介して端末装置であるクライアント２０に接続可能であり、クライアント２０を利用するユーザに対してオンラインサービスを提供する機能を備えている。さらに、サーバ１０は、そのオンラインサービスを提供してもよいか否かを判定する認証装置としての機能をも備えている。すなわち、サーバ１０は、認証処理として、オンラインサービスの提供をクライアント２０のユーザが許可されているか否かを判定する本人確認を行う。また、サーバ１０は、ユーザの実存性を確認する。さらに、サーバ１０は、オンラインサービスのアカウントを管理している。さらにまた、サーバ１０は、ユーザの一意性確認（同じユーザに複数のアカウントが発行されていないことの確認）を行ってもよい。なお、サーバ１０は、１つのコンピュータ装置であってもよいし、通信可能に接続された複数のコンピュータ装置により構成されていてもよい。
【００３２】
第２実施形態では、サーバ１０は、制御装置１１と記憶装置１２と通信部１３を備えている。
【００３３】
通信部１３は、情報通信網３０を介した他の通信装置との通信を可能にする機能を備えている。例えば、通信部１３は、IEEE 802.3 seriesに準拠したネットワークインタフェースカード（NIC）を備え当該カードによって通信制御を行う機能を有している。また、通信部１３は、通信プロトコル・スタック（例えば、Transmission Control Protocol (TCP)/ Internet Protocol (IP)およびUser Datagram Protocol (UDP)/IPプロトコル・スタック）を有し、これに基づいて通信制御を行う機能を有していてもよい。
【００３４】
記憶装置１２は、コンピュータプログラムや各種データを記憶できる装置（非一時的なコンピュータ可読媒体（non-transitory computer readable medium））である。例えば、記憶装置１２は、揮発性メモリと不揮発性メモリの組み合わせによって構成される。揮発性メモリとしては、例えば、Static Random Access Memory（SRAM）とDynamic RAM（DRAM）等を挙げることができる。不揮発性メモリとしては、例えば、マスクRead Only Memory（MROM）とProgrammable ROM（PROM）とフラッシュメモリ等を挙げることができる。なお、サーバ１０は、記憶装置１２として、磁気記録媒体（例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ）あるいは光磁気記録媒体（例えば光磁気ディスク）を有する装置を備えていてもよい。さらに、記憶装置１２は、制御装置１１と物理的に離れて配置されていてもよい。
【００３５】
この第２実施形態では、記憶装置１２には、送信処理プログラムと、判定処理プログラムとが記憶されている。送信処理プログラムは、チャレンジ・レスポンス・テストにて使用するチャレンジを送信する処理手順を表している。チャレンジとは、第１実施形態でも述べたように、認証処理に使用する情報を認証対象のユーザが入力する基になる情報（例えば、画像データや音声データ）である。また、判定処理プログラムは、チャレンジに基づいてユーザにより入力された情報（レスポンス）に基づいて、ユーザに対する認証処理を実行する処理手順を表している。
【００３６】
この第２実施形態では、サーバ１０は、記憶装置１４と接続している。この記憶装置１４には、認証処理に利用する情報が格納されている。例えば、サーバ１０が提供可能なオンラインサービスの利用が許可されているユーザの生体情報が記憶装置１４に格納されている。記憶装置１４に格納される生体情報は、認証処理の種類に応じて適宜定められるが、具体例を挙げると、顔、声紋、指紋、静脈パターン、虹彩パターン等の画像データ又は特徴点データである。このような生体情報は、例えば、サーバ１０がオンラインアカウントの新規発行手順（ユーザ登録手順）に従って動作することにより、クライアント２０および情報通信網３０を利用して取得され記憶装置１４に格納される。なお、サーバ１０は、記憶装置１４に格納された生体情報を周期的に又は非周期的に更新してもよい。また、サーバ１０は、認証処理によりユーザから生体情報を取得した場合に、その取得した生体情報を利用して記憶装置１４におけるそのユーザの生体情報を更新してもよい。
【００３７】
制御装置１１は、例えば、ＣＰＵ（Central Processing Unit）等のプロセッサを有して構成される。当該制御装置１１は、記憶装置１２に記憶されているソフトウェア（コンピュータプログラム）を読み出し当該コンピュータプログラムを実行することによって、様々な機能を持つことができる。この第２実施形態では、制御装置１１は、チャレンジ・レスポンス・テストを実行する機能を備えている。すなわち、制御装置１１は、機能部として、送信部１５と、判定部１６とを備えている。
【００３８】
送信部１５は、認証対象のユーザに対する複数の互いに異なるチャレンジをクライアント２０に送信する機能を備えている。それらチャレンジの少なくとも一つは、生体情報を含むレスポンスをユーザに要求する情報である。
【００３９】
判定部１６は、チャレンジに基づいてユーザがクライアント２０に入力したレスポンスを受信した場合に、そのレスポンスの正誤を判定する機能を備えている。さらに、判定部１６は、送信部１５による送信開始時間の情報と、レスポンスの受信開始時間の情報とに基づいて、そのレスポンスに係る反応時間が実存性条件を満たしているか否かを判定する機能を備えている。送信開始時間とは、送信部１５がチャレンジを送信した時間であり、受信開始時間とは、そのチャレンジに対するレスポンスをクライアント２０から受信した時間である。
【００４０】
なお、送信部１５および判定部１６における具体例としての動作例は後述する。
【００４１】
次にクライアント２０について説明する。クライアント２０は、ユーザによって操作される端末装置であり、情報通信網（例えばインターネット）３０を介してサーバ１０と有線あるいは無線により通信する。クライアント２０は、例えば、パーソナルコンピュータ、タブレット、又はスマートフォンである。
【００４２】
クライアント２０は、制御装置２１と記憶部２２と通信部２３と出力装置２４と入力装置２５とを有している。
【００４３】
記憶部２２は、例えば、揮発性メモリと不揮発性メモリの組み合わせによって構成される。記憶部２２には、制御装置２１の動作手順を表すソフトウェア（コンピュータプログラム）が格納されている。
【００４４】
通信部２３は、情報通信網３０を介した他の通信装置（例えばサーバ１０）との通信を可能にする機能を備えている。通信部２３は、例えば、IEEE 802.3 seriesに準拠したネットワークインタフェースカード（NIC）を備えている。また、通信部２３は、通信プロトコル・スタック（例えば、Transmission Control Protocol (TCP)/ Internet Protocol (IP)およびUser Datagram Protocol (UDP)/IPプロトコル・スタック）を備えている。さらに、通信部２３は、無線通信を可能にする機能を備えていてもよい。例えば、通信部２３は、Wideband Code Division Multiple Access (W-CDMA)/Long Term Evolution (LTE)等のセルラ・トランシーバの通信規格に基づいた無線通信を可能にする。また、通信部２３は、IEEE802.11a/b/g/n等のWi-Fi（登録商標）トランシーバ、又はBluetooth（登録商標）トランシーバの通信規格に基づいた無線通信を可能にしてもよい。
【００４５】
出力装置２４は、視覚、聴覚、嗅覚、皮膚感覚（触覚、痛覚、温度覚）あるいはこれらの組合せによって人間が知覚できる態様でもって情報を発信（出力）する装置である。出力装置２４の具体例を挙げると、画像を表示するディスプレイ装置、音声を出力するスピーカなどがある。クライアント２０には、複数種の出力装置２４が備えられている。
【００４６】
入力装置２５は、ユーザからの情報を受け付ける装置である。入力装置２５の具体例を挙げると、操作ボタン、タッチパネル、マウス、キーボード、カメラ、マイクロフォンなどがある。クライアント２０には、複数種の入力装置２５が備えられている。
【００４７】
制御装置２１は、ＣＰＵ等のプロセッサを備え、記憶部２２からソフトウェア（コンピュータプログラム）を読み出して実行することによって、様々な機能を持つことができる。例えば、制御装置２１は、サーバ１０により提供されるオンラインサービスを利用可能にする環境（例えば、ウェブブラウザ）を提供する。
【００４８】
図３は、サーバ１０の動作例を表すフローチャートである。ここでは、サーバ１０が認証処理であるチャレンジ・レスポンス・テストを実施する場合における動作例を説明する。なお、サーバ１０がチャレンジ・レスポンス・テストを実施するタイミングとしては、例えば、ユーザに対してオンラインアカウントを新規に発行するときや、オンラインアカウントの発行要求をクライアント２０から受信したときが考えられる。さらに、サーバ１０がチャレンジ・レスポンス・テストを実施するタイミングとしては、登録済みのユーザがオンラインサービスの利用を開始するときや、オンラインサービスへのアクセス要求をクライアント２０から受信したときなども考えられる。このように、サーバ１０がチャレンジ・レスポンス・テストを実施するタイミングとしては、複数のタイミングが考えられ、サーバ１０は、提供するサービスの内容等を考慮した適宜なタイミングでもってチャレンジ・レスポンス・テストを実施する。
【００４９】
例えば、サーバ１０の制御装置１１は、チャレンジ・レスポンス・テストを実施するタイミングにおいて、認証対象のユーザに関するチャレンジデータを作成する（ステップＳ１０１）。チャレンジデータとは、複数の互いに異なるチャレンジを含み、それらチャレンジがクライアント２０の出力装置２４から連続的に順々に出力するようにクライアント２０の制御装置２１を制御するプログラムデータをさらに含むデータである。
【００５０】
サーバ１０の制御装置１１（送信部１５）は、その生成したチャレンジデータを通信部１３を通してクライアント２０に送信する（ステップＳ１０２）。
【００５１】
然る後に、送信したチャレンジに対するレスポンスを含むデータを受信すると（ステップＳ１０３）、サーバ１０は、その受信したデータを解析し、認証処理に必要な情報を抽出する。なお、ステップＳ１０２の動作とステップＳ１０３の動作は、時間的に並行して行われてもよい。例えば、サーバ１０は、クライアント２０においてストリーミング再生される動画ストリーム又は音声ストリームを含むチャレンジデータを送信している間に、クライアント２０からレスポンスデータを受信してもよい。レスポンスデータも動画ストリーム又は音声ストリームを含んでもよい。
【００５２】
その後、サーバ１０の制御装置１１（判定部１６）は、抽出した情報に基づいて、ユーザによるレスポンスが正しいか（つまり、チャレンジの回答として適切であるか）否かを判定する。また、サーバ１０（判定部１６）は、チャレンジとそのレスポンスに関わる時間情報を利用して、ユーザの実存性を確認する。ここでは、例えば、その時間情報として、レスポンスの反応時間（response time）、あるいは、入力持続時間（input duration）が利用される。
【００５３】
レスポンスの反応時間とは、例えば、クライアント２０においてチャレンジが出力装置２４により出力されてからレスポンスが入力装置２５により入力されるまでの時間とする。この反応時間は、クライアント２０によるチャレンジの出力開始時刻とクライアント２０における正しいレスポンスの入力開始時刻との差を求めることにより得ることができる。また、サーバ１０の送信部１５がチャレンジを送信してからサーバ１０がレスポンスを受信するまでの時間は、レスポンスの反応時間にほぼ比例することから、当該時間を反応時間として利用してもよい。言い換えると、サーバ１０がチャレンジを送信した送信開始時間（時刻）とサーバ１０がレスポンスを受信した受信開始時間（時刻）との差を反応時間として利用してもよい。
【００５４】
レスポンスの入力持続時間とは、チャレンジに対してユーザがレスポンスを入力している時間である。つまり、チャレンジが、ユーザに対して、指定されたアクション（例えば、顔の向きを変える、表情を切り換える、発声する等）を実行することを指示する指令情報である場合がある。この場合には、そのチャレンジの指示に従ってユーザがアクションを実行することがレスポンスであり、当該レスポンスであるアクションを実行している期間（時間）が入力持続時間である。なお、チャレンジがアクションの実行を指示する情報である場合には、そのレスポンスであるアクションを入力する装置として、クライアント２０におけるカメラやマイクロフォンが動作する。
【００５５】
サーバ１０は、反応時間あるいは入力持続時間が予め定められた実効性条件を満たし当該時間情報が適正であるか否かを判断する。実効性条件とは、レスポンスが人間によるものであると想定できる条件である。
【００５６】
そして、サーバ１０は、レスポンスの正誤判定と、時間情報の適正判定との結果に基づいて、ユーザの実存性を確認できたか否かを判断する（ステップＳ１０４）。受信したレスポンスが、チャレンジに対するレスポンスとして正しく、かつ、チャレンジとそのレスポンスに関わる時間情報が適正である場合には、制御装置１１（判定部１６）は、ユーザの実存性が確認できたと判定する（ステップＳ１０５）。
【００５７】
また、受信したレスポンスが、チャレンジに対するレスポンスとして正しくない、あるいは、レスポンスに関わる時間情報が適正でない場合には、制御装置１１（判定部１６）は、ユーザの実存性が確認できないと判定する（ステップＳ１０６）。つまり、制御装置１１（判定部１６）は、ユーザが人間でないおそれがあると判定する。
【００５８】
この第２実施形態では、認証装置であるサーバ１０は、チャレンジ・レスポンス・テストとして、連続して順々に提示される複数のチャレンジに対する複数のレスポンスをユーザに要求する。そして、サーバ１０は、ユーザによるそれらレスポンスの反応時間や入力持続時間等の時間情報に基づいてユーザが人間であるか否か（つまり、ユーザの実存性）を確認する。言い換えると、サーバ１０は、レスポンスが適切なタイミング（期間）で入力されているか否かに基づいてユーザが人間であるか否かを確認する。
【００５９】
さらに、サーバ１０は、複数のレスポンスの少なくとも一つに生体情報（例えば、顔画像、音声等）が含まれるようにユーザにチャレンジ・レスポンス・テストのレスポンスを要求する。すなわち、サーバ１０は、ユーザの生体情報（例えば、顔画像、音声等）を含むレスポンスに関する反応時間や入力持続時間等の時間情報が適正であるか否かに基づいてユーザの実存性を確認する。したがって、第２実施形態におけるサーバ１０は、人間が容易に判別できないほどの歪みやノイズを含む複雑なチャレンジ画像を必ずしも用いる必要がないという利点を得ることができる。
【００６０】
さらに、この第２実施形態では、複数のレスポンスの少なくとも一つには、生体情報（例えば、顔画像、音声）が含まれている。これにより、サーバ１０は、次のような効果を得ることができる。すなわち、サーバ１０は、ユーザの実存性確認のために取得したレスポンスに含まれている生体情報を、ユーザの本人確認（個人認証）や一意性確認にも利用することができる。既に述べたように、安全かつ信頼性の高いオンラインサービスを提供するためには、キャプチャ（CAPTCHA）による実存性確認だけでは十分ではなく、キャプチャ（CAPTCHA）とは別に本人確認と一意性の確認との一方又は両方を行うことが好ましい。本人確認（個人認証）とは、オンラインサービスにアクセスするユーザがオンラインサービスの利用を許可された人物であるか否かを確認することである。一意性確認とは、一人の個人に対して複数のオンラインアカウントが重複して発行されていないことを確認することである。この第２実施形態では、サーバ１０は、ユーザの実存性確認に使用するレスポンスにユーザの生体情報が含まれているため、この生体情報をユーザの本人確認と一意性確認にも使用することができる。つまり、サーバ１０は、ユーザによる一つのレスポンスを複数の認証処理に利用できることにより、レスポンスを入力するユーザの負担の増加を抑制しつつ、複数の認証処理によりユーザの認証を行うことができる。よって、サーバ１０は、オンラインサービスの安全性と信頼性を高めることができる。
【００６１】
次に、この第２実施形態におけるオンラインサービスシステムの認証に関する処理の具体例を説明する。図４は、そのオンラインサービスシステムの認証に関する処理の流れを表すシーケンス図である。この図４に表されている処理の流れは、オンラインアカウントを発行する処理に関する。このオンラインアカウントの発行処理では、その処理の途中で、第２実施形態における認証処理が実行される。
【００６２】
例えば、ユーザがクライアント２０に入力装置２５を利用してアカウントの発行を指示すると、クライアント２０がサーバ１０に向けてアカウント（オンラインアカウント）の発行要求を送信する（ステップＳ２０１）。オンラインアカウントの発行要求は、言い換えれば、オンラインサービスを利用するために必要なユーザ登録申請である。
【００６３】
サーバ１０は、その発行要求を受信すると、クライアント２０を操作しているユーザが人間であるか否かを確認する実存性の確認（チャレンジ・レスポンス・テスト）を実施する。
【００６４】
すなわち、サーバ１０は、チャレンジデータを生成し当該チャレンジデータをクライアント２０に送信する（ステップＳ２０２）。クライアント２０は、チャレンジデータを受信すると、当該チャレンジデータに基づいて、複数のチャレンジを連続して順々に出力装置２４を使用してユーザに提示する（ステップＳ２０３）。そして、ユーザが入力装置２５を利用してチャレンジに対するレスポンスをクライアント２０に入力すると、クライアント２０は、そのレスポンスを受け付ける（ステップＳ２０４）。これにより、クライアント２０は、各チャレンジに対するレスポンスを含むレスポンスデータを生成し、当該レスポンスデータをサーバ１０に送信する（ステップＳ２０５）。
【００６５】
サーバ１０は、レスポンスデータを受信すると、受信したレスポンスを利用して実存性を確認する（ステップＳ２０６）。すなわち、サーバ１０は、チャレンジに対するレスポンスの正誤の判定結果、および、レスポンスに関わる時間情報を利用して、ユーザの実存性を確認する。
【００６６】
また、サーバ１０は、レスポンスに含まれていた生体情報を、記憶装置１４に登録されている生体情報に照合する。例えば、サーバ１０は、レスポンスに含まれていた生体情報と、登録されている生体情報との類似度（合致確率）を算出し、この類似度が閾値以上であるか否かを判断する。これにより、サーバ１０は、レスポンスに含まれていた生体情報に合致する生体情報（類似度が閾値以上である生体情報）が記憶装置１４に登録されていないと判断した場合には、アカウントを要求したユーザは未登録であると判断する。これにより、サーバ１０は、ユーザの一意性を確認できたことから、ユーザに対してアカウントを発行する。
【００６７】
一方、レスポンスに含まれていた生体情報が登録されている生体情報と合致する場合（類似度が閾値以上である生体情報が記憶装置１４に登録されている場合）には、サーバ１０は、アカウントの発行を拒絶する。つまり、サーバ１０は、アカウントの発行を要求するユーザが登録済みのユーザと同一人物である蓋然性が高いと判断し、同じユーザに複数のアカウントを発行することを防止するために、アカウントの発行を拒絶する。
【００６８】
そして、サーバ１０は、認証処理の結果に基づいたアカウントの発行の可否判定結果をクライアント２０に送信する（ステップＳ２０７）。クライアント２０は、その判定結果を受けると、当該判定結果を出力装置２４を利用してユーザに提示する（ステップＳ２０８）。
【００６９】
なお、認証処理において、サーバ１０は、ユーザの実存性が確認されなかった場合には、ユーザの一意性を確認する処理を実行しなくともよい。また、サーバ１０は、ユーザの実存性を確認する処理と、ユーザの一意性を確認する処理とを時間的に並行して行ってもよい。
【００７０】
次に、オンラインサービスシステムにおける別の処理の流れを説明する。ここでは、ユーザがオンラインサービスの利用を開始する際に、この第２実施形態における認証処理が実行される場合のオンラインサービスシステムの処理の流れを説明する。図５は、その処理の流れを説明するシーケンス図である。
【００７１】
例えば、ユーザがオンラインサービスを提供するサーバ１０とのアクセスを入力装置２５を利用してクライアント２０に要求すると、クライアント２０がサーバ１０に向けてアクセス要求を送信する（ステップＳ３０１）。ここでは、クライアント２０は、アクセス要求として、ユーザに割り当てられたユーザＩＤ（Identification）（アカウントＩＤ）を送信する。
【００７２】
サーバ１０は、そのアクセス要求を受信すると、クライアント２０を操作しているユーザがサービスの提供を許可されているか否かを判定する本人確認の処理として、チャレンジ・レスポンス・テストを実施する。
【００７３】
すなわち、サーバ１０は、チャレンジデータを生成し当該チャレンジデータをクライアント２０に送信する（ステップＳ３０２）。クライアント２０は、チャレンジデータを受信すると、当該チャレンジデータに基づいて、複数のチャレンジを連続して順々に出力装置２４を使用してユーザに提示する（ステップＳ３０３）。そして、ユーザが入力装置２５を利用してチャレンジに対するレスポンスをクライアント２０に入力すると、クライアント２０は、そのレスポンスを受け付ける（ステップＳ３０４）。これにより、クライアント２０は、各チャレンジに対するレスポンスを含むレスポンスデータを生成し、当該レスポンスデータをサーバ１０に送信する（ステップＳ３０５）。
【００７４】
サーバ１０は、レスポンスデータを受信すると、受信したレスポンスを利用して前記同様にユーザの実存性を確認する。さらに、サーバ１０は、レスポンスに含まれるユーザの生体情報を利用してユーザの本人確認（個人認証）を行う（ステップＳ３０６）。すなわち、サーバ１０は、アクセス要求として受信したユーザＩＤと同じユーザＩＤに関連付けられている生体情報を記憶装置１４から読み出す。そして、サーバ１０は、クライアント２０から受信したレスポンスに含まれていた生体情報を、その読み出した生体情報に照合する。これにより、例えば、サーバ１０は、レスポンスに含まれていた生体情報と、登録されている生体情報との類似度（合致確率）を算出する。
【００７５】
サーバ１０は、レスポンスに含まれていた生体情報が登録されている生体情報と高い確率で合致する場合（つまり、類似度（合致確率）が閾値以上である場合）には、アクセスを求めるユーザが正規ユーザである蓋然性が高いと判断する。これにより、サーバ１０は、ユーザが操作しているクライアント２０とのアクセスを許可する。
【００７６】
一方、サーバ１０は、レスポンスに含まれていた生体情報が登録されている生体情報と合致する確率が低い場合（つまり、類似度（合致確率）が閾値未満である場合）には、アクセスを求めるユーザが正規ユーザでない虞があると判断する。これにより、サーバ１０は、ユーザが操作しているクライアント２０とのアクセスを拒絶する。
【００７７】
そして、サーバ１０は、本人確認の結果に基づいたアクセス（換言すれば、サービス提供）の可否判定結果をクライアント２０に送信する（ステップＳ３０７）。クライアント２０は、その判定結果を受けると、当該判定結果を出力装置２４を利用してユーザに提示する（ステップＳ３０８）。
【００７８】
なお、サーバ１０は、ユーザの実存性が確認されなかった場合には、ユーザの本人確認の処理を実行しなくともよい。また、サーバ１０は、ユーザの実存性を確認する処理と、ユーザの本人確認の処理とを時間的に並行して行ってもよい。
【００７９】
図４と図５を利用して説明したオンラインシステムの各処理の流れでは、ユーザの実存性を確認するために実施されたチャレンジ・レスポンス・テストで得られた生体情報が実存性の確認だけでなく本人確認あるいは一意性の確認にも利用されている。これにより、サーバ（認証装置）１０は、ユーザの負担が増加することを抑制しつつ、複数の認証に係る処理を実行することができ、認証に対する信頼性を高めることができる。
【００８０】
なお、ここでは、第２実施形態における認証処理を含むシステムの処理として、オンラインアカウントの新規発行処理およびオンラインサービスの利用開始処理を例にして説明している。しかしながら、第２実施形態における認証処理が適用される処理は、それらに限定されない。
【００８１】
次に、第２実施形態におけるサーバ１０が実施する認証処理であるチャレンジ・レスポンス・テストで使用するチャレンジの具体例を説明する。
【００８２】
例えば、サーバ１０からクライアント２０に提供される複数のチャレンジは、クライアント２０においてストリーミング再生される動画ストリーム又は音声ストリームの態様とすることが考えられる。動画ストリーム又は音声ストリームは、複数のチャレンジを連続して順々に提示する。なお、ここでの“ストリーミング”又は“ストリーミング再生”との用語は、データファイルをダウンロードしながら再生する技術を意味する。すなわち、この明細書では、“ストリーミング”又は“ストリーミング再生”は、動画又は音声のストリームがキャッシュされない純粋なストリーミングだけでなく、ストリームがキャッシュされるプログレッシブダウンロードを含む。プログレッシブダウンロードは、プログレッシブストリーミング又はオンデマンドストリーミングと呼ばれることもある。
【００８３】
また、１つの動画ストリーム又は音声ストリームに含まれるチャレンジの数と各チャレンジの再生時間の長さは、認証精度、ユーザの標準的な反応時間、ユーザの負担などを考慮して適宜に設定される。例えば、チャレンジの数を３つ程度とし、動画ストリーム又は音声ストリームの全体の再生時間は、例えば、５秒〜１０秒程度としてもよい。
【００８４】
サーバ１０は、予め準備された複数のチャレンジ（例えば、画像、音声など）から幾つかのチャレンジをランダムに選択し、選択されたチャレンジを連結することによって、１つの動画ストリーム又は音声ストリームを生成する。
【００８５】
コンピュータは、映像ストリーム又は音声ストリームの態様により連続して順次提供される複数のチャレンジのそれぞれを容易にチャレンジ解読することができない。このため、複数のチャレンジを映像ストリーム又は音声ストリームの態様として利用することにより、サーバ１０は、ユーザの実存性に対する判定（確認）の精度を高めることができる。つまり、映像ストリーム又は音声ストリームの態様で提供される複数のチャレンジは、クライアント２０によって受信されると直ちに順次再生され、ユーザは、それらチャレンジに対し即時的な（リアルタイムな）レスポンスが要求される。しかしながら、コンピュータは、順次提供されるチャレンジを即時的に解読することが困難であるから、正しいレスポンスをサーバ１０に回答（返信）することができない。これにより、コンピュータが人間になりすまそうとしても、サーバ１０は、映像ストリーム又は音声ストリームの態様である複数のチャレンジを利用した実存性の確認処理によって、ユーザの実存性を否定することができる。
【００８６】
また、サーバ１０は、各チャレンジがユーザに提示されている時間（以下、出力持続時間とも記す）が互いに異なるようにクライアント２０の出力装置２４を制御するデータを含むチャレンジデータを生成してもよい。さらに、サーバ１０は、各チャレンジの出力持続時間をランダムに決定してもよい。例えば、サーバ１０は、動画ストリーム又は音声ストリームに含まれる各チャレンジ（画像や音声）の表示時間又は出力時間をチャレンジ毎に異ならせる。これにより、コンピュータは、チャレンジが切り替わるタイミングを予測することが難しくなるから、チャレンジの解読がより一層困難となる。このことにより、サーバ１０は、ユーザの実存性に対する判定（確認）の精度をより高めることができる。
【００８７】
なお、複数のチャレンジを動画ストリーム又は音声ストリームの態様でもってユーザに提示することによって、ユーザの実存性に対する判定の精度を高めることができるが、複数のチャレンジは、動画ストリーム又は音声ストリームの態様でなくてもよい。
【００８８】
例えば、サーバ１０は、各チャレンジを独立したデータファイル（例えば、静止画ファイル、音声ファイル）としてもよい。この場合には、サーバ１０は、チャレンジの静止画表示又は音声出力が予め定められたタイミングでもって更新されるようにクライアント２０の出力装置２４を制御する制御データを含むチャレンジデータを生成する。さらに、サーバ１０は、そのチャレンジの静止画表示又は音声出力の更新タイミングが非周期的となるように各チャレンジの出力持続時間を調整してもよい。さらに、サーバ１０は、そのチャレンジの静止画表示又は音声出力の出力持続時間が互いに異なるように各チャレンジの出力持続時間を調整してもよい。
【００８９】
図６〜図９は、チャレンジの具体例を図示している。図６〜図９に図示されている何れのチャレンジも、ユーザの生体情報を含むレスポンスを要求するチャレンジである。サーバ１０は、例えば、これらのチャレンジの中からユーザに提示する複数のチャレンジをランダムに選択する。また、サーバ１０は、ランダムに選択した複数のチャレンジを連結することによって、動画ストリーム又は音声ストリームを生成してもよい。
【００９０】
図６は、顔の向きをユーザ認証に用いる場合のチャレンジの具体例を表す図である。図６の例では、４通りのチャレンジ（画像Ａ、画像Ｂ、画像Ｃ、音声）が種類毎に分類され、同じ種類のチャレンジが関連付けられている。その種類毎に、識別子である“コード”が付与され、また、名称である“種別”が与えられている。例えば、コードが“ＦＤ０２”であり、かつ、種別が“左向き”である種類の４つのチャレンジのうち、画像Ａは左向きの顔の鏡像反転を表すアイコン画像である。画像Ｂは“左を向いてください”という文字列を表す画像である。画像Ｃは左を向くように指示する矢印アイコン画像である。音声は左を向くように指示する音声データである。
【００９１】
図７は、顔の表情をユーザ認証に用いる場合のチャレンジの具体例を表す図である。図７においても、図６と同様に、４通りのチャレンジ（画像Ａ、画像Ｂ、画像Ｃ、音声）が種類毎に分類され、同じ種類のチャレンジが関連付けられている。その種類毎に、識別子である“コード”が付与され、また、名称である“種別”が与えられている。例えば、コードが“ＦＥ０２”であり、かつ、種別が“喜”である種類の４つのチャレンジのうち、画像Ａは喜んだ顔を表すアイコン画像である。画像Ｂは“喜んだ表情をしてください”という文字列を表す画像である。画像Ｃは喜びを表す漢字を表すアイコン画像である。音声は喜んだ表情をするように指示する音声データである。
【００９２】
図８は、数字の発音をユーザ認証に用いる場合のチャレンジの具体例を表す図である。図８においても、図６および図７と同様に、４通りのチャレンジ（画像Ａ、画像Ｂ、画像Ｃ、画像Ｄ）が種類毎に分類され、同じ種類のチャレンジが関連付けられている。その種類毎に、識別子である“コード”が付与され、また、名称である“種別”が与えられている。例えば、コードが“ＶＮ０２”であり、かつ、種別が“２発音”である種類の４つのチャレンジのうち、画像Ａはアラビア数字“２”および“この数字を発音してください”の文字列を表す画像である。画像Ｂは２つの点および“点の数を発音してください”という文字列を表す画像である。画像Ｃは２本の線および“線の数を発音してください”という文字列を表す画像である。画像Ｄは答えが２である計算式および“答えを発音してください”という文字列を表す画像である。
【００９３】
図９は、母音の発音をユーザ認証に用いる場合のチャレンジの具体例を表す図である。図９においても、図６〜図８と同様に、４通りのチャレンジ（画像Ａ、画像Ｂ、画像Ｃ、画像Ｄ）が種類毎に分類され、同じ種類のチャレンジが関連付けられている。その種類毎に、識別子である“コード”が付与され、また、名称である“種別”が与えられている。例えば、コードが“ＶＶ＿Ａ”であり、かつ、種別が“ア発音”である種類の４つのチャレンジのうち、画像Ａは英小文字“ａ”および“発音してください”の文字列を表す画像である。画像Ｂは英大文字“Ａ”および“発音してください”という文字列を表す画像である。画像Ｃはカタカナ“ア”および“発音してください”という文字列を表す画像である。画像Ｄはひらがな“あ”および“発音してください”という文字列を表す画像である。
【００９４】
例えば、図６に表されるような顔の向きに関するチャレンジが利用される場合には、サーバ１０は、そのチャレンジに対するレスポンスに含まれる例えば画像データから抽出される顔の向きがチャレンジによる指示と合っているか否かを判断する。また、チャレンジによって顔の向きを変えている時間（入力持続時間）をも指示されている場合には、サーバ１０は、レスポンスから検出した入力持続時間がチャレンジによる指示（例えば出力持続時間の指示）に応じた時間であるか否かを判断する。
【００９５】
また、例えば、図６や図７に表されるような音をユーザ認証に用いる場合には、サーバ１０は、レスポンスから検出された音がチャレンジによる指示に応じているか否かを判断する。また、サーバ１０は、レスポンスから検出されたチャレンジに対する反応時間や音の入力持続時間がチャレンジによる指示（例えば出力持続時間の指示）に応じた時間であるか否かを判断する。
【００９６】
図１０は、複数のチャレンジとこれに応じた複数のレスポンスの具体例を表す図である。この具体例では、チャレンジは、ストリーミング再生される動画ストリームの態様となっている。このチャレンジである動画ストリームでは、上を向く動作を要求する顔アイコン画像がクライアント２０の出力装置２４（ディスプレイ）に表示される期間５０１がある。さらに、この動画ストリームでは、その後、数字の発声を要求する文字画像が表示されると共に、例えばその表示されている文字を読み上げる音声が流れる期間５０２があり、その後、左を向く動作を要求する顔アイコン画像が表示される期間５０３がある。すなわち、この動画ストリームでは、期間５０１，５０２，５０３によって、３つのチャレンジが表示される。また、それら期間５０１，５０２，５０３の各長さ（つまり、出力持続時間（チャレンジの再生時間））は互いに異なっている。つまり、期間５０１の長さ（出力持続時間）は３秒であり、期間５０２の長さ（出力持続時間）は５秒であり、期間５０３の長さ（出力持続時間）は２秒である。
【００９７】
図１０の具体例では、チャレンジに応じたレスポンスとして、ユーザが上を向いている動作と、“４”と発音している動作と、左を向いている動作とがある。これらのレスポンスは、例えば、入力装置２５であるカメラにより撮影されることにより、レスポンスデータである動画ストリームの態様でもってクライアント２０からサーバ１０に送信される。
【００９８】
サーバ１０は、受信したレスポンスデータ（例えば動画ストリーム）を解析し、レスポンスを特定する。そして、サーバ１０は、そのレスポンスを利用した認証処理を実行する。
【００９９】
例えば、サーバ１０は、認証処理として、“上を向く”というチャレンジによる指示に対してユーザが反応する（上を向く）までの反応時間（Ｔ１）が所定値（例えば、１．０秒）以下であるか否かを判定する。また、サーバ１０は、ユーザが上を向き続けている時間（入力持続時間（Ｔ２））が、チャレンジが提示されている出力持続時間（３秒）に応じた長さ（例えば、２．０秒〜４．０秒の範囲内）であるか否かを判定してもよい。さらに、サーバ１０は、“答えを発音してください”というチャレンジによる指示に対してユーザが反応する（答える）までの反応時間（Ｔ３）が所定値（例えば、１．０秒）以下であるか否かを判定してもよい。さらに、サーバ１０は、“左を向く”というチャレンジによる指示に対してユーザが反応する（左を向く）までの反応時間（Ｔ４）が所定値（例えば、１．０秒）以下であるか否かを判定してもよい。さらにまた、サーバ１０は、ユーザが左を向き続けている時間（入力持続時間（Ｔ５））が、チャレンジが提示されている出力持続時間（２秒）に応じた長さ（例えば、１．０秒〜３．０秒の範囲内）であるか否かを判定してもよい。
【０１００】
＜その他の実施形態＞
なお、本発明は、第１と第２の実施形態に限定されず、様々な実施の形態を採り得る。例えば、第２実施形態では、本発明に係る認証装置がオンラインサービスシステムに適用される例を説明している。これに対し、本発明の認証装置は、オンラインサービスシステム以外のシステムにも適用可能である。
【０１０１】
第２実施形態で説明されたサーバ１０およびクライアント２０により行われる処理のうちの少なくとも一部の処理（例えば、レスポンスデータから顔画像や所定の音声を検出するためのパターンマッチング）は、専用ハードウェアを用いて行われてもよい。
【０１０２】
また、上記の実施形態の一部又は全部は、以下の付記のようにも記載され得るが、以下には限られない。
【０１０３】
（付記１）
複数のチャレンジを連続して順々に出力するように入出力システムを制御するためのチャレンジデータを前記入出力システムに送信すること、
前記複数のチャレンジに対してユーザによって行われた複数のレスポンスを示すレスポンスデータを前記入出力システムから受信すること、および
前記ユーザが人間であるか否かを確認するために、前記複数のレスポンスの各々の入力開始時刻および入力持続時間の少なくとも一方が前記複数のチャレンジの各々の出力開始時刻および出力持続時間の少なくとも一方と矛盾しないかを判定すること、を備え、
前記複数のレスポンスの少なくとも一部は前記ユーザの生体情報を示す、チャレンジ・レスポンス・テストを行うための方法。
【０１０４】
（付記２）
前記複数のレスポンスの少なくとも一部は前記ユーザの生体情報を示し、
前記方法は、前記ユーザの本人確認および一意性確認のうち少なくとも一方のために、前記生体情報を前記ユーザの予め登録された生体情報又は他のユーザの予め登録された生体情報と比較することをさらに備える、付記１に記載の方法。
【０１０５】
（付記３）
前記送信することに先立って、オンラインサービスへのアクセス要求又はオンラインアカウントの発行要求を前記入出力システムから受信することをさらに備える、付記２に記載の方法。
【０１０６】
（付記４）
前記ユーザが人間であることの確認に成功し且つ前記ユーザの本人確認および一意性確認のうち少なくとも一方に成功したことを条件として、前記オンラインサービスへのアクセス又は前記オンラインアカウントの発行が許可されることを示す応答を前記入出力システムに送信することをさらに備える、付記３に記載の方法。
【０１０７】
（付記５）
前記チャレンジデータは、前記複数のチャレンジの１つとして顔の向きを指示するための第１のチャレンジ画像データ又は第１のチャレンジ音声データを含み、
前記レスポンスデータは、前記ユーザの顔を撮影したレスポンス画像データを含む、付記２乃至付記４のいずれか１項に記載の方法。
【０１０８】
（付記６）
前記判定することは、前記レスポンス画像データから検出された前記ユーザの顔の向きとその入力持続時間が、前記第１のチャレンジ画像データ又は前記第１のチャレンジ音声データにおける前記指示の出力持続時間と矛盾しないかを判定することを含む、付記５に記載の方法。
【０１０９】
（付記７）
前記チャレンジデータは、前記複数のチャレンジの１つとして所定の音又は単語の発声を指示するための第２のチャレンジ画像データ又は第２のチャレンジ音声データを含み、
前記レスポンスデータは、前記ユーザの発する音声を記録したレスポンス音声データを含む、付記２乃至付記６のいずれか１項に記載の方法。
【０１１０】
（付記８）
前記判定することは、前記レスポンス音声データから検出された前記ユーザの音声とその入力持続時間が、前記第２のチャレンジ画像データ又は前記第２のチャレンジ音声データにおける前記指示の出力持続時間と矛盾しないかを判定することを含む、付記７に記載の方法。
【０１１１】
（付記９）
前記チャレンジデータは、前記入出力システムにおいてストリーミング再生され、前記複数のチャレンジを連続して順々に示す動画ストリーム又は音声ストリームを含む、付記１乃至付記８のいずれか１項に記載の方法。
【０１１２】
（付記１０）
前記ストリーミング再生は、プログレッシブダウンロードを含む、付記９に記載の方法。
【０１１３】
（付記１１）
前記複数のチャレンジの出力持続時間が互いに異なるように前記チャレンジデータを生成することをさらに備える、付記１乃至付記１０のいずれか１項に記載の方法。
【０１１４】
（付記１２）
メモリと、
前記メモリに結合され、付記１乃至付記１１のいずれか１項に記載の方法を実行するよう構成された少なくとも１つのプロセッサと、を備えるコンピュータシステム。
【０１１５】
（付記１３）
付記１乃至付記１１のいずれか１項に記載の方法をコンピュータに行わせるためのプログラム。
【０１１６】
以上、上記した実施形態を模範的な例として本発明を説明した。しかしながら、本発明は、上記した実施形態には限定されない。即ち、本発明は、本発明のスコープ内において、当業者が理解し得る様々な態様を適用することができる。
【０１１７】
この出願は、２０１４年６月１９日に出願された日本出願特願２０１４−１２６３５３を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【符号の説明】
【０１１８】
１  認証装置
２，１５  送信部
３，１６  判定部
７  端末装置
１０  サーバ
２０  クライアント
【図１】
2015194135.tif 000003
【図２】
2015194135.tif 000004
【図３】
2015194135.tif 000005
【図４】
2015194135.tif 000006
【図５】
2015194135.tif 000007
【図６】
2015194135.tif 000008
【図７】
2015194135.tif 000009
【図８】
2015194135.tif 000010
【図９】
2015194135.tif 000011
【図１０】
2015194135.tif 000012
【手続補正書】
【提出日】平成28年12月13日(2016.12.13)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
認証処理に使用する情報を認証対象のユーザが入力する基になる情報であるチャレンジを、当該チャレンジを前記ユーザに提示する端末装置に向けて送信する送信手段と、
前記チャレンジに基づいて前記ユーザが前記端末装置に入力した情報であるレスポンスの正誤を判定する認証処理を実行する判定手段と
を有し、
前記送信手段は、前記ユーザに対する複数の互いに異なるチャレンジを前記端末装置に送信する機能を有し、それらチャレンジの少なくとも一つは、前記ユーザの生体情報を含む前記レスポンスを前記ユーザに要求する情報であり、
前記判定手段は、前記チャレンジと、当該チャレンジに対する前記レスポンスとに関わる時間情報が、前記レスポンスに関わる条件を満たしているか否かを判断する機能をもさらに備えている認証装置。
【請求項２】
前記判定手段は、前記レスポンスに含まれている生体情報を利用して、前記認証対象のユーザが予め登録されているユーザであることを確認する本人確認と、前記認証対象のユーザに対して割り当てられている識別情報が一つであることを確認する一意性確認とのうちの一方又は両方を行う機能をさらに備えている請求項１に記載の認証装置。
【請求項３】
前記送信手段は、前記複数のチャレンジを前記端末装置に送信すると共に、当該複数のチャレンジが前記端末装置によって連続的に前記ユーザに提示されるように前記端末装置を制御する情報を前記端末装置に送信する請求項１又は請求項２に記載の認証装置。
【請求項４】
前記送信手段は、前記複数のチャレンジが前記端末装置によって連続的に順々に前記ユーザに提示されるように前記複数のチャレンジをストリームの態様でもって前記端末装置に送信する請求項１又は請求項２に記載の認証装置。
【請求項５】
前記送信手段は、前記各チャレンジが前記端末装置によって前記ユーザに提示されている出力持続時間が互いに異なるように前記端末装置を制御する情報を前記端末装置に送信する請求項１乃至請求項４の何れか一つに記載の認証装置。
【請求項６】
前記チャレンジは、画像あるいは音声である請求項１乃至請求項５の何れか一つに記載の認証装置。
【請求項７】
請求項１乃至請求項６の何れか一つに記載の認証装置と、
前記認証装置から送信された複数の前記チャレンジを認証対象のユーザに提示し、かつ、前記チャレンジに対する前記ユーザのレスポンスを受け付け当該レスポンスを前記認証装置に送信する前記端末装置と
を備える認証システム。
【請求項８】
認証処理に使用する情報を認証対象のユーザが入力する基になる情報であるチャレンジを、当該チャレンジを前記ユーザに提示する端末装置に向けて送信する際に、ユーザの生体情報を含むレスポンスを前記ユーザに要求するチャレンジを含む複数の互いに異なるチャレンジを前記端末装置にコンピュータが送信し、
前記チャレンジと、当該チャレンジに基づいて前記ユーザが前記端末装置に入力したレスポンスの正誤をコンピュータが判定し、
また、前記チャレンジと、当該チャレンジに対する前記レスポンスとに関わる時間情報が、前記レスポンスに関わる条件を満たしているか否かを判断する認証方法。
【請求項９】
認証処理に使用する情報を認証対象のユーザが入力する基になる情報であるチャレンジを、当該チャレンジを前記ユーザに提示する端末装置に向けて送信する際に、ユーザの生体情報を含むレスポンスを前記ユーザに要求するチャレンジを含む複数の互いに異なるチャレンジを前記端末装置に送信する処理と、
前記チャレンジと、当該チャレンジに基づいて前記ユーザが前記端末装置に入力したレスポンスの正誤を判定する処理と、
また、前記チャレンジと、当該チャレンジに対する前記レスポンスとに関わる時間情報が、前記レスポンスに関わる条件を満たしているか否かを判断する処理と
をコンピュータに実行させる処理手順が記憶されているコンピュータプログラム。
【国際調査報告】
2015194135.tif 000013
2015194135.tif 000014
2015194135.tif 000015