(57)【要約】【課題】情報セキュリティ事故の事故事例データを秘匿化する場合において、識別リスクおよび予測リスクを低減する技術を提供する。【解決手段】秘匿情報公開システム１は、事故事例データ１１２に対して、まず（処理１）予め指定されている単語の秘匿処理を行う。次に（処理２）予め指定されていない単語に対して、文書データベース１３１の文書に含まれる単語と、その単語の出現度数を算出する。そして、出現度数の小さい順に、単語をK［0］,K［1］,・・,K［M-1］のように並べ、X(I1)を単語K［I1］〜K［M-1］の集合、N(X［I1］)を集合X［I1］を含む文書の件数として、1/N(X［I1］)＞識別リスクの閾値≧1/N(X［I1+1］)となるときの、K［0］〜K［I1］について秘匿処理を行い、次に、初めて予測リスクの閾値≧Np(X［I2］)/N(X［I2］)となったときの、K［I1+1］〜K［I2-1］について秘匿処理を行う。【選択図】 図１
2010231717.tif 000002
【特許請求の範囲】
【請求項１】
組織で扱われる文書の情報セキュリティ事故の状況を記載した事故事例データを秘匿化する情報秘匿装置に用いられる情報秘匿方法であって、
前記情報秘匿装置は、
前記単語の種類と秘匿処理の種類とを関連付けた情報を記憶する記憶部、および処理部を備え、
前記事故事例データごとにその事故事例データから抽出された単語を関連付けた情報と、前記文書ごとにその文書から抽出された単語を関連付けた情報とを記憶し、単語の組み合わせを取得したときにその単語の組み合わせを含む文書の件数を算出する、第１の装置と通信可能に接続され、
前記処理部は、
前記第１の装置から取得した事故事例データに含まれる単語について、その単語の種類が、前記秘匿処理の種類において、必ず秘匿しなければならない単語である場合、第１の秘匿処理を行い、
前記第１の秘匿処理の対象とならなかった残りの単語のすべてを含む集合またはいずれかを組み合わせた集合を生成し、
前記第１の装置にその生成した集合を送信し、前記第１の装置から、当該集合ごとにその集合が前記文書から抽出された単語の集合に包含される文書の件数を取得し、
前記文書の件数に基づいて、秘匿化する単語を決定し、その決定した単語に第２の秘匿処理を実行する
ことを特徴とする情報秘匿方法。
【請求項２】
前記記憶部は、前記単語の種類と関連付けて、前記必ず秘匿しなければならない単語を置換する置換語を記憶し、
前記処理部は、
前記第１の秘匿処理において、前記必ず秘匿しなければならない単語を前記置換語に置き換える秘匿処理を行う
ことを特徴とする請求項１に記載の情報秘匿方法。
【請求項３】
前記処理部は、
前記第２の秘匿処理において、前記文書の件数が所定の値を満足する範囲で、最大数の単語の集合を特定し、前記第１の秘匿処理の対象とならなかった残りの単語から、前記最大数の単語の集合の元である単語を除いた単語を、第１の秘匿対象として抽出し、前記第１の秘匿対象となった単語に秘匿処理を実行する
ことを特徴とする請求項１に記載の情報秘匿方法。
【請求項４】
前記第１の装置は、前記文書ごとに、その文書への読み書きを特定のユーザに制限するアクセス制限の有無を関連付けて記憶し、
前記処理部は、
前記第２の秘匿処理において、前記第１の秘匿処理の対象とならなかった残りの単語から前記第１の秘匿対象となった単語を除いた単語のすべてを含む集合またはいずれかを組み合わせた集合を生成し、
前記第１の装置にその生成した集合を送信し、前記第１の装置から、該集合ごとにその集合が前記文書から抽出された単語の集合に包含される文書の件数Ｎと、該文書の中でアクセス制限の有る文書の件数Ｎｐと、を取得し、
前記文書の件数ＮおよびＮｐに基づいて、秘匿化する単語を決定し、その決定した単語に秘匿処理を実行する
ことを特徴とする請求項３に記載の情報秘匿方法。
【請求項５】
前記第１の装置は、前記文書から抽出された単語の出現度数の合計を記憶し、
前記処理部は、
前記第１の秘匿処理の対象とならなかった残りの単語から前記第１の秘匿対象となった単語を除いた単語について、
前記第１の装置から取得した前記出現度数の合計の小さい順に当該単語を配列Ｋ０に格納し、前記出現度数の合計の小さい単語から一つずつ順に、配列Ｋ０から減らした配列Ｋｉを求め、その配列Ｋｉに対応するＮｐを該配列Ｋｉに対応するＮで除算した値が初めて所定の値以下となる配列Ｋｊを求め、前記配列Ｋ０の単語から配列Ｋｊの単語を除いた単語を第２の秘匿対象として抽出し、前記第２の秘匿対象となった単語に第２の秘匿処理を実行する
ことを特徴とする請求項４に記載の情報秘匿方法。
【請求項６】
前記処理部は、
前記第２の秘匿処理において、秘匿対象となった単語を、通し文字列またはランダム値によって置換する
ことを特徴とする請求項１または請求項３ないし請求項５のいずれか一項に記載の情報秘匿方法。
【請求項７】
組織で扱われる文書の情報セキュリティ事故の状況を記載した事故事例データを秘匿化する情報秘匿装置であって、
前記情報秘匿装置は、
前記単語の種類と秘匿処理の種類とを関連付けた情報を記憶する記憶部、および処理部を備え、
前記事故事例データごとにその事故事例データから抽出された単語を関連付けた情報と、前記文書ごとにその文書から抽出された単語を関連付けた情報とを記憶し、単語の組み合わせを取得したときにその単語の組み合わせを含む文書の件数を算出する、第１の装置と通信可能に接続され、
前記処理部は、
前記第１の装置から取得した事故事例データに含まれる単語について、その単語の種類が、前記秘匿処理の種類において、必ず秘匿しなければならない単語である場合、第１の秘匿処理を行い、
前記第１の秘匿処理の対象とならなかった残りの単語のすべてを含む集合またはいずれかを組み合わせた集合を生成し、
前記第１の装置にその生成した集合を送信し、前記第１の装置から、当該集合ごとにその集合が前記文書から抽出された単語の集合に包含される文書の件数を取得し、
前記文書の件数に基づいて、秘匿化する単語を決定し、その決定した単語に第２の秘匿処理を実行する
ことを特徴とする情報秘匿装置。
【請求項８】
前記記憶部は、前記単語の種類と関連付けて、前記必ず秘匿しなければならない単語を置換する置換語を記憶し、
前記処理部は、
前記第１の秘匿処理において、前記必ず秘匿しなければならない単語を前記置換語に置き換える秘匿処理を行う
ことを特徴とする請求項７に記載の情報秘匿装置。
【請求項９】
前記処理部は、
前記第２の秘匿処理において、前記文書の件数が所定の値を満足する範囲で、最大数の単語の集合を特定し、前記第１の秘匿処理の対象とならなかった残りの単語から、前記最大数の単語の集合の元である単語を除いた単語を、第１の秘匿対象として抽出し、前記第１の秘匿対象となった単語に秘匿処理を実行する
ことを特徴とする請求項７に記載の情報秘匿装置。
【請求項１０】
前記第１の装置は、前記文書ごとに、その文書への読み書きを特定のユーザに制限するアクセス制限の有無を関連付けて記憶し、
前記処理部は、
前記第２の秘匿処理において、前記第１の秘匿処理の対象とならなかった残りの単語から前記第１の秘匿対象となった単語を除いた単語のすべてを含む集合またはいずれかを組み合わせた集合を生成し、
前記第１の装置にその生成した集合を送信し、前記第１の装置から、該集合ごとにその集合が前記文書から抽出された単語の集合に包含される文書の件数Ｎと、該文書の中でアクセス制限の有る文書の件数Ｎｐと、を取得し、
前記文書の件数ＮおよびＮｐに基づいて、秘匿化する単語を決定し、その決定した単語に秘匿処理を実行する
ことを特徴とする請求項９に記載の情報秘匿装置。
【請求項１１】
前記第１の装置の記憶部は、前記文書から抽出された単語の出現度数の合計を記憶し、
前記処理部は、
前記第１の秘匿処理の対象とならなかった残りの単語から前記第１の秘匿対象となった単語を除いた単語について、
前記第１の装置から取得した前記出現度数の合計の小さい順に当該単語を配列Ｋ０に格納し、前記出現度数の合計の小さい単語から一つずつ順に、配列Ｋ０から減らした配列Ｋｉを求め、その配列Ｋｉに対応するＮｐを該配列Ｋｉに対応するＮで除算した値が初めて所定の値以下となる配列Ｋｊを求め、前記配列Ｋ０の単語から配列Ｋｊの単語を除いた単語を第２の秘匿対象として抽出し、前記第２の秘匿対象となった単語に第２の秘匿処理を実行する
ことを特徴とする請求項１０に記載の情報秘匿装置。
【請求項１２】
前記処理部は、
前記第２の秘匿処理において、秘匿対象となった単語を、通し文字列またはランダム値によって置換する
ことを特徴とする請求項７または請求項９ないし請求項１１のいずれか一項に記載の情報秘匿装置。
【請求項１３】
コンピュータに請求項１ないし請求項６のいずれか一項に記載の情報秘匿方法を実行させるための情報秘匿プログラム。
【請求項１４】
請求項１ないし請求項６のいずれか一項に記載の情報秘匿方法を、コンピュータとしての前記情報秘匿装置に実行させるための情報秘匿プログラムを格納したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、開示することを前提とした、機密情報を含む情報の秘匿処理技術に関する。
【背景技術】
【０００２】
個人情報保護法等の法令遵守、企業の機密情報保持、行政機関の守秘義務遵守等を目的として、多くの企業および行政機関は情報漏洩対策を導入している。これらの企業や機関が導入している技術面での情報漏洩対策は、認証、アクセス制御、暗号等を用いて正当な権限を持った情報利用者のみが情報の読み書きをできるようにするものである。また、技術面以外の非技術的な対策は、情報システム運用上の施策として、情報セキュリティポリシの策定、教育、手順のマニュアル化等である。
【０００３】
しかし、情報漏洩事故に関する各種調査によると、前記した情報漏洩対策を導入しているにもかかわらず、情報漏洩事故件数は増加の一途を辿っている。その事故原因の約半数は、情報機器や情報格納媒体の紛失、電子メール送信時のアドレス指定違い等、情報利用者のヒューマンエラーに起因するものであるとの結果が報告されている。情報漏洩防止を目的とする現在の技術的な対策は、機密情報の利用者、利用機会を限定できるという効果はあるが、ヒューマンエラー対策としては限定的な効果しかない。例えば、機密情報を格納したファイルにアクセス制限が施されているとしても、アクセス権限を正当に与えられているユーザが、機密情報格納ファイルを電子メールで誤って外部に送信してしまう等の事故が起こりえる。そこで、ヒューマンエラーに対しては非技術的対策で対応しようとしているのである。しかし、現状の非技術的対策によって、情報漏洩防止の効果が向上しているとは言い難い。
【０００４】
情報漏洩事故以外の、航空機、鉄道、原子力発電、医療等の人命に係る分野では、人間工学を活かした事故対策が普及している。この人命に係る分野でも古くは、ヒューマンエラーの原因は事故当事者の不注意であると考えられていた。しかし人間工学研究の進展にともなって、人間の注意力には認知的あるいは生物的な限界が存在するため、ヒューマンエラーは誰にでも常に発生しうるということが分かってきた。そこで、人命に係る分野における人間工学的な事故対策では、事故当事者だけでなく作業環境にも着目し、事故発生時には作業環境を含めてヒューマンエラー発生誘発要因を分析、誘発要因を取り除くという形で作業環境を改善するというアプローチが採られている。現在、情報漏洩対策において人間工学的なアプローチは一般的ではないが、ヒューマンエラーを防ぐという意味では役に立つ可能性がある。
【０００５】
一般的な人間工学を用いたヒューマンエラー対策では、組織的かつ継続的な事故管理を行うため、事故事例を蓄積し、組織内で共有する仕掛けを設けている。そして、情報漏洩事故に人間工学的なヒューマンエラー対策を取り入れようとする場合、事故事例を共有する方法が問題になる。すなわち、事故の記録という観点からは、取扱情報（どのような機密情報を）、事故当事者情報（誰が）、事故発生状況（いつ、どこで、どのような行為により、どのようなヒューマンエラーが発生したか）の３点を具体的に記載することが望ましい。しかし、特定の組織内であっても、このような事故事例を開示することは、情報漏洩対策あるいは顧客機密保持契約上、許されないケースが生じうる。そのため、特許文献１には、予め作成しておいた実名語／匿名語変換辞書を用いて、電子文書中の実名語を匿名語に変換する方法が記載されている。また、特許文献２には、予め用意した辞書および構文ルールを用いて、実名および実名と関連性が高い周辺表記を匿名化する方法が開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特許３５７８４５０号公報
【特許文献２】特開２００２−２６９０８１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
例えば、商取引の交渉前に顧客と機密保持契約を締結するケースでは、顧客と交渉しているという事実自体を特定の関係者以外に守秘しなければならないことがあり得る。また漏洩情報に、顧客が検討している新事業、新商品等、顧客の営業秘密が含まれている場合、事故事例を開示した結果として、関係者以外に当該営業秘密を推測されることがあってはならない。
【０００８】
ところが、情報漏洩時に扱っていた情報の詳細を明かさないとしても、漏洩した書類名称、事故当事者の所属するセクション、日時、場所、顧客名等から、本来は秘匿すべき顧客の営業秘密が推測可能となってしまうリスクが生じる。このように、人間工学的なヒューマンエラー対策を情報セキュリティに適用しようとする場合、事故発生時の状況をできるだけ開示しつつ機密情報を秘匿しなければならない、という情報漏洩に固有の問題が生じる。すなわち、情報漏洩事故事例の秘匿処理においては、（１）識別リスク：開示情報から顧客を特定できてしまうリスク、（２）予測リスク：顧客の営業秘密等秘匿すべき情報が開示した情報から予測できてしまうリスク、という２つのリスクを適切に制御する必要がある。
【０００９】
しかしながら、特許文献１に記載の技術は、予め匿名化する単語の辞書を用意しておく必要がある。しかし、特に様式の決まっていない文章を秘匿処理する場合、匿名化するすべての単語を辞書として保持するのは困難である。すなわち、識別リスクが高い単語が匿名化されずに残る可能性がある。また、情報漏洩事故事例の秘匿処理においては、取扱情報が有する顧客情報のみを秘匿し、それ以外の情報はできるだけ公開して、情報漏洩対策の立案および注意喚起のために役立てることが困難である。すなわち、特許文献１に記載の技術は、このような情報漏洩に固有の文章構造を考慮できないため、事故当事者情報、事故発生状況を過剰に匿名化してしまう虞がある。さらに、匿名化しなかった単語から匿名化した単語を予測できる可能性は考慮していないため、前記した予測リスクを低減できないという問題がある。
【００１０】
また、特許文献２に記載の技術も、特許文献１に記載の技術と同様に、予め匿名化する単語の辞書を用意しておく必要がある。しかし、特に様式の決まっていない文章に対しては、匿名化するすべての単語を辞書として保持するのは困難である。また、特許文献２に記載の技術は、各単語およびその単語を含む周辺表記の各々の出現確率を算出する。しかし、単語およびその単語を含む周辺表記の組み合わせが稀な場合、匿名化することができない。すなわち、識別リスクが高い単語が匿名化されずに残る虞がある。また、特許文献１に記載の技術と同様に、匿名化しなかった単語から匿名化した単語を予測できる可能性は考慮していないため、前記した予測リスクを低減できないという問題がある。
【００１１】
そこで、本発明は、情報セキュリティ事故の事故事例データを秘匿化する場合において、識別リスクおよび予測リスクを低減する技術を提供することを課題とする。
【課題を解決するための手段】
【００１２】
前記課題を解決するために、本発明は、情報セキュリティ事故の事故事例データを秘匿化する方法であって、事故事例データに含まれる単語のうち、指定された単語を別の語に置換して秘匿化し、次に、指定されていない単語をすべて含む集合Ｘ［０］および該集合Ｘ［０］から単語を１つずつ減らした集合を作成し、それらの集合ごとに、その集合の単語をすべて含む電子文書の件数を算出し、その算出した電子文書の件数に基づいて、事故事例の開示により顧客を特定できてしまうリスクである識別リスクを評価し、集合Ｘ［０］から識別リスクの閾値を満足する最大単語数の集合における単語を除いた単語に対して秘匿処理を実行し、次に、識別リスクの秘匿処理の対象とならなかった残りの単語をすべて含む集合Ｘ［Ｊ１］および該集合Ｘ［Ｊ１］から単語を一つずつ減らした集合を作成し、それらの集合ごとに、その集合の単語をすべて含む電子文書の件数および該電子文書の中でアクセス制限のある電子文書の件数に基づいて予測リスクを評価し、予測リスクの閾値を初めて満足する集合Ｘ［Ｊ２］を特定し、集合Ｘ［Ｊ１］から集合Ｘ［Ｊ２］の単語を除いた単語に対して秘匿処理を実行することを特徴とする。
【発明の効果】
【００１３】
本発明によれば、情報セキュリティ事故の事故事例データを秘匿化する場合において、識別リスクおよび予測リスクを低減する技術を提供することが可能となる。
【図面の簡単な説明】
【００１４】
【図１】本実施形態の概要を示す図である。
【図２】秘匿情報公開システムの構成例を示す図である。
【図３】秘匿情報公開システムを構成する各装置の内部の機能の一例を示す図である。
【図４】事故事例データベースに記憶される事故事例データの一例を示す図である。
【図５】公開用事故事例データベースに記憶される公開用事故事例データの一例を示す図である。
【図６】文書データベースに記憶される文書インデクスの一例を示す図である。
【図７】（ａ）は、検索データベースに記憶される検索インデクスの一例を示す図であり、（ｂ）は、事故事例インデクスの一例を示す図である。
【図８】リスク評価用設定データの一例を示す図である。
【図９】秘匿処理用設定データの一例を示す図である。
【図１０】事故事例を登録する処理の流れの一例を示す図である。
【図１１】（ａ）は、検索インデクス更新の処理の流れの一例を示す図であり、（ｂ）は、事故事例インデクス更新の処理の流れの一例を示す図である。
【図１２】（ａ）は、ステップＳ１１０５における検索インデクス作成処理の詳細の一例を示す図であり、（ｂ）は、ステップＳ１１１５における事故事例インデクス作成処理の詳細の一例を示す図である。
【図１３】公開用事故事例の秘匿処理の流れの一例を示す図である。
【図１４】図１３の続きの公開用事故事例の秘匿処理の流れの一例を示す図である。
【図１５】図１４の続きの公開用事故事例の秘匿処理の流れの一例を示す図である。
【図１６】ステップＳ１４０１における識別リスク評価対象となる単語の集合の作成例を示す図である。
【図１７】公開用事故事例を参照する処理の流れの一例を示す図である。
【発明を実施するための形態】
【００１５】
次に、本発明を実施するための形態（以降、「実施形態」と称す）について、適宜図面を参照しながら詳細に説明する。
【００１６】
本実施形態の説明に用いられる用語「事故事例（事故事例データとも言う）」「文書」は、数値、非数値、テキスト等からなる電子データである。また「機密情報」とは、事故事例あるいは文書中の情報のうち、予め定められた特定のユーザに開示することを制限した情報のことである。機密情報の参照、閲覧を許されたユーザは、そのユーザの所属、職位、担当内容等に基づいて、予めシステムの管理者によって定められているものとする。すなわち、事故事例あるいは文書には、それを閲覧できるユーザを制限するアクセス権が設定されている。また「秘匿処理」または「秘匿化」とは、事故事例あるいは文書が有する機密情報に相当するデータを除外する処理または代替データに置換する処理のことである。
【００１７】
≪概要≫
本実施形態における情報セキュリティ事故の事故事例データを秘匿化する秘匿情報公開システム１において用いられる情報秘匿化の概要について、図１を用いて説明する。図１に示すように、事故事例データベース１１１には、事故番号、漏洩被害者、漏洩内容、漏洩者氏名、・・、漏洩経緯に係る事故事例データ１１２が登録されている。そして、処理（１）では、予め指定されている（必ず秘匿しなければならない）単語の秘匿処理（例えば、漏洩被害者、漏洩者氏名等）によって、例えば、「ＡＢＣ銀行」→「［顧客Ａ］」、「佐藤太郎」→「［従業員Ｃ］」のように単語が置換される。
【００１８】
処理（２）では、予め指定されていない単語の秘匿処理が行われる。まず、（Ａ）準備として、社内の各種資料を保管している文書データベース１３１を参照して、保管されている各種資料に出現する単語Ｋ［・］の配列を検索インデクスとして作成する。なお、［・］は、配列を表し、中点は、配列の位置を表す。そして、単語Ｋ［・］の出現度数を文書ごとに算出し、単語Ｋ［・］ごとにその出現度数の合計を算出し、記憶しておく。そして、単語Ｋ［・］の出現度数の合計の小さい順に、Ｋ［０］、Ｋ［１］、・・、Ｋ［Ｍ−１］と配置する。
【００１９】
そして、次の（Ｂ）識別リスクに基づく秘匿処理では、識別リスクを１／Ｎ（Ｘ［Ｉ１］）で表すものとする。なお、Ｘ［Ｉ１］は、集合であり、その元を単語Ｋ［Ｉ１］〜Ｋ［Ｍ−１］とする。また、Ｎ（Ｘ［Ｉ１］）は、関数であり、集合Ｘ［Ｉ１］の元である単語Ｋ［Ｉ１］〜Ｋ［Ｍ−１］をすべて含む文書の件数である。識別リスクを１／Ｎ（）とした理由は、Ｎ（）が大きいときは、単語Ｋ［・］が当たり前のように使用されていると想定されるので、その単語Ｋ［・］を秘匿しなくても、識別リスクが小さいと考えられるためである。そして、１／Ｎ（Ｘ［Ｉ１］）＞識別リスクの閾値≧１／Ｎ（Ｘ［Ｉ１＋１］）となる、単語Ｋ［０］〜Ｋ［Ｉ１］について、秘匿処理が行われる。
【００２０】
次の（Ｃ）予測リスクに基づく秘匿処理では、初めて予測リスクの閾値≧Ｎｐ（Ｘ［Ｉ２］）／Ｎ（Ｘ［Ｉ２］）となったとき、単語Ｋ［Ｉ１＋１］〜Ｋ［Ｉ２−１］について、秘匿処理が行われる。ただし、Ｎｐ（Ｘ［Ｉ２］）は、集合Ｘ［Ｉ２］の単語をすべて含む文書の中で、アクセス制限の設定された文書の件数である。予測リスクをＮｐ（）／Ｎ（）とした理由は、アクセス制限が設定されている文書ほど、特殊な用語が含まれているので、その特殊な用語が秘匿されないと、文書の内容が予測され易くなると考えられるためである。
【００２１】
そして、処理（２）では、例えば、「ＤＥＦシステム提案書」→「［当社製品Ｂ］提案書」、「ＡＢＣ銀行殿との会議後、丸の内の居酒屋にて社内関係者の慰労会開催、・・。」→「［顧客Ａ］殿との会議後、［Ｆ］の居酒屋にて社内関係者の慰労会開催、・・。」のように秘匿化される。最終的に、処理（１）および処理（２）の結果が、公開用事故事例データ１２２のように作成される。
【００２２】
≪秘匿情報公開システム≫
図２を用いて、本実施形態における秘匿情報公開システム１の構成例について説明する。秘匿情報公開システム１は、事故事例管理装置１１０、事故事例公開装置１２０、文書管理装置１３０、検索装置１４０、公開用事故事例生成装置１５０、端末装置１６０を含む。そして、各装置１１０，１２０，１３０，１４０，１５０，１６０は、通信ネットワーク１７０を介して通信可能に接続されている。
【００２３】
事故事例管理装置１１０、事故事例公開装置１２０、文書管理装置１３０、検索装置１４０、公開用事故事例生成装置１５０、端末装置１６０の各装置は、例えばＰＣ（Personal Computer）、サーバ装置、ワークステーション等の情報処理装置のいずれかで構成されている。通信ネットワーク１７０は、例えば、インターネット、専用線、公衆網、ＬＡＮ（Local Area Network）、ＷＡＮ（Wide Area Network）のいずれかである。
【００２４】
事故事例管理装置１１０は、端末装置１６０から事故事例の登録要求を受け付けたとき、入力画面情報を返信し、その入力画面に入力された事故事例に係る情報を取得し、その情報を事故事例データベース１１１に格納する。
【００２５】
事故事例公開装置１２０は、公開用事故事例生成装置１５０によって生成された公開用事故事例を公開用事故事例データベース１２１に記憶（登録）し、その記憶した公開用事故事例を、端末装置１６０からのアクセスに応じて出力する。
【００２６】
文書管理装置１３０は、端末装置１６０から社内文章等の登録要求を受け付けて、受け付けた文書を識別するファイル名とそのファイルへアクセスする権限であるアクセス権（リード権）とを関連付けて、文書データベース１３１に記憶し、文書管理を行う。
【００２７】
検索装置１４０は、秘匿する候補の単語のインデクスを作成するインデクス作成部１４２と、インデクス作成部１４２の処理結果を記憶するインデクスデータベース１４１とを備える。インデクス作成部１４２は、文書管理装置１３０の文書データベース１３１に記憶されている社内文書等から、単語を抽出し、その単語の検索インデクスを作成する。また、インデクス作成部１４２は、抽出した単語の出現度数を算出し、検索インデクスとともに、インデクスデータベース１４１に格納する。さらに、インデクス作成部１４２は、事故事例管理装置１１０の事故事例データベース１１１に記憶されている事故事例についても、単語を抽出し、その単語の事故事例インデクスを作成し、インデクスデータベース１４１に格納する。
【００２８】
公開用事故事例生成装置１５０は、演算処理を行う識別リスク評価部１５３、予測リスク評価部１５４、および秘匿処理部１５５と、秘匿処理に用いる設定データを記憶するリスク評価用設定データ１５１および秘匿処理用設定データ１５２とを備える。識別リスク評価部１５３は、リスク評価用設定データ１５１に記憶されている識別リスク閾値を用いて識別リスク評価を行う。予測リスク評価部１５４は、リスク評価用設定データ１５１に記憶されている予測リスク閾値を用いて予測リスク評価を行う。秘匿処理部１５５は、識別リスク評価および予測リスク評価に基づいて秘匿対象とされた単語を、秘匿処理用設定データ１５２に記憶されている置換方法および置換語等を参照して、秘匿化する処理を行う。
【００２９】
端末装置１６０は、例えばＰＣであって、各装置１１０，１２０，１３０，１４０，１５０と通信可能な機能を備えている。
【００３０】
なお、図２に示す秘匿情報公開システム１では、各装置１１０，１２０，１３０，１４０，１５０を独立の装置として説明したが、これに限られなくとも良い。例えば、一つの装置がすべての装置の機能およびデータを備えていても良く、いずれかの装置の機能およびデータを備えていても構わない。また、図２には、各装置１１０，１２０，１３０，１４０，１５０，１６０はそれぞれ１つしか記載していないが、複数であっても構わない。
【００３１】
図３は、事故事例管理装置１１０、事故事例公開装置１２０、文書管理装置１３０、検索装置１４０、公開用事故事例生成装置１５０、端末装置１６０の内部の機能の一例を示している。各装置１１０，１２０，１３０，１４０，１５０，１６０は、ＣＰＵ（Central Processing Unit）３０１、主記憶装置であるメモリ３０２、記憶部３０３、入力部３０４、出力部３０５、通信部３０６によって構成されている。なお、ＣＰＵ３０１、メモリ３０２、記憶部３０３、入力部３０４、出力部３０５、通信部３０６はバス３０７により互いに接続されている。
【００３２】
ＣＰＵ３０１は、例えばコンピュータのＣＰＵである。そして、このＣＰＵ３０１がアプリケーションプログラムをメモリ３０２に展開して、それを実行することにより各装置１１０，１２０，１３０，１４０，１５０，１６０の演算処理を具現化する。記憶部３０３は、例えば、ＣＤ-Ｒ（Compact Disc）やＤＶＤ-ＲＡＭ（Digital Versatile Disk-Random Access Memory）、シリコンディスク等の記憶メディアおよび当該記憶メディアの駆動装置、ＨＤＤ（Hard Disk Drive）であり、ＣＰＵ３０１において実行されるアプリケーションプログラムを格納している。入力部３０４は、例えば、キーボード、マウス、スキャナ、マイクである。出力部３０５は、例えば、ディスプレイ装置、スピーカ、プリンタである。通信部３０６は、例えば、ＬＡＮ（Local Area Network）ボードであり、通信ネットワーク１７０（図２参照）を介する通信制御を行う。
【００３３】
次に、事故事例データベース１１１（図２参照）に記憶される事故事例データ１１２の一例を、図４を用いて説明する。事故事例データ１１２は、情報漏洩事故事例に係る情報を１件ごとに格納したものであり、フィールド４０１，４０２，４０３，４０４，４０５，４０６，４０７，４０８を有する。
【００３４】
フィールド４０１は、事故事例を識別するための事故番号である。フィールド４０２，４０３は、どのような機密情報であったかを格納する。フィールド４０２は、情報漏洩の被害者であり、漏洩した情報を機密情報とするか否かを決定していた主体である。フィールド４０２には、自社、顧客（他社、消費者）等を表すデータが格納される。フィールド４０３は、漏洩内容を格納する。
【００３５】
フィールド４０４，４０５は、誰が事故を発生させたかを格納する。フィールド４０４には情報漏洩者の氏名が格納され、フィールド４０５には情報漏洩者の所属が格納される。フィールド４０６，４０７，４０８には、いつ、どこで、どのような行為により事故が発生したか等の事故発生状況が格納される。フィールド４０６には情報漏洩が発生した年月日時が可能され、フィールド４０７には情報漏洩が発生した場所が格納され、フィールド４０８には情報漏洩が発生するまでの経緯が格納される。
【００３６】
なお、事故事例データ１１２には、前記したフィールド以外に、事故の種別、漏洩情報の種別、漏洩後に漏洩被害者に実施した対応および事故再発対策等の情報漏洩事故の管理上必要なフィールド、事例登録日時のフィールド、事故事例管理装置１１０の管理上必要なフィールドを格納しても構わない。また、図４の例では、事故事例データ１１２をテーブル形式として表しているが、これに限られなくとも良い。例えば、図４に示すテーブル形式の代わりに、ＸＭＬ（eXtensible Markup Language）を用いた任意のデータ形式であっても良い。
【００３７】
次に、公開用事故事例データベース１２１に記憶される公開用事故事例データ１２２の一例について、図５を用いて説明する。公開用事故事例データ１２２は、図４に示した事故事例データ１１２のデータを、本実施形態における秘匿処理に基づいて、秘匿化した結果を表している。例えば、事故番号１において、漏洩被害者５０２では「ＡＢＣ銀行」→［顧客Ａ］、漏洩内容５０３では「ＤＥＦシステム」→［当社製品Ｂ］、漏洩者氏名５０４では「佐藤太郎」→［従業員Ｃ］、漏洩者所属５０５では「銀行営業部情報システム課」→［部署Ｄ］、漏洩日時５０６では「2020年4月1日」→［2011年5月8日］、漏洩場所５０７では「東京」→［Ｅ］、漏洩経緯５０８では「ＡＢＣ銀行」→［顧客Ａ］、「丸の内」→［Ｆ］、および「ＤＥＦシステム」→［当社製品Ｂ］に変換されている。ただし、カギ括弧［］は説明の便宜上付与したものであり、本実施形態を実行する際は、カギ括弧は無くても良い。
【００３８】
次に、文書データベース１３１に記憶される文書インデクス１３２の一例について、図６を用いて説明する。文書インデクス１３２は、文書管理装置１３０が管理している文書の索引であり、文書番号６０１、ファイル名６０２、およびリード権６０３が関連付けられている。文書番号６０１は、文書を識別するための識別情報である。ファイル名６０２は、格納した文書を識別する名称である。リード権６０３は、文書にアクセス可能な人を特定する権限（アクセス権）である。なお、図６中では、リード権６０３に「−」が付されている場合は、リード権が設定されていないことを表している。また、図６では、文書インデクス１３２をテーブル形式で表しているが、これに限られなくても良い。例えば、ＸＭＬ（eXtensible Markup Language）を用いたデータ形式であってもよい。また、格納された文書へのアクセスは、例えば、文書番号６０１およびファイル名６０２のいずれか一方を指定することによって行われる。また、文書管理装置１３０に記憶される文書やデータは、例えば、リレーショナルデータベースのレコードデータ、ファイルシステム上のファイルとして格納される。格納する文書やデータには、社員等が作成したものや、社外から入手したものが含まれる。
【００３９】
次に、インデクスデータベース１４１に記憶される検索インデクス１４３および事故事例インデクス１４４の一例を、図７を用いて説明する（適宜図２参照）。検索インデクス１４３および事故事例インデクス１４４は、インデクス作成部１４２によって生成される。図７（ａ）は、検索インデクス１４３の一例を表している。検索インデクス１４３は、文書データベース１３１に記憶されている社内文書等から抽出された単語を検索インデクスとして格納し、その格納された単語の出現度数を記録したものである。例えば、文書番号７０１の「１」は、文書インデクス１３２（図６参照）に記憶されている文書番号６０１が「１」の文書を表す。そして、その文書には、「銀行」「ＡＢＣ」「システム」「外貨」「預金」という単語がそれぞれ３０回、２５回、１０回、８回、８回出現することを示している。また、検索インデクス１４３は、単語ごとに、その出現度数の合計を記憶している。
【００４０】
図７（ｂ）は、事故事例インデクス１４４の一例を表している。事故事例インデクス１４４は、事故事例データベース１１１に記憶されている事故事例から抽出した単語を事故事例インデクスとして格納したものであり、その格納された単語が出現した場合に「１」を付け、出現していない場合に「０」を付けて、事故事例インデクスの管理に用いられる。例えば、事故番号７１１の「１」は、事故事例データベース１１１に記憶されている事故番号６０１の「１」に対応している。そして、「ＡＢＣ」「銀行」「ＤＥＦ」「駅」「慰労会」という単語には、すべて出現したことを表す「１」が付されている。なお、単語の出現の有無を表すために、「１」「０」を付すのではなく、他の記号が用いられても構わない。
【００４１】
次に、公開用事故事例生成装置１５０に記憶されるリスク評価用設定データ１５１には、図８に示すように、識別リスクの評価に用いられる識別リスク閾値、および予測リスクの評価に用いられる予測リスク閾値が記憶される。識別リスク閾値および予測リスク閾値は、オペレータ等によって設定される。なお、前記したように、識別リスクは、開示情報から顧客を特定できてしまうリスクのことであり、予測リスクは、顧客の営業秘密等秘匿すべき情報が開示した情報から予測できてしまうリスクのことである。
【００４２】
次に、公開用事故事例生成装置１５０に記憶される秘匿処理用設定データ１５２の一例を、図９を用いて説明する（適宜図４参照）。秘匿処理用設定データ１５２は、事故事例データベース１１１に記憶される事故事例データ１１２の各フィールド４０２〜４０８に対応付けたフィールド名９０１の行９１２〜９１８ごとに、そのフィールド名９０１に対する秘匿処理の設定を表している。例えば、フィールド名９０１の行９１２の「漏洩被害者」の場合には、データ型９０２が「テキスト」、秘匿化９０３が「Ｍｕｓｔ」、秘匿処理種類９０４が「指定単語置換」、置換語９０５が「顧客＊」、例外９０６が「当社、弊社」と設定されている。
【００４３】
データ型９０２には、「テキスト」以外に「時刻型」がある。秘匿化９０３には、「Ｍｕｓｔ」以外に「Ｓｈｏｕｌｄ」がある。「Ｍｕｓｔ」は、秘匿処理を必ず実施することを表し、「Ｓｈｏｕｌｄ」は、識別リスクまたは予測リスクを勘案して必要であれば秘匿処理を実施することを表す。秘匿処理種類９０４には、「指定単語置換」以外に「指定日時置換」および「自動単語置換」がある。「指定単語置換」および「指定日時置換」の場合は、図１に示す処理（１）を実行することになる。そして、置換語９０５に格納されている語が秘匿化のために用いられる。例えば、置換語９０５の「顧客＊」における「＊」は、公開用事故事例生成装置１５０の秘匿処理部１５５が自動で付与する通し文字列（例えば、Ａ，Ｂ，・・等）あるいはランダム値に置換される。また、置換語９０５の「＊時刻」における「＊」は、年月日の数字を架空の年月日で表し、時刻は元のままとする。「自動単語置換」の場合は、図１に示す処理（２）を実行することになる。すなわち、識別リスクおよび予測リスクに基づいて、秘匿処理が実行される。また、例外９０６に記載されている語（例えば、「当社」「弊社」）については、秘匿処理は行われない。なお、前記した秘匿処理では、置換後の語をスペースにしたり、伏せ字にしたりしても構わない。
【００４４】
次に、公開用事故事例生成装置１５０の識別リスク評価部１５３における識別リスクの評価の一例について以下に説明する。本実施形態では、１件の事故事例に含まれる単語から顧客を特定されてしまう識別リスク値ＲＩを、式（１）によって算出する。
ＲＩ＝１／Ｎ（Ｘ［］）            ・・式（１）
ただし、Ｘ［］は、事故事例に含まれる単語のすべてまたはいずれかを元とする集合を表し、Ｎ（Ｘ［］）は、単語の集合Ｘ［］の元である単語すべてを含む文書データベース１３１の文書の件数を表す。なお、Ｎ（Ｘ［］）＝０の場合は、識別リスク値ＲＩは算出しない。
【００４５】
ここで、単語の集合Ｘ［ｉ］は、単語Ｋ［ｉ］，Ｋ［ｉ＋１］，・・，Ｋ［Ｍ−１］を元とするものとする（ただし、０≦ｉ≦Ｍ−１）。そして、単語の出現度数がＫ［ｉ］，Ｋ［ｉ＋１］，・・，Ｋ［Ｍ−１］の順に、大きくなるように配列されているものとする。この場合、文書の件数Ｎ（Ｘ［ｉ］）は、単語の集合Ｘ［ｉ］の元である単語の数を減らすにしたがい（すなわち、ｉを大きくするにしたがい）、単調に大きくなる。すなわち、識別リスク値ＲＩは、単語の集合Ｘ［ｉ］に含まれる単語の数を減らすにしたがい、減少する。これは、事故事例に含まれる単語の集合Ｘ［ｉ］の元である単語を検索キーとして文書データベース１３１を検索したとき、検索キーの単語をすべて含む文書の件数が大きいほど検索キーの単語はありきたりなもの（普段良く使われているもの）であり、単語の集合Ｘ［］の元である単語によって漏洩被害者が特定できてしまうリスクは小さいと考えられる。つまり、文書の件数Ｎ（Ｘ）が大きくなるほど、漏洩被害者が特定できてしまう識別リスク値ＲＩは小さくなる。図８に示した識別リスク閾値は、許容できる識別リスクの上限を設定するものである。なお、識別リスク値ＲＩを算出する式は、式（１）に限定されるものではなく、秘匿処理の対象とする単語の数の減少およびその単語の出現度数の増加のいずれかまたは両方にしたがって、識別リスク値ＲＩが単調に減少する関数であれば良い。
【００４６】
また、公開用事故事例生成装置１５０の予測リスク評価部１５４における予測リスクの評価の一例について以下に説明する。本実施形態では、１件の事故事例に含まれる単語から顧客の営業秘密等秘匿すべき情報が予測されてしまう予測リスク値ＲＥを、式（２）によって算出する。
ＲＥ＝Ｎｐ（Ｘ［］）／Ｎ（Ｘ［］）        ・・式（２）
ただし、Ｎｐ（Ｘ［］）は、単語の集合Ｘ［］の元である単語をすべて含み、かつ事故事例の閲覧者が閲覧できない（アクセス制限のある）文書の件数を表す。なお、Ｎ（Ｘ［］）＝０の場合は、予測リスク値ＲＥは算出しない。
【００４７】
ここで、式（２）の傾向を説明するために、仮にＮ（Ｘ［］）の値を固定してＮｐ（Ｘ［］）を大きくしていった場合について考察する。すなわち、予測リスク値ＲＥが大きくなるということは、Ｎｐ（Ｘ［］）の割合が大きくなることであり、事故事例の開示によって、文書に含まれる機密情報を間接的に開示してしまう傾向が強いと考えられる。したがって、本実施形態では、図８に示した予測リスク閾値によって、許容できる予測リスクの上限を設定する。
【００４８】
次に、本実施形態における処理の流れについて以下に、図１０〜図１７を用いて説明する。図１０は、事故事例データを登録する処理の流れを示す。図１１（ａ）は、検索インデクス更新の処理の流れを示す。図１１（ｂ）は、事故事例インデクス更新の処理の流れを示す。図１２（ａ）は、ステップＳ１１０５（図１１（ａ）参照）における検索インデクス作成処理の詳細を示し、（ｂ）は、ステップＳ１１１５（図１１（ｂ）参照）における事故事例インデクス作成処理の詳細を示す。図１３〜図１５は、公開用事故事例の秘匿処理の流れを示す。図１６は、ステップＳ１４０１（図１４参照）における識別リスク評価対象となる単語の集合の作成を示す。図１７は、端末装置１６０から公開用事故事例を参照する処理の流れを示す。
【００４９】
≪事故事例登録処理≫
図１０に示すステップＳ１００１では、まず、事例入力者が、端末装置１６０から事故事例登録要求を発出する。ステップＳ１００２では、事故事例管理装置１１０は、事故事例登録要求を受信したとき、事故事例を入力するための、入力画面情報を送信する。ステップＳ１００３では、端末装置１６０の出力部３０５（図３参照）に表示された入力画面に沿って、事例入力者によって事故事例が入力され、その入力された情報が送信される。ステップＳ１００４では、事故事例管理装置１１０は、該情報を受信し、その情報を事故事例データベース１１１に登録する。具体的には、事故事例管理装置１１０は、図４に示す事故事例データ１１２の事故番号４０１を参照して、最も大きな事故番号Ｉを特定し、受信した情報に事故番号Ｉ＋１を付与し、該情報を事故事例データ１１２に追加する。なお、図１０に示す処理の流れとは異なり、ステップＳ１００１およびＳ１１０２を省略して、端末装置１６０に予め事故事例用の入力フォーマットが記憶されていて、その入力フォーマットに入力された情報を、ステップＳ１００３において、送信しても良い。
【００５０】
≪インデクス更新処理≫
インデクス更新処理の開始は、事故事例データベース１１１（図２参照）が更新されたとき、文書データベース１３１（図２参照）が更新されたとき、事故事例データベース１１１に新たに格納された事故事例の件数が所定の値に達したとき、または、文書データベース１３１に新たに格納された文書の件数が所定の値に達したときである。この処理開始の起動は、自動で行われても良い。また、オペレータが任意の時点で更新処理を起動しても構わない。
【００５１】
図１１（ａ）は、検索インデクスの更新処理を示している。ステップＳ１１０１では、検索装置１４０が新たにインデクスを作成するために、更新文書を要求する。ステップＳ１１０２では、文書管理装置１３０は、文書データベース１３１（図２参照）を検索し、インデクスを更新する文書を抽出する。抽出処理は任意の方法でよく、例えば、文書インデクス１３２（図６参照）にインデクス処理済フラグを記録する欄を設けて、インデクス処理済フラグが付されていない文書を、インデクス更新対象として抽出する。または、更新文書要求を受け付けた日時を記憶部３０３（図３参照）に記録し、文書インデクス１３２に登録日時を記録する欄を設け、前回更新事例要求受付日時よりも新しい文書を、インデクス更新対象として抽出しても良い。
【００５２】
ステップＳ１１０３では、文書管理装置１３０は、抽出した更新文書を送信する。そして、ステップＳ１１０４では、検索装置１４０は、更新文書を受信する。次に、ステップＳ１１０５では、検索装置１４０は、検索インデクス１４３（図７（ａ）参照）を作成する。
【００５３】
次に、図１１（ｂ）の事故事例インデクスの更新処理について説明する。ステップＳ１１１１では、検索装置１４０が新たにインデクスを作成するために、更新事故事例を要求する。ステップＳ１１１２では、事故事例管理装置１１０は、事故事例データベース１１１（図２参照）を検索し、インデクスを更新する事故事例を抽出する。抽出処理は任意の方法でよく、例えば、事故事例データ１１２（図４参照）にインデクス処理済フラグを記録する欄を設けて、インデクス処理済フラグが付されていない事故事例を、インデクス更新対象として抽出する。または、更新事故事例要求を受け付けた日時を記憶部３０３（図３参照）に記録し、事故事例データ１１２に登録日時を記録する欄を設け、前回更新事例要求受付日時よりも新しい事故事例を、インデクス更新対象として抽出しても良い。
【００５４】
ステップＳ１１１３では、事故事例管理装置１１０は、抽出した更新事故事例を送信する。そして、ステップＳ１１１４では、検索装置１４０は、更新事故事例を受信する。次に、ステップＳ１１１５では、検索装置１４０は、事故事例インデクス１４４（図７（ｂ）参照）を作成する。
【００５５】
ここで、ステップＳ１１０５における検索インデクス作成の詳細について、図１２（ａ）を用いて説明する。まず、ステップＳ１２０１では、検索装置１４０は、更新文書の文を連結し、１個のテキストデータを生成する。ステップＳ１２０２では、検索装置１４０は、ステップＳ１２０１で生成したテキストデータに対して、形態素解析技術を適用し、テキストデータに含まれる単語を抽出する。なお、形態素解析とは、テキストデータを、文字列の最小単位である素（形態素）に分解し、分解した形態素の各々の品詞を判別する処理のことである。このステップＳ１２０２で用いられる形態素解析には公知の技術が適用できる。例えば、Yuji Matsumoto, Kazuma Takaoka, and Masayuki Asahara, "ChaSen Morphological Analyzer version 2.4.0 User's Manual", Computational Linguistics Laboratory Graduate School of Information Science, Nara Institute of Science and Technology, March, 2007に記載の技術が挙げられるが、この技術に限定されるものではない。
【００５６】
ステップＳ１２０３では、検索装置１４０は、図７（ａ）の検索インデクス１４３に未登録の単語を、新たに追加登録する。図７（ａ）には登録対象となる単語を名詞の場合で示したが、これに限られない。ステップＳ１２０４では、検索装置１４０は、テキストデータに含まれる単語の出現度数をカウントし、検索インデクス１４３に登録する。なお、出現度数の合計については、再計算を行って、その結果を上書きする。なお、ステップＳ１２０３〜Ｓ１２０４におけるインデキシング処理は公知の技術（"Information Access based on Associative Calculation", In Lecture Notes in Computer Science LNCS:1963, Springer, 2000）を用いることができる。なお、ステップＳ１２０１〜Ｓ１２０４は、図１に示す「（Ａ）準備の（ａ）」に相当する。
【００５７】
次に、ステップＳ１１１５における事故事例インデクス作成の詳細について、図１２（ｂ）を用いて説明する。まず、ステップＳ１２１１では、検索装置１４０は、更新事例データ１１２（図４参照）の事故番号４０１以外のフィールド値を連結し、１個のテキストデータを生成する。ステップＳ１２１２では、検索装置１４０は、ステップＳ１２０１で生成したテキストデータに対して、前記した形態素解析技術を適用し、テキストデータに含まれる単語を抽出する。
【００５８】
ステップＳ１２１３では、検索装置１４０は、図７（ｂ）の事故事例インデクス１４４に未登録の単語を、新たに追加登録する。図７（ｂ）には登録対象となる単語を名詞の場合で示したが、これに限られない。ステップＳ１２１４では、検索装置１４０は、テキストデータに含まれる単語には出現したことを表す「１」を付与し、出現しない場合には「０」を付与し、事故事例インデクス１４４に登録する。なお、ステップＳ１２１３〜Ｓ１２１４におけるインデキシング処理には、前記した公知の技術が適用できる。
【００５９】
≪公開用事故事例の秘匿処理≫
次に、公開用事故事例の秘匿処理について、図１３〜図１５を用いて説明する（適宜図２参照）。図１３は、公開用事故事例生成装置１５０が、秘匿処理に用いるデータを検索装置１４０および事故事例管理装置１１０から取得し、図１に示す処理（１）および（Ａ）準備を実行する処理の流れを示す。図１４は、図１に示す（Ｂ）識別リスクに基づく秘匿処理の流れを示す。図１５は、図１に示す（Ｃ）予測リスクに基づく秘匿処理の流れを示す。
【００６０】
まず、図１３に示すステップＳ１３０１では、公開用事故事例生成装置１５０が、事故番号を送信する。この送信の開始は、事故事例データベース１１１が更新されたとき、文書データベース１３１が更新されたとき、事故事例データベース１１１に新たに格納された事故事例の件数が所定の値に達したとき、または、文書データベース１３１に新たに格納された文書の件数が所定の値に達したときである。この処理開始の起動は、自動で行われても良い。また、オペレータが任意の時点で更新処理を起動しても構わない。
【００６１】
ステップＳ１３０２では、事故事例管理装置１１０が、事故事例データ１１２（図４参照）を参照して、受信した事故番号に該当する事故事例のデータ（各フィールド値）を抽出し、その抽出したデータを返信する。ステップＳ１３０３では、公開用事故事例生成装置１５０が、事故事例のデータを受信する。
【００６２】
ステップＳ１３０４では、公開用事故事例生成装置１５０の秘匿処理部１５５（図９参照）が、リスク評価用設定データ１５１（図８参照）から識別リスク閾値および予測リスク閾値を読み出す。また、ステップＳ１３０５では、公開用事故事例生成装置１５０の秘匿処理部１５５が、秘匿処理用設定データ１５２（図９参照）を読み出す。なお、ステップＳ１３０４およびステップＳ１３０５は、どちらが先に実行されても構わない。また、ステップＳ１３０４およびステップＳ１３０５は、ステップＳ１３０１の前に行われても構わない。
【００６３】
ステップＳ１３０６では、公開用事故事例生成装置１５０の秘匿処理部１５５が、ステップＳ１３０５で読み出した秘匿処理用設定データ１５２（図９参照）を参照して、指定単語置換対象のフィールド名および例外単語に該当する単語を特定し、指定単語置換対象の単語および例外単語に該当する単語の秘匿処理を実行する（第１の秘匿処理）。このステップＳ１３０６の秘匿処理は、図１に示す「処理（１）」に相当する。具体的には、図９に示すフィールド名９０１の行９１２「漏洩被害者」、行９１４「漏洩者氏名」、行９１５「漏洩者所属」が指定単語置換の対象となる。この指定単語置換の対象となったフィールド値は、置換語９０５に示される置換語によって置き換えられる。秘匿処理種類９０４が指定日時置換となっている場合も、置換語９０５に示される置換語によって置き換えられる。ただし、例外９０６で指定されている単語については、置換処理が行われない。
【００６４】
ステップＳ１３０７では、公開用事故事例生成装置１５０が、事故事例インデクス１４４（図７（ｂ）参照）および検索インデクス１４３（図７（ａ）参照）を要求する。このとき、事故事例インデクスについては、事故番号を示す情報を要求に含めて送信する。ステップＳ１３０８では、検索装置１４０が、受信した事故番号に基づいて、その事故番号に対応する事故事例インデクスおよび検索インデクスを送信する。ステップＳ１３０９では、公開用事故事例生成装置１５０が、要求した事故事例インデクスおよび検索インデクスを受信する。すなわち、公開用事故事例生成装置１５０は、事故事例のデータにおける「１」が付与されている単語と、検索インデクスの単語および出現度数の合計と、を受信する。
【００６５】
次に、図１４に示すステップＳ１４０１では、公開用事故事例生成装置１５０の識別リスク評価部１５３が、ステップＳ１３０９で受信した事故事例のデータを用いて、識別リスク評価対象となる単語（指定単語置換対象の単語および例外単語に該当しない単語）の集合Ｘ［０］を作成する。なお、集合Ｘ［０］は、前記したとおり、単語Ｋ［０］，Ｋ［１］，・・，Ｋ［Ｍ−１］を元とする集合である。なお、ステップＳ１４０１における処理が、図１に示す「（Ａ）準備の（ｂ）」に相当する。
【００６６】
ここで、ステップＳ１４０１における集合Ｘ［・］の作成処理の詳細について、図１６を用いて説明する（適宜図２参照）。ステップ１６０１，Ｓ１６０２では、公開用事故事例生成装置１５０の識別リスク評価部１５３が、秘匿処理用設定データ１５２（図９参照）を参照して、それぞれ例外単語の集合をＥと設定し、指定単語置換対象の単語の集合をＳと設定する。また、ステップＳ１６０３では、識別リスク評価部１５３が、単語を格納する配列Ｗ［・］、配列Ｋ［・］を初期化（ヌル値に設定）する。
【００６７】
ステップＳ１６０４では、識別リスク評価部１５３が、単語の出現度数の合計を参照して、配列Ｗ［・］に、事故事例のデータに出現する単語を、出現度数の合計の小さい順に代入する。ステップＳ１６０５では、識別リスク評価部１５３が、ループ処理に用いる変数ｊ，ｉをそれぞれ０に設定する。
【００６８】
ステップＳ１６０６では、識別リスク評価部１５３が、事故事例のデータに出現する単語の数Ｎとループ変数ｉとを比較する。そして、ｉがＮより小さい場合（ステップＳ１６０６でＹｅｓ）、処理はステップＳ１６０７へ進む。ステップＳ１６０７では、識別リスク評価部１５３が、配列Ｗ［ｉ］が集合Ｓに含まれているかを判定する。そして、配列Ｗ［ｉ］が集合Ｓに含まれていない場合（ステップＳ１６０７でＮｏ）、処理はステップＳ１６０８へ進む。ステップＳ１６０８では、識別リスク評価部１５３が、配列Ｗ［ｉ］が集合Ｅに含まれているかを判定する。そして、配列Ｗ［ｉ］が集合Ｅに含まれていない場合（ステップＳ１６０８でＮｏ）、処理はステップＳ１６０９へ進む。
【００６９】
ステップＳ１６０９では、識別リスク評価部１５３が、Ｋ［ｊ］＝Ｗ［ｉ］と設定する。ステップＳ１６１０，Ｓ１６１１では、識別リスク評価部１５３が、それぞれ、ｊおよびｉに１を加算する。そして、処理はステップＳ１６０６へ戻る。
【００７０】
なお、ステップＳ１６０６で、ｉがＮ以上となった場合、ループ処理は終了する。また、ステップＳ１６０７でＹｅｓの場合，ステップＳ１６０８でＹｅｓの場合には、処理はステップＳ１６１１へ進む。
【００７１】
図１６に示した処理によって、ステップＳ１４０１で作成された単語の集合Ｘ［０］は、指定単語置換対象の単語および例外単語に該当しない単語であって、出現度数の合計の小さい順に並べられた単語Ｋ［０］，Ｋ［１］，・・，Ｋ［Ｍ−１］を元として作成される。ここで、単語の集合Ｘ［Ｉ１］は、単語Ｋ［Ｉ１］，Ｋ［Ｉ１＋１］，・・，Ｋ［Ｍ−１］を元とするものと表記する。
【００７２】
図１４に戻って、ステップＳ１４０２では、識別リスク評価部１５３が、集合Ｘ［０］に含まれる単語を検索対象とする検索キー、および集合Ｘ［０］から所定の方法により、一つずつ単語を減らした各検索キーＹ［・］を作成する。例えば、検索キーＹ［Ｉ１］は、単語Ｋ［Ｉ１］，Ｋ［Ｉ１＋１］，・・，Ｋ［Ｍ−１］を半角スペースを区切りとして連結したものである。そして、所定の方法とは、Ｉ１を０からＭ−１まで、順に１つずつ大きくしていくことである。
【００７３】
ステップＳ１４０３では、識別リスク評価部１５３が、Ｙ［０］，・・，Ｙ［Ｍ−１］の各検索キーを送信する。ステップＳ１４０４では、検索装置１４０が、受信した検索キーＹ［・］ごとに、検索インデクス１４３（図７（ａ）参照）を参照して、その検索キーを満足する（検索キーに含まれるすべての単語を含む）文書の件数Ｎ（Ｙ［・］）を算出する。この文書の件数Ｎ（Ｙ［・］）の算出では、検索インデクス１４３において出現度数が１以上の単語の集合に、検索キーＹ［・］に含まれている単語の集合が含まれている文書について、件数を＋１すれば良い。そして、ステップＳ１４０５では、検索装置１４０が、算出した各文書の件数Ｎ（Ｙ［・］）を送信する。
【００７４】
ステップＳ１４０６では、識別リスク評価部１５３が、受信した文書の件数Ｎ（Ｙ［・］）に基づいて、識別リスクを評価する。そして、識別リスク評価部１５３が、識別リスクの閾値を満足する、単語数最大の集合Ｘ［Ｉ１＋１］を特定する。ここで、具体例を用いて、ステップＳ１４０６における集合Ｘ［Ｉ１＋１］の特定方法について以下に説明する。なお、検索キーＹ［Ｉ１］に含まれる単語と集合Ｘ［Ｉ１］の元である単語とは全く同じなので、Ｙ［・］をＸ［・］に置き換えて以下の説明を行う。識別リスク値は、本実施形態では式（１）で示されるように、ＲＩ＝１／Ｎ（Ｘ［・］）として表される。そして、識別リスク評価部１５３が、１／Ｎ（Ｘ［Ｉ１］）＞識別リスクの閾値≧１／Ｎ（Ｘ［Ｉ１＋１］）となるときの単語の集合Ｘ［Ｉ１＋１］を特定する。すなわち、集合Ｘ［Ｉ１＋１］は、識別リスクの閾値を満足する集合Ｘ［・］の中で、単語数最大の集合となる。なお、単語の集合Ｘ［Ｉ１＋１］の元は、単語Ｋ［Ｉ１＋１］，・・Ｋ［Ｍ−１］である。
【００７５】
ステップＳ１４０７では、識別リスク評価部１５３が、単語の集合Ｘ［０］に含まれる単語から、単語の集合Ｘ［Ｉ１＋１］に含まれる単語を除いた単語を求める（第１の秘匿対象）。すなわち、単語Ｋ［０］，・・，Ｋ［Ｉ１］が求まる。そして、公開用事故事例生成装置１５０の秘匿処理部１５５が、それらの単語に対して秘匿処理を実行する（第２の秘匿処理）。なお、ステップＳ１４０２〜Ｓ１４０７における処理が、図１に示した「（Ｂ）識別リスクに基づく秘匿処理」に相当する。
【００７６】
次に、図１５に示すステップＳ１５０１では、公開用事故事例生成装置１５０の予測リスク評価部１５４が、単語の集合Ｘ［Ｉ１＋１］に含まれる単語を検索対象とする検索キー、および単語の集合Ｘ［Ｌ１＋１］から所定の方法により一つずつ単語を減らした各検索キーＹ［・］を作成する。例えば、検索キーＹ［Ｉ１＋１］は、単語Ｋ［Ｉ１＋１］，・・，Ｋ［Ｍ−１］を半角スペースを区切りとして連結したものである。そして、所定の方法とは、Ｉ１をＩ１からＭ−２まで、順に１つずつ大きくしていくことである。なお、図１５に示す処理は、（Ｉ１＋１）≦（Ｍ−１）の場合に実行される。
【００７７】
ステップＳ１５０２では、予測リスク評価部１５４が、Ｙ［Ｉ１＋１］，・・，Ｙ［Ｍ−１］の各検索キーを送信する。ステップＳ１５０３では、検索装置１４０が、受信した検索キーＹ［・］ごとに、検索インデクス１４３（図７（ａ）参照）を参照して、その検索キーを満足する（検索キーに含まれるすべての単語を含む）文書の件数Ｎ（Ｙ［・］）を算出する。また、検索装置１４０が、文書インデクス１３２（図６参照）を参照して、検索キーを満足する文書の中、リード権が設定されている文書（すなわち、アクセス制限のある文書）の件数Ｎｐ（Ｙ［・］）を算出する。この文書の件数Ｎ（Ｙ［・］）の算出では、検索インデクス１４３において出現度数が１以上の単語の集合に、検索キーＹ［・］に含まれている単語の集合が含まれている文書について、件数を＋１すれば良い。そして、ステップＳ１５０４では、検索装置１４０が、算出した各文書の件数Ｎ（Ｙ［・］），Ｎｐ（Ｙ［・］）を送信する。
【００７８】
ステップＳ１５０５では、予測リスク評価部１５４が、受信した文書の件数Ｎ（Ｙ［・］），Ｎｐ（Ｙ［・］）に基づいて、予測リスクを評価する。そして、予測リスク評価部１５４が、予測リスクの閾値を初めて満足する集合Ｘ［Ｉ２］を特定する。具体例を用いて、ステップＳ１５０５における単語の集合Ｘ［Ｉ２］の特定方法について以下に説明する。なお、検索キーＹ［Ｉ２］に含まれる単語と集合Ｘ［Ｉ２］の元である単語とは全く同じなので、Ｙ［・］をＸ［・］に置き換えて以下の説明を行う。予測リスク値は、本実施形態では式（２）で示されるように、ＲＥ＝Ｎｐ（Ｘ［・］）／Ｎ（Ｘ［・］）として表される。そして、予測リスク評価部１５４が、初めて、予測リスクの閾値≧Ｎｐ（Ｘ［Ｉ２］）／Ｎ（Ｘ［Ｉ２］）を満足するときの単語の集合Ｘ［Ｉ２］を特定する。なお、単語の集合Ｘ［Ｉ２］の元は、単語Ｋ［Ｉ２］，・・Ｋ［Ｍ−１］である。
【００７９】
ステップＳ１５０６では、予測リスク評価部１５４が、単語の集合Ｘ［Ｉ１＋１］に含まれる単語から、単語の集合Ｘ［Ｉ２］に含まれる単語を除いた単語を求める（第２の秘匿対象）。すなわち、単語Ｋ［Ｉ１＋１］，・・，Ｋ［Ｉ２−１］が求まる。そして、公開用事故事例生成装置１５０の秘匿処理部１５５が、それらの単語に対して秘匿処理を実行する（第２の秘匿処理）。なお、ステップＳ１５０１〜Ｓ１５０６における処理が、図１に示した「（Ｃ）予測リスクに基づく秘匿処理」に相当する。
【００８０】
ステップＳ１５０７では、公開用事故事例生成装置１５０が、秘匿処理を行った公開用事故事例を、事故事例公開装置１２０に送信する。
【００８１】
次に、事故事例公開装置１２０の公開用事故事例データベース１２１（図２参照）を参照する公開用事故事例の参照処理について、図１７を用いて説明する（適宜図２参照）。まず、Ｓ１７０１では、端末装置１６０が、参照したい事故番号を送信する。例えば、事故事例公開装置１２０がＷｅｂサーバの機能を備える場合、端末装置１６０が事故事例公開装置１２０にアクセスしたとき事故一覧の情報を送信し、端末装置１６０のＷｅｂブラウザに事故一覧を表示させ、ユーザが入力部３０４（図３参照）を用いて、表示されている事故一覧から所望の事故番号を選択することにより、実現できる。
【００８２】
Ｓ１７０２では、事故事例公開装置１２０が、受信した事故番号を用いて、公開用事故事例データベース１２１を検索し、その事故番号に対応する公開用事故事例のデータを抽出する。そして、事故事例公開装置１２０が、その抽出した公開用事故事例のデータを返信する。Ｓ１７０３では、端末装置１６０が、公開用事故事例のデータを受信し、出力部３０５（図３参照）に受信した公開用事故事例のデータを表示する。
【００８３】
（変形例）
前記した本実施形態では、予測リスクの評価にアクセス制限のある文書の件数Ｎｐ（）を用いていたが、漏洩した文書の電子データの原本あるいはコピーが取得できる場合には、当該電子データを検索キーとして文書データベース１３１（図２参照）に格納されている文書を検索し、類似文書を抽出し、その抽出した文書の件数をＮｐ（）としても良い。つまり、漏洩した文書に類似の文書をすべて機密情報と見なし、これらの機密文書に固有の単語を秘匿対象とする。
【００８４】
この変形例による効果は、文書管理装置１３０に登録される文書は、作成当初は機密扱いで閲覧者を限定的していても、閲覧可能な利用者の範囲が緩められる場合に有効である。すなわち、ある顧客に対する自社製品の提案初期段階では、限定されたメンバからなるプロジェクトメンバだけにアクセス権が設定されていたとしても、時間が経過するにつれてそのプロジェクトに関連する他の部門との連携が広がって、そのプロジェクトに関わる人数が増加していくことになる。このように後から閲覧者が増加することを想定した上で過去の情報漏洩事故の推測を防ぎたい場合、予測リスクの見積もりは、アクセス権ではなく、文書の内容によって与える方が望ましい。漏洩文書の類似文書の件数をＮｐ（）として式（２）のＮｐ（Ｘ）を置き換えることにより、このような問題を解決することができる。
【００８５】
なお、類似文書の検索を実現する手段は特に限定されるものではなく、ＴＦ(Term Frequency)−ＩＤＦ(Inverse Document Frequency)法に代表される方法等を用いることができる。例えば、漏洩した文書の原本の電子データが文書データベース１３１（図２参照）に格納されていて、検索装置１４０において文書検索を行う場合、図７（ａ）の検索インデクス１４３を用いて、漏洩した文書の原本に含まれるキーレコードに類似する他のレコードをＴＦ−ＩＤＦ法で検索する。具体的には、各レコードをベクトルデータと見なし、ベクトル間のユークリッド距離で類似度を与え、所定の閾値より距離が小さいものを類似文書と見なす。このとき、類似度は、キーレコードにおける単語の出現頻度（ＴＦ）とキーレコードに出現する単語を有する文書の件数の逆数（ＩＤＦ）とを指標として、単語（フィールド）の重要さをＴＦとＩＤＦとの積により算出される。
【００８６】
以上、本実施形態および変形例における秘匿情報公開システム１では、秘匿処理用設定データ１５２（図９参照）に示す秘匿処理種類９０４を設定することにより、事故事例データベース１１１を構成するフィールドのうち優先的に秘匿処理を施すフィールドを指定することができる。そのため、識別リスク評価部１５３は、ステップＳ１６０７（図１６参照）において、「指定単語置換」が指定されたフィールドが有する単語を識別リスク評価の対象から除外する。そして、秘匿処理部１５５が、まず「指定単語置換」で指定されたフィールドが有する単語は無条件で秘匿化した上で、識別リスク評価部１５３で識別リスク評価対象の単語に対して秘匿処理を行う。これにより、顧客情報を優先的に秘匿しつつ、識別リスク評価によって識別リスクが高い単語を秘匿化し、識別リスクを低減するので、特許文献１、２に記載の技術における問題点を解決することができる。
【００８７】
また、本実施形態では、図１５に示すステップＳ１５０１〜Ｓ１５０６において、予測リスク評価部１５４が、文書管理装置１３０の文書インデクス１３２（図６参照）に設定されたリード権を考慮し、開示される公開用事故事例から、公開用事故事例の閲覧者が本来は参照できない文書に含まれる情報を予測できてしまうリスクを式（２）を用いて評価し、識別リスク評価だけでは見逃してしまう恐れのある単語を特定し、秘匿処理部１５５が、その単語に対して秘匿処理を行う。これにより、予測リスクを低減する秘匿処理が可能になる。
【００８８】
なお、本実施形態の秘匿処理によって置換される単語は、秘匿処理部１５５が付与する通し文字列を事故番号ごとに変えられる、またはすべての事故事例に共通の文字列を与えられる。例えば「ＡＢＣ銀行」が複数の事故事例データ中に出現する場合、事故事例データごとに通し文字列［顧客Ａ］、［顧客Ｂ］、［顧客Ｃ］、等と置換される。また、すべての事故事例に共通の通し文字列を与える場合は、「ＡＢＣ銀行」は、すべて［顧客Ａ］に置換される。
【００８９】
また、ステップＳ１４０３では、一度に、各検索キーＹ［・］を送信することとしたが、一つずつ検索キーを送信しても良い。そして、ステップＳ１４０４〜Ｓ１４０６を繰り返し、ステップＳ１４０６では識別リスクの評価だけを行って、最終的に集合Ｘ［Ｉ１＋１］を特定しても良い。同様に、ステップＳ１５０２では、一度に、各検索キーＹ［・］を送信することとしたが、一つずつ検索キーを送信しても良い。そして、ステップＳ１５０３〜Ｓ１５０５を繰り返し、ステップＳ１５０５では予測リスクの評価だけを行って、最終的に集合Ｘ［Ｉ２］を特定しても良い。
【００９０】
また、ステップＳ１４０６において、単語数最大の集合Ｘ［Ｉ１＋１］を特定する場合、単語の出現度数の合計の小さい順に、単語Ｋ［・］の配列を並べた状態を例として説明した。これは、単語数最大の集合Ｘ［Ｉ１＋１］を特定するのであれば、必ずしも、単語の出現度数の合計の小さい順に単語Ｋ［・］の配列を並べる必要はないが、演算が簡単になるというメリットがあるためである。
【００９１】
また、本実施形態において、公開用事故事例生成装置１５０（図２参照）の各部の処理について説明したが、これらの処理は、公開用事故事例生成装置１５０をコンピュータで実現したときに搭載されるプログラムによって実現されてもよい。このプログラムは、通信回線を介して提供することもでき、ＣＤ−ＲＯＭ等の記録媒体に書き込んで配布することも可能である。
【符号の説明】
【００９２】
１        秘匿情報公開システム
１１０    事故事例管理装置
１１１    事故事例データベース
１１２    事故事例データ
１２２    公開用事故事例データ
１３０    文書管理装置
１３１    文書データベース
１３２    文書インデクス
１４０    検索装置（第１の装置）
１４１    インデクスデータベース
１４２    インデクス作成部
１４３    検索インデクス
１４４    事故事例インデクス
１５０    公開用事故事例生成装置（情報秘匿装置）
１５１    リスク評価用設定データ
１５２    秘匿処理用設定データ
１５３    識別リスク評価部
１５４    予測リスク評価部
１５５    秘匿処理部
３０１    ＣＰＵ
【図１】
2010231717.tif 000003
【図２】
2010231717.tif 000004
【図３】
2010231717.tif 000005
【図４】
2010231717.tif 000006
【図５】
2010231717.tif 000007
【図６】
2010231717.tif 000008
【図７】
2010231717.tif 000009
【図８】
2010231717.tif 000010
【図９】
2010231717.tif 000011
【図１０】
2010231717.tif 000012
【図１１】
2010231717.tif 000013
【図１２】
2010231717.tif 000014
【図１３】
2010231717.tif 000015
【図１４】
2010231717.tif 000016
【図１５】
2010231717.tif 000017
【図１６】
2010231717.tif 000018
【図１７】
2010231717.tif 000019