(57)【要約】【課題】ユーザ端末の操作者が容易に実行可能なキャプチャを、ユーザ端末に応じて選択的に提供する。【解決手段】ウェブサーバ１１が、ユーザ端末１３において動作するウェブブラウザの種類を判断する。認証サーバ１２が、判断されたウェブブラウザの種類に基づき、キャプチャ実行プログラムを決定する。認証サーバ１２が、決定されたキャプチャ実行プログラムを実行して、問題データ及び正解データを生成する。ウェブサーバ１１は、問題データに基づいて、ユーザ端末１３にキャプチャを提供する。認証サーバ１２は、ユーザ端末１３が生成した回答データと正解データとを比較して、認証が成功したか、失敗したかを判断する。【選択図】図６
2013103019.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも、サーバと、表示画面及び入力手段を備えたユーザ端末とによって構成されたコンピュータネットワークにおいて、上記サーバが認証用のキャプチャを上記ユーザ端末に提供する方法であって、
上記サーバが、上記ユーザ端末において動作するウェブブラウザの種類を判断するウェブブラウザ判断ステップと、
判断された上記ウェブブラウザの種類に基づき、上記サーバにそれぞれ記憶され、互いに異なるキャプチャを上記ユーザ端末のウェブブラウザにおいて実行させる複数のキャプチャ実行プログラムのうち、上記サーバが１つを決定するキャプチャ決定ステップと、
上記サーバが、決定された上記キャプチャ実行プログラムを実行して、上記ユーザ端末のウェブブラウザにキャプチャを実行させるキャプチャ実行ステップと、
実行されたキャプチャによって上記ユーザ端末が生成した回答データに基づき、上記サーバが認証が成功したか否かを判断する認証結果判断ステップと、を含むキャプチャ提供方法。
【請求項２】
上記ウェブブラウザ判断ステップにおいて、上記サーバは、上記ユーザ端末において動作するウェブブラウザが、パーソナルコンピュータにおいて動作するものであるか、またはモバイル端末において動作するものであるかを判断し、モバイル端末において動作するものであると判断した場合、上記キャプチャ決定ステップにおいて、上記キャプチャ実行プログラムとして画像キャプチャ実行プログラムの実行を決定し、
上記画像キャプチャ実行プログラムが実行された場合の上記キャプチャ実行ステップは、
上記サーバが複数の画像を有する１つの画像セットを決定する画像決定ステップと、
上記サーバが、決定された上記画像セットに含まれる複数の画像を、上記表示画面のうち上記ウェブブラウザによって定義された画像表示領域に表示させる画像表示ステップと、
上記サーバが、上記入力手段からの画像移動入力及び回答入力を上記ユーザ端末が受理可能な状態とし、且つ、受理された上記画像移動入力に基づき、上記複数の画像の少なくとも１つを、上記画像表示領域において相対的に移動させる画像移動ステップと、を含み、
上記画像キャプチャ実行プログラムが実行された場合の上記認証結果判断ステップは、
上記回答入力が受理されたときの上記複数の画像の相対位置を示す上記回答データが、上記サーバに記憶された条件を満たすか否かを上記サーバが判断し、条件を満たす場合、認証が成功したと判断し、条件を満たさない場合、認証が失敗したと判断するものである請求項１に記載のキャプチャ提供方法。
【請求項３】
上記画像キャプチャ実行プログラムが実行された場合の上記認証結果判断ステップにおいて、
上記サーバは、上記回答データが示す上記複数の画像の相対位置と、上記サーバに記憶された正解データが示す上記複数の画像の相対位置との差を計算し、当該差の絶対値が上記サーバに記憶された閾値よりも小さいか否かに基づいて上記認証が成功したか否かを判断する請求項２に記載のキャプチャ提供方法。
【請求項４】
上記画像セット及び上記正解データは、上記画像決定ステップにおいて、上記サーバによって生成され、
上記画像セットに含まれる上記複数の画像の縦横サイズは、上記ウェブブラウザ判断ステップによって判断された上記ウェブブラウザの種類に基づき決定される請求項３に記載のキャプチャ提供方法。
【請求項５】
上記画像セットは、動植物又は人工物を象った１つの画像と、当該動植物又は人工物が身につけ、又は、当該動植物又は人工物に対して取り付けられ、又は、当該動植物が食料とする物を象った少なくとも１つの画像とを含む請求項２から４のいずれかに記載のキャプチャ提供方法。
【請求項６】
上記動植物又は人工物が、人、人型のロボット、人以外の哺乳動物、又は乗り物である請求項５に記載のキャプチャ提供方法。
【請求項７】
上記画像セットは、第１の元画像の一部が欠落された状態に示される１つの画像と、上記欠落された一部に対応する輝度値を有しており、上記欠落された一部に配置されることで上記第１の元画像を復元する少なくとも１つの画像とを含む請求項２から４のいずれかに記載のキャプチャ提供方法。
【請求項８】
上記画像セットは、少なくとも一方に秘密画像が視覚的に識別不可能な態様で埋め込まれた第１画像及び第２画像を含み、
上記第１画像と上記第２画像とが、上記正解データが示す相対位置にあるとき、上記第１画像と上記第２画像とが互いに重なり合う重複領域において、上記第１画像と上記第２画像との対応する画素の輝度値同士を合計して得られる画像の少なくとも一部に上記秘密画像が含まれ、
上記画像表示ステップにおいて、上記サーバは、上記重複領域における上記第１画像と上記第２画像との対応する画素の輝度値の合計値を、上記重複領域の輝度値として上記表示画面に出力させる請求項３から４に記載のキャプチャ提供方法。
【請求項９】
上記第１画像は、
第２の元画像から生成される画像であり、上記秘密画像を埋め込む前と比較して、上記秘密画像を埋め込む領域の輝度値を、上記秘密画像の輝度値に基づく数値で変更することで画像に上記秘密画像を埋め込む埋込処理、画像の輝度値を反転させる反転処理、画像を半透明にする半透明処理の３つの処理のうちの０以上の処理が施された画像であり、
上記第２画像は、
上記第２の元画像から生成される画像であり、上記３つの処理のうちの上記第１画像に対して施されていない処理が施された画像である請求項８に記載のキャプチャ提供方法。
【請求項１０】
上記コンピュータネットワークは、インターネットであり、
上記サーバは、少なくとも、上記ユーザ端末と通信を行う第１のサーバ装置と、上記第１のサーバ装置と通信を行うことで、少なくとも上記認証結果判断ステップを実行する第２のサーバ装置と、を有する請求項１から９のいずれかに記載のキャプチャ提供方法。
【請求項１１】
少なくとも、サーバと、表示画面及び入力手段を備えたユーザ端末とによって構成されたコンピュータネットワークにおいて、上記サーバが認証用のキャプチャを上記ユーザ端末に提供するために上記サーバにおいて動作するプログラムであって、
上記ユーザ端末において動作するウェブブラウザの種類を判断する処理を上記サーバに実行させるウェブブラウザ判断機能と、
判断された上記ウェブブラウザの種類に基づき、上記サーバにそれぞれ記憶され、互いに異なるキャプチャを上記ユーザ端末のウェブブラウザにおいて実行させる複数のキャプチャ実行プログラムのうち、１つを決定する処理を上記サーバに実行させるキャプチャ決定機能と、
決定された上記キャプチャ実行プログラムを実行して、上記ユーザ端末のウェブブラウザにキャプチャを実行させるための処理を上記サーバに実行させるキャプチャ実行機能と、
実行されたキャプチャによって上記ユーザ端末が生成した回答データに基づき、上記サーバが認証が成功したか否かを判断する処理を上記サーバに実行させる認証結果判断機能と、を有するプログラム。
【請求項１２】
少なくとも、サーバと、表示画面及び入力手段を備えたユーザ端末とによって構成されたコンピュータネットワークにおいて、上記サーバが認証用のキャプチャを上記ユーザ端末に提供する方法であって、
上記サーバが、複数の画像を有する１つの画像セットを決定する画像決定ステップと、
上記サーバが、決定された上記画像セットに含まれる複数の画像を、上記表示画面に定義された画像表示領域に表示させる画像表示ステップと、
上記サーバが、上記入力手段からの画像移動入力及び回答入力を上記ユーザ端末が受理可能な状態とし、且つ、受理された上記画像移動入力に基づき、上記複数の画像の少なくとも１つを、上記画像表示領域において相対的に移動させる画像移動ステップと、
上記回答入力が受理されたときの上記複数の画像の相対位置が、上記サーバに記憶された条件を満たすか否かを上記サーバが判断し、条件を満たす場合、認証が成功したと判断し、条件を満たさない場合、認証が失敗したと判断する認証結果判断ステップと、を含むキャプチャ提供方法。
【請求項１３】
少なくとも、サーバと、表示画面及び入力手段を備えたユーザ端末とによって構成されたコンピュータネットワークにおいて、上記サーバが認証用のキャプチャを上記ユーザ端末に提供するために上記サーバにおいて動作するプログラムであって、
複数の画像を有する１つの画像セットを決定する処理を上記サーバに実行させる画像決定機能と、
決定された上記画像セットに含まれる複数の画像を、上記表示画面に定義された画像表示領域に表示させる処理を上記サーバに実行させる画像表示機能と、
上記入力手段からの画像移動入力及び回答入力を上記ユーザ端末が受理可能な状態とする処理、及び、受理された上記画像移動入力に基づき、上記複数の画像の少なくとも１つを、上記画像表示領域において相対的に移動させる処理を上記サーバに実行させる画像移動機能と、
上記回答入力が受理されたときの上記複数の画像の相対位置が、上記サーバに記憶された条件を満たすか否かを判断し、条件を満たす場合、認証が成功したと判断し、条件を満たさない場合、認証が失敗したと判断する処理を上記サーバに実行させる認証結果判断機能と、を有するプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーバがユーザ端末に認証用のキャプチャを提供する方法、及びプログラムに関する。
【背景技術】
【０００２】
インターネットなどのコンピュータネットワークにおいて、悪意のあるプログラムによって動作し、サーバへのアクセスを自動的に行うコンピュータが問題となっている。このようなコンピュータは、サーバによって提供される各種アカウントの自動取得やログインなど、本来は人による操作を前提とした処理を自動的に実行する。【０００３】
ユーザ端末が人によって操作されているか否かをサーバが判断するため、キャプチャ（ＣＡＰＴＣＨＡ：Ｃｏｍｐｌｅｔｅｌｙ  Ａｕｔｏｍａｔｅｄ  Ｐｕｂｌｉｃ  Ｔｕｒｉｎｇ  ｔｅｓｔ  ｔｏ  ｔｅｌｌ  Ｃｏｍｐｕｔｅｒｓ  ａｎｄ  Ｈｕｍａｎｓ  Ａｐａｒｔ）が用いられている。キャプチャとは、サーバがユーザ端末に実行させるテストであり、人にとっては正解することが容易であるが、プログラムにとっては正解することが困難なテストである。サーバは、ユーザ端末からの回答に基づき、回答者がユーザ端末の操作者であるか、またはユーザ端末において動作するプログラムであるかを判断する。【０００４】
キャプチャとして、ユーザ端末の表示画面に画像を表示させ、その画像を利用するものがある。画像を利用したキャプチャとして、たとえば、特許文献１〜３に記載されたものが知られている。特許文献１には、問題文を画像として表示させ、その問題文に対して、ユーザが手書き入力で回答を入力する方法が開示されている。また、特許文献２には、課題画像及び課題画像に所定の画像処理を加えた加工画像を表示させ、同時にそれらの画像に関する問題文を表示させる方法が開示されている。また、特許文献３には、アニメーションを表示させ、アニメーション中に部分的に表れる文字をユーザに入力させる方法が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００９−２６６０６７号公報
【特許文献２】特開２０１０−６７０９６号公報
【特許文献３】特開２００８−５２７２７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
インターネットを経由したキャプチャは、パーソナルコンピュータによって実行されることを前提としていることが多い。しかしながら、表示画面のサイズや解像度、あるいは入力方法がユーザ端末によって異なるため、キャプチャを実行することが困難であることがある。特に、キャプチャがモバイル端末によって実行される場合にこのような問題が起こりやすい。【０００７】
本発明は、上記問題に鑑みてなされたものであり、その目的は、ユーザ端末の操作者が容易に実行可能なキャプチャを、ユーザ端末に応じて選択的に提供することにある。【０００８】
(1)  本発明は、少なくとも、サーバと、表示画面及び入力手段を備えたユーザ端末とによって構成されたコンピュータネットワークにおいて、上記サーバが認証用のキャプチャを上記ユーザ端末に提供する方法であって、上記サーバが、上記ユーザ端末において動作するウェブブラウザの種類を判断するウェブブラウザ判断ステップと、判断された上記ウェブブラウザの種類に基づき、上記サーバにそれぞれ記憶され、互いに異なるキャプチャを上記ユーザ端末のウェブブラウザにおいて実行させる複数のキャプチャ実行プログラムのうち、上記サーバが１つを決定するキャプチャ決定ステップと、上記サーバが、決定された上記キャプチャ実行プログラムを実行して、上記ユーザ端末のウェブブラウザにキャプチャを実行させるキャプチャ実行ステップと、実行されたキャプチャによって上記ユーザ端末が生成した回答データに基づき、上記サーバが認証が成功したか否かを判断する認証結果判断ステップと、を含む。【０００９】
ここで、本発明におけるサーバとは、コンピュータであって、ユーザ端末からの要求に基づき、ユーザ端末と通信を行うものである。また、サーバは、有線または無線の方法によって相互に通信可能に接続された複数の装置の集まりであってもよい。ユーザ端末とは、コンピュータであって、入力手段を介してユーザによって操作されるものである。表示画面及び入力手段は、ユーザ端末と一体に構成されていてもよいし、異なる装置として構成されていてもよい。【００１０】
本構成では、ユーザ端末のウェブブラウザの種類に基づき、キャプチャ実行プログラムが決定されて、キャプチャが提供される。したがって、ユーザ端末に最適なキャプチャを提供することができる。【００１１】
(2)  上記ウェブブラウザ判断ステップにおいて、上記サーバは、上記ユーザ端末において動作するウェブブラウザが、パーソナルコンピュータにおいて動作するものであるか、またはモバイル端末において動作するものであるかを判断し、モバイル端末において動作するものであると判断した場合、上記キャプチャ決定ステップにおいて、上記キャプチャ実行プログラムとして画像キャプチャ実行プログラムの実行を決定してもよい。上記画像キャプチャ実行プログラムが実行された場合の上記キャプチャ実行ステップは、上記サーバが複数の画像を有する１つの画像セットを決定する画像決定ステップと、上記サーバが、決定された上記画像セットに含まれる複数の画像を、上記表示画面のうち上記ウェブブラウザによって定義された画像表示領域に表示させる画像表示ステップと、上記サーバが、上記入力手段からの画像移動入力及び回答入力を上記ユーザ端末が受理可能な状態とし、且つ、受理された上記画像移動入力に基づき、上記複数の画像の少なくとも１つを、上記画像表示領域において相対的に移動させる画像移動ステップと、を含む。上記画像キャプチャ実行プログラムが実行された場合の上記認証結果判断ステップは、上記回答入力が受理されたときの上記複数の画像の相対位置を示す上記回答データが、上記サーバに記憶された条件を満たすか否かを上記サーバが判断し、条件を満たす場合、認証が成功したと判断し、条件を満たさない場合、認証が失敗したと判断するものである。【００１２】
ここで、本発明におけるパーソナルコンピュータとは、デスクトップＰＣ、ワークステーションなどを含むものである。また、モバイル端末とは、主として操作者が携帯して使用することを前提とした情報端末であり、スマートフォン、スマートブック、タブレットＰＣ、及びＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）などを含むものである。【００１３】
本構成によると、ユーザ端末がモバイル端末である場合には、画像キャプチャ実行プログラムが実行されて、ユーザ端末にキャプチャが提供される。その場合、ユーザは、表示画面に表示された複数の画像を、入力手段の操作（画像移動入力）によって相対的に移動させる。また、ユーザは、それとは異なる操作（回答入力）によって、画像の相対位置を決定する。決定された相対位置が条件を満たす場合にのみ、サーバは認証が成功したと判断する。ユーザ端末の操作者は文字入力などを行う必要がなく、表示された画像を移動させるのみでよい。したがって、モバイル端末においても容易にキャプチャを完了することができる。【００１４】
(3)  上記画像キャプチャ実行プログラムが実行された場合の上記認証結果判断ステップにおいて、上記サーバは、上記回答データが示す上記複数の画像の相対位置と、上記サーバに記憶された正解データが示す上記複数の画像の相対位置との差を計算し、当該差の絶対値が上記サーバに記憶された閾値よりも小さいか否かに基づいて上記認証が成功したか否かを判断してもよい。【００１５】
本構成では、回答データが示す相対位置と、正解データが示す相対位置とのずれが閾値の範囲に収まるか否かに基づいて、認証が成功したか否かの判断が行われる。【００１６】
(4)  上記画像セット及び上記正解データは、上記画像決定ステップにおいて、上記サーバによって生成され、上記画像セットに含まれる上記複数の画像の縦横サイズは、上記ウェブブラウザ判断ステップによって判断された上記ウェブブラウザの種類に基づき決定されてもよい。【００１７】
本構成では、ウェブブラウザの種類が判断された後に画像が生成される。判断されたウェブブラウザの種類に基づき、生成される画像の縦横サイズが決定される。【００１８】
(5)  上記画像セットは、動植物又は人工物を象った１つの画像と、当該動植物又は人工物が身につけ、又は、当該動植物又は人工物に対して取り付けられ、又は、当該動植物が食料とする物を象った少なくとも１つの画像とを含んでいてもよい。【００１９】
(6)  上記動植物又は人工物が、人、人型のロボット、人以外の哺乳動物、又は乗り物であってもよい。【００２０】
(7)  上記画像セットは、第１の元画像の一部が欠落された状態に示される１つの画像と、上記欠落された一部に対応する輝度値を有しており、上記欠落された一部に配置されることで上記第１の元画像を復元する少なくとも１つの画像とを含んでいてもよい。【００２１】
(8)  上記画像セットは、少なくとも一方に秘密画像が視覚的に識別不可能な態様で埋め込まれた第１画像及び第２画像を含んでいてもよい。上記第１画像と上記第２画像とが、上記正解データが示す相対位置にあるとき、上記第１画像と上記第２画像とが互いに重なり合う重複領域において、上記第１画像と上記第２画像との対応する画素の輝度値同士を合計して得られる画像の少なくとも一部に上記秘密画像が含まれる。上記画像表示ステップにおいて、上記サーバは、上記重複領域における上記第１画像と上記第２画像との対応する画素の輝度値の合計値を、上記重複領域の輝度値として上記表示画面に出力させる。【００２２】
本構成では、第１画像と第２画像とが、正解データが示す相対位置にあるとき、重複領域の一部に秘密画像が表示される。【００２３】
ここで、秘密画像が視覚的に識別不可能とは、表示された第１画像及び第２画像を個別に見ただけでは、秘密画像が認識できないことである。また、本構成では、重複領域に秘密画像が表示されたことがユーザによって認識可能であればよく、埋め込まれる前の秘密画像の輝度値が、完全に復元される必要はない。【００２４】
(9)  上記第１画像は、第２の元画像から生成される画像であり、上記秘密画像を埋め込む前と比較して、上記秘密画像を埋め込む領域の輝度値を、上記秘密画像の輝度値に基づく数値で変更することで画像に上記秘密画像を埋め込む埋込処理、画像の輝度値を反転させる反転処理、画像を半透明にする半透明処理の３つの処理のうちの０以上の処理が施された画像であってもよい。上記第２画像は、上記第２の元画像から生成される画像であり、上記３つの処理のうちの上記第１画像に対して施されていない処理が施された画像であってもよい。【００２５】
(10)  上記コンピュータネットワークは、インターネットであり、上記サーバは、少なくとも、上記ユーザ端末と通信を行う第１のサーバ装置と、上記第１のサーバ装置と通信を行うことで、少なくとも上記認証結果判断ステップを実行する第２のサーバ装置と、を有していてもよい。【００２６】
本構成のように、ユーザ端末と通信を行うサーバ装置と、認証結果の判断を行うサーバ装置とが別のものであってもよい。【００２７】
(11)  本発明は、少なくとも、サーバと、表示画面及び入力手段を備えたユーザ端末とによって構成されたコンピュータネットワークにおいて、上記サーバが認証用のキャプチャを上記ユーザ端末に提供するために上記サーバにおいて動作するプログラムであって、上記ユーザ端末において動作するウェブブラウザの種類を判断する処理を上記サーバに実行させるウェブブラウザ判断機能と、判断された上記ウェブブラウザの種類に基づき、上記サーバにそれぞれ記憶され、互いに異なるキャプチャを上記ユーザ端末のウェブブラウザにおいて実行させる複数のキャプチャ実行プログラムのうち、１つを決定する処理を上記サーバに実行させるキャプチャ決定機能と  決定された上記キャプチャ実行プログラムを実行して、上記ユーザ端末のウェブブラウザにキャプチャを実行させるための処理を上記サーバに実行させるキャプチャ実行機能と、  実行されたキャプチャによって上記ユーザ端末が生成した回答データに基づき、上記サーバが認証が成功したか否かを判断する処理を上記サーバに実行させる認証結果判断機能と、を有する。【００２８】
本発明を実施するために、サーバにおいて、上記のようなプログラムが実行されてもよい。【００２９】
(12)  本発明は、少なくとも、サーバと、表示画面及び入力手段を備えたユーザ端末とによって構成されたコンピュータネットワークにおいて、上記サーバが認証用のキャプチャを上記ユーザ端末に提供する方法であって、上記サーバが、複数の画像を有する１つの画像セットを決定する画像決定ステップと、上記サーバが、決定された上記画像セットに含まれる複数の画像を、上記表示画面に定義された画像表示領域に表示させる画像表示ステップと、上記サーバが、上記入力手段からの画像移動入力及び回答入力を上記ユーザ端末が受理可能な状態とし、且つ、受理された上記画像移動入力に基づき、上記複数の画像の少なくとも１つを、上記画像表示領域において相対的に移動させる画像移動ステップと、上記回答入力が受理されたときの上記複数の画像の相対位置が、上記サーバに記憶された条件を満たすか否かを上記サーバが判断し、条件を満たす場合、認証が成功したと判断し、条件を満たさない場合、認証が失敗したと判断する認証結果判断ステップと、を含んでいる。【００３０】
上記のように、ブラウザの判断を行わずに、画像セットを使用したキャプチャが実行されてもよい。【００３１】
(13)  本発明は、少なくとも、サーバと、表示画面及び入力手段を備えたユーザ端末とによって構成されたコンピュータネットワークにおいて、上記サーバが認証用のキャプチャを上記ユーザ端末に提供するために上記サーバにおいて動作するプログラムであって、複数の画像を有する１つの画像セットを決定する処理を上記サーバに実行させる画像決定機能と、決定された上記画像セットに含まれる複数の画像を、上記表示画面に定義された画像表示領域に表示させる処理を上記サーバに実行させる画像表示機能と、上記入力手段からの画像移動入力及び回答入力を上記ユーザ端末が受理可能な状態とする処理、及び、受理された上記画像移動入力に基づき、上記複数の画像の少なくとも１つを、上記画像表示領域において相対的に移動させる処理を上記サーバに実行させる画像移動機能と、上記回答入力が受理されたときの上記複数の画像の相対位置が、上記サーバに記憶された条件を満たすか否かを判断し、条件を満たす場合、認証が成功したと判断し、条件を満たさない場合、認証が失敗したと判断する処理を上記サーバに実行させる認証結果判断機能と、を有する。【００３２】
ブラウザの判断を行わずに、画像セットを使用したキャプチャを実行するために、上記のようなプログラムが実行されてもよい。
【発明の効果】
【００３３】
本発明によると、ユーザ端末の操作者が容易に実行可能なキャプチャを、ユーザ端末に応じて選択的に提供することができる。
【図面の簡単な説明】
【００３４】
【図１】図１（Ａ）は、本発明の実施形態に係る認証システム１０とユーザ端末１３とがインターネット１５を介して接続された様子を示す図である。図１（Ｂ）は、ウェブサーバ１１、認証サーバ１２、及びパーソナルコンピュータ１３Ｐに共通するハードウェア構成を示すブロック図である。
【図２】図２（Ａ）は、第１データテーブル４１の一例を示す図である。図２（Ｂ）は、第２データテーブル４２の一例を示す図である。
【図３】図３（Ａ）は、秘密画像３１の一例を示す図である。図３（Ｂ）は、第１画像３２の一例を示す図である。図３（Ｃ）は、第２画像３３の一例を示す図である。
【図４】図４は、ウェブサーバ１１、認証サーバ１２、及びユーザ端末１３が認証動作のために実行する処理や通信を時系列に沿って示すシーケンス図の前半部分である。
【図５】図５は、図４のシーケンス図に対応する後半部分である。図５の円の内部に記載された「Ａ」，「Ｂ」，「Ｃ」は、それぞれ図４の円の内部に記載された「Ａ」，「Ｂ」，「Ｃ」に対応するものである。
【図６】図６は、第１画像３２と第２画像３３とから、秘密画像３１が復元された様子を示す図である。
【図７】図７は、画像キャプチャ実行プログラムに基づく図４のＳ３の処理の流れを説明するフローチャートである。
【図８】図８は、本発明の変形例で使用される第１画像６１，第２画像６２，第３画像６３，第４画像６４の一例を示す図である。
【図９】図９は、本発明の変形例で使用される第１画像６５，第２画像６６，第１画像６７，第２画像６８の一例を示す図である。
【図１０】図１０は、本発明の変形例で使用される第１画像６９，第２画像７０，第１画像７１，第２画像７２の一例を示す図である。
【図１１】図１１は、ユーザ端末１３に応じて、複数のキャプチャのうちのいずれかが提供される様子を示した図である。
【発明を実施するための形態】
【００３５】
以下、適宜図面を参照して本発明の実施形態について説明する。なお、以下に説明される実施形態は本発明の一例にすぎず、本発明の要旨を変更しない範囲で、本発明の実施形態を適宜変更できることは言うまでもない。
【００３６】
［認証システム１０］
図１（Ａ）に示されるように、認証システム１０は、ウェブサーバ１１、及び認証サーバ１２などによって構成されている。各サーバは、通信回線１４を介してそれぞれインターネット１５に接続されている。ウェブサーバ１１と認証サーバ１２とは、同一のＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）またはＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）を介してインターネット１５に接続されていてもよいし、異なるネットワークを介してインターネット１５に接続されていてもよい。また、通信回線１４は、無線の方法によって実現されていてもよい。
【００３７】
ここで、ウェブサーバ１１及び認証サーバ１２を合わせたものが、本発明のサーバの一例である。ウェブサーバ１１が、本発明の第１のサーバ装置の一例である。認証サーバ１２が、本発明の第２のサーバ装置の一例である。インターネット１５が、本発明のコンピュータネットワークの一例である。
【００３８】
［ウェブサーバ１１］
ウェブサーバ１１は、通信回線１４を介してインターネット１５に接続されたユーザ端末１３と通信を行うものである。ウェブサーバ１１は、ユーザ端末１３からのアクセスを受けて、ユーザ端末１３とＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）コネクションを確立する。その状態において、ウェブサーバ１１は、ＨＴＴＰ（Ｈｙｐｅｒｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）などのプロトコルに基づき、ユーザ端末１３において動作するウェブブラウザに、ウェブページを構成するＨＴＭＬ（Ｈｙｐｅｒｔｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）のコードや画像データなどを提供する。ＨＴＭＬのコードがウェブブラウザによって解読され、ユーザ端末１３が有する表示画面にウェブページが表示される。ウェブサーバ１１にアクセスするユーザ端末１３は、パーソナルコンピュータ１３Ｐとモバイル端末１３Ｍとに大別される。
【００３９】
ウェブサーバ１１には、ユーザ端末１３を認証するためのプログラム（以下、第１認証プログラムとする。）がインストールされている。認証が必要とされる所定のＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）へユーザ端末１３がアクセスした場合、ウェブサーバ１１は、第１認証プログラムを実行する。ウェブサーバ１１は、認証サーバ１２と協働して、ユーザ端末１３を認証する。つまり、ユーザ端末１３が当該ＵＲＬへアクセスすることを許可するか否かを判断する。ウェブサーバ１１及び認証サーバ１２がユーザ端末１３を認証する一連の処理が認証動作と称される。認証動作の詳細は後述される。
【００４０】
ウェブサーバ１１のハードウェア構成の概略が図１（Ｂ）に示される。ウェブサーバ１１は、ＣＰＵ２１（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、メインメモリ２２、ハードディスクドライブ２３、通信アダプタ２４、マウス２５、キーボード２６、及びディスプレイ装置２７などが各種のコントローラ（不図示）を介してバス２８と接続されたものである。つまり各構成部材は、バス２８を介して相互に接続されている。ただし、ここで示されたものは最小限の構成であり、本実施形態を説明する上で必要のないものは省略されている。
【００４１】
ハードディスクドライブ２３には、上述された第１認証プログラムを含むウェブサーバ１１の機能を実現するために必要な各種のプログラムがインストールされている。これらのプログラムが必要に応じてメインメモリ２２にロードされ、ＣＰＵ２１によって実行される。また、ウェブサーバ１１は、通信アダプタ２４を介してインターネット１５と接続されている。ウェブサーバ１１の管理者は、ディスプレイ装置２７の表示を確認しながら、マウス２５及びキーボード２６を用いてウェブサーバ１１の設定や操作を行うことができる。あるいは、ウェブサーバ１１は、異なる端末を介して設定や操作を行うことができるように構成されていてもよい。なお、ウェブサーバ１１を構成する各構成部材は公知なものであるため、詳細な説明は省略される。
【００４２】
また、認証サーバ１２及びパーソナルコンピュータ１３Ｐのハードウェア構成は、図１（Ｂ）の構成と同様のものである。ただし、各構成部材は、各々に必要とされる処理能力に応じて、性能の異なるものが実装されている。モバイル端末１３Ｍのハードウェア構成は、大部分が図１（Ｂ）の構成と同様のものである。ただし、マウス２５、キーボード２６、及びディスプレイ装置２７に代わってタッチパネルディスプレイ２９（図１（Ａ））が設けられている点、ハードディスクドライブ２３に代わって不揮発性のフラッシュメモリ(不図示)が設けられている点において、図１（Ｂ）の構成と相違している。タッチパネルディスプレイ２９は、液晶又は有機ＥＬ方式の表示画面上に、透明な静電式又は感圧式のセンサパッドが重畳されたものである。タッチパネルディスプレイ２９は公知なものであるため、詳細な説明は省略される。なお、各構成部材は、必要に応じて複数設けられていてもよい。
【００４３】
ここで、ユーザ端末１３のディスプレイ装置２７に設けられた画面、及びタッチパネルディスプレイ２９が本発明の表示画面の一例であり、ユーザ端末１３のマウス２５及びキーボード２６、及びタッチパネルディスプレイ２９が、本発明の入力手段の一例である。
【００４４】
［認証サーバ１２］
認証サーバ１２は、ウェブサーバ１１と協働して、ユーザ端末１３の認証を行うものである。認証サーバ１２には、第１認証プログラムと一対となる第２認証プログラムがインストールされて動作している。ウェブサーバ１１と認証サーバ１２とは、第１認証プログラム及び第２認証プログラムに基づいて、ユーザ端末１３の認証に必要なデータの交換を行い、認証動作を実行する。なお、認証サーバ１２は、ウェブサーバ１１と同様のハードウェア構成によって実現できるため、詳細な説明は省略される。
【００４５】
認証サーバ１２のハードディスクドライブ２３には、第１データテーブル４１が記憶されている。第１データテーブル４１の一例が図２（Ａ）に示される。第１データテーブル４１は、ユーザ端末１３において動作するウェブブラウザの種類と実行されるキャプチャとを対応付けるテーブルである。「ウェブブラウザＮｏ」は、ウェブブラウザの種類ごとに割り当てられた値であり、第１データテーブル４１全体において一意である。「端末区分」は、当該ウェブブラウザから判断されるユーザ端末１３の種類を示している。「ＰＣ」は、ユーザ端末１３がパーソナルコンピュータ１３Ｐであることを示している。「ＭＢ」は、ユーザ端末１３がモバイル端末１３Ｍであることを示している。「キャプチャＮｏ＿１」，「キャプチャＮｏ＿２」，「キャプチャＮｏ＿３」は、それぞれユーザ端末１３のウェブブラウザに提供されるキャプチャに割り当てられたキャプチャＮＯを示している。「ＮＵＬＬ」は、値が記憶されていないことを示している。
【００４６】
また、認証サーバ１２のハードディスクドライブ２３には、第２認証プログラムのサブプログラムとして動作し、ユーザ端末１３に互いに異なるアルゴリズムに基づくキャプチャを提供するための複数のキャプチャ実行プログラムが記憶されている。キャプチャ実行プログラムは、それぞれ異なるキャプチャＮＯに対応している。
【００４７】
たとえば、ウェブブラウザＮｏが００１である場合、ユーザ端末１３はパーソナルコンピュータ１３Ｐであると判断され、キャプチャＮｏが００１、００２、または００３のいずれかに対応するキャプチャ実行プログラムがランダムに実行される。あるいは、ウェブブラウザＮｏが００４である場合、ユーザ端末１３はモバイル端末１３Ｍであると判断され、キャプチャＮｏが００１に対応するキャプチャ実行プログラムが実行される。図２（Ａ）の例によると、ユーザ端末１３がモバイル端末１３Ｍである場合、必ずキャプチャＮｏが００１に対応するキャプチャ実行プログラムが実行されることになる。このキャプチャ実行プログラムはユーザ端末１３に画像を用いた画像キャプチャを提供するためのものである。以下、キャプチャＮｏが００１のキャプチャ実行プログラムが、特に画像キャプチャ実行プログラムと称される。
【００４８】
また、認証サーバ１２のハードディスクドライブ２３には、第２データテーブル４２が記憶されている。第２データテーブル４２の一例が図２（Ｂ）に示される。第２データテーブル４２は、画像キャプチャ実行プログラムによって参照されるものであり、上述の「ウェブブラウザＮｏ」と、キャプチャに使用される第１画像３２（図３（Ｂ））及び第２画像３３（図３（Ｃ））の縦横サイズとを対応付けるテーブルである。ここで、縦横サイズとは、画像の縦方向及び横方向の画素数である。「第１画像縦サイズ」、「第１画像横サイズ」、「第２画像縦サイズ」、及び「第２画像横サイズ」は、第１画像３２または第２画像３３の縦または横サイズのいずれかを示している。画像キャプチャ実行プログラムは、第２データテーブル４２を参照することで、キャプチャに使用する第１画像３２及び第２画像３３の縦横サイズを決定する。詳細については後述される。
【００４９】
また、ハードディスクドライブ２３には、第１画像３２及び第２画像３３の生成に使用される複数の秘密画像３１が記憶されている。秘密画像３１の一例が図３（Ａ）に示される。秘密画像３１は、２次元のデジタル画像であり、本実施形態においては、グレースケール画像である。図３（Ａ）の例においては、秘密画像３１は、「ＣＯＰＹ」の文字列が画像化されたものであるが、秘密画像３１はこれとは異なるものであってもよい。たとえば、秘密画像３１は、「ＣＯＰＹ」とは異なる文字列が画像化されたものであってもよい。また、秘密画像３１は、任意の自然物または人工物の画像であってもよい。つまり、秘密画像３１は、人の視覚によって認識された際に、人が何らかの意味を見出すことができる画像であればどのようなものであってもよい。秘密画像３１が第２認証プログラムによって参照されて、認証に使用される第１画像３２（図３（Ｂ））及び第２画像３３（図３（Ｃ））が生成される。詳細については後述される。ここで、第１画像３２と第２画像３３を合わせたものが、本発明の画像セットの一例である。
【００５０】
なお、図２の第１データテーブル４１及び第２データテーブル４２は関係データベースの態様で示されているが、この記法は便宜的なものに過ぎない。つまり、第１データテーブル４１及び第２データテーブル４２は、ウェブブラウザと各種の情報とを対応付けることができるものであれば、どのような形式によって実現されてもよい。たとえば、これらの対応付けは、ハードディスクドライブ２３に保存されたデータファイルに文字列として記憶されてもよいし、第２認証プログラムや画像キャプチャ実行プログラムのコードの一部として記憶されてもよい。
【００５１】
以下、ウェブサーバ１１及び認証サーバ１２が、第１認証プログラム及び第２認証プログラムに基づき実行する認証動作の手順が説明される。全てのキャプチャに共通する一般的な認証動作の手順が最初に説明され、続けて、キャプチャＮｏが００１のキャプチャ、つまり画像キャプチャが提供される場合の認証動作の手順がより詳細に説明される。
【００５２】
［全てのキャプチャに共通する認証動作の手順］
図４，５は、ユーザ端末１３、ウェブサーバ１１、及び認証サーバ１２が行う各種の処理及び通信を時系列に沿って示すシーケンス図である。矢印５０は、時間が進む向きを示す。なお、図４，５に示される処理や通信は、本実施形態を説明する上で必要なものだけを示している。それぞれの処理や通信に付随するより多くの処理や通信が行われていてもよい。
【００５３】
また、以下の説明において、Ｓ１の処理が、本発明のウェブブラウザ判断ステップの一例である。Ｓ２の処理が、本発明のキャプチャ決定ステップの一例である。Ｓ３，Ｓ４の処理及びＴ４の通信が、本発明のキャプチャ実行ステップの一例である。Ｓ６の処理が、本発明の認証結果判断ステップの一例である。
【００５４】
ユーザ端末１３の操作者は、ウェブサーバ１１が提供するウェブページをディスプレイ装置２７やタッチパネルディスプレイ２９に表示させるために、ウェブブラウザにおいて所定の操作を行う。この操作とは、たとえば、ウェブブラウザのアドレスバーにＵＲＬを入力して決定する操作、あるいは、異なるウェブページなどから当該ＵＲＬへ移動するためのリンクをマウスクリックしたり、タッチパネルディスプレイ２９上でタッチする操作などである。
【００５５】
ユーザ端末１３とウェブサーバ１１とのＴＣＰコネクションが確立されていない場合、ユーザ端末１３はウェブブラウザを介して、ウェブサーバ１１へＴＣＰ接続要求を行う。ユーザ端末１３とウェブサーバ１１とは、たとえば３ウェイハンドシェイクなどの方法によってＴＣＰコネクションを確立する。ＴＣＰコネクションが確立された状態において、ユーザ端末１３はウェブブラウザを介して、当該ウェブページのＵＲＬに対応するＨＴＴＰリクエストをウェブサーバ１１へ送信する（Ｔ１）。なお、ユーザ端末１３−ウェブサーバ１１間の通信及びウェブサーバ１１−認証サーバ１２間の通信は、ＲＳＡ（Ｒｉｖｅｓｔ  Ｓｈａｍｉｒ  Ａｄｌｅｍａｎ）などの方式によって暗号化されていてもよい。図４，５では、公開鍵の生成や交換など、暗号通信に必要な各種の処理や通信は省略されている。
【００５６】
要求されたＵＲＬへのアクセスにキャプチャによる認証が必要な場合、ウェブサーバ１１は、第１認証プログラムを起動させる。ユーザ端末１３は、第１認証プログラムに基づいて、ユーザ端末１３において動作するウェブブラウザの種類を判断する処理を実行する（Ｓ１）。この判断は、任意の公知な方法によって実現することが可能である。一例として、ＨＴＴＰリクエストに含まれるＵｓｅｒ−Ａｇｅｎｔヘッダ に基づき判断することができる。判断されたウェブブラウザの種類は、上述されたウェブブラウザＮｏへと変換される。
【００５７】
ウェブサーバ１１は、上記と同様にして、認証サーバ１２とのＴＣＰコネクションを確立する。その状態において、ウェブサーバ１１は、ウェブブラウザＮｏの情報を含んだパケットを認証サーバ１２へ送信する（Ｔ２）。
【００５８】
認証サーバ１２は、ウェブサーバ１１から送信されたウェブブラウザＮｏをキーとして、第１データテーブル４１を参照する。そして、認証サーバ１２は、当該ウェブブラウザＮｏと対応付けられたキャプチャＮｏに基づき、実行すべきキャプチャ実行プログラムを決定する（Ｓ２）。
【００５９】
認証サーバ１２は、キャプチャ実行プログラムに基づき問題データ及び正解データを生成して、メインメモリ２２に記憶させる。ここで、問題データとは、ウェブサーバ１１がユーザ端末１３にキャプチャを提供するための各種の情報を含んだデータである。詳細には、ウェブサーバ１１がキャプチャの提供のためのＨＴＴＰレスポンスを組み上げるために必要なプログラムコード、及びキャプチャに使用される画像などのオブジェクトを含んでいる。生成される問題データは、キャプチャ実行プログラムごとに異なるものである。また、正解データとは、ユーザ端末１３が生成した回答データと比較されるものであり、当該比較の結果、認証が成功したか又は失敗したかを認証サーバ１２が判断するためのものである。生成される正解データは、問題データごとに異なるものである。
【００６０】
たとえば、問題文に対する回答を、選択肢ａ〜ｄの中から選択させるようなキャプチャが実行される場合、問題データは、問題文や選択肢に対応する文字列のデータ、及び問題文や選択肢を表示させるＨＴＴＰレスポンスを組み上げるために必要なプログラムコードなどを含んでいる。また、正解データは、たとえば正解となる選択肢ａを示すものとなりうる。
【００６１】
認証サーバ１２は、生成された問題データをウェブサーバ１１へ送信する（Ｔ３）。ウェブサーバ１１は、問題データに基づき、ＨＴＴＰレスポンスを生成して、ユーザ端末１３へ返送する（Ｓ４，Ｔ４）。このＨＴＴＰレスポンスは、ユーザ端末１３のウェブブラウザによって解読されて、ユーザ端末１３にキャプチャを実行させるＨＴＭＬのコードなどを含んでいる。ユーザ端末１３の操作者は、マウス２５、キーボード２６又はタッチパネルディスプレイ２９を操作して、キャプチャによって求められた所定の操作を行う。ユーザ端末１３は、当該操作に応じた回答データを生成して、メインメモリ２２に記憶させる。
【００６２】
ユーザ端末１３は、ウェブブラウザを介してＨＴＴＰリクエストをウェブサーバ１１へ送信する（Ｔ５）。このＨＴＴＰリクエストには、メインメモリ２２が記憶した回答データがＧＥＴメッセージやＰＯＳＴメッセージとして含まれている。ＨＴＴＰリクエストを受け取ったウェブサーバ１１は、回答データを含んだパケットを新たに生成して、認証サーバ１２へ送信し、認証結果を要求する（Ｔ６）。
【００６３】
認証サーバ１２は、受け取ったパケットに含まれる回答データと、Ｓ３の処理において記憶された正解データとを比較して、認証が成功したか否かを判断する（Ｓ６）。
【００６４】
認証サーバ１２は、認証が成功したか否かの判断結果をウェブサーバ１１へ送信する（Ｔ７）。ウェブサーバ１１は、認証が成功したか否かに応じて、異なるＨＴＴＰレスポンスを生成して、ユーザ端末１３へ返送する（Ｓ７，Ｔ８）。たとえば、認証が成功した場合、Ｔ１においてユーザ端末が最初に要求したＵＲＬに対応するウェブページをＨＴＴＰレスポンスとして返送する。認証が失敗した場合、ユーザ端末１３の操作者に認証が失敗した旨を伝えるウェブページをＨＴＴＰレスポンスとして返送する。あるいは、操作者がもう一度キャプチャを実行できるように、Ｔ４と同様のＨＴＴＰレスポンスが返送されてもよい。
【００６５】
総括すると、ユーザ端末１３がパーソナルコンピュータ１３であるかモバイル端末１３Ｍであるかに応じて、提供されるキャプチャのキャプチャＮｏが決定される。図２（Ａ）に示された第１データテーブル４１によると、ウェブブラウザＮｏが００４または００５の場合、つまりユーザ端末１３がモバイル端末１３Ｂの場合には、必ず画像キャプチャ（キャプチャＮｏが００１）が提供される。また、ユーザ端末１３がパーソナルコンピュータ１３Ｐの場合には、画像キャプチャが提供されることもあるし、他のキャプチャが提供されることもある。たとえば、図２（Ａ）の例では、ウェブブラウザＮｏが００１の場合、キャプチャＮｏが００１、００２、または００３に対応するキャプチャのいずれかがランダムに提供される。つまり１／３の確率で画像キャプチャが提供される。
【００６６】
図１１は、上述された方法によって、異なるキャプチャ実行プログラムに基づく異なるキャプチャが、ユーザ端末１３に提供される様子を示している。ユーザ端末１３のディスプレイ装置２７又はタッチパネルディスプレイ２９に表示されたウェブブラウザのウインドウ３４内には、それぞれ、画像や文字列などのオブジェクトが配置されている。
【００６７】
左側（矢印５１に対応）の例は、ユーザ端末１３がパーソナルコンピュータ１３Ｐと判断された場合に提供されるキャプチャの１つ（いずれかのキャプチャＮｏに対応する。）を示している。ウインドウ３４には、アルファベットのランダムな文字列「ｐｒｅｌｅｌｃｅｎ」が、崩された形で表示されており、ユーザ端末１３の操作者は、表示された文字列をキーボード２６を用いてウインドウ３４内に表示された入力フォームなどに入力する。この場合、入力フォームなどに入力された文字列が、Ｔ５の通信により回答データとして送信される。Ｓ６の処理において、認証サーバ１２は、正解データが示す文字列「ｐｒｅｌｅｌｃｅｎ」と回答データが示す文字列とを比較することによって認証結果を判断する。
【００６８】
中央（矢印５２に対応）及び右側（矢印５３に対応）は、ユーザ端末１３がタブレットＰＣの例を示している。この場合、得られたウェブブラウザＮｏに基づき、ユーザ端末１３はモバイル端末１３Ｍであると判断される。中央及び右側のキャプチャは、共にキャプチャＮｏが００１の画像キャプチャ実行プログラムによって提供されるものであるが、使用される画像セットが相違している。中央の例では、画像セットとして、第１画像７１、第２画像７２（共に図１０に図示）が使用されている。右側の例では、画像セットとして、第１画像６１、第２画像６２、第３画像６３、及び第４画像６４（共に図８に図示）が使用されている。これらの画像セットを使用した画像キャプチャの例は、後述の変形例で詳細に説明される。
【００６９】
［画像キャプチャが提供される場合の認証動作の手順］
続けて、キャプチャＮｏが００１の画像キャプチャが提供される場合の認証動作の手順がより詳細に説明される。ただし、上述された説明と重複している部分は省略される。
【００７０】
なお、画像キャプチャ実行プログラムが実行された場合は、Ｓ３の処理が、本発明の画像決定ステップの一例であり、Ｓ４の処理及びＴ４の通信が、本発明の画像表示ステップ及び画像移動ステップの一例である。
【００７１】
Ｓ２の処理でキャプチャＮｏが００１の画像キャプチャの提供が決定された場合、Ｓ３の処理では、画像キャプチャ実行プログラムが実行される。認証サーバ１２は、画像キャプチャ実行プログラムに基づいて、キャプチャに使用される画像セット（ここでは第１画像３２及び第２画像３３）の生成を行う。まず、認証サーバ１２は、第２データテーブル４２を参照して、第１画像３２及び第２画像３３の縦横サイズを決定する。図２（Ｂ）の例において、たとえばウェブブラウザＮｏが００１であるとすると、第１画像縦サイズが４００ピクセル、第１画像横サイズが３００ピクセル、第２画像縦サイズが１００ピクセル、第２画像横サイズが１００ピクセルとなる。
【００７２】
認証サーバ１２は、決定された縦横サイズの条件を満たす第１画像３２及び第２画像３３を生成する。なお、第１画像３２及び第２画像３３の生成の手順は後述され、ここでは第１画像３２及び第２画像３３の性質のみが説明される。図３（Ｂ），（Ｃ）に示されるように、第１画像３２及び第２画像３３は、一見してノイズのように認識される画像である。ただし、第１画像３２及び第２画像３３には、上述された秘密画像３１の１つが埋め込まれている。第１画像３２と第２画像３３とが重なり合う所定の相対位置において、対応する画素の輝度値をそれぞれ合計することにより、秘密画像３１が復元される。
【００７３】
図６は、第１画像３２及び第２画像３３の左上端が一致するように重ねられて、表示された状態を示している。第１画像３２と第２画像３３とが重なる部分の輝度値として、両画像の輝度値の合計値が出力されている。その結果、秘密画像３１の「ＣＯＰＹ」の文字列が復元されている。
【００７４】
Ｓ３の処理において、認証サーバ１２は、第１画像３２及び第２画像３３に基づいて上述の問題データを生成する。また、認証サーバ１２は、秘密画像３１が復元されるときの第１画像３２と第２画像３３との相対位置（以下、正解位置とする。）を示すデータを、上述の正解データとする。
【００７５】
Ｓ４の処理において、ウェブサーバ１１が問題データに基づいて生成するＨＴＴＰレスポンスは、以下で説明するキャプチャをユーザ端末１３に実行させるものである。
【００７６】
まず、ユーザ端末１３のディスプレイ装置２７又はタッチパネルディスプレイ２９のうち、ウェブブラウザによって定義される領域（本発明の画像表示領域の一例）に第１画像３２及び第２画像３３が表示される。ウェブブラウザによって定義される領域とは、たとえば、ＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）を構成するウェブブラウザのウインドウ内の領域である。第１画像３２及び第２画像３３が表示される初期位置は、事前に決定されていてもよいし、ランダムに決定されてもよい。ユーザ端末１３の操作者は、各種の入力装置を用いて、表示された第２画像３３を第１画像３２に対して相対的に移動させることができる（Ｓ５）。たとえば、第２画像３３は、マウス２５のドラッグ操作によって移動されてもよいし、タッチパネルディスプレイ２９上でのドラッグ操作によって移動されてもよい。ここで、ユーザ端末１３の操作者が第２画像３３を移動させる操作が、本発明の画像移動入力の一例である。
【００７７】
第１画像３２と第２画像３３とが少なくとも部分的に重なる位置関係にある場合、ユーザ端末１３は、第１画像３２と第２画像３３とが重なる部分（本発明の重複領域の一例）の輝度値として、両画像の輝度値の合計値をディスプレイ装置２７またはタッチパネルディスプレイ２９に出力させる。操作者によって、第１画像３２と第２画像３３との相対位置が、上述された正解位置とされたとき、図６に示されるように、第１画像３２と第２画像３３とが重なる部分に、秘密画像３１が表示される。操作者は、秘密画像３１を予め知らないが、意味のある画像が表示されたことをもって、第２画像３３の移動を終了するための操作を行う。この操作は、たとえば、キーボード２６のエンターキーの押下、ディスプレイ装置２７に表示された所定のボタン上にマウス２５のカーソルを移動させてマウスクリックする操作、またはタッチパネルディスプレイ２９に表示された所定のボタンをタッチする操作などである。なお、ディスプレイ装置２７又はタッチパネルディスプレイ２９の画面には、以上の操作を操作者に示唆する説明文が表示されてもよい。ユーザ端末１３は、終了のための操作が実行されたときの第１画像３２と第２画像３３との相対位置（以下、回答位置とする。）を算出し、メインメモリ２２に一時的に記憶させる。この回答位置を示すデータが、回答データとなる。ここで、ユーザ端末１３の操作者が第２画像３３の移動を終了する操作が、本発明の回答入力の一例である。
【００７８】
Ｓ６の処理における判断は、正解データが示す相対位置（正解位置）と回答データが示す相対位置（回答位置）との比較によって行われる。比較の基準は、当業者が任意に決定することができるが、一例として、閾値を用いた方法が挙げられる。その場合、横方向の相対位置と縦方向の相対位置とにそれぞれ閾値が定められていてもよい。
【００７９】
たとえば、基準となる画素を定め、第１画像３２に対する第２画像３３の横方向へのずれをｄｘ、縦方向へのずれをｄｙとすると、画像間の相対位置を（ｄｘ，ｄｙ）によって表現することができる。つまり、回答位置を（ｄｘＡ，ｄｙＡ）、正解位置を（ｄｘＴ，ｄｙＴ）として、それぞれ表現することができる。また閾値を（ｄｙＢ，ｄｙＢ）として表現することができる。認証サーバ１２は、｜ｄｘＡ−ｄｘＴ｜≦ｄｘＢかつ｜ｄｙＡ−ｄｙＴ｜≦ｄｙＢを満たす場合にのみ、認証が成功したと判断してもよい。
【００８０】
また、閾値は１つであってもよい。認証サーバ１２は、閾値をｄｒＢとして、（ｄｘＡ−ｄｘＴ）２＋（ｄｙＡ−ｄｙＴ）２≦ｄｒＢ２を満たす場合にのみ、認証が成功したと判断してもよい。
【００８１】
［第１画像３２，第２画像３３の生成］
続けて認証サーバ１２が、Ｓ３の処理において第１画像３２及び第２画像３３を生成する手順が、図７のフローチャートを参照しながら以下に説明される。
【００８２】
認証サーバ１２は、埋め込むべき秘密画像３１を決定する（Ｓ３１）。ここで選択される秘密画像３１の縦横サイズは、Ｓ２の処理で決定された第１画像３２及び第２画像３３の縦横サイズのどちらよりも小さいことが必要である。認証サーバ１２のハードディスクドライブ２３には、同じ縦横サイズの秘密画像３１が複数種類保存されていてもよいし、異なる縦横サイズの秘密画像３１が複数種類保存されていてもよい。また、秘密画像３１は、条件を満たすものの中からランダムに選択されてもよい。なお、図２（Ｂ）の第２データテーブル４２に示されるように、本実施形態において、第２画像３３の縦横サイズは、第１画像３２の縦横サイズよりも小さく設定されている。
【００８３】
続けて、認証サーバ１２は、決定された第１画像３２の縦横サイズと同じ縦横サイズの第１ノイズ画像（本発明の第２の元画像の一例、不図示）を生成する（Ｓ３２）。第１ノイズ画像は、各画素の輝度値がランダムな値を取る画像である。たとえば、ノイズ画像として、８ｂｉｔのグレースケール画像を生成する場合、認証サーバ１２は、画素ごとに０〜２５５の範囲の乱数を生成して、各画素の輝度値とする。
【００８４】
続けて、認証サーバ１２は、第１ノイズ画像のうち、秘密画像３１を埋め込む領域（以下、秘密画像埋込領域とする。）を決定する（Ｓ３３）。秘密画像埋込領域は、秘密画像３１の縦横サイズと同じ縦横サイズの領域である。秘密画像埋込領域は、第１ノイズ画像中に収まる位置であれば、第１ノイズ画像におけるランダムな位置に設定されてもよい。
【００８５】
あるいは、秘密画像埋込領域の位置は、変化度に基づいて決定されてもよい。ここで、変化度とは画素ごとに決定される値であり、周辺画素との輝度値の変化の大きさを示す。画素の横方向の座標をx、縦方向の座標をｙとし、座標（ｘ，ｙ）にある画素の輝度値をＢ（ｘ，ｙ）とすると、当該画素の変化度ｄＢ（ｘ，ｙ）は、以下の数式によって定義される。
【００８６】
ｄＢ（ｘ，ｙ）＝｜Ｂ（ｘ＋１，ｙ）−Ｂ（ｘ，ｙ）｜＋｜Ｂ（ｘ＋１，ｙ＋１）−Ｂ（ｘ，ｙ）｜＋｜Ｂ（ｘ，ｙ＋１）−Ｂ（ｘ，ｙ）｜＋｜Ｂ（ｘ−１，ｙ＋１）−Ｂ（ｘ，ｙ）｜＋｜Ｂ（ｘ−１，ｙ）−Ｂ（ｘ，ｙ）｜＋｜Ｂ（ｘ−１，ｙ−１）−Ｂ（ｘ，ｙ）｜＋｜Ｂ（ｘ，ｙ−１）−Ｂ（ｘ，ｙ）｜＋｜Ｂ（ｘ＋１，ｙ−１）−Ｂ（ｘ，ｙ）｜
【００８７】
つまり、変化度ｄＢ（ｘ，ｙ）は、当該画素の輝度値と周辺の８近傍画素との輝度値の差の絶対値を全て足し合わせた値である。認証サーバ１２は、第１ノイズ画像の各画素の変化度を算出し、変化度が高い画素が多く集まっている位置に秘密画像埋込領域を設定してもよい。これは、第１画像３２のみを見ても秘密画像３１を認識できないようにするためである。
【００８８】
続けて、認証サーバ１２は、第１ノイズ画像から秘密画像埋込領域を含むより広い領域を切りとって、新たな画像（以下、第２ノイズ画像とする。）を生成する（Ｓ３４）。ここで、切り取るとは、対象となる範囲の輝度値を複製することであり、第１ノイズ画像の輝度値に変更を与えるものではない。第２ノイズ画像として切り取られる領域の縦横サイズは、決定された第２画像３３の縦横サイズである。また、認証サーバ１２は、第１ノイズ画像から、第２ノイズ画像として切り取られた領域の位置を正解位置（ｄｘＴ，ｄｙＴ）として、メインメモリ２２に記憶させる。たとえば、第１ノイズ画像の左上端の画素の座標に対する切り取られた領域の左上端の画素の座標の変位を正解位置（ｄｘＴ，ｄｙＴ）とする。つまり、正解位置（ｄｘＴ，ｄｙＴ）は、左上端の画素を基準とした場合における第１ノイズ画像に対する第２ノイズ画像の相対位置を示している。ただし、正解位置は、両画像の相対位置の情報を保持するものであれば、どのような形式によって表現されてもよい。
【００８９】
続けて、認証サーバ１２は、第１ノイズ画像に対して埋込処理を実行する（Ｓ３５）。埋込処理とは、秘密画像３１に基づいて、第１ノイズ画像に設定された秘密画像埋込領域の輝度値を変化させる処理である。秘密画像埋込領域の縦横サイズは、秘密画像３１の縦横サイズと等しいため、第１ノイズ画像の秘密画像埋込領域と秘密画像３１とは、画素ごとに対応している。第１ノイズ画像における秘密画像埋込領域の画素の輝度値は、対応する秘密画像３１の画素の輝度値に基づいて以下の通り増加または減少される。
【００９０】
たとえば、第１ノイズ画像の輝度値の増加分または減少分（以下、変化量とする。）は、第１ノイズ画像の輝度値と秘密画像３１の輝度値との差を１／２した値であってもよい。あるいは、変化量には、事前に決定された値が使用されてもよい。たとえば、秘密画像３１が図３（Ａ）のような文字列である場合、文字を構成する線に対応する画素と文字を構成する線以外の画素とで、互いに異なる２種類の変化量が用いられてもよい。
【００９１】
続けて、認証サーバ１２は、第１ノイズ画像に反転処理を実行する（Ｓ３６）。反転処理は、各画素の輝度値を反転させる処理である。８ｂｉｔのグレースケール画像においては、反転前の輝度値をＢとすると、反転後の輝度値Ｂ’は、Ｂ’＝２５５−Ｌとなる。
【００９２】
続けて、認証サーバ１２は、第２ノイズ画像に半透明化処理を実行する（Ｓ３７）。半透明化処理は、画像の透明度を上げる処理である。半透明化処理における透明度の度合いは、５０％前後が好適であるが、問わない。たとえば、透明度の度合いは、４０％〜６０％程度でもよいし、２０％〜８０％程度でよい場合もありうる。半透明化処理は、公知の技術であるため、詳細な説明は省略される。
【００９３】
以上の処理を経た第１ノイズ画像が、第１画像３２として使用され、第２ノイズ画像が、第２画像３３として使用されるものである。なお、本実施形態では、第１ノイズ画像に埋込処理及び反転処理が施され、第２ノイズ画像に半透明化処理が施された例が示されたが、この３つの処理はどちらの画像に施されてもよい。たとえば、第１ノイズ画像または第２ノイズ画像に全ての処理が施されてもよい。あるいは、第１ノイズ画像に埋込処理のみが施され、第２ノイズ画像に反転処理及び半透明化処理が施されてもよい。つまり、埋込処理、反転処理、及び半透明化処理は、それぞれどちらか一方の画像に施されていればよい。
【００９４】
［実施形態の作用効果］
本実施形態において、ユーザ端末１３において動作するウェブブラウザの種類に応じて、異なるキャプチャが実行されるため、ユーザ端末１３に応じた最適なキャプチャを提供することができる。特に、モバイル端末１３Ｍにおいては、第１画像３２及び第２画像３３に基づくキャプチャが実行される。その場合、モバイル端末１３Ｍの操作者は、タッチパネル２９上でのドラッグ操作により、画像を移動させるだけよい。特に、文字入力を必要としないため、キーボード２６を有しないモバイル端末１３Ｍにおいても容易にキャプチャを完了することができる。
【００９５】
問題データや正解データの生成、及び認証が成功したか否かの判断が認証サーバ１２によって実行されるため、ウェブサーバ１１が実行するトランザクションの負荷を軽減することができる。また、ウェブサーバ１１に必要な処置は、第１認証プログラムをインストールすることだけであり、ウェブサーバ１１の管理者が、認証動作の詳細を意識しなくともよい。つまり、ウェブサーバ１１の管理者の負担が軽減される。また、複数のウェブサーバ１１に寄せられた認証の要求を、１つの認証サーバ１２において実行することで、認証に係るコストやセキュリティ上のリスクを１つの認証サーバ１２に集約することができる。
【００９６】
画像キャプチャ実行プログラムによって提供されるキャプチャは、ユーザ端末１３において動作するプログラムにとっては、正解することが困難なものである。以下に説明する。プログラムが画像を認識するために、パターン認識が一般的に使用される。パターン認識が実行されるためには、多次元の特徴空間上に認識対象のクラスが事前に定義されている必要がある。しかしながら、本実施形態では、秘密画像３１がユーザ端末１３側に秘匿されている。そのため、ユーザ端末１３において動作するプログラムが、パターン認識を用いて秘密画像３１を認識することはできない。仮に、秘密画像３１が明らかにされていたとしても、ユーザ端末１３において動作するプログラムが正解位置を特定するためには、第１画像３２と第２画像とのあらゆる相対位置において復元される各画像に対して、それぞれパターン認識を実行する必要がある。この場合、計算ステップ数が膨大となり、正解位置を特定することは困難である。一方、ユーザ端末１３の操作者であれば、第２画像３３を第１画像３２に対して移動させる中で、有意な画像が復元されたことを、ディスプレイ装置２７やタッチパネルディスプレイ２９の表示を確認することで即座に認識することができる。
【００９７】
また、閾値に基づいて、認証が成功したか否かの判断が行われるため、ユーザ端末から送られた回答位置が実際の正解位置よりも多少異なっていても、認証サーバ１２は、回答位置と正解位置とのずれが小さい場合には認証が成功したと判断することができる。
【００９８】
上述された実施形態の変形例が以下に説明される。
【００９９】
［変形例１］
上述された実施形態において、第１画像３２及び第２画像３３はＳ３の処理で生成されていたが、第１画像３２、第２画像３３及びそれらに対応する正解位置は、事前に記憶されていてもよい。つまり、縦横サイズが異なる複数の第１画像３２及び第２画像３３のセットが、正解位置を示す正解データと共に認証サーバ１２のハードディスクドライブ２３に記憶されていてもよい。Ｓ３の処理では、決定された縦横サイズに応じて、適切な第１画像３２及び第２画像３のセットが選択されてもよい。
【０１００】
また、第１画像３２及び第２画像３３の他にも、ユーザ端末１３の操作者がディスプレイ装置２７やタッチパネルディスプレイ２９の画面上で移動させることができる追加の画像が使用されてもよい。そして、それらの画像は、自然物や人工物のうち、ユーザ端末１３の操作者が、常識や慣習などの人特有の知識からその配置を理解できるものであればよい。一例が以下に示される。
【０１０１】
たとえば、図８（Ａ）〜（Ｄ）に示されるような第１画像６１、第２画像６２、第３画像６３、及び第４画像６４がそれぞれ使用されてもよい。各画像は認証サーバ１２のハードディスクドライブ２３に記憶されている。第１画像６１は人の画像であり、第２画像６２は眼鏡の画像であり、第３画像６３は麦藁帽子の画像であり、第４画像６４は虫取り網の画像である。この４つの画像の正解位置は、図８（Ｆ）に示されるような相対位置である。４つの画像がこのような相対位置に配置されることで、人が、眼鏡、麦藁帽子、及び虫取り網を身につけた状態が示されている。ユーザ端末１３の操作者は、たとえばマウス２５を用いて、図８（Ｅ）に示されるように、ディスプレイ装置２７の画面上でマウスカーソル６５を操作し、４つの画像を矢印の向きに相対的に移動させて、図８（Ｆ）の相対位置とする。あるいは、タッチパネルディスプレイ２９上でのドラッグ操作により、同様の操作を行う。移動の終了の操作に伴い、回答位置がウェブサーバ１１を経由して認証サーバ１２へ送信されること、及び回答位置が正解位置と比較されて認証が成功したか否かの判断が行われることは、上述された実施形態と同様である。
【０１０２】
ここで、第１画像６１、第２画像６２、第３画像６３、及び第４画像６４を合わせたものが本発明の画像セットの一例である。
【０１０３】
このような変形例において、回答位置及び正解位置は、たとえば第１画像６１を基準とする、第２画像６２、第３画像６３、及び第４画像６４の相対位置の情報をそれぞれ含んでいる。そのため、認証が成功したか否かの判断に閾値が用いられる場合、上記３つの相対位置にそれぞれ閾値が設けられてもよい。
【０１０４】
なお、上述された実施形態では、複数の画像が重なる部分の輝度値として、各画像の輝度値の合計値が出力された。一方、図８（Ｆ）の例では、複数の画像が重なる領域において、人よりも手前側に眼鏡があるように表示され、人及び眼鏡よりも手前側に麦藁帽子があるように表示されている。つまり、第１画像６１の輝度値よりも第２画像６２の輝度値が優先的に出力され、第２画像６２の輝度値よりも第３画像６３の輝度値が優先的に出力されている。複数の画像が重なる領域において、どのような表示を行わせるかは、各画像セットごとに決定されていてもよく、その情報は各画像セットと共に認証サーバ１２のハードディスクドライブ２３に記憶されていてもよい。
【０１０５】
なお、ここで示された複数の画像は一例であり、これとは異なる画像が使用されてもよい。たとえば、図９(Ａ)に示されるように、第１画像６５が象の画像であってもよく、図９(Ｂ)に示されるように、第２画像６６がニンジンの画像であってもよい。図９(Ｃ)に示されるように、象が鼻先でニンジンを保持した状態を示す相対位置が正解位置であってもよい。
【０１０６】
また、図９(Ｄ)に示されるように、第１画像６７がバスの車体の画像であってもよく、図９(Ｅ)に示されるように、第２画像６８がタイヤの画像であってもよい。図９(Ｆ)に示されるように、バスの車体にタイヤが取り付けられた状態を示す相対位置が正解位置であってもよい。
【０１０７】
また、図１０(Ａ)に示されるように、第１画像６９が人型のロボットの胴部の画像であってもよく、図１０(Ｂ)に示されるように、第２画像７０が人型のロボットの頭部の画像であってもよい。図１０(Ｃ)に示されるように、ロボットの胴部に頭部が取り付けられた状態を示す相対位置が正解位置であってもよい。
【０１０８】
また、図１０(Ｄ)（Ｅ）に示されるように、第１画像７１及び第２画像７２は、図１０(Ｆ)の元画像７３（本発明の第１の元画像の一例）から生成されたものであってもよい。本変形例では、イチゴの写真と「Ｈｕｎｇｒｙ？  Ｓｔｒａｗｂｅｒｒｙ」という文字列が合成されたものが元画像７３として使用されているが、人が意味を認識可能なものであればこれとは異なる元画像７３が使用されてもよい。第１画像７１は元画像７３の一部がパズルのピースの形状に欠落された画像であり、第２画像７２は欠落されたピースの画像である。パズルのピースが元画像７３の欠落された部分に位置して、元画像７３が復元されるときの第１画像７１と第２画像７２との相対位置が、正解位置である。
【０１０９】
ここで、第１画像６５と第２画像６６とを合わせたもの、第１画像６７と第２画像６８とを合わせたもの、第１画像６９と第２画像７０とを合わせたもの、及び第１画像７１と第２画像７２とを合わせたものが、それぞれ本発明の画像セットの一例である。
【０１１０】
［変形例２］
また、上述された実施形態において、秘密画像３１は、認証サーバ１２のハードディスクドライブ２３に事前に記憶されたものであったが、Ｓ３の処理において生成されてもよい。たとえば、認証サーバ１２のハードディスクドライブ２３に記憶されたフォントの画像をランダムに組み合わせることにより、何らかの文字列を示す秘密画像３１が生成されてもよい。
【０１１１】
［変形例３］
また、第２データテーブル４２が記憶する第１画像３２及び第２画像３３の縦横サイズとして、それぞれ最小値及び最大値が記憶されていてもよい。認証サーバ１２は、縦横サイズが最小値から最大値までの範囲に収まる第１画像３２及び第２画像３３を生成してもよい。また、第２データテーブル４２は、さらに秘密画像３１の縦横サイズを記憶していてもよい。認証サーバ１２は、Ｓ２の処理で決定された縦横サイズの秘密画像を用いて第１画像３２及び第２画像３３を生成してもよい。
【０１１２】
［変形例４］
また、第１データテーブル４１は、さらにユーザ端末１３において動作するＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）の種類を示す情報を記憶していてもよい。ウェブサーバ１１は、ユーザ端末１３において動作するウェブブラウザの種類と共にＯＳの種類を判断し、キャプチャＮｏを決定してもよい。同様に、第２データテーブル４２もＯＳの種類を示す情報を記憶していてもよい。
【０１１３】
［変形例５］
また、第１画像３２及び第２画像３３の生成において、埋込処理、反転処理、及び半透明化処理が、それぞれ第１ノイズ画像または第２ノイズ画像のどちらに対して実行されるかは、たとえば乱数などを用いてランダムに決定されてもよい。
【０１１４】
［変形例６］
また、上述された実施形態において、認証サーバ１２は、ウェブサーバ１１のみと通信を行い、ユーザ端末１３と直接通信しないものであったが、ユーザ端末１３と直接通信するように構成されていてもよい。たとえば、ウェブサーバ１１がユーザ端末１３からのアクセスをリダイレクトさせて、ユーザ端末１３と認証サーバ１２との間にＴＣＰコネクションが確立されてもよい。それ以降の認証動作の少なくとも一部は、ユーザ端末１３と認証サーバ１２との間で行われてもよい。
【０１１５】
［変形例７］
また、認証サーバ１２とウェブサーバ１１とは同一のサーバ装置であってもよい。つまり、Ｓ５を除くＳ１〜Ｓ７の全ての処理が同一のサーバ装置によって実行されてもよい。また、これらの処理の一部は、任意の異なるサーバ装置によって実行されてもよい。
【符号の説明】
【０１１６】
１１・・・ウェブサーバ（サーバ，第１のサーバ装置）
１２・・・認証サーバ  （サーバ，第２のサーバ装置）
１３・・・ユーザ端末
１３Ｐ・・・パーソナルコンピュータ（ユーザ端末）
１３Ｍ・・・モバイル端末（ユーザ端末）
１５・・・インターネット（コンピュータネットワーク）
２５・・・マウス（入力手段）
２６・・・キーボード（入力手段）
２７・・・ディスプレイ装置（表示画面）
２９・・・タッチパネルディスプレイ（入力手段，表示画面）
３１・・・秘密画像
３２・・・第１画像（画像セット、第１画像）
３３・・・第２画像（画像セット、第２画像）
６１・・・第１画像（画像セット）
６２・・・第２画像（画像セット）
６３・・・第３画像（画像セット）
６４・・・第４画像（画像セット）
６５・・・第１画像（画像セット）
６６・・・第２画像（画像セット）
６７・・・第１画像（画像セット）
６８・・・第２画像（画像セット）
６９・・・第１画像（画像セット）
７０・・・第２画像（画像セット）
７１・・・第１画像（画像セット）
７２・・・第２画像（画像セット）
７３・・・元画像（第２の元画像）
【図１】
2013103019.tif 000003
【図２】
2013103019.tif 000004
【図３】
2013103019.tif 000005
【図４】
2013103019.tif 000006
【図５】
2013103019.tif 000007
【図６】
2013103019.tif 000008
【図７】
2013103019.tif 000009
【図８】
2013103019.tif 000010
【図９】
2013103019.tif 000011
【図１０】
2013103019.tif 000012
【図１１】
2013103019.tif 000013
【国際調査報告】
2013103019.tif 000014
2013103019.tif 000015