"保護対象の個人情報文字列データを個人情報の項目毎に格納した個人情報辞書を備えた文字列変換装置が電子文書に含まれる個人情報を他の文字列に変換する文字列変換方法であって、電子文書から前記個人情報辞書に含まれる個人情報の文字列を文字列変換の候補文字列として検出する手順と、前記検出された候補文字列が前記電子文書のタグ要素の内容に含まれない場合に当該候補文字列の組合せの集合から候補文字列間の文字数が最小数である文字列の組合せを文字列変換の対象として判定する手順と、前記文字列変換の対象と判定された文字列の組合せを他の文字列に置き換える手順とを有することを特徴とする文字列変換方法。保護対象の個人情報文字列データを個人情報の項目毎に格納した個人情報辞書を備えた文字列変換装置が電子文書に含まれる個人情報を他の文字列に変換する文字列変換方法であって、電子文書から前記個人情報辞書に含まれる個人情報の文字列を文字列変換の候補文字列として検出する手順と、前記検出された候補文字列が前記電子文書のタグ要素の内容に含まれない場合に当該候補文字列の組合せの集合から平均文字列長より短い文字列の組合せを選択しこの選択した組合せを文字列変換の対象として判定する手順と、前記文字列変換の対象と判定された文字列の組合せを他の文字列に置き換える手順とを有することを特徴とする文字列変換方法。保護対象の個人情報文字列データを個人情報の項目毎に格納した個人情報辞書を備えた文字列変換装置が電子文書に含まれる個人情報を他の文字列に変換する文字列変換方法であって、電子文書から前記個人情報辞書に含まれる個人情報の文字列を文字列変換の候補文字列として検出する手順と、前記検出された候補文字列が前記電子文書のタグ要素の内容に含まれない場合に当該候補文字列の組合せの集合から統計的指標に基づき選択された文字列の組合せを文字列変換の対象として判定する手順と、前記文字列変換の対象と判定された文字列の組合せを他の文字列に置き換える手順とを有することを特徴とする文字列変換方法。コンピュータに請求項1から3のいずれか1項に記載の文字列変換方法の各手順を実行させるための文字列変換プログラム。しかしながら、既存技術では、マスキングしようとする個人情報の文字列と一致した文字列が入力データに含まれているとそのマスキングが行われてしまい、余計なマスキングを行ってしまう問題があった。誤ったマスキング箇所が多数発生すると、マスクされた文字列から元の個人情報文字列の推測可能性が増加するなど、個人情報保護の点で問題が発生する。特に、HTMLタグ等を含むWebページ閲覧履歴データを入力データとして扱う場合、Webページの本文だけでなく、HTMLの要素や属性情報の値に個人情報辞書に含まれる文字列とマッチするものが存在することがあり、該当箇所がマスク対象候補の文字列として検出されることがある。例えば、個人情報辞書に田中太郎や0123という文字列が含まれるとしたとき、HTMLタグ中の属性情報としてvalue田中太郎やwidth10123などが記載されている場合は、田中太郎0123の該当箇所がマスク対象候補の文字列として検出される。このとき、width10123に含まれる0123の文字列は個人情報ではないため、本来マスクすべきではない箇所である。このように、HTMLタグ等を含むWebページ閲覧履歴データを入力データとする場合、誤マスク箇所が多数発生する可能性が高く、個人情報の漏洩リスクを低下することができない。本発明は、上記の事情に鑑み、不必要なマスク処理を行うことなく電子情報に含まれる個人情報を洩れなくマスク処理することを課題とする。そこで、本発明は電子文書の構造化言語の構造を考慮して変換すべき文字列を選別することにより、情報漏洩のリスクを低減させる。本発明の文字列変換方法の態様としては、保護対象の個人情報文字列データを個人情報の項目毎に格納した個人情報辞書を備えた文字列変換装置が電子文書に含まれる個人情報を他の文字列に変換する文字列変換方法であって、電子文書から前記個人情報辞書に含まれる個人情報の文字列を文字列変換の候補文字列として検出する手順と、前記検出された候補文字列が前記電子文書のタグ要素の内容に含まれない場合に当該候補文字列の組合せの集合から候補文字列間の文字数が最小数である文字列の組合せを文字列変換の対象として判定する手順と、前記文字列変換の対象と判定された文字列の組合せを他の文字列に置き換える手順とを有する。本発明の文字列変換方法の他の態様としては、保護対象の個人情報文字列データを個人情報の項目毎に格納した個人情報辞書を備えた文字列変換装置が電子文書に含まれる個人情報を他の文字列に変換する文字列変換方法であって、電子文書から前記個人情報辞書に含まれる個人情報の文字列を文字列変換の候補文字列として検出する手順と、前記検出された候補文字列が前記電子文書のタグ要素の内容に含まれない場合に当該候補文字列の組合せの集合から平均文字列長より短い文字列の組合せを選択しこの選択した組合せを文字列変換の対象として判定する手順と、前記文字列変換の対象と判定された文字列の組合せを他の文字列に置き換える手順とを有する。本発明の文字列変換方法の他の態様としては、保護対象の個人情報文字列データを個人情報の項目毎に格納した個人情報辞書を備えた文字列変換装置が電子文書に含まれる個人情報を他の文字列に変換する文字列変換方法であって、電子文書から前記個人情報辞書に含まれる個人情報の文字列を文字列変換の候補文字列として検出する手順と、前記検出された候補文字列が前記電子文書のタグ要素の内容に含まれない場合に当該候補文字列の組合せの集合から統計的指標に基づき選択された文字列の組合せを文字列変換の対象として判定する手順と、前記文字列変換の対象と判定された文字列の組合せを他の文字列に置き換える手順とを有する。尚、本発明はコンピュータに上記の文字列変換方法の各手順を実行させるための文字列変換プログラムの態様とすることもできる。以上の発明によれば不必要なマスク処理を行うことなく電子情報に含まれる個人情報を洩れなくマスク処理できる。以下、図面を参照しながら本発明の実施の形態について説明するが本発明はこの実施形態に限定されるものではない。[実施形態1]概要図1に示された発明の実施形態1に係る文字列変換装置1はマスク処理対象の電子文書の構造化言語の構造を考慮してマスキングすべき箇所を選別することにより、一律にマスキングする方式に比べて、情報漏洩のリスクを低減させる。具体的にはマスク処理対象の電子文書から個人情報辞書30に含まれる個人情報の文字列を文字列変換の候補文字列として検出する。この検出した候補文字列が前記電子文書のタグ要素の内容に含まれない場合、当該候補文字列の組合せの集合から所定の基準で抽出した文字列の組合せを文字列変換の対象として判定する。一方、前記検出した候補文字列が前記電子文書のタグ要素の内容に含まれている場合、個人情報辞書30に含まれる個人情報と一致した候補文字列の組合せを文字列変換の対象であると判定する。以上のように文字列変換の対象と判定された文字列の組合せを他の文字列に置き換える。装置の構成文字列変換装置1は図1に示されたように少なくとも入力データ読込部20、個人情報辞書30、個人情報検出部40、マスク対象判定部50、マスク置換部60、マスク文字列格納部80を備える。文字列変換装置1の各機能部20~80はサーバコンピュータのハードウェアリソースによって実現される。すなわち、文字列変換装置1は少なくとも演算装置CPU、記憶装置メモリ、ハードディスク装置等、通信インタフェース等のコンピュータに係るハードウェアリソースを備える。そして、これらのハードウェアリソースがソフトウェアリソースOS、アプリケーション等と協働することにより各機能部20~80が実装される。入力データ読込部20は個人情報を含む入力データ10電子文書を読み込み、メモリの内部データとして保存する。入力データとしては、個人情報文字列を含む可能性のある電子文書を入力データとするものとし、HTML形式やXML形式の電子ファイルが例示される。個人情報辞書30は保護対象の個人情報文字列データを個人情報の項目毎に格納している。個人情報辞書30は例えば文字列変換装置1を所有するクライアントの個人情報の項目毎に個人情報文字列を格納している。個人情報辞書30は、図3aに例示したように、個人情報として、氏名、電話番号、携帯電話番号、クレジットカード番号、郵便番号、メールアドレス、住所等のような個人を特定可能な情報を格納している。また、複数の個人の個人情報を格納した場合、図3bに例示したように、各個人の氏名に対応付けられてその個人情報が記録されている。これらの個人情報は複数の項目によって構成されるものが多く、例えば、電話番号046‐123‐4567であれば、3つの数値文字列0461234567の組み合わせで構成されているとして扱うことができる。個人情報辞書30は、これらの個人情報を構成する項目文字列単位に辞書情報として登録したものであり、データベースシステムで管理されるものであってもよい。尚、間接的に個人を特定可能な情報として、Webページ上で利用しているハンドル名などを対象としてもよい。個人情報検出部40は入力データ10から個人情報辞書30に含まれる個人情報の文字列を文字列変換の候補文字列として検出する。具体的には個人情報辞書30に保存された個人情報データをキーとして、入力データ10中に個人情報に該当する文字列が存在するか検索を行い、該当する文字列を文字列変換の候補文字列とする。例えば図3bに示された個人情報辞書30にて、氏名が姓名として分割された項目の組み合わせとして保存されている場合、姓、名それぞれの項目をキーとして入力データ10全体を対象に検索を行い、検出された文字列を文字列変換の候補文字列とする。マスク対象判定部50は、個人情報検出部40によって検出された候補文字列を文字列変換の対象とするかを判定する。すなわち、個人情報辞書30に登録されている個人情報文字列の各項目単位で検出を行うため、個人情報文字列の項目に一致する文字列は全て文字列変換の候補文字列として検出する。例えば、個人情報辞書30に電話番号046‐123‐4567が046、123、4567として項目に分解されて登録されている場合、入力データ10に含まれる046、123、4567の文字列が文字列変換の候補となる。このとき、入力データ10中にID046やwidth123、人口4567人といった文字列を含んだ箇所が存在する場合、本来個人情報ではないこれらの箇所についても文字列変換の候補として検出されてしまうことになる。そこで、マスク対象判定部50は、入力データ10中の個人情報検出部40で検出された候補文字の間に含まれる文字列を解析することで、本来の個人情報を構成する項目文字列を検出する。具体的には、個人情報検出部40によって検出された候補文字列が入力データ10のタグ要素の内容に含まれない場合、当該候補文字列の組合せの集合から所定の基準で抽出した文字列の組合せを文字列変換の対象として判定する。例えば、当該候補文字列の組合せの集合から候補文字列間の文字数が最小数である文字列の組合せを文字列変換の対象として判定する。または、当該候補文字列の組合せの集合から平均文字列長より短い文字列の組合せを選択しこの選択した組合せを文字列変換の対象として判定する。若しくは、当該候補文字列の組合せの集合から統計的指標に基づき選択された文字列の組合せを文字列変換の対象として判定する。前記統計的指標としては例えば共起頻度が挙げられる。一方、個人情報検出部40によって検出された候補文字列が入力データ10のタグ要素の内容に含まれている場合、個人情報辞書30に含まれる個人情報と一致した候補文字列の組合せを文字列変換の対象であると判定する。マスク置換部60はマスク対象判定部50によって文字列変換の対象と判定された文字列の組合せを他の文字列に置き換える。この他の文字列はマスク文字列格納部80にて予め格納されている。処理手順の説明図2を参照しながら文字列変換装置1によって実行される文字列変換処理の手順S1~S4について説明する。S1:入力データ読込部20は、入力データ10例えば個人情報を含むWebページ閲覧履歴データを受け付けると、このデータを読み込み、メモリの内部データとして保存する。S2:個人情報検出部40は手順S1で保存された入力データ10から個人情報辞書30に含まれる個人情報の文字列を文字列変換の候補文字列として検出する。S3:マスク対象判定部50は手順S2で検出された候補文字列を文字列変換の対象とするかを判定する。図4,図5を参照しながら手順S3の具体的な手順S301~S308について説明する。ここでは入力データ10がHTML文書であり、この文書から個人情報として電話番号が検出された事例について説明する。S301:入力データ10であるHTML文書から手順S2によって検出された候補文字列を読み込む。図5の事例では例えば手順S2で検出された電話番号046‐123‐4567を構成する項目文字列046、123、4567をそれぞれp1,p2,p3としたとき、これらを文字列変換の候補文字列として読み込む。例えば、p1として検出された文字列変換の候補をmaskTargetP1と定義すると、前記HTML文書におけるp1の記載箇所を例えば登場順にmaskTargetP1,maskTargetP1,...,maskTargetP1と定義して読み込む。S302:手順S301で読み込まれた候補文字列は前記HTML文書のタグ要素例えば開始タグと終了タグで囲まれた範囲の内容に含まれるものも含まれていることがある。そこで、手順S301で読み込まれた候補文字列について、HTML文書の前記タグ要素の内容に含まれているか否かを判断する。図5の事例では各maskTargetPnについてHTML文書の開始タグと終了タグで囲まれた範囲の内容に含まれるか否かを判定する。S303:手順S302にて候補文字列がHTML文書のタグ要素の内容に含まれないNoと判断された場合、該当候補文字列が例えば電話番号カード番号のような複数の項目文字列から成る個人情報の項目文字列であるか否かを判断する。図5の事例では候補文字列046、123、4567が個人情報辞書30に格納されている個人情報を構成する項目文字の一つであるかを判断する。S304:手順303にて複数の項目文字列からなる個人情報の項目文字列であるYesと判断された場合、前記HTML文書のタグ要素の内容に含まれない該当個人情報の項目文字列の組み合わせを全て選択する。図5の事例では前記HTML文書の開始タグと終了タグで囲まれた範囲の内容に含まれない文字列変換の候補maskTargetP1,maskTargetP2,maskTargetP3の組み合わせを選択する。S305:手順S304で選択された項目文字列の組み合わせごとに項目文字列間の文字列データを読み取る。項目文字列間の文字列のうち、HTML文書のタグ要素の内容に含まれていない文字列、すなわち、HTML文書の開始タグと終了タグで囲まれた範囲以外の文字列について、その文字数をカウントする。そして、このカウント結果から、全項目文字列の組み合わせの中で最も文字数が少なくなる項目文字列の組み合わせを選択する。または、全項目文字列の組み合わせの集合からその平均文字列長よりも短くなる文字列の組み合わせをマスク対象候補として選出する。図5の事例では、候補maskTargetP1と候補maskTargetP2の間の文字列、及び、候補maskTargetP2と候補maskTargetP3の間の文字列を読み取り、メモリの内部データとして保持する。そして、これらの組み合わせの文字列のうち、候補間に多数の文字列が含まれる場合は、文字列変換の候補の組み合わせとして適切ではないと考えられるため、候補間に含まれる文字数が最も少ない組み合わせが選択される。手順S305では、上記の文字数や文字列長を考慮した選択法の代わりに、全項目文字列の組み合わせの集合から統計的指標に基づき選択された文字列の組合せをマスク対象候補として選出するようにしてもよい。統計的指標に基づき選択された文字列の組合せとしては例えば入力データ10における共起頻度の最も高い文字列の組合せが挙げられる。S306:手順S305で選択された文字列を文字列変換の対象とする。一方、手順S303で候補文字列が例えばパスワードハンドル名のように複数項目で構成される個人情報ではないNoと判断された場合、この候補文字列を文字列変換の対象とする。S307:手順S302にて候補文字列がHTML文書の前記タグ要素の内容に含まれているYesと判断された場合、当該候補文字列が個人情報を含む可能性があるもの要素または属性であるか否かを判定する。個人情報を含む可能性があるものであるYesと判断された場合、該当マスク対象の候補文字列を文字列変換の対象とする。図5の事例ではvalue...のようなタグ要素の内容において入力されたパラメータの値を示す文字列である場合、この文字列は個人情報を含む可能性があると判断する。この個人情報を含む可能性があると判断された文字列は手順S306で文字列変換の対象とされる。S308:手順S307にて候補文字列が個人情報を含む可能性のあるタグ要素の内容でないNoと判断された場合は、この候補文字列をマスク対象外として判定する。図5の事例ではwidth...のように文書構造を定義するタグの要素属性の値として示す文字列である場合、この文字列は個人情報を含む可能性は無いNoと判断され、文字列変換の対象外とする。S4:マスク置換部60は上述の手順S3で文字列変換の対象と判定された文字列を、マスク文字列格納部80から引き出した他の文字列に置き換える。これにより入力データ10に含まれる個人情報を特定できないようになる。このように個人情報がマスクされた入力データ10は出力データ70として出力される。前記他の文字列は、事前に規定された文字列を用いて置き換えるとしても良いものとする。例えば、などの記号で置き換えても良い。第三者が可読できない文字列であるとし、マスク対象文字列長と文字列のハッシュ値を用いた6:AB1Bのような文字列でもよく、マスク文字列の生成方法は制限しないものとする。マスク対象文字列をマスク用文字列にて置き換えた電子文書データを出力データ70として出力する。本実施形態の効果したがって、文字列変換装置1によれば不必要なマスク処理を行うことなく電子情報に含まれる個人情報を洩れなくマスク処理できる。すなわち、個人情報を含む電子文書を適切にマスキングする際、従来は個人情報文字列以外のHTMLタグ中の属性情報文字列についても誤ってマスキングされていたが、誤ってマスキングをすることなく、個人情報文字列のみを適切にマスキングできる。これにより、誤ってマスキングされた文字列の存在によってマスク処理前の文字列が推定される可能性を低減することができ、従来よりも安全な個人情報マスク処理の実施が可能となる。特に、文字列変換装置1は、文字列変換の対象となる文字列の抽出にあたり、文字列変換の候補文字列の組合せの集合から、候補文字列間の文字数が最小数である文字列の組合せを文字列変換の対象として選択する。このような候補文字列間の文字数に依存した文字列の選択によりマスクすべき文字列を効率的に抽出できる。または、候補文字列の組合せの集合から平均文字列長より短い文字列の組合せを選択しこの選択した組合せを文字列変換の対象として選択する。このような組み合わされた文字列の長さに依存した文字列の選択によりマスクすべき文字列を効率的に抽出できる。若しくは、候補文字列の組合せの集合から統計的指標共起頻度等に基づき選択された文字列の組合せを文字列変換の対象として選択する。このような統計的な処理により、マスクすべき文字列を効率的に抽出できる。[実施形態2]個人情報の種類によっては、個人情報を構成する項目文字列の間に記号が介在する場合がある。例えば、個人情報が電話番号、クレジットカード、郵便番号の場合、‐ハイフンのような記号が介在することが多い。個人情報が郵便番号の場合、先頭の項目文字列の前に〒の記号が表記されることが多い一方で項目文字列間に〒の記号が介在する可能性は低い。また、メールアドレスの場合、これを構成する項目文字列の間にが含まれる可能性が高いが、電子文書のタグ要素の内容例えばHTML文書やXML文書の開始タグと終了タグで囲まれた範囲の内容に含まれていない他の文字列が当該項目文字列の間に介在する可能性は低い。その他の個人情報種類でも、先頭項目文字列の前や、項目文字列間に介在する可能性が高い記号や文字列が存在し、また、項目文字列間に含まれる可能性の低い記号、文字列が存在する。そこで、実施形態2に係るマスク対象判定部50は、個人情報の表記パターン情報を蓄積した個人情報表記パターン辞書90を参照することにより、文字列変換候補の判定効率をさらに向上させている。個人情報表記パターン辞書90は図6に示したように個人情報の種類毎に個人情報の内容、表記パターン情報を格納している。当該表記パターン情報のカラムには個人情報の先頭文字文字列と当該個人情報を構成する項目文字列の間に介在する記号または文字若しくは文字列が格納されている。図6に例示された辞書90では個人情報の種類のカラムには氏名電話番号携帯電話番号クレジットカード番号郵便番号メールアドレス住所が記録されている。マスク対象判定部50は、上述の手順S304での項目文字列の組合せの選択にあたり、個人情報表記パターン辞書90を参照する。この参照により、例えば項目文字の間に郵便番号に関する〒の記号が介在する項目文字列の組み合わせを、文字列変換候補となる項目文字列の組み合わせの集合から除外する。また、例えば電話番号に関する文字列変換候補となる項目文字列の組合せの選択にあたり、当該文字間の文字列が電子文書例えばHTML文書、XML文書のタグ要素の内容に含まれない文字列‐ハイフンのみとなる組み合わせを選択する。また、各個人情報の種類については表記パターン情報毎に重みづけを行い、マスク対象判定部50が文字列変換候補の項目文字列の各組み合わせについて項目文字列間に介在する文字列の重みづけを計算するようにしてもよい。そして、重みづけの計算値が最も高くなる項目文字列の組み合わせが選択される。これにより個人情報のマスク精度が向上する。[実施形態3]図7に示された実施形態3に係るネットワークシステムはシステム内に存在する全てのクライアント端末2において文字列変換装置1を実装させている。個々のクライアント端末2はそのハードウェアリソースがソフトウェアリソースと協働することにより図1に示された文字列変換装置1の機能部20~60,80を実装している。個人情報表記パターン辞書90は個人情報表記パターン辞書サーバ3に保存されている。クライアント端末2はインターネット4を介して個人情報表記パターン辞書サーバ3と通信可能となっている。クライアント端末2を所有するクライアントの個人情報例えば氏名電話番号携帯電話番号クレジットカード番号郵便番号メールアドレス住所201は予め個人情報表記パターン辞書90に格納される。クライアント端末2はWebページ閲覧履歴データに含まれる個人情報のマスク処理手順S1~S4の実行の際に個人情報表記パターン辞書サーバ3内の個人情報表記パターン辞書90から個人情報の表示パターン情報202を引き出し、参照する。尚、本マスク処理の過程で新たに検出された個人情報は新たな個人情報表記パターン辞書90に追加される。本ネットワークシステムにおいてはWeb閲覧履歴収集サーバ5がインターネット4を介してクライアント端末2からWebページ閲覧履歴データ203を取得できるようになっている。Webページ閲覧履歴データ203に含まれる個人情報はクライアント端末2が実行する手順S1~S4によりマスク処理されている。[本発明のプログラムとしての態様]本発明は文字列変換装置1を構成する上記の機能部20~60,80,90の一部若しくは全てとしてコンピュータを機能させるプログラムで構成しこれを当該コンピュータに実行させることで実現できる。または、文字列変換装置1が実行する上記の手順S1~S4の一部若しくは全てをコンピュータに実行させるプログラムで構成しこれを当該コンピュータに実行させることで実現できる。そして、前記プログラムをそのコンピュータが読み取り可能な記録媒体、例えば、FDFloppy登録商標Diskや、MOMagneto‐Opticaldisk、ROMReadOnlyMemory、メモリカード、CDCompactDisk‐ROM、DVDDigitalVersatileDisk‐ROM、CD‐R、CD‐RW、HDD、SSD、リムーバブルディスクなどに記録して、保存したり、配布したりすることが可能である。さらに、上記のプログラムをインターネットや電子メールなど、ネットワークを介して提供することも可能である。"