JP2016133872A - Information anonymity method, information anonymity program and information anonymity device - Google Patents

Information anonymity method, information anonymity program and information anonymity device Download PDF

Info

Publication number
JP2016133872A
JP2016133872A JP2015006586A JP2015006586A JP2016133872A JP 2016133872 A JP2016133872 A JP 2016133872A JP 2015006586 A JP2015006586 A JP 2015006586A JP 2015006586 A JP2015006586 A JP 2015006586A JP 2016133872 A JP2016133872 A JP 2016133872A
Authority
JP
Japan
Prior art keywords
attribute
character string
log data
anonymization
users
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.)
Pending
Application number
JP2015006586A
Other languages
Japanese (ja)
Inventor
孝徳 及川
Takanori Oikawa
孝徳 及川
伊藤 孝一
Koichi Ito
孝一 伊藤
裕司 山岡
Yuji Yamaoka
裕司 山岡
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2015006586A priority Critical patent/JP2016133872A/en
Publication of JP2016133872A publication Critical patent/JP2016133872A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

PROBLEM TO BE SOLVED: To suppress reduction of a disclosure amount of pieces of information.SOLUTION: An information anonymity method of an embodiment is configured so that: a computer executes processing for extracting character strings which are common to a number of k or higher of users, from pieces of log data each of which is associated with each of the plural users. The information anonymity method is configured so that, the computer executes processing for grouping the extracted character strings based on an inclusion relationship, and allocating an attribute to each group. The information anonymity method is configured so that, the computer executes processing for, associating the character string in the attribute with the user having the log data including the character string, for every attribute. The computer further executes processing for anonymization of the character string of each attribute, so that, a number of users having a same combination of the character strings of attributes is equal to or higher than k.SELECTED DRAWING: Figure 1

Description

本発明の実施形態は、情報匿名化方法、情報匿名化プログラムおよび情報匿名化装置に関する。   Embodiments described herein relate generally to an information anonymization method, an information anonymization program, and an information anonymization apparatus.

各行(レコード)に各人の情報を格納したログデータなどを、各人のプライバシー保護に配慮しつつ、多くの情報が残るように変換し、市場分析などで二次活用したい場合がある。このログデータの変換時におけるプラバシー保護を目的とした技術の一つにデータの匿名化がある。匿名化では、置換・削除等により、データの1単位(行・レコード等)を個人識別性がないように加工する。個人識別性とは、知識のある人間(例えば、データの持ち主)が加工後のデータを見た時に、自分のデータを一意に特定できることである。具体的には、匿名化後のデータの1単位を見た時、データの持ち主をk人以上にしか絞れないように加工する。   In some cases, log data, etc., in which each person's information is stored in each row (record) is converted so that a large amount of information remains, taking into account the protection of each person's privacy, and may be used for secondary purposes in market analysis or the like. One technique for protecting privacy during conversion of log data is data anonymization. In anonymization, one unit (row, record, etc.) of data is processed so as not to have personal identification by replacement / deletion. Personal identification means that a knowledgeable person (for example, a data owner) can uniquely identify his / her data when he / she views the processed data. Specifically, when one unit of data after anonymization is viewed, processing is performed so that the number of data owners can be limited to k or more.

k−匿名化は、1データオーナー1行としデータを属性に分類して列とした2次元表に対してk−匿名性を達成するように値の置換・削除を行う。k−匿名性とは、QI(準識別子)として設定した属性の組み合わせが対応しうる行がkオーナー以上存在することである。   In k-anonymization, values are replaced and deleted so as to achieve k-anonymity for a two-dimensional table in which one data owner is one row and data is classified into attributes and columns. k-anonymity means that there are k or more rows that can be associated with a combination of attributes set as QI (quasi-identifier).

国際公開第2011/145401号International Publication No. 2011/145401

しかしながら、プライバシー保護のためにデータの匿名化を行って匿名性を十分に確保すると、匿名化により秘匿されるデータ量が多くなり、情報の開示量が低減してしまう場合がある、という問題がある。そして、匿名化により秘匿されるデータ量が多いと、二次活用時において、匿名化後のデータを利用する価値が薄れてしまう場合がある。   However, there is a problem that if anonymization of data is performed for privacy protection and anonymity is sufficiently secured, the amount of data concealed by anonymization increases, and the amount of information disclosed may be reduced. is there. And if there is much data amount concealed by anonymization, the value of using the data after anonymization may fade at the time of secondary utilization.

1つの側面では、情報の開示量が低減することを抑止可能とする情報匿名化方法、情報匿名化プログラムおよび情報匿名化装置を提供することを目的とする。   In one aspect, an object is to provide an information anonymization method, an information anonymization program, and an information anonymization device that can prevent a reduction in the amount of information disclosure.

第1の案では、情報匿名化方法は、コンピュータが、複数のユーザのそれぞれに関するログデータから、k以上の数のユーザに共通の文字列を抽出する処理を実行する。また、情報匿名化方法は、コンピュータが、抽出した文字列を包括関係に基づいてグループ化し、各グループに属性を割り当てる処理を実行する。また、情報匿名化方法は、コンピュータが、属性毎に、当該属性中の文字列を当該文字列を含むログデータのユーザに対応付ける処理を実行する。また、情報匿名化方法は、コンピュータが、各属性の文字列の組み合わせが同一となるユーザ数がk以上となるよう各属性の文字列を匿名化する処理を実行する。   In the first proposal, in the information anonymization method, the computer executes a process of extracting a character string common to k or more users from log data relating to each of a plurality of users. In the information anonymization method, the computer groups the extracted character strings based on the comprehensive relationship, and executes a process of assigning an attribute to each group. In the information anonymization method, the computer executes a process for associating a character string in the attribute with a user of log data including the character string for each attribute. Further, in the information anonymization method, the computer executes a process of anonymizing the character strings of the respective attributes so that the number of users having the same combination of character strings of the respective attributes becomes k or more.

本発明の1実施態様によれば、情報の開示量が低減することを抑止可能とすることができる。   According to one embodiment of the present invention, it is possible to prevent a reduction in the amount of information disclosed.

図1は、実施形態にかかる情報匿名化装置の構成を例示するブロック図である。FIG. 1 is a block diagram illustrating the configuration of the information anonymization device according to the embodiment. 図2は、実施形態にかかる情報匿名化装置の動作を例示するフローチャートである。FIG. 2 is a flowchart illustrating the operation of the information anonymization device according to the embodiment. 図3は、単語系列の列挙を説明する説明図である。FIG. 3 is an explanatory diagram illustrating enumeration of word series. 図4は、表データへの変換を説明する説明図である。FIG. 4 is an explanatory diagram for explaining conversion into tabular data. 図5は、表データへの値の設定を説明する説明図である。FIG. 5 is an explanatory diagram for explaining setting of values in the table data. 図6Aは、表データへの値の設定を説明する説明図である。FIG. 6A is an explanatory diagram illustrating setting of values in table data. 図6Bは、表データへの値の設定を説明する説明図である。FIG. 6B is an explanatory diagram illustrating setting of values in table data. 図7Aは、一般化階層木の作成を説明する説明図である。FIG. 7A is an explanatory diagram illustrating creation of a generalized hierarchical tree. 図7Bは、一般化階層木の作成を説明する説明図である。FIG. 7B is an explanatory diagram illustrating creation of a generalized hierarchical tree. 図8は、匿名化済み表データの生成を説明する説明図である。FIG. 8 is an explanatory diagram for explaining the generation of anonymized table data. 図9は、ログデータへの変換を説明する説明図である。FIG. 9 is an explanatory diagram illustrating conversion into log data. 図10は、ログデータへの変換を説明する説明図である。FIG. 10 is an explanatory diagram illustrating conversion into log data. 図11は、情報匿名化プログラムを実行するコンピュータの一例を示す説明図である。FIG. 11 is an explanatory diagram illustrating an example of a computer that executes an information anonymization program. 図12は、匿名化において閾値による開示量の違いを説明する説明図である。FIG. 12 is an explanatory diagram for explaining a difference in the disclosure amount depending on a threshold value in anonymization.

以下、図面を参照して、実施形態にかかる情報匿名化方法、情報匿名化プログラムおよび情報匿名化装置を説明する。実施形態において同一の機能を有する構成には同一の符号を付し、重複する説明は省略する。なお、以下の実施形態で説明する情報匿名化方法、情報匿名化プログラムおよび情報匿名化装置は、一例を示すに過ぎず、実施形態を限定するものではない。また、以下の各実施形態は、矛盾しない範囲内で適宜組みあわせてもよい。   Hereinafter, an information anonymization method, an information anonymization program, and an information anonymization device according to embodiments will be described with reference to the drawings. In the embodiment, configurations having the same functions are denoted by the same reference numerals, and redundant description is omitted. In addition, the information anonymization method, the information anonymization program, and the information anonymization apparatus which are demonstrated by the following embodiment only show an example, and do not limit embodiment. In addition, the following embodiments may be appropriately combined within a consistent range.

図1は、実施形態にかかる情報匿名化装置1の構成を例示するブロック図である。図1に示すように、情報匿名化装置1は、PC(Personal Computer)等の情報処理装置であり、入力部10と、制御部20と、出力部30とを有する。   FIG. 1 is a block diagram illustrating the configuration of the information anonymization device 1 according to the embodiment. As shown in FIG. 1, the information anonymization device 1 is an information processing device such as a PC (Personal Computer), and includes an input unit 10, a control unit 20, and an output unit 30.

入力部10は、キーボードやマウスなどの入力装置、CD−ROMやDVDディスク等の記憶媒体からデータを読み取る読取装置または他の機器と通信を行う通信装置(いずれの装置も図示しない)等からデータを入力する。入力部10が入力を受け付けるデータは、例えば、ログデータD10および閾値kがある。入力されたログデータD10および閾値kは、制御部20により参照される。   The input unit 10 receives data from an input device such as a keyboard or a mouse, a reading device that reads data from a storage medium such as a CD-ROM or a DVD disk, or a communication device (not shown) that communicates with other devices. Enter. Data that the input unit 10 accepts input includes, for example, log data D10 and a threshold value k. The input log data D10 and threshold value k are referred to by the control unit 20.

ログデータD10は、複数のユーザのそれぞれに関する履歴等を記述するデータである。ログデータD10は、例えば、アプリケーション・ネットワーク機器等のログデータやセンサ機器の出力データ等、企業同士・企業−ユーザ間でやり取りされるデータのうち、テキストデータとして扱えるものである。テキストデータとして扱えるログデータD10は、行やレコードといった単位で要素を区切ることができる。本実施形態では、ログデータD10には、1行に1つの履歴(1ユーザが行った動作等)が記述されているものとする。情報匿名化装置1におけるログデータD10の匿名化では、ログデータD10の要素1単位(行・レコード等)の組み合わせを個人識別性が無いように加工する。   The log data D10 is data describing a history and the like regarding each of a plurality of users. The log data D10 can be handled as text data among data exchanged between companies / company-users such as log data of application / network devices and output data of sensor devices. The log data D10 that can be handled as text data can be divided into elements such as lines and records. In the present embodiment, it is assumed that one log (such as an operation performed by one user) is described in one line in the log data D10. In the anonymization of the log data D10 in the information anonymization apparatus 1, a combination of one unit (row, record, etc.) of the log data D10 is processed so as not to have personal identification.

閾値kは、個人識別性が無いようにログデータD10を匿名化した後のデータを見た時、データの持ち主をk人以上にしか絞れないようにする、プライバシー保護の基準に合わせて設定される閾値である。例えば、閾値kには、2≦k≦入力されたログデータD10のユーザ数の値が設定される。   The threshold value k is set in accordance with a privacy protection standard so that when the data after anonymizing the log data D10 is viewed so that there is no personal identification, the number of data owners can be limited to only k or more. Threshold. For example, 2 ≦ k ≦ the number of users of the input log data D10 is set as the threshold value k.

制御部20は、各種の処理手順などを規定したプログラムおよび所要データを格納するための内部メモリと、プログラムを順次実行するCPU(Central Processing Unit)とを有し、これらによって種々の処理を実行する。制御部20は、生成部21、匿名化処理部22およびログデータ変換部23を有する。   The control unit 20 includes an internal memory for storing a program defining various processing procedures and necessary data, and a CPU (Central Processing Unit) that sequentially executes the program, and executes various processes using these. . The control unit 20 includes a generation unit 21, an anonymization processing unit 22, and a log data conversion unit 23.

生成部21は、表データ変換部211と、一般化階層木生成部212とを有し、匿名化処理部22によりログデータD10のk−匿名化を行うための中間データである表データD21および一般化階層木D22を生成する。k−匿名化は、1データオーナー(ユーザ)1行とし、データを属性に分類して列とした2次元表である表データD21に対して適用できる。QI(準識別子)として設定した属性の組み合わせが対応しうる行がkオーナー以上存在することをk−匿名性といい、k−匿名化では、表データD21に対して、k−匿名性を達成するように値の置換・削除を行う。値の置換には、属性間の包括関係を木構造で示し、置換する値を定義した一般化階層木D22を用いる。一般化階層木D22を用いた置換は、削除と比較して、木構造によって段階的に情報を落とす(匿名化する)ことができるため、情報損失を少なくできる。   The generation unit 21 includes a table data conversion unit 211 and a generalized hierarchical tree generation unit 212. The table data D21, which is intermediate data for performing k-anonymization of the log data D10 by the anonymization processing unit 22, and A generalized hierarchical tree D22 is generated. The k-anonymization can be applied to the table data D21 which is a two-dimensional table in which one data owner (user) is one row and the data is classified into attributes and columns. The k-anonymity means that there are more than k owner rows that can be supported by attribute combinations set as QIs (quasi-identifiers). In k-anonymization, k-anonymity is achieved for the table data D21. Replace and delete values as you do. For value replacement, a generalized hierarchical tree D22 in which a comprehensive relationship between attributes is shown in a tree structure and a value to be replaced is defined is used. In the replacement using the generalized hierarchical tree D22, information loss can be reduced stepwise by the tree structure (anonymization), compared with deletion, so that information loss can be reduced.

ここで、匿名化後のデータのうち、元のデータのままの箇所を開示箇所と呼び、開示箇所の量を開示量と呼ぶ。この開示量は、文字数や単語数で表す。k−匿名性を満たしているように匿名化した後のログデータ同士を比較した場合、開示量が多いほど、二次活用の際に有用である。よって、開示量の多い匿名化ほど二次活用に有用である。   Here, in the data after anonymization, the part as the original data is called a disclosed part, and the amount of the disclosed part is called a disclosed quantity. The amount of disclosure is expressed by the number of characters and the number of words. When log data after anonymizing so as to satisfy k-anonymity is compared, the more the disclosed amount, the more useful it is in secondary utilization. Therefore, anonymization with a large amount of disclosure is useful for secondary utilization.

表データ変換部211は、ログデータD10および閾値kを参照し、ログデータD10を表データD21に変換する。具体的には、表データ変換部211は、区切り文字での分割・文字種分割・形態素解析等の既存技術を用いてログデータD10の単語分割を行う。例えば、文字種分割では、ログデータD10における「name=db.path=c:/data」の行の場合、{name,=,db,.,path,=,c,:,/,data}のように分割する。   The table data converter 211 refers to the log data D10 and the threshold value k, and converts the log data D10 into table data D21. Specifically, the table data conversion unit 211 performs word division of the log data D10 using existing techniques such as division by delimiters, character type division, and morphological analysis. For example, in character type division, in the case of a line “name = db.path = c: / data” in the log data D10, {name, =, db,. , Path, =, c,:, /, data}.

表データ変換部211は、ログデータD10の単語分割をもとに、kオーナー以上のログデータD10に出現する単語系列を表データD21の属性(列)に設定する。単語系列は、順序をもった単語の組み合わせである。この単語系列では、行頭から行末における単語同士の隣接・非隣接を区別する。例えば、並んだ単語同士が隣接していない場合は、その間を非隣接箇所とし、特殊文字列「[GAP]」をおいて表現する。   The table data conversion unit 211 sets a word series appearing in the log data D10 of k owners or more as attributes (columns) of the table data D21 based on the word division of the log data D10. A word sequence is a combination of words with an order. In this word sequence, adjacent / non-adjacent words are distinguished from the beginning to the end of the line. For example, if the aligned words are not adjacent to each other, the space between them is set as a non-adjacent portion, and the special character string “[GAP]” is used for the expression.

例えば{name,[GAP],db}という単語系列において、「[GAP]」は、「name」と「db」と隣接しておらず、「name」と「db」の間に1つ以上の単語が含まれていることを示す。なお、非隣接箇所を示す特殊文字列は、後から識別可能であればいずれの文字列を用いてもよい。   For example, in the word sequence {name, [GAP], db}, “[GAP]” is not adjacent to “name” and “db”, and one or more between “name” and “db”. Indicates that a word is included. As the special character string indicating the non-adjacent portion, any character string may be used as long as it can be identified later.

また、単語系列同士では包括関係を持つ場合がある。例えば、{name,[GAP],db}と{name,=,db}は包括関係があり、{name,[GAP],db}が{name,=,db}を包括している。本実施形態では、包括している側(上記の例では{name,[GAP],db})を上位として扱う。   In addition, word sequences may have a comprehensive relationship. For example, {name, [GAP], db} and {name, =, db} have a comprehensive relationship, and {name, [GAP], db} includes {name, =, db}. In this embodiment, a comprehensive side (in the above example, {name, [GAP], db}) is treated as a higher level.

表データ変換部211は、単語分割されたログデータD10の各行から、抽出可能な全ての単語系列を列挙する。具体的には、表データ変換部211は、単語分割された後の単語系列をベースに、各単語が「そのまま」である単語系列と、「[GAP]」の2通りの状態をとるものとして、取りうる全状態を単語系列として出力する。これにより2の[単語数]乗の単語系列が出力される。   The table data conversion unit 211 lists all word sequences that can be extracted from each row of the log data D10 that has been divided into words. Specifically, the table data conversion unit 211 assumes two states: a word sequence in which each word is “as is” and “[GAP]”, based on the word sequence after word division. , Output all possible states as a word sequence. As a result, a word sequence raised to the power of 2 [number of words] is output.

例えば、{name,=,db,.}の場合は、{name,=,db,.}、{[GAP],=,db,.}、{[GAP],[GAP],db,.}…の単語系列が出力される。ここで、出力された単語系列において、[GAP]が連続している場合は、1つにまとめる。例えば、{name,=,[GAP],[GAP]}は、{name,=,[GAP]}とする。また、{[GAP]}となった単語系列は除外する。   For example, {name, =, db,. }, {Name, =, db,. }, {[GAP], =, db,. }, {[GAP], [GAP], db,. } Is output. Here, when [GAP] continues in the output word series, they are combined into one. For example, {name, =, [GAP], [GAP]} is assumed to be {name, =, [GAP]}. Also, the word series that is {[GAP]} is excluded.

次いで、表データ変換部211は、kオーナー以上に出現する単語系列を抽出して表データD21の属性(列)に設定し、ログデータD10の各行を、当てはまる属性の中で、包括関係が最上位の属性の値として表データD21の行に設定する。包括関係においては、包括する側を上位とする。また、最上位の属性が複数ある場合は、「文字列長・単語数」や「出現オーナー数」等の基準によって上位の属性を判定する。また、表データ変換部211は、既に値が設定されている属性は除外し、値が設定されていない属性の中で、包括関係が最上位の属性の値として設定する。また、ログデータD10の各行において、当てはまる属性が無い場合は、その行は値として設定しないものとする。表データ変換部211は、ログデータD10を変換した表データD21として、属性(列)および行を設定した表データD21を出力する。   Next, the table data conversion unit 211 extracts word series appearing more than k owners and sets them in the attribute (column) of the table data D21, and each row of the log data D10 has the most comprehensive relationship among the applicable attributes. It is set in the row of the table data D21 as the value of the upper attribute. In the inclusion relationship, the inclusion side is the higher rank. If there are a plurality of top-level attributes, the top-level attributes are determined based on criteria such as “character string length / number of words” and “number of appearance owners”. Also, the table data conversion unit 211 excludes attributes for which values have already been set, and sets the comprehensive relationship as the value of the highest attribute among the attributes for which values have not been set. Further, if there is no applicable attribute in each line of the log data D10, the line is not set as a value. The table data conversion unit 211 outputs table data D21 in which attributes (columns) and rows are set as table data D21 obtained by converting the log data D10.

一般化階層木生成部212は、表データD21の各属性について、属性間の包括関係を木構造で示した一般化階層木D22を生成する。具体的には、一般化階層木生成部212は、表データD21の対象属性の単語系列を根ノードとし、その根ノードからの単語系列の包括関係のある属性をノードとする木構造の一般化階層木D22を生成する。一般化階層木生成部212は、包括関係のある属性において、包括する側を親ノードとする。また、一般化階層木生成部212は、入力されたログデータD10の全ての行と、表データD21の全属性とをノードの候補とする。また、一般化階層木生成部212は、ノード追加の際に、親ノード候補が複数ある場合は、親ノードの単語系列の「文字列長・単語数」や「出現オーナー数」等の基準で一つを選択するものとする。   For each attribute of the table data D21, the generalized hierarchical tree generation unit 212 generates a generalized hierarchical tree D22 that shows a comprehensive relationship between attributes in a tree structure. Specifically, the generalized hierarchical tree generation unit 212 generalizes a tree structure in which the word sequence of the target attribute of the table data D21 is a root node and the attribute having the comprehensive relationship of the word sequence from the root node is a node. A hierarchical tree D22 is generated. The generalized hierarchical tree generation unit 212 sets an inclusion side as a parent node in an attribute having inclusion relation. The generalized hierarchical tree generation unit 212 sets all the rows of the input log data D10 and all the attributes of the table data D21 as node candidates. In addition, when there are a plurality of parent node candidates when adding a node, the generalized hierarchical tree generation unit 212 uses a criterion such as “character string length / number of words” or “number of appearance owners” of the word sequence of the parent node. One shall be selected.

匿名化処理部22は、生成部21により生成された表データD21および一般化階層木D22をもとに、表データD21に対して各属性の文字列の組み合わせが同一となるユーザ(オーナー)数がk以上となるよう各属性の文字列を匿名化するk−匿名化を行い、匿名化済み表データD23を生成する。具体的には、匿名化処理部22は、一般化階層木D22における上位のグループの属性から順に、表データD21のオーナーに対応付けられた各属性の単語系列が同一となるオーナー数がk以上となるよう各属性の文字列を匿名化する。   The anonymization processing unit 22 is based on the table data D21 and the generalized hierarchical tree D22 generated by the generation unit 21, and the number of users (owners) whose character string combinations for each attribute are the same for the table data D21. The anonymized table data D23 is generated by performing k-anonymization to anonymize the character string of each attribute so that becomes equal to or greater than k. Specifically, the anonymization processing unit 22 has, in order from the attribute of the higher group in the generalized hierarchical tree D22, the number of owners with the same word series of each attribute associated with the owner of the table data D21 is k or more. Anonymize the character string of each attribute so that

ログデータ変換部23は、生成された匿名化済み表データD23の各行をログデータに変換する。具体的には、ログデータ変換部23は、まず、匿名化済み表データD23に残った値を全て抽出する。次に、ログデータ変換部23は、対応するオーナーの元のログデータD10に対して抽出した値を用いて文字列置換処理を行う。より具体的には、元のログデータD10の各行に対し、匿名化済み表データD23より抽出した値の中からマッチする中で最も開示量が多くなる値を選択する。開示量が多くなる値とは、文字列長か単語長が最大の値である。次に、選択した値の[GAP]にあたる対象行の文字列を置換する。置換方法は、すべて同じ文字列に置換する「墨塗り」、同じ置換箇所が同じ文字列になるように置換する「トークン化」、復号鍵を持つユーザだけが閲覧できる文字列に置換する「暗号化」等がある。この置換方法は、安全性・活用性を考慮した方法がユーザにより選択され、設定されているものとする。本実施形態では、「トークン化」を用いて置換するものとする。   The log data conversion unit 23 converts each row of the generated anonymized table data D23 into log data. Specifically, the log data conversion unit 23 first extracts all the values remaining in the anonymized table data D23. Next, the log data conversion unit 23 performs a character string replacement process using the extracted value for the original log data D10 of the corresponding owner. More specifically, for each row of the original log data D10, a value with the largest disclosure amount is selected from the values extracted from the anonymized table data D23. The value that increases the disclosed amount is a value that has the maximum character string length or word length. Next, the character string of the target line corresponding to [GAP] of the selected value is replaced. The replacement method is “sanitization” to replace all with the same character string, “tokenize” to replace the same replacement part with the same character string, and “encryption” to replace with a character string that only a user with a decryption key can view. ”. In this replacement method, it is assumed that a method considering safety and utilization is selected and set by the user. In the present embodiment, replacement is performed using “tokenization”.

出力部30は、制御部20により匿名化されたログデータD30を出力する。具体的には、出力部30は、ファイルなどの他、ディスプレイ(図示しない)への表示や、通信装置(図示しない)を介して接続する他の装置への送信などにより、ログデータD30を出力する。   The output unit 30 outputs log data D30 that has been anonymized by the control unit 20. Specifically, the output unit 30 outputs the log data D30 by displaying on a display (not shown) or transmitting to another device connected via a communication device (not shown) in addition to a file or the like. To do.

ここで、情報匿名化装置1の動作の詳細を説明する。図2は、実施形態にかかる情報匿名化装置1の動作を例示するフローチャートである。   Here, the detail of operation | movement of the information anonymization apparatus 1 is demonstrated. FIG. 2 is a flowchart illustrating the operation of the information anonymization device 1 according to the embodiment.

図2に示すように、処理が開始されると、入力部10は、ログデータD10および閾値kの入力を受け付ける。次いで、表データ変換部211は、区切り文字での分割・文字種分割・形態素解析等の既存技術を用いて、受け付けたログデータD10の単語分割を行う(S1)。   As shown in FIG. 2, when the process is started, the input unit 10 receives input of log data D10 and a threshold value k. Next, the table data conversion unit 211 performs word division of the received log data D10 using existing techniques such as division by a delimiter, character type division, and morpheme analysis (S1).

次いで、表データ変換部211は、単語分割したログデータD10から全単語系列を列挙する(S2)。図3は、単語系列の列挙を説明する説明図である。図3に示すように、ログデータD10における「name=db.」は、{name,=,db,.}、{name,[GAP]}、…のように全単語系列が列挙される。   Next, the table data conversion unit 211 lists all word series from the log data D10 divided into words (S2). FIG. 3 is an explanatory diagram illustrating enumeration of word series. As shown in FIG. 3, “name = db.” In the log data D10 is {name, =, db,. }, {Name, [GAP]},...

次いで、表データ変換部211は、列挙した全単語系列と、入力された閾値kとをもとに、kオーナー以上に出現する単語系列を抽出し(S3)、抽出した単語系列を表データD21における表の属性(列)に設定する(S4)。   Next, the table data conversion unit 211 extracts a word series that appears above the k owner on the basis of all the listed word series and the input threshold value k (S3), and the extracted word series is represented in the table data D21. Is set to the attribute (column) of the table in (S4).

図4は、表データD21への変換を説明する説明図である。図4に示すように、オーナーA〜オーナーDのログデータD10と、k=2とが入力されているものとする。この場合、k=2オーナー以上に出現する単語系列として「User=Sato」、「A is started」、…が抽出され、表データD21の属性(列)に設定される。   FIG. 4 is an explanatory diagram for explaining the conversion into the table data D21. As shown in FIG. 4, it is assumed that log data D10 of owner A to owner D and k = 2 are input. In this case, “User = Sato”, “A is started”,... Are extracted as word sequences appearing more than k = 2 owners, and set as attributes (columns) of the table data D21.

次いで、表データ変換部211は、各オーナーのログデータ(Di(i=0〜u))に対する第1ループ処理(S5〜S10)を行う。第1ループ処理において、表データ変換部211は、表データD21の表にDi用の行(Ri)を追加し、ログデータ各行(Li(i=0〜m))すべてに対する第2ループ処理(S7〜S9)を行う。   Next, the table data conversion unit 211 performs a first loop process (S5 to S10) on the log data (Di (i = 0 to u)) of each owner. In the first loop processing, the table data conversion unit 211 adds a row (Ri) for Di to the table of the table data D21, and performs the second loop processing (all for each log data row (Li = 0 to m)) ( S7 to S9) are performed.

第2ループ処理において、表データ変換部211は、ログデータの行(Li)をDi用の行(Ri)の当てはまる属性に値として設定する(S8)。   In the second loop processing, the table data conversion unit 211 sets the log data row (Li) as a value to the attribute to which the Di row (Ri) is applied (S8).

図5は、表データへの値の設定を説明する説明図であり、より具体的には、図4に例示したログデータD10および表データD21における値設定を説明している図である。   FIG. 5 is an explanatory diagram for explaining setting of values in the table data. More specifically, FIG. 5 is a diagram explaining setting of values in the log data D10 and the table data D21 illustrated in FIG.

図5に示すように、表データ変換部211は、オーナーA〜オーナーDのログデータに対する第1ループ処理を行うことで、オーナーA〜オーナーDのログデータを表データD21に順次設定する。例えば、オーナーAについては、ログデータD10として「User=Abe」とする行(L1)と、「A is Started」とする行(L2)とがある。この行(L1)、(L2)については、第2ループ処理を行うことで、「User=[GAP]」、「[GAP] is Started」などの当てはまる属性に値として設定される。   As illustrated in FIG. 5, the table data conversion unit 211 sequentially sets the log data of the owner A to the owner D in the table data D21 by performing the first loop process on the log data of the owner A to the owner D. For example, for the owner A, there are a line (L1) with “User = Abe” and a line (L2) with “A is Started” as the log data D10. The rows (L1) and (L2) are set as values in applicable attributes such as “User = [GAP]” and “[GAP] is Started” by performing the second loop processing.

なお、表データ変換部211は、既に値が設定されている属性は除外するとともに、当てはまる属性の中で、包括関係において最上位の属性に設定する。   The table data conversion unit 211 excludes attributes for which values have already been set, and sets them as the highest attribute in the comprehensive relationship among the applicable attributes.

図6A、図6Bは、表データへの値の設定を説明する説明図である。より具体的には、図6Aは既に値が設定されている属性は除外する場合を説明し、図6Bは包括関係において最上位の属性に設定する場合を説明している。   6A and 6B are explanatory diagrams for explaining the setting of values to the table data. More specifically, FIG. 6A illustrates a case where an attribute for which a value has already been set is excluded, and FIG. 6B illustrates a case where the highest attribute is set in a comprehensive relationship.

図6Aに示すように、オーナーAのログデータD10における「K is started」を設定する場合、当てはまる最上位の属性は「[GAP] is started」であることから、その属性に値が設定される。次いで、「A is started」を設定する場合、当てはまる最上位の属性は「[GAP] is started」であるが、この属性には既に値が設定されている。よって、「A is started」は、包括関係において次の属性である「A is started」に値が設定されることとなる。   As shown in FIG. 6A, when “K is started” in the log data D10 of the owner A is set, since the top-level attribute to be applied is “[GAP] is started”, a value is set for the attribute. . Next, when “A is started” is set, the highest-level attribute to be applied is “[GAP] is started”, but a value has already been set for this attribute. Therefore, the value of “A is started” is set to the next attribute “A is started” in the comprehensive relationship.

図6Bに示すように、オーナーAのログデータD10における「A is started」を設定する場合には、「A is started」、「A is [GAP]」、「[GAP] is started」の3属性が当てはまる。ここで、3属性の包括関係を比較すると、「A is [GAP]」は「A is started」より上位であり、「[GAP] is started」は「A is started」より上位である。なお、「A is [GAP]」と、「[GAP] is started」との間には包括関係はない。ここで、表データ変換部211は、包括関係が最上位の属性を、「文字列長・単語数」や「出現オーナー数」等の基準によって選択する。図示例では、単語数によって、「[GAP] is started」を上位としている。   As shown in FIG. 6B, when setting “A is started” in the log data D10 of the owner A, three attributes “A is started”, “A is [GAP]”, and “[GAP] is started” are set. Is true. Here, comparing the comprehensive relationship of the three attributes, “A is [GAP]” is higher than “A is started”, and “[GAP] is started” is higher than “A is started”. Note that there is no comprehensive relationship between “A is [GAP]” and “[GAP] is started”. Here, the table data conversion unit 211 selects the attribute having the highest comprehensive relationship based on criteria such as “character string length / number of words” and “number of appearance owners”. In the illustrated example, “[GAP] is started” is ranked higher depending on the number of words.

図2に戻り、第1ループ処理(S5〜S10)に次いで、一般化階層木生成部212は、表データD21の各属性(Aj(j=0〜r))に対する第3ループ処理(S11〜S13)を行う。   Returning to FIG. 2, following the first loop processing (S5 to S10), the generalized hierarchical tree generating unit 212 performs third loop processing (S11 to S11) for each attribute (Aj (j = 0 to r)) of the table data D21. S13) is performed.

第3ループ処理において、一般化階層木生成部212は、表データD21の属性(Aj)を根ノードとし、その根ノードからの単語系列の包括関係のある属性をノードとする木構造の一般化階層木D22を作成する(S12)。   In the third loop process, the generalized hierarchical tree generation unit 212 generalizes the tree structure with the attribute (Aj) of the table data D21 as a root node and the attribute having a comprehensive relationship of word sequences from the root node as a node. A hierarchical tree D22 is created (S12).

図7A、図7Bは、一般化階層木D22の作成を説明する説明図である。より具体的には、図7Aは包括関係が1段の一般化階層木D22の作成を説明し、図7Bは包括関係が多段(2段)の一般化階層木D22の作成を説明している。   7A and 7B are explanatory diagrams illustrating the creation of the generalized hierarchical tree D22. More specifically, FIG. 7A illustrates the creation of a generalized hierarchical tree D22 having a one-level inclusive relationship, and FIG. 7B illustrates the generation of a generalized hierarchical tree D22 having a multilevel (two-level) inclusive relationship. .

図7Aに示すように、「User=[GAP]」を根ノードとする場合は、その根ノードよりも包括関係が下位の「User=Abe」、「User=Sato」および「User=Oda」を下位のノードとする一般化階層木D22が作成される。   As shown in FIG. 7A, when “User = [GAP]” is set as a root node, “User = Abe”, “User = Sato”, and “User = Oda”, which have lower comprehensive relationships than the root node, are set. A generalized hierarchical tree D22 is created as a lower node.

また、図7Bに示すように、「[GAP]is[GAP]」を根ノードとする場合は、その根ノードよりも包括関係が1段下位の「[GAP]is started」および「[GAP]is stopped」を1段下位のノードとする一般化階層木D22が作成される。また、「[GAP]is started」については、包括関係が1段下位の「A is started」がさらに1段下位のノードとされる。また、「[GAP]is stopped」については、包括関係が1段下位の「C is stopped」および「B is stopped」がさらに1段下位のノードとされる。   Also, as shown in FIG. 7B, when “[GAP] is [GAP]” is the root node, “[GAP] is started” and “[GAP]” whose inclusive relationship is one level lower than the root node. A generalized hierarchical tree D22 having “is stopped” as a node one step lower is created. In addition, for “[GAP] is started”, “A is started”, which is one level lower in the comprehensive relationship, is a node one level lower. In addition, regarding “[GAP] is stopped”, “C is stopped” and “B is stopped” whose inclusion relationship is one level lower are nodes that are one level lower.

図2に戻り、第3ループ処理(S11〜S13)に次いで、匿名化処理部22は、表データD21と、一般化階層木D22とをもとに、表データD21に対して各属性の文字列の組み合わせが同一となるユーザ数がk以上となるよう各属性の文字列を匿名化するk−匿名化を行う(S14)。そして、匿名化処理部22は、表データD21に対してk−匿名化を行った後の匿名化済み表データD23を生成して出力する。   Returning to FIG. 2, following the third loop processing (S11 to S13), the anonymization processing unit 22 uses the table data D21 and the generalized hierarchical tree D22 to characterize each attribute with respect to the table data D21. K-anonymization is performed to anonymize the character string of each attribute so that the number of users having the same combination of columns is equal to or greater than k (S14). And the anonymization process part 22 produces | generates and outputs the anonymized table data D23 after performing k-anonymization with respect to the table data D21.

図8は、匿名化済み表データD23の生成を説明する説明図である。図8に示すように、「User=[GAP]」、「[GAP]=is started」などの属性において、ユーザ数がk以上となるように一般化階層木D22を参照して匿名化する。例えば、「User=[GAP]」については、「User=Abe」、「User=Oda」がk=2とするk−匿名性を満たさないことから、「User=[GAP]」に匿名化される。   FIG. 8 is an explanatory diagram for explaining the generation of the anonymized table data D23. As shown in FIG. 8, in the attributes such as “User = [GAP]” and “[GAP] = is started”, anonymization is performed with reference to the generalized hierarchical tree D22 so that the number of users becomes k or more. For example, “User = [GAP]” is anonymized to “User = [GAP]” because “User = Abe” and “User = Oda” do not satisfy k-anonymity with k = 2. The

図2に戻り、S14に次いで、ログデータ変換部23は、匿名化済み表データD23の各行(Rj(j=0〜u))に対する第4ループ処理(S15〜S17)を行う。   Returning to FIG. 2, following S14, the log data conversion unit 23 performs a fourth loop process (S15 to S17) for each row (Rj (j = 0 to u)) of the anonymized table data D23.

第4ループ処理において、ログデータ変換部23は、匿名化済み表データD23の行(Rj)をログデータに変換する(S16)。具体的には、ログデータ変換部23は、匿名化済み表データD23の行(Rj)に対応するオーナーの元のログデータD10に対して、Rjの値を用いて文字列置換処理を行う。第4ループ処理(S15〜S17)に次いで、出力部30は、匿名化済みのログデータD30を出力する(S18)。   In the fourth loop process, the log data conversion unit 23 converts the row (Rj) of the anonymized table data D23 into log data (S16). Specifically, the log data conversion unit 23 performs a character string replacement process on the original log data D10 of the owner corresponding to the row (Rj) of the anonymized table data D23 using the value of Rj. Following the fourth loop process (S15 to S17), the output unit 30 outputs the anonymized log data D30 (S18).

図9は、ログデータへの変換を説明する説明図である。図9に示すように、元のログデータD10は「B is started」であり、匿名化済み表データD23のRjの値は「[GAP] is started」とする。この場合、ログデータ変換部23は、「[GAP] is started」を用いて、「B is started」を「toke01 is started」と変換する。これにより、ログデータD10は、「B」の文字列が「toke01」へと匿名化されたログデータD30に変換される。   FIG. 9 is an explanatory diagram illustrating conversion into log data. As shown in FIG. 9, the original log data D10 is “B is started”, and the value of Rj of the anonymized table data D23 is “[GAP] is started”. In this case, the log data conversion unit 23 converts “B is started” to “talk01 is started” using “[GAP] is started”. As a result, the log data D10 is converted into log data D30 in which the character string “B” is anonymized to “talk01”.

図10は、ログデータへの変換を説明する説明図であり、より具体的には、ある行にマッチする「値」が複数ある場合の変換を説明する図である。図10に示すように、「K is started」がマッチする値は「[GAP]is started」である。よって、「K is started」については、マッチする値を適用して「toke01 is started」に変換される。「A is started」がマッチする値は、「[GAP]is started」および「A is started」である。この場合は、開示量が多い「A is started」を適用し、「A is started」のままとなる。   FIG. 10 is an explanatory diagram for explaining the conversion to log data. More specifically, FIG. 10 is a diagram for explaining the conversion when there are a plurality of “values” that match a certain line. As illustrated in FIG. 10, the value that “K is started” matches is “[GAP] is started”. Therefore, “K is started” is converted to “talk01 is started” by applying a matching value. Values that “A is started” matches are “[GAP] is started” and “A is started”. In this case, “A is started” with a large amount of disclosure is applied, and “A is started” remains.

また、図示した各部の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各部の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、上記の実施形態の生成部21、匿名化処理部22、ログデータ変換部23などのそれぞれを統合してもよい。   In addition, each component of each part illustrated does not necessarily need to be physically configured as illustrated. In other words, the specific form of distribution / integration of each unit is not limited to that shown in the figure, and all or a part thereof may be functionally or physically distributed / integrated in arbitrary units according to various loads or usage conditions. Can be configured. For example, each of the generation unit 21, the anonymization processing unit 22, the log data conversion unit 23, and the like of the above embodiment may be integrated.

さらに、各装置で行われる各種処理機能は、CPU(またはMPU、MCU(Micro Controller Unit)等のマイクロ・コンピュータ)上で、その全部または任意の一部を実行するようにしてもよい。また、各種処理機能は、CPU(またはMPU、MCU等のマイクロ・コンピュータ)で解析実行されるプログラム上、またはワイヤードロジックによるハードウェア上で、その全部または任意の一部を実行するようにしてもよいことは言うまでもない。   Furthermore, various processing functions performed by each device may be executed entirely or arbitrarily on a CPU (or a microcomputer such as an MPU or MCU (Micro Controller Unit)). In addition, various processing functions may be executed in whole or in any part on a program that is analyzed and executed by a CPU (or a microcomputer such as an MPU or MCU) or on hardware based on wired logic. Needless to say, it is good.

ところで、上記の実施形態で説明した各種の処理は、予め用意されたプログラムをコンピュータで実行することで実現できる。そこで、以下では、上記の実施例と同様の機能を有するプログラムを実行するコンピュータの一例を説明する。図11は、情報匿名化プログラムを実行するコンピュータ300の一例を示す説明図である。   By the way, the various processes described in the above embodiments can be realized by executing a program prepared in advance by a computer. Therefore, in the following, an example of a computer that executes a program having the same function as in the above embodiment will be described. FIG. 11 is an explanatory diagram illustrating an example of a computer 300 that executes an information anonymization program.

図11が示すように、コンピュータ300は、各種演算処理を実行するCPU301と、データ入力を受け付ける入力装置302と、モニタ303とを有する。また、コンピュータ300は、記憶媒体からプログラム等を読み取る媒体読取装置304と、各種装置と接続するためのインタフェース装置305と、他の装置と有線または無線により接続するための通信装置306とを有する。また、コンピュータ300は、各種情報を一時記憶するRAM307と、ハードディスク装置308とを有する。また、各装置301〜308は、バス309に接続される。   As illustrated in FIG. 11, the computer 300 includes a CPU 301 that executes various arithmetic processes, an input device 302 that receives data input, and a monitor 303. The computer 300 also includes a medium reading device 304 that reads a program and the like from a storage medium, an interface device 305 for connecting to various devices, and a communication device 306 for connecting to other devices by wire or wirelessly. The computer 300 also includes a RAM 307 that temporarily stores various types of information and a hard disk device 308. Each device 301 to 308 is connected to a bus 309.

ハードディスク装置308には、上記の実施形態で説明した各処理部と同様の機能を有する情報匿名化プログラムが記憶される。また、ハードディスク装置308には、情報匿名化プログラムを実現するための各種データが記憶される。入力装置302は、例えばユーザからの入力を受け付ける。モニタ303は、ユーザからの入力を受け付ける際の操作画面の表示や、各種情報の表示を行う。インタフェース装置305は、例えば印刷装置等が接続される。通信装置306は、例えばネットワークに接続される。   The hard disk device 308 stores an information anonymization program having the same function as each processing unit described in the above embodiment. The hard disk device 308 stores various data for realizing the information anonymization program. The input device 302 receives input from a user, for example. The monitor 303 displays an operation screen when receiving input from the user and displays various information. The interface device 305 is connected to, for example, a printing device. The communication device 306 is connected to a network, for example.

CPU301は、ハードディスク装置308に記憶された各プログラムを読み出して、RAM307に展開して実行することで、各種の処理を行う。また、これらのプログラムは、コンピュータ300を上記の実施形態で説明した各処理部と同様に機能させることができる。   The CPU 301 reads out each program stored in the hard disk device 308, develops it in the RAM 307, and executes it to perform various processes. Further, these programs can cause the computer 300 to function in the same manner as each processing unit described in the above embodiment.

なお、上記の情報匿名化プログラムは、必ずしもハードディスク装置308に記憶されている必要はない。例えば、コンピュータ300が読み取り可能な記憶媒体に記憶されたプログラムを、コンピュータ300が読み出して実行するようにしてもよい。コンピュータ300が読み取り可能な記憶媒体は、例えば、CD−ROMやDVDディスク、USB(Universal Serial Bus)メモリ等の可搬型記録媒体、フラッシュメモリ等の半導体メモリ、ハードディスクドライブ等が対応する。また、公衆回線、インターネット、LAN等に接続された装置にこの情報匿名化プログラムを記憶させておき、コンピュータ300がこれらから情報匿名化プログラムを読み出して実行するようにしてもよい。   Note that the above-described information anonymization program is not necessarily stored in the hard disk device 308. For example, the computer 300 may read and execute a program stored in a storage medium readable by the computer 300. The storage medium readable by the computer 300 corresponds to, for example, a portable recording medium such as a CD-ROM, a DVD disk, a USB (Universal Serial Bus) memory, a semiconductor memory such as a flash memory, a hard disk drive, and the like. Alternatively, the information anonymization program may be stored in a device connected to a public line, the Internet, a LAN, or the like, and the computer 300 may read out and execute the information anonymization program therefrom.

以上のように、情報匿名化装置1は、複数のユーザのそれぞれに関するログデータから、k以上の数のユーザに共通の文字列を抽出する。また、情報匿名化装置1は、抽出した文字列を包括関係に基づいてグループ化し、各グループに属性を割り当てる。また、情報匿名化装置1は、属性毎に、当該属性中の文字列を当該文字列を含むログデータのユーザに対応付ける。また、情報匿名化装置1は、各属性の文字列の組み合わせが同一となるユーザ数がk以上となるよう各属性の文字列を匿名化する。よって、情報匿名化装置1では、属性ごとに、置換の度合いを調整できるため、開示量が低減することを抑止可能とすることができる。   As described above, the information anonymization apparatus 1 extracts a character string common to k or more users from log data regarding each of a plurality of users. Moreover, the information anonymization apparatus 1 groups the extracted character strings based on the comprehensive relationship, and assigns an attribute to each group. Moreover, the information anonymization apparatus 1 matches the character string in the said attribute with the user of the log data containing the said character string for every attribute. Moreover, the information anonymization apparatus 1 anonymizes the character string of each attribute so that the number of users with the same combination of character strings of each attribute becomes k or more. Therefore, in the information anonymization apparatus 1, since the degree of replacement can be adjusted for each attribute, it is possible to suppress a reduction in the disclosed amount.

図12は、匿名化において閾値(v)による開示量の違いを説明する説明図である。ここで、閾値(v)は、v≧kとして設定される値であり、k−匿名化を行う際に、段階的に絞り込みを行って中間データ(表)を生成するための閾値である。図12では、入力されたログデータD100からk=2のk−匿名性を満たすコンピュータ300を生成する場合を例示している。   FIG. 12 is an explanatory diagram for explaining a difference in disclosure amount depending on a threshold value (v) in anonymization. Here, the threshold value (v) is a value set as v ≧ k, and is a threshold value for generating intermediate data (table) by narrowing down in stages when k-anonymization is performed. In FIG. 12, the case where the computer 300 which satisfy | fills k-anonymity of k = 2 from the input log data D100 is illustrated.

図12に示すように、v=2(=k)として中間データ(表)を生成し、その表をもとにk−匿名性を満たすように変換する場合よりも、v=3、4(>k)として中間データを生成してから変換する場合の方が、開示量が多くなる。具体的には、「***」に対して「*** is started」としている分、開示量が多くなっている。このように、v≧kの閾値(v)により中間データを生成してから匿名化を行う場合は、閾値(v)により、匿名化後の開示量は変化することから、開示量を多くするための適切な閾値(v)の設定が必要となる。   As shown in FIG. 12, when v = 2 (= k) is generated and intermediate data (table) is generated and converted to satisfy k-anonymity based on the table, v = 3, 4 ( The amount of disclosure increases when intermediate data is generated after conversion as> k). Specifically, the amount of disclosure is increased by “*** is started” with respect to “***”. As described above, when the anonymization is performed after the intermediate data is generated with the threshold value (v) of v ≧ k, the disclosed amount after the anonymization is changed according to the threshold value (v), so the disclosed amount is increased. Therefore, it is necessary to set an appropriate threshold value (v).

これに対し、本実施形態では、図8に示すように、一般化階層木D22を用いることで、属性ごとに置換の度合いを調整できることから、閾値(v)の設定を行うことなく、開示量の多い匿名化を行うことができる。具体的には、匿名化処理部22を用いることで、「User=[GAP]」についてはv=2の単語系列として匿名化し、[[GAP]is started]についてはv=4の単語系列として匿名化している。   On the other hand, in the present embodiment, as shown in FIG. 8, the degree of replacement can be adjusted for each attribute by using the generalized hierarchical tree D22. Therefore, the disclosed amount can be set without setting the threshold value (v). Can be anonymized. Specifically, by using the anonymization processing unit 22, “User = [GAP]” is anonymized as a word sequence of v = 2, and [[GAP] is started] is a word sequence of v = 4. Anonymized.

1…情報匿名化装置
10…入力部
20…制御部
30…出力部
21…生成部
22…匿名化処理部
23…ログデータ変換部
300…コンピュータ
D10、D30、D100、D300…ログデータ
D21…表データ
D22…一般化階層木
D23…匿名化済み表データ
k…閾値
DESCRIPTION OF SYMBOLS 1 ... Information anonymization apparatus 10 ... Input part 20 ... Control part 30 ... Output part 21 ... Generation part 22 ... Anonymization processing part 23 ... Log data conversion part 300 ... Computer D10, D30, D100, D300 ... Log data D21 ... Table Data D22 ... Generalized hierarchical tree D23 ... Anonymized table data k ... Threshold

Claims (6)

コンピュータが、
複数のユーザのそれぞれに関するログデータから、k以上の数のユーザに共通の文字列を抽出し、
前記抽出した文字列を包括関係に基づいてグループ化し、各グループに属性を割り当て、
前記属性毎に、当該属性中の文字列を当該文字列を含む前記ログデータのユーザに対応付け、
各属性の文字列の組み合わせが同一となるユーザ数がk以上となるよう各属性の文字列を匿名化する
処理を実行することを特徴とする情報匿名化方法。
Computer
Extract character strings common to k or more users from log data for each of multiple users,
Group the extracted character strings based on a comprehensive relationship, assign attributes to each group,
For each attribute, a character string in the attribute is associated with a user of the log data including the character string,
An information anonymization method characterized by executing a process of anonymizing a character string of each attribute so that the number of users having the same combination of character strings of each attribute becomes k or more.
前記割り当てる処理は、前記属性の文字列において、包括する文字列の属性を包括される文字列の属性よりも上位のグループの属性とし、前記上位のグループの属性を根ノードとして下位のグループの属性を包括する階層木を生成する
ことを特徴とする請求項1に記載の情報匿名化方法。
In the assigning process, in the attribute character string, a comprehensive character string attribute is a higher group attribute than a general character string attribute, and the higher group attribute is a root node, and a lower group attribute is The information anonymization method according to claim 1, further comprising: generating a hierarchical tree that includes
前記対応付ける処理は、前記階層木における上位のグループの属性から順に、前記属性中の文字列を当該文字列を含む前記ログデータのユーザに対応付ける
ことを特徴とする請求項2に記載の情報匿名化方法。
3. The information anonymization according to claim 2, wherein the associating process associates a character string in the attribute with a user of the log data including the character string in order from an attribute of an upper group in the hierarchical tree. Method.
前記匿名化する処理は、前記階層木における上位のグループの属性から順に、前記ログデータのユーザに対応付けられた各属性の文字列の組み合わせが同一となるユーザ数がk以上となるよう各属性の文字列を匿名化する
ことを特徴とする請求項3に記載の情報匿名化方法。
The anonymization process is performed so that, in order from the attribute of the upper group in the hierarchical tree, the number of users having the same combination of character strings of the attributes associated with the users of the log data is equal to or greater than k. The information anonymization method according to claim 3, wherein the character string is anonymized.
コンピュータに、
複数のユーザのそれぞれに関するログデータから、k以上の数のユーザに共通の文字列を抽出し、
前記抽出した文字列を包括関係に基づいてグループ化し、各グループに属性を割り当て、
前記属性毎に、当該属性中の文字列を当該文字列を含む前記ログデータのユーザに対応付け、
各属性の文字列の組み合わせが同一となるユーザ数がk以上となるよう各属性の文字列を匿名化する
処理を実行させることを特徴とする情報匿名化プログラム。
On the computer,
Extract character strings common to k or more users from log data for each of multiple users,
Group the extracted character strings based on a comprehensive relationship, assign attributes to each group,
For each attribute, a character string in the attribute is associated with a user of the log data including the character string,
An information anonymization program for executing a process of anonymizing a character string of each attribute so that the number of users having the same combination of character strings of each attribute becomes k or more.
複数のユーザのそれぞれに関するログデータから、k以上の数のユーザに共通の文字列を抽出し、前記抽出した文字列を包括関係に基づいてグループ化し、各グループに属性を割り当て、前記属性毎に、当該属性中の文字列を当該文字列を含む前記ログデータのユーザに対応付ける処理部と、
各属性の文字列の組み合わせが同一となるユーザ数がk以上となるよう各属性の文字列を匿名化する匿名化部と
を有する情報匿名化装置。
A character string common to k or more users is extracted from log data relating to each of a plurality of users, the extracted character strings are grouped based on a comprehensive relationship, an attribute is assigned to each group, A processing unit for associating a character string in the attribute with a user of the log data including the character string;
An anonymization device comprising: an anonymization unit that anonymizes a character string of each attribute so that the number of users having the same combination of character strings of each attribute is equal to or greater than k.
JP2015006586A 2015-01-16 2015-01-16 Information anonymity method, information anonymity program and information anonymity device Pending JP2016133872A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015006586A JP2016133872A (en) 2015-01-16 2015-01-16 Information anonymity method, information anonymity program and information anonymity device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015006586A JP2016133872A (en) 2015-01-16 2015-01-16 Information anonymity method, information anonymity program and information anonymity device

Publications (1)

Publication Number Publication Date
JP2016133872A true JP2016133872A (en) 2016-07-25

Family

ID=56438135

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015006586A Pending JP2016133872A (en) 2015-01-16 2015-01-16 Information anonymity method, information anonymity program and information anonymity device

Country Status (1)

Country Link
JP (1) JP2016133872A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101859636B1 (en) * 2017-07-19 2018-05-21 주식회사 디지털즈 Personal information de-identification system with security function and method thereof
JP2019101809A (en) * 2017-12-04 2019-06-24 Kddi株式会社 Anonymization device, anonymization method, and anonymization program
KR20200121105A (en) * 2019-04-15 2020-10-23 주식회사 파수 Method for analysis on interim result data of de-identification procedure, apparatus for the same, computer program for the same, and recording medium storing computer program thereof

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101859636B1 (en) * 2017-07-19 2018-05-21 주식회사 디지털즈 Personal information de-identification system with security function and method thereof
JP2019101809A (en) * 2017-12-04 2019-06-24 Kddi株式会社 Anonymization device, anonymization method, and anonymization program
KR20200121105A (en) * 2019-04-15 2020-10-23 주식회사 파수 Method for analysis on interim result data of de-identification procedure, apparatus for the same, computer program for the same, and recording medium storing computer program thereof
KR102248993B1 (en) * 2019-04-15 2021-05-07 주식회사 파수 Method for analysis on interim result data of de-identification procedure, apparatus for the same, computer program for the same, and recording medium storing computer program thereof
US11816245B2 (en) 2019-04-15 2023-11-14 Fasoo Co., Ltd. Method for analysis on interim result data of de-identification procedure, apparatus for the same, computer program for the same, and recording medium storing computer program thereof

Similar Documents

Publication Publication Date Title
US10817621B2 (en) Anonymization processing device, anonymization processing method, and program
JP6712529B2 (en) Computer implemented system and method for anonymizing encrypted data
JP6413769B2 (en) Data concealment device, data concealment program, and data concealment method
US10958685B2 (en) Generation of honeypot data
US11120143B2 (en) Data analysis server, data analysis system, and data analysis method
US20180196861A1 (en) Method for generating graph database of incident resources and apparatus thereof
JP2016133872A (en) Information anonymity method, information anonymity program and information anonymity device
JPWO2014181541A1 (en) Information processing apparatus and anonymity verification method for verifying anonymity
US20200065524A1 (en) Time blocking noising for de-identification
Chen et al. A framework for privacy-preserving healthcare data sharing
JP6584861B2 (en) Privacy protection device, method and program
Vardalachakis et al. ShinyAnonymizer: A Tool for Anonymizing Health Data.
Payne Resolving the relationships of apid bees (Hymenoptera: Apidae) through a direct optimization sensitivity analysis of molecular, morphological, and behavioural characters
JP5942634B2 (en) Concealment device, concealment program, and concealment method
JP2017215868A (en) Anonymization processor, anonymization processing method, and program
CN111316191A (en) Prediction engine for multi-level pattern discovery and visual analysis recommendation
JP6370236B2 (en) Privacy protection device, method and program
Rouhani et al. What do we know about the big data researches? A systematic review from 2011 to 2017
TWI443539B (en) Method for analyzing data utilizing weighted suffix tree
Ai et al. How many genes are needed to resolve phylogenetic incongruence?
JP6549076B2 (en) Anonymization table generation device, anonymization table generation method, program
KR102208082B1 (en) Server device, information management system, information management method, and recording medium storing a computer program
Ashiwaju et al. The Intersection of Artificial Intelligence and Big Data in Drug Discovery: A Review of Current Trends and Future Implications
JP6435815B2 (en) Information concealment program, information concealment method and information concealment device
Johnson et al. Lost in disclosure: On the inference of password composition policies