(57)【要約】  開示された、ログエントリを匿名化するコンピュータ実装方法は、（１）少なくとも１つのデバイスで実行中の少なくとも１つのプロセスによって実施されたイベントを記述するログエントリのグループからデータパターンを検出することと、（２）データパターンにおいて、可変データを含むログエントリ内の少なくとも１つのデータフィールドを識別することと、（３）可変データを含むデータフィールドを評価して、データフィールドが機密データを含むかどうかを判定することと、（４）データフィールドが機密データを含むかどうかの判定に応じて、データ匿名化ポリシをデータフィールドに適用して、ログエントリを匿名化することと、を含み得る。様々な他の方法、システム、及びコンピュータ可読媒体も開示される。
2019500679.tif 000002
【特許請求の範囲】
【請求項１】
ログエントリを匿名化するコンピュータ実装方法であって、前記方法の少なくとも一部は少なくとも１つのプロセッサを備えるコンピューティングデバイスによって実施され、
少なくとも１つのデバイス上で実行中の少なくとも１つのプロセスによって実施されたイベントを記述する複数のログエントリからデータパターンを検出することと、
前記データパターンにおいて、可変データを含む前記複数のログエントリ内の少なくとも１つのデータフィールドを識別することと、
可変データを含む前記データフィールドを評価して、前記データフィールドが機密データを含むかどうかを判定することと、
前記データフィールドが機密データを含むかどうかを判定することに応じて、データ匿名化ポリシを前記データフィールドに適用して、前記複数のログエントリを匿名化することと、を含む、コンピュータ実装方法。
【請求項２】
前記複数のログエントリから前記データパターンを検出することが、前記複数のログエントリのメッセージテンプレート学習分析を実施することを含む、請求項１に記載のコンピュータ実装方法。
【請求項３】
前記複数のログエントリから前記データパターンを検出することが、前記複数のログエントリの最長共通部分列分析を実施することを含む、請求項１に記載のコンピュータ実装方法。
【請求項４】
追加のデバイスで実行する追加のプロセスからログエントリを受信することと、
前記ログエントリを、前記複数のログエントリ内で予め識別されたデータパターンのセット内のデータパターンとマッチングすることと、
前記データパターンに対応するデータ匿名化ポリシを識別することと、
前記対応するデータ匿名化ポリシを適用することによって前記ログエントリを匿名化することと、を更に含む、請求項１に記載のコンピュータ実装方法。
【請求項５】
前記データパターンが匿名化されたと見なされるために、前記データパターンが発見される必要があるプライバシコンテキストの閾値数を決定することと、
複数のプライバシコンテキストから前記データパターンを検出することと、
前記データパターンを含む前記プライバシコンテキストの数が、前記プライバシコンテキスト閾値を超えていると判定することと、
前記データパターンを含む前記プライバシコンテキストの数が、前記プライバシコンテキスト閾値を超えているという判定に応じて、前記データパターンが匿名化されていると判定することと、を更に含む、請求項１に記載のコンピュータ実装方法。
【請求項６】
前記データフィールド評価は、前記データフィールドが機密データを含むと判定し、
前記データ匿名化ポリシが、
一方向ハッシュを使用して前記データフィールドを暗号化することと、
可逆的暗号化を使用して前記データフィールドを暗号化することと、
前記データフィールドをランダムデータと置き換えることと、
前記データフィールドを静的データと置き換えることと、
前記データフィールドを削除することと、
前記データフィールドを一般化することと、のうち少なくとも１つによって前記データフィールドを匿名化する、請求項１に記載のコンピュータ実装方法。
【請求項７】
前記データフィールド評価は、前記データフィールドが列挙データを含む、したがって機密データを含まないと判定し、
前記データ匿名化ポリシが、前記データフィールドを修正しない、請求項１に記載のコンピュータ実装方法。
【請求項８】
前記データフィールド評価は、前記データフィールドが、機密データを含まないことが知られているデータ型のデータを含むと判定し、
前記データ匿名化ポリシが、前記データフィールドを修正しない、請求項１に記載のコンピュータ実装方法。
【請求項９】
前記データフィールド評価は、前記データフィールドが以前に機密データを含まないと判定されたとしても、前記データフィールドが現在機密データを含むと判定し、
前記データ匿名化ポリシは、複数の既存のログエントリ内の前記データフィールドを匿名化する、請求項１に記載のコンピュータ実装方法。
【請求項１０】
ログエントリを匿名化するシステムであって、
少なくとも１つのデバイス上で実行中の少なくとも１つのプロセスによって実施されたイベントを記述する複数のログエントリからデータパターンを検出する、メモリに記憶されたパターンモジュールと、
前記データパターンにおいて、可変データを含む前記複数のログエントリ内の少なくとも１つのデータフィールドを識別する、メモリに記憶されたフィールド分析モジュールと、
可変データを含む前記データフィールドを評価して、前記データフィールドが機密データを含むかどうかを判定する、メモリに記憶されたデータ分析モジュールと、
前記データフィールドが機密データを含むかどうかの判定に応じて、データ匿名化ポリシを前記データフィールドに適用して、前記複数のログエントリを匿名化する、メモリに記憶された匿名化モジュールと、
前記パターンモジュール、前記フィールド分析モジュール、前記データ分析モジュール、及び前記匿名化モジュールを実行するように構成されている、少なくとも１つの物理的プロセッサと、を備えるシステム。
【請求項１１】
前記パターンモジュールが、前記複数のログエントリのメッセージテンプレート学習分析を実施することによって、前記複数のログエントリから前記データパターンを検出する、請求項１０に記載のシステム。
【請求項１２】
前記パターンモジュールが、前記複数のログエントリの最長共通部分列分析を実施することによって、前記複数のログエントリから前記データパターンを検出する、請求項１０に記載のシステム。
【請求項１３】
追加のデバイスで実行する追加のプロセスからログエントリを受信することと、
前記ログエントリを、前記複数のログエントリ内で予め識別されたデータパターンのセット内のデータパターンとマッチングすることと、
前記データパターンに対応するデータ匿名化ポリシを識別することと、
前記対応するデータ匿名化ポリシを適用することによって前記ログエントリを匿名化することと、を更に含む、請求項１０に記載のシステム。
【請求項１４】
前記データパターンが匿名化されたと見なされるために、前記データパターンが発見される必要があるプライバシコンテキストの閾値数を決定することと、
複数のプライバシコンテキストから前記データパターンを検出することと、
前記データパターンを含む前記プライバシコンテキストの数が、前記プライバシコンテキスト閾値を超えていると判定することと、
前記データパターンを含む前記プライバシコンテキストの数が、前記プライバシコンテキスト閾値を超えているという判定に応じて、前記データパターンが匿名化されていると判定することと、を更に含む、請求項１０に記載のシステム。
【請求項１５】
前記データフィールド評価は、前記データフィールドが機密データを含むと判定し、
前記データ匿名化ポリシが、
一方向ハッシュを使用して前記データフィールドを暗号化することと、
可逆的暗号化を使用して前記データフィールドを暗号化することと、
前記データフィールドをランダムデータと置き換えることと、
前記データフィールドを静的データと置き換えることと、
前記データフィールドを削除することと、
前記データフィールドを一般化することと、のうち少なくとも１つによって前記データフィールドを匿名化する、請求項１０に記載のシステム。
【請求項１６】
前記データフィールド評価は、前記データフィールドが列挙データを含む、したがって機密データを含まないと判定し、
前記データ匿名化ポリシが、前記データフィールドを修正しない、請求項１０に記載のシステム。
【請求項１７】
前記データフィールド評価は、前記データフィールドが、機密データを含まないことが知られているデータ型のデータを含むと判定し、
前記データ匿名化ポリシが、前記データフィールドを修正しない、請求項１０に記載のシステム。
【請求項１８】
前記データフィールド評価は、前記データフィールドが以前に機密データを含まないと判定されたとしても、前記データフィールドが現在機密データを含むと判定し、
前記データ匿名化ポリシは、複数の既存のログエントリ内の前記データフィールドを匿名化する、請求項１０に記載のシステム。
【請求項１９】
１つ以上のコンピュータ可読命令を含む非一時的コンピュータ可読媒体であって、前記命令は、コンピューティングデバイスの少なくとも１つのプロセッサによって実行されるとき、前記コンピューティングデバイスに、
少なくとも１つのデバイス上で実行中の少なくとも１つのプロセスによって実施されたイベントを記述する複数のログエントリからデータパターンを検出させ、
前記データパターンにおいて、可変データを含む前記複数のログエントリ内の少なくとも１つのデータフィールドを識別させ、
可変データを含む前記データフィールドを評価して、前記データフィールドが機密データを含むかどうかを判定させ、
前記データフィールドが機密データを含むかどうかを判定することに応じて、データ匿名化ポリシを前記データフィールドに適用して、前記複数のログエントリを匿名化させる、非一時的コンピュータ可読媒体。
【請求項２０】
前記１つ以上のコンピュータ可読命令が、前記コンピューティングデバイスに、前記複数のログエントリのメッセージテンプレート学習分析を実施することによって前記複数のログエントリから前記データパターンを検出させる、請求項１９に記載の非一時的コンピュータ可読媒体。
【発明の詳細な説明】
【背景技術】
【０００１】
セキュリティシステムログなどのシステムオペレーションログは、多くの場合、情報システムのオペレーションに関する有用なデータを含む。例えば、システム管理者は、セキュリティログを監視して、セキュリティシステムが正常に動作していることを確認し、オペレーション若しくは性能の問題を診断し、システムの弱点を特定し、セキュリティ脅威の発生源を特定し、及び／又はセキュリティの裁判分析を実施することができる。管理者はまた、セキュリティログエントリを利用して、新しいタイプのセキュリティ脅威を発見することもできる。更に、データ分析者は、システムオペレーションログを利用して、ユーザーの行動及び／又はシステム性能を分析することができる。
【０００２】
しかしながら、システムオペレーションログは、個人識別情報（ＰＩＩ）又は基盤関連情報（ネットワークアドレス又はサーバ名など）などの機密情報を高い頻度で含む。残念ながら、この情報は、攻撃者が内部ネットワークをマップし、脆弱性を探せるようにする恐れがある。ログ情報は、仕事のスケジュール、個人的な関係、又はソーシャルエンジニアリング攻撃で使用され得る他の情報も暴露する恐れがある。したがって、保護されないままである場合、セキュリティログは、標的型攻撃で使用される情報源になる恐れがある。したがって、本開示は、ログエントリを保護するための追加の及び改善されたシステム及び方法に対する必要性を特定し、かつ取り組む。
【発明の概要】
【０００３】
より詳細に後述するように、本開示は、機密情報を含み得るログエントリ内のフィールドを識別して、次に機密情報を匿名化するデータ匿名化ポリシを適用することによってログエントリを匿名化する様々なシステム及び方法を説明する。本明細書に記載されるシステム及び方法は、様々な機械学習法を適用して、機密情報を識別すること、及び他の可変データから機密情報を区別することができる。本明細書に記載されるシステム及び方法はまた、新しいエントリについてデータログを監視し、新しいエントリが機密情報を含むかどうか判定し、機密情報を服有無新しいデータフィールドが識別される存在するログファイルエントリを匿名化することもできる。
【０００４】
一例では、ログエントリを匿名化するコンピュータ実装方法は、（１）１つ以上のデバイスで実行中の１つ以上のプロセスによって実施されたイベントを記述するログエントリのグループからデータパターンを検出することと、（２）データパターンにおいて、可変データを含むログエントリ内の１つ以上のデータフィールドを識別することと、（３）可変データを含むデータフィールドを評価して、データフィールドが機密データを含むかどうかを判定することと、（４）データフィールドが機密データを含むかどうかの判定に応じて、データ匿名化ポリシをデータフィールドに適用して、ログエントリを匿名化することと、を含み得る。
【０００５】
いくつかの例では、ログエントリからのデータパターンの検出は、ログエントリのメッセージテンプレート学習分析（message−template−learning analysis）を実施することを含み得る。いくつかの例では、ログエントリからのデータパターンの検出は、ログエントリの最長共通部分列分析を実施することを含み得る。一実施形態において、コンピュータ実装方法は、（１）追加のデバイス又は複数デバイスで実行する追加のプロセスからログエントリを受信することと、（２）ログエントリを、ログエントリ内で予め識別されたデータパターンのセット内のデータパターンとマッチングすることと、（３）データパターンに対応するデータ匿名化ポリシを識別することと、（４）対応するデータ匿名化ポリシを適用することによってログエントリを匿名化することと、を更に含み得る。
【０００６】
一実施形態において、コンピュータ実装方法は、（１）データパターンが匿名化されたと見なされるために、データパターンが発見される必要があるプライバシコンテキストの閾値数を決定することと、（２）プライバシコンテキストのグループからデータパターンを検出することと、（３）データパターンを含むプライバシコンテキストの数が、プライバシコンテキスト閾値を超えていると判定することと、（４）データパターンを含むプライバシコンテキストの数が、プライバシコンテキスト閾値を超えているという判定に応じて、データパターンが匿名化されていると判定することと、を更に含み得る。一実施形態において、データフィールド評価は、データフィールドが機密データを含むことを判定し、データ匿名化ポリシは、データフィールドを、（１）一方向ハッシュを使用してデータフィールドを暗号化することと、（２）可逆的暗号化を使用してデータフィールド暗号化することと、（３）データフィールドをランダムデータと置き換えることと、（４）データフィールドを静的データと置き換えることと、（５）データフィールドを削除することと、及び／又は（６）データフィールドを一般化することと、によって匿名化する。
【０００７】
一実施形態において、データフィールド評価は、データフィールドが列挙データを含み、したがって、機密データを含まないことを判定し、データ匿名化ポリシは、データフィールドを修正しない。別の実施形態において、データフィールド評価は、データフィールドが、機密データを含まないことが知られているデータ型のデータを含むと判定し、データ匿名化ポリシは、データフィールドを修正しない。更に、データフィールド評価は、データフィールドが以前に機密データを含まないと判定されたとしても、データフィールドが現在機密データを含むと判定することができる。データ匿名化ポリシは、次に既存のログエントリのグループ内のデータフィールドを匿名化することができる。
【０００８】
一実施形態において、上述の方法を実装するシステムは、メモリ内に記憶されたいくつかのモジュール、例えば、（１）１つ以上のデバイスで実行中の１つ以上のプロセスによって実施されたイベントを記述するログエントリのグループからデータパターンを検出するパターンモジュール、（２）データパターンにおいて、可変データを含むログエントリ内の１つ以上のデータフィールドを識別するフィールド分析モジュール、（３）可変データを含むデータフィールドを評価して、データフィールドが機密データを含むかどうかを判定するデータ分析モジュール、（４）データフィールドが機密データを含むかどうかの判定に応じて、データ匿名化ポリシをデータフィールドに適用して、ログエントリを匿名化する匿名化モジュールなどを含み得る。システムはまた、パターンモジュール、フィールド分析モジュール、データ分析モジュール、及び匿名化モジュールを実行するように構成される、少なくとも１つの物理的プロセッサを備え得る。
【０００９】
いくつかの実施例では、上述の方法は、非一時的コンピュータ可読媒体上のコンピュータ可読命令としてコード化されてもよい。例えば、コンピュータ可読媒体は、コンピューティングデバイスの少なくとも１つのプロセッサによって実行されるとき、コンピューティングデバイスに、（１）１つ以上のデバイスで実行中の１つ以上のプロセスによって実施されたイベントを記述するログエントリのグループからデータパターンを検出させる、（２）データパターンにおいて、可変データを含むログエントリ内の１つ以上のデータフィールドを識別させる、（３）可変データを含むデータフィールドを評価して、データフィールドが機密データを含むかどうかを判定させる、及び（４）データフィールドが機密データを含むかどうかの判定に応じて、データ匿名化ポリシをデータフィールドに適用して、ログエントリを匿名化させる、ことができる１つ以上のコンピュータ実行可能命令を含み得る。
【００１０】
上述の実施形態のいずれかによる特徴は、本明細書に記載される一般原理に従って、互いに組み合わせて使用されてもよい。これら及び他の実施形態、特徴、及び利点は、添付の図面及び特許請求の範囲と併せて以下の発明を実施するための形態を読むことによって更に十分に理解されるだろう。
【図面の簡単な説明】
【００１１】
添付の図面は、いくつかの例示的な実施形態を図示するものであり、本明細書の一部である。以下の説明と併せて、これらの図面は、本開示の様々な原理を実証及び説明する。
【図１】ログエントリを匿名化するための例示的なシステムのブロック図である。
【図２】ログエントリを匿名化するための追加の例示的なシステムのブロック図である。
【図３】ログエントリを匿名化するための例示的な方法のフロー図である。
【図４】例示的なログデータのブロック図である。
【図５】本明細書に記載及び／又は例証される実施形態のうちの１つ以上を実装することができる例示的なコンピューティングシステムのブロック図である。
【図６】本明細書に記載及び／又は例証される実施形態のうちの１つ以上を実装することができる例示的なコンピューティングネットワークのブロック図である。
【００１２】
図面を通して、同一の参照符号及び記述は、必ずしも同一ではないが、類似の要素を示す。本明細書で説明される例示的実施形態は、様々な修正物及び代替的な形態が可能であるが、特定の実施形態が例として図面に示されており、本明細書に詳細に記載される。しかしながら、本明細書に記載される例示的実施形態は、開示される特定の形態に限定されることを意図しない。むしろ、本開示は、添付の特許請求の範囲内にある全ての修正物、等価物、及び代替物を網羅する。
【発明を実施するための形態】
【００１３】
本開示は、広義には、ログエントリを匿名化するシステム及び方法に関する。以下でより詳細に説明されるように、機械学習法を適用することによって、本明細書に記載されるシステム及び方法は、個人識別情報又は他の機密データを含むデータフィールドを識別し、選択されたデータ匿名化ポリシを適用することによってデータフィールドを匿名化し得る。データ匿名化ポリシは、データ型、所望されるセキュリティのレベル、ログファイルの将来的なデータマイニングの計画などに従うことを含み、様々な方法でカスタマイズされ得る。本明細書に記載されるシステム及び方法はまた、データ匿名化手順を適用して、データフィールド匿名化メトリックに勝ることもできる。更に、本明細書に記載されるシステム及び方法は、新しい又は既存のデータフィールド内の機密データについて新しいログエントリを連続して監視し、新しい機密情報が識別されたときにセキュリティログの既存のコレクションにデータ匿名化ポリシを再適用し得る。
【００１４】
以下で、図１、２、及び４を参照して、ログエントリを匿名化するための例示的なシステムについて詳細に説明する。対応するコンピュータ実装方法の詳細な説明も図３に関連して提供される。更に、本明細書で説明される実施形態のうちの１つ以上を実装できる例示的なコンピューティングシステム及びネットワークアーキテクチャについての詳細な説明が、それぞれ、図５及び図６と関連して提供されることになる。
【００１５】
図１は、ログエントリを匿名化するための例示的なシステム１００のブロック図である。この図に図示されるように、例示的なシステム１００は、１つ以上のタスクを実施するための１つ以上のモジュール１０２を含んでもよい。例えば、以下でより詳細に説明するように、例示的なシステム１００は、１つ以上のデバイスで実行中の１つ以上のプロセスによって実施されたイベントを記述する複数のログエントリからデータパターンを検出するパターンモジュール１０４を含み得る。例示的なシステム１００は、データパターンにおいて、可変データを含む複数のログエントリ内の１つ以上のデータフィールドを識別するフィールド分析モジュール１０６を更に含み得る。例示的なシステム１００はまた、可変データを含むデータフィールドを評価して、データフィールドが機密データを含むかどうかを判定するデータ分析モジュール１０８も含み得る。例示的なシステム１００は、データフィールドが機密データを含むかどうかの判定に応じて、データ匿名化ポリシをデータフィールドに適用して、複数のログエントリを匿名化する匿名化モジュール１１０を更に含み得る。別々の要素として図示されるが、図１のモジュール１０２のうちの１つ以上は、単一のモジュール又はアプリケーションの部分を表してもよい。
【００１６】
特定の実施形態では、図１のモジュール１０２のうち１つ以上は、コンピューティングデバイスによって実行されると、コンピューティングデバイスに１つ以上のタスクを実施させ得る、１つ以上のソフトウェアアプリケーション又はプログラムを表し得る。例えば、より詳細に後述するように、モジュール１０２のうち１つ以上は、図２に示されるデバイス（例えば、コンピューティングデバイス２０２及び／又はサーバ２０６）、図５のコンピューティングシステム５１０、並びに／又は図６の例示的なネットワークアーキテクチャ６００の部分など、１つ以上のコンピューティングデバイスに格納され、その上で動くように構成された、ソフトウェアモジュールを表してもよい。図１のモジュール１０２のうち１つ以上はまた、１つ以上のタスクを実施するように構成された１つ以上の専用コンピュータの全て又は一部を表し得る。
【００１７】
図１に示すように、例示的なシステム１００はまた、データベース１２０などの１つ以上のデータベースを含んでもよい。一例では、データベース１２０は、１つ以上のシステム操作ログ、データ匿名化ポリシ情報、システムログエントリパターンデータ、及び／又は個人識別情報などの機密データの識別を補助するデータを記憶するように構成され得る。
【００１８】
データベース１２０は、単一のデータベース若しくはコンピューティングデバイスの部分、又は複数のデータベース若しくはコンピューティングデバイスの部分を表してもよい。例えば、データベース１２０は、図２のサーバ２０６の一部、図５のコンピューティングシステム５１０、及び／又は図６の例示的なネットワークアーキテクチャ６００の部分を表し得る。あるいは、図１のデータベース１２０は、図２のサーバ２０６、図５のコンピューティングシステム５１０、及び／又は図６の例示的なネットワークアーキテクチャ６００の部分などの、コンピューティングデバイスによりアクセスされることが可能な、１つ以上の物理的に分離したデバイスを表し得る。
【００１９】
図１の例示的なシステム１００は、様々な方法で実装され得る。例えば、例示的なシステム１００の全て又は一部は、図２における例示的なシステム２００の部分を表してもよい。図２に示されるように、システム２００は、ネットワーク２０４を介してサーバ２０６と通信するコンピューティングデバイス２０２を含んでもよい。一実施例では、コンピューティングデバイス２０２は、モジュール１０２のうち１つ以上を用いてプログラムされてもよく、かつ／又はデータベース１２０内のデータの全て若しくは一部分を記憶することができる。加えて、又は代替的に、サーバ２０６は、モジュール１０２のうちの１つ以上を用いてプログラムされてもよく、及び／又はデータベース１２０のデータの全て若しくは一部を記憶してもよい。
【００２０】
一実施形態では、図１のモジュール１０２のうち１つ以上は、コンピューティングデバイス２０２及び／又はサーバ２０６のうち少なくとも１つのプロセッサによって実行されると、コンピューティングデバイス２０２及び／又はサーバ２０６がログエントリを匿名化するのを可能にし得る。例えば、より詳細に以下に説明されるように、モジュール１０２のうちの１つ以上は、コンピューティングデバイス２０２及び／又はサーバ２０６に、ログエントリを匿名化させ得る。例えば、より詳細に後述するように、パターンモジュール１０４は、１つ以上のデバイスで実行中の１つ以上のプロセスによって実施されたイベントを記述する複数のログエントリ２０８からデータパターン２１０を検出し得る。フィールド分析モジュール１０６は、次に、データパターン２１０において、可変データを含む複数のログエントリ２０８内の１つ以上のデータフィールド２１２を識別し得る。データ分析モジュール１０８は、次に、可変データを含むデータフィールド２１２を評価して、データフィールド２１２が機密データを含むかどうかを判定し得る。最終的に、匿名化モジュール１１０は、データフィールド２１２が機密データを含むかどうかの判定に応じて、データ匿名化ポリシ２１４をデータフィールド２１２に適用して、複数のログエントリ２０８を匿名化して、匿名化されたログエントリ２１６を作製し得る。
【００２１】
コンピューティングデバイス２０２は、一般に、コンピュータ実行可能命令を読み取ることができる任意のタイプ又は形態のコンピューティングデバイスを表す。コンピューティングデバイス２０２の例としては、非限定的に、ノートブック、タブレット、デスクトップ、サーバ、携帯電話、携帯情報端末（ＰＤＡ）、マルチメディアプレーヤー、埋め込みシステム、ウェアラブルデバイス（例えば、スマートウォッチ、スマートグラスなど）、ゲーム機、それらの１つ以上の組み合わせ、図５の例示的なコンピューティングシステム５１０、又は他の任意の好適なコンピューティングデバイスが挙げられる。
【００２２】
サーバ２０６は一般的に、データを受信、記憶、及び／又は比較することが可能な任意のタイプ又は形態のコンピューティングデバイスを表す。サーバ２０６の例としては、限定することなく、様々なデータベースサービスを提供するように、かつ／又はある特定のソフトウェアアプリケーションを作動させるように構成されたアプリケーションサーバ及びデータベースサーバが挙げられる。
【００２３】
ネットワーク２０４は、一般に、通信若しくはデータ転送を容易にすることが可能な、任意の媒体又はアーキテクチャを表す。ネットワーク２０４の例としては、非限定的に、イントラネット、広域ネットワーク（Wide Area Network）（ＷＡＮ）、ローカルエリアネットワーク（Local Area Network）（ＬＡＮ）、パーソナルエリアネットワーク（Personal Area Network）（ＰＡＮ）、インターネット、電力線通信（ＰＬＣ）、セルラーネットワーク（例えば、Ｇｌｏｂａｌ  Ｓｙｓｔｅｍ  ｆｏｒ  Ｍｏｂｉｌｅ  Ｃｏｍｍｕｎｉｃａｔｉｏｎｓ（ＧＳＭ（登録商標））ネットワーク）、図６６の例示的なネットワークアーキテクチャ６００などが挙げられる。ネットワーク２０４は、無線接続又は有線接続を使用して、通信又はデータ転送を容易にしてもよい。一実施形態では、ネットワーク２０４は、コンピューティングデバイス２０２とサーバ２０６との間の通信を容易にしてもよい。
【００２４】
図３は、ログエントリを匿名化するための例示的なコンピュータ実装方法３００のフロー図である。図３に示されるステップは、任意の好適なコンピュータ実行可能コード及び／又はコンピューティングシステムによって実施されてもよい。いくつかの実施形態では、図３に示すステップは、図１のシステム１００、図２のシステム２００、図５のコンピューティングシステム５１０、及び／又は図６の例示的なネットワークアーキテクチャ６００の部分の構成要素のうち１つ以上によって実施されてもよい。
【００２５】
図３に示すように、ステップ３０２で、本明細書に記載されるシステムの１つ以上は、１つ以上のデバイスで実行中の１つ以上のプロセスによって実施されたイベントを記述する複数のログエントリからデータパターンを検出し得る。例えば、パターンモジュール１０４は、図２のコンピューティングデバイス２０２の一部として、１つ以上のデバイスで実行中の１つ以上のプロセスによって実施されたイベントを記述する複数のログエントリ２０８からデータパターン２１０を検出し得る。ログエントリ２０８を含むログファイルは、コンピューティングデバイス２０２、サーバ２０６、及び／又は１つ以上の他のコンピューティングデバイス上に常駐してもよい。更に、ログエントリは、それらのデバイスのいずれかで実行中の１つ以上のプロセスによって生成されていてもよい。
【００２６】
パターンモジュール１０４は、様々な方法でログエントリからデータパターンを検出し得る。例えば、いくつかのプロセスに関して、特に広く使用されるプログラムの場合、パターンモジュール１０４は、プログラム文書又は他の一般的に利用可能なソースからログエントリのデータパターンを取得することができる。他の例では、パターンモジュール１０４は、既存のログエントリでテキスト分析プログラムを使用して、ログエントリの固定及び可変部分を識別し得る。このアプローチは、わずかな可変データフィールド又は少数のログエントリフォーマットを使用してプログラムのデータパターンを識別するのに十分であり得る。
【００２７】
列挙データ及び個人を識別できる情報の混在を含む多数のログエントリフォーマット又は多くの可変データフィールドを有するログファイルなどの容易に認識可能ではない構造を有するログファイルの場合、パターンモジュール１０４は、様々な機械学習アルゴリズムのいずれかを適用して、ログエントリからデータパターンを検出し得る。いくつかの例では、パターンモジュール１０４は、複数のログエントリのメッセージテンプレート学習分析を実施することによって、複数のログエントリからデータパターンを検出し得る。「メッセージテンプレート学習分析」という用語は、本明細書で使用するとき、概ね、共通の単語の組み合わせを用いてテキストをメッセージ変異形に分解するための方法を指す。
【００２８】
図４は、パターンモジュール１０４が、メッセージテンプレート学習分析で使用してログエントリフォーマットを検出し得る例示的なログエントリデータ４００のブロック図である。ログエントリデータ４００は、他のログエントリと比較すると、共通して多くの単語を有すると識別されたログエントリ４０２のセットを含み得る。この例では、ログエントリ変異形ツリー（variant tree）４０４は、グループに含まれるログエントリフォーマットの階層を表すように構成されているデータ構造を表す。したがって、メッセージは、単語がメッセージ内に出現するとき、単語と関連している。例えば、メッセージｍ１、ｍ２、及びｍ３は、単語「Ａｖａｉｌａｂｌｅ」を含み、これらのメッセージは、ログエントリ変異形ツリー４０４内の単語「Ａｖａｉｌａｂｌｅ」を表すノードと関連する。それぞれの親ノードが与えられると、パターンモジュール１０４は、関連する最も頻度の高い単語の組み合わせを探し、その組み合わせを子ノードにし得る。パターンモジュール１０４は、全てのメッセージが関連付けられるまでこのプロセスを繰り返してもよい。パターンモジュール１０４は、次に多数の変異形を含むツリーの枝を除去してもよい。例えば、ログエントリ４０２内のメッセージは、多数のＩＰアドレス及び仮想経路番号を含み得る。パターンモジュール１０４は、可変データを含むデータフィールドとしてこれらの変異形のグループを識別し得る。
【００２９】
いくつかの例では、パターンモジュール１０４は、複数のログエントリの最長共通部分列分析を実施することによって、複数のログエントリからデータパターンを検出し得る。「最長共通部分列分析」という用語は、本明細書で使用するとき、概ね、メッセージのセット内の単語の最長共通配列を発見するための、いくつかのテキスト分析ユーティリティプログラムの基準として使用されるアルゴリズムを指す。最長共通部分列分析は、メッセージ内で単語が出現する順序からなる点でメッセージテンプレート学習分析と異なり、メッセージテンプレート学習は、単語が順序に関わらず出現するかどうかにのみ関係する。
【００３０】
ステップ３０４で、本明細書に記載されるシステムの１つ以上は、データパターンにおいて、可変データを含む複数のログエントリ内の１つ以上のデータフィールドを識別し得る。例えば、フィールド分析モジュール１０６は、図２のコンピューティングデバイス２０２の一部として、データパターン２１０において、可変データを含む複数のログエントリ２０８内の１つ以上のデータフィールド２１２を識別し得る。
【００３１】
フィールド分析モジュール１０６は、様々な方法で可変データを含むデータフィールドを識別し得る。例えば、フィールド分析モジュール１０６は、ログエントリのセット内のデータパターンを識別するためにステップ３０２においてパターンモジュール１０４によって実施される分析の一部として、可変データを含むデータフィールドを識別し得る。いくつかのプログラムの場合、フィールド分析モジュール１０６は、プログラム文書から可変データを含むデータフィールドを識別し得る。他の例では、フィールド分析モジュール１０６は、既存のログエントリ上でテキスト分析プログラム（ＵＮＩＸ（登録商標）又はＬＩＮＵＸシステムのｄｉｆｆユーティリティなど）を使用して可変データを含むデータフィールドを識別し得る。
【００３２】
いくつかの例では、フィールド分析モジュール１０６は、前述のように、メッセージテンプレート学習分析及び最長共通配列分析などの機械学習アルゴリズムを使用して可変データを含むデータフィールドを識別し得る。例えば、図４に示すように、メッセージテンプレート学習分析は、メッセージｍ１〜ｍ１１内のＩＰアドレス及び経路番号が、多数のテキスト変異形ノードをログエントリ変異形ツリー４０４に導入し、したがって可変データを含むデータフィールドを表すと判定し得る。
【００３３】
ステップ３０６で、本明細書に記載されるシステムの１つ以上は、可変データを含むデータフィールドを評価して、データフィールドが機密データを含むかどうかを判定し得る。例えば、データ分析モジュール１０８は、図２のコンピューティングデバイス２０２の一部として、可変データを含むデータフィールド２１２を評価して、データフィールド２１２が機密データを含むかどうかを判定し得る。
【００３４】
「機密データ」という語句は、本明細書で使用するとき、概ね、公開が個人又は組織を害することとなり得る独自仕様データを指す。機密データには、個人識別情報（ＰＩＩ）、例えば内部ＩＰアドレス、ユーザー名、若しくはサーバ名などの基盤関連データ、又は法律、契約、若しくは開示に対する組織ポリシによって保護されたデータを挙げることができる。
【００３５】
データ分析モジュール１０８は、様々な方法で可変データを含むデータフィールドが機密データを含むと判定し得る。例えば、プログラム文書又は他の一般的に利用可能な情報は、ログエントリ内の特定のデータフィールドが機密データを含み得ることを示し得る。別の例では、データ分析モジュール１０８は、データベース又はネットワークディレクトリサービスを検索して、データフィールドが、個人識別情報、ユーザー名、サーバ名などを含むかどうかを判定し得る。別の例では、データ分析モジュール１０８は、ネットワーク診断を使用して、データフィールドが、組織にとって内部的なＩＰアドレスなどのネットワーク基盤情報を含むかどうかを判定し得る。データ分析モジュール１０８は、外部ＩＰアドレスは機密情報を構成しないが、内部ＩＰアドレスは機密情報を構成すると判定し得る。
【００３６】
ステップ３０８で、本明細書に記載されるシステムの１つ以上は、データフィールドが機密データを含むかどうかの判定に応じて、データ匿名化ポリシをデータフィールドに適用して、複数のログエントリを匿名化し得る。例えば、匿名化モジュール１１０は、図２のコンピューティングデバイス２０２の一部として、データフィールド２１２が機密データを含むかどうかの判定に応じて、データ匿名化ポリシ２１４をデータフィールド２１２に適用して、複数のログエントリ２０８を匿名化して、匿名化されたログエントリ２１６を作製し得る。
【００３７】
匿名化モジュール１１０は、様々な方法でデータ匿名化ポリシをデータフィールドに適用し得る。例えば、匿名化モジュール１１０は、データ型に応じて、同じデータ匿名化ポリシを全ての機密データに適用する、又は異なるデータ匿名化ポリシを適用することができる。一実施形態において、データフィールド評価は、データフィールドが機密データを含むと判定し得る。この実施形態では、データ匿名化ポリシは、１つ以上のデータ匿名化技術を使用してデータフィールドを匿名化し得る。データ匿名化技術の選択は、例えば、データフィールドに要求されるセキュリティのレベル、データフィールド内の一部の情報をログエントリのその後の分析用に保存するべきかどうか、又は他の任意の基準に応じて異なり得る。
【００３８】
一例では、匿名化モジュール１１０は、一方向ハッシュを使用してデータフィールドを暗号化することによってデータフィールドを匿名化し得る。一方向ハッシュの使用は、開示から機密データを保護しながら、ログエントリのその後の分析を容易にし得る。ハッシュアルゴリズムは、同じハッシュ値に対して、アルゴリズムが適用されるたびに同じデータを生成するので、データのハッシュは、各事例において同じハッシュ値が同じソーステキストを指す情報を、ソーステキストを開示しないで保存することができる。例えば、ＭＤ５ハッシュアルゴリズムは、ユーザー名ＫＰＡＵＬＳＥＮに対してハッシュ値「ｄ０ｄ４７４２ｅ５ｂｅｂ９３５ｃｆ３２７２ｃ４ｅ７７２１５ｆ１８」を生成する。その後にログエントリを分析する人物は、ユーザー名を知らないで、そのハッシュ値が毎回同じユーザーを指すことを認識することができる。
【００３９】
別の例では、匿名化モジュール１１０は、可逆的暗号化を使用してデータフィールドを暗号化することによってデータフィールドを匿名化し得る。ハッシュと同様に、可逆的暗号化アルゴリズムを使用したデータフィールドの匿名化は、ソーステキストを開示しないで、暗号化された値とソーステキストとの間の対応を保存し得る。しかしながら、可逆的暗号化を用いて、信頼されているデータ分析者は、秘密暗号鍵を使用して暗号化されたテキストを復号して、ソーステキストを再作成し得る。
【００４０】
別の例では、匿名化モジュール１１０は、データフィールドをランダムデータに置き換えることによって、データフィールドを匿名化し得る。このような方法で、匿名化モジュール１１０は、ハッシュと同様に、匿名化されたデータとソースデータとの間の関係を維持しないでデータフィールド内の機密データを保護し得る。ランダムデータを使用したデータフィールドの匿名化は、データフィールドが可変データを含む情報を更に保存する。上述のように、メッセージテンプレート学習のような機械学習アルゴリズムは、ログエントリを分析するプロセスで可変データフィールドを識別し得る。
【００４１】
別の例では、匿名化モジュール１１０は、データフィールドを一般化することによって、データフィールドを匿名化し得る。データの一般化は、データ自体を開示せずに特定データのカテゴリを識別する一般的なデータと特定の機密データを置き換える匿名化技術である。例えば、匿名化モジュール１１０は、内部ＩＰアドレス「２０８．６５．１３．１５」を「２０８．６５．１３．ＸＸＸ．」として匿名化し得る。匿名化されたデータログを分析する人物は、特定のデバイスではなく、コンピューティングデバイスのサブネットワークを識別することができるようになる。別の例では、匿名化モジュール１１０は、ユーザー名を、彼らが働く部署の名前と置き換え得る。
【００４２】
一部の単純な匿名化技術は、機密データを有効に匿名化するが、その後の分析用の情報を殆ど又は全く保存しない。一例では、匿名化モジュール１１０は、データフィールドを静的データに置き換えることによって、データフィールドを匿名化し得る。例えば、匿名化モジュール１１０は、ＩＰアドレスを文字列「［ＩＰ  Ａｄｄｒｅｓｓ］」と置き換え得る。別の例では、匿名化モジュール１１０は、単にデータフィールドを削除することによって、データフィールドを匿名化し得る。
【００４３】
一実施形態において、本明細書に記載されるシステムは、統計的経験則を使用して、データ匿名化ポリシが所望のレベルの匿名化を達成したかどうかを判定し得る。例えば、本明細書に記載されるシステムは、（１）データパターンが匿名化されたと見なされるために、データパターンが発見される必要があるプライバシコンテキストの閾値数を決定する、（２）複数のプライバシコンテキストからデータパターンを検出する、（３）データパターンを含むプライバシコンテキストの数が、プライバシコンテキスト閾値を超えていると判定する、及び（４）データパターンを含むプライバシコンテキストの数が、プライバシコンテキスト閾値を超えているという判定に応じて、データパターンが匿名化されていると判定することができる。本明細書で使用するとき、「プライバシコンテキスト」という用語は、概ね、匿名化される必要がある個人情報を含む環境を指す。例えば、一企業からのログファイルは、プライバシコンテキストであり得る。十分な数のプライバシコンテキストからデータパターンを発見した場合、データパターンは、個人を識別できる情報がない、したがって十分に匿名化されていると見なされてもよい。例えば、匿名化モジュール１１０は、図２のコンピューティングデバイス２０２の一部として、データパターンがプライバシコンテキストの５０％から発見された場合、データパターンが十分に匿名化されていると判定し得る。
【００４４】
一実施形態において、データフィールド評価は、データフィールドが列挙データを含む、したがって機密データを含まないと判定し得る。この実施形態では、データ匿名化ポリシは、データフィールドを修正し得ない。例えば、データ分析モジュール１０８は、図２のコンピューティングデバイス２０２の一部として、データフィールドが可変データを含むが、変異形の数が比較的小さく、フィールドが可能性のある値をごくわずか有する列挙データを含むことを示すと判定してもよい。例えば、データ分析モジュール１０８は、データフィールドが「Ｉｎｓｔａｌｌｅｄ」、「Ｒｅｆｒｅｓｈｅｄ」、及び「Ｕｎｉｎｓｔａｌｌｅｄ」という値だけを含み、データフィールドを匿名化するため更なる動作は必要ないと判定し得る。
【００４５】
別の実施形態において、データフィールド評価は、データフィールドが、機密データを含まないことが知られているデータ型のデータを含むと判定し得る。この実施形態では、データ匿名化ポリシは、データフィールドを修正し得ない。例えば、プログラム文書又は他の一般的に利用可能なソースは、データフィールドが、機密データであると見なされない特定のデータ型のデータを含むこと、及びデータフィールドのデータ匿名化ポリシが、任意の更なる動作をとって、データフィールドを匿名化する必要がないことを示し得る。
【００４６】
一実施形態において、本明細書に記載されるシステムは、追加される新しいエントリについてログファイルを監視し、必要に応じてデータ匿名化ポリシを適用してログエントリを匿名化することができる。例えば、本明細書に記載されるシステムは、（１）追加のデバイスで実行する追加のプロセスからログエントリを受信する、（２）ログエントリを、複数のログエントリ内で予め識別されたデータパターンのセット内のデータパターンとマッチングする、（３）データパターンに対応するデータ匿名化ポリシを識別する、及び（４）対応するデータ匿名化ポリシを適用することによってログエントリを匿名化することができる。例えば、パターンモジュール１０４は、図２のコンピューティングデバイス２０２の一部として、デバイスからログエントリを受信し、ログエントリのデータパターンが予め識別されたデータパターンにマッチすると判定し得る。匿名化モジュール１１０は、次に識別されたデータパターンに対応するデータ匿名化ポリシを適用して、ログエントリを匿名化し得る。
【００４７】
一実施形態において、データフィールド評価は、データフィールドが以前に機密データを含まないと判定されたとしても、データフィールドが現在機密データを含むと判定することができる。この例では、データ匿名化ポリシは、複数の既存のログエントリのデータフィールドを匿名化することができる。例えば、新しいエントリについてログファイルを監視しながら、本明細書に記載されるシステムは、列挙データ又は他の非機密データを含むと以前に判定されたフィールド内の機密データを識別することができる。具体的には、匿名化モジュール１１０は、図２のコンピューティングデバイス２０２の一部として、新しいログエントリ及び既存のログエントリ内のデータフィールドを匿名化して、所望のレベルのデータ匿名化を達成し得る。
【００４８】
より詳細に上述されるように、本明細書に記載されるシステム及び方法は、機密情報を含むデータフィールドをまず識別し、次にデータ匿名化ポリシを適用することによって、ログエントリを匿名化して、機密データを匿名化し得る。本明細書に記載されるシステム及び方法は、可変データを含むログエントリ内のデータフィールドを識別するために機械学習アルゴリズム又は他の技術を適用し得る。本明細書に記載されるシステム及び方法はまた、様々な技術を適用して、データフィールド内部の機密データも識別し得る。更に、本明細書に記載されるシステム及び方法は、データ匿名化ポリシを選択して、様々なレベルのデータセキュリティを提供する、又はログエントリのその後の分析を容易にすることができる。本明細書に記載されるシステム及び方法はまた、データ匿名化手順を評価して、手順が所望されるデータ匿名化の程度に合う又は勝ることも確認し得る。更に、本明細書に記載されるシステム及び方法は、ログファイルを監視し続けて、新しいログエントリを匿名化する、又は所望のレベルのデータ匿名化を維持するために既存のログエントリを再処理する必要があるときにそれを判定することができる。
【００４９】
図５は、本明細書に記載及び／又は図示される実施形態のうち１つ以上を実装できる例示的なコンピューティングシステム５１０のブロック図である。例えば、コンピューティングシステム５１０の全て又は一部は、単独で又は他の要素と組み合わせて、（図３に示されるステップのうち１つ以上などの）本明細書に記載されるステップのうち１つ以上を実施してもよく、及び／又はそれを実施するための手段であってもよい。コンピューティングシステム５１０の全て又は一部は、また、本明細書に記載及び／又は図示される他の任意のステップ、方法、若しくはプロセスを実施し、及び／又はそれを実施するための手段となり得る。
【００５０】
コンピューティングシステム５１０は、コンピュータ可読命令を実行することが可能な任意のシングル若しくはマルチプロセッサのコンピューティングデバイス又はシステムを幅広く表す。コンピューティングシステム５１０の例としては、非限定的に、ワークステーション、ノートブック、クライアント側端末、サーバ、分散型コンピューティングシステム、ハンドヘルドデバイス、又は他の任意のコンピューティングシステム若しくはデバイスが挙げられる。その最も基本的な構成において、コンピューティングシステム５１０は、少なくとも１つのプロセッサ５１４及びシステムメモリ５１６を含んでもよい。
【００５１】
プロセッサ５１４は、データの処理又は命令の解釈及び実行が可能な任意のタイプ若しくは形式の物理的処理ユニット（例えば、ハードウェア実装型中央処理ユニット）を、一般に表す。特定の実施形態では、プロセッサ５１４は、ソフトウェアアプリケーション又はモジュールから命令を受信してもよい。これらの命令は、プロセッサ５１４に、本明細書において記載及び／又は図示される例示的な実施形態のうちの１つ以上の機能を実施させてもよい。
【００５２】
システムメモリ５１６は、一般に、データ及び／又は他のコンピュータ可読命令を記憶することができる任意のタイプ若しくは形態の揮発性又は不揮発性記憶デバイスを表す。システムメモリ５１６の例としては、非限定的に、ランダムアクセスメモリ（ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）、フラッシュメモリ、又は他の任意の好適なメモリデバイスが挙げられる。必須ではないが、特定の実施形態では、コンピューティングシステム５１０は、揮発性メモリユニット（例えば、システムメモリ５１６など）、及び不揮発性記憶デバイス（例えば、詳細に後述するような、一次記憶デバイス５３２など）の両方を含み得る。一例では、図１のモジュール１０２のうち１つ以上がシステムメモリ５１６にロードされ得る。
【００５３】
特定の実施形態では、例示的なコンピューティングシステム５１０は、また、プロセッサ５１４及びシステムメモリ５１６に加えて、１つ以上の構成要素又は要素を含んでもよい。例えば、図５に示されるように、コンピューティングシステム５１０は、メモリコントローラ５１８、入力／出力（Ｉ／Ｏ）コントローラ５２０、及び通信インタフェース５２２を含んでもよいが、それらはそれぞれ通信基盤５１２を介して相互接続されてもよい。通信基盤５１２は、一般に、コンピューティングデバイスの１つ以上の構成要素間の通信を容易にすることができる、任意のタイプ又は形態の基盤を表す。通信基盤５１２の例としては、非限定的に、通信バス（産業標準アーキテクチャ（ＩＳＡ）、周辺装置相互接続（ＰＣＩ）、ＰＣＩエクスプレス（ＰＣＩｅ）、又は類似のバスなど）、及びネットワークが挙げられる。
【００５４】
メモリコントローラ５１８は、一般に、メモリ若しくはデータを扱うこと、又はコンピューティングシステム５１０の１つ以上の構成要素間の通信を制御することが可能な、任意のタイプ又は形態のデバイスを表す。例えば、特定の実施形態では、メモリコントローラ５１８は、通信基盤５１２を介して、プロセッサ５１４、システムメモリ５１６、及びＩ／Ｏコントローラ５２０の間の通信を制御してもよい。
【００５５】
Ｉ／Ｏコントローラ５２０は、一般に、コンピューティングデバイスの入出力機能を調整及び／又は制御することが可能な、任意のタイプ又は形態のモジュールを表す。例えば、特定の実施形態では、Ｉ／Ｏコントローラ５２０は、プロセッサ５１４、システムメモリ５１６、通信インタフェース５２２、ディスプレイアダプタ５２６、入力インタフェース５３０、及び記憶インタフェース５３４など、コンピューティングシステム５１０の１つ以上の要素間におけるデータの転送を制御し、又はそれを容易にし得る。
【００５６】
通信インタフェース５２２は、例示的なコンピューティングシステム５１０と１つ以上の追加のデバイスとの間の通信を容易にすることができる、任意のタイプ又は形態の通信デバイス又はアダプタを幅広く表す。例えば、特定の実施形態では、通信インタフェース５２２は、コンピューティングシステム５１０と、追加のコンピューティングシステムを含む私設又は公衆ネットワークとの間の通信を容易にし得る。通信インタフェース５２２の例としては、非限定的に、有線ネットワークインタフェース（ネットワークインタフェースカードなど）、無線ネットワークインタフェース（無線ネットワークインタフェースカードなど）、モデム、及び他の任意の好適なインタフェースが挙げられる。少なくとも１つの実施形態では、通信インタフェース５２２は、インターネットなどのネットワークへの直接リンクを介して、リモートサーバへの直接接続を提供し得る。通信インタフェース５２２はまた、例えば、ローカルエリアネットワーク（イーサネット（登録商標）ネットワークなど）、パーソナルエリアネットワーク、電話若しくはケーブルネットワーク、セルラー電話接続、衛星データ接続、又は他の任意の好適な接続を通して、リモートサーバへの接続を間接的に提供し得る。
【００５７】
特定の実施形態では、通信インタフェース５２２はまた、外部バス又は通信チャネルを介して、コンピューティングシステム５１０と１つ以上の追加のネットワーク又は記憶デバイスとの間の通信を容易にするように構成された、ホストアダプタを表し得る。ホストアダプタの例としては、非限定的に、小型コンピュータシステムインタフェース（ＳＣＳＩ）ホストアダプタ、ユニバーサルシリアルバス（ＵＳＢ）ホストアダプタ、米国電気電子学会（ＩＥＥＥ）１３９４ホストアダプタ、アドバンストテクノロジーアタッチメント（ＡＴＡ）、パラレルＡＴＡ（ＰＡＴＡ）、シリアルＡＴＡ（ＳＡＴＡ）、及び外部ＳＡＴＡ（ｅＳＡＴＡ）ホストアダプタ、ファイバーチャネルインタフェースアダプタ、イーサネット（登録商標）アダプタなどが挙げられる。通信インタフェース５２２はまた、コンピューティングシステム５１０が分散型又はリモートコンピューティングに関与することを可能にし得る。例えば、通信インタフェース５２２は、実行のためにリモートデバイスから命令を受信、又はリモートデバイスに命令を送信し得る。
【００５８】
図５に示すように、コンピューティングシステム５１０はまた、ディスプレイアダプタ５２６を介して通信基盤５１２に連結される少なくとも１つのディスプレイデバイス５２４を含み得る。ディスプレイデバイス５２４は、ディスプレイアダプタ５２６によって転送される情報を視覚的に表示することができる、任意のタイプ若しくは形態のデバイスを、一般に表す。同様に、ディスプレイアダプタ５２６は、ディスプレイデバイス５２４に表示するために、通信基盤５１２から（又は当該技術分野において既知であるように、フレームバッファから）グラフィックス、テキスト、及び他のデータを転送するように構成された、任意のタイプ若しくは形態のデバイスを、一般に表す。
【００５９】
図５に示すように、例示的なコンピューティングシステム５１０はまた、入力インタフェース５３０を介して通信基盤５１２に連結される少なくとも１つの入力デバイス５２８を含み得る。入力デバイス５２８は、コンピュータ又は人間のいずれかが生成した入力を、例示的なコンピューティングシステム５１０に提供することができる、任意のタイプ若しくは形態の入力デバイスを、一般に表す。入力デバイス５２８の例としては、限定されないが、キーボード、ポインティングデバイス、音声認識デバイス、又は他の任意の入力デバイスが挙げられる。
【００６０】
図５に示すように、例示的なコンピューティングシステム５１０はまた、記憶インタフェース５３４を介して通信基盤５１２に連結される、一次記憶デバイス５３２及びバックアップ記憶デバイス５３３を含み得る。記憶デバイス５３２及び５３３は、一般に、データ及び／又は他のコンピュータ可読命令を格納することができる、任意のタイプ若しくは形態の記憶デバイス又は媒体を表す。例えば、記憶デバイス５３２及び５３３は、磁気ディスクドライブ（例えば、いわゆるハードドライブ）、ソリッドステートドライブ、フロッピーディスクドライブ、磁気テープドライブ、光ディスクドライブ、フラッシュドライブなどであり得る。記憶インタフェース５３４は、一般に、記憶デバイス５３２及び５３３とコンピューティングシステム５１０の他の構成要素との間でデータを転送するための、任意のタイプ若しくは形態のインタフェース又はデバイスを表す。一例では、図１のデータベース１２０は、一次記憶デバイス５３２内に格納され得る。
【００６１】
特定の実施形態では、記憶デバイス５３２及び５３３は、コンピュータソフトウェア、データ、又は他のコンピュータ可読情報を格納するように構成された取外し可能な記憶ユニットから読み取る、及び／又はそれに書き込むように構成され得る。好適な取外し可能な記憶ユニットの例としては、非限定的に、フロッピーディスク、磁気テープ、光ディスク、フラッシュメモリデバイスなどが挙げられる。記憶デバイス５３２及び５３３はまた、コンピュータソフトウェア、データ、又は他のコンピュータ可読命令が、コンピューティングシステム５１０にロードされることを可能にする、他の同様の構造体又はデバイスを含み得る。例えば、記憶デバイス５３２及び５３３は、ソフトウェア、データ、又は他のコンピュータ可読情報を読み書きするように構成され得る。記憶デバイス５３２及び５３３はまた、コンピューティングシステム５１０の一部であってもよく、又は他のインタフェースシステムを介してアクセスされる別個のデバイスであってもよい。
【００６２】
他の多くのデバイス又はサブシステムが、コンピューティングシステム５１０に接続され得る。反対に、図５に示す構成要素及びデバイスの全てが、本明細書に記載及び／又は図示される実施形態を実践するために存在する必要があるわけではない。上記で言及したデバイス及びサブシステムはまた、図５に示されるのとは異なる方法で相互接続され得る。コンピューティングシステム５１０はまた、任意の数のソフトウェア、ファームウェア、及び／又はハードウェアの構成を用い得る。例えば、本明細書で開示する例示的な実施形態の１つ以上は、コンピュータ可読媒体上で、コンピュータプログラム（コンピュータソフトウェア、ソフトウェアアプリケーション、コンピュータ可読命令、又はコンピュータ制御論理とも称される）としてコード化されてもよい。「コンピュータ可読媒体」という用語は、本明細書で使用するとき、一般に、コンピュータ可読命令を格納又は保有することができる、任意の形態のデバイス、キャリア、又は媒体を指す。コンピュータ可読媒体の例としては、非限定的に、搬送波などの伝送型媒体、並びに磁気記憶媒体（例えば、ハードディスクドライブ、テープドライブ、及びフロッピーディスク）、光学記憶媒体（例えば、コンパクトディスク（ＣＤ）、デジタルビデオディスク（ＤＶＤ）、及びブルーレイ（ＢＬＵ−ＲＡＹ）ディスク）、電子記憶媒体（例えば、ソリッドステートドライブ及びフラッシュメディア）、及び他の分散システムなどの非一時的媒体が挙げられる。
【００６３】
コンピュータプログラムを包含するコンピュータ可読媒体は、コンピューティングシステム５１０にロードされ得る。コンピュータ可読媒体に格納されたコンピュータプログラムの全て又は一部は、次に、システムメモリ５１６に、及び／又は記憶デバイス５３２及び５３３の様々な部分に格納され得る。プロセッサ５１４によって実行されると、コンピューティングシステム５１０にロードされたコンピュータプログラムは、プロセッサ５１４に、本明細書に記載及び／又は図示される例示的な実施形態のうち１つ以上の機能を実施させ、及び／又はそれらを実施するための手段となり得る。追加的に又は代替案として、本明細書に記載及び／又は図示される例示的な実施形態の１つ以上は、ファームウェア及び／又はハードウェアに実装されてもよい。例えば、コンピューティングシステム５１０は、本明細書に開示される例示的な実施形態のうちの１つ以上を実装するように適合された特定用途向け集積回路（ＡＳＩＣ）として構成されてもよい。
【００６４】
図６は、クライアントシステム６１０、６２０、及び６３０、並びにサーバ６４０及び６４５がネットワーク６５０に連結され得る、例示的なネットワークアーキテクチャ６００のブロック図である。上記に詳述したように、ネットワークアーキテクチャ６００の全て又は一部は、単独で又は他の要素と組み合わせて、本明細書に開示されるステップのうちの１つ以上（図３に示されるステップのうちの１つ以上など）を実施し得るが、及び／又はそれを実施するための手段となり得る。ネットワークアーキテクチャ６００の全て又は一部はまた、本開示に記載される他のステップ及び特徴を実施するのに使用され得るか、及び／又はそれを実施するための手段となり得る。
【００６５】
クライアントシステム６１０、６２０、及び６３０は、一般に、図５の例示的なコンピューティングシステム５１０など、任意のタイプ若しくは形態のコンピューティングデバイス又はシステムを表す。同様に、サーバ６４０及び６４５は、様々なデータベースサービスを提供し、及び／又は特定のソフトウェアアプリケーションを実行するように構成された、アプリケーションサーバ又はデータベースサーバなどのコンピューティングデバイス又はシステムを、一般に表す。ネットワーク６５０は、例えばイントラネット、ＷＡＮ、ＬＡＮ、ＰＡＮ、又はインターネットを含む、任意の電気通信又はコンピュータネットワークを、一般に表す。一例では、クライアントシステム６１０、６２０、及び／若しくは６３０、並びに／又はサーバ６４０及び／若しくは６４５は、図１からのシステム１００の全て、又は一部を含み得る。
【００６６】
図６に示すように、１つ以上の記憶デバイス６６０（１）〜（Ｎ）はサーバ６４０に直接取り付けられてもよい。同様に、１つ以上の記憶デバイス６７０（１）〜（Ｎ）は、サーバ６４５に直接取り付けられ得る。記憶デバイス６６０（１）〜（Ｎ）及び記憶デバイス６７０（１）〜（Ｎ）は、データ及び／又は他のコンピュータ可読命令を格納することができる、任意のタイプ若しくは形態の記憶デバイス又は媒体を、一般に表す。特定の実施形態では、記憶デバイス６６０（１）〜（Ｎ）及び記憶デバイス６７０（１）〜（Ｎ）は、ネットワークファイルシステム（ＮＦＳ）、サーバメッセージブロック（ＳＭＢ）、又は共通インターネットファイルシステム（ＣＩＦＳ）などの様々なプロトコルを使用して、サーバ６４０及び６４５と通信するように構成されたネットワーク接続ストレージ（ＮＡＳ）デバイスを表し得る。
【００６７】
サーバ６４０及び６４５はまた、ストレージエリアネットワーク（ＳＡＮ）ファブリック６８０に接続され得る。ＳＡＮファブリック６８０は、一般に、複数の記憶デバイス間の通信を容易にすることができる、任意のタイプ若しくは形態のコンピュータネットワーク又はアーキテクチャを表す。ＳＡＮファブリック６８０は、サーバ６４０及び６４５と、複数の記憶デバイス６９０（１）〜（Ｎ）及び／又はインテリジェント記憶アレイ６９５との間の通信を容易にし得る。ＳＡＮファブリック６８０はまた、記憶デバイス６９０（１）〜（Ｎ）及びインテリジェント記憶アレイ６９５が、クライアントシステム６１０、６２０、及び６３０にローカルで取り付けられたデバイスとして現れるような方式で、ネットワーク６５０並びにサーバ６４０及び６４５を介して、クライアントシステム６１０、６２０、及び６３０と、記憶デバイス６９０（１）〜（Ｎ）及び／又はインテリジェント記憶アレイ６９５との間の通信を容易にし得る。記憶デバイス６６０（１）〜（Ｎ）及び記憶デバイス６７０（１）〜（Ｎ）と同様に、記憶デバイス６９０（１）〜（Ｎ）及びインテリジェント記憶アレイ６９５は、データ及び／又は他のコンピュータ可読命令を格納することができる任意のタイプ若しくは形態の記憶デバイス又は媒体を、一般に表す。
【００６８】
特定の実施形態では、また図５の例示的なコンピューティングシステム５１０を参照すると、図５の通信インタフェース５２２などの通信インタフェースは、それぞれのクライアントシステム６１０、６２０、及び６３０とネットワーク６５０との間の接続を提供するために使用され得る。クライアントシステム６１０、６２０、及び６３０は、例えば、ウェブブラウザ又は他のクライアントソフトウェアを使用して、サーバ６４０又は６４５上の情報にアクセスすることが可能であり得る。かかるソフトウェアは、クライアントシステム６１０、６２０、及び６３０が、サーバ６４０、サーバ６４５、記憶デバイス６６０（１）〜（Ｎ）、記憶デバイス６７０（１）〜（Ｎ）、記憶デバイス６９０（１）〜（Ｎ）、又はインテリジェント記憶アレイ６９５によってホストされるデータにアクセスすることを可能にし得る。図６は、データを交換するために（インターネットなどの）ネットワークを使用することを示しているが、本明細書に記載及び／又は図示される実施形態は、インターネット又は任意の特定のネットワークベースの環境に限定されない。
【００６９】
少なくとも１つの実施形態では、本明細書に開示される例示的な実施形態のうち１つ以上の全て又は一部は、コンピュータプログラムとしてコード化され、サーバ６４０、サーバ６４５、記憶デバイス６６０（１）〜（Ｎ）、記憶デバイス６７０（１）〜（Ｎ）、記憶デバイス６９０（１）〜（Ｎ）、インテリジェント記憶アレイ６９５、又はこれらの任意の組み合わせ上にロードされ、これらによって実行され得る。本明細書に開示される例示的な実施形態のうち１つ以上の全て又は一部はまた、コンピュータプログラムとしてコード化され、サーバ６４０に記憶され、サーバ６４５によって作動し、ネットワーク６５０上でクライアントシステム６１０、６２０、及び６３０に配信されてもよい。
【００７０】
上で詳述されたように、コンピューティングシステム５１０及び／又はネットワークアーキテクチャ６００の１つ以上の構成要素は、それぞれ単独で、又は他の要素と組み合わせて、ログエントリを匿名化する例示的な方法の１つ以上のステップを実施し得る、及び／又は実施するための手段であり得る。
【００７１】
前述の開示は、特定のブロック図、フローチャート、及び実施例を使用して様々な実施形態を記載しているが、本明細書に記載及び／又は図示されるそれぞれのブロック図の構成要素、フローチャートのステップ、動作、及び／又は構成要素は、個別にかつ／又は集合的に、広範なハードウェア、ソフトウェア、又はファームウェア（若しくはそれらの任意の組み合わせ）の構成を使用して実現されてもよい。それに加えて、同じ機能性を達成するように他の多くのアーキテクチャを実現することができるので、他の構成要素内に包含される構成要素のあらゆる開示は、本質的に例示と見なされるべきである。
【００７２】
一部の実施例では、図１の例示的なシステム１００の全て又は一部は、クラウドコンピューティング環境又はネットワークベースの環境の一部を表してもよい。クラウドコンピューティング環境は、インターネットを介して、様々なサービス及びアプリケーションを提供してもよい。これらのクラウドベースのサービス（例えば、サービスとしてのソフトウェア、サービスとしてのプラットフォーム、サービスとしての基盤など）は、ウェブブラウザ又は他のリモートインタフェースを通してアクセス可能であってもよい。本明細書に記載する様々な機能は、リモートデスクトップ環境又は他の任意のクラウドベースのコンピューティング環境を通して提供されてもよい。
【００７３】
様々な実施形態では、図１の例示的なシステム１００の全て又は一部は、クラウドベースのコンピューティング環境内におけるマルチテナンシーを容易にしてもよい。換言すれば、本明細書に記載するソフトウェアモジュールは、本明細書に記載する機能の１つ以上に対するマルチテナンシーを容易にするように、コンピューティングシステム（例えば、サーバ）を構成してもよい。例えば、本明細書に記載するソフトウェアモジュールの１つ以上は、２つ以上のクライアント（例えば、顧客）がサーバ上で作動しているアプリケーションを共有するのを可能にするように、サーバをプログラムしてもよい。このようにプログラムされたサーバは、複数の顧客（即ち、テナント）の間で、アプリケーション、オペレーティングシステム、処理システム、及び／又は記憶システムを共有してもよい。本明細書に記載するモジュールの１つ以上はまた、ある顧客が別の顧客のデータ及び／又は設定情報にアクセスできないように、顧客ごとにマルチテナントアプリケーションのデータ及び／又は設定情報を分割してもよい。
【００７４】
様々な実施形態によれば、図１の例示的なシステム１００の全て又は一部は仮想環境内で実現されてもよい。例えば、本明細書に記載するモジュール及び／又はデータは、仮想機械内で常駐及び／又は実行してもよい。本明細書で使用するとき、「仮想機械」という用語は、一般に、仮想機械マネージャ（例えば、ハイパーバイザ）によってコンピューティングハードウェアから抽出される、任意のオペレーティングシステム環境を指す。それに加えて、又は別の方法として、本明細書に記載するモジュール及び／又はデータは、仮想化層内で常駐及び／又は実行してもよい。本明細書で使用するとき、「仮想化層」という用語は、一般に、オペレーティングシステム環境にオーバーレイする、並びに／あるいはそこから抽出される、任意のデータ層及び／又はアプリケーション層を指す。仮想化層は、基礎となる基本オペレーティングシステムの一部であるかのように仮想化層を提示する、ソフトウェア仮想化ソリューション（例えば、ファイルシステムフィルタ）によって管理されてもよい。例えば、ソフトウェア仮想化ソリューションは、最初に基本ファイルシステム及び／又はレジストリ内の場所に方向付けられる呼び出しを、仮想化層内の場所にリダイレクトしてもよい。
【００７５】
一部の実施例では、図１の例示的なシステム１００の全て又は一部は、モバイルコンピューティング環境の一部を表してもよい。モバイルコンピューティング環境は、携帯電話、タブレットコンピュータ、電子ブックリーダー、携帯情報端末、ウェアラブルコンピューティングデバイス（例えば、ヘッドマウントディスプレイを備えたコンピューティングデバイス、スマートウォッチなど）などを含む、広範なモバイルコンピューティングデバイスによって実現されてもよい。一部の実施例において、モバイルコンピューティング環境は、例えば、バッテリ電力への依存、任意の所与の時間での１つのみのフォアグラウンドアプリケーションの提示、リモート管理特性、タッチスクリーン特性、位置及び移動データ（例えば、グローバルポジショニングシステム、ジャイロスコープ、加速度計などによって提供される）、システムレベルの構成への修正を制限する、及び／又は第３者のソフトウェアが他のアプリケーションの挙動を検査する能力を限定する制限されたプラットフォーム、アプリケーションのインストールを（例えば、認可されたアプリケーションストアからのみ生じるように）制限する制御などを含む、１つ以上の個別の特性を有することができる。本明細書で説明される様々な機能は、モバイルコンピューティング環境に対して提供され得る、及び／又はモバイルコンピューティング環境と相互作用し得る。
【００７６】
それに加えて、図１の例示的なシステム１００の全て又は一部は、情報管理のための１つ以上のシステムの部分を表してもよく、それと相互作用してもよく、それによって生成されるデータを消費してもよく、かつ／又はそれによって消費されるデータを生成してもよい。本明細書で使用するとき、「情報管理」という用語は、データの保護、組織化、及び／又は記憶を指してもよい。情報管理のためのシステムの例としては、非限定的に、記憶システム、バックアップシステム、アーカイブシステム、複製システム、高可用性システム、データ検索システム、仮想化システムなどを挙げることができる。
【００７７】
一部の実施形態では、図１の例示的なシステム１００の全て又は一部は、情報セキュリティのための１つ以上のシステムの部分を表してもよく、それによって保護されるデータを生成してもよく、かつ／又はそれと通信してもよい。本明細書で使用するとき、「情報セキュリティ」という用語は、保護されたデータに対するアクセスの制御を指してもよい。情報セキュリティのためのシステムの例としては、非限定的に、管理されたセキュリティサービスを提供するシステム、データ損失防止システム、本人認証システム、アクセス制御システム、暗号化システム、ポリシ遵守システム、侵入検出及び防止システム、電子証拠開示システムなどを挙げることができる。
【００７８】
一部の実施例によれば、図１の例示的なシステム１００の全て又は一部は、エンドポイントセキュリティのための１つ以上のシステムの部分を表してもよく、それと通信してもよく、かつ／又はそれから保護を受けてもよい。本明細書で使用するとき、「エンドポイントセキュリティ」という用語は、不正及び／若しくは違法な使用、アクセス、並びに／又は制御からのエンドポイントシステムの保護を指してもよい。エンドポイント保護のためのシステムの例としては、非限定的に、アンチマルウェアシステム、ユーザー認証システム、暗号化システム、プライバシーシステム、スパムフィルタリングサービスなどを挙げることができる。
【００７９】
本明細書に記載及び／又は図示されるプロセスパラメータ及びステップの順序は、単なる例として与えられるものであり、所望に応じて変更することができる。例えば、本明細書に図示及び／又は記載されるステップは特定の順序で図示又は考察されることがあるが、これらのステップは、必ずしも図示又は考察される順序で実施される必要はない。本明細書に記載及び／又は図示される様々な例示的な方法はまた、本明細書に記載若しくは図示されるステップの１つ以上を省略するか、又は開示されるものに加えて追加のステップを含んでもよい。
【００８０】
様々な実施形態を、完全に機能的なコンピューティングシステムの文脈で本明細書に記載及び／又は図示してきたが、これらの例示的な実施形態の１つ以上は、実際に配布を実施するのに使用されるコンピュータ可読媒体の特定のタイプにかかわらず、様々な形態のプログラム製品として配布されてもよい。本明細書に開示される実施形態はまた、特定のタスクを実施するソフトウェアモジュールを使用して実現されてもよい。これらのソフトウェアモジュールは、コンピュータ可読記憶媒体又はコンピューティングシステムに格納されてもよい、スクリプト、バッチ、若しくは他の実行可能ファイルを含んでもよい。一部の実施形態では、これらのソフトウェアモジュールは、本明細書に開示される例示的な実施形態の１つ以上を実施するようにコンピューティングシステムを構成してもよい。
【００８１】
それに加えて、本明細書に記載するモジュールの１つ以上は、データ、物理的デバイス、及び／又は物理的デバイスの表現を、１つの形態から別の形態へと変換してもよい。例えば、本明細書に記載のモジュールのうちの１つ以上は、変換対象の操作ログエントリを受け取り、そのログエントリを変換し、変換結果を出力してログエントリを匿名化し、変換結果を使用して１つ以上のデータログを匿名化し、変換結果を記憶して個人を識別可能な情報を保護し得る。それに加えて、又は別の方法として、本明細書に列挙されるモジュールの１つ以上は、コンピューティングデバイス上で実行し、コンピューティングデバイスにデータを格納し、並びに／あるいは別の方法でコンピューティングデバイスと相互作用することによって、プロセッサ、揮発性メモリ、不揮発性メモリ、及び／又は物理的コンピューティングデバイスの他の任意の部分を、１つの形態から別の形態へと変換してもよい。
【００８２】
上述の記載は、本明細書に開示される例示的な実施形態の様々な態様を他の当業者が最良に利用するのを可能にするために提供されてきた。この例示的な記載は、網羅的であることを意図するものではなく、又は開示される任意の正確な形態に限定することを意図するものではない。本開示の趣旨及び範囲から逸脱することなく、多くの修正及び変形が可能である。本明細書に開示される実施形態は、あらゆる点で例示的であり、限定的ではないものと見なされるべきである。本開示の範囲を決定する際に、添付の特許請求の範囲及びそれらの等価物を参照するべきである。
【００８３】
別途記載のない限り、「〜に接続される」及び「〜に連結される」という用語（並びにそれらの派生語）は、本明細書及び特許請求の範囲で使用するとき、直接的接続及び間接的接続（即ち、他の要素若しくは構成要素を介する）の両方を許容するものとして解釈されるものである。それに加えて、「ａ」又は「ａｎ」という用語は、本明細書及び特許請求の範囲で使用するとき、「〜のうち少なくとも１つ」を意味するものとして解釈されるものである。最後に、簡潔にするため、「含む」及び「有する」という用語（並びにそれらの派生語）は、本明細書及び特許請求の範囲で使用するとき、「備える」という単語と互換性があり、同じ意味を有する。
【図１】
2019500679.tif 000003
【図２】
2019500679.tif 000004
【図３】
2019500679.tif 000005
【図４】
2019500679.tif 000006
【図５】
2019500679.tif 000007
【図６】
2019500679.tif 000008
【手続補正書】
【提出日】平成30年5月6日(2018.5.6)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ログエントリを匿名化するコンピュータ実装方法であって、前記方法の少なくとも一部は少なくとも１つのプロセッサを備えるコンピューティングデバイスによって実施され、
少なくとも１つのデバイス上で実行中の少なくとも１つのプロセスによって実施されたイベントを記述する複数のログエントリからデータパターンを検出することと、
前記データパターンにおいて、可変データを含む前記複数のログエントリのそれぞれで少なくとも１つのデータフィールドを識別することと、
前記複数のログエントリのそれぞれについて、前記可変データを含む前記データフィールドを評価することと、
前記複数のログエントリのそれぞれについて、前記データフィールドが機密データを含むと判定することと、
前記複数のログエントリのそれぞれについて、前記データフィールドが前記機密データを含むと判定することに応じて、データ匿名化ポリシを前記データフィールドに適用して、前記複数のログエントリの前記データフィールド内の前記機密データの発見を防止しながら、同じ機密データを有する前記複数のログエントリのうち２つ以上のログエントリの識別を可能にするハッシュ値を提供するために、一方向ハッシュを使用して、前記データフィールド内の前記機密データをハッシュすることによって、前記データフィールド内の前記機密データを匿名化することと、を含む、コンピュータ実装方法。
【請求項２】
前記複数のログエントリから前記データパターンを検出することが、前記複数のログエントリのメッセージテンプレート学習分析を実施することを含む、請求項１に記載のコンピュータ実装方法。
【請求項３】
前記複数のログエントリから前記データパターンを検出することが、前記複数のログエントリの最長共通部分列分析を実施することを含む、請求項１に記載のコンピュータ実装方法。
【請求項４】
追加のデバイスで実行する追加のプロセスからログエントリを受信することと、
前記ログエントリを、前記複数のログエントリ内で予め識別されたデータパターンのセット内のデータパターンとマッチングすることと、
前記データパターンに対応するデータ匿名化ポリシを識別することと、
前記対応するデータ匿名化ポリシを適用することによって前記ログエントリを匿名化することと、を更に含む、請求項１に記載のコンピュータ実装方法。
【請求項５】
前記データパターンが匿名化されたと見なされるために、前記データパターンが発見される必要があるプライバシコンテキストの閾値数を決定することと、
複数のプライバシコンテキストから前記データパターンを検出することと、
前記データパターンを含む前記プライバシコンテキストの数が、前記プライバシコンテキスト閾値を超えていると判定することと、
前記データパターンを含む前記プライバシコンテキストの数が、前記プライバシコンテキスト閾値を超えていると判定することに応じて、前記データパターンが匿名化されていると判定することと、を更に含む、請求項１に記載のコンピュータ実装方法。
【請求項６】
前記データフィールド評価は、追加のデータフィールドが機密データを含むと判定し、
前記データ匿名化ポリシが、
一方向ハッシュを使用して前記データフィールドを暗号化することと、
可逆的暗号化を使用して前記データフィールドを暗号化することと、
前記データフィールドをランダムデータと置き換えることと、
前記データフィールドを静的データと置き換えることと、
前記データフィールドを削除することと、
前記データフィールドを一般化することと、のうち少なくとも１つによって前記追加のデータフィールドを匿名化する、請求項１に記載のコンピュータ実装方法。
【請求項７】
前記データフィールド評価は、追加のデータフィールドが列挙データを含む、したがって機密データを含まないと判定し、
前記データ匿名化ポリシが、前記追加のデータフィールドを修正しない、請求項１に記載のコンピュータ実装方法。
【請求項８】
前記データフィールド評価は、追加のデータフィールドが、機密データを含まないことが知られているデータ型のデータを含むと判定し、
前記データ匿名化ポリシが、前記追加のデータフィールドを修正しない、請求項１に記載のコンピュータ実装方法。
【請求項９】
前記データフィールド評価は、追加のデータフィールドが、以前に機密データを含まないと判定されたとしても、現在機密データを含むと判定し、
前記データ匿名化ポリシは、複数の既存のログエントリ内の前記追加のデータフィールドを匿名化する、請求項１に記載のコンピュータ実装方法。
【請求項１０】
ログエントリを匿名化するシステムであって、
少なくとも１つのデバイス上で実行中の少なくとも１つのプロセスによって実施されたイベントを記述する複数のログエントリからデータパターンを検出する、メモリに記憶された、パターンを検出するための手段と、
前記データパターンにおいて、可変データを含む前記複数のログエントリのそれぞれで少なくとも１つのデータフィールドを識別する、メモリに記憶された、フィールドを識別するための手段と、
前記複数のログエントリのそれぞれについて、前記可変データを含む前記データフィールドを評価し、
前記複数のログエントリのそれぞれについて、前記データフィールドが機密データを含むと判定する、メモリに記憶された、データを分析するための手段と、
前記複数のログエントリのそれぞれについて、前記データフィールドが前記機密データを含むとの判定に応じて、データ匿名化ポリシを前記データフィールドに適用して、前記複数のログエントリの前記データフィールド内の前記機密データの発見を防止しながら、同じ機密データを有する前記複数のログエントリのうち２つ以上のログエントリの識別を可能にするハッシュ値を提供するために、一方向ハッシュを使用して、前記データフィールド内の前記機密データをハッシュすることによって、前記データフィールド内の前記機密データを匿名化する、メモリに記憶された、匿名化するための手段と、
前記パターンを検出するための手段、前記フィールドを識別するための手段、前記データを分析するための手段、及び前記匿名化するための手段を実行するように構成された少なくとも１つの物理的プロセッサと、を備える、システム。
【請求項１１】
前記パターンを検出するための手段が、前記複数のログエントリのメッセージテンプレート学習分析を実施することによって、前記複数のログエントリから前記データパターンを検出する、請求項１０に記載のシステム。
【請求項１２】
前記パターンを検出するための手段が、前記複数のログエントリの最長共通部分列分析を実施することによって、前記複数のログエントリから前記データパターンを検出する、請求項１０に記載のシステム。
【請求項１３】
前記パターンを検出するための手段が、追加のデバイスで実行する追加のプロセスからログエントリを更に受信し、
前記フィールドを識別するための手段が、前記ログエントリを、前記複数のログエントリ内で予め識別されたデータパターンのセット内のデータパターンと更にマッチングし、
前記匿名化するための手段が、前記データパターンに対応するデータ匿名化ポリシを更に識別し、前記対応するデータ匿名化ポリシを適用することによって前記ログエントリを匿名化する、請求項１０に記載のシステム。
【請求項１４】
前記匿名化するための手段が、更に、
前記データパターンが匿名化されたと見なされるために、前記データパターンが発見される必要があるプライバシコンテキストの閾値数を決定し、
複数のプライバシコンテキストから前記データパターンを検出し、
前記データパターンを含む前記プライバシコンテキストの数が、前記プライバシコンテキスト閾値を超えていると判定し、
前記データパターンを含む前記プライバシコンテキストの数が、前記プライバシコンテキスト閾値を超えていると判定することに応じて、前記データパターンが匿名化されていると判定する、請求項１０に記載のシステム。
【請求項１５】
１つ以上のコンピュータ可読命令を含む非一時的コンピュータ可読媒体であって、前記命令は、コンピューティングデバイスの少なくとも１つのプロセッサによって実行されるとき、前記コンピューティングデバイスに、
少なくとも１つのデバイス上で実行中の少なくとも１つのプロセスによって実施されたイベントを記述する複数のログエントリからデータパターンを検出させ、
前記データパターンにおいて、可変データを含む前記複数のログエントリのそれぞれで少なくとも１つのデータフィールドを識別させ、
前記複数のログエントリのそれぞれについて、前記可変データを含む前記データフィールドを評価させ、
前記複数のログエントリのそれぞれについて、前記データフィールドが機密データを含むと判定させ
前記複数のログエントリのそれぞれについて、前記データフィールドが前記機密データを含むとの判定に応じて、データ匿名化ポリシを前記データフィールドに適用して、前記複数のログエントリの前記データフィールド内の前記機密データの発見を防止しながら、同じ機密データを有する前記複数のログエントリのうち２つ以上のログエントリの識別を可能にするハッシュ値を提供するために、一方向ハッシュを使用して、前記データフィールド内の前記機密データをハッシュすることによって、前記データフィールド内の前記機密データを匿名化させる、非一時的コンピュータ可読媒体。
【国際調査報告】
2019500679.tif 000009
2019500679.tif 000010
2019500679.tif 000011