(57)【要約】【課題】機密データを含むテキストをより正確に判定し、誤った「陽性反応」の数を低減するようなデータ損失を防止する技術が必要とされている。【解決手段】コンピュータシステムにおけるデータ損失を防止するための方法であって、検索ステップと、計算ステップと、判定ステップと、遮断ステップと、を備え、前記検索ステップでは、複数のキーワードのテキストデータを検索し前記テキストデータと一致するような１つ又は複数のキーワードを決定し、前記計算ステップでは、前記テキストデータと一致する前記１つ又は複数のキーワードに基づいて、前記テキストデータ内のキーワードの密度を計算し、前記判定ステップでは、前記キーワードの密度が閾値との比較に基づいて、前記テキストデータが機密データを含むかどうかを判定し、前記遮断ステップでは、前記機密データを含むテキストデータの使用をブロックする、方法が提供される。【選択図】図１
2019016335.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータシステムにおけるデータ損失を防止するための方法であって、
検索ステップと、計算ステップと、判定ステップと、遮断ステップとを備え、
前記検索ステップでは、複数のキーワードのテキストデータを検索し前記テキストデータと一致するような１つ又は複数のキーワードを決定し、
前記計算ステップでは、前記テキストデータと一致する前記１つ又は複数のキーワードに基づいて、前記テキストデータ内のキーワードの密度を計算し、
前記判定ステップでは、前記キーワードの密度が閾値との比較に基づいて、前記テキストデータが機密データを含むかどうかを判定し、
前記遮断ステップでは、前記機密データを含むテキストデータの使用をブロックする、
方法。
【請求項２】
請求項１に記載の方法において、
前記計算ステップでは、
前記一致するキーワードの文字数を決定し、
前記テキストデータの文字総数を決定し、 
前記テキストデータ中の前記キーワードの密度を、前記テキストデータの文字総数に対する一致するキーワード内の文字数の比として計算する、
方法。
【請求項３】
請求項２に記載の方法において、
前記文字総数は、空白文字及び非英数字のうちの少なくとも１つを除外したものである、
方法。
【請求項４】
請求項１に記載の方法において、
前記計算ステップでは、
一致するキーワードの数を決定し、
前記テキストデータの総単語数を決定し、
前記テキストデータ中のキーワードの密度を、前記テキストデータの単語総数に対する一致するキーワードの数の比として計算する、
方法。
【請求項５】
請求項１に記載の方法において、
前記テキストデータ中のキーワードの密度は、前記一致する各キーワードに関連する重み付け係数に基づいて計算される、
方法。
【請求項６】
請求項５に記載の方法において、
第１一致キーワードの前記重み付け係数の値は、前記テキストデータ内の第２一致キーワードの出現回数に依存する、
方法。
【請求項７】
請求項１に記載の方法において、
前記テキストデータを第１長さの複数のサブテキストに分割し、前記各サブテキストのキーワードのそれぞれの密度を計算する、
方法。
【請求項８】
コンピュータシステムにおけるデータ損失を防止するためのシステムであって、記憶装置と、少なくとも１つのプロセッサとを備え、
前記プロセッサは、検索ステップと、計算ステップと、判定ステップと、遮断ステップとを実行するように構成され、
前記検索ステップでは、複数のキーワードのテキストデータを検索し前記テキストデータと一致するような１つ又は複数のキーワードを決定し、
前記計算ステップでは、前記テキストデータと一致する前記１つ又は複数のキーワードに基づいて、前記テキストデータ内のキーワードの密度を計算し、
前記判定ステップでは、前記キーワードの密度が閾値との比較に基づいて、前記テキストデータが機密データを含むかどうかを判定し、
前記遮断ステップでは、前記機密データを含むテキストデータの使用をブロックする、
システム。
【請求項９】
請求項８に記載のシステムにおいて、
前記計算ステップでは、
前記一致するキーワードの文字数を決定し、
前記テキストデータの文字総数を決定し、 
前記テキストデータ中の前記キーワードの密度を、前記テキストデータの文字総数に対する一致するキーワード内の文字数の比として計算する、
システム。
【請求項１０】
請求項９に記載のシステムにおいて、
前記文字総数は、空白文字及び非英数字のうちの少なくとも１つを除外したものである、
システム。
【請求項１１】
請求項８に記載のシステムにおいて、
前記計算ステップでは、
一致するキーワードの数を決定し、
前記テキストデータの総単語数を決定し、
前記テキストデータ中のキーワードの密度を、前記テキストデータの単語総数に対する一致するキーワードの数の比として計算する、
システム。
【請求項１２】
請求項８に記載のシステムにおいて、
前記テキストデータ中のキーワードの密度は、前記一致する各キーワードに関連する重み付け係数に基づいて計算される、
システム。
【請求項１３】
請求項１２に記載のシステムにおいて、
第１一致キーワードの前記重み付け係数の値は、前記テキストデータ内の第２一致キーワードの出現回数に依存する、
システム。
【請求項１４】
請求項８に記載のシステムにおいて、
前記テキストデータを第１長さの複数のサブテキストに分割し、前記各サブテキストのキーワードのそれぞれの密度を計算する、
システム。
【請求項１５】
コンピュータシステムにおけるデータ損失を防止するための、コンピュータで実行可能な命令を含む非一時的なコンピュータ可読媒体であって、
前記命令は、検索ステップと、計算ステップと、判定ステップと、遮断ステップとを備え、
前記検索ステップでは、複数のキーワードのテキストデータを検索し前記テキストデータと一致するような１つ又は複数のキーワードを決定し、
前記計算ステップでは、前記テキストデータと一致する前記１つ又は複数のキーワードに基づいて、前記テキストデータ内のキーワードの密度を計算し、
前記判定ステップでは、前記キーワードの密度が閾値との比較に基づいて、前記テキストデータが機密データを含むかどうかを判定し、
前記遮断ステップでは、前記機密データを含むテキストデータの使用をブロックする、
媒体。
【請求項１６】
請求項１５に記載の媒体において、
前記計算ステップでは、
前記一致するキーワードの文字数を決定し、
前記テキストデータの文字総数を決定し、 
前記テキストデータ中の前記キーワードの密度を、前記テキストデータの文字総数に対する一致するキーワード内の文字数の比として計算する、
媒体。
【請求項１７】
請求項１６に記載の媒体において、
前記文字総数は、空白文字及び非英数字のうちの少なくとも１つを除外したものである、
媒体。
【請求項１８】
請求項１５に記載の媒体において、
前記計算ステップでは、
一致するキーワードの数を決定し、
前記テキストデータの総単語数を決定し、
前記テキストデータ中のキーワードの密度を、前記テキストデータの単語総数に対する一致するキーワードの数の比として計算する、
媒体。
【請求項１９】
請求項１５に記載の媒体において、
前記テキストデータ中のキーワードの密度は、前記一致する各キーワードに関連する重み付け係数に基づいて計算される、
媒体。
【請求項２０】
請求項１９に記載の媒体において、
第１一致キーワードの前記重み付け係数の値は、前記テキストデータ内の第２一致キーワードの出現回数に依存する、
媒体。
【請求項２１】
請求項１５に記載の媒体において、
前記テキストデータを第１長さの複数のサブテキストに分割し、前記各サブテキストのキーワードのそれぞれの密度を計算する、
媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、一般にデータセキュリティの分野に関し、より詳細には機密データを含むテキストを判定することによって情報漏洩を防止するためのシステム及び方法に関するものである。
【背景技術】
【０００２】
近年のサイバー犯罪の増加と情報の盗難の増加により、情報の漏洩を防止するシステム（データ損失防止又はデータ漏洩防止（ＤＬＰ）と呼ばれることもある）が益々求められている。ＤＬＰシステムの主な課題の１つは、パスポートデータ、運転免許証データ、銀行カードデータ等の個人及び機密データ（テキスト）の漏洩を防止することである。
【０００３】
個人データ及び機密データの検出のためには、通常、互いに隣り合う幾つかのキーワードを検出する方法が用いられる。例えばパスポートの場合には、「シリーズ」という単語とパスポートのシリアル番号、「数字」という単語とパスポート番号の数字、「発行日」という単語の組み合わせとそのパスポートの実際の発行日の日付、等々である。しかしながら、実際には、特定のキーワードが存在しない可能性があり、他のキーワードとの距離が離れてても予測不能であってもよく、キーワード自体は異なる種類の機密データに関係するものであってもよい。例えば、「シリーズ」という単語の後に、特定の製品のバーコードが来ることがあり、このとき誤ってパスポート番号と認識される可能性がある。この場合、既知の技術は、実際にはテキストには機密データが含まれていないにも関わらず、誤った「陽性反応」又は誤警告を発する（即ち、テキストが機密データを含むと判断された状況を生成する）。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
したがって、機密データを含むテキストをより正確に判定し、誤った「陽性反応」の数を低減するようなデータ損失を防止する技術が必要とされている。
【課題を解決するための手段】
【０００５】
したがって、コンピュータシステムにおける機密情報の漏洩を防止するためのシステム及び方法がここに開示される。本開示の技術的結果は、誤警報の数の減少という観点により既知の技術と比較して、テキストにおける機密情報の決定を改善することを含む。
【０００６】
本発明によれば、コンピュータシステムにおけるデータ損失を防止するための方法であって、検索ステップと、計算ステップと、判定ステップと、遮断ステップと、を備え、前記検索ステップでは、複数のキーワードのテキストデータを検索し前記テキストデータと一致するような１つ又は複数のキーワードを決定し、前記計算ステップでは、前記テキストデータと一致する前記１つ又は複数のキーワードに基づいて、前記テキストデータ内のキーワードの密度を計算し、前記判定ステップでは、前記キーワードの密度が閾値との比較に基づいて、前記テキストデータが機密データを含むかどうかを判定し、前記遮断ステップでは、前記機密データを含むテキストデータの使用をブロックする、方法が提供される。
【０００７】
好ましくは、前記計算ステップでは、前記一致するキーワードの文字数を決定し、前記テキストデータの文字総数を決定し、 前記テキストデータ中の前記キーワードの密度を、前記テキストデータの文字総数に対する一致するキーワード内の文字数の比として計算する。
【０００８】
好ましくは、前記文字総数は、空白文字及び非英数字のうちの少なくとも１つを除外したものである。
【０００９】
好ましくは、前記計算ステップでは、一致するキーワードの数を決定し、前記テキストデータの総単語数を決定し、前記テキストデータ中のキーワードの密度を、前記テキストデータの単語総数に対する一致するキーワードの数の比として計算する。
【００１０】
好ましくは、前記テキストデータ中のキーワードの密度は、前記一致する各キーワードに関連する重み付け係数に基づいて計算される。
【００１１】
好ましくは、第１一致キーワードの前記重み付け係数の値は、前記テキストデータ内の第２一致キーワードの出現回数に依存する。
【００１２】
好ましくは、前記テキストデータを第１長さの複数のサブテキストに分割し、前記各サブテキストのキーワードのそれぞれの密度を計算する。
【００１３】
本発明の別の観点によれば、コンピュータシステムにおけるデータ損失を防止するためのシステムであって、記憶装置と、少なくとも１つのプロセッサとを備え、前記プロセッサは、検索ステップと、計算ステップと、判定ステップと、遮断ステップとを実行するように構成され、前記検索ステップでは、複数のキーワードのテキストデータを検索し前記テキストデータと一致するような１つ又は複数のキーワードを決定し、前記計算ステップでは、前記テキストデータと一致する前記１つ又は複数のキーワードに基づいて、前記テキストデータ内のキーワードの密度を計算し、前記判定ステップでは、前記キーワードの密度が閾値との比較に基づいて、前記テキストデータが機密データを含むかどうかを判定し、前記遮断ステップでは、前記機密データを含むテキストデータの使用をブロックする、システムが提供される。
【００１４】
本発明の別の観点によれば、上述の何れかの方法を実行するための、コンピュータで実行可能な命令を含む非一時的なコンピュータ可読媒体が提供される。
【００１５】
本発明の例示的な態様に係る上述の簡略化した概要は、本発明の基本的な理解を提供するように機能するものである。この概要は、全ての企図された態様の広範な概要ではなく、全ての態様の重要な又は重要な要素を特定することも本発明の任意の又は全ての態様の範囲を描写することも意図されていない。唯一の目的は、以下の本発明のより詳細な説明の前置きとして、１つ又は複数の態様を簡略化した形で提示することである。前述の目的を達成するために、本発明の１つ又は複数の態様が記載され、これは特に特許請求の範囲において主張される特徴を含むものである。
【図面の簡単な説明】
【００１６】
添付の図面は、本明細書に組み込まれ、本明細書の一部を構成し、本発明の１つ又は複数の例示的な態様を示し、詳細な説明とともに、それらの基本原理及び実施形態を説明する役割を果たすものである。
【００１７】
【図１】本開示の特定の態様における、情報漏洩を防止するためのシステムを示すブロック図である。
【００１８】
【図２】例示的な態様における、機密データを含むテキストを決定するための方法を示すフローチャートである。
【００１９】
【図３】キーワードを含むが機密ではないようなテキストの例である。
【００２０】
【図４】開示されたシステム及び方法が例示的な態様にしたがって実装され得る汎用コンピュータシステムのブロック図である。
【発明を実施するための形態】
【００２１】
本明細書では、例示的な態様は、フィルタリング規則をモバイルデバイスにダウンロードするためのシステム、方法、及びコンピュータプログラム製品に関連して説明される。当業者であれば、以下の説明は例示的なものにすぎず、決してこれらに限定することを意図するものではないことを理解するであろう。他の態様は、本開示の恩恵を受ける当業者には容易に理解されるであろう。添付の図面おいて、例示的な態様の実装についての詳細が参照される。同じ参照インジケータは、図面全体に渡って可能な限り使用され、以下の記載は、同じ又は同様のアイテムを参照する。
【００２２】
図１は、本開示の特定の態様における、情報漏洩を防止するためのシステム１００を示すブロック図である。システム１００は、分析されるテキスト１１０内のキーワードを検索するように構成された検索モジュール１０１を含む。特定の態様では、分析されるテキスト１１０は、例えばユーザ又はアプリケーションから得られ、ディスク上のファイルから読み取られ、又はネットワークトラフィックから傍受され、ファイルフォーマット構造から抽出されるような、ソーステキスト又はソーステキストの一部であってもよい。分析されるテキスト１１０は、所定の文字を任意に含むことができる。キーワードは、任意に与えられた文字列であってもよい。１つの態様では、キーワードは、１つ又は複数の文字を含む文字列である。別の態様では、キーワードは、１つ又は複数の文字列に対する検索パターンを指定するような正規表現又はマスクである。更に別の態様では、キーワードは、他のキーワードによっても構成された正規表現である。例えば、単語Ａ、Ｂ、Ｃはキーワードリスト上にあってもよい。正規表現"Ａ？Ｂ"はキーワードであってもよく、文字"？"は単語ＡとＢとの間の任意の文字を意味する。
【００２３】
キーワードは、キーワードリスト１０４に含まれ、これは、別のシステムから取得されてもよいし、例えば専門家又はシステム管理者によって予め決定されてもよい。１つの態様では、キーワードリスト１０４はデータベースに含まれる。特定の態様では、キーワードリスト１０４は、分類システムを使用して自動的に定式化されていてもよい。例えば、分類システムは、機密データを含む既知のテキストの集合及び機密データを含まない既知のテキストの集合を分析することができる。分類アルゴリズムの使用により、システムは、機密データを含むテキストの特徴であるキーワード、及び機密データを含まないテキストの特徴であるキーワードを抽出する。
【００２４】
検索モジュール１０１は、分析されるテキスト内のキーワードの検索を実行する。解析モジュール１０２は、分析されるテキスト内のキーワードの密度を計算するように構成される。ある態様では、解析モジュール１０２は、見出されたキーワード内の文字数と、分析されるテキストの文字数との比に基づいて、キーワードの密度を計算することができる。他の態様では、解析モジュール１０２は、見つかったキーワードの数と、分析されるテキストの単語総数との比に基づいて、キーワードの密度を計算することができる。
【００２５】
１つの態様では、上記の方法によって分析されるテキストの文字数を計算する際、次のような特定の文字を考慮することを回避することができる。即ち、他のスペース文字、英数字以外の文字、制御文字、句読点を表す文字、特殊文字、複数回の繰り返しを表す文字、及びその他の文字等である。キーワードの密度は、例えば、実数、整数又は有理数の値で表すことができる。キーワードの密度の値は、限定された集合、例えば０から１の範囲内に規格化されていてもよい。
【００２６】
システム１００は、分析されるテキストを、キーワードの密度が閾値（キーワードの密度の最大可能値の半分等）より大きい場合に、機密データを含むものとして決定するように構成された分析モジュール１０３を更に含む。ある態様では、閾値は、特に、分析されるテキストの文字数、及び分析されるテキストの単語数のうちのいずれかに依存する。例えば、短いテキストの場合、閾値は長いテキストの場合よりも低いことがある。
【００２７】
機密データを含むテキストとして分析されるテキストを判定したという結果は、他のシステムを考慮に入れることができることに留意されたい。例えば、データ漏洩防止システムは、機密データを含むものとして判定されたテキストデータをネットワーク境界の外部へと送信することを禁止してもよい。アクセス制御システムは、機密データを含むテキストとして特定されたテキストへの特定のユーザによるアクセスを禁止することができる。
【００２８】
特定の態様では、各キーワードは、キーワードの密度を計算する際に考慮される重み係数に対し次のように関連付けられる。即ち、もし分析されるテキストに含まれるキーワードに対する重み係数の値が１単位より大きい場合にはキーワードの密度は増加し、一方それ以外の場合にはキーワードの密度は減少する。したがって、特定の態様では、キーワードの密度は、分析されるテキストの文字数に対する、（分析されるテキストに見出される）各キーワード内の文字数の対し各重み係数を掛けたものの合計の比として計算される。例えば、以下の式（１）で表される関係式を用いて密度スコアを算出してもよい。
ｄｅｎｓｉｔｙ＿ｓｃｏｒｅ＝（Σ（ｎ＿ｉ×ｗ＿ｉ））／（ｎ＿ｔｏｔａｌ）    （１）
ここで、「ｉ」は見つかったキーワードのインデックス、「ｎ＿ｉ」はｉ番目のキーワードの文字数、「ｗ＿ｉ」はｉ番目のキーワードの重み係数、そして「ｎ＿ｔｏｔａｌ」はテキスト全体の文字総数を表す。
【００２９】
ある態様では、等価、類似、又は関連性の意味を有するキーワードは、キーワードの密度に対して同一の寄与を有するような重み係数を割り当てられてもよい。即ち、キーワードの文字数とその重み係数を掛け合わせる際、同一の貢献をもたらすキーワードに対しては、その掛け合わされた結果は同じであるというような状況である。例えば、キーワードリスト１０４は、「ＲＦ」と「Ｒｕｓｓｉａｎ  Ｆｅｄｅｒａｔｉｏｎ」等、唯一かつ同一のものを示しており、したがってこれらの単語がキーワードの密度計算に等しく影響するようなものを含んでいてもよい。このように、第１キーワード「ＲＦ」（ｉ＝１、ｎ＿１＝２）と第２キーワード「Ｒｕｓｓｉａｎ  Ｆｅｄｅｒａｔｉｏｎ」（ｉ＝２、ｎ＿２＝１９）は、密度の計算結果に対し同じ貢献を持つべきである。上記の式（１）を用いると、これらの２つのキーワードに対して、（ｎ＿１×ｗ＿１）の値は（ｎ＿２×ｗ＿２）の値に等しくなければならず、各キーワードの文字数は、（２×ｗ＿１）＝（１９×ｗ＿２）という関係を満たす。ｗ＿２に対しｉ＝１での値を代入すると、ｗ＿１は１９×１／２＝９．５となる。したがって、「Ｒｕｓｓｉａｎ  Ｆｅｄｅｒａｔｉｏｎ」という単語の組み合わせには１という重み係数が割り当てられ、「ＲＦ」という単語には９．５の値の重み係数が割り当てられる。繰り返しになるが、分析されるキーワードの文字数は、後にこのキーワードの重み係数を掛けられるが、表示されたキーワードの１９という値と全く同じである。
【００３０】
更に別の態様では、１つのキーワードに対する重み係数は、分析されるテキストにおける別のキーワードの出現回数に依存してもよい。例えば、分析されるテキスト内のキーワードＢの出現回数が０より大きい場合（即ち１，２，３又はそれ以上である場合）、キーワードＡの重み係数は１に等しい。しかし、分析されるテキスト中のキーワードＢの出現の数が０に等しい場合（即ち、分析されるテキストにおいてキーワードＢが出現しない場合）、キーワードＡの重み係数は０に等しい。この例では、キーワードＡは例えば「Ｐａｓｓｐｏｒｔ」であり、キーワードＢはパスポート番号であってもよい（キーワードはパスポートのフォーマットに対応していてもよい）。この例では、キーワード「Ｐａｓｓｐｏｒｔ」のみが分析されるテキスト内に存在するが、パスポート番号の要件を満たすような数字のシーケンスが存在せず、したがって、単にキーワード「パスポート」が存在しているということは、分析されるテキストが機密であることを示すわけではない。したがって、「Ｐａｓｓｐｏｒｔ」という単語の重み係数は０に等しく、この単語はキーワードの密度計算に対し何ら影響を与えない。
【００３１】
１つの態様では、検索モジュール１０１を追加的に使用して、見つかったキーワードが所与の基準に準拠してるかどうかのチェックを実行してもよく、この際の１つの基準は、特に、Ｌｕｈｎアルゴリズム、又は銀行のカード番号に対応するような見つかったキーワードに対する式を介しチェックを実行する、というものである。ある態様では、上述の基準は、コンピュータのファイル内に存在する、基準リスト内に含まれてもよい。パスポートデータに対応するキーワードリスト１０４から得られたキーワードに対し、パスポートデータの指定されたフォーマットに準拠しているかどうか等がチェックされる。更に別の態様では、そのような基準は、正規表現の正当性をチェックすることであってもよい。例えば、正規表現がデータに対応する場合、正当性のチェックは、そのデータの存在正当性のチェックであってもよい。この例では、例えばデータ「３２．０１．２０１７」は不正な日付である。
【００３２】
図２は、例示的な態様における、機密データを含むテキストを判定するための方法２００を示すフローチャートである。第１ステップ２０１において、検索モジュール１０１は、分析されるテキスト１１０内のキーワードを検索して、テキストデータと一致する１つ又は複数のキーワードを判定する。
【００３３】
次に、ステップ２０２において、解析モジュール１０２は、そのテキストデータ（即ち、分析されるテキスト）と一致するような１つ又は複数のキーワードに基づいて、分析されるテキスト内のキーワードの密度を計算する。ある態様では、解析モジュール１０２は、一致するキーワード内の文字数を決定し、テキストデータの文字総数を決定した上で、分析されるテキストの文字数に対する見つかったキーワード中の文字数の比として、キーワードの密度を計算する。ある態様では、テキストデータの文字総数のうち、スペース文字及び英数字以外の文字のうち、１つ又は複数が除外される。他の態様では、解析モジュール１０２は、一致するキーワードの数を決定し、テキストデータの単語総数を決定した上で、キーワードの密度を、分析されているテキストの単語総数に対する見つかったキーワード数の比として計算する。ある態様では、テキストデータは、第１長さを有する複数のサブテキストへと分割され、解析モジュール１０２は、各サブテキストのキーワードに対し、各々の密度を計算する。ある態様では、解析モジュール１０２は、一致する各キーワードに関連付けられた重み係数に基づいて、テキストデータ内のキーワードの密度を計算する。ある態様では、第１の一致するキーワード（第１一致キーワード）の重み係数の値は、テキストデータ内において第２の一致するキーワード（第２一致キーワード）の出現回数に依存する。
【００３４】
その結果、ステップ２０３において、分析モジュール１０３は、算出されたキーワードの密度が特定の閾値を超えているかどうかを判定する。もし閾値を越えていない場合、動作はステップ２０２に戻り、検索モジュール１０１は、より多くのテキストデータ、即ちテキスト１１０の別の部分のキーワードを検索することができる。一方もし閾値を超えていた場合、ステップ２０４において、分析モジュール１０３は、キーワードの密度が所定の閾値を超えていれば、分析されるテキストが機密データを含むテキストであると判定することができる。
【００３５】
ステップ２０５において、テキストデータが機密データを含むと判定されたことに応答して、システム１００は、テキスト１１０のソースに応じてテキストデータの使用をブロックすることができる。例えば、テキストデータが「使用中のデータ」として末端システムから受信された場合、システム１００は、例えば電子メール又はメッセージング通信を介して、テキストデータがグループの間、又はユーザのタイプの間で共有されることをブロックすることができる。別の例では、システム１００は、テキストデータが、画面キャプチャ動作、コピー／ペースト動作、プリント／ファックス動作、及び（例えば、ＵＳＢドライブに対する）ファイル転送動作において使用されるのをブロックすることができる。ある態様では、テキストデータがネットワーク網を横断して傍受された場合（「動作中のデータ」）、システム１００は、テキストデータを含むネットワーク網がこの宛先に転送されないよう、このネットワーク網をブロックするか、又はネットワーク網を修正して機密データを除外することができる。テキストデータ１１０がデータ記憶デバイス（即ち、データアーカイブ）から取り出された場合のような１つの態様において、システム１００は、テキストデータを機密データを含むものとしてフラグを立て、テキストデータの記憶、処理、及び廃棄の特定の手順を実行することができる。ある態様では、システム１００は、データの難読化を介して、アプリケーションに提供する前に、テキストデータ１１０を修正することができる。修正のモードは、テキストデータ１１０を使用するアプリケーションのタイプに応じて変化してもよい。他の態様では、システム１００は、一方で、遮断ステップを無効にできるホワイトリストのような許可されたアプリケーションリストに基づき、テキストデータ１１０が使用されることを許可することができる。
【００３６】
１つの態様では、分析されるテキストは、図１の説明に示されているように、ユーザ若しくはアプリケーション、又は他のソースから得られたソーステキストであることに留意されたい。別の態様では、分析されるテキストは、所定の長さを有する前述のソーステキストの一部であってもよい。
【００３７】
ある態様では、ソーステキストは、所定の長さを有する複数のサブテキストに分割されてもよい。例えば、ソーステキスト自体の長さは１０００文字で、分析される第１サブテキストは１文字から始まり１００文字の長さを有し、分析される第２サブテキストは２文字から始まり１００文字の長さを有する、といった具合である。この例では、ステップ２０１〜２０４の方法は、分析される各サブテキストに数回適用されてもよい。
【００３８】
図３は、キーワードを含むが秘密ではないテキストデータ３００の例を示す。この例では、電子デバイスへの命令が与えられる。図示されているように、テキストデータ３００は、結合された際に銀行カード番号に対応するキーワード（下線付きテキストで示される）を含む。例えば、部分３０２のキーワード「７４０」と「５０２５１５５００６８８８」は、銀行カード番号に対応するように見えることがある。したがって、機密データを含むテキストを見つけるための既存の方法の大部分は、誤警報を引き起こし、示されたテキストを機密データ、即ち、銀行カード番号を含むテキストとして受容する可能性がある。
【００３９】
しかしながら、分析されるテキスト３００全体に対してキーワードの数及びその長さが小さい、ということが指摘されるべきである。このため、本開示では、キーワードの密度計算及び分析を含む新しい手法が提案される。本開示において提案された手法は、表示されたテキスト例（又は他の同等のテキスト）において誤警報を引き起こすことはなく、キーワードの密度が低いために機密データを含むものとして判定してしまうことはない。したがって、本発明で提示された方法の使用により、機密データを含むテキストの決定において誤警報が発生するという上記の技術的問題は解決され、更に、誤警報の数の減少により、既知の技術と比較してテキストにおける機密情報の判定を改善する、という提示された技術的成果を達成する。
【００４０】
特定のサンプルに対する実施形態の例において先に述べたように、キーワードの密度計算の表現は、分析されるテキストの文字数に対する見つかったキーワードの文字数の比であると仮定する。指定された閾値が０．５に等しく、それを超えると、分析されるテキストは機密データを含むテキストであると判定されるとする（ステップ２０３）。分析されるテキストの２つのパターンを考える。
【００４１】
第１の例では、検索モジュール１０１は、次のようなテキストＮｏ．１（図３の例では部分３０２として示される）に対し検索を実行する：
"１０２Ｗｅｉｇｈｔ  ｗｉｔｈｏｕｔ  ｐａｃｋａｇｅ：  １４．５ｋｇ  Ｗｅｉｇｈｔ  ｉｎｐａｃｋａｇｅ：  １７．５ｋｇ  Ｄｉｍｅｎｓｉｏｎｓ  ｏｆ  ｐａｃｋａｇｅ：  ７４０×３６５×３１５ｍｍ  Ｂａｒｃｏｄｅ  ５０２５１５５００６８８８"
【００４２】
ステップ２０１で見つかったキーワードには、本文中において下線が引かれている。
見つけられた銀行カード番号（与えられた例では、７４０  ５０２５１５５００６８８）の真正性は、ステップ２０１において、検索モジュール１０１によるＬｕｈｎアルゴリズムを介してチェックすることができる。この場合、解析モジュール１０２は、キーワード中の文字数（１９文字）と、分析されるテキスト中の文字数（空白を含む１１０文字）を決定する。次に、解析モジュール１０２は、ステップ２０２において、キーワードの密度が０．１７に等しい（即ち、１９÷１１０＝０．１７２７）と計算する。キーワードの密度が指定された閾値０．５を下回っているため（０．１７＜０．５０）、分析されたテキストＮｏ．１は、ステップ２０３〜２０４において、機密データを含むものとして判定されない。
【００４３】
第２の例では、検索モジュール１０１は、次のようなテキストＮｏ．２（図３では部分３０４として示される）を検索する：
"Ｃａｒｄ  Ｈｏｌｄｅｒ：  Ｊｏｈｎ  Ｊ．
ＣａｍｅｒｏｎＥｘｐｉｒａｔｉｏｎＤａｔｅ：  １／２０１６  ＣＶＶ２：  ２２０  ５４６６１６０１５３１５４４９５１９９０６／１４"
【００４４】
この場合も、ステップ２０１で見つかったキーワードに対しては、テキストに下線が引かれている。この場合、キーワードの密度は０．６２（キーワード５４文字÷スペース８７文字＝０．６２）であり、指定された閾値である０．５よりも大きいので、分析されたテキストＮｏ．２は、ステップ２０３において、機密データを含むものとして判定される。
【００４５】
図４は、実施形態に係り本発明のシステムと方法が実装できる汎用コンピュータ・システム（パーソナル・コンピュータやサーバ等）の例を示している。コンピュータ・システム２０は、例えば、先に説明したシステム１００に相当することに留意されたい。
【００４６】
図示の通り、コンピュータ・システム２０は、ＣＰＵ２１と、システムメモリ２２と、ＣＰＵ２１と関連付けられたメモリを含む様々なシステムコンポーネントを接続するシステムバス２３とを含み得る。システムバス２３は、バスメモリ又は、バスメモリコントローラ、周辺バス、及びローカルバスを次々含む従来から公知のあらゆるバス構造としても実現され得、これらはどのような他のバスアーキテクチャとも通信可能である。システムメモリは、リードオンリーメモリ（ＲＯＭ）２４及びランダムアクセスメモリ（ＲＡＭ）２５を含む。基本的な入出力システム（ＢＩＯＳ）２６は、ＲＯＭ２４の使用によってオペレーティング・システムをロードする際等、コンピュータ・システム２０の要素間の情報の伝達を担う基本的な手順を含む。
【００４７】
コンピュータ・システム２０は、データの読み書きのためのハードディスク２７、取り外し可能な磁気ディスク２９の読み書きのための磁気ディスクドライブ２８、及びＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、その他の光学メディア等の光学ディスク３１の読み書きのための光学式ドライブ３０を含む。ハードディスク２７、磁気ディスクドライブ２８、及び光学式ドライブ３０は、ハードディスクインターフェース３２、磁気ディスクインターフェース３３、及び光学式ドライブインターフェース３４それぞれを横切るシステムバス２３と接続される。ドライブ及び対応するコンピュータ情報メディアは、コンピュータ命令、データ構造体、プログラムモジュール、及びコンピュータ・システム２０の他のデータのストレージのための電源依存のモジュールである。
【００４８】
本発明は、ハードディスク２７、取り外し可能な磁気ディスク２９及び取り外し可能な光学ディスク３１を用いるシステムの実装を提供するものだが、コンピュータに読み込み可能な形式でデータを保存できるフラッシュメモリカード、デジタルのディスク、ランダムアクセスのメモリ（ＲＡＭ）等の他のタイプのコンピュータ情報メディア５６を使用してもよいことに留意されたし。また、これはコントローラ５５を介してシステムバス２３に接続される。
【００４９】
コンピュータ・システム２０は、ファイルシステム３６を有し、記録されたオペレーティング・システム３５を保持する。また追加のプログラムアプリケーション３７、他のプログラムモジュール３８、及びプログラムデータ３９を有する。ユーザは、入力機器（キーボード４０、マウス４２）を用いてコマンドと情報をコンピュータ・システム２０に入力することができる。他の入力機器（不図示）：マイクロフォン、ジョイスティック、ゲームコントローラ、スキャナ等を用いることもできる。そのような入力機器は、通常、システムバスに次々接続しているシリアルポート４６を通じてコンピュータ・システム２０に差し込まれるが、それらは、他の方法例えばパラレル・ポート、ゲームポート、又は一般的なシリアルバス（ＵＳＢ）に接続される。ディスプレイ機器のモニタ４７又は他のタイプは、また、ビデオアダプタ４８等のインターフェースと交差するシステムバス２３に接続している。モニタ４７に加えて、パーソナル・コンピュータは、スピーカー、プリンタ等の他の周辺の出力機器（不図示）を接続できる。
【００５０】
コンピュータ・システム２０は、１つ又は複数のリモートコンピュータ４９とのネットワーク接続を用いて、ネットワーク環境で操作することができる。リモートコンピュータ（又はコンピュータ）４９は、図４に示すように、コンピュータ・システム２０の性質として説明した上述の要素全ての大多数を有するパーソナル・コンピュータ又はサーバでもある。ルータ、ネットワークステーション、ピア接続の機器、又は他のネットワークノード等の他の機器もまた、かかるコンピュータ・ネットワークで存在し得るものである。
【００５１】
ネットワーク接続は、ローカルエリアコンピュータ・ネットワーク（ＬＡＮ）５０及びワイドエリアコンピュータ・ネットワーク（ＷＡＮ）を形成することができる。そのようなネットワークは、企業のコンピュータ・ネットワーク及び社内ネットワークで利用され、それらはたいていインターネットにアクセスすることができる。ＬＡＮ又はＷＡＮネットワークにおいて、パソコン２０は、ネットワークアダプタ又はネットワークインターフェース５１に交差するローカルエリアネットワーク５０に接続されている。ネットワークが用いられる時には、パソコン２０は、通信にインターネット等のワイドエリアコンピュータ・ネットワークを実現するために、モデム５４又は他のモジュールを使用することができる。内部又は外部の機器であるモデム５４は、シリアルポート４６によりシステムバス２３と接続される。かかるネットワーク接続は、単なる一例であり、ネットワークの正確な構成を示すものではない。すなわち、技術の通信モジュールによって、あるコンピュータから他のコンピュータへの接続を確立する他の方法もあることに留意されたい。
【００５２】
様々な実施形態において、ハードウェア、ソフトウェア、ファームウェア、又はこれらのあらゆる組み合わせにおいて、ここで説明されたシステム及び方法を実施し得る。ソフトウェアにおいて実装される場合は、方法は不揮発性コンピュータ可読メディアの１つ又は複数の指示又はコードとして保存され得る。コンピュータ可読メディアは、データストレージを含む。あくまでも例であり限定するものではないが、そのようなコンピュータ可読メディアは、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、ＣＤ−ＲＯＭ、フラッシュメモリ、若しくは他のタイプの電気、磁気、光学式の記憶媒体、又はその他のメディアであってもよい。すなわち、これらによって指示又はデータ構造体という形で、要求されたプログラムコードを運ぶか又は保存することができ、汎用コンピュータのプロセッサによってアクセスすることができる。
【００５３】
様々な実施形態で、本発明のシステム及び方法が、モジュールとして実装され得る。ここで用語「モジュール」は、実世界の機器、コンポーネント、又はハードウェアを用いて実装されたコンポーネント配置であり、例えばＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）、ＦＰＧＡ（Ｆｉｅｌｄ−Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）等の、又は例えばモジュールの機能を実行するマイクロプロセッサシステムや指示セットによる等、ハードウェアとソフトウェアの組み合わせとして実装され得る。これらは、実行中にマイクロプロセッサシステムを特定の機器に変換する。モジュールは、ハードウェア単体により促進される一定の機能とハードウェア及びソフトウェアの組み合わせによって促進される他の機能という２つの組み合わせとして実施されてもよい。モジュールの少なくとも一部又は全部は、汎用コンピュータのプロセッサにおいて実行できる（図３において詳述したもの等）。したがって、各モジュールは様々な適当な構成で実現することができて、ここに例示した特定の実装に限られるものではない。
【００５４】
更に、「第１」、「第２」等の用語は、典型的には、異なるユニット（例えば、第１要素、第２要素）を示すために使用される。本明細書におけるこれらの用語の使用は、必ずしも、あるユニット又はイベントが別のユニット又はイベントの前に出現するような順序付けを意味するのではなく、特定のユニットを区別するためのものである。更に、名詞の単数形の使用は非限定的であり、その使用は典型的には単なるものではなく特定のものの１つ以上を含む（例えば、「メモリ」という単語を使うと、典型的には１つ以上のメモリを示す）。更に、「ｘに基づいて」及び「ｘに応答して」という語句は、何かが由来又は引き起こされる最小限の項目ｘを示すために使用され、「ｘ」は拡張可能であり、操作が実行されるアイテムの完全なリストを必ずしも記述しない。
【００５５】
なお、実施形態の通常の機能のうちの全てをここで開示しているわけではない。本発明の何れの実施形態を開発する場合においてでも、開発者の具体的な目標を達成するためには多くの実施に係る特別な決定が必要であり、これらの具体的な目標は実施形態及び開発者ごとに異なることに留意されたし。そのような開発努力は、複雑で時間を要するものであるが、本発明の利益を享受し得る当業者にとってはエンジニアリングの日常であると理解されたい。
【００５６】
更に、本明細書で使用される用語又は表現は、あくまでも説明のためであり、限定するものではない。つまり、関連技術の熟練の知識と組み合わせて、本明細書の用語又は表現は、ここに示される教示及び指針に照らして当業者によって解釈されるべきであると留意されたし。明示的な記載がない限り、明細書又は特許請求の範囲内における任意の用語に対して、珍しい又は特別な意味を帰することは意図されていない。
【００５７】
本明細書で開示された様々な側面は、例示のために本明細書に言及した既知のモジュールの、現在及び将来の既知の均等物を包含する。更に、側面及び用途を示し、説明してきたが、本明細書に開示された発明の概念から逸脱することなく、上述したよりも多くの改変が可能であることが、この開示の利益を有する当業者には明らかであろう。
【図１】
2019016335.tif 000003
【図２】
2019016335.tif 000004
【図３】
2019016335.tif 000005
【図４】
2019016335.tif 000006
【外国語明細書】
2019016335000001.pdf