(57)【要約】【課題】可視情報を認識する機能を有する「ボット」による迷惑行為の実施をより困難にするアンチロボットテストシステム、アンチロボットテスト方法及びアンチロボットテストサーバを提供することを目的とする。【解決手段】被判読情報を可視情報として含む画像データを提供したサーバ１２が、前記被判読情報の要求元１２から取得した判読結果情報が被判読情報と一致するか否かにより、要求元１１が人間か否かを判別するアンチロボットテストシステム１００であって、サーバ１２は、被判読情報をラスタライズした元画像４０を分割して、複数のサブ画像を生成するサブ画像生成手段２１と、前記サブ画像の画像データを、人間が目視する画面における前記サブ画像の位置情報と共に前記要求元１１に送信するサブ画像送信手段２２と、を有することを特徴とする。【選択図】図９
2011048497.tif 000002
【特許請求の範囲】
【請求項１】
被判読情報を可視情報として含む画像データを提供したサーバが、前記被判読情報の要求元から取得した判読結果情報が前記被判読情報と一致するか否かにより、前記要求元が人間か否かを判別するアンチロボットテストシステムであって、
前記サーバは、
前記被判読情報をラスタライズした元画像を分割して、複数のサブ画像を生成するサブ画像生成手段と、
前記サブ画像の画像データを、人間が目視する画面における前記サブ画像の位置情報と共に前記要求元に送信するサブ画像送信手段と、を有する、
ことを特徴とするアンチロボットテストシステム。
【請求項２】
前記被判読情報は１つ以上の文字、記号又は数字から構成され、
前記サブ画像生成手段は、前記被判読情報の１つ以上の文字、記号又は数字が２つ以上の部分に分断されるように、前記元画像を分割する、
ことを特徴とする請求項１記載のアンチロボットテストシステム。
【請求項３】
前記サブ画像生成手段は、
前記サブ画像の画像データのファイルフォーマットが全ての前記サブ画像で同一とならないよう、２種類以上の異なるファイルフォーマットで前記サブ画像の各画像データを生成する、
ことを特徴とする請求項１又は２記載のアンチロボットテストシステム。
【請求項４】
前記サブ画像生成手段は、
前記サブ画像の画像データのカラーモードが全ての前記サブ画像で同一とならないよう、２種類以上の異なるカラーモードで前記サブ画像の各画像データを生成する、
ことを特徴とする請求項１〜３いずれか１項記載のアンチロボットテストシステム。
【請求項５】
前記サブ画像生成手段は、
前記サブ画像のうち、前記被判読情報が占める画素の第１の画素値と、それ以外の画素の第２の画素値の組み合わせが、全ての前記サブ画像で同一とならないよう、２種類以上の異なる前記組み合わせで各サブ画像の第１及び第２の画素値を決定する、
ことを特徴とする請求項１〜４いずれか１項記載のアンチロボットテストシステム。
【請求項６】
前記サブ画像生成手段は、
前記サブ画像の解像度が全ての前記サブ画像で同一とならないよう、２種類以上の異なる解像度で前記サブ画像を生成する、
ことを特徴とする請求項１〜５いずれか１項記載のアンチロボットテストシステム。
【請求項７】
前記サブ画像生成手段は、
前記サブ画像のデータファイルのファイル名が連番を含まないよう、
複数の前記サブ画像のデータファイルにそれぞれ無作為のファイル名を付与する、
ことを特徴とする請求項１〜６いずれか１項記載のアンチロボットテストシステム。
【請求項８】
前記サブ画像生成手段は、
セッション毎に、元画像の分割数を可変にする
ことを特徴とする請求項１〜７いずれか１項記載のアンチロボットテストシステム。
【請求項９】
被判読情報を可視情報として含む画像データを提供したサーバが、前記被判読情報の要求元から取得した判読結果情報が前記被判読情報と一致するか否かにより、前記要求元が人間か否かを判別するアンチロボットテスト方法であって、
サブ画像生成手段が、前記被判読情報をラスタライズした元画像を分割して、複数のサブ画像を生成するステップと、
サブ画像送信手段が、前記サブ画像の画像データを、人間が目視する画面における前記サブ画像の位置情報と共に前記要求元に送信するステップと、
を有することを特徴とするアンチロボットテスト方法。
【請求項１０】
被判読情報を可視情報として含む画像データを提供し、前記被判読情報の要求元から取得した判読結果情報が前記被判読情報と一致するか否かにより、前記要求元が人間か否かを判別するアンチロボットテストサーバであって、
前記被判読情報をラスタライズした元画像を分割して、複数のサブ画像を生成するサブ画像生成手段と、
前記サブ画像の画像データを、人間が目視する画面における前記サブ画像の位置情報と共に前記要求元に送信するサブ画像送信手段と、を有する、
ことを特徴とするアンチロボットテストサーバ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、人間かロボットかを判定するアンチロボットテストシステム、アンチロボットテスト方法及びアンチロボットテストサーバに関する。
【背景技術】
【０００２】
インターネット上の電子掲示板やいわゆるブログ、Wikiといったユーザ参加型のコンテンツ生成システムが広く利用されるようになってきた。このようなシステムにおいては、利用者は情報を閲覧できるだけでなく、簡単なユーザ登録を行なうだけで自由に情報を投稿することが可能となっていることが多い。
【０００３】
しかし、このような特徴を悪用し、サーバとのやり取りを自動で行なういわゆる「ボット」とよばれるコンピュータプログラムを用いて、無差別かつ大量にこのようなサイトのアカウントを取得し、各サイトの内容とは全く無関係な広告を投稿する、あるいは利用者を詐欺に陥れたり、利用者の個人情報を不正取得するなど犯罪的な目的を持ったサイトに誘導するリンクを投稿する、といった迷惑行為も増加している。また、「ボット」を電子メールアドレス取得サービスに適用して、「ボット」を用いて無料かつ自動的に大量のアドレスを取得し、不正に大量に取得した電子メールアドレスを用いて、不特定多数への無差別な迷惑メールを送信する迷惑行為も指摘されている。あるいは前述のユーザ参加型のコンテンツ生成システムに対する迷惑行為を行なう目的に用いる等、「ボット」がインターネット上の様々な迷惑行為のために用いられることも多い。
【０００４】
このような迷惑行為を防止するため、利用者が実際の人間なのか、あるいは前述した「ボット」なのかを判別し、人間と判別された場合のみ投稿を許可するようなシステムが考案されている。このようなシステムは一般にアンチロボットテストシステムと呼ばれ、人間には識別可能だが、現在のコンピュータプログラムでは識別不能、あるいは困難な情報をシステムがユーザに提示し、ユーザがこれを識別した場合のみ投稿を許可するシステムとなっている。具体的には、前述の「ボット」と呼ばれるプログラムが、主に文字情報でやり取りされるクライアントとサーバ間のメッセージを解析し、クライアント側からの偽装されたメッセージを自動的に生成するため、システムは、サーバ側から文字情報以外でかつ実際の人間以外には解釈困難と思われる情報をクライアントに提示し、ユーザにそれを解釈した結果を要求する。
【０００５】
このような文字情報以外の情報として、ラスタライズされた複数の文字や記号を含む画像を提示し、画像中にある文字、記号列を読み取った結果を別途用意した入力フォームに入力させる視覚型アンチロボットテストが用いられることが多い。これは、人間は画像中の文字を読むことが容易であるのに対し、コンピュータプログラムでこれを行なうことが困難であること、あるいは、前述した迷惑行為によって得られる利益と、このようなプログラムを実行するコストを比較すると見合わないことを利用したシステムである。
【０００６】
しかし、OCR等コンピュータによる画像中の文字認識技術が進むにつれて、ラスタライズされた画像中にある文字、記号列をボットが読み取り可能となっているためこのような防御は年々弱体化してきているのもまた事実である。
【０００７】
そこで、OCRによる文字認識を妨害する試みとして、Captcha(登録商標)と呼ばれる技術が知られている。Captchaは、歪められたり覆い隠されたりしている文字や記号を用いた画像データを用いている。このような文字や記号は人間には比較的容易に判読可能だが、OCRによる認識が困難であるため、ボットを排除できる場合がある。
【０００８】
しかしながら、文字や記号の歪めかたや変形の程度が大きくなると、高齢者など人間によっても判読できないことがあると指摘されている。
【０００９】
また、Captchaと同様にボットによる判別を困難にした画像が提案されている（例えば、特許文献１参照。）。特許文献１には、第一のテクスチャからなる背景上に、第一のテクスチャと異なる第二のテクスチャにて構成した文字や記号を配置したアンチロボットテスト用画像が開示されている。このようなアンチロボットテスト用画像は、輝度の一次微分を取得しても、テクスチャそのもののエッジが抽出されるため、文字や記号を背景から分離するためエッジを抽出できない。
【発明の概要】
【発明が解決しようとする課題】
【００１０】
昨今のコンピュータによる画像認識技術の向上を鑑みれば、ボットがシステムを欺いて認証を突破することもいずれは技術的に容易になり、コストも低下し、システムの強度が弱体化していく可能性がある。
【００１１】
本発明は、上記課題に鑑み、可視情報を認識する機能を有する「ボット」による迷惑行為の実施を、より困難にするアンチロボットテストシステム及びアンチロボットテスト方法を提供することを目的とする。
【課題を解決するための手段】
【００１２】
上記課題に鑑み、本発明は、被判読情報を可視情報として含む画像データを提供したサーバが、前記被判読情報の要求元から取得した判読結果情報が前記被判読情報と一致するか否かにより、要求元が人間か否かを判別するアンチロボットテストシステムであって、前記サーバは、前記被判読情報をラスタライズした元画像を分割して、複数のサブ画像を生成するサブ画像生成手段と、前記サブ画像の画像データを、人間が目視する画面における前記サブ画像の位置情報と共に前記要求元に送信するサブ画像送信手段と、を有する、ことを特徴とする。
【００１３】
テスト用の画像を複数のサブ画像に分割することで、「ボット」による迷惑行為の実施をより困難にすることができる。
【発明の効果】
【００１４】
可視情報を認識する機能を有する「ボット」による迷惑行為の実施をより困難にするアンチロボットテストシステム、アンチロボットテスト方法及びアンチロボットテストサーバを提供することができる。
【図面の簡単な説明】
【００１５】
【図１】視覚型アンチロボットテストシステムの概略構成図の一例である。
【図２】サーバとクライアントのハードウェア構成図の一例である。
【図３】クライアントとサーバの動作手順の一例を示すフローチャート図である。
【図４】従来のアンチロボットテスト用画像の一例を示す図である。
【図５】クライアントとサーバの動作手順を示すフローチャート図の別の一例である。
【図６】クライアントとサーバの動作手順を示すフローチャート図の別の一例である。
【図７】視覚型アンチロボットテストシステムの機能ブロック図の一例である。
【図８】クライアントのディスプレイに表示されたアンチロボットテスト用画像の一例を示す図である。
【図９】サブ画像の一例を示す図である（実施例１）。
【図１０】図８の被判読情報の分割例を模式的に示す図である。
【図１１】クライアントのディスプレイに表示された画面の一例を示す図ある。
【図１２】クライアントとサーバの動作手順の一例を示すフローチャート図である。
【図１３】クライアントのディスプレイに表示された画面の一例を示す図である。
【図１４】クライアントのディスプレイに表示された画面の一例を示す図である。
【図１５】クライアントのディスプレイに表示されるアンチロボットテスト用画像の一例を示す図である（実施例２）。
【図１６】サブ画像の一例を示す図である（実施例２）。
【図１７】アンチロボットテスト用画像の生成手順を示すフローチャート図の一例である（実施例２）。
【図１８】クライアントのディスプレイに表示されるアンチロボットテスト用画像の一例を示す（実施例３）。
【図１９】サブ画像の一例を示す図である（実施例３）。
【図２０】アンチロボットテスト用画像の生成手順を示すフローチャート図の一例である（実施例３）。
【図２１】クライアントのディスプレイに表示されるアンチロボットテスト用画像の一例を示す（実施例４）。
【図２２】サブ画像の一例を示す図である（実施例４）。
【図２３】アンチロボットテスト用画像の生成手順を示すフローチャート図の一例である（実施例４）。
【図２４】クライアントのディスプレイに表示されるアンチロボットテスト用画像の一例を示す（実施例５）。
【図２５】サブ画像の一例を示す図である（実施例５）。
【図２６】アンチロボットテスト用画像の生成手順を示すフローチャート図の一例である（実施例５）。
【図２７】クライアントのディスプレイに表示されるアンチロボットテスト用画像の一例を示す（実施例６）。
【図２８】サブ画像の一例を示す図である（実施例６）。
【図２９】アンチロボットテスト用画像の生成手順を示すフローチャート図の一例である（実施例６）。
【図３０】クライアントのディスプレイに表示されるアンチロボットテスト用画像の一例を示す（実施例７）。
【図３１】サブ画像の一例を示す図である（実施例７）。
【図３２】アンチロボットテスト用画像の生成手順を示すフローチャート図の一例である（実施例７）。
【図３３】クライアントのディスプレイに表示されるアンチロボットテスト用画像の一例を示す（実施例８）。
【図３４】サブ画像の一例を示す図である（実施例８）。
【発明を実施するための形態】
【００１６】
以下、本発明を実施するための形態について図面を参照しながら実施例を挙げて説明する。なお、本実施形態では視覚型アンチロボットテストシステム１００を例に説明するが、テストを受ける対象が人間のみ又はロボットのみであってもよく、視覚型アンチロボットテスト用の画像（以下、「アンチロボットテスト用画像」という）の提供対象に制限はない。また、本実施形態では、視覚型アンチロボットテストシステム１００の一例としてサーバ・クライアント型を例にして説明するが、１台のコンピュータがスタンドアローン型で視覚型アンチロボットテストを実行してもよい。
【００１７】
〔視覚型アンチロボットテストシステム１００〕
図１は、視覚型アンチロボットテストシステム１００の概略構成図の一例を示す。視覚型アンチロボットテストシステム１００では、一台以上のクライアント１１ａ、１１ｂ…１１ｎ（以降、区別しない場合「クライアント１１」と称す）が、ネットワーク１３を介してサーバ１２と接続されている。
【００１８】
視覚型アンチロボットテストシステム１００のサーバ１２は、クライアント１１のユーザが実際の人間であるのか、又は、自動化されたコンピュータプログラム（ボット）であるのかを判別する。したがって、本実施形態の「ユーザ」には人間だけでなくボットも含まれるものとする。ネットワーク１３は、インターネットやＬＡＮ、ＷＡＮなどである。また、ネットワーク１３の一部又は全体が無線で構成されていてもよい。
【００１９】
本実施形態の視覚型アンチロボットテストの特徴は、サーバ１２がアンチロボットテスト用画像を複数のサブ画像に分割してクライアント１１に送信することである。「ボット」は複数のサブ画像を適切に連結しないと可視情報を解読できないので、「ボット」による迷惑行為の実施をより困難にすることができる。
【００２０】
図２（ａ）はサーバ１２のハードウェア構成図の一例を、図２（ｂ）はクライアント１１のハードウェア構成図の一例を、それぞれ示す。いずれもコンピュータを実体とするが、コンピュータの機能を有していれば、その呼称は、ＰＣ（パーソナルコンピュータ）、ワークステーション、画像形成装置、携帯電話、無線ＬＡＮ端末、ＰＤＡ（Personal Digital Assistant）等、どのようなものでもよい。
【００２１】
サーバ１２は、それぞれバスで相互に接続されているＣＰＵ１０１、ＲＡＭ１０２、ＲＯＭ１０３、記憶媒体装着部１０４、通信装置１０５、入力装置１０６、表示制御部１０７及びＨＤＤ（Hard  Disk  Drive）１０８を有する。ＣＰＵ１０１は、ＯＳ（Operating  System）やプログラム１１０をＨＤＤ１０８から読み出して実行することで種々の機能を提供すると共に、サーバ１２が行う処理を統括的に制御する。すなわち、サーバ１２はプログラム１１０により視覚型アンチロボットテストに係る機能を提供する。
【００２２】
ＲＡＭ１０２はＣＰＵ１０１がプログラム１１０を実行する際に必要なデータを一時保管する作業メモリ（主記憶メモリ）になり、ＲＯＭ１０３はＢＩＯＳ（Basic Input Output System）やＯＳを起動するためのプログラム、設定ファイルが記憶されている。
【００２３】
記憶媒体装着部１０４は記憶媒体１１１が着脱可能に構成されており、記憶媒体１１１に記録されたプログラム１１０やデータを読み込み、ＨＤＤ１０８にインストールする際と、記憶媒体１１１にデータを書き込む際に使用される。なお、記憶媒体１１１は、ＣＤやＤＶＤの光記録媒体やＳＤカードなどフラッシュメモリを実装した不揮発性のメモリであればよい。
【００２４】
通信装置１０５は、インターネットなどのネットワーク１３に接続するためのインターフェイスであり、ＴＣＰ／ＩＰより下層のプロトコル（物理層、データリンク層）にしたがいクライアント１１と通信する。サーバ１２が実行する通信プログラムは、ＨＴＴＰ（HyperText Transfer Protocol）又は暗号化されたＨＴＴＰであるＨＴＴＰＳ（HyperText Transfer Protocol Security）に従い、ＴＣＰ／ＩＰ以上のプロトコルに必要な処理（例えばデータをカプセル化する等）を提供してクライアント１１と通信する。なお、通信プロトコルはどのようなものであってもよい。通信プログラムは、視覚型アンチロボットテスト用のプログラム１１０から受け取った画像データをクライアント１１に送信し、また、クライアント１１から受信したデータ（後述の判読結果情報）をプログラム１１０に通知する。通信プログラムは、クライアント１１からの要求に応じて、主にＨＴＭＬ（HyperText Markup Language）形式の情報をクライアント１１との間で送受信する。
【００２５】
入力装置１０６は、キーボードやタッチパッド（マウス）などであり、サーバ１２の管理者の様々な操作指示を受け付ける。表示制御部１０７は、プログラム１１０が指示する画面情報に基づき所定の解像度や色数等で液晶などのディスプレイ１０９に描画する。
【００２６】
ＨＤＤ１０８は、ＳＳＤ（Flash Solid State Drive）等の不揮発メモリでもよく、プログラム１１０、視覚型アンチロボットテストの画像データにラスタライズされる送信用テキストデータ２７が記憶されている。プログラム１１０は、記憶媒体１１１に記憶して配布されたり、ネットワークを介して接続された不図示のコンピュータからダウンロードされ、ＨＤＤ１０８にインストールされる。
【００２７】
続いて、クライアント１１のハードウェア構成図について説明する。サーバ１２と同一構成部の説明は省略する。クライアント１１は、同様に、それぞれバスで相互に接続されているＣＰＵ２０１、ＲＡＭ２０２、ＲＯＭ２０３、記憶媒体装着部２０４、通信装置２０５、入力装置２０６、表示制御部２０７及びＨＤＤ２０８を有する。
【００２８】
クライアント１１のＨＤＤ２０８にも通信用のプログラム２１０が記憶されている。通信用のプログラム２１０は例えばブラウザソフトウェアであり、クライアント１１のＣＰＵがプログラム２１０を実行して、サーバ１２のＩＰアドレスを指定することで、サーバ１２と通信が可能になる。プログラム２１０は、サーバ１２から送信されたＨＴＭＬファイルを解釈して、種々の画面の表示を表示制御部２０７に要求する。視覚型アンチロボットテスト用の画面の場合、ＨＴＭＬファイルにはアンチロボットテスト用画像の画面データが埋め込まれるか又はリンクされており（以下、単に「埋め込まれている」という）、また、判読結果情報の入力欄４１を表示するためのタグが記述されている。
【００２９】
クライアント１１のユーザは、入力装置２０６を操作して、アンチロボットテスト用画像の解読結果（文字、記号、数字等のテキスト）を判読結果情報の入力欄４１に入力する。また、ユーザが「送信」ボタン等を押下すると、クライアント１１はその操作を受け付け、判読結果情報をサーバ１２に送信する。
【００３０】
〔動作例〕
図３は、クライアント１１とサーバ１２の動作手順の一例を示すフローチャート図である。サーバ１２は、クライアント１１のユーザが実際の人間なのか否かを判別する視覚型アンチロボットテストを行う。図３の手順は以下の各実施例１〜８に共通に利用できる。
【００３１】
ユーザはクライアント１１を介してサーバ１２に対して認証の要求を行なう。サーバ１２のＩＰアドレスはユーザ又はクライアント１１にとって既知である。なお、認証の要求は、サーバ１２へのログインまで要求するものである必要はなく、ユーザがサービスを受けるための前処理の要求という意味での認証要求であればよい。
【００３２】
サーバ１２は、認証の要求を受信すると、クライアント１１にアンチロボットテスト用画像の画像データが埋め込まれたＨＴＭＬファイルを送信する（Ｓ２１）。クライアント１１はこのＨＴＭＬファイルを受信すると、ＨＴＭＬファイルから生成されたアンチロボットテスト用画像を含む画面をディスプレイ２０９に表示する。
図４は、従来のアンチロボットテスト用画像の一例を示す図である。この画像は、記号、文字及び数字等が変形したり傾いた態様で含まれている。区別するため、アンチロボットテスト用画像に含まれる、一連の記号、文字又は／及び数字を「被判読情報」という。
【００３３】
ユーザはこのアンチロボットテスト用画像に記述されている文字、記号及び数字列を判読し、読み取った結果（テキストデータ）をサーバ１２側に送信する。
【００３４】
ユーザが人間であれば図４の画像から「ＮkpGJN」というテキストを判読することができる。ユーザは、画像を判読したテキスト（判読結果情報）を入力装置２０６から入力する。クライアント１１は、判読結果情報をサーバ１２に送信する（Ｓ１２）。
【００３５】
次にサーバ１２は、判読結果情報を受信して、アンチロボットテスト用画像の画像データの生成の際、ラスタライズした被判読情報と一致するか否かを判定する（Ｓ２２）。
【００３６】
一致する場合（Ｓ２２のＹｅｓ）、サーバ１２は、ユーザ識別用文字列(ユーザＩＤ)とパスワードの入力欄を備えた入力用フォームからなるユーザ認証用画面を生成するＨＴＭＬファイルをクライアント１１に送信する（Ｓ２３）。なお、一致しない場合（Ｓ２２のＮｏ）、サーバ１２は、別のアンチロボットテスト用画像を表示するＨＴＭＬファイルをクライアント１１に送信する（Ｓ２１）。
【００３７】
クライアント１１は、ユーザ認証用のＨＴＭＬファイルを受信して、入力フォームをディスプレイ２０９に表示する。そして、ユーザは、入力装置２０６を使って入力フォームからユーザＩＤとパスワードを入力する。クライアント１１は、入力されたユーザＩＤとパスワードをサーバ１２に送信する（Ｓ１３）。
【００３８】
サーバ１２は、ユーザＩＤとパスワードを受信して、予め登録されているユーザＩＤとパスワードと整合するか否かに基づき、正規のユーザか否かを判定する（Ｓ２４）。サーバ１２は、正規のユーザであると判定した場合（Ｓ２４のＹｅｓ）、図４の処理を終了して、コンテンツ投稿用フォームを表示する等、実際に目的とするサービスの提供を開始する。サーバ１２が正規のユーザでないと判定した場合（Ｓ２４のＮｏ）、サーバ１２は所定回数を上限に、再度、ユーザ認証用画面のＨＴＭＬファイルをクライアント１１に送信する（Ｓ２３）。
【００３９】
なお、サーバ１２が、アンチロボットテスト用画像の画像データを送信する処理（視覚型アンチロボットテスト）と、ユーザ認証用画面のＨＴＭＬファイルを送信する処理（ユーザ認証）の順序は、順不同である。
【００４０】
図５は、クライアント１１とサーバ１２の動作手順を示すフローチャート図の別の一例である。図３と比較して、ステップＳ２１とＳ２２が、ステップＳ２３とＳ２４の後に実行されている。このように、視覚型アンチロボットテストとユーザ認証は図３とは逆の順番で実行されてもよい。
【００４１】
また、サーバ１２は、視覚型アンチロボットテストをのみを実行してもよい。図６は、クライアント１１とサーバ１２の動作手順を示すフローチャート図の別の一例である。図６ではユーザ認証の処理が省略されている。例えば、ユーザIDとパスワードの登録がこれからの場合、図６に示した視覚型アンチロボットテストの後、サーバ１２はユーザ登録を開始する。
【００４２】
このように、図４のようなアンチロボットテスト用画像から、人間であれば正しいテキストを読み取ることができる。しかしながら、このアンチロボットテスト用画像から文字、記号及び数字をコンピュータプログラムが認識するためにはＯＣＲのような特殊な文字認識機能をもたなければならず、しかも、図４のように歪められたり覆い隠されたりしている文字や記号、数字をＯＣＲで認識するのは困難である。
【００４３】
すなわち、クライアント１１側がいわゆる「ボット」であれば、最低限ＯＣＲ機能を備えていなければならず、たとえＯＣＲ機能を備えていたとしても、図４のように歪められたり覆い隠されたりしている文字や記号、数字を画像から読み取ることは困難である。このため、より高度な学習機能を備えたＯＣＲが必要とされる。このようなＯＣＲは、技術的に非常に高度でありかつコストもかかるため、コンピュータプログラムを用いて、無差別、大量にかつ低コストでアンチロボットテスト用画像から判読結果情報を抽出することは非常に困難であるとされている。以上のように、従来の視覚型アンチロボットテストはボットによる迷惑行為の低減に有効であると考えられる。
【００４４】
しかし、昨今のＯＣＲ技術の高度化、低コスト化を鑑みると、従来の視覚型アンチロボットテストは、決して安全な方法とは言えなくなってきている。
【実施例１】
【００４５】
〔本実施形態の視覚型アンチロボットテスト〕
図７は、本実施形態の視覚型アンチロボットテストシステム１００の機能ブロック図の一例を示す。サーバ１２は、テスト情報生成部２１、テスト情報送信部２２、判読結果情報受信部２３、一致判定部２４、認証部２５、及び、サービス提供部２６、を有する。これらの機能は、サーバ１２のＣＰＵ１０１がプログラム１１０を実行して、一部ハードウェアと協働して実現するものである。
【００４６】
テスト情報生成部２１は、送信用テキストデータ２７から選択した被判読情報を用いて、アンチロボットテスト用画像を生成する。送信用テキストデータ２７は、文字（あ・い・う・え・お…、Ａ・Ｂ・Ｃ…、特・許…）、記号（＃・＄・％・￥・＜・＞…）及び数字（１・２・３…）等である。字体（フォント）は特に制限されないが、字体毎に同じ文字、記号及び数字の送信用テキストデータ２７を用意しておいてもよい。
【００４７】
図８は、クライアント１１のディスプレイ２０９に表示されたアンチロボットテスト用画像４０の一例を示す。アンチロボットテスト用画像４０には、被判読情報がラスタライズされている。換言すれば、被判読情報をラスタライズしたものがアンチロボットテスト用画像４０である。図８では、送信用テキストデータ２７として大文字のアルファベットを７個用いた「ＡＢ  ＣＤ  ＥＦ  Ｇ」が被判読情報である。
【００４８】
テスト情報生成部２１は、被判読情報を画像データにラスタライズしてから複数のサブ画像に分割する。図９（ａ）〜（ｄ）は、サブ画像の一例を示す。図９ではサブ画像は４つである。実際にはこれらのサブ画像は単体ではディスプレイ２０９に表示されない。クライアント１１がユーザに提供する被判読情報は、図８のように１つのアンチロボットテスト用画像４０として表示され、人間が各サブ画像を独立に峻別することはできないか又は困難である。しかし、サーバ１２とクライアント１１は、各サブ画像の画像データを、それぞれ別個の画像データとして扱う。
【００４９】
なお、図９（ａ）〜（ｄ）では、画像の周囲に太い枠線が描画されているが、これは説明の便宜のために描画したものであり、クライアント１１がディスプレイ２０９にアンチロボットテスト用画像４０を表示する際は枠線は描画されない。
【００５０】
テスト情報生成部２１は、例えば、送信用テキストデータ２７からランダムに所定数の文字等を読み出し、ビットマップ等のフォーマットの画像データにラスタライズする。文字のラスタライズは、例えばアウトラインフォント用のラスタライザを用いればよい。
【００５１】
そして、テスト情報生成部２１は、画像データを予め決まった数に分割する。視覚型アンチロボットテストの性能上、分割数は多いほど好ましい。また、決まった数に分割するのでなく、読み出した文字等の数に応じて可変としてもよい。
【００５２】
図１０は、図８の被判読情報をラスタライズした画像データの分割例を模式的示す図である。図１０では、元の画像データが４つに分割されている。分割により図９（ａ）〜（ｄ）のサブ画像が生成される。なお、テスト情報生成部２１は、サブ画像を所定のフォーマット（Ｔｉｆｆ、Ｊｐｅｇ  ＢＭＰデータ）の画像データに変換してもよい。
【００５３】
また、テスト情報生成部２１は、被判読情報を一致判定部２４に送出し、テスト情報生成部２１は、サブ画像の画像データをテスト情報送信部２２に送出する。
【００５４】
テスト情報送信部２２は、複数のサブ画像の画像データを、ＨＴＭＬファイルに埋め込んでクライアント１１に送信する。ＨＴＭＬファイルには、４つのサブ画像が１つの画像であるかのように表示されるよう位置と大きさが指定されている。
【００５５】
判読結果情報受信部２３は、クライアント１１から判読結果情報を受信して、一致判定部２４に送出する。ユーザが人間の場合、クライアント１１が送信する判読結果情報は、分割前の全ての被判読情報を含むと考えられる。したがって、一致判定部２４は、被判読情報と判読結果情報とが一致するか否かに基づき、クライアント１１のユーザが人間か否かを判定する。被判読情報と判読結果情報とが一致する場合、一致判定部２４は、例えば認証部２５にユーザ認証を要求し、一致しない場合、一致判定部２４は、テスト情報生成部２１に、再度のサブ画像の生成を要求する。なお、視覚型アンチロボットテストの画像に含まれる文字、記号及び数字等はセッション毎に毎回異なることが望ましい。
【００５６】
認証部２５が、ユーザの認証が成立したと判定すると、認証部２５はサービス提供部２６にサービスの提供を要求する。サービス提供部２６は、ブログ等のユーザ参加型のコンテンツ生成サービスの提供を開始する。
【００５７】
次に、クライアント１１の機能ブロックについて説明する。クライアント１１は、テスト情報受信部３１、画面表示部３２、判読結果情報送信部３４、及び、判読結果情報受付部３３を有する。これらの機能は、クライアント１１のＣＰＵがプログラム２１０を実行して、一部ハードウェアと協働して実現するものである。
【００５８】
テスト情報受信部３１は、サーバ１２からＨＴＭＬファイルを受信して画面表示部３２に送出する。画面表示部３２は、ＨＴＭＬファイルを解釈してディスプレイ２０９に表示する。上述したように、このＨＴＭＬファイルには複数のサブ画像が含まれ、４つのサブ画像が１つの画像であるかのように表示されるよう位置と大きさが指定されている。
【００５９】
図１１は、クライアント１１のディスプレイ２０９に表示された画面の一例を示す。図１１には、被判読情報がラスタライズされたアンチロボットテスト用画像４０、「上記の文字、記号、数字を入力してください」というメッセージ、判読結果情報の入力欄４１、及び、送信ボタン４２、が表示されている。アンチロボットテスト用画像４０は、４つのサブ画像がシームレスに表示されたものであり、画像データのファイルはそれぞれ別々に存在する。ユーザは、入力装置２０６を使って、４つのサブ画像を左（又は右でもよい）から順番に判読し、判読結果情報の入力欄４１に同じ順番でテキスト（判読結果情報）を入力する。
【００６０】
判読結果情報受付部３３は、判読結果情報の入力欄４１に入力された判読結果情報を受け付けて、ＲＡＭ２０２等に記憶しておく。そして、判読結果情報送信部３４は、ユーザが入力装置２０６を操作して送信ボタン４２を押下したことを検出すると、判読結果情報をサーバ１２に送信する。
【００６１】
通常の視覚型アンチロボットテストシステム１００では、「ボット」等のコンピュータプログラムがアンチロボットテスト用画像４０から文字列を判読する際には、１個の画像のデータファイルを取得して文字列を判別するだけでよい。しかし、図１１に示したように、１つの被判読情報を複数のサブ画像に分割することで、ボットの処理量が増大し、迷惑行為を防止しやすくなる。すなわち、本実施形態の視覚型アンチロボットテストシステム１００においては、「ボット」等のコンピュータプログラムがサブ画像のデータファイルから被判読情報を判別するためには、複数のサブ画像のデータファイルを取得することが要求される。そして、ボットは、これらをメモリ等の記憶手段上にて空間的に連結した後、文字列の判別を行なうか、又は、個々の画像のデータファイルを取得し、個々の文字列を判別し、判別した各文字列を連結する必要がある。
【００６２】
このように、本実施形態の視覚型アンチロボットテストシステム１００では、ボットが視覚型アンチロボットテストシステム１００をパスするため、ボットのコンピュータプログラムに一般的な視覚型アンチロボットテストに対して必要とされるよりも複雑なアルゴリズムが必要となる。このため、必然的にボットのプログラミングのためのコストも上昇する。視覚型アンチロボットテストをパスするための技術的な困難さ及びコストがともに上昇するため、「ボット」を用いて迷惑行為を成そうとする者は、より高性能なハードウエアを用意するか、単位時間あたりの迷惑行為の数を減少せざるを得なくなってしまい、迷惑行為の実施はより現実的ではなくなる。
【００６３】
図１２は、クライアント１１とサーバ１２の動作手順の一例を示すフローチャート図である。この手順は従来の図６の動作手順と同じであり、被判読情報の表示態様が異なる。
【００６４】
ユーザはクライアント１１の入力装置２０６を操作してサーバ１２に接続する。クライアント１１は、サーバ１２に認証を要求する（Ｓ１１）。例えば、クライアント１１は、ＨＴＴＰリクエストというメッセージによりＷｅｂページのデータをサーバ１２に要求する。
【００６５】
サーバ１２は、認証の要求（ＨＴＴＰリクエスト）を受信する。サーバ１２のテスト情報生成部２１は、ＨＴＴＰリクエストのレスポンスとして、被判読情報をラスタライズしてアンチロボットテスト用画像４０を生成し、これを複数のサブ画像に分割する。そして、テスト情報送信部２２は、アンチロボットテスト用画像４０をクライアント１１に送信する（Ｓ２１）。すなわち、テスト情報送信部２２は、複数のサブ画像の画像データが埋め込まれたＨＴＭＬファイルをクライアントに送信する。
【００６６】
クライアント１１のテスト情報受信部３１はこのＨＴＭＬファイルを受信する。そして、画面表示部３２が、図１１のような画面を表示する。ユーザが判読結果情報を入力すると、判読結果情報受付部３３はこれを受け付け、判読結果情報送信部３４がサーバ１２に送信する（Ｓ１２）。
【００６７】
サーバ１２の判読結果情報受信部２３は判読結果情報を受信する。一致判定部２４は、判読結果情報と被判読情報とが一致するか否かを判定する（Ｓ２２）。一致する場合（Ｓ２２のＹｅｓ）、図１２の処理は終了し、サービス提供部２６がサービスの提供を開始する。一致しない場合（Ｓ２２のＮｏ）、テスト情報生成部２１は新たな被判読情報からサブ画像を生成してステップＳ２１以下の処理を繰り返す。
【００６８】
本実施例の被判読情報の表示態様によれば、被判読情報を複数に分割してサブ画像を生成するという比較的単純な方法で、ボットによる視覚型アンチロボットテストのパスを困難にすることができる。
【００６９】
〔サブ画像及び判読結果情報の変形例〕
サブ画像の表示態様について変形例を説明する。
図１３（ａ）は、クライアント１１のディスプレイ２０９に表示された画面の一例を示す。図１３（ａ）において、図１１と同一部には同一の符号を付しその説明は省略する。図１３（ａ）では、４つのサブ画像がそのまま独立した４つの画像のように表示されている。このように、サブ画像が別々に表示されても、ユーザが人間であれば一連の被判読情報として認識できる。一方、ボットにとっては、本実施例と同様にメモリ等の記憶手段上にて空間的に連結した後、文字列の判別を行なうか、又は、個々のサブ画像のデータファイルを取得し、個々の文字列を判別し、判別した各文字列を連結する必要がある。よって、「ボット」を用いて迷惑行為を成そうとする者を減らすことや迷惑行為そのものを低減できる。
【００７０】
また、図１３（ｂ）は、クライアント１１のディスプレイ２０９に表示された画面の一例を示す。図１３（ｂ）ではサブ画像に番号「１〜４」が付されている。また、「上記の文字、記号、数字のうち1番と4番を入力してください」というメッセージが表示されている。したがって、判読結果情報は「ＡＢＧ」となる。サーバ１２のテスト情報生成部２１は、被判読情報からランダムに番号（この場合は１と４）を指定して、図１３のメッセージに含めておくと共に、一致判定部２４に送出する。したがって、一致判定部２４は、被判読情報の１番目と４番目を抽出した文字、記号及び数字が、判読結果情報と一致するか否かを判定する。
【００７１】
図１３（ｂ）のような表示態様では、ボットが視覚型アンチロボットテストをパスするためには、メッセージ（テキストデータ）からその意味を解釈する必要があり、日本語や英語などの文法解析の機能を搭載する必要がある。したがって、「ボット」を用いての迷惑行為の実施がより現実的でなくなり、ボットによる迷惑攻撃を低減できる。
【００７２】
図１４は、クライアント１１のディスプレイ２０９に表示された画面の一例を示す。図１３において、図１１と同一部には同一の符号を付しその説明は省略する。図１１や図１３では、サブ画像の被判読情報を、変形したり傾けたり歪めることについて触れていないが、当然、本実施形態においても、被判読情報を変形等してもよい。また、第一のテクスチャからなる背景上に、第一のテクスチャと異なる第二のテクスチャにて被判読情報を構成して重畳して配置してもよい。
【００７３】
サーバ１２のテスト情報生成部２１は、被判読情報に変形等を施したり、第一のテクスチャの背景に第二のテクスチャにて被判読情報を構成して重畳して配置した後、複数のサブ画像に区分する。クライアント１１は４つのサブ画像を１つの画像のように表示するので、図１４のようなアンチロボットテスト用画像４０を表示できる。
【００７４】
被判読情報に変形等を施せば、ボットの処理量がさらに増大するので、プログラムが大型化するなどコストが増大し、ボットによる迷惑攻撃を低減できる。
【実施例２】
【００７５】
本実施例では、ボットによる判読がさらに困難なサブ画像を用いたアンチロボットテスト用画像４０について説明する。実施例１では、被判読情報は１つの文字、記号及び数字を分割していなかったが、本実施例では被判読情報の１つの文字、記号及び数字が、複数のサブ画像に分割されるようにサブ画像を生成する。
【００７６】
図１５は、クライアント１１のディスプレイ２０９に表示されるアンチロボットテスト用画像４０の一例を示す。図１５に示すように、目視されるアンチロボットテスト用画像４０は実施例１と同様であるが、このアンチロボットテスト用画像４０は実施例１よりも多くの数のサブ画像から成っている。
【００７７】
図１６（ａ）〜（ｈ）は、サブ画像の一例を示す。また、図１６（ｉ）は被判読情報の分割を模式的に示す図の一例である。テスト情報生成部２１は、送信用テキストデータ２７からランダムにテキストデータを抽出し、それを被判読情報とする。ここまでは、実施例１と同様である。しかし、本実施例では、テスト情報生成部２１は、被判読情報をラスタライズしたアンチロボットテスト用画像４０を、実施例１よりも多くのサブ画像に分割する。具体的には、各サブ画像の分割の位置が、文字（記号、数字）と文字（記号、数字）の間には存在せず、文字が占める領域の内部に存在する。例えば、１つの文字、記号及び数字の高さよりも短い間隔で上下に分割すること、又は、被判読情報の数（図では７個）よりも多くの数で横方向に分割すること、の少なくともいずれかにより、各サブ画像の分割の位置が、文字が占める領域の内部に存在するようになる。より簡単には、十分に多くの数のサブ画像に分割すればよい。
【００７８】
なお、図１６（ａ）〜（ｈ）では、全てのサブ画像の分割位置が、文字が占める領域の内部に存在している例を例示したが、必ずしも全てのサブ画像の分割位置がこのような位置にある必要はない。例えば、少なくとも１カ所以上の分割位置が、文字が占める領域の内部にあればよい。ただし、ボットによる、視覚型アンチロボットテストのパスを阻害するには、分割位置が、文字が占める領域の内部に存在する数は多い方がよい。
【００７９】
また、図１６（ａ）〜（ｈ）では、画像の周囲に枠線が描画されている、説明の便宜のために描画しているのであり、実際にはこのような枠線は描画されない。同様に、図１６（ｉ）に描画された格子線も分割位置の説明のために便宜的に描画しているのであり、実際にはこれは描画されない。
【００８０】
このように、サブ画像の分割位置が、文字が占める領域の内部に存在していることで、サブ画像の１つからは被判読情報を判読することが困難になる。
【００８１】
図１７は、アンチロボットテスト用画像４０の生成手順を示すフローチャート図の一例である。このフローチャート図は図６のステップＳ２１をより詳細に説明したものである。
【００８２】
まず、テスト情報生成部２１は、送信用テキストデータ２７から被判読情報を決定する（Ｓ１１０）。被判読情報を構成する文字等の数は所定の範囲で予め決まっている。
【００８３】
テスト情報生成部２１は、被判読情報をラスタライズしてアンチロボットテスト用画像４０を生成する（Ｓ１２０）。クライアント１１のディスプレイ２０９に表示される画像は、このアンチロボットテスト用画像４０である。したがって、人間のユーザがアンチロボットテスト用画像４０が複数のサブ画像から構成されていることを意識することはない。
【００８４】
テスト情報生成部２１は、アンチロボットテスト用画像４０を、文字の分割位置が文字が占める領域の内部に来るように分割する（Ｓ１３０）。このような分割は、分割数を多くすれば自然に実現することができる。テスト情報送信部２２はサブ画像をＨＴＭＬファイルに埋め込んでクライアント１１に送信する。以降の処理は、実施例１と同様なので省略する。
【００８５】
本実施例のアンチロボットテスト用画像４０は、サブ画像の分割の位置は、文字と文字の間には存在せず、文字が占める領域の内部に存在するため、たとえ人間であってもサブ画像単位で文字を正確に判読することはできない。一般的な視覚型アンチロボットテストシステム１００において、「ボット」等のコンピュータプログラムが画像データから被判読情報を判読する際は、１個の画像のデータファイルを取得して文字列を判別するだけでよい。しかし、本実施例のアンチロボットテスト用画像４０から、「ボット」等のコンピュータプログラムが文字列を判別するためには、複数のサブ画像の画像データの全てを取得し、これらをメモリ等記憶手段上にて空間的に連結した後、文字列の判別を行なう必要がある。
【００８６】
このように、本実施形態の視覚型アンチロボットテストシステム１００をパスするためには、「ボット」等のコンピュータプログラムには一般的な視覚型アンチロボットテストシステム１００に対して必要とされるよりも複雑なアルゴリズムが必要となり、必然的にこれを実施するためのコストも上昇する。ボットを作成するための技術的な困難さ及びコストがともに上昇するため、「ボット」を用いて迷惑行為を成そうとする者は、より高性能なハードウエアを必要とするか、単位時間あたりの迷惑行為の数を減少せざるを得なくなってしまい、迷惑行為の実施はより現実的ではなくなる。
【実施例３】
【００８７】
本実施例では、実施例１又は２の複数のサブ画像に対し画像データのフォーマットを統一しない視覚型アンチロボットテストシステム１００について説明する。実施例１又は２のどちらのサブ画像にも本実施例を適用できるが、本実施例を含め以下の実施例では実施例２のサブ画像を例にして説明する。
【００８８】
図１８は、クライアント１１のディスプレイ２０９に表示されるアンチロボットテスト用画像４０の一例を示す。図１８に示すように、目視されるアンチロボットテスト用画像４０は実施例１と同様であるが、このアンチロボットテスト用画像４０は各種のフォーマットによる画像データのサブ画像から成っている。
【００８９】
図１９（ａ）〜（ｈ）は、サブ画像の画像データの一例を示す。また、図１９（ｉ）は被判読情報の分割を模式的に示す図の一例である。図１９（ａ）〜（ｈ）に示すように、サブ画像の画像データのフォーマットは統一されていない。図１９（ａ）のサブ画像はｊｐｅｇフォーマットであり、図１９（ｂ）のサブ画像はTIFFフォーマットであり、図１９（ｃ）のサブ画像はｊｐｅｇフォーマットであり、図１９（ｄ）のサブ画像はｊｐｅｇフォーマットであり、図１９（ｅ）のサブ画像はｊｐｅｇ２０００フォーマットであり、図１９（ｆ）のサブ画像はｐｎｇフォーマットであり、図１９（ｇ）のサブ画像はTIFFフォーマットであり、図１９（ｈ）のサブ画像はｊｐｅｇフォーマットである。
【００９０】
このように各サブ画像のデータファイルは、全てが同一のフォーマットではなく、jpeg、TIFF、png、jpeg2000等の複数の画像データ用のフォーマットが混在している。サブ画像のデータファイルのフォーマットが異なれば、ボットは全てのフォーマットに対応する必要があり、実施例２だけを適用したアンチロボットテスト用画像４０よりもさらに困難にすることができる。
【００９１】
なお、図１９（ａ）〜（ｈ）では、画像の周囲に枠線を描画しているが、これは説明の便宜のために描画しているのであり、実際にはこのような枠線は描画されない。同様に、図１９（ｉ）に描画された格子線も説明のために便宜的に描画しているのであり、実際にはこれは描画されない。
【００９２】
図２０は、アンチロボットテスト用画像４０の生成手順を示すフローチャート図の一例である。このフローチャート図は図６のステップＳ２１をより詳細に説明したものである。
【００９３】
まず、テスト情報生成部２１は、送信用テキストデータ２７から被判読情報を決定する（Ｓ１１０）。被判読情報を構成する文字等の数は所定の範囲で予め決まっている。
【００９４】
テスト情報生成部２１は、被判読情報をラスタライズしてアンチロボットテスト用画像４０を生成する（Ｓ１２０）。この時点におけるアンチロボットテスト用画像４０のデータファイルのフォーマットは、例えばビットマップである。クライアント１１のディスプレイ２０９に表示される画像は、このアンチロボットテスト用画像４０である。したがって、人間のユーザがアンチロボットテスト用画像４０が複数のサブ画像から構成されていることを意識することはない。
【００９５】
テスト情報生成部２１は、アンチロボットテスト用画像４０を、文字の分割位置が文字が占める領域の内部に来るように分割する（Ｓ１３０）。このような分割は、分割数を多くすれば自然に実現することもできる。
【００９６】
ついで、テスト情報生成部２１は、サブ画像のデータファイルのフォーマットを変換する（Ｓ１４０）。例えば、ＴＩＦＦがデフォルトのフォーマットであるとすると、テスト情報生成部２１は、フォーマットの種類の数（例えば４つ）以上のサブ画像を任意に選択し、選択したサブ画像のフォーマットをＴＩＦＦから別のフォーマットに変換する。こうすることで、サブ画像の画像データのフォーマットを種々のフォーマットに変換できる。なお、サブ画像のデータファイルのフォーマットは、セッション毎に毎回異なることが望ましい。
【００９７】
なお、クライアント１１の画面表示部３２は、種々のフォーマットに対応しており、各サブ画像のフォーマットに応じて画像データを伸張、変換してビットマップデータに戻す。したがって、人間のユーザがアンチロボットテスト用画像４０がデータファイルのフォーマットが異なる複数のサブ画像から構成されていることを意識することはない。以降の処理は、実施例１と同様なので省略する。
【００９８】
本実施例においては、サブ画像のデータファイルのフォーマットが統一されてないので、「ボット」等のコンピュータプログラムがサブ画像から文字列を判別するためには、サブ画像のデータファイルを全て取得し、異なるフォーマットのデータファイルを全てビットマップ等のフォーマットに再度変換して、これらをメモリ等記憶手段上にて空間的に連結した後、文字列の判別を行なう必要がある。
【００９９】
このように、本実施形態の視覚型アンチロボットテストシステム１００をパスするためには、「ボット」等のコンピュータプログラムには一般的な視覚型アンチロボットテストシステム１００に対して必要とされるよりも複雑なアルゴリズムが必要となり、必然的にこれを実施するためのコストも上昇する。ボットを作成するための技術的な困難さ及びコストがともに上昇するため、「ボット」を用いて迷惑行為を成そうとする者は、より高性能なハードウエアを必要とするか、単位時間あたりの迷惑行為の数を減少せざるを得なくなってしまい、迷惑行為の実施はより現実的ではなくなる。
【実施例４】
【０１００】
本実施例では、サブ画像を異なる色空間（以下、カラーモードという）で表してアンチロボットテスト用画像４０を構成する視覚型アンチロボットテストシステム１００について説明する。
【０１０１】
図２１は、クライアント１１のディスプレイ２０９に表示されるアンチロボットテスト用画像４０の一例を示す。図２１に示すように、目視されるアンチロボットテスト用画像４０は実施例１と同様であるが、このアンチロボットテスト用画像４０は各種のカラーモードのサブ画像から成っている。
【０１０２】
図２２（ａ）〜（ｈ）は、サブ画像のカラーモードの一例を示す。また、図２２（ｉ）は被判読情報の分割を模式的に示す図の一例である。図２２（ａ）〜（ｈ）に示すように、サブ画像のカラーモードは統一されていない。図２２（ａ）のサブ画像はＲＧＢモードであり、図２２（ｂ）のサブ画像はグレーモードであり、図２２（ｃ）のサブ画像はＣＭＹＫモードであり、図２２（ｄ）のサブ画像はグレーモードであり、図２２（ｅ）のサブ画像はＬ*ａ*ｂ*モードであり、図２２（ｆ）のサブ画像はＲＧＢモードであり、図２２（ｇ）のサブ画像はＲＧＢモードであり、図２２（ｈ）のサブ画像はＣＭＹＫモードである。
【０１０３】
このように各サブ画像のカラーモードは、全てが同一でなく、各種のカラーモードが混在している。サブ画像のカラーモードが異なれば、ボットは、サブ画像のカラーモードをメモリ等の記憶手段上にて統一しないと、ＯＣＲ処理が困難になる。例えばカラーモードが異なるサブ画像間でエッジが発生する可能性がある等のためである。このため、ボットは全てのサブ画像のカラーモードに対応する必要があり、実施例２及び３だけを適用したアンチロボットテスト用画像４０よりもさらに困難にすることができる。
【０１０４】
なお、図２２（ａ）〜（ｈ）では、画像の周囲に枠線を描画しているが、これは説明の便宜のために描画しているのであり、実際にはこのような枠線は描画されない。同様に、図２２（ｉ）に描画された格子線も説明のために便宜的に描画しているのであり、実際にはこれは描画されない。
【０１０５】
図２３は、アンチロボットテスト用画像４０の生成手順を示すフローチャート図の一例である。このフローチャート図は図６のステップＳ２１をより詳細に説明したものである。
【０１０６】
まず、テスト情報生成部２１は、送信用テキストデータ２７から被判読情報を決定する（Ｓ１１０）。被判読情報を構成する文字等の数は所定の範囲で予め決まっている。
【０１０７】
テスト情報生成部２１は、被判読情報をラスタライズしてアンチロボットテスト用画像４０を生成する（Ｓ１２０）。この時点の画像データのカラーモードは、例えばＲＧＢモードである。
【０１０８】
テスト情報生成部２１は、アンチロボットテスト用画像４０を、文字の分割位置が文字が占める領域の内部に来るように分割する（Ｓ１３０）。このような分割は、分割数を多くすれば自然に実現することもできる。
【０１０９】
ついで、テスト情報生成部２１は、サブ画像の画像データのカラーモードを変換する（Ｓ１５０）。例えば、ＲＧＢモードがデフォルトのカラーモードであるとすると、テスト情報生成部２１は、カラーモードの種類の数（例えば４つ）以上のサブ画像を任意に選択し、選択したサブ画像のカラーモードをＲＧＢモードから別のカラーモードに変換する。なお、各サブ画像のカラーモードはセッション毎に毎回異なることが望ましい。
【０１１０】
このようにして、サブ画像のカラーモードを種々のカラーモードに変換できる。なお、ステップＳ１５０の前又は後に、実施例３と同様にフォーマットを変換してもよい。
【０１１１】
ここで、クライアント１１の画面表示部３２がアンチロボットテスト用画像４０を表示する態様は２つある。すなわち、画面表示部３２は、サブ画像のカラーモードを統一してからアンチロボットテスト用画像４０を表示してもよいし、統一せずに表示してもよい。
【０１１２】
例えば、画面表示部３２は、カラーモードの異なる複数のサブ画像を、そのまま１つのアンチロボットテスト用画像４０として表示する。例えば、アンチロボットテスト用画像４０が白黒２値であれば、サブ画像のカラーモードが異なってもユーザはほとんど違和感を覚えない。また、仮に、アンチロボットテスト用画像４０がカラーで生成されていても、ユーザが人間なら色合いの異なる画像から一連の被判読情報を判読することができる。
【０１１３】
また、画面表示部３２は、カラーモードの異なる画像データを所定のカラーモードに統一してアンチロボットテスト用画像４０を表示してもよい。統一するカラーモードはいくつか考えられるが、グレーモードのサブ画像には元のラスタデータの色情報が含まれていないので、画面表示部３２は例えばグレーモードに統一する。また、サーバ１２のテスト情報生成部２１が生成するサブ画像のカラーがグレーモードに固定されているような場合、グレーモードのサブ画像をＣＭＹＫモードやＲＧＢモードに変換しても、サーバ１２から送られた時点でＣＭＹＫモードやＲＧＢモードのサブ画像と大きく色が異なることはないので、ＣＭＹＫモードやＲＧＢモードに統一してもよい。
【０１１４】
サブ画像を全てグレーモードに統一すれば、例えば、文字の領域は黒、背景は白のように、サブ画像を１つのアンチロボットテスト用画像４０に表示した場合、人間のユーザが目視した際の違和感をほぼなくすことができる。
以降の処理は、実施例１と同様なので省略する。
【０１１５】
本実施例においては、サブ画像のカラーモードが同一ではないので、「ボット」等のコンピュータプログラムがサブ画像から文字列を判別するためには、サブ画像の画像データを全て取得し、異なるカラーモードを全て同一のカラーモードに変換して、これらをメモリ等記憶手段上にて空間的に連結した後、文字列の判別を行なう必要がある。
【０１１６】
このように、本実施形態の視覚型アンチロボットテストシステム１００をパスするためには、「ボット」等のコンピュータプログラムには一般的な視覚型アンチロボットテストシステム１００に対して必要とされるよりも複雑なアルゴリズムが必要となり、必然的にこれを実施するためのコストも上昇する。ボットを作成するための技術的な困難さ及びコストがともに上昇するため、「ボット」を用いて迷惑行為を成そうとする者は、より高性能なハードウエアを必要とするか、単位時間あたりの迷惑行為の数を減少せざるを得なくなってしまい、迷惑行為の実施はより現実的ではなくなる。
【実施例５】
【０１１７】
本実施例では、サブ画像毎に背景色と前景色の組み合わせを可変にしてアンチロボットテスト用画像４０を構成する視覚型アンチロボットテストシステム１００について説明する。
【０１１８】
図２４は、クライアント１１のディスプレイ２０９に表示されるアンチロボットテスト用画像４０の一例を示す。図２４に示すように、目視されるアンチロボットテスト用画像４０は実施例１と同様であるが、このアンチロボットテスト用画像４０は、背景色と前景色の組み合わせが統一されていない。
【０１１９】
図２５（ａ）〜（ｈ）は、サブ画像の画像データの一例を示す。また、図２５（ｉ）は被判読情報の分割を模式的に示す図の一例である。図２５（ａ）〜（ｈ）に示すように、サブ画像の背景色（文字、記号、数字以外）と前景色（文字、記号、数字）は、各サブ画像毎に様々である。
【０１２０】
図２５（ａ）のサブ画像は「背景色：白  前景色：黒」であり、図２５（ｂ）のサブ画像は「背景色：黒  前景色：白」であり、図２５（ｃ）のサブ画像は「背景色：緑  前景色：赤」であり、図２５（ｄ）のサブ画像は「背景色：青  前景色：白」であり、図２５（ｅ）のサブ画像は「背景色：白  前景色：緑」であり、図２５（ｆ）のサブ画像は「背景色：白  前景色：黒」であり、図２５（ｇ）のサブ画像は「背景色：青  前景色：白」であり、図２５（ｈ）のサブ画像は「背景色：白  前景色：緑である。
【０１２１】
このように各サブ画像は、背景色と前景色の組み合わせが様々である。背景色と前景色の組み合わせが異なるサブ画像は、ボットが単にこれらを連結しても、ＯＣＲ処理はできない。背景色が異なるサブ画像間でエッジが発生する可能性がある等のためである。すなわち、ボットは、サブ画像の背景色と前景色をメモリ等の記憶手段上に配置して統一しないと、ＯＣＲ処理が困難になる。図示したような2値画像であれば、一方の画素値を白に、他方を黒に置き換えることで、全てのサブ画像の背景色と前景色を統一することができる。しかし、サブ画像から、一方の画素値と他方の画素値のどちらが背景色でどちらが前景色かをボットが判別することは困難である。図２５の例では、画素数の多い方が背景色であるが、文字、数字、記号を太くするなどして、背景色と前景色の画素数の比率は調整できる。
【０１２２】
したがって、ボットが図２５のようなサブ画像から被判読情報を判読するには、少なくとも、背景色と前景色を判別する処理、及び、背景色と前景色をサブ画像間で統一する処理、が必要であり、被判読情報の判読を、実施例２〜４だけを適用したアンチロボットテスト用画像４０よりもさらに困難にすることができる。
【０１２３】
なお、図２５（ａ）〜（ｈ）では、画像の周囲に枠線を描画しているが、これは説明の便宜のために描画しているのであり、実際にはこのような枠線は描画されない。同様に、図２５（ｉ）に描画された格子線も説明のために便宜的に描画しているのであり、実際にはこれは描画されない。
【０１２４】
図２６は、アンチロボットテスト用画像４０の生成手順を示すフローチャート図の一例である。このフローチャート図は図６のステップＳ２１をより詳細に説明したものである。
【０１２５】
まず、テスト情報生成部２１は、送信用テキストデータ２７から被判読情報を決定する（Ｓ１１０）。被判読情報を構成する文字等の数は所定の範囲で予め決まっている。
【０１２６】
テスト情報生成部２１は、被判読情報をラスタライズしてアンチロボットテスト用画像４０を生成する（Ｓ１２０）。例えば、この時点のサブ画像の背景色は白、前景色は黒である。
【０１２７】
テスト情報生成部２１は、アンチロボットテスト用画像４０を、文字の分割位置が文字が占める領域の内部に来るように分割する（Ｓ１３０）。このような分割は、分割数を多くすれば自然に実現することもできる。
【０１２８】
ついで、テスト情報生成部２１は、サブ画像の背景色と前景色をサブ画像毎に変更する（Ｓ１６０）。背景色と前景色を変換する方法には種々の方法がある。例えば、サブ画像に分割する前に、テスト情報生成部２１は被判読情報の画素にラベリングしておく（画素に番号を振って被判読情報の画素であることを示す情報を持たせる）。そして、テスト情報生成部２１は、被判読情報の画素を前景色に、その他の画素を背景色に変更する。
【０１２９】
なお、背景色と前景色の組み合わせは、セッション毎に毎回異なることが望ましい。また、ステップＳ１６０の後に、実施例４と同様にカラーモードを変換してもよいし、実施例３と同様にフォーマットを変換してもよい。
【０１３０】
ここで、クライアント１１の画面表示部３２がアンチロボットテスト用画像４０を表示する態様は２つある。すなわち、画面表示部３２は、サブ画像の背景色と前景色の組み合わせを統一してからアンチロボットテスト用画像４０を表示してもよいし、統一せずに表示してもよい。
【０１３１】
例えば、画面表示部３２は、背景色と前景色の組み合わせの異なる複数のサブ画像を、そのまま１つのアンチロボットテスト用画像４０として表示する。人間のユーザはエッジ情報に注目して被判読情報を判読するので、このようなアンチロボットテスト用画像４０でも一連の被判読情報を判読することができる。
【０１３２】
また、画面表示部３２は、背景色と前景色の組み合わせの異なる画像データを所定の背景色（白）と前景色（黒）の組み合わせに統一してもよい。背景色の画素値と前景色の画素値を区別するため、画面表示部３２は、サブ画像のある辺に接している２種類の画素値の数の比率、２値化処理やエッジ処理を施して得られた画素数の大小等から、背景色と前景色を判定して、サブ画像の背景色と前景色の組み合わせを統一する。サブ画像のある辺とは、サブ画像を囲む四辺の１以上をいい、画面表示部３２が着目する辺はサブ画像毎に決まっている。以降の処理は、実施例１と同様なので省略する。
【０１３３】
本実施例においては、サブ画像の背景色と前景色の組み合わせが同一ではないので、「ボット」等のコンピュータプログラムがサブ画像から文字列を判別するためには、サブ画像の画像データを全て取得し、各サブ画像の背景色と前景色を全て統一して、これらをメモリ等記憶手段上にて空間的に連結した後、文字列の判別を行なう必要がある。
【０１３４】
このように、本実施形態の視覚型アンチロボットテストシステム１００をパスするためには、「ボット」等のコンピュータプログラムには一般的な視覚型アンチロボットテストシステム１００に対して必要とされるよりも複雑なアルゴリズムが必要となり、必然的にこれを実施するためのコストも上昇する。ボットを作成するための技術的な困難さ及びコストがともに上昇するため、「ボット」を用いて迷惑行為を成そうとする者は、より高性能なハードウエアを必要とするか、単位時間あたりの迷惑行為の数を減少せざるを得なくなってしまい、迷惑行為の実施はより現実的ではなくなる。
【実施例６】
【０１３５】
本実施例では、サブ画像毎に解像度を可変にしてアンチロボットテスト用画像４０を構成する視覚型アンチロボットテストシステム１００について説明する。
【０１３６】
図２７は、クライアント１１のディスプレイ２０９に表示されるアンチロボットテスト用画像４０の一例を示す。図２７に示すように、目視されるアンチロボットテスト用画像４０は実施例１と同様であるが、このアンチロボットテスト用画像４０は各種の解像度のサブ画像から成っている。
【０１３７】
図２８（ａ）〜（ｈ）は、サブ画像の画像データの一例を示す。また、図２８（ｉ）は被判読情報の分割を模式的に示す図の一例である。図２８（ａ）〜（ｈ）に示すように、サブ画像の解像度は各サブ画像毎に様々である。
【０１３８】
図２８（ａ）のサブ画像は７５ｄｐｉであり、図２８（ｂ）のサブ画像は１００ｄｐｉであり、図２５（ｃ）のサブ画像は１００ｄｐｉであり、図２８（ｄ）のサブ画像は５０ｄｐｉであり、図２８（ｅ）のサブ画像は１００ｄｐｉであり、図２８（ｆ）のサブ画像は１５０ｄｐｉであり、図２８（ｇ）のサブ画像は５０ｄｐｉであり、図２８（ｈ）のサブ画像は１５０ｄｐｉである。
【０１３９】
このように各サブ画像の解像度は様々である。解像度が異なるサブ画像は、ボットが単にこれらを連結しても、元の被判読情報を再現できない。解像度が異なるサブ画像は大きさが一致しないので単純な連結は困難なためである。すなわち、ボットは、サブ画像の解像度を統一してメモリ等の記憶手段上に配置しないと、ＯＣＲ処理が困難になる。
【０１４０】
したがって、ボットが図２８のようなサブ画像から被判読情報を判読するには、少なくとも、解像度を統一する処理が必要であり、被判読情報の判読を実施例２〜５だけを適用したアンチロボットテスト用画像４０よりもさらに困難にすることができる。
【０１４１】
なお、図２８（ａ）〜（ｈ）では、画像の周囲に枠線を描画しているが、これは説明の便宜のために描画しているのであり、実際にはこのような枠線は描画されない。同様に、図２８（ｉ）に描画された格子線も説明のために便宜的に描画しているのであり、実際にはこれは描画されない。
【０１４２】
図２９は、アンチロボットテスト用画像４０の生成手順を示すフローチャート図の一例である。このフローチャート図は図６のステップＳ２１をより詳細に説明したものである。
【０１４３】
まず、テスト情報生成部２１は、送信用テキストデータ２７から被判読情報を決定する（Ｓ１１０）。被判読情報を構成する文字等の数は所定の範囲で予め決まっている。
【０１４４】
テスト情報生成部２１は、被判読情報をラスタライズしてアンチロボットテスト用画像４０を生成する（Ｓ１２０）。アンチロボットテスト用画像４０の解像度は、例えば１５０ｄｐｉ等である。
【０１４５】
テスト情報生成部２１は、アンチロボットテスト用画像４０を、文字の分割位置が文字が占める領域の内部に来るように分割する（Ｓ１３０）。このような分割は、分割数を多くすれば自然に実現することもできる。
【０１４６】
ついで、テスト情報生成部２１は、サブ画像の解像度をサブ画像毎に変更する（Ｓ１７０）。解像度の変更には種々の方法がある。解像度を小さくする場合、テスト情報生成部２１は、縦・横それぞれの方向に所定画素毎に１画素を取り出す、又は、隣接した数個の画素の画素値の平均を解像度の変更後の画素値にすることで、解像度を変更する。また、解像度を大きくする場合、ニアレストネイバー、バイリニア、バイキュービックなどの手法で、テスト情報生成部２１が解像度を変更する。
【０１４７】
なお、ステップＳ１７０の前又は後に、実施例５と同様に背景色と前景色の組み合わせを変更してもよいし、実施例４と同様にカラーモードを変換してもよいし、実施例３と同様にフォーマットを変換してもよい。
【０１４８】
画面表示部３２が解像度の異なるサブ画像をそのまま１つのアンチロボットテスト用画像４０として表示すると、ユーザが人間でも判読が困難なので、画面表示部３２はサブ画像の解像度を統一する。サブ画像の解像度の統一は、解像度を小さく又は大きくすることと同じなので、テスト情報生成部２１が解像度を変更した際の手法を使うことができる。ＨＴＭＬファイルの解釈時には画像データの高さと横幅の記述に応じて、画面における画像データの大きさが自動的に調整されるので、この機能を利用してもよい。
【０１４９】
画面表示部３２は、予め定められた目標の解像度（例えば、テスト情報生成部２１がアンチロボットテスト用画像４０を生成した際の解像度（１５０ｄｐｉ））になるよう、各サブ画像の解像度を変更する。以降の処理は、実施例１と同様なので省略する。
【０１５０】
本実施例においては、サブ画像の解像度が同一ではないので、「ボット」等のコンピュータプログラムがサブ画像から文字列を判別するためには、サブ画像の画像データを全て取得し、各サブ画像の解像度を全て統一して、これらをメモリ等記憶手段上にて空間的に連結した後、文字列の判別を行なう必要がある。
【０１５１】
このように、本実施形態の視覚型アンチロボットテストシステム１００をパスするためには、「ボット」等のコンピュータプログラムには一般的な視覚型アンチロボットテストシステム１００に対して必要とされるよりも複雑なアルゴリズムが必要となり、必然的にこれを実施するためのコストも上昇する。ボットを作成するための技術的な困難さ及びコストがともに上昇するため、「ボット」を用いて迷惑行為を成そうとする者は、より高性能なハードウエアを必要とするか、単位時間あたりの迷惑行為の数を減少せざるを得なくなってしまい、迷惑行為の実施はより現実的ではなくなる。
【実施例７】
【０１５２】
本実施例では、ファイル名をランダム（無作為）に定めたサブ画像から成るアンチロボットテスト用画像４０を用いた視覚型アンチロボットテストシステム１００について説明する。
【０１５３】
図３０は、クライアント１１のディスプレイ２０９に表示されるアンチロボットテスト用画像４０の一例を示す。図３０に示すように、目視されるアンチロボットテスト用画像４０は実施例１と同様であるが、このアンチロボットテスト用画像４０は、データファイルのファイル名がランダムの各サブ画像から成っている。
【０１５４】
図３１（ａ）〜（ｈ）は、サブ画像の画像データの一例を示す。また、図３１（ｉ）は被判読情報の分割を模式的に示す図の一例である。図３１（ａ）〜（ｈ）に示すように、サブ画像のファイル名は各サブ画像間で何ら関連のないものになっている。
【０１５５】
図３１（ａ）のサブ画像のファイル名は「fp2nbAg0q.jpg」であり、図３１（ｂ）のサブ画像のファイル名は「d9dsidf.jpg」であり、図３１（ｃ）のサブ画像のファイル名は「Anspkij.jpg」であり、図３１（ｄ）のファイル名は「qk0s9cSD.jpg」であり、図３１（ｅ）のファイル名は「0disd1jd.jpg」であり、図３１（ｆ）のファイル名は「lk0idhs8lL.jpg」であり、図３１（ｇ）のファイル名は「1-sud9_+f.jpg」であり、図３１（ｈ）のファイル名は「m1023kd.jpg」である。
【０１５６】
このように、各サブ画像のファイル名は、これらサブ画像を連結することにより１個の画像を構成することが安易に推測できないようなっている。元の画像を分割する場合、一般的に、基本名に連番を付与するなど(pic_1.jpg,pic_2.jpg ... 等)の方法が採用されることが多い。このためボットもファイル名を手がかりにサブ画像を連結することが考えらえる。本実施例では、テスト情報生成部２１が、例えばランダムなファイル名をサブ画像に付与するので、ボットがサブ画像を連結することを推測しにくいようになっている。
【０１５７】
したがって、ボットが図３１のようなサブ画像から被判読情報を判読するには、少なくとも、サブ画像が複数存在することを検知し、それらの配置をＨＴＭＬファイルから解読する処理が必要であり、被判読情報の判読を実施例２〜６だけを適用したアンチロボットテスト用画像４０よりもさらに困難にすることができる。
【０１５８】
クライアント１１の画面表示部３２は、サブ画像のファイル名から連結する順番を決定することはないので、ファイル名がランダムか否かに関係なくＨＴＭＬファイルの記述に従いアンチロボットテスト用画像４０を表示できる。
【０１５９】
なお、図３１（ａ）〜（ｈ）では、画像の周囲に枠線を描画しているが、これは説明の便宜のために描画しているのであり、実際にはこのような枠線は描画されない。同様に、図３１（ｉ）に描画された格子線も説明のために便宜的に描画しているのであり、実際にはこれは描画されない。
【０１６０】
図３２は、アンチロボットテスト用画像４０の生成手順を示すフローチャート図の一例である。このフローチャート図は図６のステップＳ２１をより詳細に説明したものである。
【０１６１】
まず、テスト情報生成部２１は、送信用テキストデータ２７から被判読情報を決定する（Ｓ１１０）。被判読情報を構成する文字等の数は所定の範囲で予め決まっている。
【０１６２】
テスト情報生成部２１は、被判読情報をラスタライズしてアンチロボットテスト用画像４０を生成する（Ｓ１２０）。
【０１６３】
テスト情報生成部２１は、アンチロボットテスト用画像４０を、文字の分割位置が文字が占める領域の内部に来るように分割する（Ｓ１３０）。このような分割は、分割数を多くすれば自然に実現することもできる。
【０１６４】
ついで、テスト情報生成部２１は、サブ画像にランダムなファイル名を付与する（Ｓ１８０）。なお、ステップＳ１８０の前に、実施例６と同様に解像度を変更してもよいし、実施例５と同様に背景色と前景色の組み合わせを変更してもよいし、実施例４と同様にカラーモードを変換してもよいし、実施例３と同様にフォーマットを変換してもよい。
【０１６５】
画面表示部３２は、ＨＴＭＬファイルの指示に従い各サブ画像を配置するので、ファイル名がランダムでもサブ画像から１つのアンチロボットテスト用画像４０を表示できる。したがって、人間のユーザは、被判読情報を判読できる。以降の処理は、実施例１と同様なので省略する。
【０１６６】
本実施例においては、サブ画像のファイル名がサブ画像の連結が必要であることを予測させるものでないので、「ボット」等のコンピュータプログラムがサブ画像をメモリ等記憶手段上にて空間的に連結することを困難にできる。
【０１６７】
このように、本実施形態の視覚型アンチロボットテストシステム１００をパスするためには、「ボット」等のコンピュータプログラムには一般的な視覚型アンチロボットテストシステム１００に対して必要とされるよりも複雑なアルゴリズムが必要となり、必然的にこれを実施するためのコストも上昇する。ボットを作成するための技術的な困難さ及びコストがともに上昇するため、「ボット」を用いて迷惑行為を成そうとする者は、より高性能なハードウエアを必要とするか、単位時間あたりの迷惑行為の数を減少せざるを得なくなってしまい、迷惑行為の実施はより現実的ではなくなる。
【実施例８】
【０１６８】
実施例１〜７では、サブ画像の数を８個程度として説明したが、本実施例では、セッション毎にサブ画像の数を可変にした視覚型アンチロボットテストシステム１００について説明する。
【０１６９】
図３３は、クライアント１１のディスプレイ２０９に表示されるアンチロボットテスト用画像４０の一例を示す。図３３に示すように、目視されるアンチロボットテスト用画像４０は実施例１と同様であるが、このアンチロボットテスト用画像４０を構成するサブ画像の数は不定である。
【０１７０】
図３４（ａ）は、アンチロボットテスト用画像４０から２つ分割されたサブ画像の一例を、図３４（ｂ）は４つに分割されたサブ画像の一例をそれぞれ示す。この他、６つに分割してもよいし、１０以上に分割してもよい。また、必ずしも四角形に分割する必要はなく、三角形、六角形、その他の多角形に分割してもよい。また、各サブ画像の角数が異なっていてもよい。
【０１７１】
実施例２〜７にて説明したように、テスト情報生成部２１は文字の分割位置が文字が占める領域の内部に来るように分割する（Ｓ１３０）。本実施例のテスト情報生成部２１は、さらにセッション毎に分割数をランダムに決定する。分割数をあまりに大きくする必要はないので、テスト情報生成部２１は、例えば２０〜３０を上限に分割数を決定する。
【０１７２】
サーバ１２が、セッションをクッキーに添付したセッションＩＤにより管理する場合、サーバ１２は、クライアント１１から解読結果情報が送られると、過去のセッションＩＤを無効にする。これにより、同じクライアント１１から認証要求がサーバ１２にあっても、サーバ１２は新たなセッションを開始できる。したがって、解読結果情報が送られる毎に、分割数を可変にすることができる。
【０１７３】
テスト情報生成部２１は、決定された分割数で、アンチロボットテスト用画像４０の横の長さ（画素数）を割った位置を分割位置に決定する。縦方向の分割数は２又は３程度であり、分割数が変わってもその分割位置は固定されている。
【０１７４】
セッション毎にサブ画像の数が異なれば、「ボット」等のコンピュータプログラムは、セッション毎に異なる分割数のサブ画像の全てを取得し、これらの空間的配置を推測し、メモリ等記憶手段上にて空間的に連結した後、文字列の判別を行なう必要がある。したがって、被判読情報の判読をより困難にすることができる。
【０１７５】
このように、本実施形態の視覚型アンチロボットテストシステム１００をパスするためには、「ボット」等のコンピュータプログラムには一般的な視覚型アンチロボットテストシステム１００に対して必要とされるよりも複雑なアルゴリズムが必要となり、必然的にこれを実施するためのコストも上昇する。ボットを作成するための技術的な困難さ及びコストがともに上昇するため、「ボット」を用いて迷惑行為を成そうとする者は、より高性能なハードウエアを必要とするか、単位時間あたりの迷惑行為の数を減少せざるを得なくなってしまい、迷惑行為の実施はより現実的ではなくなる。
【符号の説明】
【０１７６】
１１    クライアント
１２    サーバ
２１    テスト情報生成部
２２    テスト情報送信部
２３    判読結果情報受信部
２４    一致判定部
２５    認証部
２６    サービス提供部
２７    送信用テキストデータ
３１    テスト情報受信部
３２    画面表示部
３３    判読結果情報受付部
３４    判読結果情報送信部
１００  視覚型アンチロボットテストシステム
【先行技術文献】
【特許文献】
【０１７７】
【特許文献１】特開２００８−２６２５４９号公報
【図１】
2011048497.tif 000003
【図２】
2011048497.tif 000004
【図３】
2011048497.tif 000005
【図５】
2011048497.tif 000006
【図６】
2011048497.tif 000007
【図７】
2011048497.tif 000008
【図８】
2011048497.tif 000009
【図９】
2011048497.tif 000010
【図１０】
2011048497.tif 000011
【図１１】
2011048497.tif 000012
【図１２】
2011048497.tif 000013
【図１３】
2011048497.tif 000014
【図１４】
2011048497.tif 000015
【図１５】
2011048497.tif 000016
【図１６】
2011048497.tif 000017
【図１７】
2011048497.tif 000018
【図１８】
2011048497.tif 000019
【図１９】
2011048497.tif 000020
【図２０】
2011048497.tif 000021
【図２１】
2011048497.tif 000022
【図２２】
2011048497.tif 000023
【図２３】
2011048497.tif 000024
【図２４】
2011048497.tif 000025
【図２５】
2011048497.tif 000026
【図２６】
2011048497.tif 000027
【図２７】
2011048497.tif 000028
【図２８】
2011048497.tif 000029
【図２９】
2011048497.tif 000030
【図３０】
2011048497.tif 000031
【図３１】
2011048497.tif 000032
【図３２】
2011048497.tif 000033
【図３３】
2011048497.tif 000034
【図３４】
2011048497.tif 000035
【図４】
2011048497.tif 000036