JP2012113530A - 電子文書マスキングシステム - Google Patents

電子文書マスキングシステム Download PDF

Info

Publication number
JP2012113530A
JP2012113530A JP2010262282A JP2010262282A JP2012113530A JP 2012113530 A JP2012113530 A JP 2012113530A JP 2010262282 A JP2010262282 A JP 2010262282A JP 2010262282 A JP2010262282 A JP 2010262282A JP 2012113530 A JP2012113530 A JP 2012113530A
Authority
JP
Japan
Prior art keywords
character string
masking
name
electronic document
dictionary
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2010262282A
Other languages
English (en)
Other versions
JP5586435B2 (ja
Inventor
Masayuki Suzuki
将之 鈴木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Solutions Ltd
Original Assignee
Hitachi Solutions Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Solutions Ltd filed Critical Hitachi Solutions Ltd
Priority to JP2010262282A priority Critical patent/JP5586435B2/ja
Publication of JP2012113530A publication Critical patent/JP2012113530A/ja
Application granted granted Critical
Publication of JP5586435B2 publication Critical patent/JP5586435B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract

【課題】構造化されていない電子文書に含まれる個人名を適切にマスキングする。
【解決手段】電子文書マスキングシステム100は、個人情報のマスキング処理を行うマスキング処理部101と、マスキング対象となる個人情報を格納した個人情報データベース102,顧客情報データベース103と、電子文書中からマスキング対象となる文字列を抽出するためのマスキング対象判定辞書104とを備える。マスキング処理部101は、電子文書に含まれる文字列を読み込み、マスキング対象判定辞書104に定義された接頭辞,接尾辞に応じて個人名を示すマスキング対象文字列に該当するか否かを判定し、当該判定結果に応じて伏字等のマスキング処理を行う。
【選択図】図1

Description

本発明は、電子文書に含まれる個人名に対してマスキングを行う電子文書マスキングシステムに関する。
近年、個人情報保護が重要視されており、企業等で扱う電子文書データに関しても、必要に応じて個人情報の漏洩防止策が考慮されている。
例えば、電子文書データに関する個人情報漏洩防止策の一つとして、電子文書データ内に含まれる個人情報についてマスキングを行うことが考慮されている。
このような電子文書内の個人情報をマスキングするシステムとして、電子文書の構造解析を行うとともに、その解析結果に応じてXMLタグを付加した構造化文書(XML文書)を生成し、XMLタグに対して予め設定された非公開レベルに応じてマスキングを行うシステムが知られている(例えば、特許文献1参照。)。
特開2004−954542号公報 特開2007−58380号公報
しかし、特許文献1に記載のシステムは、文書作成者又は編集者により論理構造に応じた文書要素について予め属性情報が設定された電子文書に基づきXMLタグの付加を行うものである。このため、このシステムでは、予め属性情報が設定されていない電子文書についてはマスキング処理を行うことができず、また、個人の氏名(個人名)については接頭語、接尾語がついている場合であってもどこまでが氏名の範囲であるのかを特定することができない。
本発明は、構造化されていない電子文書に含まれる個人名を適切にマスキングすることができる電子文書マスキングシステムを提供することを目的とする。
上記課題を解決するために、本発明の電子文書マスキングシステムは、
個人名を抽出するための接頭辞を示す文字列を格納した氏名接頭辞辞書と、
個人名を抽出するための接尾辞を示す文字列を格納した氏名接尾辞辞書と、
電子文書に含まれる文字列が、前記氏名接頭辞辞書に格納されている接頭辞を示す文字列と一致するか否かを判定する氏名接頭辞判定手段と、
前記氏名接頭辞判定手段によって一致すると判定された場合に、前記接頭辞を示す文字列の後ろの所定の文字数の文字列の中に前記氏名接尾辞辞書に格納されている接尾辞を示す文字列と一致する文字列があるか否かを判定する氏名接尾辞判定手段と、
前記氏名接尾辞判定手段によって一致する文字列があると判定された場合に、前記電子文書の中の前記接頭辞を示す文字列、および前記接頭辞を示す文字列と前記接尾辞を示す文字列の間の文字列を伏字に置き換えるマスキング手段と、
を備える。
本発明によれば、構造化されていない電子文書に含まれる個人名を適切にマスキングすることができる。
本発明の実施形態に係る電子文書マスキングシステムの構成の一例を示す図である。 マスキング処理部の構成の一例を示す図である。 氏名接頭辞辞書の一例を示す図である。 氏名接尾辞辞書の一例を示す図である。 企業名接頭辞辞書の一例を示す図である。 企業名接尾辞辞書の一例を示す図である。 地名接尾辞辞書の一例を示す図である。 地名辞書の一例を示す図である。 電話番号判定辞書の一例を示す図である。 単位辞書の一例を示す図である。 氏名接頭辞辞書と氏名接尾辞辞書に基づくマスキング処理手順の一例を示すフローチャートである。 氏名接尾辞辞書に基づくマスキング処理手順の一例を示すフローチャートである。 企業名接頭辞辞書に基づくマスキング処理手順の一例を示すフローチャートである。 企業名接尾辞辞書に基づくマスキング処理手順の一例を示すフローチャートである。 地名接尾辞辞書に基づくマスキング処理手順の一例を示すフローチャートである。 地名マスキング処理の詳細な手順の一例を示すフローチャートである。 郵便番号マスキング処理の詳細な手順の一例を示すフローチャートである。 電子メールアドレスパターンに基づくマスキング処理手順の一例を示すフローチャートである。 メールアドレスマスキング処理の詳細な手順の一例を示すフローチャートである。 電話番号パターンに基づくマスキング処理手順の一例を示すフローチャートである。 電話番号マスキング処理の詳細な手順の一例を示すフローチャートである。
以下、本発明の実施形態に係る電子文書マスキングシステムについて図面を参照しながら説明する。
図1は、本発明の実施形態に係る電子文書マスキングシステム100の構成の一例を示す。
本実施形態に係る電子文書マスキングシステム100は、CPU(Central Processing Unit)10と、メモリ20と、記憶装置30とを有している。
メモリ20は、RAM(Random Access Memory)やROM(Read Only Memory)等を含む。メモリ20は電子文書マスキングプログラム40を記憶している。
CPU10が電子文書マスキングプログラム40を実行することにより、マスキング処理部101の機能が実現される。
記憶装置30は、ハードディスク装置や光ディスク装置等を含む。記憶装置30は、個人情報データベース(DB)102と、顧客情報データベース(DB)103と、マスキング対象判定辞書104と、電子文書110と、マスキング済電子文書120とを記憶している。
個人情報DB103には、マスキング対象となる氏名等の個人情報が格納されている。顧客情報DB104には、マスキング対象となる顧客企業名等の顧客情報が格納されている。
マスキング処理部101は、個人情報DB102、顧客情報DB103、マスキング対象判定辞書104を参照してマスキング対象文字列を抽出し、個人情報や顧客情報等に対し、伏字等のマスキング処理を行う。
マスキング対象判定辞書104には、個人情報DB102と顧客情報DB103に格納された個人情報や顧客情報を抽出するための接頭辞・接尾辞を格納する他、住所等を示す地名,電話番号,メールアドレス等、一般的に個人情報等に該当すると考えられる文字列を抽出するための文字列又は配列パターン等が格納されている。
電子文書110は、構造化されていない電子文書であり、マスキング済電子文書120は、電子文書110にマスキング処理が施された電子文書である。
CPU10は、電子文書110をメモリ20に読み込んで、電子文書110にマスキング処理を施し、マスキング済電子文書120として記憶装置30に書き込む。
図2は、マスキング処理部101の構成の一例を示す。
マスキング処理部101は、文分割部201と、氏名判定部202と、企業名判定部203と、住所判定部204と、メールアドレス判定部205と、電話番号判定部206とを有する。
文分割部201は、マスキング対象となる電子文書110を句点、読点毎に分割する。
氏名判定部202は、分割された電子文書中から、接頭辞と接尾辞に基づき個人名を示す文字列を判定して、マスキング処理を行う。
企業名判定部203は、分割された電子文書中から、接頭辞と接尾辞に基づき企業名を示す文字列を判定して、マスキング処理を行う。
住所判定部204は、分割された電子文書中から、接尾辞に基づき地名を示す文字列を判定して、マスキング処理を行う。また、数字及び記号の配列パターンに基づき郵便番号を示す文字列を判定して、マスキング処理を行う。
メールアドレス判定部205は、分割された電子文書中から、英数字及び記号の配列パターンに基づき電子メールアドレスを示す文字列を判定して、マスキング処理を行う。
電話番号判定部206は、分割した電子文書中から、数字及び記号の配列パターンに基づき電話番号を示す文字列を判定して、マスキング処理を行う。
なお、上記各判定部202〜206は、互いに独立して動作することが可能なものとする。
図3は、マスキング対象判定辞書104を構成する氏名接頭辞辞書300の一例を示す。
氏名接頭辞辞書300は、分割された電子文書中から個人名を抽出するための接頭辞を示す文字列を格納したものであり、例えば、氏名の苗字として用いられる「鈴木」「佐藤」「田中」等が該当する。
図4は、マスキング対象判定辞書104を構成する氏名接尾辞辞書400の一例を示す。
氏名接尾辞辞書400は、分割された電子文書中から個人名を抽出するための接尾辞を示す文字列を格納したものであり、例えば、氏名の後に付く「様」「殿」「さん」等が該当する。
図5は、マスキング対象判定辞書104を構成する企業名接頭辞辞書500の一例を示す。
企業名接頭辞辞書500は、分割された電子文書中から企業名を抽出するための接頭辞を示す文字列を格納したものであり、企業名の前に付く「(株)」「株式会社」「(財)」「財団法人」等が該当する。
図6は、マスキング対象判定辞書104を構成する企業名接尾辞辞書600の一例を示す。
企業名接尾辞辞書600は、分割された電子文書中から個人名,企業名を抽出するための接尾辞を示す文字列を格納したものであり、例えば、企業名の後に付く「社」「(株)」「株式会社」等が該当する。
図7は、マスキング対象判定辞書104を構成する地名接尾辞辞書700の一例を示す。
地名接尾辞辞書700は、分割された電子文書中から住所を抽出するための接尾辞を示す文字列を格納したものであり、例えば、地名の後に付く「都」「道」「府」「県」等が該当する。
図8は、マスキング対象判定辞書104を構成する地名辞書800の一例を示す。
地名辞書800は、住所に関連してマスキング対象となる文字列(地名)を格納したものである。本例では、各地名について、図7に示す地名接尾辞辞書700に格納した文字を除いた文字列としている。例えば、「北海道」をマスキング対象とした場合には、地名接尾辞辞書700に「道」を格納し、地名辞書800に「道」を除いた「北海」の文字列を格納する。
図9は、マスキング対象判定辞書104を構成する電話番号判定辞書900の一例を示す。
電話番号判定辞書900は、電話番号としてマスキング対象となる文字列(数字)を示す桁数901と、各桁数に対応した数字及びハイフンの配置パターンを示す正規表現902との各データ項目を有する。
例えば、7桁の数字に対する正規表現「¥d{7}」と「¥d{2}−¥d{4}」は、それぞれ「○○○○○○○(7桁の数字)」と「○○−○○○○(2桁の数字,ハイフン,4桁の数字)」を定義している。
図10は、マスキング対象判定辞書104を構成する単位辞書1000の一例を示す。
単位辞書1000は、複数桁数の数字の配列について、電話番号以外の文字列の場合にマスキング対象から除外するための接尾辞(単位)を格納したものである。
例えば、「m」「km」「円」等が該当し、単位辞書1000に格納された文字列が数字の後ろに付加されている場合には、電話番号以外の文字列を示すものとしてマスキング対象から除外する。
以上の構成に基づき、本実施形態に係る電子文書マスキングシステム100の行う処理を説明する。
図11は、氏名判定部202が氏名接頭辞辞書300と氏名接尾辞辞書400に基づいて行うマスキング処理手順の一例を示すフローチャートである。
氏名判定部202は、文分割部201が分割した電子文書を取得して、その電子文書を構成する文字列を1文字ずつ読み込み、分割した電子文書の最後の文字まで、以下の処理を繰り返す(S1101)。
次に、読み込んだ文字からm文字前までの文字列が個人名の接頭辞に該当するか否かを判定する(S1102、S1103)。具体的には、氏名接頭辞辞書300に格納されている文字列と一致するか否かを判定する。ここで「m」は、0からMAXまでループするものとし、MAXは図3の氏名接頭辞辞書300に格納された文字列の最大文字数とする。
判定の結果、一致した場合(S1103:Yes)には、接頭辞に該当すると判定された文字列の後ろの文字列について、個人名の接尾辞に該当するか否かの判定処理を繰り返す(S1104〜S1107)。一方、ステップS1103の判定の結果、一致しない場合(S1103:No)には次の文字列について処理を繰り返す。
個人名の接尾辞に該当するか否かの判定処理では、まず、接頭辞の後ろn文字を読み込み(S1105)、読み込んだ文字列が、氏名接尾辞辞書400に格納された文字列と一致するか否かを判定する(S1106)。ここで「n」は、1〜MAXまでループするものとし、MAXは例えば20とする。
判定の結果、一致した場合(S1106:Yes)には、接頭辞と、接頭辞と接尾辞の間の文字列をマスキング対象に設定して、伏字(●●●等)に置き換える(S1107)。
一方、ステップS1106の判定の結果、一致しない場合(S1106:No)には次の文字列について処理を繰り返す。
以上の処理を、分割した電子文書に含まれる全ての文字について行った後、処理を終了する。
例えば、分割された電子文書中に「鈴木一郎様」という個人名が含まれていた場合、ステップS1103の処理で「鈴木」という文字列が氏名接頭辞に該当すると判定される。そして、ステップS1106の処理で「様」という文字が氏名接尾辞に該当すると判定される。その結果、ステップS1107の処理で「鈴木一郎様」が、たとえば「●●●●様」に置き換えられる。
図12は、氏名判定部202が氏名接尾辞辞書400に基づいて行うマスキング処理手順の一例を示すフローチャートである。
氏名判定部202は、図11に示す処理と同様に、文分割部201が分割した電子文書を取得して、その電子文書を構成する文字列を1文字ずつ読み込み、分割された電子文書の最後の文字まで、以下の処理を繰り返す(S1201)。
次に、読み込んだ文字からm文字前までの文字列が個人名の接尾辞に該当するか否かを判定する(S1202、S1203)。具体的には、氏名接尾辞辞書400に格納されている文字列と一致するか否かを判定する。ここで「m」は、0からMAXまでループするものとし、MAXは図4の氏名接尾辞辞書400に格納された文字列の最大文字数とする。
判定の結果、一致した場合(S1203:Yes)には、接尾辞に該当すると判定された文字列の前の文字列について、個人名に該当するか否かの判定処理を繰り返す(S1204〜S1207)。一方、ステップS1203の判定の結果、一致しない場合(S1203:No)には次の文字列について処理を繰り返す。
個人名に該当するか否かの判定処理では、まず、接尾辞の前n文字を読み込み(S1205)、読み込んだ文字列が、個人情報DB102に格納された文字列と一致するか否かを判定する(S1206)。ここで「n」は、1〜MAXまでループするものとし、MAXは個人情報DB102に格納された文字列の最大文字数とする。
判定の結果、一致した場合(S1206:Yes)には、ステップS1205で読み込んだ文字列をマスキング対象に設定して、伏字(●●●等)に置き換える(S1207)。
一方、ステップS1206の判定の結果、一致しない場合(S1206:No)には次の文字列について処理を繰り返す。
以上の処理を、分割された電子文書に含まれる全ての文字について行った後、処理を終了する。
図13は、企業名判定部203が企業名接頭辞辞書500に基づいて行うマスキング処理手順の一例を示すフローチャートである。
企業名判定部203は、図11に示す処理と同様に、文分割部201が分割した電子文書を取得して、その電子文書を構成する文字列を1文字ずつ読み込み、分割した電子文書の最後の文字まで、以下の処理を繰り返す(S1301)。
次に、読み込んだ文字からm文字前までの文字列が企業名の接頭辞に該当するか否かを判定する(S1302、S1303)。具体的には、企業接頭辞辞書500に格納されている文字列と一致するか否かを判定する。ここで「m」は、0からMAXまでループするものとし、MAXは図5の企業接頭辞辞書500に格納された文字列の最大文字数とする。
判定の結果、一致した場合(S1303:Yes)には、接頭辞に該当すると判定された文字列の後ろの文字列について、企業名に該当するか否かの判定処理を繰り返す(S1304〜S1307)。一方、ステップS1303の判定の結果、一致しない場合(S1303:No)には次の文字列について処理を繰り返す。
企業名に該当するか否かの判定処理では、まず、接頭辞の後ろn文字を読み込み(S1305)、読み込んだ文字列が、顧客情報DB103のいずれかに格納された文字列と一致するか否かを判定する(S1306)。ここで「n」は、1〜MAXまでループするものとし、MAXは顧客情報DB103に格納された文字列の最大文字数とする。
判定の結果、一致した場合(S1306:Yes)には、ステップS1305で読み込んだ文字列をマスキング対象に設定して、伏字(●●●等)に置き換える(S1307)。
一方、ステップS1306の判定の結果、一致しない場合(S1306:No)には次の文字列について処理を繰り返す。
以上の処理を、分割された電子文書に含まれる全ての文字について行った後、処理を終了する。
図14は、企業名判定部203が企業名接尾辞辞書600に基づいて行うマスキング処理手順の一例を示すフローチャートである。
企業名判定部203は、図11に示す処理と同様に、文分割部201が分割した電子文書を取得して、その電子文書を構成する文字列を1文字ずつ読み込み、分割した電子文書の最後の文字まで、以下の処理を繰り返す(S1401)。
次に、読み込んだ文字からm文字前までの文字列が企業名の接尾辞に該当するか否かを判定する(S1402、S1403)。具体的には、企業接尾辞辞書600に格納されている文字列と一致するか否かを判定する。ここで「m」は、0からMAXまでループするものとし、MAXは図6の企業接尾辞辞書600に格納された文字列の最大文字数とする。
判定の結果、一致した場合(S1403:Yes)には、接尾辞に該当すると判定された文字列の前の文字列について、企業名に該当するか否かの判定処理を繰り返す(S1404〜S1407)。一方、ステップS1403の判定の結果、一致しない場合(S1403:No)には次の文字列について処理を繰り返す。
企業名に該当するか否かの判定処理では、まず、接尾辞の前n文字を読み込み(S1405)、読み込んだ文字列が、顧客情報DB103のいずれかに格納された文字列と一致するか否かを判定する(S1406)。ここで「n」は、1〜MAXまでループするものとし、MAXは顧客情報DB103に格納された文字列の最大文字数とする。
判定の結果、一致した場合(S1406:Yes)には、ステップS1405で読み込んだ文字列をマスキング対象に設定して、伏字(●●●等)に置き換える(S1407)。
一方、ステップS1406の判定の結果、一致しない場合(S1406:No)には次の文字列について処理を繰り返す。
以上の処理を、分割された電子文書に含まれる全ての文字について行った後、処理を終了する。
図15は、住所判定部204が地名接尾辞辞書700に基づいて行うマスキング処理手順の一例を示すフローチャートである。
住所判定部204は、文分割部201が分割した電子文書を取得して、その電子文書を構成する文字列を1文字ずつ読み込み、分割した電子文書の最後の文字まで、以下の処理を繰り返す(S501)。
次に、読み込んだ文字が地名に付く接尾辞であるか否かを判定する(S1502)。具体的には、地名接尾辞辞書700に格納された文字列と一致するか否かを判定する。判定の結果、一致する場合(S1502:Yes)には、後述する地名マスキング処理により地名をマスキングする(S1503)。
一方、一致しない場合(S1502:No)には、読み込んだ文字列が郵便番号に付く接頭辞「〒」か否かを判定する(S1504)。判定の結果「〒」である場合(S1504:Yes)には、後述する郵便番号マスキング処理により郵便番号をマスキングする(S1505)。
以上の処理を、分割された電子文書に含まれる全ての文字について行った後、処理を終了する。
図16は、図15のステップS1503に示す地名マスキング処理の詳細な手順の一例を示すフローチャートである
地名マスキング処理では、接尾辞の前n文字を読み込み(S1601、S1602)、読み込んだ文字列が地名辞書800に格納された文字列と一致するか否かを判定する(S1603)。ここで「n」は、1〜MAXまでループするものとし、MAXは地名辞書800に格納された文字列の最大文字数とする。
判定の結果、一致した場合(S1603:Yes)には、ステップS1602で読み込んだ文字列をマスキング対象に設定して、伏字(●●●等)に置き換え(S1604)、地名マスキング処理を終了する。この場合のマスキング対象には、接尾辞として設定された文字列(例えば、「都」「道」「府」「県」等)が含まれるものとする。
一方、ステップS1603の判定の結果、一致しない場合(S1603:No)には次の文字列について処理を繰り返す。
図17は、図15のステップS1505に示す郵便番号マスキング処理の詳細な手順の一例を示すフローチャートである。
郵便番号マスキング処理では、接頭辞の後ろ8文字を読み込み(S1701)、読み込んだ文字列が郵便番号を示す文字列の配列パターンに合致するか否かを判定する(S1702)。具体的には、8文字の文字列が郵便番号の形式(配列パターン)に合致するか否かで判定を行う。ここで郵便番号の形式(配列パターン)とは「数字3桁+ハイフン+数字4桁」の形式とする。
判定の結果、郵便番号の形式に合致した場合(S1702:Yes)には、ステップS1701で読み込んだ文字列をマスキング対象に設定して、伏字(●●●等)に置き換え(S1703)、郵便番号マスキング処理を終了する。
一方、ステップS1702の判定の結果、郵便番号の形式(配列パターン)に合致しない場合(S1702:No)には郵便番号マスキング処理を終了する。
図18は、メールアドレス判定部205の行うマスキング処理手順の一例を示すフローチャートである。
メールアドレス判定部205は、まず、文分割部201が分割した電子文書を取得して、その電子文書を構成する文字列を1文字ずつ読み込み、分割した電子文書の最後の文字まで、以下の処理を繰り返す(S1801)。
次に、読み込んだ文字が「@」であるか否かを判定する(S1802)。
判定の結果、「@」である場合(S1802:Yes)には、後述するメールアドレスマスキング処理を行う(S1803)。
一方、ステップ1802の判定の結果、「@」以外の文字の場合(S1802:No)には、次の文字について処理を繰り返す。
以上の処理を、分割された電子文書に含まれる全ての文字について行った後、処理を終了する。
図19は、図18のステップS1803に示すメールアドレスマスキング処理の詳細な手順の一例を示すフローチャートである。
メールアドレスマスキング処理では、まず、「@」から分割された電子文書の先頭まで1文字ずつ読み込み(S1901)、読み込んだ文字が英数字及び記号以外の文字であるか否かを判定する(S1902)。
判定の結果、英数字,記号以外の場合(S1902:Yes)には、それまでに読み込んだ文字列がメールアドレスの「@」より前の部分を構成するものとしてマスキング対象に設定し、伏字(●●●等)に置き換える(S1903)。
一方、読み込んだ文字が英数字又は記号の場合(S1902:No)には、次の文字を読み込む。
次に、「@」から分割された電子文書の末尾まで1文字ずつ読み込み(S1904)、読み込んだ文字が英数字及び記号以外の文字であるか否かを判定する(S1905)。
判定の結果、英数字,記号以外の場合(S1905:Yes)には、それまでに読み込んだ文字列がメールアドレスの「@」より後の部分を構成するものとしてマスキング対象に設定し、伏字(●●●等)に置き換え(S1906)、メールアドレスマスキング処理を終了する。
一方、読み込んだ文字が英数字又は記号の場合(S1905:No)には、次の文字を読み込む。
図20は、電話番号判定部206の行うマスキング処理手順の一例を示すフローチャートである。
電話番号判定部206は、まず、文分割部201が分割した電子文書を取得して、その電子文書を構成する文字列を1文字ずつ読み込み、分割した電子文書の最後の文字まで、以下の処理を繰り返す(S2001)。
次に、読み込んだ文字が数字であるか否かを判定する(S2002)。
判定の結果、数字である場合(S2002:Yes)には、読み込んだ文字(数字)から後ろにn文字目の文字を読み込み(S2003、S2004)、読み込んだ文字が数字及び記号(ハイフン)以外の文字であるか否かを判定する(S2005)。この場合、n+1(ステップS2001で読み込んだ文字を含む文字数)が、電話番号判定辞書900の桁数901に設定された数字となるように、nが5〜12に設定されている。
判定の結果、数字又は記号(ハイフン)以外の文字である場合(S2005:Yes)には、後述する電話番号マスキング処理により電話番号をマスキングする(S2006)。
一方、ステップS2005の判定の結果、読み込んだ文字が数字又は記号の場合(S2005:No)には、次の文字について処理を繰り返す。
以上の処理を、分割された電子文書に含まれる全ての文字について行った後、処理を終了する。
図21は、図20のステップS2005に示す電話番号マスキング処理の詳細な手順の一例を示すフローチャートである。
電話番号マスキング処理では、読み込んだn文字目までの文字列が電話番号判定辞書900の正規表現902と合致するか否かを判定する(S2101)。
具体的には、n+1の桁数901に対応する正規表現902の定義情報を取得して、文字列との比較を行う。
判定の結果、正規表現902の定義情報に合致する場合(S2101:Yes)には、文字列の接頭辞(m文字)又は接尾辞(m文字)が、単位辞書1000に格納された文字列と一致するか否かを判定する(S2103)。ここで「m」は、0〜MAXまでループするものとし、MAXは単位辞書1000に格納された文字列の最大文字数とする。
判定の結果、一致した場合(S2103:Yes)には、その文字列は電話番号以外を示すものとして、マスキング対象から除外して電話番号マスキング処理を終了する。
一方、ステップS2103の判定の結果、一致しない場合(S2103:No)には、S2004で読み込んだ文字列をマスキング対象に設定して、伏字(●●●等)に置き換えて電話番号マスキング処理を終了する(S2104)。
なお、本発明の構成は、上述した実施形態に示すものに限らず、各処理部の構成及び各データベース、マスキング対象判定辞書のデータ構造等を変更してもよい。例えば、上記実施形態では、個人情報データベース、顧客情報データベースと、マスキング対象判定辞書とを異なるものとして構成しているが、各データベースをマスキング対象判定辞書に含めることとしてもよい。また、各データベースは他のシステムに存在するものを用いることとしてもよい。
以上説明したように、本発明によれば、構造化されていない電子文書に含まれる個人名を適切にマスキングすることができる。
従って、電子文書の論理構造の解析等が不要となり、高速にマスキング処理を行うことが可能となる。
10…CPU、20…メモリ、30…記憶装置、40…電子文書マスキングプログラム、100…電子文書マスキングシステム、101…マスキング処理部、102…個人情報DB、103…顧客情報DB、104…マスキング対象判定辞書、110…電子文書、120…マスキング済電子文書、201…文分割部、202…氏名判定部、203…企業名判定部、204…住所判定部、205…メールアドレス判定部、206…電話番号判定部、300…氏名接頭辞辞書、400…氏名接尾辞辞書、500…企業名接頭辞辞書、600…企業名接尾辞辞書、700…地名接尾辞辞書、800…地名辞書、900…電話番号判定辞書、1000…単位辞書

Claims (1)

  1. 個人名を抽出するための接頭辞を示す文字列を格納した氏名接頭辞辞書と、
    個人名を抽出するための接尾辞を示す文字列を格納した氏名接尾辞辞書と、
    電子文書に含まれる文字列が、前記氏名接頭辞辞書に格納されている接頭辞を示す文字列と一致するか否かを判定する氏名接頭辞判定手段と、
    前記氏名接頭辞判定手段によって一致すると判定された場合に、前記接頭辞を示す文字列の後ろの所定の文字数の文字列の中に前記氏名接尾辞辞書に格納されている接尾辞を示す文字列と一致する文字列があるか否かを判定する氏名接尾辞判定手段と、
    前記氏名接尾辞判定手段によって一致する文字列があると判定された場合に、前記電子文書の中の前記接頭辞を示す文字列、および前記接頭辞を示す文字列と前記接尾辞を示す文字列の間の文字列を伏字に置き換えるマスキング手段と、
    を備えることを特徴とする電子文書マスキングシステム。
JP2010262282A 2010-11-25 2010-11-25 電子文書マスキングシステム Expired - Fee Related JP5586435B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010262282A JP5586435B2 (ja) 2010-11-25 2010-11-25 電子文書マスキングシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010262282A JP5586435B2 (ja) 2010-11-25 2010-11-25 電子文書マスキングシステム

Publications (2)

Publication Number Publication Date
JP2012113530A true JP2012113530A (ja) 2012-06-14
JP5586435B2 JP5586435B2 (ja) 2014-09-10

Family

ID=46497675

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010262282A Expired - Fee Related JP5586435B2 (ja) 2010-11-25 2010-11-25 電子文書マスキングシステム

Country Status (1)

Country Link
JP (1) JP5586435B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101282705B1 (ko) * 2012-07-30 2013-08-23 주식회사 한글과컴퓨터 전자 문서에 포함된 개인 정보 유출 방지 장치 및 방법
WO2024070153A1 (ja) * 2022-09-28 2024-04-04 富士フイルム株式会社 機密情報処理装置、その作動方法、及びデータ送受信システム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1115497A (ja) * 1997-06-19 1999-01-22 Fujitsu Ltd 氏名読み音声合成装置
JP2007058380A (ja) * 2005-08-23 2007-03-08 Hitachi Software Eng Co Ltd 電子文書マスキングシステム
JP2009140263A (ja) * 2007-12-06 2009-06-25 Nec Corp 用語共起度抽出装置、用語共起度抽出方法及び用語共起度抽出プログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1115497A (ja) * 1997-06-19 1999-01-22 Fujitsu Ltd 氏名読み音声合成装置
JP2007058380A (ja) * 2005-08-23 2007-03-08 Hitachi Software Eng Co Ltd 電子文書マスキングシステム
JP2009140263A (ja) * 2007-12-06 2009-06-25 Nec Corp 用語共起度抽出装置、用語共起度抽出方法及び用語共起度抽出プログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101282705B1 (ko) * 2012-07-30 2013-08-23 주식회사 한글과컴퓨터 전자 문서에 포함된 개인 정보 유출 방지 장치 및 방법
WO2024070153A1 (ja) * 2022-09-28 2024-04-04 富士フイルム株式会社 機密情報処理装置、その作動方法、及びデータ送受信システム

Also Published As

Publication number Publication date
JP5586435B2 (ja) 2014-09-10

Similar Documents

Publication Publication Date Title
Gooi et al. Cross-document coreference on a large scale corpus
CN101313300B (zh) 本地搜索
KR101726879B1 (ko) 문서 병합
JP2007058380A (ja) 電子文書マスキングシステム
US8224839B2 (en) Search query extension
Galleti et al. An updated survey of globular clusters in M 31-I. Classification and radial velocity for 76 candidate clusters
US20170308517A1 (en) Automatic generation of templates for parsing electronic documents
CN102339313A (zh) 用户查询结果的视觉提示细化
CN110866091A (zh) 一种数据检索方法及装置
CN107203526A (zh) 一种查询串语义需求分析方法及装置
CN106649286B (zh) 一种基于双数组字典树进行术语匹配的方法
CN111026753A (zh) 基于树形结构的标签存储方法及装置
JP5586435B2 (ja) 電子文書マスキングシステム
Corcino et al. Asymptotic estimates for r‐Whitney numbers of the second kind
CN114610955A (zh) 一种智能检索方法、装置、电子设备及存储介质
CN108874814A (zh) 法律文书的处理方法及装置
Font-Julián et al. Which types of online resource support US patent claims?
CN108304469A (zh) 用于字符串模糊匹配的方法和装置
CN106156342A (zh) 一种数据批量导入方法
JP2013003653A (ja) 検索プログラム、検索方法、検索装置、およびノード
CN105930534A (zh) 一种基于云存储服务价格的数据碎片减少方法
JP2008210229A (ja) 知的財産情報検索装置、知的財産情報検索方法及び知的財産情報検索プログラム
US20170169079A1 (en) Method and apparatus for secured information storage
Rodwald An Analysis of Data Hidden in Bitcoin Addresses
JP6044422B2 (ja) 略称生成方法および略称生成装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130729

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140314

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140408

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140509

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140701

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140722

R150 Certificate of patent or registration of utility model

Ref document number: 5586435

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees