[go: up one dir, main page]

WO2018004236A1 - 개인정보의 비식별화 방법 및 장치 - Google Patents

개인정보의 비식별화 방법 및 장치 Download PDF

Info

Publication number
WO2018004236A1
WO2018004236A1 PCT/KR2017/006765 KR2017006765W WO2018004236A1 WO 2018004236 A1 WO2018004236 A1 WO 2018004236A1 KR 2017006765 W KR2017006765 W KR 2017006765W WO 2018004236 A1 WO2018004236 A1 WO 2018004236A1
Authority
WO
WIPO (PCT)
Prior art keywords
personal information
record
raw
node
identification
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.)
Ceased
Application number
PCT/KR2017/006765
Other languages
English (en)
French (fr)
Inventor
최대우
권우석
황명식
김상욱
김기태
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.)
Fasoo com Co Ltd
Original Assignee
Fasoo com Co 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
Priority claimed from KR1020160082878A external-priority patent/KR101821219B1/ko
Priority claimed from KR1020160082839A external-priority patent/KR101798377B1/ko
Priority claimed from KR1020160082860A external-priority patent/KR101798378B1/ko
Application filed by Fasoo com Co Ltd filed Critical Fasoo com Co Ltd
Priority to US16/314,202 priority Critical patent/US11354436B2/en
Priority to JP2018569022A priority patent/JP6825016B2/ja
Priority to EP17820512.6A priority patent/EP3480721A4/en
Priority to CN201780048000.0A priority patent/CN109564616A/zh
Publication of WO2018004236A1 publication Critical patent/WO2018004236A1/ko
Anticipated expiration legal-status Critical
Priority to US17/744,630 priority patent/US12189819B2/en
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • G06F21/6254Protecting personal data, e.g. for financial or medical purposes by anonymising data, e.g. decorrelating personal data from the owner's identification
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2379Updates performed during online database operations; commit processing
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules

Definitions

  • the present invention relates to a data processing technique, and more particularly, to a technique for efficiently performing de-identification on a table containing personal information based on a genetic algorithm.
  • Personal information may include social security number, address, postal code, name, date of birth, sex, illness, salary.
  • personal information may be used in various fields. For example, a company may advertise its products, services, and the like to a specific consumer based on personal information, and thus, the consumer may easily obtain information about the products and services desired by the company.
  • the usability of personal information and the risk of re-identification may vary according to the generalization level. For example, when a relatively large portion of personal information is generalized, a relatively large number of errors occur when analyzing non-identified personal information, and thus the usability of non-identified personal information may be degraded. . On the contrary, when a relatively small portion of personal information is generalized, de-identified personal information can be relatively easily inferred or re-identified, thereby increasing the risk of re-identifying non-identified personal information. have.
  • a table containing personal information must first be obtained from a database.
  • the table obtained from the database contains a variety of information, it may take a long time to create a table containing the necessary information.
  • An object of the present invention for solving the above problems is to provide a method and apparatus for efficiently de-identifying personal information.
  • Another object of the present invention for solving the above problems is to provide a method and apparatus for setting an attribute for a record of a table containing personal information.
  • a raw lattice including a plurality of candidate nodes indicating a table indicating a generalization level for each type of personal information based on the hierarchical structure indicated by the generalized layer model, and including in the raw lattice Preset criteria among the plurality of candidate nodes Establishing a final lattice comprising at least one candidate node that satisfies.
  • the personal information de-identification method may further include setting an attribute of each record included in the raw table.
  • the personal information de-identification method may further include masking a record in which the attribute is set to ID among records included in the raw table.
  • the personal information de-identification method may further include setting the generalization level according to a type of personal information indicated by raw data recorded in a record in which the attribute is set to QI among records included in the raw table. It may include.
  • the raw data recorded in the record in which the attribute is set to QI may be generalized based on a generalization level.
  • the setting of the final lattice may include selecting at least one candidate node from among a plurality of candidate nodes included in the raw lattice, and based on the generalization level indicated by the at least one candidate node. Generating a de-identified table by performing de-identification on, setting a candidate node corresponding to a de-identified table that satisfies a predetermined suppression criterion as a final node, and satisfying the preset criterion And setting the final lattice including the final node corresponding to the candidate node.
  • the de-identified table may be generated based on K-anonymity, based on the K-anonymity and L-diversity, or may be generated based on the K-anonymity and T-proximity. have.
  • the preset suppression criterion may indicate a ratio of equivalent classes that do not satisfy the preset K-anonymity among the equivalent classes constituting the de-identified table.
  • the personal information de-identification method may further include calculating a risk of re-identification and usefulness of the de-identified table corresponding to at least one final node included in the final lattice.
  • a personal information de-identifying apparatus including a processor and a memory in which at least one instruction executed by the processor is stored, wherein the at least one instruction is a personal information from a database.
  • Generate a lattice, and the primitive It can be executed from among the plurality of candidate nodes included in the tooth so as to set the final lattice comprising at least one candidate node that satisfies the preset criteria.
  • the at least one command may be further executable to set an attribute of each of the records included in the raw table.
  • the attribute may be classified into ID, QI, SA, and IA, and a record in which raw data indicating personal information in which a specific individual is explicitly identified may be set as an ID, and a specific individual is implicit. Records in which raw data indicating personal information to be identified may be set to QI, and records in which raw data indicating personal information having a sensitivity higher than or equal to a predetermined criterion may be set to SA and lower than SA. A record in which raw data indicating personal information having sensitivity is recorded may be set to IA.
  • the at least one command may be further executable to mask a record in which the attribute is set to ID among records included in the source table.
  • the at least one command may be further executable to set the generalization level according to the type of personal information indicated by the raw data recorded in the record in which the attribute is set to QI among the records included in the raw table.
  • the at least one command selects at least one candidate node from among a plurality of candidate nodes included in the raw lattice, and at a generalization level indicated by the at least one candidate node.
  • Generate a de-identified table by performing de-identification on the raw table based on the base table, and set a candidate node corresponding to the de-identified table that satisfies a predetermined suppression criterion as a final node, and set the preset node. It may be executable to set the last lattice including the last node corresponding to the candidate node that satisfies a criterion.
  • the de-identified table may be generated based on K-anonymity, based on the K-anonymity and L-diversity, or may be generated based on the K-anonymity and T-proximity. have.
  • the preset suppression criterion may indicate a ratio of equivalent classes that do not satisfy the preset K-anonymity among the equivalent classes constituting the de-identified table.
  • the at least one instruction may be further executable to calculate the re-identification risk and usefulness of the de-identified table corresponding to the at least one final node included in the final lattice.
  • the personal information de-identification method performed in the personal information de-identification apparatus for achieving the above object, the personal information indicated by the raw data recorded in each of the records included in the raw table Generating a raw lattice including a plurality of hierarchies composed of at least one node indicating a generalization level for each type of personal information based on the generalization level for each type; any node belonging to layer-n among the plurality of layers Is set to selection node-1, and any node belonging to layer-m is set to selection node-2, the suppression value of the unidentified table corresponding to each of selection node-1 and selection node-2 Based on the result of the comparison of the ratio and the preset suppression threshold, each of the arbitrary nodes belonging to the raw lattice is set as the crossing node and the transition node.
  • the de-identified table is a result of the de-identification of the raw table based on data corresponding to a generalization level indicated by a node, and the suppression.
  • the ratio of values is the ratio of equivalent classes that do not satisfy a preset K-anonymity among the equivalent classes constituting the de-identified table.
  • the selection node-1 may be connected to the selection node-2 in the raw lattice.
  • the layer-n may be a layer located 2/3 from the lowest layer among the plurality of layers of the primitive lattice
  • the layer-m may be 1 / from the lowest layer among the plurality of layers of the primitive lattice. It may be a layer located at three points.
  • the crossing node is the layer-m among the plurality of layers.
  • the node may be set to any node belonging to a layer located at a half point between and a lowermost layer, and the transition node may be configured to exclude the selected node-2 from the nodes belonging to the layer-m among the plurality of layers. Can be set to any node.
  • the suppression value ratio of the de-identified table corresponding to the selection node-1 is equal to or less than the preset suppression threshold value, and the suppression value ratio of the de-identification table corresponding to the selection node-2 is set in advance.
  • the crossing node may be set to any node belonging to a layer located at a half point between the layer-n and the layer-m among the plurality of layers, and the variation The node may be set to any node except the selected node-1 among the nodes belonging to the layer-n among the plurality of layers.
  • the crossover node is selected from the plurality of layers.
  • the number of nodes constituting the final lattice may be at least x times the number of nodes belonging to the layer including the largest number of nodes among the plurality of layers, and x may be a real number exceeding zero.
  • a personal information de-identifying apparatus including a processor and a memory storing at least one instruction executed by the processor, wherein the at least one instruction is included in a raw table.
  • each of the nodes belonging to the raw lattice crosses each of the arbitrary nodes belonging to the raw lattice And a node set as a transition node and corresponding to an unidentified table having a suppression value ratio below the preset suppression threshold among the selection node-1, the selection node-2, the crossing node and the transition node.
  • n and m are natural numbers
  • the de-identified table is a result of the de-identified raw table based on data corresponding to the generalization level indicated by the node.
  • the ratio of the suppression value is for generating the de-identified table among the raw data recorded in the record of the raw table. Indicates the ratio is set to the inhibition values.
  • the selection node-1 may be connected to the selection node-2 in the raw lattice.
  • the layer-n may be a layer located 2/3 from the lowest layer among the plurality of layers of the primitive lattice
  • the layer-m may be 1 / from the lowest layer among the plurality of layers of the primitive lattice. It may be a layer located at three points.
  • the crossing node is the layer-m among the plurality of layers.
  • the node may be set to any node belonging to a layer located at a half point between and a lowermost layer, and the transition node may be configured to exclude the selected node-2 from the nodes belonging to the layer-m among the plurality of layers. Can be set to any node.
  • the suppression value ratio of the de-identified table corresponding to the selection node-1 is equal to or less than the preset suppression threshold value, and the suppression value ratio of the de-identification table corresponding to the selection node-2 is set in advance.
  • the crossing node may be set to any node belonging to a layer located at a half point between the layer-n and the layer-m among the plurality of layers, and the variation The node may be set to any node except the selected node-1 among the nodes belonging to the layer-n among the plurality of layers.
  • the crossover node is selected from the plurality of layers.
  • the number of nodes constituting the final lattice may be at least x times the number of nodes belonging to the layer including the largest number of nodes among the plurality of layers, and x may be a real number exceeding zero.
  • the search target range may indicate the number of records constituting the table.
  • the table may further include non-personal information
  • the regular expression may be used for retrieval of the non-personal information and for setting an attribute of the record in which the non-personal information is recorded.
  • the attribute of the record may be classified into ID, QI, SA, and IA.
  • the attribute of the record in which the personal information that explicitly identifies a specific individual is recorded may be set as an ID
  • the attribute of the record in which the personal information that implicitly identifies the specific individual is recorded May be set to QI
  • the attribute of the record in which the personal information with sensitivity higher than the preset criterion is recorded may be set to SA
  • the attribute of the record in which the personal information with lower sensitivity than SA is recorded is set to IA. Can be.
  • the attribute setting method for the record may further include setting whether or not to mask the personal information recorded in the record having the ID attribute.
  • the search target range may indicate the number of records constituting the table.
  • the table may further include non-personal information
  • the regular expression may be used for retrieval of the non-personal information and for setting an attribute of the record in which the non-personal information is recorded.
  • the attribute of the record may be classified into ID, QI, SA, and IA.
  • the at least one command may be executed to set the attribute of the record in which the personal information that explicitly identifies the specific individual is recorded as an ID, and the individual implicitly identifies the specific individual. It can be executed to set the attribute of the record in which the information is recorded to QI, and can be executed to set the attribute of the record in which the personal information having a sensitivity higher than a preset criterion is recorded to SA, and the personal information having a lower sensitivity than SA is recorded. It can be executed to set the attribute of the recorded record to IA.
  • the at least one command may be further executed to set whether or not to mask the personal information recorded in the record having the ID attribute.
  • the de-identification procedure can be performed quickly.
  • the usability of non-identified personal information can be improved, and the risk of re-identification of non-identified personal information can be reduced (or the risk of re-identifying personal information can be eliminated).
  • the de-identification of personal information may be performed in consideration of the data type, the purpose of use, etc. of the customer, and thus the usability of the de-identified personal information may be further improved. Genetic algorithms are used for de-identification of personal information, so that de-identification of personal information can be performed quickly.
  • the attributes for the records of the table containing the personal information can be set efficiently (or quickly). Therefore, de-identification of personal information can be performed more quickly.
  • FIG. 1 is a block diagram illustrating an embodiment of a personal information de-identification apparatus that performs the methods according to the present invention.
  • FIG. 2 is a flowchart illustrating an embodiment of a personal information de-identification method.
  • FIG. 3 is a flowchart illustrating an embodiment of a method for setting a property of a record.
  • FIG. 4 is a conceptual diagram illustrating an embodiment of a table.
  • FIG. 5 is a flowchart illustrating an embodiment of a method of setting a GH model.
  • FIG. 6 is a conceptual diagram illustrating one embodiment of a GH model for a postal code record.
  • FIG. 7 is a conceptual diagram illustrating one embodiment of a GH model for age records.
  • FIG. 8 is a conceptual diagram illustrating an embodiment of a GH model for a nationality record.
  • FIG. 10 is a conceptual diagram illustrating an embodiment of a de-identified table.
  • 11 is a conceptual diagram illustrating another embodiment of a de-identified table.
  • FIG. 12 is a conceptual diagram illustrating one embodiment of a primitive lattice.
  • 13 is a flowchart illustrating a method of setting a final lattice.
  • FIG. 14 is a conceptual diagram illustrating an embodiment of a table including masked records.
  • the personal information de-identification method performed in the personal information de-identification apparatus for achieving the above object, the raw table including records in which raw data indicating the personal information from the database is recorded; Acquiring, generating generalized data by generalizing raw data recorded in each of the records included in the raw table based on a generalization level, and setting a generalization layer model composed of the raw data and the generalized data.
  • first and second may be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another.
  • the first component may be referred to as the second component, and similarly, the second component may also be referred to as the first component.
  • FIG. 1 is a block diagram illustrating an embodiment of a personal information de-identification apparatus that performs the methods according to the present invention.
  • the personal information de-identification apparatus 100 may include at least one processor 110 and a memory 120.
  • the personal information de-identifying apparatus 100 further includes a network interface device 130, an input interface device 140, an output interface device 150, a storage device 160, and the like, connected to a network to perform communication. can do.
  • Each component included in the personal information de-identifying apparatus 100 may be connected by a bus 170 to communicate with each other.
  • the personal information de-identifying apparatus 100 may be referred to simply as the "non-identifying apparatus 100".
  • the de-identifying device 100 may be a desktop computer, a laptop computer, a tablet PC, a wireless phone, a mobile phone, a smart phone. And so on.
  • another apparatus corresponding thereto is equivalent to the method performed in the de-identification apparatus 100. (E.g., receiving or transmitting a signal). That is, when the operation of the de-identifying apparatus 100 is described, another device corresponding thereto may perform an operation corresponding to the operation of the de-identifying apparatus 100. On the contrary, when the operation of another device is described, the non-identifying device 100 corresponding thereto may perform an operation corresponding to that of the other device.
  • FIG. 2 is a flowchart illustrating an embodiment of a personal information de-identification method.
  • the personal information de-identification method is performed by the de-identification apparatus 100 (eg, the processor 110 included in the de-identification apparatus 100) described with reference to FIG. 1.
  • the de-identification apparatus 100 may obtain a table composed of a plurality of records from a database (or a comma-separated values (CSV) file, etc.) (S200).
  • Raw data indicating personal information may be recorded in each of the plurality of records.
  • non-personal information raw data indicating information other than personal information
  • the database may be located within de-identification device 100 or may be located in another device (eg, a server).
  • the de-identifying apparatus 100 may use connection information (eg, an IP (Internet protocol) address, a port number, an identifier), and a SID (system ID) used to access a database. ), Passwords, etc.).
  • connection information eg, an IP (Internet protocol) address, a port number, an identifier), and a SID (system ID) used to access a database. ), Passwords, etc.
  • the connection information may be obtained from the user through the input interface device 140 of the de-identifying apparatus 100.
  • the de-identification apparatus 100 may obtain a table composed of a plurality of records from the database when the connection to the database is approved based on the generated connection information.
  • the de-identification apparatus 100 may set attributes of each of the plurality of records included in the table (S210).
  • the attributes for a record can be set as follows:
  • FIG. 3 is a flowchart illustrating an embodiment of a method for setting a property of a record.
  • the de-identification apparatus 100 may set a regular expression (S211). Regular expressions can be used to retrieve personal, non-personal, and the like recorded in records in a table. Accordingly, the de-identification apparatus 100 may set the type of personal information to be searched by the regular expression. There may be a social security number (or passport number, social security number), name, address, zip code, age, nationality, gender, or illness as a kind of personal information. In addition, the de-identification apparatus 100 may set the type of non-personal information to be searched by the regular expression. Patient number and the like may exist as a kind of non-personal information. Type information of personal information and non-personal information may be obtained from a user through the input interface device 140 of the de-identifying apparatus 100.
  • Regular expressions can be used to retrieve personal, non-personal, and the like recorded in records in a table. Accordingly, the de-identification apparatus 100 may set the type of personal information to be searched by the regular expression. There may be a social security number (or passport number, social security number), name,
  • regular expressions can be used to set attributes of records in which retrieved personal information, non-personal information, and the like are recorded. Attributes of a record may be classified into an identifier (ID), a quasi-identifier (QI), a sensitive attribute (SA), an insensitive attribute (IA) (or a non-SA).
  • ID may indicate personal information in which a particular individual is explicitly identified. A specific individual may be identified by only one piece of personal information set as an ID.
  • the de-identification apparatus 100 may set a regular expression such that an attribute of a record in which a social security number, a name, an address, etc. are recorded is set to an ID.
  • QI may indicate personal information in which a particular individual is identified non-explicitly.
  • a particular individual may not be identified with only one personal information set with QI, but may be identified with a combination of one personal information set with QI and other personal information.
  • the de-identification apparatus 100 may set a regular expression such that a property of a record in which a postal code, age, nationality, gender, etc. are recorded is set to QI.
  • the SA may indicate sensitive personal information requiring protection (eg, personal information having a sensitivity higher than or equal to a preset criterion).
  • personal information set as SA a problem may arise in the identity of a specific individual.
  • the de-identification apparatus 100 may set a regular expression such that an attribute of a record in which a disease or the like is recorded is set to SA.
  • the IA may indicate insensitive personal information.
  • the IA may indicate personal information having a lower sensitivity than SA. If personal information set as IA is disclosed, it may not cause a problem of a specific individual.
  • the de-identification apparatus 100 may set a regular expression such that the attribute of a record in which a postal code, age, nationality, gender, etc. are recorded is set to IA.
  • the de-identification apparatus 100 may set a search target range of the table (S212).
  • the search target range may indicate a partial region of the table, and the regular expression set in step S211 may be applied to the region indicated by the search target range. That is, by using only raw data within the search target range, the kind of personal information (or non-personal information) indicated by all the raw data in the table can be grasped, and the attribute of the record in which the raw data is recorded can be determined. have.
  • the search target range may indicate the number of records (eg, the number of rows in the table). For example, the search target range may be set to 100, 1000, or the like.
  • step S212 can be omitted as necessary.
  • the search target range information may be obtained from a user through the input interface device 140 of the de-identifying apparatus 100.
  • the de-identification apparatus 100 may set a processing method of a record having an ID attribute (S213).
  • a processing method of a record having an ID attribute may be classified as follows.
  • the de-identification apparatus 100 may exclude a record having an ID attribute from the table.
  • the table may not contain records with ID attributes.
  • the de-identification apparatus 100 may perform masking processing on the raw data recorded in the record having the ID attribute. Therefore, the table may include a record having an ID attribute and the like, and the masked data may be recorded in the record having the ID attribute.
  • the de-identification apparatus 100 may use the raw data recorded in the record having the ID attribute as it is.
  • the de-identification apparatus 100 includes a social security number record (ie, a record in which raw data indicating a social security number) is included in a table, and a name record (ie, a record in which raw data indicating a name is recorded).
  • a social security number record ie, a record in which raw data indicating a social security number
  • a name record ie, a record in which raw data indicating a name is recorded
  • an attribute of an address record that is, a record in which raw data indicating an address is recorded
  • a record having an ID attribute may be referred to as an "ID record", whereby the ID record may include a social security number record, a name record, and an address record.
  • the de-identifying apparatus 100 includes a postal code record (ie, a record in which raw data indicating a zip code is recorded) included in a table, an age record (ie, a record in which raw data indicating an age is recorded), a nationality record. (I.e., records in which raw data indicating nationality is recorded) and gender records (i.e., records in which raw data indicating gender are recorded) can be set to QI.
  • a record having a QI attribute may be referred to as a "QI record", whereby the QI record may include a postal code record, an age record, a nationality record, and a gender record.
  • the de-identification apparatus 100 may set an attribute of a disease record included in the table (that is, a record in which raw data indicating a disease is recorded) to SA.
  • a record having an SA attribute may be referred to as an "SA record”, whereby the SA record may comprise a disease record.
  • the de-identification apparatus 100 may set attributes of a postal code record, an age record, a nationality record, and a gender record included in the table to IA.
  • a record having an IA attribute may be referred to as an "IA record”, whereby the IA record may include a postal code record, an age record, a nationality record, and a gender record.
  • the attributes of the postal code record, age record, nationality record and gender record included in the table may be set to QI and IA.
  • the table processed by the method described above may be as follows.
  • FIG. 4 is a conceptual diagram illustrating an embodiment of a table.
  • the de-identification apparatus 100 may receive a message indicating completion of confirmation of the attribute from the user, and in this case, may perform the following steps.
  • the message indicating the request for modification of the attribute and the message indicating completion of the confirmation of the attribute may be received through the input interface device 140 of the de-identifying apparatus 100.
  • the de-identification apparatus 100 may set a generalization hierarchy (GH) model for a QI record included in the table (S220).
  • the setting method of the GH model may be as follows.
  • FIG. 5 is a flowchart illustrating an embodiment of a method of setting a GH model.
  • the generalization range for the raw data may be the same for each generalization level.
  • the generalization range may be one day, so that "28", “29", “21”, and “23” indicating age may be generalized to "2 *". have.
  • the generalization range may be ten units, so that "13053" and "13068" indicating a postal code may be generalized to "130 **”.
  • the de-identification apparatus 100 may set the raw data recorded in the QI record to generalization level-0 (S222). Thereafter, the de-identification apparatus 100 may set the range of data to be generalized based on the range of generalization levels, generalize the raw data based on the range of data to be generalized, and generalize it.
  • the data may be set at a corresponding generalization level (eg, generalization level-1, generalization level-2, generalization level-3, etc.) (S223).
  • the range of data for which generalization has been performed is the smallest at generalization level-0, and may increase as the generalization level increases.
  • the de-identification apparatus 100 may generate the GH model by sequentially connecting the data corresponding to the low generalization level and the data corresponding to the high generalization level (S224).
  • raw data corresponding to generalization level-0 may be located at the lowest layer
  • generalization data corresponding to generalization level-1 may be located at a layer higher than generalization level-0
  • higher than generalization level-1 may be located in the highest layer
  • Generalized data corresponding to generalization level-2 may be located in an upper layer
  • generalized data corresponding to generalization level-3 may be located in a higher layer than generalization level-2.
  • all data can be generalized into one data. Examples of the GH model are as follows.
  • FIG. 6 is a conceptual diagram illustrating one embodiment of a GH model for a postal code record.
  • FIG. 7 is a conceptual diagram illustrating one embodiment of a GH model for age records.
  • the GH model for an age record may consist of generalization level-0 to generalization level-3.
  • Raw data recorded in the age record: "28”, “29”, “21”, “23”, “31”, “37”, “36”, “35”, “47”, “49”, “50 “And” 55 may be set to generalization level-0.
  • "28”, “29”, “21” and “23” can be generalized to "2 *", and the generalized data "2 *” to be set to generalization level-1.
  • "31”, “37”, “36” and “35” can be generalized to "3 *” and the generalized data "3 *” to be set to generalization level-1. Can be.
  • “2 *” and “3 *” corresponding to generalization level-1 may be generalized to “ ⁇ 40", and generalized data “ ⁇ 40” may be set to generalization level-2.
  • “4 *” and “5 *” corresponding to generalization level-1 may be generalized to " ⁇ 40”
  • generalized data " ⁇ 40” may be set to generalization level-2.
  • " ⁇ 40” and “ ⁇ 40” corresponding to generalization level-2 may be generalized to "**”
  • generalized data "**” may be set to generalization level-3.
  • the GH model for the age record is not limited to the above description and may be variously set.
  • FIG. 8 is a conceptual diagram illustrating an embodiment of a GH model for a nationality record.
  • the GH model for a nationality record may consist of generalization level-0 to generalization level-2.
  • the raw data recorded in the nationality record "Korea”, “Japan”, “UK” and “Germany” may be set to generalization level-0.
  • "Korea” and “Japan” may be generalized to "Asia”
  • the generalized data "Asia” may be set to generalization level-1.
  • "UK” and “Germany” may be generalized to "Europe”
  • the generalized data "Europe” may be set to generalization level-1.
  • FIG. 9 is a conceptual diagram illustrating an embodiment of a GH model for gender records.
  • a GH model for a gender record may consist of generalization level-0 and generalization level-1.
  • the raw data "male” and “female” recorded in the gender record may be set to generalization level-0.
  • "M” and “F” corresponding to generalization level-0 can be generalized to "person” (or “*"), and generalized data "person” (or “*”) is generalization level-1 It can be set to.
  • the GH model for the gender record is not limited to the above description and may be variously set.
  • the de-identification apparatus 100 may set a parameter (hereinafter, referred to as a "de-identification parameter") used for de-identification of the table (S230).
  • De-identification parameters may include K-anonymity, L-diversity, T-closeness, and the like.
  • K-anonymity, "K-anonymity + L-diversity” or “K-anonymity + T-proximity” can be used for de-identification of the table.
  • the de-identifying apparatus 100 may basically set K-anonymity, and may additionally set L-diversity or T-proximity.
  • the de-identification apparatus 100 may set a K value of K-anonymity.
  • the de-identification apparatus 100 may obtain a K value of K-anonymity from the user through the input interface device 140 and use the obtained K-anonymity K value.
  • the K value of K-anonymity may indicate the number of rows constituting an equivalent class.
  • the table may include at least one equivalence class, and the ID record in one equivalency class may indicate the same data (eg, raw data, generalized data). That is, an ID record in which the same data is recorded and another record associated with the ID record (eg, a QI record, an SA record, an IA record, etc.) may constitute one equivalent class.
  • the table may be de-identified based on K-anonymity, and if the K value of K-anonymity is 4 (ie, 4-anonymity), the de-identified table may be as follows.
  • FIG. 10 is a conceptual diagram illustrating an embodiment of a de-identified table.
  • each of the equivalent classes may include a postal code record, age record, nationality record, gender record and disease record.
  • the non-identified table 400 shown in FIG. 10 may exclude social security number records, name records, and address records from the table 400 shown in FIG. 4.
  • the postal code record may point to the same data
  • the age record may point to the same data.
  • the postal code record may indicate "130 **" and the age record may indicate " ⁇ 30".
  • the postal code record may indicate "1485 *” and the age record may indicate " ⁇ 40”.
  • a postal code record may indicate "130 **" and an age record may indicate "3 *”.
  • the de-identification apparatus 100 may set the L value of the L-diversity.
  • the non-identifying apparatus 100 may obtain an L value of the L-diversity from the user through the input interface device 140, and may use the obtained L-diversity L value.
  • the L value of the L-diversity may be the number of different data among the data recorded in the SA record belonging to each of the equivalent classes in the table.
  • the L value of L-diversity in Equivalence Class-1 in the non-identified table 400 shown in FIG. 11 may be 2 (ie, the number of different diseases indicated in the disease record) and in Equivalence Class-2.
  • the L value of L-diversity may be 3, and the L value of L-diversity in equivalence class-3 may be 1.
  • the table can be de-identified based on K-anonymity and L-diversity, where the K value of K-anonymity is 4 and the L value of L-diversity is 3 (ie, 4-anonymity and 3-diversity). In this case, the de-identified table may be as follows.
  • 11 is a conceptual diagram illustrating another embodiment of a de-identified table.
  • the de-identification apparatus 100 may set the T value of the T-proximity.
  • the de-identification apparatus 100 may obtain a T value of the T-proximity from the user through the input interface device 140 and use the obtained T-proximity T value.
  • the table can be de-identified based on K-anonymity, L-diversity and T-proximity (or K-anonymity and T-proximity).
  • the T value of T-proximity may be the distance between the data indicated by the SA record belonging to each of the equivalent classes in the table. For example, if a table contains salary records, the table is de-identified so that the distance (ie, the difference) between salaries indicated by the salary record in each of the equivalent classes of the table is within the T value of T-proximity. Can be.
  • the de-identification apparatus 100 may set a threshold value (hereinafter, referred to as an "suppression threshold value") for the suppression value ratio (S240). Alternatively, the de-identification apparatus 100 may obtain a suppression threshold from the user through the input interface device 140 and use the obtained suppression threshold.
  • the suppression value ratio may indicate the proportion of equivalent classes that do not satisfy K-anonymity in the de-identified table. Alternatively, the suppression value ratio may indicate the ratio of records that do not satisfy K-anonymity in the non-identified table.
  • the inhibition value ratio may be calculated based on Equation 1 below.
  • the suppression threshold can be set to various values. For example, the suppression threshold may be set to 10%.
  • the de-identification apparatus 100 may generate a raw lattice based on the GH model (S250).
  • the primitive lattice may include a plurality of nodes, each of which may indicate a generalization level indicated by the GH model and a record corresponding to the generalization level. That is, the de-identification apparatus 100 may set nodes indicating a generalization level indicated by the GH model and a record corresponding to the generalization level, and generate the raw lattice by connecting the nodes in the order of the generalization level. Can be.
  • the raw lattice generated based on the GH model of the postal code record shown in FIG. 6, the GH model of the age record shown in FIG. 7, and the GH model of the gender record shown in FIG. 9 may be as follows.
  • FIG. 12 is a conceptual diagram illustrating one embodiment of a primitive lattice.
  • the raw lattice may include a plurality of nodes, and may be configured from layer-0 to layer-6. At least one node may be located in each of the layers. For example, one node may be located in each of the lowest layer (ie layer-0) and the highest layer (ie layer-6). Three nodes may be located in each of layer-1 and layer-5. Five nodes may be located at layer-2. Six nodes may be located in each of layer-3 and layer-4.
  • a0 may indicate an age record of level-0 in the GH model shown in FIG. 7
  • a1 may indicate an age record of level-1 in the GH model shown in FIG. 7
  • a2 may indicate an age record of level-1 in the GH model shown in FIG. 7.
  • b0 may indicate a postal code record of level-0 in the GH model shown in FIG. 6
  • b1 may indicate a postal code record of level-1 in the GH model shown in FIG. 6
  • b2 may indicate a postal code record of level-1 in the GH model shown in FIG. 6.
  • c0 may indicate a gender record of level-0 in the GH model shown in FIG. 9
  • c1 may indicate a gender record of level-1 in the GH model shown in FIG. 9.
  • the "a 0 , b 0 , c 0 " nodes may indicate an age record of level-0, a postal code record of level-0, and a gender record of level-0.
  • the node “a 1 , b 0 , c 0 " may indicate an age record at level-1, a postal code record at level-0, and a gender record at level-0.
  • the node “a 1 , b 1 , c 0 " may indicate an age record at level-1, a postal code record at level-1, and a gender record at level-0.
  • the de-identification apparatus 100 may set the final lattice in the raw lattice using a genetic algorithm (S260).
  • the method of setting the final lattice may be as follows.
  • 13 is a flowchart illustrating a method of setting a final lattice.
  • the de-identification apparatus 100 may set any node among the nodes belonging to layer-4 corresponding to 2/3 points from the lowest layer among the raw lattice shown in FIG. 12 as the selection node A.
  • any node among nodes belonging to layer-2 corresponding to a third point from the lowest layer may be set as the selected node B (S261).
  • the selection node A may be connected to the selection node B.
  • the de-identifying apparatus 100 may set nodes "a 2 , b 2 , c 0 " belonging to layer-4 as the selection node A, and "a 1 , b 1 , c belonging to layer-2.
  • the 0 "node can be set to the selected node B.
  • the de-identification apparatus 100 may perform de-identification on a table corresponding to each of the selection node A and the selection node B (S262).
  • the de-identification apparatus 100 may generate a de-identified table that satisfies the de-identification parameters (eg, K-anonymity, L-diversity, and T-proximity) set in step S230 described above.
  • the de-identification result for the table corresponding to selection node A may be referred to as "de-identification table A”
  • the de-identification result for the table corresponding to selection node B is "de-identification table B". It may be referred to as.
  • the de-identification apparatus 100 may determine whether the ratios of the suppression values of each of the de-identified table A and the de-identified table B are all less than or equal to the suppression threshold (S263). If the ratio of the suppression values of each of the de-identified table A and the de-identified table B is both below the suppression threshold (hereinafter referred to as "case 1"), the de-identification apparatus 100 determines the final lattice as follows. Can be set.
  • the de-identifying apparatus 100 selects any node among nodes belonging to layer-1 corresponding to half of the point between the layer-2 and the lowest layer (that is, layer-0) to which the selected node B belongs in the raw lattice.
  • the node may be set as a cross node, and any node except the selected node B among the nodes belonging to the layer-2 may be set as the transition node (S263-1).
  • the de-identifying apparatus 100 may set nodes "a 0 , b 1 , c 0 " belonging to layer-1 as cross nodes, and "a 0 , b 2 , c 0 belonging to layer-2. "You can set a node as a mutation node.
  • the de-identification apparatus 100 may perform de-identification on a table corresponding to each of the cross nodes and the transition nodes (S266). That is, since the ratio of suppression values of the de-identified table B is less than or equal to the suppression threshold value, de-identification may not be performed on tables corresponding to nodes belonging to a layer higher than the selection node B.
  • the de-identification apparatus 100 may generate a de-identified table that satisfies the de-identification parameters (eg, K-anonymity, L-diversity, and T-proximity) set in step S230 described above. .
  • the de-identification apparatus 100 may determine whether the ratio of the suppression value of the de-identified table generated in step S266 is equal to or less than the suppression threshold.
  • the de-identification apparatus 100 may count the number of nodes (eg, selected nodes B, cross nodes, and transition nodes) that satisfy the "inhibition value ratio ⁇ suppression threshold value".
  • Steps S261 to S266 include the most nodes among the layers in which the number of nodes (eg, selection node B, cross nodes, and transition nodes) satisfying the "inhibition value ratio ⁇ suppression threshold value" constitutes the raw lattice It may be performed repeatedly until it is larger than x times the number of nodes (for example, six in FIG. 14).
  • x may be a real number greater than zero.
  • x can be set to 0.8, 1 or 1.2.
  • x is not limited to the above description and may be variously set.
  • any node belonging to the layer corresponding to the 2/3 point between the layer-2 to which the selection node B belongs and the lowest layer may be set as the selection node A '.
  • any node belonging to a layer corresponding to a third point between the layer-2 to which the selection node B belongs and the lowest layer may be set as the selection node B '.
  • Steps S262 to S266 may be performed again based on the selection node A 'and the selection node B'. This process may be repeated until the number of nodes satisfying the "inhibition value ratio ⁇ suppression threshold" is greater than x times the number of nodes of the layer including the most nodes among the layers constituting the raw lattice. .
  • the de-identification apparatus 100 determines whether or not (S264). If the ratio of suppression values of de-identified table A is below the suppression threshold and the ratio of suppression values of de-identified table B exceeds the suppression threshold (hereinafter referred to as "case 2"), the de-identification device ( 100) may select the final lattice as follows.
  • the de-identifying apparatus 100 intersects any node among the nodes belonging to layer-3 corresponding to the half point between layer-4 to which selection node A belongs and layer-2 to which selection node B belongs in raw lattice.
  • the node may be set as a node, and any node except the selected node A among the nodes belonging to the layer-4 may be set as the transition node (S264-1).
  • the de-identifying apparatus 100 may set "a 1 , b 1 , c 1 " nodes belonging to layer-3 as cross nodes, and "a 2 , b 1 , c 1 belonging to layer-4. "You can set a node as a mutation node.
  • the de-identification apparatus 100 may perform de-identification on a table corresponding to each of the cross nodes and the transition nodes (S266). That is, since the ratio of suppression values of the de-identified table B exceeds the suppression threshold, de-identification may not be performed for nodes belonging to a lower layer than the selection node B.
  • the de-identification apparatus 100 may generate a de-identified table that satisfies the de-identification parameters (eg, K-anonymity, L-diversity, and T-proximity) set in step S230 described above. .
  • the de-identification apparatus 100 may determine whether the ratio of the suppression value of the de-identified table generated in step S266 is equal to or less than the suppression threshold.
  • the de-identification apparatus 100 may count the number of nodes (eg, selection node A, crossing nodes, and transition nodes) that satisfy the "inhibition value ratio ⁇ suppression threshold".
  • Steps S261 to S266 include the most nodes among the layers in which the number of nodes (eg, selection node A, cross nodes, and transition nodes) satisfying the "inhibition value ratio ⁇ suppression threshold value" constitutes the raw lattice It may be performed repeatedly until it is larger than x times the number of nodes (for example, six in FIG. 14).
  • x may be a real number greater than zero.
  • x can be set to 0.8, 1 or 1.2.
  • x is not limited to the above description and may be variously set.
  • an arbitrary node belonging to a layer corresponding to a 2/3 point between layer-4 to which selection node A belongs and layer-2 to which selection node B belongs may be set as selection node A '.
  • any node belonging to a layer corresponding to a third point between the layer-4 to which the selection node A belongs and the layer-2 to which the selection node B belongs may be set as the selection node B '.
  • Steps S262 to S266 may be performed again based on the selection node A 'and the selection node B'. This process may be repeated until the number of nodes satisfying the "inhibition value ratio ⁇ suppression threshold" is greater than x times the number of nodes of the layer including the most nodes among the layers constituting the raw lattice. .
  • the de-identification apparatus 100 may set a final lattice including nodes (eg, selection node A, cross nodes, and transition nodes) that satisfy the "inhibition value ratio ⁇ suppression threshold value" (S267).
  • nodes eg, selection node A, cross nodes, and transition nodes
  • the de-identification apparatus 100 may determine whether the ratio of the suppression value of each of the de-identified table A and the de-identified table B exceeds the suppression threshold value. It may be (S265). If the ratio of the suppression values of each of the de-identified table A and the de-identified table B both exceeds the suppression threshold (hereinafter referred to as "case 3"), the de-identifying apparatus 100 is final as follows. Lattice can be selected.
  • the de-identifying apparatus 100 selects any node among nodes belonging to layer-5 corresponding to half of the point between the layer-4 and the highest layer (that is, layer-6) to which the selected node A belongs in the raw lattice.
  • the node may be set as a cross node, and any node except the selected node A among the nodes belonging to the layer-4 may be set as the transition node (S265-1).
  • the de-identifying apparatus 100 may set nodes "a 3 , b 1 , c 1 " belonging to layer-5 as cross nodes, and "a 2 , b 1 , c 1 belonging to layer-4. "You can set a node as a mutation node.
  • the de-identification apparatus 100 may perform de-identification on a table corresponding to each of the cross nodes and the transition nodes (S266).
  • the de-identification apparatus 100 may generate a de-identified table that satisfies the de-identification parameters (eg, K-anonymity, L-diversity, and T-proximity) set in step S230 described above. .
  • the de-identification parameters eg, K-anonymity, L-diversity, and T-proximity
  • the de-identification apparatus 100 may determine whether the ratio of the suppression value of the de-identified table generated in step S266 is equal to or less than the suppression threshold.
  • the de-identification apparatus 100 may count the number of nodes (eg, cross nodes, transition nodes) that satisfy the "inhibition value ratio ⁇ suppression threshold value”.
  • Steps S261 to S266 are nodes of a hierarchy in which the number of nodes (eg, crossing nodes, transition nodes) satisfying the "inhibition value ratio ⁇ suppression threshold value" includes the most nodes among the layers constituting the raw lattice. It may be performed repeatedly until it is larger than x times the number (for example, six in FIG. 14).
  • x may be a real number greater than zero.
  • x can be set to 0.8, 1 or 1.2.
  • x is not limited to the above description and may be variously set.
  • any node belonging to the layer corresponding to the 2/3 point between the layer-4 and the highest layer (ie, layer-6) to which the selection node A belongs may be set as the selection node A '.
  • any node belonging to a layer corresponding to a third point between the layer-4 and the highest layer (ie, layer-6) to which the selection node A belongs may be set as the selection node B '.
  • Steps S262 to S266 may be performed again based on the selection node A 'and the selection node B'. This process may be repeated until the number of nodes satisfying the "inhibition value ratio ⁇ suppression threshold" is greater than x times the number of nodes of the layer including the most nodes among the layers constituting the raw lattice. .
  • the de-identification apparatus 100 may set a final lattice including nodes (eg, cross nodes, transition nodes) that satisfy the "inhibition value ratio ⁇ suppression threshold value" (S267).
  • nodes eg, cross nodes, transition nodes
  • the de-identifying device 100 may display the final lattice through the output interface device 150, store the final lattice in the storage device 160 (or a database), and network interface device 130. Can send the final lattice to another device.
  • FIG. 14 is a conceptual diagram illustrating an embodiment of a table including masked records.
  • some areas of the raw data recorded in the social security number record included in the table 400 may be masked. For example, the area after "-" among the raw data recorded in the social security number record can be masked. The entire area of the raw data recorded in the name record included in the table 400 may be masked. Some areas of the raw data recorded in the address record included in the table 400 may be masked. For example, an area after " Seoul City " among the raw data recorded in the address record can be masked.
  • Re-identification risk can be indicated by the inverse of the number of rows that make up the equivalent class of the de-identified table.
  • the risk of re-identification may vary depending on the maximum, minimum, and average number of rows constituting an equivalent class.
  • Sample risk can be calculated based on Equation 2 below.
  • Precision can be used to measure the accuracy for each node belonging to a lattice and can indicate the average height of the GH model. The higher the level of generalization in the GH model, the lower the accuracy and the greater the loss of data. Accuracy can be calculated based on Equation 3 below.
  • the discernment metric may be a parameter that considers the size of the equivalent class, the generalization level in the GH model, and the like. Discernment metrics may indicate the ability to distinguish generalized data within an equivalent class. Discernment metric can be calculated based on Equation 4 below.
  • the DM may indicate the discernment metric.
  • f i can indicate the size of an equivalent class.
  • k may indicate the number of equivalent classes.
  • N may indicate the number of rows (eg, rows constituting the table).
  • Entropy may indicate the ability to distinguish or generalize data generalized in an equivalent class. Entropy may be calculated based on Equation 5 below.
  • ⁇ r may indicate raw data.
  • b r may indicate generalized data.
  • R ij may indicate a record in which raw data is recorded.
  • R ij ′ may indicate a record in which generalized data is recorded.
  • I may indicate an indicator function.
  • the de-identification device 100 may include risk parameters (eg, re-identification risk, sample risk, group risk, etc.), usability parameters (eg, accuracy, discernment metrics, entropy) for nodes belonging to the final lattice. Etc.) may be displayed through the output interface device 150.
  • the de-identification apparatus 100 displays before and after de-identification of the table corresponding to the node belonging to the final lattice (ie, the result of comparing the raw table with the de-identified table) through the output interface device 150. can do.
  • the methods according to the invention can be implemented in the form of program instructions that can be executed by various computer means and recorded on a computer readable medium.
  • Computer-readable media may include, alone or in combination with the program instructions, data files, data structures, and the like.
  • the program instructions recorded on the computer readable medium may be those specially designed and constructed for the present invention, or may be known and available to those skilled in computer software.
  • Examples of computer readable media include hardware devices that are specifically configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like.
  • Examples of program instructions include machine language code, such as produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like.
  • the hardware device described above may be configured to operate with at least one software module to perform the operations of the present invention, and vice versa.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Medical Informatics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)

Abstract

개인정보의 비식별화 방법 및 장치가 개시된다. 개인정보 비식별화 방법은 데이터베이스로부터 개인정보를 지시하는 원시 데이터가 기록된 레코드들을 포함하는 원시 테이블을 획득하는 단계, 원시 테이블에 포함된 레코드들 각각에 기록된 원시 데이터를 일반화함으로써 일반화된 데이터를 생성하는 단계, 원시 데이터 및 일반화된 데이터로 구성되는 일반화 계층 모델을 설정하는 단계, 일반화 계층 모델에 기초하여 복수의 후보 노드들을 포함하는 원시 래티스를 생성하는 단계, 및 원시 래티스에 포함된 복수의 후보 노드들 중에서 미리 설정된 기준을 만족하는 적어도 하나의 후보 노드를 포함하는 최종 래티스를 설정하는 단계를 포함한다. 따라서, 개인정보가 효율적으로 비식별화될 수 있다.

Description

개인정보의 비식별화 방법 및 장치
본 발명은 데이터 처리 기술에 관한 것으로, 더욱 상세하게는 유전 알고리즘을 기반으로 개인정보를 포함하는 테이블에 대한 비식별화를 효율적으로 수행하기 위한 기술에 관한 것이다.
정보통신기술(예를 들어, 빅데이터 관련 기술)이 발전함에 따라 개인정보를 수집하는 기술, 수집된 개인정보를 분석하는 기술 등이 발전하고 있다. 개인정보는 주민번호, 주소, 우편번호, 이름, 생일, 성별, 질병, 연봉 등을 포함할 수 있다. 이와 같이, 빅데이터 관련 기술이 발전함에 따라 개인정보는 다양한 분야에서 사용될 수 있다. 예를 들어, 기업은 개인정보에 기초하여 특정 소비자에게 자신의 상품, 서비스 등을 광고할 수 있고, 이에 따라 소비자는 자신이 원하는 상품, 서비스에 대한 정보를 기업으로부터 용이하게 획득할 수 있다.
그러나 개인정보가 무분별하게 사용됨으로써 정보주체인 개인의 기본권이 침해될 수 있다. 이러한 문제를 해소하기 위해 개인정보의 비식별화 기술이 고려될 수 있다. 비식별화 기술은 개인정보의 일부 또는 전부를 삭제하거나 대체(즉, 개인정보를 지시하는 데이터에 대한 일반화 수행)함으로써 다른 정보와 결합하여도 특정 개인을 식별할 수 없도록 하는 것을 의미한다. 개인정보에 대한 비식별화가 수행되는 경우, 일반화 레벨(level)에 따라 개인정보가 일반화되는 범위가 달라질 수 있다. 모든 일반화 레벨들 각각에 대한 개인정보의 비식별화가 수행되는 경우, 비식별화된 개인정보를 생성하기 위해 많은 시간이 소모될 수 있다.
또한, 일반화 레벨에 따라 개인정보의 사용성, 재식별화 위험성 등이 달라질 수 있다. 예를 들어, 개인정보 중에서 상대적으로 많은 부분이 일반화되는 경우, 비식별화된 개인정보의 분석시에 상대적으로 많은 오류가 발생하게 되고, 이에 따라 비식별화된 개인정보의 사용성은 저하될 수 있다. 반대로, 개인정보 중에서 상대적으로 적은 부분이 일반화되는 경우, 비식별화된 개인정보는 상대적으로 용이하게 추론되거나 재식별될 수 있으며, 이에 따라 비식별화된 개인정보의 재식별화 위험성은 증가될 수 있다.
또한, 개인정보의 비식별화를 위해 먼저 데이터베이스로부터 개인정보를 포함하는 테이블이 획득되어야 한다. 데이터베이스로부터 획득된 테이블은 다양하고 많은 정보를 포함하고 있으며, 필요한 정보를 포함하는 테이블을 생성하기 위해 많은 시간이 소요될 수 있다.
상기와 같은 문제점을 해결하기 위한 본 발명의 목적은 개인정보를 효율적으로 비식별화하기 위한 방법 및 장치를 제공하는 데 있다.
상기와 같은 문제점을 해결하기 위한 본 발명의 다른 목적은 개인정보를 포함하는 테이블의 레코드에 대한 속성을 설정하기 위한 방법 및 장치를 제공하는 데 있다.
상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른 개인정보 비식별화 장치에서 수행되는 개인정보 비식별화 방법은, 데이터베이스로부터 개인정보를 지시하는 원시 데이터가 기록된 레코드들을 포함하는 원시 테이블을 획득하는 단계, 일반화 레벨에 기초하여 상기 원시 테이블에 포함된 레코드들 각각에 기록된 원시 데이터를 일반화함으로써 일반화된 데이터를 생성하는 단계, 상기 원시 데이터 및 상기 일반화된 데이터로 구성되는 일반화 계층 모델을 설정하는 단계, 상기 일반화 계층 모델에 의해 지시되는 계층 구조에 기초하여, 개인정보의 종류별 일반화 레벨을 지시하는 테이블을 지시하는 복수의 후보 노드들을 포함하는 원시 래티스를 생성하는 단계, 및 상기 원시 래티스에 포함된 상기 복수의 후보 노드들 중에서 미리 설정된 기준을 만족하는 적어도 하나의 후보 노드를 포함하는 최종 래티스를 설정하는 단계를 포함한다.
여기서, 상기 개인정보 비식별화 방법은 상기 원시 테이블에 포함된 레코드들 각각의 속성을 설정하는 단계를 더 포함할 수 있다.
여기서, 상기 속성은 ID, QI, SA 및 IA로 분류될 수 있고, 특정 개인이 명시적으로 식별되는 개인정보를 지시하는 원시 데이터가 기록된 레코드는 ID로 설정될 수 있고, 특정 개인이 묵시적으로 식별되는 개인정보를 지시하는 원시 데이터가 기록된 레코드는 QI로 설정될 수 있고, 미리 설정된 기준 이상의 민감도를 가지는 개인정보를 지시하는 원시 데이터가 기록된 레코드는 SA로 설정될 수 있고, SA보다 낮은 민감도를 가지는 개인정보를 지시하는 원시 데이터가 기록된 레코드는 IA로 설정될 수 있다.
여기서, 상기 개인정보 비식별화 방법은 상기 원시 테이블에 포함된 레코드들 중에서 상기 속성이 ID로 설정된 레코드를 마스킹 처리하는 단계를 더 포함할 수 있다.
여기서, 상기 개인정보 비식별화 방법은 상기 원시 테이블에 포함된 레코드들 중에서 상기 속성이 QI로 설정된 레코드에 기록된 원시 데이터에 의해 지시되는 개인정보의 종류에 따라 상기 일반화 레벨을 설정하는 단계를 더 포함할 수 있다.
여기서, 상기 테이블에 포함된 레코드들 중에서 상기 속성이 QI로 설정된 레코드에 기록된 원시 데이터는 일반화 레벨에 기초하여 일반화될 수 있다.
여기서, 상기 최종 래티스를 설정하는 단계는 상기 원시 래티스에 포함된 복수의 후보 노드들 중에서 적어도 하나의 후보 노드를 선택하는 단계, 상기 적어도 하나의 후보 노드에 의해 지시되는 일반화 레벨에 기초하여 상기 원시 테이블에 대한 비식별화를 수행함으로써 비식별화된 테이블을 생성하는 단계, 미리 설정된 억제 기준을 만족하는 비식별화된 테이블에 대응하는 후보 노드를 최종 노드로 설정하는 단계, 및 상기 미리 설정된 기준을 만족하는 후보 노드에 대응하는 상기 최종 노드를 포함하는 상기 최종 래티스를 설정하는 단계를 포함할 수 있다.
여기서, 상기 비식별화된 테이블은 K-익명성을 기초로 생성되거나, 상기 K-익명성 및 L-다양성을 기초로 생성되거나, 또는 상기 K-익명성 및 T-근접성을 기초로 생성될 수 있다.
여기서, 상기 미리 설정된 억제 기준은 상기 비식별화된 테이블을 구성하는 동등 클래스들 중에서 상기 미리 설정된 K-익명성을 만족하지 않는 동등 클래스의 비율을 지시할 수 있다.
여기서, 상기 개인정보 비식별화 방법은 상기 최종 래티스에 포함된 적어도 하나의 최종 노드에 대응하는 비식별화된 테이블의 재식별화 위험성 및 유용성을 계산하는 단계를 더 포함할 수 있다.
상기 목적을 달성하기 위한 본 발명의 다른 실시예에 따른 개인정보 비식별화 장치는 프로세서 및 상기 프로세서를 통해 실행되는 적어도 하나의 명령이 저장된 메모리를 포함하고, 상기 적어도 하나의 명령은 데이터베이스로부터 개인정보를 지시하는 원시 데이터가 기록된 레코드들을 포함하는 원시 테이블을 획득하고, 일반화 레벨에 기초하여 상기 원시 테이블에 포함된 레코드들 각각에 기록된 원시 데이터를 일반화함으로써 일반화된 데이터를 생성하고, 상기 원시 데이터 및 상기 일반화된 데이터로 구성되는 일반화 계층 모델을 설정하고, 상기 일반화 계층 모델에 의해 지시되는 계층 구조에 기초하여, 개인정보의 종류별 일반화 레벨을 지시하는 테이블을 지시하는 복수의 후보 노드들을 포함하는 원시 래티스를 생성하고, 그리고 상기 원시 래티스에 포함된 상기 복수의 후보 노드들 중에서 미리 설정된 기준을 만족하는 적어도 하나의 후보 노드를 포함하는 최종 래티스를 설정하도록 실행 가능하다.
여기서, 상기 적어도 하나의 명령은 상기 원시 테이블에 포함된 레코드들 각각의 속성을 설정하도록 더 실행 가능할 수 있다.
여기서, 상기 속성은 ID, QI, SA 및 IA로 분류될 수 있고, 특정 개인이 명시적으로 식별되는 개인정보를 지시하는 원시 데이터가 기록된 레코드는 ID로 설정될 수 있고, 특정 개인이 묵시적으로 식별되는 개인정보를 지시하는 원시 데이터가 기록된 레코드는 QI로 설정될 수 있고, 미리 설정된 기준 이상의 민감도를 가지는 개인정보를 지시하는 원시 데이터가 기록된 레코드는 SA로 설정될 수 있고, SA보다 낮은 민감도를 가지는 개인정보를 지시하는 원시 데이터가 기록된 레코드는 IA로 설정될 수 있다.
여기서, 상기 적어도 하나의 명령은 상기 원시 테이블에 포함된 레코드들 중에서 상기 속성이 ID로 설정된 레코드를 마스킹 처리하도록 더 실행 가능할 수 있다.
여기서, 상기 적어도 하나의 명령은 상기 원시 테이블에 포함된 레코드들 중에서 상기 속성이 QI로 설정된 레코드에 기록된 원시 데이터에 의해 지시되는 개인정보의 종류에 따라 상기 일반화 레벨을 설정하도록 더 실행 가능할 수 있다.
여기서, 상기 테이블에 포함된 레코드들 중에서 상기 속성이 QI로 설정된 레코드에 기록된 원시 데이터는 일반화 레벨에 기초하여 일반화될 수 있다.
여기서, 상기 적어도 하나의 명령은 상기 최종 래티스를 설정하는 경우, 상기 원시 래티스에 포함된 복수의 후보 노드들 중에서 적어도 하나의 후보 노드를 선택하고, 상기 적어도 하나의 후보 노드에 의해 지시되는 일반화 레벨에 기초하여 상기 원시 테이블에 대한 비식별화를 수행함으로써 비식별화된 테이블을 생성하고, 미리 설정된 억제 기준을 만족하는 비식별화된 테이블에 대응하는 후보 노드를 최종 노드로 설정하고, 그리고 상기 미리 설정된 기준을 만족하는 후보 노드에 대응하는 상기 최종 노드를 포함하는 상기 최종 래티스를 설정하도록 실행 가능할 수 있다.
여기서, 상기 비식별화된 테이블은 K-익명성을 기초로 생성되거나, 상기 K-익명성 및 L-다양성을 기초로 생성되거나, 또는 상기 K-익명성 및 T-근접성을 기초로 생성될 수 있다.
여기서, 상기 미리 설정된 억제 기준은 상기 비식별화된 테이블을 구성하는 동등 클래스들 중에서 상기 미리 설정된 K-익명성을 만족하지 않는 동등 클래스의 비율을 지시할 수 있다.
여기서, 상기 적어도 하나의 명령은 상기 최종 래티스에 포함된 적어도 하나의 최종 노드에 대응하는 비식별화된 테이블의 재식별화 위험성 및 유용성을 계산하도록 더 실행 가능할 수 있다.
상기 목적을 달성하기 위한 본 발명의 다른 실시예에 따른 개인정보 비식별화 장치에서 수행되는 개인정보 비식별화 방법은, 원시 테이블에 포함된 레코드들 각각에 기록된 원시 데이터가 지시하는 개인정보의 종류별 일반화 레벨에 기초하여, 개인정보의 종류별 일반화 레벨을 지시하는 적어도 하나의 노드로 구성되는 복수의 계층들을 포함하는 원시 래티스를 생성하는 단계, 상기 복수의 계층들 중에서 계층-n에 속하는 임의의 노드를 선택 노드-1로 설정하고, 계층-m에 속하는 임의의 노드를 선택 노드-2로 설정하는 단계, 상기 선택 노드-1 및 상기 선택 노드-2 각각에 대응하는 비식별화된 테이블의 억제 값 비율과 미리 설정된 억제 임계값의 비교 결과에 기초하여, 상기 원시 래티스에 속하는 임의의 노드들 각각을 교차 노드 및 변이 노드로 설정하는 단계, 및 상기 선택 노드-1, 상기 선택 노드-2, 상기 교차 노드 및 상기 변이 노드 중에서 상기 미리 설정된 억제 임계값 이하의 억제 값 비율을 가지는 비식별화된 테이블에 대응하는 노드로 구성되는 최종 래티스를 설정하는 단계를 포함하며, 상기 n 및 m 각각은 자연수이고, 상기 비식별화된 테이블은 노드가 지시하는 일반화 레벨에 대응하는 데이터를 기초로 상기 원시 테이블이 비식별화된 결과이고, 상기 억제 값의 비율은 상기 비식별화된 테이블을 구성하는 동등 클래스들 중에서 미리 설정된 K-익명성을 만족하지 않는 동등 클래스의 비율이다.
여기서, 상기 원시 래티스 내에서 상기 선택 노드-1은 상기 선택 노드-2와 연결될 수 있다.
여기서, 상기 계층-n은 상기 원시 래티스의 복수의 계층들 중에서 최하위 계층으로부터 2/3 지점에 위치하는 계층일 수 있고, 상기 계층-m은 상기 원시 래티스의 복수의 계층들 중에서 최하위 계층으로부터 1/3 지점에 위치하는 계층일 수 있다.
여기서, 상기 선택 노드-1 및 상기 선택 노드-2 각각에 대응하는 비식별화된 테이블의 억제 값 비율이 상기 미리 설정된 억제 임계값 이하인 경우, 상기 교차 노드는 상기 복수의 계층들 중에서 상기 계층-m과 최하위 계층 사이의 1/2 지점에 위치하는 계층에 속하는 임의의 노드로 설정될 수 있고, 상기 변이 노드는 상기 복수의 계층들 중에서 상기 계층-m에 속하는 노드들 중에서 상기 선택 노드-2를 제외한 임의의 노드로 설정될 수 있다.
여기서, 상기 선택 노드-1에 대응하는 비식별화된 테이블의 억제 값 비율이 상기 미리 설정된 억제 임계값 이하이고, 상기 선택 노드-2에 대응하는 비식별화된 테이블의 억제 값 비율이 상기 미리 설정된 억제 임계값을 초과하는 경우, 상기 교차 노드는 상기 복수의 계층들 중에서 상기 계층-n과 상기 계층-m 사이의 1/2 지점에 위치하는 계층에 속하는 임의의 노드로 설정될 수 있고, 상기 변이 노드는 상기 복수의 계층들 중에서 상기 계층-n에 속하는 노드들 중에서 상기 선택 노드-1을 제외한 임의의 노드로 설정될 수 있다.
여기서, 상기 선택 노드-1 및 상기 선택 노드-2 각각에 대응하는 비식별화된 테이블의 억제 값 비율이 상기 미리 설정된 억제 임계값을 초과하는 경우, 상기 교차 노드는 상기 복수의 계층들 중에서 상기 계층-n과 최상위 계층 사이의 1/2 지점에 위치하는 계층에 속하는 임의의 노드로 설정될 수 있고, 상기 변이 노드는 상기 복수의 계층들 중에서 상기 계층-n에 속하는 노드들 중에서 상기 선택 노드-1을 제외한 임의의 노드로 설정될 수 있다.
여기서, 상기 최종 래티스를 구성하는 노드들의 개수는 상기 복수의 계층들 중에서 가장 많은 노드를 포함하는 계층에 속한 노드 개수의 x배 이상일 수 있고, 상기 x는 0을 초과하는 실수일 수 있다.
상기 목적을 달성하기 위한 본 발명의 다른 실시예에 따른 개인정보 비식별화 장치는 프로세서 및 상기 프로세서를 통해 실행되는 적어도 하나의 명령이 저장된 메모리를 포함하고, 상기 적어도 하나의 명령은 원시 테이블에 포함된 레코드들 각각에 기록된 원시 데이터가 지시하는 개인정보의 종류별 일반화 레벨에 기초하여, 개인정보의 종류별 일반화 레벨을 지시하는 적어도 하나의 노드로 구성되는 복수의 계층들을 포함하는 원시 래티스를 생성하는 단계, 상기 복수의 계층들 중에서 계층-n에 속하는 임의의 노드를 선택 노드-1로 설정하고, 계층-m에 속하는 임의의 노드를 선택 노드-2로 설정하고. 상기 선택 노드-1 및 상기 선택 노드-2 각각에 대응하는 비식별화된 테이블의 억제 값 비율과 미리 설정된 억제 임계값의 비교 결과에 기초하여, 상기 원시 래티스에 속하는 임의의 노드들 각각을 교차 노드 및 변이 노드로 설정하고, 그리고 상기 선택 노드-1, 상기 선택 노드-2, 상기 교차 노드 및 상기 변이 노드 중에서 상기 미리 설정된 억제 임계값 이하의 억제 값 비율을 가지는 비식별화된 테이블에 대응하는 노드로 구성되는 최종 래티스를 설정하도록 실행 가능하며, 상기 n 및 m 각각은 자연수이고, 상기 비식별화된 테이블은 노드가 지시하는 일반화 레벨에 대응하는 데이터를 기초로 상기 원시 테이블이 비식별화된 결과이고, 상기 억제 값의 비율은 상기 원시 테이블의 레코드에 기록된 원시 데이터 중에서 상기 비식별화된 테이블을 생성하기 위해 억제 값으로 설정되는 비율을 지시한다.
여기서, 상기 원시 래티스 내에서 상기 선택 노드-1은 상기 선택 노드-2와 연결될 수 있다.
여기서, 상기 계층-n은 상기 원시 래티스의 복수의 계층들 중에서 최하위 계층으로부터 2/3 지점에 위치하는 계층일 수 있고, 상기 계층-m은 상기 원시 래티스의 복수의 계층들 중에서 최하위 계층으로부터 1/3 지점에 위치하는 계층일 수 있다.
여기서, 상기 선택 노드-1 및 상기 선택 노드-2 각각에 대응하는 비식별화된 테이블의 억제 값 비율이 상기 미리 설정된 억제 임계값 이하인 경우, 상기 교차 노드는 상기 복수의 계층들 중에서 상기 계층-m과 최하위 계층 사이의 1/2 지점에 위치하는 계층에 속하는 임의의 노드로 설정될 수 있고, 상기 변이 노드는 상기 복수의 계층들 중에서 상기 계층-m에 속하는 노드들 중에서 상기 선택 노드-2를 제외한 임의의 노드로 설정될 수 있다.
여기서, 상기 선택 노드-1에 대응하는 비식별화된 테이블의 억제 값 비율이 상기 미리 설정된 억제 임계값 이하이고, 상기 선택 노드-2에 대응하는 비식별화된 테이블의 억제 값 비율이 상기 미리 설정된 억제 임계값을 초과하는 경우, 상기 교차 노드는 상기 복수의 계층들 중에서 상기 계층-n과 상기 계층-m 사이의 1/2 지점에 위치하는 계층에 속하는 임의의 노드로 설정될 수 있고, 상기 변이 노드는 상기 복수의 계층들 중에서 상기 계층-n에 속하는 노드들 중에서 상기 선택 노드-1을 제외한 임의의 노드로 설정될 수 있다.
여기서, 상기 선택 노드-1 및 상기 선택 노드-2 각각에 대응하는 비식별화된 테이블의 억제 값 비율이 상기 미리 설정된 억제 임계값을 초과하는 경우, 상기 교차 노드는 상기 복수의 계층들 중에서 상기 계층-n과 최상위 계층 사이의 1/2 지점에 위치하는 계층에 속하는 임의의 노드로 설정될 수 있고, 상기 변이 노드는 상기 복수의 계층들 중에서 상기 계층-n에 속하는 노드들 중에서 상기 선택 노드-1을 제외한 임의의 노드로 설정될 수 있다.
여기서, 상기 최종 래티스를 구성하는 노드들의 개수는 상기 복수의 계층들 중에서 가장 많은 노드를 포함하는 계층에 속한 노드 개수의 x배 이상일 수 있고, 상기 x는 0을 초과하는 실수일 수 있다.
상기 다른 목적을 달성하기 위한 본 발명의 일 실시예에 따른 개인정보 비식별화 장치에서 수행되는 개인정보를 포함하는 테이블의 레코드에 대한 속성 설정 방법은, 상기 개인정보의 검색 및 상기 레코드의 속성 설정을 위해 사용되는 정규 표현식을 설정하는 단계, 상기 테이블의 검색 대상 범위를 설정하는 단계, 상기 정규 표현식을 기반으로 상기 테이블 중 상기 검색 대상 범위에 의해 지시되는 영역 내에서 상기 개인정보를 검색하는 단계, 및 상기 정규 표현식을 기반으로 상기 개인정보가 기록된 상기 레코드의 속성을 설정하는 단계를 포함한다.
여기서, 상기 검색 대상 범위는 상기 테이블을 구성하는 레코드의 개수를 지시할 수 있다.
여기서, 상기 테이블은 비-개인정보를 더 포함할 수 있고, 상기 정규 표현식은 상기 비-개인정보의 검색 및 상기 비-개인정보가 기록된 상기 레코드의 속성 설정을 위해 사용될 수 있다.
여기서, 상기 레코드의 속성은 ID, QI, SA 및 IA로 분류될 수 있다.
여기서, 상기 레코드의 속성을 설정하는 단계에서 특정 개인을 명시적으로 식별하는 개인정보가 기록된 레코드의 속성은 ID로 설정될 수 있고, 특정 개인을 묵시적으로 식별하는 개인정보가 기록된 레코드의 속성은 QI로 설정될 수 있고, 미리 설정된 기준 이상의 민감도를 가지는 개인정보가 기록된 레코드의 속성은 SA로 설정될 수 있고, SA보다 낮은 민감도를 가지는 개인정보가 기록된 레코드의 속성은 IA로 설정될 수 있다.
여기서, 상기 레코드에 대한 속성 설정 방법은 ID 속성을 가지는 레코드에 기록된 개인정보에 대한 마스킹 처리 여부를 설정하는 단계를 더 포함할 수 있다.
상기 다른 목적을 달성하기 위한 본 발명의 다른 실시예에 따른 개인정보 비식별화 장치는 프로세서 및 상기 프로세서에 의해 실행되는 적어도 하나의 명령이 저장된 메모리를 포함하며, 상기 적어도 하나의 명령은 개인정보의 검색 및 상기 개인정보를 포함하는 테이블의 레코드에 대한 속성 설정을 위해 사용되는 정규 표현식을 설정하고, 상기 테이블의 검색 대상 범위를 설정하고, 상기 정규 표현식을 기반으로 상기 테이블 중 상기 검색 대상 범위에 의해 지시되는 영역 내에서 상기 개인정보를 검색하고, 그리고 상기 정규 표현식을 기반으로 상기 개인정보가 기록된 상기 레코드의 속성을 설정하도록 실행된다.
여기서, 상기 검색 대상 범위는 상기 테이블을 구성하는 레코드의 개수를 지시할 수 있다.
여기서, 상기 테이블은 비-개인정보를 더 포함할 수 있고, 상기 정규 표현식은 상기 비-개인정보의 검색 및 상기 비-개인정보가 기록된 상기 레코드의 속성 설정을 위해 사용될 수 있다.
여기서, 상기 레코드의 속성은 ID, QI, SA 및 IA로 분류될 수 있다.
여기서, 상기 레코드의 속성을 설정하는 경우에 상기 적어도 하나의 명령은 특정 개인을 명시적으로 식별하는 개인정보가 기록된 레코드의 속성을 ID로 설정하도록 실행될 수 있고, 특정 개인을 묵시적으로 식별하는 개인정보가 기록된 레코드의 속성을 QI로 설정하도록 실행될 수 있고, 미리 설정된 기준 이상의 민감도를 가지는 개인정보가 기록된 레코드의 속성을 SA로 설정하도록 실행될 수 있고, SA보다 낮은 민감도를 가지는 개인정보가 기록된 레코드의 속성을 IA로 설정하도록 실행될 수 있다.
여기서, 상기 적어도 하나의 명령은 ID 속성을 가지는 레코드에 기록된 개인정보에 대한 마스킹 처리 여부를 설정하도록 더 실행될 수 있다.
본 발명에 의하면, 미리 설정된 기준을 만족하는 일반화 레벨에 대응하는 개인정보에 대한 비식별화가 수행되므로, 비식별화 절차가 신속히 수행될 수 있다. 또한, 비식별화된 개인정보의 사용성이 향상될 수 있고, 비식별화된 개인정보의 재식별화 위험성이 감소(또는, 개인정보의 재식별화 위험성이 제거)될 수 있다.
또한, 고객의 데이터 유형, 사용 목적 등을 고려하여 개인정보의 비식별화가 수행될 수 있으며, 이에 따라 비식별화된 개인정보의 사용성이 보다 향상될 수 있다. 개인정보의 비식별화를 위해 유전 알고리즘이 사용됨으로써 개인정보의 비식별화가 신속히 수행될 수 있다.
또한, 개인정보를 포함하는 테이블의 레코드에 대한 속성이 효율적으로(또는, 신속하게) 설정될 수 있다. 따라서, 개인정보의 비식별화가 보다 신속히 수행될 수 있다.
도 1은 본 발명에 따른 방법들을 수행하는 개인정보 비식별화 장치의 일 실시예를 도시한 블록도이다.
도 2는 개인정보 비식별화 방법에 대한 일 실시예를 도시한 흐름도이다.
도 3은 레코드의 속성 설정 방법에 대한 일 실시예를 도시한 흐름도이다.
도 4는 테이블의 일 실시예를 도시한 개념도이다.
도 5는 GH 모델을 설정하는 방법에 대한 일 실시예를 도시한 흐름도이다.
도 6은 우편번호 레코드에 대한 GH 모델의 일 실시예를 도시한 개념도이다.
도 7은 나이 레코드에 대한 GH 모델의 일 실시예를 도시한 개념도이다.
도 8은 국적 레코드에 대한 GH 모델의 일 실시예를 도시한 개념도이다.
도 9는 성별 레코드에 대한 GH 모델의 일 실시예를 도시한 개념도이다.
도 10은 비식별화된 테이블의 일 실시예를 도시한 개념도이다.
도 11은 비식별화된 테이블의 다른 실시예를 도시한 개념도이다.
도 12는 원시 래티스의 일 실시예를 도시한 개념도이다.
도 13은 최종 래티스의 설정 방법을 도시한 흐름도이다.
도 14는 마스킹 처리된 레코드들을 포함하는 테이블의 일 실시예를 도시한 개념도이다.
상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른 개인정보 비식별화 장치에서 수행되는 개인정보 비식별화 방법은, 데이터베이스로부터 개인정보를 지시하는 원시 데이터가 기록된 레코드들을 포함하는 원시 테이블을 획득하는 단계, 일반화 레벨에 기초하여 상기 원시 테이블에 포함된 레코드들 각각에 기록된 원시 데이터를 일반화함으로써 일반화된 데이터를 생성하는 단계, 상기 원시 데이터 및 상기 일반화된 데이터로 구성되는 일반화 계층 모델을 설정하는 단계, 상기 일반화 계층 모델에 의해 지시되는 계층 구조에 기초하여, 개인정보의 종류별 일반화 레벨을 지시하는 테이블을 지시하는 복수의 후보 노드들을 포함하는 원시 래티스를 생성하는 단계, 및 상기 원시 래티스에 포함된 상기 복수의 후보 노드들 중에서 미리 설정된 기준을 만족하는 적어도 하나의 후보 노드를 포함하는 최종 래티스를 설정하는 단계를 포함한다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가진 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.
도 1은 본 발명에 따른 방법들을 수행하는 개인정보 비식별화 장치의 일 실시예를 도시한 블록도이다.
도 1을 참조하면, 개인정보 비식별화 장치(100)는 적어도 하나의 프로세서(110) 및 메모리(120)를 포함할 수 있다. 또한, 개인정보 비식별화 장치(100)는 네트워크와 연결되어 통신을 수행하는 네트워크 인터페이스 장치(130), 입력 인터페이스 장치(140), 출력 인터페이스 장치(150), 저장 장치(160) 등을 더 포함할 수 있다. 개인정보 비식별화 장치(100)에 포함된 각각의 구성 요소들은 버스(bus)(170)에 의해 연결되어 서로 통신을 수행할 수 있다. 개인정보 비식별화 장치(100)는 간략히 "비식별화 장치(100)"로 지칭될 수 있다.
프로세서(110)는 메모리(120) 및/또는 저장 장치(160)에 저장된 프로그램 명령(program command)을 실행할 수 있다. 프로세서(110)는 중앙 처리 장치(central processing unit; CPU), 그래픽 처리 장치(graphics processing unit; GPU) 또는 본 발명에 따른 방법들이 수행되는 전용의 프로세서를 의미할 수 있다. 메모리(120)와 저장 장치(160)는 휘발성 저장 매체 및/또는 비휘발성 저장 매체로 구성될 수 있다. 예를 들어, 메모리(120)는 읽기 전용 메모리(read only memory; ROM) 및/또는 랜덤 액세스 메모리(random access memory; RAM)로 구성될 수 있다.
여기서, 비식별화 장치(100)는 데스크탑 컴퓨터(desktop computer), 랩탑 컴퓨터(laptop computer), 태블릿(tablet) PC, 무선전화기(wireless phone), 모바일폰(mobile phone), 스마트 폰(smart phone) 등을 일 수 있다.
한편, 비식별화 장치(100)에서 수행되는 방법(예를 들어, 신호의 전송 또는 수신)이 설명되는 경우에도 이에 대응하는 다른 장치는 비식별화 장치(100)에서 수행되는 방법과 상응하는 방법(예를 들어, 신호의 수신 또는 전송)을 수행할 수 있다. 즉, 비식별화 장치(100)의 동작이 설명된 경우에 이에 대응하는 다른 장치는 비식별화 장치(100)의 동작과 상응하는 동작을 수행할 수 있다. 반대로, 다른 장치의 동작이 설명된 경우에 이에 대응하는 비식별화 장치(100)는 다른 장치의 동작과 상응하는 동작을 수행할 수 있다.
도 2는 개인정보 비식별화 방법에 대한 일 실시예를 도시한 흐름도이다.
도 2를 참조하면, 개인정보 비식별화 방법은 도 1을 참조하여 설명된 비식별화 장치(100)(예를 들어, 비식별화 장치(100)에 포함된 프로세서(110))에 의해 수행될 수 있다. 비식별화 장치(100)는 데이터베이스(database)(또는, CSV(comma-separated values) 파일 등)로부터 복수의 레코드(record)들로 구성되는 테이블(table)을 획득할 수 있다(S200). 복수의 레코드들 각각에 개인정보를 지시하는 원시 데이터가 기록될 수 있다. 또한, 복수의 레코드들 각각에 개인정보 외의 정보(이하, "비-개인정보"라 함)를 지시하는 원시 데이터가 기록될 수 있다. 데이터베이스는 비식별화 장치(100) 내에 위치할 수 있고, 또는 다른 장치(예를 들어, 서버) 내에 위치할 수 있다.
테이블을 획득하기 위해 비식별화 장치(100)는 데이터베이스로의 접속을 위해 사용되는 접속 정보(예를 들어, IP(internet protocol) 주소, 포트(port) 번호, ID(identifier), SID(system ID), 비밀번호 등)를 생성할 수 있다. 또는, 접속 정보는 비식별화 장치(100)의 입력 인터페이스 장치(140)를 통해 사용자로부터 획득될 수 있다. 비식별화 장치(100)는 생성된 접속 정보에 기초하여 데이터베이스로의 접속이 승인된 경우 데이터베이스로부터 복수의 레코드들로 구성되는 테이블을 획득할 수 있다.
비식별화 장치(100)는 테이블에 포함된 복수의 레코드들 각각의 속성을 설정할 수 있다(S210). 레코드에 대한 속성은 다음과 같이 설정될 수 있다.
도 3은 레코드의 속성 설정 방법에 대한 일 실시예를 도시한 흐름도이다.
도 3을 참조하면, 비식별화 장치(100)는 정규 표현식(regular expression)을 설정할 수 있다(S211). 정규 표현식은 테이블의 레코드에 기록된 개인정보, 비-개인정보 등을 검색하기 위해 사용될 수 있다. 따라서, 비식별화 장치(100)는 정규 표현식에 의해 검색될 개인정보의 종류를 설정할 수 있다. 개인정보의 종류로 주민번호(또는, 여권번호, SSN(social security number)), 이름, 주소, 우편번호, 나이, 국적, 성별, 질병 등이 존재할 수 있다. 또한, 비식별화 장치(100)는 정규 표현식에 의해 검색될 비-개인정보의 종류를 설정할 수 있다. 비-개인정보의 종류로 환자번호 등이 존재할 수 있다. 개인정보 및 비-개인정보의 종류 정보는 비식별화 장치(100)의 입력 인터페이스 장치(140)를 통해 사용자로부터 획득될 수 있다.
또한, 정규 표현식은 검색된 개인정보, 비-개인정보 등이 기록된 레코드의 속성을 설정하기 위해 사용될 수 있다. 레코드의 속성은 ID(identifier), QI(quasi-identifier), SA(sensitive attribute), IA(insensitive attribute)(또는, NSA(non-SA)) 등으로 분류될 수 있다. ID는 특정 개인이 명시적(explicit)으로 식별되는 개인정보를 지시할 수 있다. 특정 개인은 ID로 설정된 하나의 개인정보만으로 식별될 수 있다. 예를 들어, 비식별화 장치(100)는 주민번호, 이름, 주소 등이 기록된 레코드의 속성이 ID로 설정되도록 정규 표현식을 설정할 수 있다. QI는 특정 개인이 묵시적(non-explicit)으로 식별되는 개인정보를 지시할 수 있다. 특정 개인은 QI로 설정된 하나의 개인정보만으로 식별될 수 없으나, QI로 설정된 하나의 개인정보와 다른 개인정보의 조합으로 식별될 수 있다. 예를 들어, 비식별화 장치(100)는 우편번호, 나이, 국적, 성별 등이 기록된 레코드의 속성이 QI로 설정되도록 정규 표현식을 설정할 수 있다.
SA는 보호가 요구되는 민감한 개인정보(예를 들어, 미리 설정된 기준 이상의 민감도를 가지는 개인정보)를 지시할 수 있다. SA로 설정된 개인정보가 공개되는 경우 특정 개인의 신상에 문제가 발생될 수 있다. 예를 들어, 비식별화 장치(100)는 질병 등이 기록된 레코드의 속성이 SA로 설정되도록 정규 표현식을 설정할 수 있다. IA는 민감하지 않은 개인정보를 지시할 수 있다. 또는, IA는 SA보다 낮은 민감도를 가지는 개인정보를 지시할 수 있다. IA로 설정된 개인정보가 공개되는 경우 특정 개인의 신상에 문제가 발생되지 않을 수 있다. 예를 들어, 비식별화 장치(100)는 우편번호, 나이, 국적, 성별 등이 기록된 레코드의 속성이 IA로 설정되도록 정규 표현식을 설정할 수 있다.
비식별화 장치(100)는 테이블의 검색 대상 범위를 설정할 수 있다(S212). 검색 대상 범위는 테이블의 일부 영역을 지시할 수 있으며, 검색 대상 범위에 의해 지시되는 영역에 단계 S211에서 설정된 정규 표현식이 적용될 수 있다. 즉, 검색 대상 범위 내의 원시 데이터만을 사용함으로써 테이블 내의 모든 원시 데이터가 지시하는 개인정보의 종류(또는, 비-개인정보의 종류)가 파악될 수 있고, 원시 데이터가 기록된 레코드의 속성이 결정될 수 있다. 검색 대상 범위는 레코드의 개수(예를 들어, 테이블 중에서 로우(row)의 개수)를 지시할 수 있다. 예를 들어, 검색 대상 범위는 100개, 1000개 등으로 설정될 수 있다. 여기서, 단계 S212는 필요에 따라 생략될 수 있다. 검색 대상 범위 정보는 비식별화 장치(100)의 입력 인터페이스 장치(140)를 통해 사용자로부터 획득될 수 있다.
비식별화 장치(100)는 ID 속성을 가지는 레코드의 처리 방식을 설정할 수 있다(S213). 예를 들어, ID 속성을 가지는 레코드의 처리 방식은 다음과 같이 분류될 수 있다. 첫 번째 처리 방식으로, 비식별화 장치(100)는 ID 속성을 가지는 레코드를 테이블에서 제외할 수 있다. 따라서, 테이블은 ID 속성을 가지는 레코드를 포함하지 않을 수 있다. 두 번째 처리 방식으로, 비식별화 장치(100)는 ID 속성을 가지는 레코드에 기록된 원시 데이터에 대한 마스킹(masking) 처리를 할 수 있다. 따라서, 테이블은 ID 속성을 가지는 레코드 등을 포함할 수 있으며, ID 속성을 가지는 레코드에 마스킹 처리된 데이터가 기록될 수 있다. 세 번째 처리 방식으로, 비식별화 장치(100)는 ID 속성을 가지는 레코드에 기록된 원시 데이터를 그대로 사용할 수 있다.
비식별화 장치(100)는 테이블 중에서 검색 대상 범위에 의해 지시되는 영역에 정규 표현식을 적용할 수 있다(S214). 예를 들어, 비식별화 장치(100)는 정규 표현식을 기반으로 검색 대상 범위 내에서 개인정보에 해당하는 원시 데이터를 검색할 수 있고, 검색된 원시 데이터에 대응하는 개인정보의 종류를 확인할 수 있다. 비식별화 장치(100)는 확인된 개인정보의 종류에 기초하여 레코드의 속성을 설정할 수 있다.
구체적으로, 비식별화 장치(100)는 테이블에 포함된 주민번호 레코드(즉, 주민번호를 지시하는 원시 데이터가 기록된 레코드), 이름 레코드(즉, 이름을 지시하는 원시 데이터가 기록된 레코드) 및 주소 레코드(즉, 주소를 지시하는 원시 데이터가 기록된 레코드)의 속성을 ID로 설정할 수 있다. ID 속성을 가지는 레코드는 "ID 레코드"로 지칭될 수 있으며, 이에 따라 ID 레코드는 주민번호 레코드, 이름 레코드 및 주소 레코드를 포함할 수 있다. 비식별화 장치(100)는 테이블에 포함된 우편번호 레코드(즉, 우편번호를 지시하는 원시 데이터가 기록된 레코드), 나이 레코드(즉, 나이를 지시하는 원시 데이터가 기록된 레코드), 국적 레코드(즉, 국적을 지시하는 원시 데이터가 기록된 레코드) 및 성별 레코드(즉, 성별을 지시하는 원시 데이터가 기록된 레코드)의 속성을 QI로 설정할 수 있다. QI 속성을 가지는 레코드는 "QI 레코드"로 지칭될 수 있으며, 이에 따라 QI 레코드는 우편번호 레코드, 나이 레코드, 국적 레코드 및 성별 레코드를 포함할 수 있다.
비식별화 장치(100)는 테이블에 포함된 질병 레코드(즉, 질병을 지시하는 원시 데이터가 기록된 레코드)의 속성을 SA로 설정할 수 있다. SA 속성을 가지는 레코드는 "SA 레코드"로 지칭될 수 있으며, 이에 따라 SA 레코드는 질병 레코드를 포함할 수 있다. 비식별화 장치(100)는 테이블에 포함된 우편번호 레코드, 나이 레코드, 국적 레코드 및 성별 레코드의 속성을 IA로 설정할 수 있다. IA 속성을 가지는 레코드는 "IA 레코드"로 지칭될 수 있으며, 이에 따라 IA 레코드는 우편번호 레코드, 나이 레코드, 국적 레코드 및 성별 레코드를 포함할 수 있다. 여기서, 테이블에 포함된 우편번호 레코드, 나이 레코드, 국적 레코드 및 성별 레코드의 속성은 QI 및 IA로 설정될 수 있다. 앞서 설명된 방법에 의해 처리된 테이블은 다음과 같을 수 있다.
도 4는 테이블의 일 실시예를 도시한 개념도이다.
도 4를 참조하면, 테이블(400)은 복수의 레코드들을 포함할 수 있다. 복수의 레코드들 각각에 기록된 원시 데이터는 개인정보인 주민번호(또는, 여권번호, SSN), 이름, 주소, 우편번호, 나이, 국적, 성별, 질병 등을 지시할 수 있다. 테이블(400)을 구성하는 주민번호 레코드, 이름 레코드 및 주소 레코드는 ID 레코드로 설정될 수 있다. 테이블(400)을 구성하는 우편번호 레코드, 나이 레코드, 국적 레코드 및 성별 레코드는 QI 레코드로 설정될 수 있다. 테이블(400)을 구성하는 질병 레코드는 SA 레코드로 설정될 수 있다. 테이블(400)을 구성하는 우편번호 레코드, 나이 레코드, 국적 레코드 및 성별 레코드는 IA 레코드로 설정될 수 있다.
다시 도 3을 참조하면, 비식별화 장치(100)는 단계 S213에서 설정된 처리 방식에 기초하여 ID 속성을 가지는 레코드를 처리할 수 있다. 비식별화 장치(100)는 속성 설정이 완료된 복수의 레코드들을 포함하는 테이블을 출력 인테페이스 장치(150)를 통해 디스플레이할 수 있다(S215). 여기서, 테이블에 포함된 복수의 레코드들 각각은 원시 데이터(즉, 개인정보)와 설정된 속성을 함께 지시할 수 있다. 비식별화 장치(100)는 사용자로부터 설정된 속성에 대한 수정 요청을 지시하는 메시지를 수신할 수 있고, 수신된 메시지에 기초하여 해당 레코드의 속성을 수정할 수 있다. 그 후에, 비식별화 장치(100)는 속성 수정이 완료된 복수의 레코드들을 포함하는 테이블을 출력 인테페이스 장치(150)를 통해 디스플레이할 수 있다. 비식별화 장치(100)는 사용자로부터 속성에 대한 확인 완료를 지시하는 메시지를 수신할 수 있고, 이 경우에 다음 단계를 수행할 수 있다. 여기서, 속성에 대한 수정 요청을 지시하는 메시지 및 속성에 대한 확인 완료를 지시하는 메시지는 비식별화 장치(100)의 입력 인터페이스 장치(140)를 통해 수신될 수 있다.
다시 도 2를 참조하면, 비식별화 장치(100)는 테이블에 포함된 QI 레코드에 대한 일반화 계층(generalization hierarchy; GH) 모델(model)을 설정할 수 있다(S220). GH 모델의 설정 방법은 다음과 같을 수 있다.
도 5는 GH 모델을 설정하는 방법에 대한 일 실시예를 도시한 흐름도이다.
도 5를 참조하면, 비식별화 장치(100)는 QI 레코드에 기록된 원시 데이터에 대한 일반화 레벨(level)을 설정할 수 있다(S221). 비식별화 장치(100)는 QI 레코드의 종류(즉, 우편번호 레코드, 나이 레코드, 국적 레코드, 성별 레코드)에 따라 일반화 레벨을 설정할 수 있다. 예를 들어, 비식별화 장치(100)는 우편번호 레코드에 대한 일반화 레벨의 범위를 일반화 레벨-0부터 일반화 레벨-2까지로 설정할 수 있고, 나이 레코드에 대한 일반화 레벨의 범위를 일반화 레벨-0부터 일반화 레벨-3까지로 설정할 수 있고, 국적 레코드에 대한 일반화 레벨의 범위를 일반화 레벨-0부터 일반화 레벨-2까지로 설정할 수 있고, 성별 레코드에 대한 일반화 레벨의 범위를 일반화 레벨-0부터 일반화 레벨-1까지로 설정할 수 있다.
원시 데이터에 대한 일반화 범위는 일반화 레벨별로 동일할 수 있다. 예를 들어, 일반화 레벨-1인 경우에 일반화 범위는 일 단위일 수 있으며, 이에 따라 나이를 지시하는 "28", "29", "21" 및 "23"은 "2*"로 일반화될 수 있다. 일반화 레벨-2인 경우에 일반화 범위는 십 단위일 수 있으며, 이에 따라 우편번호를 지시하는 "13053" 및 "13068"은 "130**"로 일반화될 수 있다.
비식별화 장치(100)는 QI 레코드에 기록된 원시 데이터를 일반화 레벨-0으로 설정할 수 있다(S222). 그 후에, 비식별화 장치(100)는 일반화 레벨의 범위에 기초하여 일반화가 수행될 데이터의 범위를 설정할 수 있고, 일반화가 수행될 데이터의 범위에 기초하여 원시 데이터를 일반화할 수 있고, 일반화된 데이터를 해당 일반화 레벨(예를 들어, 일반화 레벨-1, 일반화 레벨-2, 일반화 레벨-3 등)로 설정할 수 있다(S223). 일반화가 수행된 데이터의 범위는 일반화 레벨-0에서 가장 작으며, 일반화 레벨이 높아질수록 증가될 수 있다.
비식별화 장치(100)는 낮은 일반화 레벨에 대응하는 데이터와 높은 일반화 레벨에 대응하는 데이터를 순차적으로 연결함으로써, GH 모델을 생성할 수 있다(S224). GH 모델에서 최하위 계층에 일반화 레벨-0과 대응하는 원시 데이터가 위치할 수 있고, 일반화 레벨-0보다 상위 계층에 일반화 레벨-1과 대응하는 일반화된 데이터가 위치할 수 있고, 일반화 레벨-1보다 상위 계층에 일반화 레벨-2와 대응하는 일반화된 데이터가 위치할 수 있고, 일반화 레벨-2보다 상위 계층에 일반화 레벨-3과 대응하는 일반화된 데이터가 위치할 수 있다. GH 모델 중 최상위 계층에서 모든 데이터는 하나의 데이터로 일반화될 수 있다. GH 모델의 실시예들은 다음과 같다.
도 6은 우편번호 레코드에 대한 GH 모델의 일 실시예를 도시한 개념도이다.
도 6을 참조하면, 우편번호 레코드에 대한 GH 모델은 일반화 레벨-0 내지 일반화 레벨-2로 구성될 수 있다. 우편번호 레코드에 기록된 원시 데이터인 "13053", "13068", "14850" 및 "14853"은 일반화 레벨-0으로 설정될 수 있다. 우편번호 레코드에 기록된 원시 데이터 중에서 "13053" 및 "13068"은 "130**"으로 일반화될 수 있고, 일반화된 데이터인 "130**"은 일반화 레벨-1로 설정될 수 있다. 우편번호 레코드에 기록된 원시 데이터 중에서 "14850" 및 "14853"은 "148**"로 일반화될 수 있고, 일반화된 데이터인 "148**"는 일반화 레벨-1로 설정될 수 있다. 일반화 레벨-1에 대응하는 "130**" 및 "148**"는 "*****"(또는, "1****")로 일반화될 수 있고, 일반화된 데이터인 "*****"(또는, "1****")은 일반화 레벨-2로 설정될 수 있다. 우편번호 레코드에 대한 GH 모델은 앞서 설명된 내용에 한정되지 않으며, 다양하게 설정될 수 있다.
도 7은 나이 레코드에 대한 GH 모델의 일 실시예를 도시한 개념도이다.
도 7을 참조하면, 나이 레코드에 대한 GH 모델은 일반화 레벨-0 내지 일반화 레벨-3으로 구성될 수 있다. 나이 레코드에 기록된 원시 데이터인 "28", "29", "21", "23", "31", "37", "36", "35", "47", "49", "50" 및 "55"는 일반화 레벨-0으로 설정될 수 있다. 나이 레코드에 기록된 원시 데이터 중에서 "28", "29", "21" 및 "23"은 "2*"으로 일반화될 수 있고, 일반화된 데이터인 "2*"은 일반화 레벨-1로 설정될 수 있다. 나이 레코드에 기록된 원시 데이터 중에서 "31", "37", "36" 및 "35"는 "3*"으로 일반화될 수 있고, 일반화된 데이터인 "3*"은 일반화 레벨-1로 설정될 수 있다. 나이 레코드에 기록된 원시 데이터 중에서 "47" 및 "49"는 "4*"로 일반화될 수 있고, 일반화된 데이터인 "4*"는 일반화 레벨-1로 설정될 수 있다. 나이 레코드에 기록된 원시 데이터 중에서 "50" 및 "55"는 "5*"로 일반화될 수 있고, 일반화된 데이터인 "5*"는 일반화 레벨-1로 설정될 수 있다.
일반화 레벨-1에 대응하는 "2*" 및 "3*"은 "<40"으로 일반화될 수 있고, 일반화된 데이터인 "<40"은 일반화 레벨-2로 설정될 수 있다. 일반화 레벨-1에 대응하는 "4*" 및 "5*"는 "≥40"으로 일반화될 수 있고, 일반화된 데이터인 "≥40"은 일반화 레벨-2로 설정될 수 있다. 일반화 레벨-2에 대응하는 "<40" 및 "≥40"은 "**"로 일반화될 수 있고, 일반화된 데이터인 "**"은 일반화 레벨-3으로 설정될 수 있다. 나이 레코드에 대한 GH 모델은 앞서 설명된 내용에 한정되지 않으며, 다양하게 설정될 수 있다.
도 8은 국적 레코드에 대한 GH 모델의 일 실시예를 도시한 개념도이다.
도 8을 참조하면, 국적 레코드에 대한 GH 모델은 일반화 레벨-0 내지 일반화 레벨-2로 구성될 수 있다. 국적 레코드에 기록된 원시 데이터인 "한국", "일본", "영국" 및 "독일"은 일반화 레벨-0으로 설정될 수 있다. 국적 레코드에 기록된 원시 데이터 중에서 "한국" 및 "일본"은 "아시아"로 일반화될 수 있고, 일반화된 데이터인 "아시아"는 일반화 레벨-1로 설정될 수 있다. 국적 레코드에 기록된 원시 데이터 중에서 "영국" 및 "독일"은 "유럽"으로 일반화될 수 있고, 일반화된 데이터인 "유럽"은 일반화 레벨-1로 설정될 수 있다. 일반화 레벨-1에 대응하는 "아시아" 및 "유럽"은 "전세계"(또는, "**")로 일반화될 수 있고, 일반화된 데이터인 "전세계"(또는, "**")는 일반화 레벨-2로 설정될 수 있다. 국적 레코드에 대한 GH 모델은 앞서 설명된 내용에 한정되지 않으며, 다양하게 설정될 수 있다.
도 9는 성별 레코드에 대한 GH 모델의 일 실시예를 도시한 개념도이다.
도 9를 참조하면, 성별 레코드에 대한 GH 모델은 일반화 레벨-0 및 일반화 레벨-1로 구성될 수 있다. 성별 레코드에 기록된 원시 데이터인 "남" 및 "여"는 일반화 레벨-0으로 설정될 수 있다. 일반화 레벨-0에 대응하는 "남" 및 "여"는 "사람"(또는, "*")으로 일반화될 수 있고, 일반화된 데이터인 "사람"(또는, "*")은 일반화 레벨-1로 설정될 수 있다. 성별 레코드에 대한 GH 모델은 앞서 설명된 내용에 한정되지 않으며, 다양하게 설정될 수 있다.
다시 도 2를 참조하면, 비식별화 장치(100)는 테이블의 비식별화를 위해 사용되는 파라미터(parameter)(이하, "비식별화 파라미터"라 함)를 설정할 수 있다(S230). 비식별화 파라미터는 K-익명성(anonymity), L-다양성(diversity), T-근접성(closeness) 등을 포함할 수 있다. 테이블의 비식별화를 위해 K-익명성, "K-익명성 + L-다양성" 또는 "K-익명성 + T-근접성"이 사용될 수 있다. 따라서, 비식별화 장치(100)는 K-익명성을 기본적으로 설정할 수 있고, 추가로 L-다양성 또는 T-근접성을 설정할 수 있다.
구체적으로, 비식별화 장치(100)는 K-익명성의 K 값을 설정할 수 있다. 또는, 비식별화 장치(100)는 입력 인터페이스 장치(140)를 통해 사용자로부터 K-익명성의 K 값을 획득할 수 있고, 획득된 K-익명성의 K 값을 사용할 수 있다. K-익명성의 K 값은 동등 클래스를 구성하는 로우 개수를 지시할 수 있다.
여기서, 테이블은 적어도 하나의 동등 클래스(equivalence class)를 포함할 수 있으며, 하나의 동등 클래스 내에서 ID 레코드는 동일한 데이터(예를 들어, 원시 데이터, 일반화된 데이터)를 지시할 수 있다. 즉, 동일한 데이터가 기록된 ID 레코드와 해당 ID 레코드와 관련되는 다른 레코드(예를 들어, QI 레코드, SA 레코드, IA 레코드 등)는 하나의 동등 클래스를 구성할 수 있다. 테이블은 K-익명성에 기초하여 비식별화될 수 있으며, K-익명성의 K 값이 4인 경우(즉, 4-익명성의 경우)에 비식별화된 테이블은 다음과 같을 수 있다.
도 10은 비식별화된 테이블의 일 실시예를 도시한 개념도이다.
도 10을 참조하면, 동등 클래스들 각각은 우편번호 레코드, 나이 레코드, 국적 레코드, 성별 레코드 및 질병 레코드를 포함할 수 있다. 여기서, 도 10에 도시된 비식별화된 테이블(400)은 도 4에 도시된 테이블(400) 중에서 주민번호 레코드, 이름 레코드 및 주소 레코드가 제외된 것일 수 있다. 동등 클래스들 각각에서 우편번호 레코드는 동일한 데이터를 지시할 수 있고, 나이 레코드는 동일한 데이터를 지시할 수 있다.
예를 들어, 동등 클래스-1에서 우편번호 레코드는 "130**"을 지시할 수 있고, 나이 레코드는 "<30"을 지시할 수 있다. 동등 클래스-2에서 우편번호 레코드는 "1485*"을 지시할 수 있고, 나이 레코드는 "≥40"을 지시할 수 있다. 동등 클래스-3에서 우편번호 레코드는 "130**"을 지시할 수 있고, 나이 레코드는 "3*"을 지시할 수 있다.
다시 도 2를 참조하면, 비식별화 장치(100)는 L-다양성의 L 값을 설정할 수 있다. 또는, 비식별화 장치(100)는 입력 인터페이스 장치(140)를 통해 사용자로부터 L-다양성의 L 값을 획득할 수 있고, 획득된 L-다양성의 L 값을 사용할 수 있다. L-다양성의 L 값은 테이블 내의 동등 클래스들 각각에 속하는 SA 레코드에 기록된 데이터 중에서 서로 다른 데이터의 개수일 수 있다. 도 11에 도시된 비식별화된 테이블(400) 내의 동등 클래스-1에서 L-다양성의 L 값은 2(즉, 질병 레코드에 지시되는 서로 다른 질병의 개수)일 수 있고, 동등 클래스-2에서 L-다양성의 L 값은 3일 수 있고, 동등 클래스-3에서 L-다양성의 L 값은 1일 수 있다. 테이블은 K-익명성 및 L-다양성에 기초하여 비식별화될 수 있으며, K-익명성의 K 값이 4이고 L-다양성의 L 값이 3인 경우(즉, 4-익명성 및 3-다양성의 경우)에 비식별화된 테이블은 다음과 같을 수 있다.
도 11은 비식별화된 테이블의 다른 실시예를 도시한 개념도이다.
도 11을 참조하면, 비식별화된 테이블(400)의 동등 클래스-1에서 질병 레코드는 3개의 서로 다른 질병(즉, 위염, 기관지염, 폐렴)을 지시할 수 있고, 동등 클래스-2에서 질병 레코드는 3개의 서로 다른 질병(즉, 폐렴, 위염, 기관지염)을 지시할 수 있고, 동등 클래스-3에서 질병 레코드는 3개의 서로 다른 질병(즉, 위염, 기관지염, 폐렴)을 지시할 수 있다.
다시 도 2를 참조하면, 비식별화 장치(100)는 T-근접성의 T 값을 설정할 수 있다. 또는, 비식별화 장치(100)는 입력 인터페이스 장치(140)를 통해 사용자로부터 T-근접성의 T 값을 획득할 수 있고, 획득된 T-근접성의 T 값을 사용할 수 있다. 테이블은 K-익명성, L-다양성 및 T-근접성(또는, K-익명성 및 T-근접성)에 기초하여 비식별화될 수 있다. T-근접성의 T 값은 테이블 내의 동등 클래스들 각각에 속하는 SA 레코드에 의해 지시되는 데이터들 간의 거리일 수 있다. 예를 들어, 테이블이 연봉 레코드를 포함하는 경우, 테이블의 동등 클래스들 각각에서 연봉 레코드에 의해 지시되는 연봉들 간의 거리(즉, 차이)가 T-근접성의 T 값 이내가 되도록 테이블이 비식별화될 수 있다.
비식별화 장치(100)는 억제 값 비율에 대한 임계값(이하, "억제 임계값"이라 함)을 설정할 수 있다(S240). 또는, 비식별화 장치(100)는 입력 인터페이스 장치(140)를 통해 사용자로부터 억제 임계값을 획득할 수 있고, 획득된 억제 임계값을 사용할 수 있다. 억제 값 비율은 비식별화된 테이블 중에서 K-익명성을 만족하지 않는 동등 클래스의 비율을 지시할 수 있다. 또는, 억제 값 비율은 비식별화된 테이블 중에서 K-익명성을 만족하지 않는 레코드의 비율을 지시할 수 있다. 억제 값 비율은 아래 수학식 1을 기초로 계산될 수 있다.
Figure PCTKR2017006765-appb-M000001
억제 임계값은 다양한 값으로 설정될 수 있다. 예를 들어, 억제 임계값은 10%로 설정될 수 있다.
비식별화 장치(100)는 GH 모델을 기반으로 원시 래티스(lattice)를 생성할 수 있다(S250). 원시 래티스는 복수의 노드들을 포함할 수 있으며, 복수의 노드들 각각은 GH 모델에 의해 지시되는 일반화 레벨과 해당 일반화 레벨에 대응하는 레코드를 지시할 수 있다. 즉, 비식별화 장치(100)는 GH 모델에 의해 지시되는 일반화 레벨과 해당 일반화 레벨에 대응하는 레코드를 지시하는 노드들을 설정할 수 있고, 노드들을 일반화 레벨의 순서에 따라 연결함으로써 원시 래티스를 생성할 수 있다. 도 6에 도시된 우편번호 레코드의 GH 모델, 도 7에 도시된 나이 레코드의 GH 모델 및 도 9에 도시된 성별 레코드의 GH 모델을 기반으로 생성된 원시 래티스는 다음과 같을 수 있다.
도 12는 원시 래티스의 일 실시예를 도시한 개념도이다.
도 12를 참조하면, 원시 래티스는 복수의 노드들을 포함할 수 있고, 계층-0부터 계층-6으로 구성될 수 있다. 계층들 각각에 적어도 하나의 노드가 위치할 수 있다. 예를 들어, 최하위 계층(즉, 계층-0) 및 최상위 계층(즉, 계층-6) 각각에 하나의 노드가 위치할 수 있다. 계층-1 및 계층-5 각각에 3개의 노드들이 위치할 수 있다. 계층-2에 5개의 노드들이 위치할 수 있다. 계층-3 및 계층-4 각각에 6개의 노드들이 위치할 수 있다.
여기서, a0은 도 7에 도시된 GH 모델에서 레벨-0인 나이 레코드를 지시할 수 있고, a1은 도 7에 도시된 GH 모델에서 레벨-1인 나이 레코드를 지시할 수 있고, a2는 도 7에 도시된 GH 모델에서 레벨-2인 나이 레코드를 지시할 수 있고, a3은 도 7에 도시된 GH 모델에서 레벨-3인 나이 레코드를 지시할 수 있다. b0은 도 6에 도시된 GH 모델에서 레벨-0인 우편번호 레코드를 지시할 수 있고, b1은 도 6에 도시된 GH 모델에서 레벨-1인 우편번호 레코드를 지시할 수 있고, b2는 도 6에 도시된 GH 모델에서 레벨-2인 우편번호 레코드를 지시할 수 있다. c0은 도 9에 도시된 GH 모델에서 레벨-0인 성별 레코드를 지시할 수 있고, c1은 도 9에 도시된 GH 모델에서 레벨-1인 성별 레코드를 지시할 수 있다.
따라서, "a0, b0, c0" 노드는 레벨-0인 나이 레코드, 레벨-0인 우편번호 레코드 및 레벨-0인 성별 레코드를 지시할 수 있다. "a1, b0, c0" 노드는 레벨-1인 나이 레코드, 레벨-0인 우편번호 레코드 및 레벨-0인 성별 레코드를 지시할 수 있다. "a1, b1, c0" 노드는 레벨-1인 나이 레코드, 레벨-1인 우편번호 레코드 및 레벨-0인 성별 레코드를 지시할 수 있다.
비식별화 장치(100)는 유전 알고리즘(genetic algorithm)을 사용하여 원시 래티스 내에서 최종 래티스를 설정할 수 있다(S260). 최종 래티스의 설정 방법은 다음과 같을 수 있다.
도 13은 최종 래티스의 설정 방법을 도시한 흐름도이다.
도 13을 참조하면, 비식별화 장치(100)는 도 12에 도시된 원시 래티스 중에서 최하위 계층으로부터 2/3 지점에 해당하는 계층-4에 속하는 노드들 중에서 임의의 노드를 선택 노드 A로 설정할 수 있고, 최하위 계층으로부터 1/3 지점에 해당하는 계층-2에 속하는 노드들 중에서 임의의 노드를 선택 노드 B로 설정할 수 있다(S261). 선택 노드 A는 선택 노드 B와 연결될 수 있다. 예를 들어, 비식별화 장치(100)는 계층-4에 속하는 "a2, b2, c0" 노드를 선택 노드 A로 설정할 수 있고, 계층-2에 속하는 "a1, b1, c0" 노드를 선택 노드 B로 설정할 수 있다.
비식별화 장치(100)는 선택 노드 A 및 선택 노드 B 각각에 대응하는 테이블에 대한 비식별화를 수행할 수 있다(S262). 비식별화 장치(100)는 앞서 설명된 단계 S230에서 설정된 비식별화 파라미터(예를 들어, K-익명성, L-다양성, T-근접성)를 만족하는 비식별화된 테이블을 생성할 수 있다. 선택 노드 A에 대응하는 테이블에 대한 비식별화 결과는 "비식별화된 테이블 A"로 지칭될 수 있고, 선택 노드 B에 대응하는 테이블에 대한 비식별화 결과는 "비식별화된 테이블 B"로 지칭될 수 있다.
비식별화 장치(100)는 비식별화된 테이블 A 및 비식별화된 테이블 B 각각의 억제 값 비율이 모두 억제 임계값 이하인지 여부를 판단할 수 있다(S263). 비식별화된 테이블 A 및 비식별화된 테이블 B 각각의 억제 값 비율이 모두 억제 임계값 이하인 경우(이하, "케이스 1"이라 함), 비식별화 장치(100)는 다음과 같이 최종 래티스를 설정할 수 있다.
케이스 1. 최종 래티스 설정 방법
비식별화 장치(100)는 원시 래티스에서 선택 노드 B가 속한 계층-2와 최하위 계층(즉, 계층-0) 사이의 1/2 지점에 해당하는 계층-1에 속하는 노드들 중에서 임의의 노드를 교차 노드로 설정할 수 있고, 계층-2에 속하는 노드들 중에서 선택 노드 B를 제외한 임의의 노드를 변이 노드로 설정할 수 있다(S263-1). 예를 들어, 비식별화 장치(100)는 계층-1에 속하는 "a0, b1, c0" 노드를 교차 노드로 설정할 수 있고, 계층-2에 속하는 "a0, b2, c0" 노드를 변이 노드로 설정할 수 있다.
비식별화 장치(100)는 교차 노드 및 변이 노드 각각에 대응하는 테이블에 대한 비식별화를 수행할 수 있다(S266). 즉, 비식별화된 테이블 B의 억제 값 비율이 억제 임계값 이하이므로, 선택 노드 B보다 상위 계층에 속하는 노드들에 대응하는 테이블에 대한 비식별화는 수행되지 않을 수 있다. 비식별화 장치(100)는 앞서 설명된 단계 S230에서 설정된 비식별화 파라미터(예를 들어, K-익명성, L-다양성, T-근접성)를 만족하는 비식별화된 테이블을 생성할 수 있다.
또한, 비식별화 장치(100)는 단계 S266에 의해 생성된 비식별화된 테이블의 억제 값 비율이 억제 임계값 이하인지 판단할 수 있다. 비식별화 장치(100)는 "억제 값 비율 ≤ 억제 임계값"을 만족하는 노드(예를 들어, 선택 노드 B, 교차 노드, 변이 노드)의 개수를 카운팅(counting)할 수 있다.
단계 S261 내지 단계 S266은 "억제 값 비율 ≤ 억제 임계값"을 만족하는 노드(예를 들어, 선택 노드 B, 교차 노드, 변이 노드)의 개수가 원시 래티스를 구성하는 계층들 중에서 가장 많은 노드를 포함하는 계층의 노드 개수(예를 들어, 도 14에서 6개)의 x배보다 클 때까지 반복하여 수행될 수 있다. 여기서, x는 0보다 큰 실수일 수 있다. 예를 들어, x는 0.8, 1 또는 1.2로 설정될 수 있다. x는 앞서 설명된 내용에 한정되지 않으며, 다양하게 설정될 수 있다.
예를 들어, 선택 노드 B가 속한 계층-2와 최하위 계층(즉, 계층-0) 사이의 2/3 지점에 해당하는 계층에 속한 임의의 노드가 선택 노드 A'로 설정될 수 있다. 또한, 선택 노드 B가 속한 계층-2와 최하위 계층(즉, 계층-0) 사이의 1/3 지점에 해당하는 계층에 속한 임의의 노드가 선택 노드 B'로 설정될 수 있다. 선택 노드 A' 및 선택 노드 B'에 기초하여 단계 S262 내지 단계 S266이 다시 수행될 수 있다. 이러한 과정은 "억제 값 비율 ≤ 억제 임계값"을 만족하는 노드의 개수가 원시 래티스를 구성하는 계층들 중에서 가장 많은 노드를 포함하는 계층의 노드 개수의 x배보다 클 때까지 반복하여 수행될 수 있다.
비식별화 장치(100)는 "억제 값 비율 ≤ 억제 임계값"을 만족하는 노드(예를 들어, 선택 노드 B, 교차 노드, 변이 노드 등)를 포함하는 최종 래티스를 설정할 수 있다(S267).
한편, 케이스 1에 해당하지 않는 경우, 비식별화 장치(100)는 비식별화된 테이블 A의 억제 값 비율이 억제 임계값 이하이고 비식별화된 테이블 B의 억제 값 비율이 억제 임계값을 초과하는지 여부를 판단할 수 있다(S264). 비식별화된 테이블 A의 억제 값 비율이 억제 임계값 이하이고 비식별화된 테이블 B의 억제 값 비율이 억제 임계값을 초과하는 경우(이하, "케이스 2"라 함), 비식별화 장치(100)는 다음과 같이 최종 래티스를 선택할 수 있다.
케이스 2. 최종 래티스 설정 방법
비식별화 장치(100)는 원시 래티스에서 선택 노드 A가 속한 계층-4와 선택 노드 B가 속한 계층-2 사이의 1/2 지점에 해당하는 계층-3에 속하는 노드들 중에서 임의의 노드를 교차 노드로 설정할 수 있고, 계층-4에 속하는 노드들 중에서 선택 노드 A를 제외한 임의의 노드를 변이 노드로 설정할 수 있다(S264-1). 예를 들어, 비식별화 장치(100)는 계층-3에 속하는 "a1, b1, c1" 노드를 교차 노드로 설정할 수 있고, 계층-4에 속하는 "a2, b1, c1" 노드를 변이 노드로 설정할 수 있다.
비식별화 장치(100)는 교차 노드 및 변이 노드 각각에 대응하는 테이블에 대한 비식별화를 수행할 수 있다(S266). 즉, 비식별화된 테이블 B의 억제 값 비율이 억제 임계값을 초과하므로, 선택 노드 B보다 하위 계층에 속하는 노드들에 대한 비식별화는 수행되지 않을 수 있다. 비식별화 장치(100)는 앞서 설명된 단계 S230에서 설정된 비식별화 파라미터(예를 들어, K-익명성, L-다양성, T-근접성)를 만족하는 비식별화된 테이블을 생성할 수 있다.
또한, 비식별화 장치(100)는 단계 S266에 의해 생성된 비식별화된 테이블의 억제 값 비율이 억제 임계값 이하인지 판단할 수 있다. 비식별화 장치(100)는 "억제 값 비율 ≤ 억제 임계값"을 만족하는 노드(예를 들어, 선택 노드 A, 교차 노드, 변이 노드)의 개수를 카운팅할 수 있다.
단계 S261 내지 단계 S266은 "억제 값 비율 ≤ 억제 임계값"을 만족하는 노드(예를 들어, 선택 노드 A, 교차 노드, 변이 노드)의 개수가 원시 래티스를 구성하는 계층들 중에서 가장 많은 노드를 포함하는 계층의 노드 개수(예를 들어, 도 14에서 6개)의 x배보다 클 때까지 반복하여 수행될 수 있다. 여기서, x는 0보다 큰 실수일 수 있다. 예를 들어, x는 0.8, 1 또는 1.2로 설정될 수 있다. x는 앞서 설명된 내용에 한정되지 않으며, 다양하게 설정될 수 있다.
예를 들어, 선택 노드 A가 속한 계층-4와 선택 노드 B가 속한 계층-2 사이의 2/3 지점에 해당하는 계층에 속한 임의의 노드가 선택 노드 A'로 설정될 수 있다. 또한, 선택 노드 A가 속한 계층-4와 선택 노드 B가 속한 계층-2 사이의 1/3 지점에 해당하는 계층에 속한 임의의 노드가 선택 노드 B'로 설정될 수 있다. 선택 노드 A' 및 선택 노드 B'에 기초하여 단계 S262 내지 단계 S266이 다시 수행될 수 있다. 이러한 과정은 "억제 값 비율 ≤ 억제 임계값"을 만족하는 노드의 개수가 원시 래티스를 구성하는 계층들 중에서 가장 많은 노드를 포함하는 계층의 노드 개수의 x배보다 클 때까지 반복하여 수행될 수 있다.
비식별화 장치(100)는 "억제 값 비율 ≤ 억제 임계값"을 만족하는 노드(예를 들어, 선택 노드 A, 교차 노드, 변이 노드)를 포함하는 최종 래티스를 설정할 수 있다(S267).
한편, 케이스 1 및 2에 해당하지 않는 경우, 비식별화 장치(100)는 비식별화된 테이블 A 및 비식별화된 테이블 B 각각의 억제 값 비율이 모두 억제 임계값을 초과하는지 여부를 판단할 수 있다(S265). 비식별화된 테이블 A 및 비식별화된 테이블 B 각각의 억제 값 비율이 모두 억제 임계값을 초과하는 경우(이하, "케이스 3"이라 함), 비식별화 장치(100)는 다음과 같이 최종 래티스를 선택할 수 있다.
케이스 3. 최종 래티스 설정 방법
비식별화 장치(100)는 원시 래티스에서 선택 노드 A가 속한 계층-4와 최상위 계층(즉, 계층-6) 사이의 1/2 지점에 해당하는 계층-5에 속하는 노드들 중에서 임의의 노드를 교차 노드로 설정할 수 있고, 계층-4에 속하는 노드들 중에서 선택 노드 A를 제외한 임의의 노드를 변이 노드로 설정할 수 있다(S265-1). 예를 들어, 비식별화 장치(100)는 계층-5에 속하는 "a3, b1, c1" 노드를 교차 노드로 설정할 수 있고, 계층-4에 속하는 "a2, b1, c1" 노드를 변이 노드로 설정할 수 있다.
비식별화 장치(100)는 교차 노드 및 변이 노드 각각에 대응하는 테이블에 대한 비식별화를 수행할 수 있다(S266). 비식별화 장치(100)는 앞서 설명된 단계 S230에서 설정된 비식별화 파라미터(예를 들어, K-익명성, L-다양성, T-근접성)를 만족하는 비식별화된 테이블을 생성할 수 있다.
또한, 비식별화 장치(100)는 단계 S266에 의해 생성된 비식별화된 테이블의 억제 값 비율이 억제 임계값 이하인지 판단할 수 있다. 비식별화 장치(100)는 "억제 값 비율 ≤ 억제 임계값"을 만족하는 노드(예를 들어, 교차 노드, 변이 노드)의 개수를 카운팅할 수 있다.
단계 S261 내지 단계 S266은 "억제 값 비율 ≤ 억제 임계값"을 만족하는 노드(예를 들어, 교차 노드, 변이 노드)의 개수가 원시 래티스를 구성하는 계층들 중에서 가장 많은 노드를 포함하는 계층의 노드 개수(예를 들어, 도 14에서 6개)의 x배보다 클 때까지 반복하여 수행될 수 있다. 여기서, x는 0보다 큰 실수일 수 있다. 예를 들어, x는 0.8, 1 또는 1.2로 설정될 수 있다. x는 앞서 설명된 내용에 한정되지 않으며, 다양하게 설정될 수 있다.
예를 들어, 선택 노드 A가 속한 계층-4와 최상위 계층(즉, 계층-6) 사이의 2/3 지점에 해당하는 계층에 속한 임의의 노드가 선택 노드 A'로 설정될 수 있다. 또한, 선택 노드 A가 속한 계층-4와 최상위 계층(즉, 계층-6) 사이의 1/3 지점에 해당하는 계층에 속한 임의의 노드가 선택 노드 B'로 설정될 수 있다. 선택 노드 A' 및 선택 노드 B'에 기초하여 단계 S262 내지 단계 S266이 다시 수행될 수 있다. 이러한 과정은 "억제 값 비율 ≤ 억제 임계값"을 만족하는 노드의 개수가 원시 래티스를 구성하는 계층들 중에서 가장 많은 노드를 포함하는 계층의 노드 개수의 x배보다 클 때까지 반복하여 수행될 수 있다.
비식별화 장치(100)는 "억제 값 비율 ≤ 억제 임계값"을 만족하는 노드(예를 들어, 교차 노드, 변이 노드)를 포함하는 최종 래티스를 설정할 수 있다(S267).
또한, 비식별화 장치(100)는 출력 인터페이스 장치(150)를 통해 최종 래티스를 디스플레이할 수 있고, 저장 장치(160)(또는, 데이터베이스)에 최종 래티스를 저장할 수 있고, 네트워크 인터페이스 장치(130)를 통해 다른 장치에 최종 래티스를 전송할 수 있다.
다시 도 2를 참조하면, 비식별화 장치(100)는 비식별화된 테이블에 포함된 ID 레코드에 기록된 원시 데이터의 전체 영역 또는 일부 영역에 대해 마스킹 처리를 할 수 있다(S270). 예를 들어, ID 레코드에 기록된 원시 데이터 중에서 마스킹 처리될 영역(예를 들어, 일부 영역)이 미리 설정된 경우, 미리 설정된 영역에 대한 마스킹 처리가 수행될 수 있다. ID 레코드에 기록된 원시 데이터 중에서 마스킹 처리될 영역이 미리 설정되지 않은 경우, 전체 영역에 대한 마스킹 처리가 수행될 수 있다. 단계 S270은 개인정보 비식별화 방법에서 필수적인 단계는 아니며, 필요에 따라 생략될 수 있다. 마스킹 처리된 레코드들을 포함하는 테이블의 일 실시예는 다음과 같다.
도 14는 마스킹 처리된 레코드들을 포함하는 테이블의 일 실시예를 도시한 개념도이다.
도 14를 참조하면, 테이블(400)에 포함된 주민번호 레코드에 기록된 원시 데이터 중에서 일부 영역은 마스킹 처리될 수 있다. 예를 들어, 주민번호 레코드에 기록된 원시 데이터 중에서 "-" 이후의 영역은 마스킹 처리될 수 있다. 테이블(400)에 포함된 이름 레코드에 기록된 원시 데이터 중에서 전체 영역은 마스킹 처리될 수 있다. 테이블(400)에 포함된 주소 레코드에 기록된 원시 데이터 중에서 일부 영역은 마스킹 처리될 수 있다. 예를 들어, 주소 레코드에 기록된 원시 데이터 중에서 "서울시" 이후의 영역은 마스킹 처리될 수 있다.
다음으로, 비식별화된 테이블의 위험성을 지시하는 파라미터가 설명될 것이다.
재식별화 위험성(re-identification risk)은 비식별화된 테이블의 동등 클래스를 구성하는 로우 개수의 역수에 의해 지시될 수 있다. 재식별화 위험성은 동등 클래스를 구성하는 로우의 최대 개수, 최소 개수, 평균 개수에 따라 달라질 수 있다.
샘플(sample) 위험성은 아래 수학식 2에 기초하여 계산될 수 있다.
Figure PCTKR2017006765-appb-M000002
Figure PCTKR2017006765-appb-T000001
다음으로, 비식별화된 테이블의 사용성을 지시하는 파라미터가 설명될 것이다.
정확성(precision)은 래티스에 속하는 각각의 노드에 대한 정확성을 측정하기 위해 사용될 수 있고, GH 모델의 평균 높이를 지시할 수 있다. GH 모델에서 일반화 레벨이 높을수록 정확성은 낮아질 수 있고, 데이터의 손실은 증가될 수 있다. 정확성은 아래 수학식 3을 기초로 계산될 수 있다.
Figure PCTKR2017006765-appb-M000003
Prec(GT)는 일반화 테이블(generalization table; GT)(즉, 비식별화된 테이블)에 대한 정확성을 지시할 수 있다. NA는 테이블에 속하는 변수(예를 들어, 도 12에서 우편번호, 나이, 국적, 성별, 질병)의 개수를 지시할 수 있다. N은 테이블을 구성하는 로우의 개수를 지시할 수 있다.
Figure PCTKR2017006765-appb-I000001
는 GH 모델에서 해당 변수의 일반화 레벨을 지시할 수 있다.
Figure PCTKR2017006765-appb-I000002
는 GH 모델에서 해당 변수의 일반화 레벨의 최대 값을 지시할 수 있다.
분별력 메트릭(discernability metric)은 동등 클래스의 크기, GH 모델에서 일반화 레벨 등을 고려하는 파라미터일 수 있다. 분별력 메트릭은 동등 클래스 내의 일반화된 데이터를 구별하는 능력을 지시할 수 있다. 분별력 메트릭은 아래 수학식 4에 기초하여 계산될 수 있다.
Figure PCTKR2017006765-appb-M000004
DM은 분별력 메트릭을 지시할 수 있다. fi는 동등 클래스의 크기를 지시할 수 있다. k는 동등 클래스의 개수를 지시할 수 있다. N은 로우(예를 들어, 테이블을 구성하는 로우)의 개수를 지시할 수 있다.
엔트로피(entropy)는 동등 클래스 내의 일반화된 데이터의 구별 능력 또는 정보량을 지시할 수 있다. 엔트로피는 아래 수학식 5에 기초하여 계산될 수 있다.
Figure PCTKR2017006765-appb-M000005
Figure PCTKR2017006765-appb-I000003
는 엔트로피를 지시할 수 있다. αr는 원시 데이터를 지시할 수 있다. br는 일반화된 데이터를 지시할 수 있다. Rij는 원시 데이터가 기록된 레코드를 지시할 수 있다. Rij'는 일반화된 데이터가 기록된 레코드를 지시할 수 있다. I는 지시자 함수(indicator function)를 지시할 수 있다.
한편, 비식별화 장치(100)는 최종 래티스에 속하는 노드에 대한 위험성 파라미터(예를 들어, 재식별화 위험성, 샘플 위험성, 집단 위험성 등), 사용성 파라미터(예를 들어, 정확성, 분별력 메트릭, 엔트로피 등)를 출력 인터페이스 장치(150)를 통해 디스플레이할 수 있다. 또한, 비식별화 장치(100)는 최종 래티스에 속하는 노드에 대응하는 테이블의 비식별화 이전과 이후(즉, 원시 테이블과 비식별된 테이블의 비교 결과)를 출력 인터페이스 장치(150)를 통해 디스플레이할 수 있다.
본 발명에 따른 방법들은 다양한 컴퓨터 수단을 통해 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 컴퓨터 판독 가능 매체에 기록되는 프로그램 명령은 본 발명을 위해 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.
컴퓨터 판독 가능 매체의 예에는 롬(rom), 램(ram), 플래시 메모리(flash memory) 등과 같이 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러(compiler)에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터(interpreter) 등을 사용해서 컴퓨터에 의해 실행될 수 있는 고급 언어 코드를 포함한다. 상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 적어도 하나의 소프트웨어 모듈로 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.

Claims (20)

  1. 개인정보 비식별화(de-identification) 장치에서 수행되는 개인정보 비식별화 방법으로서,
    데이터베이스(database)로부터 개인정보를 지시하는 원시 데이터(original data)가 기록된 레코드(record)들을 포함하는 원시 테이블(original table)을 획득하는 단계;
    일반화 레벨(generalization level)에 기초하여 상기 원시 테이블에 포함된 레코드들 각각에 기록된 원시 데이터(data)를 일반화함으로써 일반화된 데이터를 생성하는 단계;
    상기 원시 데이터 및 상기 일반화된 데이터로 구성되는 일반화 계층 모델(hierarchy model)을 설정하는 단계;
    상기 일반화 계층 모델에 의해 지시되는 계층 구조에 기초하여, 개인정보의 종류별 일반화 레벨을 지시하는 테이블을 지시하는 복수의 후보 노드들을 포함하는 원시 래티스(lattice)를 생성하는 단계; 및
    상기 원시 래티스에 포함된 상기 복수의 후보 노드들 중에서 미리 설정된 기준을 만족하는 적어도 하나의 후보 노드를 포함하는 최종 래티스를 설정하는 단계를 포함하는, 개인정보 비식별화 방법.
  2. 청구항 1에 있어서,
    상기 개인정보 비식별화 방법은,
    상기 원시 테이블에 포함된 레코드들 각각의 속성을 설정하는 단계를 더 포함하는, 개인정보 비식별화 방법.
  3. 청구항 2에 있어서,
    상기 속성은 ID(identifier), QI(quasi-identifier), SA(sensitive attribute) 및 IA(insensitive attribute)로 분류되고, 특정 개인이 명시적(explicit)으로 식별되는 개인정보를 지시하는 원시 데이터가 기록된 레코드는 ID로 설정되고, 특정 개인이 묵시적(non-explicit)으로 식별되는 개인정보를 지시하는 원시 데이터가 기록된 레코드는 QI로 설정되고, 미리 설정된 기준 이상의 민감도를 가지는 개인정보를 지시하는 원시 데이터가 기록된 레코드는 SA로 설정되고, SA보다 낮은 민감도를 가지는 개인정보를 지시하는 원시 데이터가 기록된 레코드는 IA로 설정되는, 개인정보 비식별화 방법.
  4. 청구항 3에 있어서,
    상기 개인정보 비식별화 방법은,
    상기 원시 테이블에 포함된 레코드들 중에서 상기 속성이 ID로 설정된 레코드를 마스킹(masking) 처리하는 단계를 더 포함하는, 개인정보 비식별화 방법.
  5. 청구항 3에 있어서,
    상기 개인정보 비식별화 방법은,
    상기 원시 테이블에 포함된 레코드들 중에서 상기 속성이 QI로 설정된 레코드에 기록된 원시 데이터에 의해 지시되는 개인정보의 종류에 따라 상기 일반화 레벨을 설정하는 단계를 더 포함하는, 개인정보 비식별화 방법.
  6. 청구항 3에 있어서,
    상기 테이블에 포함된 레코드들 중에서 상기 속성이 QI로 설정된 레코드에 기록된 원시 데이터는 일반화 레벨에 기초하여 일반화되는, 개인정보 비식별화 방법.
  7. 청구항 1에 있어서,
    상기 최종 래티스를 설정하는 단계는,
    상기 원시 래티스에 포함된 복수의 후보 노드들 중에서 적어도 하나의 후보 노드를 선택하는 단계;
    상기 적어도 하나의 후보 노드에 의해 지시되는 일반화 레벨에 기초하여 상기 원시 테이블에 대한 비식별화를 수행함으로써 비식별화된 테이블을 생성하는 단계;
    미리 설정된 억제(suppression) 기준을 만족하는 비식별화된 테이블에 대응하는 후보 노드를 최종 노드로 설정하는 단계; 및
    상기 미리 설정된 기준을 만족하는 후보 노드에 대응하는 상기 최종 노드를 포함하는 상기 최종 래티스를 설정하는 단계를 포함하는, 개인정보 비식별화 방법.
  8. 청구항 7에 있어서,
    상기 비식별화된 테이블은 K-익명성(anonymity)을 기초로 생성되거나, 상기 K-익명성 및 L-다양성(diversity)을 기초로 생성되거나, 또는 상기 K-익명성 및 T-근접성(closeness)을 기초로 생성되는, 개인정보 비식별화 방법.
  9. 청구항 8에 있어서,
    상기 미리 설정된 억제 기준은 상기 비식별화된 테이블을 구성하는 동등 클래스(equivalence class)들 중에서 상기 미리 설정된 K-익명성을 만족하지 않는 동등 클래스의 비율을 지시하는, 개인정보 비식별화 방법.
  10. 청구항 1에 있어서,
    상기 개인정보 비식별화 방법은,
    상기 최종 래티스에 포함된 적어도 하나의 최종 노드에 대응하는 비식별화된 테이블의 재식별화 위험성(re-identification risk) 및 유용성(utility)을 계산하는 단계를 더 포함하는, 개인정보 비식별화 방법.
  11. 개인정보 비식별화(de-identification) 장치로서,
    프로세서(processor); 및
    상기 프로세서를 통해 실행되는 적어도 하나의 명령이 저장된 메모리(memory)를 포함하고,
    상기 적어도 하나의 명령은,
    데이터베이스(database)로부터 개인정보를 지시하는 원시 데이터(original data)가 기록된 레코드(record)들을 포함하는 원시 테이블(original table)을 획득하고;
    일반화 레벨(generalization level)에 기초하여 상기 원시 테이블에 포함된 레코드들 각각에 기록된 원시 데이터(data)를 일반화함으로써 일반화된 데이터를 생성하고;
    상기 원시 데이터 및 상기 일반화된 데이터로 구성되는 일반화 계층 모델(hierarchy model)을 설정하고;
    상기 일반화 계층 모델에 의해 지시되는 계층 구조에 기초하여, 개인정보의 종류별 일반화 레벨을 지시하는 테이블을 지시하는 복수의 후보 노드들을 포함하는 원시 래티스(lattice)를 생성하고; 그리고
    상기 원시 래티스에 포함된 상기 복수의 후보 노드들 중에서 미리 설정된 기준을 만족하는 적어도 하나의 후보 노드를 포함하는 최종 래티스를 설정하도록 실행 가능한, 개인정보 비식별화 장치.
  12. 청구항 11에 있어서,
    상기 적어도 하나의 명령은,
    상기 원시 테이블에 포함된 레코드들 각각의 속성을 설정하도록 더 실행 가능한, 개인정보 비식별화 장치.
  13. 청구항 12에 있어서,
    상기 속성은 ID(identifier), QI(quasi-identifier), SA(sensitive attribute) 및 IA(insensitive attribute)로 분류되고, 특정 개인이 명시적(explicit)으로 식별되는 개인정보를 지시하는 원시 데이터가 기록된 레코드는 ID로 설정되고, 특정 개인이 묵시적(non-explicit)으로 식별되는 개인정보를 지시하는 원시 데이터가 기록된 레코드는 QI로 설정되고, 미리 설정된 기준 이상의 민감도를 가지는 개인정보를 지시하는 원시 데이터가 기록된 레코드는 SA로 설정되고, SA보다 낮은 민감도를 가지는 개인정보를 지시하는 원시 데이터가 기록된 레코드는 IA로 설정되는, 개인정보 비식별화 장치.
  14. 청구항 13에 있어서,
    상기 적어도 하나의 명령은,
    상기 원시 테이블에 포함된 레코드들 중에서 상기 속성이 ID로 설정된 레코드를 마스킹(masking) 처리하도록 더 실행 가능한, 개인정보 비식별화 장치.
  15. 청구항 13에 있어서,
    상기 적어도 하나의 명령은,
    상기 원시 테이블에 포함된 레코드들 중에서 상기 속성이 QI로 설정된 레코드에 기록된 원시 데이터에 의해 지시되는 개인정보의 종류에 따라 상기 일반화 레벨을 설정하도록 더 실행 가능한, 개인정보 비식별화 장치.
  16. 청구항 13에 있어서,
    상기 테이블에 포함된 레코드들 중에서 상기 속성이 QI로 설정된 레코드에 기록된 원시 데이터는 일반화 레벨에 기초하여 일반화되는, 개인정보 비식별화 장치.
  17. 청구항 11에 있어서,
    상기 적어도 하나의 명령은 상기 최종 래티스를 설정하는 경우,
    상기 원시 래티스에 포함된 복수의 후보 노드들 중에서 적어도 하나의 후보 노드를 선택하고;
    상기 적어도 하나의 후보 노드에 의해 지시되는 일반화 레벨에 기초하여 상기 원시 테이블에 대한 비식별화를 수행함으로써 비식별화된 테이블을 생성하고;
    미리 설정된 억제(suppression) 기준을 만족하는 비식별화된 테이블에 대응하는 후보 노드를 최종 노드로 설정하고; 그리고
    상기 미리 설정된 기준을 만족하는 후보 노드에 대응하는 상기 최종 노드를 포함하는 상기 최종 래티스를 설정하도록 실행 가능한, 개인정보 비식별화 장치.
  18. 청구항 17에 있어서,
    상기 비식별화된 테이블은 K-익명성(anonymity)을 기초로 생성되거나, 상기 K-익명성 및 L-다양성(diversity)을 기초로 생성되거나, 또는 상기 K-익명성 및 T-근접성(closeness)을 기초로 생성되는, 개인정보 비식별화 장치.
  19. 청구항 18에 있어서,
    상기 미리 설정된 억제 기준은 상기 비식별화된 테이블을 구성하는 동등 클래스(equivalence class)들 중에서 상기 미리 설정된 K-익명성을 만족하지 않는 동등 클래스의 비율을 지시하는, 개인정보 비식별화 장치.
  20. 청구항 11에 있어서,
    상기 적어도 하나의 명령은,
    상기 최종 래티스에 포함된 적어도 하나의 최종 노드에 대응하는 비식별화된 테이블의 재식별화 위험성(re-identification risk) 및 유용성(utility)을 계산하도록 더 실행 가능한, 개인정보 비식별화 장치.
PCT/KR2017/006765 2016-06-30 2017-06-27 개인정보의 비식별화 방법 및 장치 Ceased WO2018004236A1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
US16/314,202 US11354436B2 (en) 2016-06-30 2017-06-27 Method and apparatus for de-identification of personal information
JP2018569022A JP6825016B2 (ja) 2016-06-30 2017-06-27 個人情報の非識別化方法および装置
EP17820512.6A EP3480721A4 (en) 2016-06-30 2017-06-27 PERSONAL INFORMATION DEPERSONALIZATION METHOD AND APPARATUS
CN201780048000.0A CN109564616A (zh) 2016-06-30 2017-06-27 个人信息去标识化方法及装置
US17/744,630 US12189819B2 (en) 2016-06-30 2022-05-14 Method and apparatus for de-identification of personal information

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
KR1020160082878A KR101821219B1 (ko) 2016-06-30 2016-06-30 개인정보를 포함하는 테이블의 속성 설정 방법 및 장치
KR1020160082839A KR101798377B1 (ko) 2016-06-30 2016-06-30 개인정보의 비식별화 방법 및 장치
KR10-2016-0082839 2016-06-30
KR10-2016-0082860 2016-06-30
KR1020160082860A KR101798378B1 (ko) 2016-06-30 2016-06-30 유전 알고리즘에 기초한 개인정보의 비식별화 방법 및 장치
KR10-2016-0082878 2016-06-30

Related Child Applications (2)

Application Number Title Priority Date Filing Date
US16/314,202 A-371-Of-International US11354436B2 (en) 2016-06-30 2017-06-27 Method and apparatus for de-identification of personal information
US17/744,630 Continuation US12189819B2 (en) 2016-06-30 2022-05-14 Method and apparatus for de-identification of personal information

Publications (1)

Publication Number Publication Date
WO2018004236A1 true WO2018004236A1 (ko) 2018-01-04

Family

ID=60787333

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2017/006765 Ceased WO2018004236A1 (ko) 2016-06-30 2017-06-27 개인정보의 비식별화 방법 및 장치

Country Status (5)

Country Link
US (2) US11354436B2 (ko)
EP (1) EP3480721A4 (ko)
JP (1) JP6825016B2 (ko)
CN (1) CN109564616A (ko)
WO (1) WO2018004236A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110867223A (zh) * 2018-08-28 2020-03-06 皇家飞利浦有限公司 在多种模态中对受保护信息的去识别
US10970418B2 (en) 2018-08-23 2021-04-06 Servicenow, Inc. System and method for anonymized data repositories

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11036884B2 (en) * 2018-02-26 2021-06-15 International Business Machines Corporation Iterative execution of data de-identification processes
US11196750B2 (en) * 2019-07-18 2021-12-07 International Business Machines Corporation Fine-grained data masking according to classifications of sensitive data
US11593511B2 (en) * 2019-10-10 2023-02-28 International Business Machines Corporation Dynamically identifying and redacting data from diagnostic operations via runtime monitoring of data sources
TWI728553B (zh) * 2019-11-14 2021-05-21 財團法人資訊工業策進會 資料去識別處理裝置及方法
EP3832559B1 (en) * 2019-12-03 2025-06-25 Accenture Global Solutions Limited Controlling access to de-identified data sets based on a risk of re-identification
KR102770577B1 (ko) * 2020-07-24 2025-02-24 넥스원소프트 주식회사 빅데이터 환경에서의 개인정보 비식별화 처리를 위한 데이터 필드 자동 분류 시스템 및 방법
KR102504531B1 (ko) * 2020-11-20 2023-02-28 (주)디지탈쉽 데이터 통합 분석을 위한 데이터 수집 처리 장치 및 방법
US12411984B2 (en) * 2020-12-09 2025-09-09 Accenture Global Solutions Limited Applying a k-anonymity model to protect node level privacy in knowledge graphs and a differential privacy model to protect edge level privacy in knowledge graphs
US11755778B2 (en) 2021-04-26 2023-09-12 Snowflake Inc. Horizontally-scalable data de-identification
US20250307464A1 (en) * 2024-04-01 2025-10-02 Truata Limited System and method for enforcing analytical output compliance querying environments

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008069011A1 (ja) * 2006-12-04 2008-06-12 Nec Corporation 情報管理システム、匿名化方法、及び記憶媒体
JP2011113285A (ja) * 2009-11-26 2011-06-09 Kddi Corp 公開情報のプライバシー保護装置、公開情報のプライバシー保護方法およびプログラム
WO2011145401A1 (ja) * 2010-05-19 2011-11-24 株式会社日立製作所 個人情報匿名化装置
JP2013080375A (ja) * 2011-10-04 2013-05-02 Hitachi Ltd 個人情報匿名化装置及び方法
JP2013161428A (ja) * 2012-02-08 2013-08-19 Hitachi Ltd 個人情報匿名化装置および方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7269578B2 (en) * 2001-04-10 2007-09-11 Latanya Sweeney Systems and methods for deidentifying entries in a data source
US20070255704A1 (en) * 2006-04-26 2007-11-01 Baek Ock K Method and system of de-identification of a record
CA2679800A1 (en) * 2008-09-22 2010-03-22 University Of Ottawa Re-identification risk in de-identified databases containing personal information
US8326849B2 (en) 2009-06-25 2012-12-04 University Of Ottawa System and method for optimizing the de-identification of data sets
CN102156755A (zh) * 2011-05-06 2011-08-17 天津大学 一种k-匿名改进方法
TW201426578A (zh) * 2012-12-27 2014-07-01 Ind Tech Res Inst 匿名資料集的產生方法及裝置與風險評估方法及裝置
US9460311B2 (en) * 2013-06-26 2016-10-04 Sap Se Method and system for on-the-fly anonymization on in-memory databases
CN103425771B (zh) * 2013-08-12 2016-12-28 深圳市华傲数据技术有限公司 一种数据正则表达式的挖掘方法及装置
JP6040194B2 (ja) * 2014-04-08 2016-12-07 日本電信電話株式会社 アクセス権限処理システム、アクセス権限処理方法、及びプログラム
US9990515B2 (en) * 2014-11-28 2018-06-05 Privacy Analytics Inc. Method of re-identification risk measurement and suppression on a longitudinal dataset
WO2017008144A1 (en) * 2015-07-15 2017-01-19 Privacy Analytics Inc. Re-identification risk measurement estimation of a dataset

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008069011A1 (ja) * 2006-12-04 2008-06-12 Nec Corporation 情報管理システム、匿名化方法、及び記憶媒体
JP2011113285A (ja) * 2009-11-26 2011-06-09 Kddi Corp 公開情報のプライバシー保護装置、公開情報のプライバシー保護方法およびプログラム
WO2011145401A1 (ja) * 2010-05-19 2011-11-24 株式会社日立製作所 個人情報匿名化装置
JP2013080375A (ja) * 2011-10-04 2013-05-02 Hitachi Ltd 個人情報匿名化装置及び方法
JP2013161428A (ja) * 2012-02-08 2013-08-19 Hitachi Ltd 個人情報匿名化装置および方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3480721A4 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10970418B2 (en) 2018-08-23 2021-04-06 Servicenow, Inc. System and method for anonymized data repositories
AU2019219705B2 (en) * 2018-08-23 2021-05-06 Servicenow, Inc. System and method for anonymized data repositories
US11615211B2 (en) 2018-08-23 2023-03-28 Servicenow, Inc. System and method for anonymized data repositories
CN110867223A (zh) * 2018-08-28 2020-03-06 皇家飞利浦有限公司 在多种模态中对受保护信息的去识别

Also Published As

Publication number Publication date
EP3480721A1 (en) 2019-05-08
US20220277106A1 (en) 2022-09-01
US11354436B2 (en) 2022-06-07
JP6825016B2 (ja) 2021-02-03
EP3480721A4 (en) 2020-01-15
JP2019527409A (ja) 2019-09-26
US20190228183A1 (en) 2019-07-25
US12189819B2 (en) 2025-01-07
CN109564616A (zh) 2019-04-02

Similar Documents

Publication Publication Date Title
WO2018004236A1 (ko) 개인정보의 비식별화 방법 및 장치
WO2020147385A1 (zh) 数据录入方法、装置、终端及计算机可读存储介质
WO2021008017A1 (zh) 联邦学习方法、系统、终端设备及存储介质
WO2019223058A1 (zh) 提高智能客服应答率的方法、设备、存储介质及装置
WO2021003930A1 (zh) 客服录音的质检方法、装置、设备及计算机可读存储介质
WO2020073495A1 (zh) 基于人工智能的复审方法、装置、设备及存储介质
WO2020168606A1 (zh) 广告视频优化方法、装置、设备及计算机可读存储介质
EP2391955A1 (en) Document analysis system
WO2020177376A1 (zh) 数据的提取方法、装置、终端及计算机可读存储介质
WO2021157897A1 (en) A system and method for efficient multi-relational entity understanding and retrieval
WO2017115994A1 (ko) 인공 지능 기반 연관도 계산을 이용한 노트 제공 방법 및 장치
WO2017146338A1 (ko) 인덱스정보를 생성하는 데이터베이스의 아카이빙 방법 및 장치, 인덱스정보를 포함하는 아카이빙된 데이터베이스의 검색 방법 및 장치
WO2011068315A2 (ko) 최대 개념강도 인지기법을 이용한 최적의 데이터베이스 선택장치 및 그 방법
WO2024072001A1 (en) Apparatus and method for sharing and pruning weights for vision and language models
WO2019198950A1 (ko) 컨텐츠 정보 제공 장치 및 그 방법
WO2023090627A1 (ko) 화합물 최적화를 위한 장치 및 방법
WO2013008978A1 (ko) 개체 식별 결과 검색 시스템 및 방법
WO2020213885A1 (en) Server and control method thereof
WO2018191889A1 (zh) 照片处理方法、装置及计算机设备
WO2021075793A1 (ko) 데이터 베이스에 포함된 데이터를 분석하는 데이터 분석 장치 및 방법
WO2023229094A1 (ko) 행동 예측 방법 및 장치
WO2022197033A1 (ko) 채용 중개 서비스에서 구직자 및 구인자의 매칭 확률 예측을 위한 신경망 모델 제공 전자 장치 및 방법
WO2023136575A1 (en) Method and device of providing adaptive user interface based on user functional elements
WO2025058503A1 (ko) 신경망 레이어의 채널 간 통계적 특성으로 인한 양자화 손실을 개선하는 방법 및 이를 위한 장치
WO2023068670A1 (en) Methods and systems for improvising content transfer

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17820512

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2018569022

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2017820512

Country of ref document: EP

Effective date: 20190130