(57)【要約】【課題】サービス上において、他のユーザに迷惑行為を働いている可能性があるユーザを特定する。【解決手段】本発明に係るサーバは、サービスを提供するサーバであって、前記サービスを利用するユーザのアカウント情報と、当該ユーザの前記サービス上における友だちとして登録されている複数のユーザを示すフレンドリストとを、ユーザ毎に記憶する記憶部と、第１ユーザの第１フレンドリストに登録されている複数の第１フレンドユーザと、当該第１ユーザのフレンドリストに登録されている第２ユーザの第２フレンドリストに登録されている１以上の第２フレンドユーザとの共通度合を算出する算出部と、互いに異なる複数の前記第２ユーザ各々について算出された共通度合に基づいて、前記第１ユーザが迷惑行為を行っているか否かを判断する判断部と、を備える。【選択図】図１
2017004119.tif 000002
【特許請求の範囲】
【請求項１】
サービスを利用する複数のユーザのアカウント情報と、各ユーザの前記サービス上における友だちとして登録されている複数のユーザを示すフレンドリスト情報とを、ユーザ毎に記憶する記憶部と、
第１ユーザの第１フレンドリスト情報に登録されている複数の第１フレンドユーザと、当該第１ユーザのフレンドリスト情報に登録されている第２ユーザの第２フレンドリスト情報に登録されている１以上の第２フレンドユーザとの共通度合を算出する算出部と、
互いに異なる複数の前記第２ユーザ各々について算出された共通度合に基づいて、前記第１ユーザが迷惑行為を行っているか否かを判断する判断部と、
を備えるサーバ。
【請求項２】
前記サーバは、更に、前記判断部の判断に基づき前記第１ユーザのアカウント情報を提示する提示部を備えることを特徴とする請求項１に記載のサーバ。
【請求項３】
前記記憶部は、さらに、複数のハッシュ関数を記憶しており、
前記判定部は、前記第１フレンドリスト情報及び前記第２フレンドリスト情報双方に対して前記複数のハッシュ関数各々を用いて複数の最小ハッシュ値を算出し、前記複数のハッシュ関数の個数に対して同じハッシュ関数を用いて算出された最小ハッシュ値が同じ値になっている比率を前記共通度合とする
ことを特徴とする請求項１又は２に記載のサーバ。
【請求項４】
前記判断部は、前記複数の第２ユーザの数に対して、当該複数の第２ユーザの第２フレンドリスト情報それぞれを用いて算出された複数の共通度合それぞれが所定の閾値以下となる割合を算出し、当該割合が所定の割合以下となる場合に、前記第１ユーザが迷惑行為を行っていると判断する
ことを特徴とする請求項１から３のいずれか１項に記載のサーバ。
【請求項５】
前記判断部は、前記複数の第２ユーザそれぞれに対して算出された共通度合の平均値が所定の閾値以下となる場合に、前記第１ユーザが迷惑行為を行っていると判断する
ことを特徴とする請求項１から３のいずれか１項に記載のサーバ。
【請求項６】
前記判断部は、前記共通度合の合計値が所定の閾値以下となる場合に、前記第１ユーザが迷惑行為を行っていると判断する
ことを特徴とする請求項１から３のいずれか１項に記載のサーバ。
【請求項７】
前記サーバは、更に、
前記出力部が出力した前記第１ユーザのアカウントに対して、前記サーバが提供するサービスの少なくとも一部の利用を停止する管理部を備えることを特徴とする請求項１記載のサーバ。
【請求項８】
サービスを利用する複数のユーザのアカウント情報と、当該ユーザの前記サービス上における友だちとして登録されている複数のユーザを示すフレンドリスト情報とを、ユーザ毎に記憶部に記憶する記憶ステップと、
第１ユーザの第１フレンドリスト情報に登録されている複数の第１フレンドユーザと、当該第１ユーザのフレンドリスト情報に登録されている第２ユーザの第２フレンドリスト情報に登録されている１以上の第２フレンドユーザとの共通度合を算出する算出ステップと、
互いに異なる複数の前記第２ユーザ各々について算出された共通度合に基づいて、前記第１ユーザが迷惑行為を行っているか否かを判断する判断ステップと、を含むサーバによるユーザ特定方法。
【請求項９】
コンピュータに、
サービスを利用する複数のユーザのアカウント情報と、各ユーザの前記サービス上における友だちとして登録されている複数のユーザを示すフレンドリスト情報とを、ユーザ毎に記憶部に記憶する記憶機能と、
第１ユーザの第１フレンドリスト情報に登録されている複数の第１フレンドユーザと、当該第１ユーザのフレンドリスト情報に登録されている第２ユーザの第２フレンドリスト情報に登録されている１以上の第２フレンドユーザとの共通度合を算出する算出機能と、
互いに異なる複数の前記第２ユーザ各々について算出された共通度合に基づいて、前記第１ユーザが迷惑行為を行っているか否かを判断する判断機能と、を実現させるユーザ特定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のユーザの中から条件に適合するユーザのアカウントを特定するサーバおよびその方法並びにプログラムに関するものである。
【背景技術】
【０００２】
近年、同じシステムあるいはソフトウェアを利用するユーザ同士で、友だち登録を行い、システムあるいはソフトウェア上でのやり取りを容易にするメッセージングサービスを含むものがある。その一方で、そのやり取りの容易さを逆手に、無差別に広告メールを送り付ける者もいる。このような行為は、そのような広告に興味のないユーザにとっては、迷惑行為に該当する。
特許文献１には、そのような迷惑メールを受信拒否する手法が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−３４６６１８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、そのような迷惑行為をしているユーザがいる場合には、サービスを提供している側としても、そのようなユーザを、メッセージの内容を確認せずに特定したいという要望がある。
【０００５】
そこで、本発明においては、上記問題に鑑みて、他のユーザに迷惑行為を働いているユーザを特定できるサーバ及びユーザ特定方法並びにユーザ特定プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明の一態様に係るサーバは、サービスを利用する複数のユーザのアカウント情報と、各ユーザの前記サービス上における友だちとして登録されている複数のユーザを示すフレンドリスト情報とを、ユーザ毎に記憶する記憶部と、第１ユーザの第１フレンドリスト情報に登録されている複数の第１フレンドユーザと、当該第１ユーザのフレンドリスト情報に登録されている第２ユーザの第２フレンドリスト情報に登録されている１以上の第２フレンドユーザとの共通度合を算出する算出部と、互いに異なる複数の前記第２ユーザ各々について算出された共通度合に基づいて、前記第１ユーザが迷惑行為を行っているか否かを判断する判断部と、を備える。
【０００７】
上記課題を解決するために、本発明の一態様に係るサーバが実行するユーザ特定方法は、サービスを利用する複数のユーザのアカウント情報と、各ユーザの前記サービス上における友だちとして登録されている複数のユーザを示すフレンドリスト情報とを、ユーザ毎に記憶部に記憶する記憶ステップと、第１ユーザの第１フレンドリスト情報に登録されている複数の第１フレンドユーザと、当該第１ユーザのフレンドリスト情報に登録されている第２ユーザの第２フレンドリスト情報に登録されている１以上の第２フレンドユーザとの共通度合を算出する算出ステップと、互いに異なる複数の前記第２ユーザ各々について算出された共通度合に基づいて、前記第１ユーザが迷惑行為を行っているか否かを判断する判断ステップと、を含む。
【０００８】
上記課題を解決するために、本発明の一態様に係るユーザ特定プログラムは、コンピュータに、サービスを利用する複数のユーザのアカウント情報と、各ユーザの前記サービス上における友だちとして登録されている複数のユーザを示すフレンドリスト情報とを、ユーザ毎に記憶部に記憶する記憶機能と、第１ユーザの第１フレンドリスト情報に登録されている複数の第１フレンドユーザと、当該第１ユーザのフレンドリスト情報に登録されている第２ユーザの第２フレンドリスト情報に登録されている１以上の第２フレンドユーザとの共通度合を算出する算出機能と、互いに異なる複数の前記第２ユーザ各々について算出された共通度合に基づいて、前記第１ユーザが迷惑行為を行っているか否かを判断する判断機能と、を実現させる。
【発明の効果】
【０００９】
本発明の一態様に係るサーバ及びユーザ特定方法並びにユーザ特定プログラムは、ユーザのフレンドリストと、そのフレンドリストに登録されているユーザのフレンドリストに基づいて、フレンドの共通度合の低いユーザを特定することができる。したがって、ユーザ同士がやり取りしているメッセージの内容を確認することなく、迷惑行為を行っている可能性があるユーザを特定することができる。
【図面の簡単な説明】
【００１０】
【図１】実施の形態に係る通信システムの構成を示すシステム図である。
【図２】実施の形態に係るサーバの機能構成を示すブロック図である。
【図３】（ａ）、（ｂ）は、フレンドリスト情報の一例である。
【図４】サーバによる迷惑行為を行っていると思われるユーザの特定処理を示すフローチャートである。
【発明を実施するための形態】
【００１１】
本発明の一実施態様について、図面を参照しながら説明する。
＜概要＞
図１は、実施の形態に係る通信システムのシステム図である。
【００１２】
図１に示すように、通信システムは、サーバ１００を含み、サーバ１００は、ネットワーク５００を介して、ユーザ端末２００やユーザ端末３００と接続される。ここでは、ユーザ端末２００およびユーザ端末３００は、サーバ１００により提供される同じサービスを享受している。当該サービスは、ユーザ同士を対応付けて、友だちとして登録する機能を含む。なお、図２では２つのユーザ端末しか示していないが、サービスに登録されているユーザは無数に存在するものとする。また、ここでは、ユーザ端末２００とユーザ端末３００とは互いに友だちとして登録されているものとする。
【００１３】
サーバ１００は、他のユーザをフレンドリストに登録しているユーザの中から、そのフレンドリストに登録されているユーザのフレンドリストの共通度合に応じて、多数のユーザにメッセージを送付する等の迷惑行為を行っていると可能性があるユーザを特定する。なお、フレンドリストは、上述の友だちとして登録する機能により、各ユーザが友だちとして登録した他のユーザの識別情報のリストである。
以下、その詳細を説明する。
＜構成＞
図２は、サーバ１００の機能構成を示すブロック図である。
図２に示すように、サーバ１００は、通信部１１０と、記憶部１２０と、制御部１３０とを含んで構成される。
【００１４】
通信部１１０は、制御部１３０からの指示に従って、ネットワーク５００を介して、ユーザ端末２００やユーザ端末３００と通信を実行する機能を有する。当該通信は、有線、無線のいずれで実行されてもよく、また、互いの通信が実行できるのであれば、どのような通信プロトコルを用いてもよい。
通信部１１０は、制御部１３０からの指示に従って、サーバ１００のオペレータが視認可能なモニタや当該オペレータが保持するモニタを有する端末に、迷惑行為を行っている可能性のあるユーザの識別情報を送信する。また、通信部１１０は、サーバ１００のオペレータの有する端末からアカウントを停止すべきユーザの識別情報を受信して制御部１３０に伝達したり、ユーザ端末からのアカウント登録要求やアカウント削除要求を受信して制御部１３０に伝達したりする。
【００１５】
記憶部１２０は、サーバ１００が動作するうえで必要とする各種プログラムおよびデータを記憶する機能を有する。記憶部１２０は、サービスを利用しているユーザのユーザＩＤを含むアカウント情報を記憶している他、それぞれのユーザがサービス内で友だちとして登録した他のユーザを示すフレンドリストを記憶している。フレンドリストの詳細については後述する。記憶部１２０は、典型的には、ＨＤＤ（Hard Disc Drive）、ＳＳＤ（Solid State Drive）、フラッシュメモリなど各種の記録媒体により実現される。
【００１６】
制御部１３０は、サーバ１００の各部を制御する機能を有するプロセッサである。制御部１３０は、サーバ１００が提供するサービスに関する処理を実行するものである。そのサービスの一環として制御部１３０は、他のユーザに迷惑行為を働いていると推定されるユーザを特定し、その特定されたユーザのアカウントを停止する機能を有する。制御部１３０は、当該迷惑ユーザ特定処理をいつ実行してもよく、例えば、一日の決まった時間に実行することとしてもよい。あるいは、サーバ１００が実行すべきその他の機能を実行していないタイミングで実行するとしてもよく、その場合にサーバ１００にとって処理効率がよい。
具体的には、制御部１３０は、判定部１３１と管理部１３４とを含む。
【００１７】
判定部１３１は、迷惑ユーザ特定処理を実行すると、無作為に選出したユーザＡと当該ユーザＡのフレンドリストに登録されている一定数以上（全てであってもよく、ユーザＡのフレンドリストに登録されているフレンドの一定割合以上、例えば７割以上であってもよく、あるいは、予め定められた所定数以上、例えば１００以上であってもよい）のユーザ群とを無作為に選出する。
【００１８】
判定部１３１は、無作為に選出したユーザＡのフレンドリスト３００を記憶部１２０から読み出す。そして、判定部１３１は、当該フレンドリスト３００に登録されている一定数以上のユーザ群に含まれる各ユーザ（以下、ユーザＢという）について、そのユーザＢのフレンドリスト３１０を記憶部１２０から読み出す。
【００１９】
判定部１３１は、ユーザＡのフレンドリスト３００と、ユーザＢのフレンドリスト３１０とを参照し、以下の式（１）を用いて、ユーザＡとユーザＢとの間のフレンドリストの共通度合Ｓを算出する。
【００２０】
【数１】
2017004119.tif 000003
…式（１）
【００２１】
上記式（１）において、ＵＡＢは、ユーザＡとユーザＢ双方のフレンドリストに含まれるユーザの総数を意味し、以下の式（２）を用いて算出する。また、ＵＡは、ユーザＡのフレンドリストに含まれるユーザの総数を意味し、ＵＢは、ユーザＢのフレンドリストに含まれるユーザの総数を意味する。
【００２２】
【数２】
2017004119.tif 000004
…式（２）
【００２３】
上記式（２）において、ｕｉは、ユーザＡのフレンドリストに含まれるｉ番目のユーザを意味する。また、ｕｊは、ユーザＢのフレンドリストに含まれるｊ番目のユーザを意味する。Ｃｍｐは、比較関数であり、Ｃｍｐ（ｕｉ，ｕｊ）は、ｉ番目のユーザとｊ番目のユーザとが一致するときに１を、一致しないときに０を示す関数である。上記式（２）を用いれば、ユーザＡとユーザＢとに共通して登録されているユーザの総数をカウントすることができる。
【００２４】
判定部１３１は、ユーザＡのフレンドリストから抽出した一定数以上のユーザＢ各々について、フレンドリストの共通度合Ｓを算出する。そして、各ユーザＢについて算出した共通度合Ｓそれぞれについて所定の閾値Ｔ（例えば、０〜１の間の値であって、０．３以下）以下であるか否かを判定する。そして、判定部１３１は、所定の閾値Ｔ以下となった共通度合Ｓが所定数または所定割合以上ある場合に、当該ユーザＡを迷惑行為を働いている可能性があるユーザとして特定する。共通度合Ｓが所定の閾値Ｔ以下になるフレンドが所定数または所定割合以上いるということは、共通の友人が少ないことになり、フレンドリストに登録されている多数のユーザとの間の共通度合が低いということは、実際には友だちでない可能性があると推測できる。したがって、判定部１３１は、そのようなユーザＡは、広告メールの配布やいたずら目的のメッセージの送信などの目的のためだけにフレンド登録、電話帳登録または送信先に設定した可能性があり、そのようなユーザＡを、迷惑行為を行っている可能性のあるユーザであると推測する。
判定部１３１は、平均値ＳＡが閾値Ｔ以下になったユーザＡがいた場合に、そのユーザＡの識別情報を提示部１３２に伝達する。
【００２５】
提示部１３２は、伝達されたユーザＡの識別情報を、迷惑行為を行っている可能性があるユーザの情報として、サーバ１００に接続されたモニタあるいはサーバ１００のオペレータの端末に送信して表示させることで提示する。
【００２６】
受付部１３３は、サーバ１００のオペレータからアカウントを停止するユーザの識別情報を受け付ける機能を有する。受付部１３３は、アカウントを停止すべきユーザの識別情報を管理部１３４に伝達する。また、受付部１３３は、ユーザからのアカウント登録要求やアカウント削除要求を受け付けて管理部１３４に伝達する機能も有する。
【００２７】
管理部１３４は、記憶部１２０に記憶されているユーザアカウント情報を管理する機能を有する。管理部１３４は、受付部１３３からアカウントの停止の対象となるアカウント情報を特定する情報としてユーザの識別情報を伝達された場合に、伝達されたユーザのアカウントについて、記憶部１２０に記憶されているアカウント情報において停止フラグを立てる機能を有する。ここで、停止フラグを立てるとは、当該ユーザのアカウントが停止状態にあることを意味し、停止フラグが立っているアカウントについては、サーバ１００は、サービスの提供を実行しないこととする。また、管理部１３４は、受付部１３３から伝達されたアカウント登録要求やアカウント削除要求に応じて、アカウントを追加したり削除したりする機能も有する。
以上が、サーバ１００の機能構成である。
【００２８】
ユーザ端末２００やユーザ端末３００の詳細については、従来の各種通信端末（例えば、スマートフォン、携帯電話、タブレット端末など）が有する機能を有しているものとしてその説明を省略する。
【００２９】
＜データ＞
ここでは、本実施の形態に係るデータについて説明する。
図３は、サーバ１００の記憶部１２０に記憶されているフレンドリストの一例を示すデータ概念図である。ここでは、ユーザＡのサービス上のユーザＩＤが「ＵＩＤ００００１２１」であり、ユーザＢのサービス上のユーザＩＤが「ＵＩＤ００１０２５２」であるとする。
【００３０】
図３（ａ）は、ユーザ端末２００を所持するユーザＡの、サーバ１００が提供するサービスにおけるフレンドリスト３００の一例を示すデータ概念図である。
図３（ｂ）は、ユーザ端末３００を所持するユーザＢの、サーバ１００が提供するサービスにおけるフレンドリスト３１０の一例を示すデータ概念図である。
【００３１】
図３（ａ）、（ｂ）に示すように、フレンドリスト３００（３１０）は、ユーザＩＤ３０１（３１１）と当該ユーザＩＤで示されるユーザが友だち登録した他のユーザのフレンドユーザＩＤ３０２（３１２）が対応付けられた情報であり、サービス上における各ユーザの友人、知人を示す情報である。
ユーザＩＤ３０１（３１１）は、サーバ１００が各ユーザを認識するための識別情報である。
【００３２】
フレンドユーザＩＤ３０２（３１２）は、サーバ１００が提供するサービスにおいてユーザＩＤ３０１で示されるユーザが友だちとして登録したユーザの識別情報である。
【００３３】
図３（ａ）の例では、ユーザＩＤ「ＵＩＤ００００１２１」で示されるユーザは、知人として、ユーザＩＤ「ＵＩＤ００００４３９」、「ＵＩＤ０００５９０２」、「ＵＩＤ００１０２５２」、「ＵＩＤ０２０８１３３」、「ＵＩＤ０２９３４６７」、「ＵＩＳ０３３８８７４」、「ＵＩＤ０３３８８７５」で示されるユーザをフレンドとして登録している。
【００３４】
また、図３（ｂ）の例では、ユーザＩＤ「ＵＩＤ００１０２５２」で示されるユーザは、知人として、ユーザＩＤ「ＵＩＤ００００４３９」、「ＵＩＤ０００５９０２」、「ＵＩＤ００３９９２１」、「ＵＩＤ０２０８１３３」、「ＵＩＤ０２９３４６７」、「ＵＩＳ０３３１７２７」、「ＵＩＤ０３３８６２２」で示されるユーザをフレンドとして登録している。
【００３５】
また、図３（ａ）と図３（ｂ）を比較すればわかるように、ユーザＡとユーザＢとは互いに共通のユーザ、すなわち、ユーザＩＤ「ＵＩＤ００００４３９」、ユーザＩＤ「ＵＩＤ０００５９０２」、ユーザＩＤ「ＵＩＤ０２０８１３３」、ユーザＩＤ「ＵＩＤ０２９３４６７」で示されるユーザを友人、知人として登録しており、ユーザＡは、ユーザＢもフレンドとして登録している。
【００３６】
＜動作＞
図４は、サーバ１００による迷惑行為を働いている可能性のあるユーザを特定するための処理を示すフローチャートである。
図４に示すように、サーバ１００の判定部１３１は、サービスを提供しているサービスの中から無作為にユーザＡを選出する（ステップＳ４０１）。
判定部１３１は、選出したユーザＡのフレンドリストを記憶部１２０から読み出す（ステップＳ４０２）。
【００３７】
次に、判定部１３１は、読み出したユーザＡのフレンドリストに登録されている複数のユーザＢを選出する（ステップＳ４０３）。
そして、判定部１３１は、選出したユーザＢのフレンドリストを記憶部１２０から読み出す（ステップＳ４０４）。
【００３８】
判定部１３１は、読み出したユーザＡのフレンドリストと、ユーザＢのフレンドリストとを参照して、上記式（１）、式（２）を用いて、ユーザＡとユーザＢとのフレンドの共通度合Ｓを算出する（ステップＳ４０５）。
【００３９】
判定部１３１は、各ユーザＢについて算出した共通度合Ｓが所定の閾値Ｔ以下となるか否かを判定し、共通度合Ｓが所定の閾値Ｔ以下となったユーザＢの数が所定数以上いるか否かを判定する（ステップＳ４０６）。
【００４０】
ステップＳ４０６において判定部１３１が共通度合Ｓが所定の閾値以下となったユーザＢの数が所定数以上いると判定した場合には（ステップＳ４０６のＹＥＳ）、判定部１３１は、ユーザＡの識別情報を、迷惑行為を行っている可能性のあるユーザの情報として提示部１３２に伝達する。提示部１３２は、伝達されたユーザＡの識別情報をサーバ１００のオペレータに提示する。オペレータは提示部１３２により提示された識別情報に基づいてユーザＡのアカウントを停止すべきか否かを判断し、アカウントを停止すべきと判断した場合にアカウント停止入力を行う。
【００４１】
サーバ１００の受付部１３３は、サーバ１００のオペレータからアカウント停止の入力を受け付けた場合には（ステップＳ４０７のＹＥＳ）、管理部１３４にその旨を伝達し、管理部１３４は、伝達されたユーザＡのアカウント情報に停止フラグを立てて（ステップＳ４０８）、終了する。これにより当該ユーザＡのアカウントは停止されることになる。
【００４２】
共通度合Ｓが所定の閾値Ｔ以下となるユーザＢが所定数以上いなかった場合や（ステップＳ４０６のＮＯ）、アカウント停止指示を受け付けなかった場合には（ステップ４０７のＮＯ）、ユーザＡは迷惑行為を行っていないものとして、何もせずに処理を終了する。
以上が、サーバ１００による迷惑行為を行っているユーザの特定処理の説明である。
【００４３】
＜まとめ＞
上記実施の形態に示したように、サーバ１００は、登録されているユーザ情報と、そのユーザのフレンドリストの情報だけで、他のユーザに多数のメッセージを無差別に送るなどの迷惑行為を行っている可能性のあるユーザを特定することができる。これによりサーバ側として、ユーザから他のユーザの迷惑行為の報告がなくとも、迷惑行為を行っている可能性のあるユーザを特定し、必要に応じてそのユーザのアカウント情報を停止することができる。
【００４４】
＜変形例＞
上記実施の形態に本発明に係る発明の一実施態様を説明したが、本発明に係る思想がこれに限られないことは言うまでもない。以下、本発明に係る思想として含まれる各種変形例について説明する。
【００４５】
（１）上記実施の形態においては、上記式（１）に基づいて共通度合Ｓを算出する例を示したが、これはその限りではない。共通度合Ｓを算出する手法として、上記式（１）以外の手法を用いてもよく、例えば、式（１）に換えて下記式（３）を用いてもよい。
【００４６】
【数３】
2017004119.tif 000005
…式（３）
【００４７】
また、更には、ユーザ（ユーザＡ）と他のユーザ（ユーザＡのフレンドリストに含まれているユーザＢ）との間のフレンドリストの共通度合Ｓを算出する手法を、上記式（１）に換えて、以下の手法を用いて算出することとしてもよい。
【００４８】
まず、記憶部１２０に、入力されたデータに対して、最小ハッシュ値（完全最小ハッシュ値でもよい）を算出するためのハッシュ関数をｋ（ｋは複数）個記憶する。
【００４９】
判定部１３１は、各ハッシュ関数を用いて、ユーザＡのフレンドリストの最小ハッシュ値を算出する。また、判定部１３１は、各ハッシュ関数を用いて、ユーザＢのフレンドリストの最小ハッシュ値を算出する。そして、判定部１３１は、ユーザＡのフレンドリストとユーザＢのフレンドリストに対して、同じハッシュ関数を用いて算出した最小ハッシュ値が等しくなるハッシュ関数の数ｎを算出する。そして、以下の式（４）を用いて、共通度合Ｓを算出する。
【００５０】
【数４】
2017004119.tif 000006
…式（４）
【００５１】
ハッシュ関数は、入力されたデータ群を一様に異なるハッシュ値にマッピングしていく関数であり、そのフレンドリストの共通度合が高ければ、同じハッシュ関数を使えば、最小ハッシュ値が同じ値となる確率も高くなる。したがって、上記ｎ／ｋは、共通度合Ｓとして十分にその役目を果たすことができる。
さらには、上記ｎ／ｋを用いた、下記式（５）から、共通度合Ｓを算出することとしてもよい。
【００５２】
【数５】
2017004119.tif 000007
…式（５）
【００５３】
上記式（５）において、ｂは、最小ハッシュ値を算出するのに用いたハッシュ関数が何ビットのハッシュ関数であるかのビット数を示す値である。
【００５４】
（２）上記実施の形態においては、ステップＳ４０１において無作為にユーザＡを選出するとしているが、これは、サービスを享受している全ユーザに対して実行してもよいし、一部に対してのみ実行してもよい。
【００５５】
また、フレンドリストとして登録しているフレンドの人数が所定数以上になっているユーザを対象に、当該ユーザが迷惑行為を行っている可能性があるか否かを判定することとしてもよい。これは、広告メールを送付したり、いたずらメッセージを送付したりしたいと考えているユーザは多くのフレンドを登録して、メッセージを送信する可能性が高いためである。
【００５６】
（３）上記実施の形態においては、図４に示す迷惑行為を行っている可能性があるユーザを特定する処理をランダムなタイミングまたは、サーバ１００が他の処理を実行していないタイミングで実行することとしたが、これはその限りではない。
【００５７】
例えば、フレンドリストに登録されているフレンドの人数が所定数以上になったタイミングで行うこととしてもよいし、あるユーザが所定時間内に所定数以上のメッセージを送信したタイミングで当該ユーザをユーザＡとして行うこととしてもよい。また、単純に、あるユーザがメッセージを送受信したタイミングで、当該ユーザをユーザＡとして図４に示す処理を実行することとしてもよい。あるいは、あるユーザが友だち要求を行ったタイミングで行うこととしてもよい。
【００５８】
（４）上記実施の形態においては、共通度合Ｓが所定の閾値Ｔ以下となるユーザＢが所定数以上または、共通度合Ｓが所定の閾値Ｔ以下となるユーザＢの共通度合Ｓを算出した全ユーザＢに対する割合が所定割合以上となる場合に、判定部１３１は、ユーザＡが迷惑行為を働いている可能性があると判定することとしたが、判定の手法はこれに限られるものではない。ユーザＡが他のユーザに対して迷惑行為を働いている可能性があることを推定できる手法であればその他の手法をとってもよい。
【００５９】
例えば、判定部１３１は、各ユーザＢについて、ユーザＡとのフレンドの共通度合Ｓを算出し、その平均値ＳＡを算出する。判定部１３１は、算出した平均値ＳＡが所定の閾値ＴＡ（例えば、０．２）以下となるか否かを判定する。
そして、判定部１３１は、算出した平均値ＳＡが閾値ＴＡ以下の場合に、ユーザＡを迷惑行為を行っている可能性のあるユーザとして特定することとしてもよい。
【００６０】
また、あるいは、判定部１３１は、各ユーザＢについて算出された共通度合Ｓの合計値Ｓｓｕｍを算出し、当該合計値が、所定の閾値Ｔｓｕｍ以下となるか否かを判定する。そして、判定部１３１は、算出した合計値Ｓｓｕｍが所定の閾値Ｔｓｕｍ以下である場合にユーザＡを迷惑行為を行っている可能性のあるユーザとして特定することとしてもよい。
【００６１】
（５）上記実施の形態においては、共通度合Ｓが所定の閾値Ｔ以下となるユーザＢが所定数以上または、共通度合Ｓが所定の閾値Ｔ以下となるユーザＢの共通度合Ｓを算出した全ユーザＢに対する割合が所定割合以上となる場合に、判定部１３１は、ユーザＡが迷惑行為を働いている可能性があると判定することとしたが、更なる詳細な判定を行うこととしてもよい。
【００６２】
例えば、判定部１３１は、上記実施の形態に示すように、共通度合Ｓが所定の閾値Ｔ以下となるユーザＢが所定数以上または所定割合以上いる場合に、ユーザＡを迷惑行為を行っている可能性のあるユーザとして推定した後に、以下の処理を実行してもよい。すなわち、迷惑行為を行っていると推定されたユーザＡについて、そのメッセージの送受信履歴を取得する。
【００６３】
そして、取得したメッセージの送受信履歴に基づいて、宛先からの応答があったメッセージの個数または割合を算出する。そして、判定部１３１は、応答のあったメッセージの個数または割合が所定の閾値以下であった場合に、当該ユーザＡを迷惑行為を行っている可能性のあるユーザとして確定させる。
【００６４】
これは、メッセージを送信して、それに対する返信がない場合には、受け手側が応答の必要がないと判断したためであり、そのようなメッセージには広告メールなどが含まれる可能性が高いためである。
このようにして、迷惑行為を行っているユーザをより高精度に特定することとしてもよい。
【００６５】
（６）上記実施の形態においては、迷惑行為を行っているユーザに対する制裁の手段として、当該ユーザのアカウントを停止することとしているが、アカウントの停止以外の手法をとることとしてもよい。
例えば、迷惑行為を行っているユーザのアカウントを削除したり、当該ユーザにサーバから迷惑行為を中止するよう警告したり、サーバ１００が提供するサーバで他のユーザが迷惑行為を行っているユーザであることが認識できるような表示を行ったりすることとしてもよい。
【００６６】
（７）上記実施の形態においては、サーバ１００のオペレータからの指示により迷惑行為を行っていると推定されたユーザＡのアカウントを停止することとしたが、これは、オペレータの判断を待たずにユーザＡのアカウントを停止こととしてもよい。
【００６７】
すなわち、サーバ１００の判定部１３１がユーザＡを迷惑行為を行っている可能性があるユーザと判定した場合に、ユーザＡの識別情報を管理部１３４に伝達し、管理部１３４は、判定部１３１から伝達されたユーザＡの識別情報に対応するアカウント情報を停止することとしてもよい。
【００６８】
（８）サーバ１００の各機能部は、集積回路（ＩＣ（Integrated Circuit）チップ、ＬＳＩ（Large Scale Integration））等に形成された論理回路（ハードウェア）や専用回路によって実現してもよいし、ＣＰＵ（Central Processing Unit）およびメモリを用いてソフトウェアによって実現してもよい。また、各機能部は、１または複数の集積回路により実現されてよく、複数の機能部の機能を１つの集積回路により実現されることとしてもよい。ＬＳＩは、集積度の違いにより、ＶＬＳＩ、スーパーＬＳＩ、ウルトラＬＳＩなどと呼称されることもある。
【００６９】
サーバ１００の各機能部をソフトウェアにより実現する場合、サーバ１００またはユーザ端末２００やユーザ端末３００は、各機能を実現するソフトウェアであるユーザー特定プログラムの命令を実行するＣＰＵ、上記ユーザー特定プログラムおよび各種データがコンピュータ（またはＣＰＵ）で読み取り可能に記録されたＲＯＭ（Read Only Memory）または記憶装置（これらを「記録媒体」と称する）、上記ユーザー特定プログラムを展開するＲＡＭ（Random Access Memory）などを備えている。そして、コンピュータ（またはＣＰＵ）が上記ユーザー特定プログラムを上記記録媒体から読み取って実行することにより、本発明の目的が達成される。上記記録媒体としては、「一時的でない有形の媒体」、例えば、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、上記ユーザー特定プログラムは、当該ユーザー特定プログラムを伝送可能な任意の伝送媒体（通信ネットワークや放送波等）を介して上記コンピュータに供給されてもよい。本発明は、上記ユーザー特定プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
【００７０】
なお、上記ユーザー特定プログラムは、例えば、ActionScript、JavaScript（登録商標）などのスクリプト言語、Objective-C、Java（登録商標）などのオブジェクト指向プログラミング言語、HTML5などのマークアップ言語などを用いて実装できる。
【００７１】
（９）本発明を諸図面や実施例に基づき説明してきたが、当業者であれば本開示に基づき種々の変形や修正を行うことが容易であることに注意されたい。従って、これらの変形や修正は本発明の範囲に含まれることに留意されたい。例えば、各手段、各ステップ等に含まれる機能等は論理的に矛盾しないように再配置可能であり、複数の手段やステップ等を１つに組み合わせたり、或いは分割したりすることが可能である。
（１０）上記実施の形態および各種変形例に示す構成を適宜組み合わせることとしてもよい。
【００７２】
＜補足＞
ここで、本発明に係るサーバ、ユーザの特定方法及びユーザ特定プログラムについて、その一実施態様と、当該態様により奏する効果を説明する。
【００７３】
（ａ）本発明に係るサーバは、サービスを利用する複数のユーザのアカウント情報と、各ユーザの前記サービス上における友だちとして登録されている複数のユーザを示すフレンドリスト情報とを、ユーザ毎に記憶する記憶部と、第１ユーザの第１フレンドリスト情報に登録されている複数の第１フレンドユーザと、当該第１ユーザのフレンドリスト情報に登録されている第２ユーザの第２フレンドリスト情報に登録されている１以上の第２フレンドユーザとの共通度合を算出する算出部と、互いに異なる複数の前記第２ユーザ各々について算出された共通度合に基づいて、前記第１ユーザが迷惑行為を行っているか否かを判断する判断部と、を備える。
【００７４】
また、本発明に係るサーバが実行するユーザ特定方法は、サービスを利用する複数のユーザのアカウント情報と、各ユーザの前記サービス上における友だちとして登録されている複数のユーザを示すフレンドリスト情報とを、ユーザ毎に記憶部に記憶する記憶ステップと、第１ユーザの第１フレンドリスト情報に登録されている複数の第１フレンドユーザと、当該第１ユーザのフレンドリスト情報に登録されている第２ユーザの第２フレンドリスト情報に登録されている１以上の第２フレンドユーザとの共通度合を算出する算出ステップと、互いに異なる複数の前記第２ユーザ各々について算出された共通度合に基づいて、前記第１ユーザが迷惑行為を行っているか否かを判断する判断ステップと、を含む。
【００７５】
また、本発明に係るユーザ特定プログラムは、コンピュータに、サービスを利用する複数のユーザのアカウント情報と、各ユーザの前記サービス上における友だちとして登録されている複数のユーザを示すフレンドリスト情報とを、ユーザ毎に記憶部に記憶する記憶機能と、第１ユーザの第１フレンドリスト情報に登録されている複数の第１フレンドユーザと、当該第１ユーザのフレンドリスト情報に登録されている第２ユーザの第２フレンドリスト情報に登録されている１以上の第２フレンドユーザとの共通度合を算出する算出機能と、互いに異なる複数の前記第２ユーザ各々について算出された共通度合に基づいて、前記第１ユーザが迷惑行為を行っているか否かを判断する判断機能と、を実現させる。
【００７６】
これにより、ユーザの友だちが登録されているフレンドリストと、そのフレンドリストに登録されているユーザに対応するフレンドリストに基づいて、フレンドの共通度合の低いユーザを特定することができる。したがって、ユーザ同士がやり取りしているメッセージの内容を確認することなく、迷惑メールを送信している可能性があるユーザを特定することができる。
【００７７】
（ｂ）上記（ａ）に係るサーバにおいて、前記サーバは、更に、前記判断部の判断に基づき前記第１ユーザのアカウント情報を提示する提示部を備えることとしてもよい。
これにより、サーバのオペレータは、第１ユーザのアカウントを提示されることで、当該第１ユーザが迷惑行為を行っている可能性のあるユーザとして認識することができる。
【００７８】
（ｃ）上記（ａ）又は（ｂ）に係るサーバにおいて、前記記憶部は、さらに、複数のハッシュ関数を記憶しており、前記判定部は、前記第１フレンドリスト情報及び前記第２フレンドリスト情報双方に対して前記複数のハッシュ関数各々を用いて複数の最小ハッシュ値を算出し、前記複数のハッシュ関数の個数に対して同じハッシュ関数を用いて算出された最小ハッシュ値が同じ値になっている比率を前記共通度合とすることとしてもよい。
【００７９】
これにより、ハッシュ関数を用いて共通度合を算出することになるので、サーバ１００における共通度合の算出における処理を、第１フレンドリストと第２フレンドリストとを網羅的に比較演算するよりも軽減することができる。
【００８０】
（ｄ）上記（ａ）から（ｃ）のいずれかに係るサーバにおいて、前記判断部は、前記複数の第２ユーザの数に対して、当該複数の第２ユーザの第２フレンドリスト情報それぞれを用いて算出された複数の共通度合それぞれが所定の閾値以下となる割合を算出し、当該割合が所定の割合以下となる場合に、前記第１ユーザが迷惑行為を行っていると判断することとしてもよい。
【００８１】
これにより、サーバは、フレンドリストにおける共通度合が低い友だちが多い場合に、そのユーザを迷惑行為を行っている可能性のあるユーザとして特定することができる。
【００８２】
（ｅ）上記（ａ）から（ｃ）のいずれかに係るサーバにおいて、前記判断部は、前記複数の第２ユーザそれぞれに対して算出された共通度合の平均値が所定の閾値以下となる場合に、前記第１ユーザが迷惑行為を行っていると判断する
【００８３】
これにより、サーバは、フレンドリストにおける共通度合が低い友だちが多い場合、すなわち、フレンドリストの共通度合の平均値が低い場合に、そのユーザを迷惑行為を行っている可能性のあるユーザとして特定することができる。
【００８４】
（ｆ）上記（ａ）から（ｃ）のいずれかに係るサーバにおいて、前記判断部は、前記共通度合の合計値が所定の閾値以下となる場合に、前記第１ユーザが迷惑行為を行っていると判断することとしてもよい。
これにより、サーバは、フレンドリストにおけるフレンドとの共通度合の合計値が所定の閾値よりも低い場合に、すなわち、共通のフレンドが少ない場合に、そのユーザを迷惑行為を行っている可能性のあるユーザとして特定することができる。
【００８５】
（ｇ）上記（ａ）〜（ｄ）のいずれかに係るサーバにおいて、前記サーバは、更に、
前記出力部が出力した前記第１ユーザのアカウントに対して、前記サーバが提供するサービスの少なくとも一部の利用を停止する管理部を備えることとしてもよい。
【００８６】
これにより、サーバは、迷惑行為を行っているユーザのアカウントを停止することができ、当該ユーザが以降サーバから提供されるサービスを利用できないようにすることができる。
【符号の説明】
【００８７】
１００  サーバ
１１０  通信部
１２０  記憶部
１３０  制御部
１３１  判定部
１３２  提示部
１３３  受付部
１３４  管理部
２００  ユーザ端末
３００  ユーザ端末
５００  ネットワーク
【図１】
2017004119.tif 000008
【図２】
2017004119.tif 000009
【図３】
2017004119.tif 000010
【図４】
2017004119.tif 000011