(57)【特許請求の範囲】
【請求項１】
ネットワークを介して検索内容である検索条件を含む検索要求信号を複数受信し、該複数の検索要求信号に含まれる検索条件が規則性を有しているか否かを判定し、複数の該検索条件が規則性を有していると判定すると、複数の前記検索要求信号による検索要求が異常であると判定する制御部を有し、
前記制御部は、
複数の前記検索条件について検索対象情報に検索を行う場合、該複数の検索条件に対応する複数の検索結果を求め、該複数の検索結果の情報に対する前記複数の検索条件の規則性の変化を判定に用いて前記検索要求が異常か否かを判定し、
前記検索の実行前に前記検索要求が異常であると判定すると、前記検索を実行せず、前記検索の実行後に前記検索要求が異常であると判定すると、前記検索結果を送信しない、サーバ装置。
【請求項２】
前記制御部は、
複数の前記検索条件の規則性の有無の判定に該検索条件が持つ意味的規則性を用いる請求項１に記載のサーバ装置。
【請求項３】
前記意味的規則性は検索対象情報が持つ属性についての規則性である請求項２に記載のサーバ装置。
【請求項４】
前記制御部は、
複数の前記検索条件の規則性の有無の判定に言語的規則性を用いる請求項１から３のいずれか１項に記載のサーバ装置。
【請求項５】
前記制御部は、
複数の前記検索条件の規則性を判定する際、複数の前記検索要求信号の受信順序にしたがって判定する請求項１から４のいずれか１項記載のサーバ装置。
【請求項６】
前記制御部は、
検索対象情報に対して前記検索条件による検索結果の割合が一定の倍率以上であるという規則性を判定に用いる請求項１から５のいずれか１項に記載のサーバ装置。
【請求項７】
前記制御部は、
前記複数の検索要求信号の受信時刻を記録し、所定の時間内、または、所定の時間帯に受信する検索要求信号に対して規則性を判定する請求項１から６のいずれか１項に記載のサーバ装置。
【請求項８】
前記制御部は、
前記複数の検索要求信号の送信元が同一、または該複数の検索要求信号による検索結果の送信先が同一であると、該複数の検索要求信号を対象として判定を行う請求項１から７のいずれか１項に記載のサーバ装置。
【請求項９】
前記制御部は、
前記検索対象情報に対する前記複数の検索結果の割合であるカバー率の大きさに応じて前記複数の検索条件の規則性の有無を判定する請求項１から８のいずれか１項に記載のサーバ装置。
【請求項１０】
ネットワーク上で検索サービスを提供するサーバ装置に接続される情報処理装置であって、
前記サーバ装置に対する、検索内容である検索条件を含む検索要求信号を複数受信し、該複数の検索要求信号に含まれる検索条件が規則性を有しているか否かを判定し、複数の該検索条件が規則性を有していると判定すると、複数の前記検索要求信号による検索要求が異常であると判定する制御部を有し、
前記サーバ装置が複数の前記検索条件について検索対象情報に検索を行い、該複数の検索条件に対応する複数の検索結果を求めた場合、前記制御部は、該複数の検索結果の情報に対する前記複数の検索条件の規則性の変化を判定に用いて前記検索要求が異常か否かを判定し、
前記制御部は、前記サーバ装置による前記検索の実行前に前記検索要求が異常であると判定すると、前記サーバ装置に前記検索を実行させない処置を行い、前記サーバ装置による前記検索の実行後に前記検索要求が異常であると判定すると、前記サーバ装置に前記検索結果を送信させない処置を行う、情報処理装置。
【請求項１１】
ネットワーク上で検索サービスを提供するサーバ装置の情報処理方法であって、
前記ネットワークを介して検索内容である検索条件を含む検索要求信号を複数受信し、該複数の検索要求信号に含まれる検索条件が規則性を有しているか否かを判定し、
複数の前記検索条件が規則性を有していると判定する場合、複数の前記検索要求信号による検索要求が異常であると判定し、複数の前記検索条件についての検索対象情報に検索を実行せず、複数の前記検索条件が規則性を有していないと判定する場合、前記検索を行って該複数の検索条件に対応する複数の検索結果を求め、該複数の検索結果の情報に対する前記複数の検索条件の規則性の変化を判定に用いて前記検索要求が異常か否かを判定し、該判定の結果、前記検索要求が異常であると判定すると、前記検索結果を送信しない、情報処理方法。
【請求項１２】
複数の前記検索条件の規則性の有無の判定に該検索条件が持つ意味的規則性を用いる請求項１１に記載の情報処理方法。
【請求項１３】
前記意味的規則性は検索対象情報が持つ属性についての規則性である請求項１２に記載の情報処理方法。
【請求項１４】
複数の前記検索条件の規則性の有無の判定に言語的規則性を用いる請求項１１から１３のいずれか１項に記載の情報処理方法。
【請求項１５】
複数の前記検索条件の規則性を判定する際、複数の前記検索要求信号の受信順序にしたがって判定する請求項１１から１４のいずれか１項記載の情報処理方法。
【請求項１６】
検索対象情報に対して前記検索条件による検索結果の割合が一定の倍率以上であるという規則性を判定に用いる請求項１１から１５のいずれか１項に記載の情報処理方法。
【請求項１７】
前記複数の検索要求信号の受信時刻を記録し、所定の時間内、または、所定の時間帯に受信する検索要求信号に対して規則性を判定する請求項１１から１６のいずれか１項に記載の情報処理方法。
【請求項１８】
前記複数の検索要求信号の送信元が同一、または該複数の検索要求信号による検索結果の送信先が同一であると、該複数の検索要求信号を対象として判定を行う請求項１１から１７のいずれか１項に記載の情報処理方法。
【請求項１９】
前記検索対象情報に対する前記複数の検索結果の割合であるカバー率の大きさに応じて前記複数の検索条件の規則性の有無を判定する請求項１１から１８のいずれか１項に記載の情報処理方法。
【請求項２０】
ネットワーク上で検索サービスを提供するコンピュータに、
前記ネットワークを介して検索内容である検索条件を含む検索要求信号を複数受信する手順と、
前記複数の検索要求信号に含まれる検索条件が規則性を有しているか否かを判定する手順と、
複数の前記検索条件が規則性を有していると判定する場合、複数の前記検索要求信号による検索要求が異常であると判定し、複数の前記検索条件についての検索対象情報に検索を実行しない手順を、複数の前記検索条件が規則性を有していないと判定する場合、前記検索を行って該複数の検索条件に対応する複数の検索結果を求め、該複数の検索結果の情報に対する前記複数の検索条件の規則性の変化を判定に用いて前記検索要求が異常か否かを判定し、該判定の結果、前記検索要求が異常であると判定すると、前記検索結果を送信しない手順を、前記コンピュータに実行させるためのプログラム。
【請求項２１】
複数の前記検索条件の規則性の有無の判定に該検索条件が持つ意味的規則性を用いる請求項２０に記載のプログラム。
【請求項２２】
前記意味的規則性は検索対象情報が持つ属性についての規則性である請求項２１に記載のプログラム。
【請求項２３】
複数の前記検索条件の規則性の有無の判定に言語的規則性を用いる請求項２０から２２のいずれか１項に記載のプログラム。
【請求項２４】
複数の前記検索条件の規則性を判定する際、複数の前記検索要求信号の受信順序にしたがって判定する請求項２０から２３のいずれか１項記載のプログラム。
【請求項２５】
検索対象情報に対して前記検索条件による検索結果の割合が一定の倍率以上であるという規則性を判定に用いる請求項２０から２４のいずれか１項に記載のプログラム。
【請求項２６】
前記複数の検索要求信号の受信時刻を記録し、所定の時間内、または、所定の時間帯に受信する検索要求信号に対して規則性を判定する請求項２０から２５のいずれか１項に記載のプログラム。
【請求項２７】
前記複数の検索要求信号の送信元が同一、または該複数の検索要求信号による検索結果の送信先が同一であると、該複数の検索要求信号を対象として判定を行う請求項２０から２６のいずれか１項に記載のプログラム。
【請求項２８】
前記検索対象情報に対する前記複数の検索結果の割合であるカバー率の大きさに応じて前記複数の検索条件の規則性の有無を判定する請求項２０から２７のいずれか１項に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報検索サービスについてのサーバ装置、情報処理装置、情報処理方法、およびその方法をコンピュータに実行させるためのプログラムに関する。
【背景技術】
【０００２】
現在、インターネット上で検索システムまたは検索サービスを利用して、欲しい情報を得ることが、一般的に行われている。検索サービスでは、ユーザが使用する検索技術や検索対象情報の品質が重要である。検索サービスを提供する側は、あらゆるジャンルの情報を収集してデータベースに保存している。また、公開されている情報が古いものから新しいものに変更されると、その変更に伴ってデータベースの情報も更新する。そのため、検索サービスの提供者側では、データ収集のための作業が継続的に行われている。
【０００３】
上記検索サービスに対して、その運用を損なうような不正なアクセスが行われることがある。不正なアクセスには、上記検索サービスを利用して、そのデータベースに保存されている情報を大量に複写して取得することや、一度に大量の検索要求を行うことなどがある。このような利用は、サービスの範囲を越えるものである。不正なアクセスにより、検索システムの品質低下が起こる可能性がある。不正なアクセスを防ぐ手段として、例えば、特許文献１に記載された技術がある。
【０００４】
特許文献１には、特定のホストサーバに大量のアクセスを行うことで、そのホストサーバが提供するサービスの品質を損なうＤＤｏＳ(Distributed Denial of Service)攻撃に対応する防御手段の一例が開示されている。攻撃実行ホストの指示により、踏み台ホストが攻撃対象ホストに対して大量のアクセスを行うＤＤｏＳ攻撃を実施すると、攻撃検出器は、防御側ネットワークの状況を監視してＤＤｏＳ攻撃を検出する。そして、通信制御機器は、攻撃検出器がＤＤｏＳ攻撃を検出すると、防御側ネットワークの管理者の指示により攻撃遮断機に通信制御の指示を出す。踏み台ホストは、通信制御の指示を受け取って通信を制御する。
【特許文献１】特開２００２−１５８６６０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上記検索サービスにおいて、正規に利用するユーザに対してサービスを提供しながら、データベースに保存した検索対象情報の多くまたは全てを複写して取得するような不正なアクセスを防ぐ技術はなかった。
【０００６】
検索対象情報の多くまたは全てを取得されてしまうと、不正に取得した者がそれらのデータを用いて検索サービスを開始することも可能になる。多大な労力をかけてデータ収集を行った検索サービス提供者は、不正にデータ収集を行った者に対してコストの面で不利になり、検索サービスが成り立たなくなってしまうおそれがある。
【０００７】
特許文献１に開示された技術では、単にアクセスの数量によって不正な検索要求を検出するものである。不正な利用か否かをアクセス数で判断しようとすると、少ないアクセス数で効率よくデータを取得されてしまう場合には不正利用を検出できない。
【０００８】
本発明は上述したような技術が有する問題点を解決するためになされたものであり、検索用に保管した情報の全てを複写することを意図したアクセスを防止するサーバ装置、情報処理装置、情報処理方法、およびその方法をコンピュータに実行させるためのプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するための本発明のサーバ装置は、ネットワークを介して検索内容である検索条件を含む検索要求信号を複数受信し、該複数の検索要求信号に含まれる検索条件が規則性を有しているか否かを判定し、複数の該検索条件が規則性を有していると判定すると、複数の前記検索要求信号による検索要求が異常であると判定する制御部を有し、
前記制御部は、
複数の前記検索条件について検索対象情報に検索を行う場合、該複数の検索条件に対応する複数の検索結果を求め、該複数の検索結果の情報に対する前記複数の検索条件の規則性の変化を判定に用いて前記検索要求が異常か否かを判定し、
前記検索の実行前に前記検索要求が異常であると判定すると、前記検索を実行せず、前記検索の実行後に前記検索要求が異常であると判定すると、前記検索結果を送信しない構成である。
【００１０】
また、上記目的を達成するための本発明の情報処理装置は、ネットワーク上で検索サービスを提供するサーバ装置に接続される情報処理装置であって、
前記サーバ装置に対する、検索内容である検索条件を含む検索要求信号を複数受信し、該複数の検索要求信号に含まれる検索条件が規則性を有しているか否かを判定し、複数の該検索条件が規則性を有していると判定すると、複数の前記検索要求信号による検索要求が異常であると判定する制御部を有し、
前記サーバ装置が複数の前記検索条件について検索対象情報に検索を行い、該複数の検索条件に対応する複数の検索結果を求めた場合、前記制御部は、該複数の検索結果の情報に対する前記複数の検索条件の規則性の変化を判定に用いて前記検索要求が異常か否かを判定し、
前記制御部は、前記サーバ装置による前記検索の実行前に前記検索要求が異常であると判定すると、前記サーバ装置に前記検索を実行させない処置を行い、前記サーバ装置による前記検索の実行後に前記検索要求が異常であると判定すると、前記サーバ装置に前記検索結果を送信させない処置を行う構成である。
【００１１】
また、上記目的を達成するための本発明の情報処理方法は、ネットワーク上で検索サービスを提供するサーバ装置の情報処理方法であって、
前記ネットワークを介して検索内容である検索条件を含む検索要求信号を複数受信し、該複数の検索要求信号に含まれる検索条件が規則性を有しているか否かを判定し、
複数の前記検索条件が規則性を有していると判定する場合、複数の前記検索要求信号による検索要求が異常であると判定し、複数の前記検索条件についての検索対象情報に検索を実行せず、複数の前記検索条件が規則性を有していないと判定する場合、前記検索を行って該複数の検索条件に対応する複数の検索結果を求め、該複数の検索結果の情報に対する前記複数の検索条件の規則性の変化を判定に用いて前記検索要求が異常か否かを判定し、該判定の結果、前記検索要求が異常であると判定すると、前記検索結果を送信しないものである。
【００１２】
さらに、上記目的を達成するための本発明のプログラムは、ネットワーク上で検索サービスを提供するコンピュータに、
前記ネットワークを介して検索内容である検索条件を含む検索要求信号を複数受信する手順と、
前記複数の検索要求信号に含まれる検索条件が規則性を有しているか否かを判定する手順と、
複数の前記検索条件が規則性を有していると判定する場合、複数の前記検索要求信号による検索要求が異常であると判定し、複数の前記検索条件についての検索対象情報に検索を実行しない手順を、複数の前記検索条件が規則性を有していないと判定する場合、前記検索を行って該複数の検索条件に対応する複数の検索結果を求め、該複数の検索結果の情報に対する前記複数の検索条件の規則性の変化を判定に用いて前記検索要求が異常か否かを判定し、該判定の結果、前記検索要求が異常であると判定すると、前記検索結果を送信しない手順を、前記コンピュータに実行させるものである。
【発明の効果】
【００１３】
本発明によれば、検索サービス用のサーバ装置に対して検索対象情報を不正に複写しようとすると、その動作を検出することができる。これにより、その対策を講じることで、検索対象情報の不正な複写を防止できる。
【発明を実施するための最良の形態】
【００１４】
（第１の実施形態）
本実施形態のサーバ装置を説明する。
【００１５】
図１は本実施形態のサーバ装置がネットワークに接続された状態を示す図である。サーバ装置１０は検索サービスを提供する検索サーバである。図１に示すように、サーバ装置１０はインターネットなどのネットワーク９０と接続され、ネットワーク９０に接続されるパーソナルコンピュータ（ＰＣ）５０に対して検索サービスを提供する。
【００１６】
サーバ装置１０とＰＣ５０の間で送受信される信号および情報には、送信先と送信元を示す情報が含まれている。送信元や送信先を示す情報として、装置毎に異なる識別子が用いられ、各装置の記憶部に予め保存されている。これは、ＴＣＰ／ＩＰ（Transmission Control Protocol/ Internet Protocol）によるパケット通信で行われている方法と同様であるため、詳細な説明を省略する。
【００１７】
図２は本実施形態のサーバ装置の一構成例を示すブロック図である。図２に示すように、サーバ装置１０は、入出力部３１と、記憶部３２と、制御部３３とを有する。制御部３３は、プログラムにしたがって処理を実行するＣＰＵ（Central Processing Unit）（不図示）と、プログラムを格納するためのメモリ（不図示）とを備えている。
【００１８】
入出力部３１は、ネットワーク９０を介してＰＣ５０から情報を受信する入力手段１２と、ネットワーク９０を介してＰＣ５０に情報を送信する出力手段１６とを有する。入力手段１２はサーバ装置１０の管理者が指示を入力するための操作部を含む。出力手段１６は管理者に情報を通知するための表示部を含む。
【００１９】
記憶部３２は、検索サービスで提供するための情報である検索対象情報が格納された検索対象データベース（ＤＢ）１１を有する。制御部３３は、外部から受信する検索要求信号に含まれる検索条件にしたがって検索対象ＤＢ１１に対して情報を検索する検索手段１５を有する。検索条件とは、検索の際に入力されるキーワードを含む検索内容である。また、検索条件を含む検索要求が検索クエリを意味する。
【００２０】
本実施形態のサーバ装置１０は、外部からの検索要求の異常性を判定するための異常性判定部３５を有している。異常性判定部３５は、記憶部３２に属する検索条件蓄積手段１３と、制御部３３に属する判定手段１４とを有する。検索条件蓄積手段１３には、検索条件が格納される。
【００２１】
判定手段１４は、検索条件蓄積手段１３に格納された検索条件に規則性があるか否かを判定し、その結果に基づいて検索要求が異常であるか否かを判断する。判定基準となる規則性は、検索条件の言語的規則性、意味的規則性、または、検索対象情報が持つ属性などの規則性である。判定手段１４は、検索要求が異常であると判定すると、検索要求に異常があることを管理者に通知するためのアラームを出力手段１６に出力させる。アラームは、警告音をスピーカから出力する方法やメッセージを表示部に出力する方法がある。
【００２２】
上記ＣＰＵ（不図示）がプログラムを実行することで、検索手段１５および判定手段１４がサーバ装置内に仮想的に構成される。
【００２３】
図３はサーバ装置の動作手順を示すフローチャートである。
【００２４】
ＰＣ５０が検索条件を含む検索要求信号をネットワーク９０を介してサーバ装置１０に送信する。サーバ装置１０は、ＰＣ５０から入力手段１２を介して複数の検索要求信号を受信すると、それぞれの検索要求信号の検索条件を検索条件蓄積手段１３に保存する（ステップ１００）。判定手段１４は、検索条件蓄積手段１３に保存された複数の検索条件に規則性があるか否かを判定する（ステップ１０１）。
【００２５】
複数の検索条件に規則性がある場合、ステップ１０２で検索要求が異常であると判断し、アラームを出力手段１６に出力させる（ステップ１０３）。一方、複数の検索条件に規則性がない場合、ステップ１０２で検索要求は正常であると判断する。
【００２６】
以下に、本実施形態のサーバ装置１０による具体的な動作を説明する。説明上、検索要求側は図１に示したＰＣ５０を用いて操作しているものとする。
【実施例１】
【００２７】
本実施例は、検索条件に言語的規則性があるか否かで、検索要求の異常性を判定する場合である。
【００２８】
図４は言語的規則性を用いた判定方法を説明するための図である。
【００２９】
ここでは、日本語の単語が入力されると、対応する英訳の単語を検索して出力する和英辞書機能を提供するサービスを、サーバ装置１０が提供すると考える。通常、このようなサービスでは、例えば、「警官」を検索条件として入力すると「policeman」と出力されることが想定される。ここで、悪意のあるユーザが対象となる辞書データを不正に取得しようと考え、五十音順に「あ」から始まる単語「愛」、「藍」、「合鍵」、・・・、「い」から始まる単語「胃」、「意」、「威圧」、・・・などを検索条件として順に入力したとする。
【００３０】
サーバ装置１０に入力された検索条件の情報は、検索条件蓄積手段１３に蓄積され、蓄積された検索条件に対して、判定手段１４は、言語的規則性を元に判定を行う。検索対象が和英辞書であることから、言語的規則性として日本語五十音順とその連続性を用いたとすると、蓄積された検索条件が「愛」、「藍」、「合鍵」、・・・、「胃」、「意」、「威圧」・・・など五十音順であり、かつ、連続性が高いことから、判定手段１４は、この検索要求が異常であると判定し、出力手段１６にアラームを出力する。
【００３１】
本実施例では、複数の検索条件の言語的規則性の有無を判定することで、検索対象情報が大量に複写されることを防ぐことができる。本実施例のような処理を行わないと、辞書データの多くあるいは全てが悪意のあるユーザに取得されてしまい、サービスそのものが模倣されてしまうなどの危険がある。
【００３２】
上述の例においては、検索要求信号による検索条件が信号の受信順にしたがって五十音順に並んでいることを想定していた。例えば、「愛」、「胃」、「合鍵」、「威圧」などその順序が五十音順でなくても、一定時間内に行われた検索条件が結果的に、その規則性を満たす場合には、異常であると判定してもよい。
【００３３】
さらに、検索条件が五十音の全てをカバーしている必要はない。元になる検索対象情報全体に対して検索条件による検索結果の割合であるカバー率が一定の倍率以上になっている場合、異常であると判定してもよい。また、複数の検索条件によるカバー率が予め決められた閾値以上であることが確認できればその時点で異常であると判定してもよい。このように、閾値を設定することで判定性能の調整が可能となる。
【実施例２】
【００３４】
実施例１では、日本語の五十音順を規則性として用いたが、意味的規則性を用いてもよい。ここでは、意味的規則性のうち、検索対象情報の性質（属性）によって異なる規則性を用いる場合で説明する。以下に、その場合の具体例を説明する。
【００３５】
駅名が入力されると、その駅についての時刻表を検索するサービスを提供する場合を考える。このサービスの場合、判定手段１４は、各路線について路線の一方の端の駅から他方の端の駅の間で連続する複数の駅名が順に入力される場合に規則性があると判断する。そして、１つの路線について駅名が順番に入力され、検索要求が行われると、判定手段１４は、検索条件に規則性があると判定し、その検索要求が異常であると判断する。
【００３６】
また、日時が入力されると、その日時のＴＶ番組を検索するサービスを提供する場合を考える。このサービスの場合、判定手段１４は、日または時刻について一定間隔の変化があると規則性があると判断する。そして、日付または時刻が一定間隔で順に入力され、検索要求が行われると、判定手段１４は、検索条件に規則性があると判定し、その検索要求が異常であると判断する。
【００３７】
また、日付が入力されると、その日の占いを検索するサービスを提供する場合を考える。このサービスの場合、判定手段１４は、日付に対する一定間隔の変化があると規則性があると判断する。そして、日付順に検索要求が行われると、判定手段１４は、検索条件に規則性があると判定し、その検索要求が異常であると判断する。
【実施例３】
【００３８】
本実施例は、検索条件に意味的規則性があるか否かで、検索要求の異常性を判定する場合である。
【００３９】
図５は意味的規則性を用いた判定方法を説明するための図である。
【００４０】
ここでは、日本語の語句・文が入力されると、対訳の英文を検索して出力する例文翻訳機能を提供するサービスを、サーバ装置１０が提供すると考える。正常な検索条件の例として、「駅はどこですか？」という日本語文の入力に対して「Where is the station?」という英文が出力される。ここで、悪意のあるユーザが、例えば、「私の席はどこですか？」、「あなたの席はどこですか？」、「彼の席はどこですか？」といった日本語文を検索条件として入力手段１２にＰＣ５０を介して順に入力したとする。
【００４１】
入力された検索条件の情報は、検索条件蓄積手段１３に蓄積され、蓄積された検索条件に対して、判定手段１４は、意味的規則性を元に判定を行う。検索対象が日英対訳文であることから、意味的規則性として日本語文の構文解析情報を用いたとすると、蓄積された検索条件の主語のみが「私」→「あなた」→「彼」と変化している。検索条件間の違いが小さいことから、判定手段１４は、これらの検索条件から検索要求が異常であると判定し、出力手段１６にアラームを出力させる。
【００４２】
本実施例では構文解析の情報を用いるとしたが、単純に形態素解析結果を単語レベルで音声認識技術のＤＰ（Dynamic Programming）マッチングを応用し、その距離の変化を用いて規則性としてもよい。すなわち、複数の検索条件間のＤＰマッチング距離が、予め決められた閾値以下である場合には、その検索要求が異常であると判定すればよい。
【００４３】
本実施例によれば、複数の検索条件の意味的規則性の有無を判定することで、検索対象情報が大量に複写されることを防ぐことができる。本実施例のような処理を行わないと、例文検索のデータの多くもしくは全て、または例文から把握可能なアルゴリズムが悪意のあるユーザに取得されてしまい、サービスそのものが模倣されてしまうなどの危険がある。
【００４４】
なお、本実施形態において、悪意で検索対象情報を大量に取得しようとする者は、短時間に連続してＰＣ５０に検索要求信号を送出させることが考えられる。そのため、判定手段１４が、検索要求信号の受信時刻を記録し、一定時間内に受信する複数の検索要求信号に含まれる検索条件に対して、上述の判定を行うようにしてもよい。監視時間となる一定時間とは、３０分や１時間などの単位である。監視する時間を予め設定し、検索条件蓄積手段１３に格納しておく。この場合、連続して検索要求を行って大量の情報を収集しようとする行為を検出することが可能となる。
【００４５】
また、サーバ装置１０の管理者が不在の夜間などに、悪意で検索対象情報を大量に複写される場合も考えられる。そのため、判定手段１４は、検索要求信号の受信時刻を記録し、予め決められた時間帯に受信する複数の検索要求信号に含まれる検索条件に対して、上述の判定を行うようにしてもよい。
【００４６】
また、検索要求信号には、その信号の送信先を示す情報だけでなく、送信元を示す情報が含まれている。そのため、判定手段１４は、受信する検索要求信号の送信元を調べ、送信元が同じ検索要求信号の検索条件に対して、上述の判定を行うようにしてもよい。また、検索結果の送信先が、悪意で検索対象情報を大量に取得しようとする者のＰＣである場合も考えられる。判定手段１４は、複数の検索結果にそれぞれに添付される送信先が同じである場合、その検索結果に対応する検索条件に対して、上述の判定を行うようにしてもよい。この場合、１つの情報処理装置に大量の検索対象情報を収集しようとする行為を検出することが可能となる。
【００４７】
さらに、判定手段１４は、検索要求が異常と判定した場合に出力手段１６を介してアラームを出力するとしたが、異常と判定した場合、検索手段１５の処理をさせなくてもよい。また、検索要求信号からその信号の送信元を特定することが可能なので、判定手段１４は、その送信元が悪意を持って検索対象情報を収集する者の情報処理装置と判断し、その装置への検索結果の送信を停止してもよい。
【００４８】
本実施形態では、サーバ装置内に異常性判定部３５を設けたが、異常性判定部３５の機能を備えた情報処理装置をサーバ装置に接続してもよい。
【００４９】
図６は情報処理装置とサーバ装置との接続例を示す図であり、図７は情報処理装置およびサーバ装置の構成例を示す図である。図６に示すように、サーバ装置６０の入出力信号線に情報処理装置６５が接続されている。情報処理装置６５は、サーバ装置６０に入力される検索要求信号を監視する。図７に示すように、情報処理装置６５は、上述した検索条件蓄積手段１３および判定手段１４を有している。サーバ装置６０は、入力手段１２、出力手段１６、検索対象ＤＢ１１および検索手段１５を有している。情報処理装置６５の動作は上記異常性判定部３５と同様であるため、ここでは、その詳細な説明を省略する。
【００５０】
なお、情報処理装置６５がサーバ装置６０への入力情報を監視可能であれば、図６に示す接続方法に限らず、他の接続方法であってもよい。
（第２の実施形態）
本実施形態は、検索要求が異常か否かの判定を検索条件と検索結果の両方で行うものである。
【００５１】
図８は本実施形態のサーバ装置の一構成例を示すブロック図である。第１の実施形態と同様な構成については同一の符号を付し、その詳細な説明を省略する。
【００５２】
図８に示すように、サーバ装置８０は、入出力部８１と、記憶部８２と、制御部８３とを有する。本実施形態の記憶部８２には、検索条件蓄積手段１３の他に検索結果蓄積手段１７が設けられている。異常性判定部８５は、検索条件蓄積手段１３と、検索結果蓄積手段１７と、判定手段８４とを有する。
【００５３】
判定手段８４は、検索条件蓄積手段１３に格納された検索条件の規則性から検索要求が異常であるか否かを判定し、また、検索結果蓄積手段１７の検索結果に対する検索条件の規則性が変化したか否かで、検索要求が異常であるか否かを判定する。いずれかの判定で検索要求が異常であると判断すると、検索要求に異常があることを管理者に通知するためのアラームを出力手段１６に出力させる。アラームは、警告音をスピーカから出力する方法やメッセージを表示部に出力する方法がある。規則性による判定方法は、第１の実施形態と同様であり、その詳細な説明を省略する。
【００５４】
本実施形態のサーバ装置８０の動作手順を具体例で説明する。
【００５５】
図９は本実施形態のサーバ装置の動作手順を説明するための図である。
【００５６】
ここでは、地名や住所が入力されると、地図データを検索して出力するサービスを、サーバ装置８０が提供する場合を考える。検索対象ＤＢ１１には、例えば、神奈川県の道路地図の情報が格納されているとする。この場合、検索対象情報が地図データとなる。通常、このようなサービスでは、例えば、「川崎市中原区」と入力すると川崎市の中原区役所を中心とした所定の面積の地図データを出力することが想定される。ここで、悪意のあるユーザが、大量に地図データを不正に取得しようと考え、例えば、検索条件として「横浜市鶴見区」、「横浜市港北区」、・・・などを順にサーバ装置８０にＰＣ５０を介して入力したものとする。
【００５７】
入力された検索条件が検索条件蓄積手段１３に蓄積されると、判定手段８４は、第１の実施形態と同様に、複数の検索条件に規則性があるか否かの判定を行う。ここでは、検索条件からは異常と判定されなかったとする。続いて、検索手段１５による検索結果が、検索結果蓄積手段１７に蓄積される。判定手段８４は、検索結果を参照し、検索結果に対応する検索条件の規則性に変化があるか否かの判定を行う。
【００５８】
ここでは、対象の地図情報の縮尺の関係で、「横浜市鶴見区」に対する検索結果と「横浜市港北区」に対する検索結果のオーバーラップが大きく、横浜市全域をカバーしてしまう。このような場合、悪意でデータを取得する者がその検索結果を見ながら、次は「川崎市」、「厚木市」などと規則性を変化させることが考えられる。
【００５９】
このため、判定手段８４では、検索対象情報ＤＢ１１において、検索結果の情報の類似性が高い場合に、蓄積された検索条件の規則性が「神奈川県横浜市の区」から「神奈川県の市」に変化したことから、その検索要求が異常であると判断し、出力手段１６にアラームを出力する。
【００６０】
また、神奈川県の地図データに対して検索結果の地図データの割合のカバー率が予め決められた閾値以上であるか否かで、検索要求が異常であるか否かを判定してもよい。
【００６１】
本実施例では、蓄積された検索結果の類似性が高い場合に、検索条件の規則性の変化により判定を行うとしたが、逆に蓄積された検索結果のデータベースに対するスパースネス（粗さ）が高い場合に検索要求の規則性がより詳細なレベルに変化することを規則性の変化として、判定を行ってもよい。
【００６２】
本実施形態によれば、検索条件と検索結果の２段階で判定することで、検索対象情報が大量に複写されることを防ぐことができる。本実施例のような処理を行わないと、地図データの多くまたは全てが悪意のあるユーザに取得されてしまい、サービスそのものが模倣されてしまうなどの危険がある。
【００６３】
本実施形態においては、検索条件と検索結果の両方について判定を行い、どちらか一方が異常を判定すれば、アラームを出力するとしたが、いずれの判定結果を優先するかを予め決め、プログラムに記述しておいてもよい。
【００６４】
本発明によれば、検索サービス用のサーバ装置に対して検索対象情報を不正に複写しようとすると、その動作を検出することができる。これにより、サーバ管理者にアラームを通知したり、検索処理を行わなかったり、検索要求元に検索結果を送らないなどの処置を行うことで、検索対象情報の不正な複写を防止することができる。
【００６５】
なお、本実施形態についても、第１の実施形態の図６および図７で説明した構成と同様に、異常性判定部の機能をサーバ装置とは別に設けてもよい。
【００６６】
また、第１の実施形態と同様に、判定手段８４は、検索要求が異常と判定した場合、検索手段１５の処理をさせなくてもよい。また、検索要求信号からその信号の送信元を特定することが可能なので、判定手段１４は、その送信元が悪意を持って検索対象情報を収集する者の情報処理装置と判断し、その装置への検索結果の送信を停止してもよい。
【００６７】
また、第１および第２の実施形態で説明した種々の判定方法を複数組み合わせてもよい。複数の判定方法を組み合わせる場合、判定結果が異なるとどのように判断するかを予めプログラムに記述しておく。過去の判定結果の成績から判定方法に優先順位を予め決めてもよく、検索対象情報の属性によって判定方法に優先順位を設けてもよい。
【産業上の利用可能性】
【００６８】
本発明は、コンテンツが格納されたデータベースを備え、インターネット等を利用してそのデータベースに格納された情報を検索するサービスに適用できる。
【図面の簡単な説明】
【００６９】
【図１】第１の実施形態のサーバ装置がネットワークに接続された状態を示す図である。
【図２】第１の実施形態のサーバ装置の一構成例を示すブロック図である。
【図３】第１の実施形態のサーバ装置の動作手順を示すフローチャートである。
【図４】言語的規則性を用いた判定方法を説明するための図である。
【図５】意味的規則性を用いた判定方法を説明するための図である。
【図６】第１の実施形態における別の構成例を示す図である。
【図７】図６に示す情報処理装置およびサーバ装置の構成例を示す図である。
【図８】第２の実施形態のサーバ装置の一構成例を示すブロック図である。
【図９】第２の実施形態のサーバ装置の動作手順を説明するための図である。
【符号の説明】
【００７０】
１０、６０    サーバ装置
３２    記憶部
３３    制御部
６５    情報処理装置
【図１】
0005233250.tif 000002
【図２】
0005233250.tif 000003
【図３】
0005233250.tif 000004
【図４】
0005233250.tif 000005
【図５】
0005233250.tif 000006
【図６】
0005233250.tif 000007
【図７】
0005233250.tif 000008
【図８】
0005233250.tif 000009
【図９】
0005233250.tif 000010