(57)【要約】多信号分析によって、オンライン・サービス内において不正アクセスされたデバイスおよびユーザー・アカウントを検出することによって、偽陽性を減らし、こうして、コンピューティング・リソースおよび人のアナリスト・リソースの割り当てを高精度化することが可能になる。デバイス、アカウント、またはプロセスに関する、個々の分析範囲を指定し、ある時間期間にわたる複数の挙動を分析して、永続的な（そしてゆっくりと行動する）脅威、および暴力的（そして速く行動する）脅威を検出する。不正アクセスされた疑いのある、個々に影響を受けた範囲に対して、アナリストに警告し、アナリストは、それに応じて、不正アクセスされた範囲に取り組むことができる。【選択図】図１
2020509478.tif 000002
【特許請求の範囲】
【請求項１】
オンライン・サービスにおいて不正アクセスされた範囲を検出する方法であって、
前記オンライン・サービス内にあるデバイスにおいて生じた挙動の検出結果を受けるステップと、
前記関連する挙動が前記オンライン・サービス内においてどれ位異常であるかに基づいて、前記検出結果を採点するステップと、
範囲にしたがって、前記採点した検出結果を編成するステップと、
前記所与の範囲が不正アクセスされたか否かを示す信頼度得点を生成するために、多信号検出ロジックを前記所与の範囲に適用するステップと、
前記信頼度得点と警告閾値との比較に基づいて、前記所与の範囲が不正アクセスされているという警告を提示するか否か判定するステップと、
前記所与の範囲が不正アクセスされているという前記警告を提示すべきであるという判定に応答して、前記警告を生成し送信するステップと、
を含む、方法。
【請求項２】
請求項１記載の方法において、前記所与の範囲が、前記オンライン・サービス内における所与のデバイスまたは所与のユーザー・アカウントと関連付けられる、方法。
【請求項３】
請求項１記載の方法において、前記検出結果を採点するステップが、更に、
所与の検出結果に対して識別子を計算するステップと、
前記所与の検出結果に対する集計カウントを引き出すステップと、
前記所与の検出結果に対する集計母集団カウントを増分するステップと、
前記集計母集団カウントに基づいて、前記所与の検出結果に対して異常得点を計算するステップと、
前記異常得点を前記所与の検出結果と関連付け、採点された検出結果を生成するステップと、
を含む、方法。
【請求項４】
請求項３記載の方法において、前記集計母集団カウントが、
被観察検出結果毎に増分される生母集団カウントと、
検出結果の部分母集団を定める特性を含む被観察検出結果毎に増分される、少なくとも１つの部分母集団カウントと、
を含む、方法。
【請求項５】
請求項１記載の方法において、前記範囲にしたがって前記採点された検出結果を編成するステップが、更に、
前記検出結果を分割するために使用する特性を識別する範囲定義を受けるステップと、
前記検出結果を分析すべき、現時点からの時間ウィンドウを受けるステップと、
前記検出結果に含まれる、前記識別した特性の値にしたがって、前記時間ウィンドウ内で観察された検出結果を、前記範囲に分割するステップと、
を含む、方法。
【請求項６】
請求項１記載の方法において、数分の検出結果を含む、より小さい時間ウィンドウからの検出結果と、数日の結果を含む、より大きい時間ウィンドウからの検出結果が、前記範囲に含まれる、方法。
【請求項７】
請求項１記載の方法において、前記信頼度得点を生成するために前記多信号検出ロジックを前記所与の範囲に適用するステップが、更に、
予測モデルを選択するステップと、
前記検出結果から特性を抽出するステップと、
数値化特徴への変換のために、前記特性を採点するステップと、
前記信頼度得点を生成するために、前記特徴を前記予測モデルに供給するステップと、
を含む、方法。
【請求項８】
請求項７記載の方法において、前記予測モデルが、連続機械学習プロセスに基づいて生成および選択される、方法。
【請求項９】
プロセッサーと、命令を格納するメモリー記憶デバイスとを含むシステムであって、前記命令が前記プロセッサーによって実行されると、オンライン・サービスにおいて不正アクセスされた範囲を検出する方法を提供し、前記システムが、
署名異常スコアラーであって、
前記オンライン・サービスにおいて発生したことが観察されたイベントの所与の検出結果を受け、
前記所与の検出結果に関連する挙動が、前記オンライン・サービスにおいて発生したことが以前に観察された程度を判定し、
前記挙動が以前に観察された前記程度に基づいて、前記所与の検出結果と関連付けられる異常得点を生成する、
ように構成される、署名異常スコアラーと、
前記署名異常スコアラーと通信可能な多信号検出器であって、
前記オンライン・サービスにおいて前記所与の検出結果と範囲を共有する１つ以上の検出結果を受け、
前記署名異常スコアラーから、前記検出結果に関連する前記異常得点を受け、
前記範囲の検出結果から特徴を抽出し、前記特徴が前記異常得点を含み、
前記抽出した特徴に基づいて、前記範囲が不正アクセスされたか否かについての信頼度得点を生成する、
ように構成される、多信号検出器と、
を含む、システム。
【請求項１０】
請求項９記載のシステムにおいて、前記オンライン・サービスにおいて前記所与の検出結果と前記範囲を共有する前記１つ以上の検出結果が、時間ウィンドウ内で観察される、システム。
【請求項１１】
請求項１０記載のシステムにおいて、前記所与の検出結果に関連する挙動が、前記オンライン・サービスにおいて発生したことが以前に観察された前記程度が、前記時間ウィンドウ中における発生に基づく、システム。
【請求項１２】
請求項９記載のシステムにおいて、前記所与の検出結果に関連する挙動が、前記オンライン・サービスにおいて発生したことが以前に観察された前記程度が、
前記オンライン・サービスにおいて発生したイベントの生母集団カウントと、
前記オンライン・サービスにおける前記挙動の発生回数の生部分母集団カウントと、
に基づく、システム。
【請求項１３】
請求項９記載のシステムにおいて、前記所与の検出結果に関連する挙動が、前記オンライン・サービスにおいて発生したことが以前に観察された前記程度が、
前記オンライン・サービスの範囲を構成するエンティティの数である範囲母集団カウントと、
前記範囲において、前記挙動に関連するエンティティの数である分類部分母集団カウントと、
に基づく、システム。
【請求項１４】
請求項１３記載のシステムにおいて、前記範囲を構成する前記エンティティが、アナリストによって、前記オンライン・サービス内にあるデバイス、または前記オンライン・サービスのユーザー・アカウントの内の１つとして定められる、システム。
【請求項１５】
オンライン・サービスにおいて不正アクセスされた範囲を検出するためのプロセッサー実行可能命令を含むコンピューター読み取り可能記憶デバイスであって、
前記オンライン・サービス内にあるデバイスにおいて生じた挙動の検出結果を受け、
前記関連する挙動が前記オンライン・サービス内においてどれ位異常であるかに基づいて、前記検出結果を採点し、
範囲にしたがって、前記採点した検出結果を編成し、所与の範囲が前記オンライン・サービス内にある所与のデバイスまたは所与のユーザー・アカウントと関連付けられ、
前記所与の範囲が不正アクセスされたか否かを示す信頼度得点を生成するために、多信号検出ロジックを前記所与の範囲に適用し、
前記信頼度得点と警告閾値との比較に基づいて、前記所与の範囲が不正アクセスされているという警告をアナリストに提示するか否か判定し、
前記警告を、前記所与の範囲が不正アクセスされているという前記警告を、アナリストに提示すべきであるという判定に応答して、警告を生成し送信する、
コンピューター読み取り可能記憶デバイス。
【発明の詳細な説明】
【背景技術】
【０００１】
[0001]  オンライン・サービスは、悪意のある当事者からの危険に常に晒されている。悪意のある当事者は、これらのオンライン・サービス内において、デバイスの機能を破壊するため、またはこれらのサービス内に格納されている機密データーに不正アクセスするために、これらのデバイスに不正アクセスしようとする。不正アクセスされたデバイスは、データーを外部デバイスに密かに抽出させる(exfiltrate)おそれがあり、または、例えば、ボットネットの一部としてというように、悪意のある当事者による種々の行為を実行するように命令されるおそれがある。オンライン・サービス内において不正アクセスされた個々のホストを識別することは、多大なリソースおよび時間を必要とする処理となる可能性があり、オンライン・サービス内に対策がデプロイされているにも拘わらず、長時間にわたって悪意のある当事者に１つ以上のデバイスを制御させる可能性がある。現在のセキュリティ情報およびイベント管理（ＳＩＥＭ：Security Information and Event Management）システムは、一部の不正アクセスされたデバイスを見逃すおそれがあり、または安全性が確保されているデバイスを、不正アクセスされたと誤って識別するおそれがあり、このために、悪意のある当事者が制御し続ける時間量が長くなり、オンライン・サービスの安全性を再び確保するために必要とされる処理リソースが増大する。
【発明の概要】
【０００２】
[0002]  この摘要は、詳細な説明において以下で更に説明する概念から選択したものを、簡略化した形態で紹介するために設けられている。この摘要は、特許請求する主題の全ての主要な特徴や必須の特徴を特定することを意図するのではなく、特許請求する主題の範囲を判定するときに補助として使用されることを意図するのでもない。
【０００３】
[0003]  本明細書では、不正アクセスされたホスト・マシンを検出するためのシステム、方法、およびプロセッサー実行可能命令を具体化したコンピューター読み取り可能記憶デバイスを提供する。信号異常アナライザーがセキュリティ信号を受信して、安全が確保されているオンライン・サービスにおける所与のアクションについて異常性のレベルを判定する。大規模なオンライン・サービスにおいて、複数のグループのデバイスは、適正に動作するときには、同一に振る舞うと予想されるので、したがって、広く行き渡らない挙動程、より大きな疑いを持って扱われる。デバイスまたは細分挙動(sub-behavior)の種々の母集団にしたがって、検出結果の得点を集計し、異常性得点を多信号アナライザーに渡す。多信号アナライザーは、ローリング・タイム・ウィンドウ(rolling windows of time)にわたって検出結果を収集し、分析用デバイスに基づいて、これらを種々の範囲(scope)に分割して、所与のデバイスが不正アクセスされているという警告を出すべきか否か判定する。
【０００４】
[0004]  時間枠を設定した範囲分析(windowed analysis of scopes)を使用することによって、本開示は、動きが遅い知能型の持続的な脅威、およびオンライン・サービスに対する集中的な動きが速い攻撃を検出するときのコンピューター集中問題に、高い信頼性で対処する。コンピューターにホストされたデーターのセキュリティは、これによって高められ、オンライン・サービスの処理リソースは、情報漏洩の疑いに対してアナリスト・ユーザーの注意を一層効果的に割り当てることに加えて、悪意のある当事者の代理で実行されるプロセスではなく、正規のプロセスに一層効率的に割り当てられる。
【０００５】
[0005]  例は、コンピューター・プロセス、コンピューティング・システムとして、あるいはデバイス、コンピューター・プログラム製品、またはコンピューター読み取り可能媒体のような製品として実現される。一形態によれば、コンピューター・プログラム製品は、コンピューター・システムによる読み取りが可能であり、コンピューター・プロセスを実行するための命令を含むコンピューター・プログラムをエンコードしたコンピューター記憶媒体である。
【０００６】
[0006]  １つ以上の形態の詳細について、添付図面に明示し、以下で説明する。他の特徴および利点は、以下の詳細な説明を読み、関連図面を検討することによって明らかになるであろう。尚、以下の詳細な説明は例示に過ぎず、特許請求の範囲を限定するのではないことは理解されなければならない。
【図面の簡単な説明】
【０００７】
[0007]  本開示に組み込まれその一部をなす添付図面は、種々の形態を示す。図面において、
【図１】本開示を実施することができる環境例を示す。
【図２】署名異常スコアラー(signature anomaly scorer)の詳細を示す。
【図３】多信号分析のための時間枠設定(windowing)および分類(scoping)イベントのブロック図である。
【図４】多信号検出器の詳細を示す。
【図５】オンライン・サービスにおいて不正アクセスされたホスト範囲(host scope)を検出するための方法例に含まれる概略的な段階を示すフロー・チャートである。
【図６】異常性に基づいて検出結果を採点するための方法例に含まれる概略的な段階を示すフロー・チャートである。
【図７】不正アクセスされた範囲の多信号検出のための方法例に含まれる概略的な段階を示すフロー・チャートである。
【図８】コンピューティング・デバイスの物理コンポーネント例を示すブロック図である。
【図９Ａ】移動体コンピューティング・デバイスのブロック図である。
【図９Ｂ】移動体コンピューティング・デバイスのブロック図である。
【発明を実施するための形態】
【０００８】
[0008]  以下の詳細な説明では、添付図面を参照する。可能なときはいつでも、図面において同じ参照番号を使用し、以下の説明では同じまたは同様のエレメントを指す。例について説明するが、変更、適合、および他の実現例が可能である。例えば、図面に示すエレメントに対して交換、追加、または変更を行ってもよく、本明細書において説明する方法は、開示する方法において段階を交換する、順序を変える、または追加することによって、変更されてもよい。したがって、以下の詳細な説明は限定ではなく、代わりに、適正な範囲は添付する請求項によって定められる。例は、ハードウェアの実現例、または全体的にソフトウェアの実現例、またはソフトウェアおよびハードウェアの形態を組み合わせた実現例という形態を取ることができる。したがって、以下の詳細な説明は、限定的な意味で捕らえてはならない。
【０００９】
[0009]  図１は、本開示を実施することができる環境例１００を示す。図示のように、オンライン・サービス１１０は、イベント署名(event signature)をイベント検出器１２０に伝達する。イベント検出器１２０は、種々の検出ロジック・セットを使用して、オンライン・サービス１１０において起こっている挙動を示す検出結果を署名異常スコアラー(signature anomaly scorer)１３０に供給する。署名異常スコアラー１３０は、所与の挙動がオンライン・サービス１１０にとってどの位通常かまたは異常か判定し、カウントおよび検出結果を、それぞれ、信号集計キャッシュ１４０および検出結果キャッシュ１５０に格納する。
【００１０】
[0010]  多信号検出器１６０は、異常得点(anomaly score)および検出結果を署名異常スコアラー１３０および検出結果キャッシュ１５０（それぞれ、新たなものおよび以前に観察されたもの）から受け入れ、被観察挙動がオンライン・サービス１１０における悪意のある活動または良性の活動のどちらを示すか、予測的に判定する。予測判定は、多信号結果キャッシュ１７０に格納され、これらが悪意のある挙動を示すとき、警告ジェネレーター１８０に送信することができる。アナリストまたは管理ユーザーには、警告ジェネレーター１８０から警告が送信され、更に検討するために、検出結果キャッシュ１５０および多信号結果キャッシュ１７０にキャッシュされている結果にアクセスすることができる。
【００１１】
[0011]  種々の形態では、署名異常スコアラー１３０および多信号検出器１６０を纏めて異常検出器１９０と呼ぶ。異常検出器１９０は、オンライン・サービス１１０内部に専用デバイスとして、または１組の分散型デバイスとしてホストされてもよく、あるいは外部デバイスまたは１組のデバイスであってもよい。加えて、イベント検出器１２０は、オンライン・サービス１１０、異常検出器１９０、サード・パーティ・サービスの一部、およびこれらの組み合わせであってもよい。同様に、異常検出器によって使用されるキャッシュは、異常検出器１９０、オンライン・サービス１１０、または外部記憶デバイスの一部であってもよい。
【００１２】
[0012]  オンライン・サービス１１０、イベント検出器１２０、キャッシュ、警告ジェネレーター１８０、および異常検出器１９０は、複数のコンピューティング・システムの例であり、限定ではなく、デスクトップ・コンピューター・システム、有線およびワイヤレス・コンピューティング・システム、移動体コンピューティング・システム（例えば、移動体電話機、ネットブック、タブレットまたはスレート型コンピューター、ノートブック・コンピューター、およびラップトップ・コンピューター）、ハンド・ヘルド・デバイス、マルチプロセッサー・システム、マイクロプロセッサー・ベースのまたはプログラマブル消費者用電子機器、マイクロコンピューター、プリンター、およびメインフレーム・コンピューターが含まれる。これらのコンピューティング・システムのハードウェアについては、図８、図９Ａ、および図９Ｂに関して更に詳しく説明する。
【００１３】
[0013]  オンライン・サービス１１０、イベント検出器１２０、キャッシュ、警告ジェネレーター１８０、および異常検出器１９０は、図示の目的上、互いに離れて示されているが、他の図示されたデバイスにローカルにホストされたこれらのデバイスの内１つ以上には、様々な構成が可能であり、図示する各デバイスはそのデバイスの複数のインスタンスを表すとしてもよいことは注記してしかるべきである。当業者には馴染みのある種々のサーバーおよび仲介物が、これらのシステム間における通信を導くために、図１に示すコンポーネント・システム間に存在してもよいが、本開示の新規の形態から注意を逸らさないように、これらは図示されていない。
【００１４】
[0014]  オンライン・サービス１１０は、クラウド・データー・センターのような、ネットワーク接続された１組のコンピューティング・デバイスを表し、「クラウド」サービスを種々のユーザーに提供する。種々のサービスには、限定ではないが、サービスとしてのインフラストラクチャ（ＩａａＳ）が含まれ、この場合、ユーザーはオペレーティング・システムと、オンライン・サービス１１０のデバイスにおいて実行するソフトウェアとを提供する。また、サービスとしてのプラットフォーム（ＰａａＳ）も含まれ、この場合、ユーザーはソフトウェアを提供し、オンライン・サービス１１０は動作システムとデバイスとを提供する。また、サービスとしてのソフトウェア（ＳａａＳ）も提供され、この場合、オンライン・サービス１１０がオペレーティング・システムと、デバイスにおいて実行するソフトウェアとの双方をユーザーに提供する。
【００１５】
[0015]  種々の監査イベントが、オンライン・サービス１１０内にあるデバイスにおいて生成され、セキュリティ情報およびイベント管理（ＳＩＥＭ）内において検出ロジックを実行する種々のイベント検出器１２０、ならびに他のシステムおよびサービスからの外部監査結果を提供する外部検出システムによって処理される。種々の監査イベントには、ネットワーク通信トレース、エラー・ログ、イベント・ログ、システム・コマンド等が含まれるが、これらに限定されるのではない。
【００１６】
[0016]  オンライン・サービスに関して、不正(unauthorized)ユーザーまたはプログラム（例えば、ウィルス）に関連する挙動は、悪意のあるものとして類別され、一方正規ユーザーまたはプログラムに関連する挙動は良性のものとして類別される。これらの挙動を類別するために、検出結果をイベント検出器から異常検出器１９０に渡し、異常検出器１９０は、その結果を信号集計キャッシュ１４０、検出結果キャッシュ１５０、および多信号結果キャッシュ１７０に格納する。
【００１７】
[0017]  異常検出器１９０は、種々の機械学習手法を使用して、ある時間期間にわたって複数の信号を評価して、所与の挙動が悪意のあるものかまたは良性のものか判定するモデルを発展させる。異常検出器の署名異常スコアラー１３０および多信号検出器１６０の動作については、図２および図４に関して更に詳しく説明する。
【００１８】
[0018]  所与の挙動が悪意のあるものであると判定したことに応答して、異常検出器１９０はその判定を警告ジェネレーター１８０に渡す。警告ジェネレーター１８０は、種々のフォーマットで、警告を送信してアナリスト・ユーザーに提示することができる。種々のフォーマットには、アプリケーション・メッセージ（例えば、ＳＩＥＭアプリケーション内）、電子メール（電子メール・アカウント宛）、テキストまたはマルチメディア・メッセージ（セルまたはボイス・オーバー・インターネット・プロトコル（ＶＯＩＰ）アカウント宛）、ページ（ページャ番号宛）等が含まれるが、これらに限定されるのではない。警告は、ほぼリアル・タイムで（例えば、処理および送信時間を算入する）イベントに対して発せられ、その結果、この挙動が悪意のあるものとして分類されるが、後の調査および検討のために格納されてもよい。
【００１９】
[0019]  図２は、署名異常スコアラー１３０の詳細を示す。署名異常スコアラー１３０は、生の検出結果を種々のイベント検出器１２０から受け入れて、集計された異常カウントを信号集計キャッシュ１４０に出力する。集計された異常カウントは、署名異常スコアラー１３０が、点数化検出結果(scored detection result)を多信号検出器１６０に、どのように出力するかを更新するために使用される。署名異常スコアラー１３０は、所与の挙動が新しいものか、それとも以前に見たことがあるものか区別し、どの程度前に見たのか区別する。
【００２０】
[0020]  生の検出結果は、識別子リコグナイザー(identifier recognizer)２１０によって受け取られ、識別子リコグナイザー２１０は、検出結果とともに使用する識別子を判定する。生の検出結果からの種々のフィールド値を組み合わせて識別子を形成する。この識別子は、以下のものの１つ以上を含むことができる。挙動が観察されたデバイスの役割、挙動が観察されたデバイスのユーザー、挙動のクラス、挙動の要求元（ユーザーまたはプロセス）、挙動の目的（ユーザーまたはプロセス）、タイムスタンプ、またはイベント信号内に存在する他のフィールド。例えば、ユーザーＡの挙動がユーザーＢにタイプＣのデバイスに管理許可を時点Ｄにおいて付与するという場合、ＡＢＣＤという識別子が得られるとしてもよい。種々の形態において、識別子は、フィールド値に基づいて生成されるが、これらのフィールドの平文値を含まない。例えば、識別子を形成するとき、フィールド値にハッシングまたは暗号化アルゴリズム／機能を適用する。
【００２１】
[0021]  母集団アグリゲーター(population aggregator)２２０は、信号集計キャッシュ１４０から、特定の識別子に対する履歴カウント(historical counts)を調べ、それに応じてカウントを更新する。履歴カウントは、所与の挙動タイプが以前に観察された検出総数に対する母集団カウントにしたがって、更に、以前に観察された検出総数の内、所与の識別子を共有するものの部分母集団カウントにしたがって集計される。
【００２２】
[0022]  検出結果スコアラー２３０は、被観察挙動に対する履歴カウントに基づいて、少なくとも１つの異常得点を検出結果に加算する。異常得点は、部分母集団がその母集団の大きな部分になるに連れて、その挙動の異常性が低くなるように、部分母集団カウントと、所与の挙動に対する母集団カウントとの間の比率に基づく。例えば、異常得点は式１に示すフォーマットを使用してもよく、ここで、ｘ、ｙ、およびｚは、異常得点に対して与えられる値に影響を及ぼすように、異なる形態毎に変化する。認められようが、式１は、どのように異常性に得点を割り当てるかの非限定的な例として与えられる。
【００２３】
[0023]  式１：得点＝ｘ−（（ｙ−部分母集団）÷（ｚ−母集団））
[0024]  得点は、所与の挙動と一致するイベントの全てに対する生のカウントを使用する母集団範囲(population scopes)の異なるカウントにしたがって、あるいはオンライン・サービス１１０の内所与の挙動を呈する個々のデバイス（ホスト）、または被観察挙動を要求するユーザーに対する分類カウント(scoped counts)にしたがって計算されてもよい。例示するために、オンライン・サービス１１０のデバイスＤ１およびＤ２において発生したイベントＥ１およびＥ２について検討する。ここで、Ｅ１は３回（Ｄ１において２回、そしてＤ２において１回）観察され、Ｅ２はＤ２において１回観察されている。例示する例において、生の母集団カウントは４である。何故なら、Ｅ１がオンライン・サービス１１０において３回発生し、Ｅ２が１回発生したからである。そして、部分母集団カウントは、それぞれ、Ｅ１およびＥ２に対して３および１となる。式１を使用し、ｘ、ｙ、およびｚの各々に１の値を入れると、Ｅ１について０．２５の異常得点［１−（１×３）÷（１×４）］が得られ、Ｅ２について０．７５の異常得点［１−（１×１）÷（１×４）］が得られる。
【００２４】
[0025]  しかしながら、母集団に対して選択された範囲に拠っては、分類異常得点(scoped anomaly score)が、生カウントから異なる結果を生成する例もある。デバイス・カウントの範囲を使用すると、分類デバイス母集団カウント(scoped device population count)は、この例示では２となる。何故なら、例示する例ではオンライン・サービス１１０内に２つの別個のデバイス（Ｄ１およびＤ２）があるからである。Ｅ１は両方のデバイスにおいて見られているので、その部分母集団カウントは２となり、一方Ｅ２はＤ２において見られただけなので、その部分母集団カウントは１となる。別個のデバイスの範囲および式１を使用して、ｘ、ｙ、およびｚの各々に１の値を入れると、Ｅ１について０の異常得点［１−（１×２）÷（１×２）]が得られ、Ｅ２について０．５の異常得点［１−（１×１）÷（１×２）］が得られる。
【００２５】
[0026]  新たなイベントまたは母集団が少ない(low-population)イベントが偽の異常得点を供給するのを防ぐために、形態によっては閾値フィルタを使用して、頻度が非常に低いイベントを検査から（少なくとも一時的に）除外する。１つの例では、最新のイベントが「間引き」され(debounce)、ある挙動の最初の観察は、その挙動の他のインスタンスが観察される時間が与えられるまで、採点されないようにする。第２の例では、母集団閾値を設定して、イベントの母集団が小さすぎて信頼性のある結果が得られない場合（例えば、異常検出器１９０の起動中）、０の確率が割り当てられるようにする。第３の例では、部分母集団閾値を設定して、（システム・オプションに依存して）挙動の部分母集団が小さすぎて、その挙動が見られた確率を推定するときに信頼性のある結果が得られない場合（例えば、観察すべき新たに割り当てられた部分母集団に対して）、最大または最小の異常得点が割り当てられるようにする。
【００２６】
[0027]  種々の形態において、被観察挙動は、ローリング・タイム・ウィンドウにしたがって設定されるので、母集団または部分母集団の一部と考えられるイベント（そしてその関連するカウント）は、これらがいつ発生したかに基づく。例えば、過去ｄ日において観察された挙動のみをローリング・タイム・ウィンドウの一部としてもよく、つまり、異常得点を判定するための母集団および部分母集団カウントが、オンライン・サービス１１０に対して観察される挙動の全てではなく、最新の挙動に基づいてもよい。信号異常得点のローリング・ウィンドウは、オンライン・サービス１１０における「正常」動作がどのように見えるか（たとえば、先月の使用パターンはどのようであったか）についての基準線を示す。
【００２７】
[0028]  加えて、ある時間期間にわたって挙動を観察することによって、他の方法では見逃すおそれがある、オンライン・サービス１１０に対してゆっくり動く攻撃を観察することができる。ローリング多信号ウィンドウ(rolling multi-signal window)は、知能型の持続的な脅威（ＡＰＴ）のような母集団が小さい挙動または動きが遅い挙動を、オンライン・サービス１１０における所与のデバイスで発生するイベントの全てを収集することによって観察し、挙動に対して悪意のあるパターンが存在するか否か、確実に判定する。
【００２８】
[0029]  図３は、多信号分析のための時間枠設定(windowing)および分類(scoping)イベントのブロック図３００である。図示のように、被観察挙動(observed behavior)を表す様々なイベント・ブロック３１０（個々に、３１０ａ〜３１０ｎ）、およびそれらの関連する識別子、得点、特徴ベクトル、タイムスタンプ等が、第１編成状態３０１および第２編成状態３０２において示されている。範囲アレンジャー(scope arranger)３２０は、第１編成状態３０１から第２編成状態３０２に、イベント・ブロック３１０の時間枠決定および分類を行うように構成され、第２編成状態３０２は、様々な範囲ブロック３３０（個々に、３３０ａ〜３３０ｎ）を含み、これらの範囲ブロック３３０は分析のために多信号検出器１６０に供給される。多信号検出器１６０には、範囲毎に関連付けられたイベントが供給され、その範囲が悪意のある行為と関連付けられているか否か判定する（例えば、不正アクセスされたデバイス、制限されたファイルにアクセスするユーザー・アカウント、大量のデーターを偽の宛先に送るユーザー・アカウント、不規則に動作するプロセス等）。
【００２９】
[0030]  第１編成状態３０１は、検出結果キャッシュ１５０または他の記憶デバイスによって使用されるもの、あるいは署名異常スコアラー１３０からのイベントのストリームであってもよい。個々のイベントは、図示する例におけるイベント・ブロック３１０ａ〜３１０ｈのような、以前の時間ウィンドウに入るもの（例えば、最後のｄ日以内のタイムスタンプを有するもの）、そして図示する例におけるイベント・ブロック３１０ｇ〜３１０ｎのような、現在の時間ウィンドウに入るもの（例えば、最後のｍ分）を含むことができる。現在の時間ウィンドウの外側にあるイベントは、分析ウィンドウよりも長く格納されており第２編成状態３０２に含まれないイベントを、更なる分析のために含む。
【００３０】
[0031]  アナリストまたは他の管理ユーザーは、分析ウィンドウの長さ、および第２編成状態３０２のために範囲として使用されるべきプロパティを設定する。例えば、デバイス識別子、デバイス・タイプ、または要求元ユーザーを使用して、種々のイベント・ブロック３１０を、分析のために異なる範囲ブロック３３０に分けることができる。更なる分析のために指名された種々の個々のイベント・ブロック３１０（ローリング分析ウィンドウ内にあるもの）は、範囲アレンジャー３２０によって指定された範囲の特徴に基づいて、範囲ブロック３３０に配列される。
【００３１】
[0032]  例えば、異なるデバイスに対して範囲が定められるとき、第１範囲ブロック３３０ａはオンライン・サービス１１０における第１デバイスに対応し、第１デバイスと関連付けられ、更なる分析のために指定されているイベント・ブロック３１０（イベント・ブロック３１０ａ、３１０ｄ、および３１０ｅ）を含む。同様に、第２範囲ブロック３３０ｂおよび第ｎ範囲ブロック３３０ｎは、それぞれ、オンライン・サービス１１０からの第２および第ｎデバイスに対応し、第２または第ｎデバイスと関連付けられ、更なる分析のために指定されているイベント・ブロック３１０（イベント・ブロック３１０ｂ、３１０ｉ、３１０ｇ、および３１０ｈ、ならびにイベント・ブロック３１０ｃ、３１０ｆ、および３１０ｎ）を含む。
【００３２】
[0033]  図示するイベント・ブロック３１０の内、イベント・ブロック３１０ｊは、図示する範囲ブロック３３０のいずれにも割り当てられていない。種々の形態において、イベント・ブロック３１０がローリング分析ウィンドウの外側にあるとき、イベントが異なる範囲に割り当てられる元になるデーターをイベント・ブロック３１０が失ったとき（例えば、イベント・ブロック３１０ｊにデバイス識別子が含まれていない）、または範囲が所与のイベント・ブロック３１０の検出結果タイプを除外するように構成されるとき（例えば、範囲がいくつかの潜在的に可能な挙動のみを含むように定められる）、イベント・ブロック３１０は範囲ブロック３３０に割り当てられないまま残る場合がある。
【００３３】
[0034]  図４は、多信号検出器１６０の詳細を示す。多信号検出器１６０は、範囲毎に（例えば、デバイス毎、ユーザー毎、またはプロセス毎に採点された検出結果）１つ以上の点数化検出結果の分類グループ(scoped group)を受ける。特徴抽出器４１０は、分析対象の範囲に対する点数化検出結果の集合を受け、点数化検出結果から種々の特性を抽出し、所与の範囲が悪意のある挙動を行っているか否か、予測モデル４２０が判定するために使用される、特徴ベクトルを生成するように構成されている。
【００３４】
[0035]  特徴抽出器４１０は、例えば、使用されるポート、接続されるＩＰアドレス、デバイス識別／タイプ、ユーザー識別、プロセス識別、行われたアクション、タイムスタンプ、異常得点等のような特性を、点数化検出結果から識別するように構成されている。これらの特性は、予測モデル４２０のために、特徴ベクトルとして使用するために、数値（即ち、特徴）に変換される。予測モデル４２０は、特徴ベクトルが抽出された範囲が悪意のある挙動を呈しているか否かについて信頼度得点を出すために所与の特徴ベクトル用の機械学習技法にしたがって訓練されるアルゴリズムである。
【００３５】
[0036]  予測モデル４２０は、種々の機械学習技法の内１つにしたがって、継続的に訓練することができる。当業者は、本開示と共に採用することができる種々の機械学習技法に精通しているであろう。機械学習技法は、教師付、半教師付、および教師なし学習セッションを含む。種々の形態において、複数の予測モデル４２０が利用可能であってもよく、これらの中から、多信号検出器１６０（あるいはアナリストまたは管理ユーザー）が、評価データー集合、再現度精度曲線の下にあるエリア、または他のメトリックにしたがって、そして他の予測モデル４２０に対する比較のために、それらの精度に基づいて、所与の範囲を分析するために１つ以上を選択してもよい。
【００３６】
[0037]  予測モデル４２０によって生成される信頼度得点は、アナリストまたは管理ユーザーによる検討のため、および／またはモデル訓練の目的のために、多信号結果キャッシュ１７０に格納される。加えて、検出結果に関する警告をアナリストまたは管理ユーザーに発信するか否か判定するために、警告ロジックを使用する。予測モデル４２０によって生成された信頼度得点が信頼度閾値を満たし、範囲が悪意のある挙動を呈していることを、所与の範囲に対する特徴ベクトルが示すとき、警告ジェネレーター１８０には、その判定、および悪意のある挙動を詳細に示す警告を生成するために必要な詳細が伝達される。
【００３７】
[0038]  図５は、オンライン・サービス１１０において、不正アクセスされたホスト範囲を検出するための方法例５００に含まれる概略的な段階を示すフロー・チャートである。方法５００は、動作５１０から開始し、ここでイベントに対する検出結果を受ける。検出結果は、オンライン・サービス１１０における種々の挙動を識別する検出ロジックにしたがって受けられ、ネットワーク通信トレース、エラー・ログ、イベント・ログ、システム・コマンド等を含むがこれらに限定されない、１つ以上の信号またはファイルにおいて提供される情報を含む。
【００３８】
[0039]  方法５００は動作５２０に進み、ここで、検出結果が表す挙動が、ローリング・タイム・ウィンドウ内においてどの位異常であるかにしたがって、検出結果を採点する。種々の形態において、ローリング・タイム・ウィンドウの外側からの挙動は、アナリストまたは他の管理ユーザーによって更なる分析のために指定される仮説的または履歴的挙動（纏めて履歴的挙動と呼ぶ）を含ませるために、検出イベントの異常得点に含まれる。
【００３９】
[0040]  動作５３０において、点数化検出結果を、種々の範囲によって編成する。範囲は、オンライン・サービス１１０を構成部分に分割して、悪意のある活動を所与の部分に分離できるか否か分析するために、アナリストまたは他の管理ユーザーによって選択された１つ以上の特性に基づく検出結果の分割を含む。範囲の例には、オンライン・サービス１１０内にある個々のデバイス／ホスト、ユーザー・アカウント、およびプロセス／アプリケーションが含まれるが、これらに限定されるのではない。所与の範囲に該当しないイベント、および閾値量を超えるイベント数を有さない範囲は、現在の分析過程(round)から除外されてもよい。
【００４０】
[0041]  動作５４０に進み、多信号検出ロジックを、分類および点数化(scored and scoped)検出結果に適用して、所与の範囲が不正アクセスされたか否かについての信頼度を判定する。種々の訓練された機械学習モデル（連続に訓練され、到来する検出信号に基づいて更新されてもよい）を使用して、範囲内に提出された検出結果の得点に基づいて、所与のデバイス（またはユーザーまたはプロセス）が悪意のある行動を行っているか否か予測的に判定する。範囲内において供給される検出結果の種々の特性を、特徴（種々の特性の数値表現）に変換し、挙動に悪意があるか否かについて信頼度得点を生成するために、予測モデル４２０に供給する。
【００４１】
[0042]  判断５５０において、信頼度得点を、アナリストまたは他の管理ユーザーに悪意のある挙動を警告するか否かに関する信頼度閾値と比較する。信頼度得点が信頼度閾値を満たすことに応答して、アナリストまたは他の管理ユーザーに警告すべきであると判定し、方法５００は動作５６０に進む。そうでない場合、信頼度得点が信頼度閾値を満たさないことに応答して、方法５００は終了すればよいが、後続の検出結果を受けたことに応答して、動作５１０から繰り返すこともできる。
【００４２】
[0043]  動作５６０において、警告を生成し送信する。種々の形態において、警告は、警告を誘起した挙動および検出結果、ならびに分析されて警告を誘発した範囲を識別する。例えば、警告が、時点ｔにおいて、ユーザーＡがユーザーＢにデバイスＣ（範囲）において管理許可を付与した（挙動）ことを明言するとしてもよい。警告は、複数のフォーマットにしたがって生成および送信されてもよく、フォーマットには、アプリケーション・メッセージ（例えば、ＳＩＥＭアプリケーション内）、電子メール（電子メール・アカウント宛）、テキストまたはマルチメディア・メッセージ（セルまたはボイス・オーバー・インターネット・プロトコル（ＶＯＩＰ）アカウント宛）、ページ（ページャ番号宛）等が含まれるが、これらに限定されるのではない。次いで、方法５００は終了すればよいが、後続の検出結果を受けたことに応答して動作５１０から繰り返すこともできる。
【００４３】
[0044]  図６は、異常性に基づいて検出結果を採点するための方法例６００に含まれる概略的な段階を示すフロー・チャートである。方法６０００は、図５の動作５２０のサブステップの一例である。方法６００は、動作６１０において開始し、検出結果に対して識別子を計算する。種々の形態において、検出結果からの異なるフィールド値（例えば、ソース・デバイス名、宛先ＩＰアドレス、ユーザー、アクションのタイプ、アクションの効果、タイムスタンプ）を使用して、識別子を作成する。識別子は、フィールド値自体（フィールド名も付けて、または付けずに）、あるいはフィールド値の暗号ハッシュのような、１つ以上のフィールド値の派生値を、被観察挙動の識別子として使用してもよい。
【００４４】
[0045]  動作６２０において、識別子の集計カウントを信号集計キャッシュ１４０から引き出す。ローリング・タイム・ウィンドウに基づいて、被観察挙動の母集団に対する集計カウント、および所与の挙動に対する特定の部分母集団を引き出して、これらのカウントが、現時点から所与の時間期間（例えば、最後のｄ日以内）以内に発生した挙動に基づくようにすことができる。ある形態では、アナリスト・ユーザーによって定められる履歴被観察挙動(historical observed behaviors)を、これらがローリング・タイム・ウィンドウ内で観察されたか否かには関係なく、母集団カウントに含む。  
【００４５】
[0046]  方法６００は動作６３０に進み、ここで、信号集計キャッシュ１４０において集計カウントを更新する。種々の形態において、種々の母集団および部分母集団（例えば、デバイスＡ、ユーザーＢ、プロセスＣ、およびこれらの組み合わせに対する挙動）に対するカウントを、特定の挙動または１組の挙動を観察したことに応答して、増分する。これらの増分は、特定のアカウントを増分させるに至った挙動がローリング分析ウィンドウの一部として指定される限り、集計カウントに影響を及ぼす。挙動が履歴的挙動としての使用のために指定されなければ、挙動はタイムアウトし(age out)、したがってカウントは減分される。
【００４６】
[0047]  動作６４０において、検出結果に対する異常得点を計算する。種々の形態において、アナリストまたは管理ユーザーは、１つ以上の式（先に示した式１のような）を選択することができる。種々の形態において、所与の分析ウィンドウ内においてオンライン・サービス１１０において観察された全てのイベントの生カウントを、母集団カウントとして提供する。一方、他の形態では、オンライン・サービス１１０において観察され、オンライン・サービス１１０のアナリスト定義範囲(analyst-defined scope)に一致するイベントの分類カウント(scoped count)を、母集団カウントとして提供する。加えて、動作６１０において計算した識別子を共有する挙動の以前の観察数に対する部分母集団カウントを、生の母集団および分類母集団(scoped populations)（定められる場合）に関連して提供する。
【００４７】
[0048]  異常得点は、所与の挙動が以前に観察された程度の表現を与える。母集団カウント（生または分類）が母集団閾値を下回る形態では、アナリストの好みに基づいて、異常得点に対するデフォルト値（例えば、１００％異常、０％異常）を割り当ててもよい。同様に、部分母集団カウントが部分母集団閾値を下回るとき、異常得点に対するデフォルト値（例えば、１００％異常、０％異常）を割り当ててもよく、または挙動を「間引き」して、可能性があれば、部分母集団が成長するのを待ってから、母集団得点を割り当てさせてもよい。
【００４８】
[0049]  これらの異常得点、母集団カウント、および部分母集団カウントの内１つ以上は、これらの基になる検出結果の新たな属性として持続し、動作６５０において多信号検出器１６０に送信される。方法６００は、動作６５０の後に完結すればよく、後続の検出結果を受けたことに応答して、動作６１０から繰り返すこともできる。
【００４９】
[0050]  図７は、不正アクセスされた範囲の多信号検出のための方法例７００に含まれる概略的な段階を示すフロー・チャートである。方法７００は、図５の動作５４０のサブステップの一例である。方法７００は、動作７１０において開始し、ここで、１つ以上の予測モデル４２０を選択する。予測モデル４２０は、複数の理由に基づいて選択される。複数の理由には、分析に利用可能な特徴集合、他のモデルと比較した精度または予測の正確さ、分析する所望の挙動、利用可能な処理リソース、モデルが生産、訓練、または評価の内どれのためにデプロイされるのか等が含まれるが、これらに限定されるのではない。１つ以上の予測モデル４２０は、分析される所与の範囲に対して選択することができ、アナリストまたは他の管理ユーザーがオンライン・サービス１１０内において捜したい種々の挙動に対応する。
【００５０】
[0051]  動作７２０において、選択した予測モデル４２０の特徴集合に対応する点数化検出結果から特性を抽出する。各予測モデル４２０は、検出結果からの特性に基づいてオンライン・サービスにおいて種々の挙動を認識するように訓練されており、１つ以上の特性を数値フォーマットを（例えば、数値の行列として）表す所与の特徴ベクトルと関連付けることができる。特性は数値（例えば、異常得点、母集団カウント）、テキスト値（例えば、ユーザー名、アクション名、プロセス名）、および擬似数値（例えば、ＩＰアドレス、タイムスタンプ）を含んでもよいので、動作７３０において、特徴への変換のために特性を採点する。当業者は、非数値を、特徴として使用するための数値に変換する種々の処理に精通しているであろう。種々の形態において、予測モデル４２０による消費のための特徴値にフォーマット化するために、特性の数値変換（および元の数値）に圧縮またはフォーマット化処理（例えば、シグモイド・スカッシング関数(sigmoid squashing function)）を適用する。
【００５１】
[0052]  動作７４０に進み、選択した予測モデル４２０を特徴ベクトルに渡し、検出結果の挙動（１つまたは複数）が悪意によるものかまたは良性かについて信頼度得点を生成する。予測モデル４２０は、１つ以上の特徴ベクトル（そして、形態によっては、他の予測モデル４２０の出力も）を入力として受け入れ、信頼度得点を出力として生成するアルゴリズムである。信頼度得点とは、入力によって表される挙動を悪意のあるものまたは良性のものとして分類することができるか否かに関する確信度(level of certainty)を示す予測である。種々の形態において、予測モデル４２０は、所与の挙動を悪意のあるものまたは良性のものとして扱うべきか予測するために、連続機械学習プロセスの多くの期間(epoch)にわたって進化され(develop)、連続する学習フェーズにわたって時間が進むに連れて、アナリストまたは他の管理ユーザーから受けるフィードバックおよび他のモデルに基づいて、その予測を適合させることができる。
【００５２】
[0053]  一旦信頼度得点が生成されたなら、動作７５０において、送信または後の使用のために、格納される。例えば、機械学習プロセスの次の学習フェーズにおいて予測モデル４２０を繰り返し改良するための訓練セットにおける使用のために、多信号結果キャッシュ１７０に信頼度得点を格納してもよい。他の例では、警告ジェネレーター１８０への送信のために信頼度得点を格納し、信頼度得点および警告ロジックに基づいて、被観察挙動に対して警告を発するか否か判定することができる。次いで、方法７００は終了すればよく、分析すべき検出結果の他の範囲を受けたことに応答して、動作７１０から繰り返すこともできる。
【００５３】
[0054]  以上、実現例について、コンピューターにおけるオペレーティング・システムにおいて実行するアプリケーション・プログラムと共に実行するプログラム・モジュールという一般的なコンテキストで説明したが、他のプログラム・モジュールと組みあわせても、形態を実現できることは当業者には認められよう。一般に、プログラム・モジュールは、ルーチン、プログラム、コンポーネント、データー構造、および他のタイプの構造を含み、特定のタスクを実行するか、または特定の抽象データー型を実装する。
【００５４】
[0055]  本明細書において説明した形態および機能は、複数のコンピューティング・システムによって処理することができる。コンピューティング・システムには、限定ではなく、デスクトップ・コンピューター・システム、有線およびワイヤレス・コンピューティング・システム、移動体コンピューティング・システム（例えば、移動体電話機、ネットブック、タブレットまたはスレート型コンピューター、ノートブック・コンピューター、およびラップトップ・コンピューター）、ハンド・ヘルド・デバイス、マルチプロセッサー・システム、マイクロプロセッサー・ベースまたはプログラマブル消費者用電子機器、ミニコンピューター、およびメインフレーム・コンピューターが含まれる。
【００５５】
[0056]  加えて、一形態によれば、本明細書において説明した形態および機能は、分散型システム（例えば、クラウド・ベースのコンピューティング・システム）において動作する。この場合、アプリケーションの機能、メモリー、データー記憶および引き出し機能、ならびに種々の処理機能は、互いに離れて、インターネットまたはイントラネットのような、分散型コンピューティング・ネットワークを介して処理される。一形態によれば、ユーザー・インターフェースおよび種々のタイプの情報を、内蔵コンピューティング・デバイス・ディスプレイによって、または１つ以上のコンピューティング・デバイスに関連するリモート・ディスプレイ・ユニットによって表示する。例えば、ユーザー・インターフェースおよび種々のタイプの情報が投影される壁の表面上に、ユーザー・インターフェースおよび種々のタイプの情報を表示し、対話処理する。実現例が実施される複数のコンピューティング・システムとの対話処理には、キーストローク入力、タッチ・スクリーン入力、音声または他の音響入力、ジェスチャ入力等が含まれ、関連するコンピューティング・デバイスには、コンピューティング・デバイスの機能を制御するためにユーザー・ジェスチャをキャプチャし解釈するための検出（例えば、カメラ）機能が装備される。
【００５６】
[0057]  図８、図９Ａ、および図９Ｂ、ならびに関連する説明は、例が実施される種々の動作環境の説明となる。しなしながら、図８、図９Ａ、および図９Ｂに関して図示および説明するデバイスならびにシステムは、例示を目的とするに過ぎず、本明細書において説明した形態を実施するために利用される大多数のコンピューティング・デバイスの構成を限定するのではない。
【００５７】
[0058]  図８は、本開示の例を実施することができるコンピューティング・デバイス８００の物理コンポーネント（即ち、ハードウェア）を示すブロック図である。基本的な構成では、コンピューティング・デバイス８００は少なくとも１つの処理ユニット８０２とシステム・メモリー８０４とを含む。一形態によれば、コンピューティング・デバイスの構成およびタイプに依存して、システム・メモリー８０４は、揮発性ストレージ（例えば、ランダム・アクセス・メモリー）、不揮発性ストレージ（例えば、リードオンリー・メモリー）、フラッシュ・メモリー、またはこのようなメモリーの任意の組み合わせを含むが、これらに限定されるのではない。一形態によれば、システム・メモリー８０４は、オペレーティング・システム８０５と、ソフトウェア・アプリケーション８５０を実行するのに適した１つ以上のプログラム・モジュール８０６とを含む。一形態によれば、システム・メモリー８０４は異常検出器１９０を含む。オペレーティング・システム８０５は、例えば、コンピューティング・デバイス８００の動作を制御するのに適している。更に、グラフィクス・ライブラリ、他のオペレーティング・システム、または任意の他のアプリケーション・プログラムと共に形態が実施され、いずれの特定のアプリケーションにもシステムにも限定されない。この基本的な構成は、図における破線８０８の内側にあるコンポーネントによって示される。一形態によれば、コンピューティング・デバイス８００は追加の特徴または機能を有する。例えば、一態様によれば、コンピューティング・デバイス８００は、例えば、磁気ディスク、光ディスク、またはテープのような、追加のデーター記憶デバイス（リムーバブルおよび／または非リムーバブル）を含む。このような追加のストレージは、図８では、リムーバブル記憶デバイス８０９および非リムーバブル記憶デバイス８１０によって示される。
【００５８】
[0059]  以上で述べたように、一形態によれば、システム・メモリー８０４には複数のプログラム・モジュールおよびデーター・ファイルが格納される。プログラム・モジュール８０６（例えば、異常検出器１９０）が処理ユニット８０２において実行している間、図５、図６、および図７に示した方法５００、６００、および７００の段階の内１つ以上を含むがこれらに限定されないプロセスを実行する。一形態によれば、他のプログラム・モジュールが例にしたがって使用され、プログラム・モジュールには、電子メールおよび連絡先アプリケーション、ワード・プロセッシング・アプリケーション、表計算アプリケーション、データーベース・アプリケーション、スライド・プレゼンテーション・アプリケーション、作図またはコンピューター支援アプリケーション・プログラム等のような、アプリケーションが含まれる。
【００５９】
[0060]  一形態によれば、コンピューティング・デバイス８００は、キーボード、マウス、ペン、音響入力デバイス、タッチ入力デバイス等のような、１つ以上の入力デバイス８１２を有する。ディスプレイ、スピーカー、プリンター等のような出力デバイス（１つまたは複数）８１４も、一形態によれば、含まれる。前述のデバイスは、例であり、他のものが使用されてもよい。一形態によれば、コンピューティング・デバイス８００は、１つ以上の通信接続８１６を含み、他のコンピューティング・デバイス８１８との通信を可能にする。適した通信接続８１６の例には、無線周波数（ＲＦ）送信機、受信機、および／または送受信機回路、ユニバーサル・シリアル・バス（ＵＳＢ）、パレレル・ポート、および／またはシリアル・ポートが含まれるが、これらに限定されるのではない。
【００６０】
[0061]  コンピューター読み取り可能媒体という用語は、本明細書において使用する場合、コンピューター記憶媒体を含む。コンピューター記憶媒体は、揮発性および不揮発性、リムーバブルおよび非リムーバブル媒体を含み、コンピューター読み取り可能命令、データー構造、またはプログラム・モジュールのような、情報の格納のための任意の方法または技術で実現される。システム・メモリー８０４、リムーバブル記憶デバイス８０９、および非リムーバブル記憶デバイス８１０は全て、コンピューター記憶媒体の例（即ち、メモリー・ストレージ）である。一形態によれば、コンピューター記憶媒体は、ＲＡＭ、ＲＯＭ、電気的消去可能プログラマブル・リード・オンリー・メモリー（ＥＥＰＲＯＭ）、フラッシュ・メモリーまたは他のメモリー技術、ＣＤ−ＲＯＭ、ディジタル・バーサタイル・ディスク（ＤＶＤ）または他の光ストレージ、磁気カセット、磁気テープ、磁気ディスク・ストレージまたは他の磁気記憶デバイス、あるいは情報を格納するために使用することができ、コンピューティング・デバイス８００によってアクセスすることができる任意の他の製品を含む。一形態によれば、任意のこのようなコンピューター記憶媒体はコンピューティング・デバイス８００の一部である。コンピューター記憶媒体は、搬送波や他の伝搬データー信号を含まない。
【００６１】
[0062]  一形態によれば、通信媒体は、コンピューター読み取り可能命令、データー構造、プログラム・モジュール、あるいは搬送波のような変調データー信号または他の輸送メカニズムにおける他のデーターによって具体化され、任意の情報配信媒体を含む。一形態によれば、「変調データー信号」という用語は、信号内に情報をエンコードするような方法で１つ以上の特性が設定または変化させられている信号を記述する。一例として、そして限定ではなく、通信媒体には、有線ネットワークまたは直接有線接続のような有線媒体と、音響、無線周波数（ＲＦ）、赤外線、および他のワイヤレス媒体のようなワイヤレス媒体とが含まれる。
【００６２】
[0063]  図９Ａおよび図９Ｂは、形態を実施することができる移動体コンピューティング・デバイス９００、例えば、移動体電話機、スマート・フォン、タブレット・パーソナル・コンピューター、ラップトップ・コンピューター等を示す。図９Ａを参照すると、形態を実現するための移動体コンピューティング・デバイス９００の例が示されている。基本的な構成では、移動体コンピューティング・デバイス９００は、入力エレメントおよび出力エレメントの双方を有するハンドヘルド・コンピューターである。移動体コンピューティング・デバイス９００は、通例、ディスプレイ９０５と、ユーザーが情報を移動体コンピューティング・デバイス９００に入力することを可能にする１つ以上の入力ボタン９１０とを含む。一形態によれば、移動体コンピューティング・デバイス９００のディスプレイ９０５は、入力デバイス（例えば、タッチ・スクリーン・ディスプレイ）として機能する。随意の側面入力エレメント９１５が含まれる場合、更に他のユーザー入力も可能になる。一形態によれば、側面入力エレメント９１５は、ロータリー・スイッチ、ボタン、または任意の他のタイプの手動入力エレメントである。代替例では、移動体コンピューティング・デバイス９００は、もっと多いまたは少ない入力エレメントを内蔵する。例えば、ディスプレイ９０５はいくつかの例ではタッチ・スクリーンでなくてもよい。代替例では、移動体コンピューティング・デバイス９００は、セルラ・フォンのような、携帯用電話システムである。一形態によれば、移動体コンピューティング・デバイス９００は、随意のキーパッド９３５を含む。一形態によれば、随意のキーパッド９３５は物理キーパッドである。他の形態によれば、随意のキーパッド９３５は、タッチ・スクリーン・ディスプレイ上に生成される「ソフト」キーパッドである。種々の形態において、出力エレメントは、グラフィカル・ユーザー・インターフェース（ＧＵＩ）を示すためのディスプレイ９０５、視覚指示９２０（例えば、発光ダイオード）、および／または音響変換器９２５（例えば、スピーカー）を含む。ある例では、移動体コンピューティング・デバイス９００は、ユーザーに触覚フィードバックを供給する振動変換器を内蔵する。更に他の例では、移動体コンピューティング・デバイス９００は、オーディオ入力（例えば、マイクロフォン・ジャック）、オーディオ出力（例えば、ヘッドフォン・ジャック）、および外部デバイスに信号を送るまたは外部デバイスから信号を受信するためのビデオ出力（例えば、ＨＤＭＩポート）のような、入力および／または出力ポートを内蔵する。更に他の例では、移動体コンピューティング・デバイス９００は、オーディオ入力（例えば、マイクロフォン・ジャック）、オーディオ出力（例えば、ヘッドフォン・ジャック）、および外部デバイスに信号を送るまたは外部デバイスから信号を受信するためのビデオ出力（例えば、ＨＤＭＩポート）のような、周辺デバイス・ポート９４０を内蔵する。
【００６３】
[0064]  図９Ｂは、移動体コンピューティング・デバイスの一例のアーキテクチャを示すブロック図である。即ち、移動体コンピューティング・デバイス９００は、いくつかの例を実現するためのシステム（即ち、アーキテクチャ）９０２を内蔵する。一例では、システム９０２は、１つ以上のアプリケーション（例えば、ブラウザー、電子メール、カレンダー作成、連絡先管理、メッセージング・クライアント、ゲーム、およびメディア・クライアント／プレーヤー）を実行することができる「スマート・フォン」として実装される。ある例では、システム９０２は、統合パーソナル・ディジタル・アシスタント（ＰＤＡ）およびワイヤレス・フォンのような、コンピューティング・デバイスとして統合される。
【００６４】
[0065]  一態様によれば、１つ以上のアプリケーション・プログラム９５０がメモリー９６２にロードされ、オペレーティング・システム９６４において、またはオペレーティング・システム９６４と関連して実行する。アプリケーション・プログラムの例には、発呼プログラム(phone dialer program)、電子メール・プログラム、個人情報管理（ＰＩＭ）プログラム、ワード・プロセッシング・プログラム、表計算プログラム、インターネット・ブラウザー・プログラム、メッセージング・プログラム等が含まれる。一形態によれば、異常検出器１９０がメモリー９６２にロードされる。また、システム９０２はメモリー９６２内に不揮発性記憶エリア９６８も含む。不揮発性記憶エリア９６８は、システム９０２の電源が落ちても失ってはならない永続的情報を格納するために使用される。アプリケーション・プログラム９５０は、電子メール・アプリケーションによって使用される電子メールまたは他のメッセージ等のような情報を使用し、不揮発性記憶エリア９６８に格納することができる。同期アプリケーション（図示せず）もシステム９０２上に存在し、ホスト・コンピューター上に存在する対応する同期アプリケーションと相互作用して、不揮発性記憶エリア９６８に格納されている情報を、ホスト・コンピューターに格納されている対応する情報と同期させ続けるようにプログラミングされている。認められるはずであるが、他のアプリケーションがメモリー９６２にロードされ、移動体コンピューティング・デバイス９００において実行されてもよい。
【００６５】
[0066]  一形態によれば、システム９０２は電源９７０を有する。電源９７０は１つ以上のバッテリーとして実装される。一形態によれば、電源９７０は、更に、ＡＣアダプターのような外部電源、またはバッテリーを補充または再充電する給電ドッキング・クレードルも含む。
【００６６】
[0067]  一形態によれば、システム９０２は、無線周波数通信を送信および受信する機能を実行する無線機９７２を含む。無線機９７２は、システム９０２と「外部世界」との間のワイヤレス接続を、通信キャリアまたはサービス・プロバイダを介して、容易にする。無線機９７２への送信および無線機９７２からの送信は、オペレーティング・システム９６４の制御下において行われる。言い換えると、無線機９７２によって受信された通信は、オペレーティング・システム９６４を介して、アプリケーション・プログラム９５０に広げられ、そしてその逆も行うことができる。
【００６７】
[0068]  一形態によれば、視覚指示９２０は、視覚的通知を行うために使用され、および／またはオーディオ・インターフェース９７４はオーディオ変換器９２５を介して可聴通知を生成するために使用される。図示する例では、視覚指示９２０は発光ダイオード（ＬＥＤ）であり、オーディオ変換器９２５はスピーカーである。これらのデバイスは電源９７０に直接結合することができるので、アクティブにされると、プロセッサー９６０および他のコンポーネントが、バッテリー電力を保存するために電源が切られることがあっても、通知メカニズムによって指示される期間だけオンのまま留まる。ＬＥＤは、ユーザーがデバイスの電源投入ステータスを指示する行為を行うまで、無期限にオンのまま留まるようにプログラミングすることができる。オーディオ・インターフェース９７４は、可聴信号をユーザーに供給し、可聴信号をユーザーから受信するために使用される。例えば、オーディオ変換器９２５に結合されることに加えて、オーディオ・インターフェース９７４は、通話を容易にするため等で、可聴入力を受信するためにマイクロフォンに結合することもできる。一形態によれば、システム９０２は、更に、ビデオ・インターフェース９７６も含む。ビデオ・インターフェース９７６は、内蔵カメラ９３０の動作が、静止画像、ビデオ・ストリーム等を記録することを可能にする。
【００６８】
[0069]  一形態によれば、システム９０２を実装する移動体コンピューティング・デバイス９００は、追加の特徴または機能を有する。例えば、移動体コンピューティング・デバイス９００は、磁気ディスク、光ディスク、またはテープのような、追加のデーター記憶デバイス（リムーバブルおよび／または非リムーバブル）を含む。このような追加のストレージは、図９Ｂでは、不揮発性記憶エリア９６８によって例示されている。
【００６９】
[0070]  一形態によれば、移動体コンピューティング・デバイス９００によって生成またはキャプチャされ、システム９０２を介して格納されたデーター／情報は、前述のように、移動体コンピューティング・デバイス９００にローカルに格納される。他の形態によれば、無線機９７２を介してデバイスによってアクセス可能な任意の数の記憶媒体上に、または、有線接続を介して、移動体コンピューティング・デバイス９００と、この移動体コンピューティング・デバイス９００に関連する別個のコンピューティング・デバイス、例えば、インターネットのような分散型コンピューティング・ネットワークにおけるサーバー・コンピューターとの間で、データーが格納される。認められて当然であるが、このようなデーター／情報は移動体コンピューティング・デバイス９００によって、無線機９７２を介してまたは分散型コンピューティング・ネットワークを介してアクセス可能である。同様に、一形態によれば、このようなデーター／情報は、電子メールおよび協調データー／情報共有システムを含む、周知のデーター／情報転送および記憶手段にしたがって、格納および使用のために、コンピューティング・デバイス間で容易に転送される。
【００７０】
[0071]  例えば、以上では、ブロック図および／または形態による方法、システム、およびコンピューター・プログラム製品の動作図を参照しながら、実現例について説明した。ブロック内に記した機能／アクトは、いずれのフロー・チャートにおいても、示される順序以外で行われてもよい。例えば、連続して示される２つのブロックが、実際には、実質的に同時に実行されてもよく、またはこれらのブロックが、関与する機能／アクトに依存して、逆の順序で実行されてもよい場合もある。
【００７１】
[0072]  本願において示した１つ以上の例の説明および図示は、特許請求する範囲を限定または制限することは全く意図していない。本願において示される形態、例、および詳細は、所持を伝えるため、そして他者が最良の態様を行い使用することを可能にするには十分であると考えられる。実現例は、本願において示したいずれの形態、例、または詳細にも限定されるように解釈してはならない。組み合わせて説明されたかまたは別々に示され説明されたかには関係なく、種々の特徴（構造的および方法論的の双方）は、特定の１組の特徴を有する例を生成するために選択的に含まれるまたは外されることを意図している。以上、本願の説明および図示が行われたので、当業者は、本願において具体化された全体的な発明概念の更に広い形態の主旨に該当しその広い範囲から逸脱しない変形、変更、代替例を構想することができよう。
【図１】
2020509478.tif 000003
【図２】
2020509478.tif 000004
【図３】
2020509478.tif 000005
【図４】
2020509478.tif 000006
【図５】
2020509478.tif 000007
【図６】
2020509478.tif 000008
【図７】
2020509478.tif 000009
【図８】
2020509478.tif 000010
【図９Ａ】
2020509478.tif 000011
【図９Ｂ】
2020509478.tif 000012
【国際調査報告】
2020509478.tif 000013
2020509478.tif 000014