KR101948603B1 - Anonymization Device for Preserving Utility of Data and Method thereof - Google Patents

Anonymization Device for Preserving Utility of Data and Method thereof Download PDF

Info

Publication number
KR101948603B1
KR101948603B1 KR1020170092344A KR20170092344A KR101948603B1 KR 101948603 B1 KR101948603 B1 KR 101948603B1 KR 1020170092344 A KR1020170092344 A KR 1020170092344A KR 20170092344 A KR20170092344 A KR 20170092344A KR 101948603 B1 KR101948603 B1 KR 101948603B1
Authority
KR
South Korea
Prior art keywords
data
record
generalized
generalization
attribute
Prior art date
Application number
KR1020170092344A
Other languages
Korean (ko)
Other versions
KR20190010091A (en
Inventor
정연돈
이혁기
Original Assignee
고려대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 고려대학교 산학협력단 filed Critical 고려대학교 산학협력단
Priority to KR1020170092344A priority Critical patent/KR101948603B1/en
Publication of KR20190010091A publication Critical patent/KR20190010091A/en
Application granted granted Critical
Publication of KR101948603B1 publication Critical patent/KR101948603B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/31Indexing; Data structures therefor; Storage structures
    • G06F16/316Indexing structures
    • G06F16/322Trees
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/02Protecting privacy or anonymity, e.g. protecting personally identifiable information [PII]

Abstract

익명화 장치가 개시된다. 상기 익명화 장치는 각각이 준식별자(Quasi-Identifier) 또는 민감속성(sensitive attribute)에 의하여 분류되는 적어도 하나 이상의 데이터로 구성되는 개인에 대한 레코드의 데이터 중 준식별자의 데이터의 범위를 확장하여 상기 레코드를 일반화하는 일반화부를 포함하되, 상기 일반화부는 상기 일반화된 레코드의 제1 일반화 수준이 기 설정된 값 이하가 되도록 일반화하고, 상기 준식별자가 수치형 속성(numerical attribute)이면 상기 일반화된 레코드의 각각의 일반화된 데이터는 일반화된 데이터의 최대값과 최소값의 차이와 수치형 속성 도메인의 최대값과 최소값의 차이의 비율에 따라 결정되는 제2 일반화 수준을 가지고, 상기 준식별자가 범주형 속성(categorical attribute)이면 상기 일반화된 레코드의 각각의 일반화된 데이터는 범주형 속성에 대한 분류트리의 리프 노드(leaf node)의 개수에서 1을 뺀 값과 상기 분류트리에서 일반화된 데이터에 해당하는 노드의 리프 노드의 개수에서 1을 뺀 값의 비율에 따라 결정되는 제2 일반화 수준을 가지고, 상기 제1 일반화 수준은 상기 제2 일반화 수준의 합을 준식별자의 수(n)로 나눈 값으로 정의되고, 상기 기 설정된 값은 0에서 1사이의 실수이다.An anonymizing device is disclosed. The anonymizing device may expand the range of the data of the quasi-identifier among the data of the record for the individual composed of at least one data classified by a quasi-identifier or a sensitive attribute, Wherein the generalization unit generalizes the generalized record so that the first generalization level of the generalized record is less than or equal to a predetermined value, and if the quasi-identifier is a numerical attribute, Wherein the data has a second generalization level determined by a difference between a maximum value and a minimum value of the generalized data and a ratio of a difference between a maximum value and a minimum value of the numeric attribute domain and if the quasi identifier is a categorical attribute, Each generalized data of a generalized record has the same structure as that of the classification tree for a categorical attribute. And a second generalization level determined according to a ratio of a value obtained by subtracting 1 from the number of leaf nodes and a value obtained by subtracting 1 from the number of leaf nodes of a node corresponding to generalized data in the classification tree, 1 generalization level is defined as a value obtained by dividing the sum of the second generalization levels by the number (n) of semi-identifiers, and the predetermined value is a real number between 0 and 1.

Description

데이터의 유용성 보존을 위한 익명화 장치 및 그 방법{Anonymization Device for Preserving Utility of Data and Method thereof}An Anonymization Device for Preserving Utility of Data and Method Therefor,

본 발명은 데이터의 익명화 장치 및 그 방법에 관한 것으로, 보다 구체적으로 일반화된 레코드의 일반화 수준이 기 설정된 값 이하가 되도록 일반화하여 데이터의 유용성을 보존하는 익명화 장치 및 그 방법에 관한 것이다.The present invention relates to an apparatus and method for anonymizing data, and more particularly, to an anonymizing apparatus and method for preserving usefulness of data by generalizing the generalization level of a generalized record to a predetermined value or less.

가공되지 않은 전자 건강 레코드(Electronic Health Records, EHRs)는 민감한 정보를 포함하기 때문에 이를 게시하는 경우 개개인의 프라이버시가 침해될 우려가 있다. 개인의 프라이버시를 보존하기 위한 일반적인 방법으로서 데이터를 게시하기 전에 k-익명성(k-anonymity)과 같은 프라이버시 모델을 만족하도록 익명화하는 방법 등이 있다.Because unprocessed electronic health records (EHRs) contain sensitive information, there is a risk that their privacy will be violated if they are posted. A common method for preserving an individual's privacy is to anonymize it to satisfy a privacy model such as k-anonymity before posting the data.

다양한 익명화 기법들 중에서 일반화는 의료/건강 데이터를 가공할 때 가장 많이 사용된다. 일반화는 불가피하게 정보의 손실을 초래하는 문제가 있으므로, 정보의 손실을 최소화하는 다양한 방법들이 제안되어 왔다. 그러나, 현존하는 일반화에 기반한 익명화 방법은 막대한 정보의 손실을 초래하고 데이터의 유용성을 보존할 수 없는 문제가 있다.Among the various anonymization techniques, generalization is most often used to process medical / health data. Since generalization inevitably leads to loss of information, various methods have been proposed to minimize the loss of information. However, existing anonymization methods based on generalization cause a huge loss of information and can not preserve the usefulness of data.

일본 등록특허 JP 5858292B2 (2015.12.25. 등록)Japanese Patent Registration JP 5858292B2 (Registered on December 25, 2015) 일본 등록특허 JP 5307499B2 (2013.07.05. 등록)Japanese patent JP 5307499B2 (registered on May 3, 2015)

본 발명의 목적은 익명화된 데이터가 과도하게 일반화되지 않도록 할 뿐만 아니라 k-익명성을 만족하도록 하여 데이터의 유용성 및 개인의 프라이버시를 보존하고, 데이터의 진실성을 보장해주는 익명화 장치 및 그 방법을 제공하는 것이다.It is an object of the present invention to provide an anonymizing apparatus and method for ensuring the validity of data and preserving the usefulness of data and privacy of individuals by not only anonymized data is not overly generalized but also k- will be.

본 발명의 일 실시 예에 따른 익명화 장치는 각각이 준식별자(Quasi-Identifier) 또는 민감속성(sensitive attribute)에 의하여 분류되는 적어도 하나 이상의 데이터로 구성되는 개인에 대한 레코드의 데이터 중 준식별자의 데이터의 범위를 확장하여 상기 레코드를 일반화하는 일반화부를 포함하되, 상기 일반화부는 상기 일반화된 레코드의 제1 일반화 수준이 기 설정된 값 이하가 되도록 일반화하고, 상기 준식별자가 수치형 속성(numerical attribute)이면 상기 일반화된 레코드의 각각의 일반화된 데이터는 일반화된 데이터의 최대값과 최소값의 차이와 수치형 속성 도메인의 최대값과 최소값의 차이의 비율에 따라 결정되는 제2 일반화 수준을 가지고, 상기 준식별자가 범주형 속성(categorical attribute)이면 상기 일반화된 레코드의 각각의 일반화된 데이터는 범주형 속성에 대한 분류트리의 리프 노드(leaf node)의 개수에서 1을 뺀 값과 상기 분류트리에서 일반화된 데이터에 해당하는 노드의 리프 노드의 개수에서 1을 뺀 값의 비율에 따라 결정되는 제2 일반화 수준을 가지고, 상기 제1 일반화 수준은 상기 제2 일반화 수준의 합을 준식별자의 수(n)로 나눈 값으로 정의되고, 상기 기 설정된 값은 0에서 1사이의 실수이다.The anonymizing apparatus according to an embodiment of the present invention may further include an identifier storage unit for storing the data of the quasi-identifier among the data of the record for the individual composed of at least one data classified by a quasi-identifier or a sensitive attribute, Wherein the generalization unit generalizes the first generalization level of the generalized record so that the first generalized level is less than or equal to a preset value, and if the quasi-identifier is a numerical attribute, Each generalized data of the records having a second generalization level determined by a difference between a maximum value and a minimum value of the generalized data and a ratio of a difference between the maximum value and the minimum value of the numerical attribute domain, If the attribute is a categorical attribute, each generalized data of the generalized record is categorized Which is determined according to a ratio of a value obtained by subtracting 1 from the number of leaf nodes of the classification tree for the classification tree and a value obtained by subtracting 1 from the number of leaf nodes of the node corresponding to the generalized data in the classification tree, Wherein the first generalization level is defined as a value obtained by dividing the sum of the second generalization levels by the number (n) of semi-identifiers, and the predetermined value is a real number between 0 and 1.

본 발명의 일 실시 예에 따른 익명화 방법은 입력부에 의해 수행되고 각각이 준식별자 또는 민감속성에 의하여 분류되는 적어도 하나 이상의 데이터로 구성되는 개인에 대한 레코드를 입력받는 단계, 일반화부에 의해 수행되고 상기 레코드의 데이터 중 준식별자의 데이터의 범위를 확장하여 상기 레코드를 일반화하는 단계를 포함하되, 상기 일반화하는 단계는 상기 일반화된 레코드 중 민감속성의 데이터를 제외한 데이터가 동일한 적어도 하나 이상의 일반화된 레코드로 구성되는 등가 클래스의 제1 일반화 수준이 기 설정된 값 이하가 되도록 일반화하고, 상기 준식별자가 수치형 속성이면 상기 일반화된 레코드의 각각의 일반화된 데이터는 일반화된 데이터의 최대값과 최소값의 차이와 수치형 속성 도메인의 최대값과 최소값의 차이의 비율에 따라 결정되는 제2 일반화 수준을 가지고, 상기 준식별자가 범주형 속성이면 상기 일반화된 레코드의 각각의 일반화된 데이터는 범주형 속성에 대한 분류트리의 리프 노드의 개수에서 1을 뺀 값과 상기 분류트리에서 일반화된 데이터에 해당하는 노드의 리프 노드의 개수에서 1을 뺀 값의 비율에 따라 결정되는 제2 일반화 수준을 가지고, 상기 제1 일반화 수준은 상기 제2 일반화 수준의 합을 준식별자의 수(n)로 나눈 값으로 정의되고, 상기 기 설정된 값은 0에서 1사이의 실수이다.An anonymizing method according to an embodiment of the present invention includes the steps of receiving a record of an individual performed by an input unit and composed of at least one data classified by a quasi identifier or a sensitive attribute, And expanding the range of the data of the quasi-identifier among the data of the record, wherein the generalizing comprises configuring at least one generalized record having the same data except for the sensitive data among the generalized records If the quasi-identifier is a numeric-type attribute, each generalized data of the generalized record has a difference between a maximum value and a minimum value of the generalized data and a numerical value Based on the ratio of the difference between the maximum and minimum values of the attribute domain Wherein if the quasi-identifier is a categorical attribute, each generalized data of the generalized record has a value obtained by subtracting 1 from the number of leaf nodes of the classification tree for the categorical attribute, And a second generalization level determined by a ratio of a number of leaf nodes of the node corresponding to the generalized data minus one, wherein the first generalization level is a sum of the number of quasi identifiers (n ), And the predetermined value is a real number between 0 and 1.

본 발명의 일 실시 예에 따르면, 일반화된 레코드의 제1 일반화 수준이 기 설정된 값 이하가 되도록 일반화함으로써 데이터의 유용성을 보존할 수 있다.According to an embodiment of the present invention, the usability of the data can be preserved by generalizing the first generalization level of the generalized record to be less than a predetermined value.

또한, 위조 레코드를 삽입하여 등가 클래스가 k-익명성을 만족하도록 함으로써 개인의 프라이버시를 보존할 수 있다.In addition, the privacy of an individual can be preserved by inserting a fake record so that the equivalence class satisfies the k-anonymity.

또한, 위조 레코드에 대한 정보를 제공함으로써 데이터의 진실성을 보장할 수 있다. In addition, by providing information on fake records, it is possible to guarantee the authenticity of the data.

도 1은 본 발명의 일 실시 예에 따른 익명화 장치의 예시적인 하드웨어 블록도이다.
도 2는 도 1에 도시된 익명화 장치의 예시적인 기능 블록도이다.
도 3은 도 2에 도시된 일반화부에 의해 익명화하려는 레코드에 대한 테이블을 도시한 것이다.
도 4는 도 2에 도시된 일반화부에 의해 일반화된 레코드에 대한 테이블을 도시한 것이다.
도 5는 범주형 속성에 대한 분류트리의 일 예를 도시한 것이다.
도 6은 도 2에 도시된 삽입부에 의해 위조 레코드를 삽입한 후의 테이블을 도시한 것이다.
도 7은 위조 레코드에 대한 정보가 포함된 테이블을 도시한 것이다.
도 8은 도 1에 도시된 익명화 장치에 의해 수행되는 익명화 방법을 설명하기 위한 흐름도이다.
도 9a는 k값을 달리하였을 때 익명화된 레코드의 RCE(Reconstruction Error Rate)값을 나타낸 그래프를 도시한 것이다.
도 9b는 기 설정된 값을 달리하였을 때 익명화된 레코드의 RCE값을 나타낸 그래프를 도시한 것이다.
1 is an exemplary hardware block diagram of an anonymizing apparatus in accordance with an embodiment of the present invention.
2 is an exemplary functional block diagram of the anonymizing apparatus shown in Fig.
FIG. 3 shows a table of records to be anonymized by the generalization unit shown in FIG. 2. FIG.
FIG. 4 shows a table of records generalized by the generalization unit shown in FIG.
FIG. 5 shows an example of a classification tree for a categorical attribute.
FIG. 6 shows a table after insertion of a fake record by the insertion unit shown in FIG. 2. FIG.
FIG. 7 shows a table including information on fake records.
8 is a flowchart for explaining an anonymization method performed by the anonymizing apparatus shown in FIG.
FIG. 9A is a graph showing a RCE (Reconstruction Error Rate) value of an anonymized record when k values are different.
FIG. 9B is a graph showing RCE values of an anonymized record when a predetermined value is changed.

본 발명에 관한 구체적인 내용의 설명에 앞서 이해의 편의를 위해 본 발명이 해결하고자 하는 과제의 해결 방안의 개요 혹은 기술적 사상의 핵심을 우선 제시한다.Prior to the description of the concrete contents of the present invention, for the sake of understanding, the outline of the solution of the problem to be solved by the present invention or the core of the technical idea is first given.

이하 첨부된 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있는 실시 예를 상세히 설명한다. 그러나 이들 실시 예는 본 발명을 보다 구체적으로 설명하기 위한 것으로, 본 발명의 범위가 이에 의하여 제한되지 않는다는 것은 당업계의 통상의 지식을 가진 자에게 자명할 것이다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. It will be apparent to those skilled in the art, however, that these examples are provided to further illustrate the present invention, and the scope of the present invention is not limited thereto.

본 발명이 해결하고자 하는 과제의 해결 방안을 명확하게 하기 위한 발명의 구성을 본 발명의 바람직한 실시 예에 근거하여 첨부 도면을 참조하여 상세히 설명하되, 당해 도면에 대한 설명시 필요한 경우 다른 도면의 구성요소를 인용할 수 있음을 미리 밝혀둔다. 아울러 본 발명의 바람직한 실시 예에 대한 동작 원리를 상세하게 설명함에 있어 본 발명과 관련된 공지 기능 혹은 구성에 대한 구체적인 설명 그리고 그 이외의 제반 사항이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우, 그 상세한 설명을 생략한다.BRIEF DESCRIPTION OF THE DRAWINGS The above and other features and advantages of the present invention will become more apparent by describing in detail preferred embodiments thereof with reference to the attached drawings in which: It is possible to quote the above. In the following detailed description of the principles of operation of the preferred embodiments of the present invention, it is to be understood that the present invention is not limited to the details of the known functions and configurations, and other matters may be unnecessarily obscured, A detailed description thereof will be omitted.

도 1은 본 발명의 일 실시 예에 따른 익명화 장치의 예시적인 하드웨어 블록도이다.1 is an exemplary hardware block diagram of an anonymizing apparatus in accordance with an embodiment of the present invention.

도 1을 참조하면, 익명화 장치(10)는 통신 인터페이스(101), 입력 인터페이스(103), 출력 인터페이스(105), 메모리(107), 하드디스크(109), 하나 이상의 프로세서(111) 및 시스템 버스/제어 버스(113)를 포함한다.1, an anonymizing device 10 includes a communication interface 101, an input interface 103, an output interface 105, a memory 107, a hard disk 109, one or more processors 111, / Control bus 113.

익명화 장치(10)는 PC(Personal Computer), 인터넷 망을 통해 액세스 가능한 서버(Server), 노트북 등으로 구현될 수 있다.The anonymizing device 10 may be implemented by a personal computer (PC), a server accessible through an Internet network, a notebook computer, or the like.

각 하드웨어 블록들을 간단히 살펴보면, 통신 인터페이스(101)는 익명화 장치(10) 외부의 장치와 통신할 수 있도록 구성된다. 통신 인터페이스(101)는 유선 또는 무선 통신을 수행하도록 구성되며 예를 들어 무선랜이나 유선 랜에 연결될 수 있도록 하는 맥(MAC) 칩을 포함한다.Briefly explaining each hardware block, the communication interface 101 is configured to be able to communicate with a device external to the anonymizing device 10. [ The communication interface 101 includes a MAC chip that is configured to perform wired or wireless communication and can be connected to, for example, a wireless LAN or a wired LAN.

입력 인터페이스(103)는 익명화 장치(10)를 제어하기 위한 사용자 입력을 수신한다. 입력 인터페이스(103)는 키보드, 마우스 등을 포함하여 익명화 장치(10)를 제어할 수 있다. 예를 들어 입력 인터페이스(103)는 일반화하려는 레코드의 입력, 레코드의 일반화 및 k-익명성 만족여부 등에 대한 사용자 입력을 수신한다.The input interface 103 receives a user input for controlling the anonymizing device 10. The input interface 103 may control the anonymizing device 10, including a keyboard, a mouse, and the like. For example, the input interface 103 receives user input for inputting a record to be generalized, generalizing a record, and satisfying k-anonymity.

출력 인터페이스(105)는 익명화 장치(10)에 의해서 익명화된 레코드의 결과를 출력한다. 출력 인터페이스(105)는 디스플레이, 스피커 등을 포함할 수 있다.The output interface 105 outputs the result of the anonymized record by the anonymizing device 10. The output interface 105 may include a display, a speaker, and the like.

메모리(107)는 휘발성 메모리 및/또는 비휘발성 메모리를 포함한다. 메모리(107)는 각종 데이터와 프로그램을 저장한다. 휘발성 메모리는 각종 데이터와 프로그램의 조각(segment)을 임시로 저장하고 비휘발성 메모리는 셋업 또는 부팅에 필요한 각종 셋업 데이터와 부팅 프로그램 등을 영구히 저장하고 있다.Memory 107 includes volatile memory and / or non-volatile memory. The memory 107 stores various data and programs. Volatile memory temporarily stores various data and program segments, and nonvolatile memory permanently stores various setup data and boot programs necessary for setup or booting.

하드디스크(109)는 대용량 저장매체로서 각종 데이터를 저장하고 각종 프로그램들을 저장한다. 하드디스크(109)는 적어도 본 발명에 따른 익명화 방법을 수행하는 프로그램을 포함한다. 하드디스크(109)는 또한 익명화 방법의 프로그램에 이용될 데이터들을 포함한다. 이러한 데이터들은 특정 프로그램에 의해서 액세스 및 관리될 수 있다. 익명화에 이용되는 데이터들과 이 특정 프로그램은 데이터베이스로 바람직하게 구성된다.The hard disk 109 stores various data as a mass storage medium and stores various programs. The hard disk 109 includes at least a program for performing the anonymizing method according to the present invention. The hard disk 109 also contains data to be used in the program of the anonymization method. Such data may be accessed and managed by a particular program. The data used for anonymization and this particular program are preferably organized into a database.

프로세서(111)는 비휘발성 메모리나 하드디스크(109) 등에 저장된 프로그램의 프로그램 코드를 로딩하여 프로그램 코드를 실행시킬 수 있다. 프로세서(111)는 프로그램 코드의 명령어(instruction)를 실행할 수 있는 실행 유닛(Execution Unit)을 포함하여 익명화를 위한 프로그램, 익명화에 이용되는 각종 데이터를 트레이닝하기 위한 프로그램 등을 실행할 수 있다.The processor 111 can load the program code of a program stored in the nonvolatile memory or the hard disk 109 and execute the program code. The processor 111 may execute an anonymization program including an execution unit capable of executing an instruction of the program code, a program for training various data used for anonymization, and the like.

시스템 버스/제어 버스(113)는 각 하드웨어 블록 사이에 (제어) 데이터를 송수신할 수 있도록 구성된다. 시스템 버스/제어 버스(113)는 병렬 버스이거나 시리얼 버스 등일 수 있다.The system bus / control bus 113 is configured to transmit and receive (control) data between each hardware block. The system bus / control bus 113 may be a parallel bus, a serial bus, or the like.

도 2는 도 1에 도시된 익명화 장치의 예시적인 기능 블록도이다.2 is an exemplary functional block diagram of the anonymizing apparatus shown in Fig.

도 2를 참조하면, 본 발명의 일 실시 예에 따른 익명화 장치(10)는 일반화부(200), 판별부(300), 삽입부(400) 및 정보제공부(500)를 포함한다. 실시 예에 따라 익명화 장치(10)는 입력부(100)를 더 포함할 수 있다.Referring to FIG. 2, an anonymizing apparatus 10 according to an embodiment of the present invention includes a generalization unit 200, a determination unit 300, an insertion unit 400, and an information provision unit 500. The anonymizing device 10 may further include an input unit 100 according to an embodiment.

입력부(100)는 익명화하고자 하는 개인에 대한 레코드를 입력받을 수 있다. 여기서, 레코드는 가공되지 않은 전자 건강 레코드일 수 있다. 레코드의 각각의 데이터는 준식별자 또는 민감속성에 의하여 분류될 수 있다. 준식별자는 식별자와 같이 개인을 특정할 수는 없지만, 개인의 특성을 나타내는 정보를 의미한다. 민감속성은 데이터 분석에 있어서 중요한 속성으로서 민감속성의 데이터는 제거되거나 수정되지 않는 것이 바람직하다. 또한, 입력부(100)는 과도한 일반화를 방지하기 위하여 사용자가 임의로 설정한 기 설정된 값을 입력받을 수 있다.The input unit 100 can receive a record of an individual to be anonymized. Here, the record may be an unprocessed electronic health record. Each piece of data in the record can be classified by semi-identifier or sensitivity attribute. A quasi-identifier is information such as an identifier that can not specify an individual but indicates the characteristics of the individual. It is desirable that the sensitive attribute is an important attribute in the data analysis and that the sensitive attribute data is not removed or modified. Also, the input unit 100 may receive a preset value arbitrarily set by the user to prevent excessive generalization.

도 2에 도시된 일반화부에 의해 익명화하려는 레코드에 대한 테이블을 도시한 도 3을 참조하면, 전자 건강 레코드에 대한 준식별자의 일 예로서 나이, 성별 및 우편번호가 있으며, 민감속성의 데이터의 일 예로서 병명이 있다.Referring to FIG. 3 showing a table for a record to be anonymized by the generalization unit shown in FIG. 2, there are age, sex, and zip code as an example of a semi-identifier for the electronic health record, As an example, there is a disease.

일반화부(200)는 레코드의 데이터 중 준식별자의 데이터의 범위를 확장하여 레코드를 일반화한다. 일반화란 레코드의 데이터 중 준식별자의 데이터의 범위를 확장하여 좀 더 일반적인 값으로 바꿈으로써 제3자가 식별하기 어렵게 만드는 것을 의미한다. 보다 구체적으로, 수치형 속성(numerical attribute)에 해당하는 데이터 값은 범위 값으로 바꾸고, 범주형 속성(categorical attribute)에 해당하는 데이터 값은 더 상위 범주의 값으로 바꿈으로써 일반화 할 수 있다. 일반화부(200)의 구체적인 동작은 도 3 내지 도 5를 참조하여 후술하기로 한다.The generalization unit 200 generalizes the record by extending the range of the data of the semi-identifier among the data of the record. Generalization means that it is difficult to identify a third party by changing the range of the data of the semi-identifier of the data of the record to a more general value. More specifically, a data value corresponding to a numerical attribute can be generalized by changing a range value, and a data value corresponding to a categorical attribute can be generalized by changing the value to a higher category value. The specific operation of the generalization unit 200 will be described later with reference to FIG. 3 to FIG.

판별부(300)는 등가 클래스가 k-익명성을 만족하는지 판별한다. 여기서 등가클래스는 일반화된 레코드 중 민감속성의 데이터를 제외한 데이터가 동일한 적어도 하나 이상의 일반화된 레코드로 구성된다. k-익명성은 각각의 레코드를 k-1개의 다른 레코드들로부터 식별 불가능하게 만듦으로써 프라이버시 침해를 방지하는 모델이다. 보다 구체적으로, 임의의 등가 클래스 내의 일반화된 레코드의 개수가 적어도 k개 이상이면 k-익명성을 만족한다고 볼 수 있다.The determination unit 300 determines whether the equivalence class satisfies k-anonymity. Here, the equivalence class is composed of at least one generalized record in which the data excluding the sensitive attribute data among the generalized records are the same. k-anonymity is a model that prevents privacy breach by making each record unidentifiable from k-1 other records. More specifically, if the number of generalized records in any equivalence class is at least k, k-anonymity is satisfied.

삽입부(400)는 판별부(300)를 통하여 등가 클래스가 k-익명성을 만족하지 않는 경우 k-익명성을 만족하지 않는 등가 클래스에 위조 레코드를 삽입한다. 보다 구체적으로, 삽입되는 위조 레코드는 삽입되는 등가 클래스 내의 일반화된 레코드의 데이터와 동일한 데이터를 갖는다. 다만, 위조 레코드의 민감속성의 데이터는 등가 클래스 내 민감속성의 데이터 중 임의로 선택된 어느 하나일 수 있다.When the equivalent class does not satisfy the k-anonymity through the determining unit 300, the inserting unit 400 inserts the fake record into the equivalent class that does not satisfy the k-anonymity. More specifically, the inserted fake record has the same data as the data of the generalized record in the inserted equivalent class. However, the data of the sensitivity attribute of the counterfeit record may be any one of arbitrary selected data of the sensitivity attribute in the equivalence class.

정보제공부(500)는 일반화부(200)를 통하여 일반화된 레코드 및 삽입부(400)를 통하여 삽입된 위조 레코드에 대한 정보를 제공한다. 이 때, 위조 레코드에 대한 정보는 등가 클래스의 ID, 위조 레코드의 개수 및 민감속성의 데이터일 수 있다.The information providing unit 500 provides generalized records through the generalization unit 200 and information on the inserted falsification records through the insertion unit 400. At this time, the information on the fake record may be the ID of the equivalent class, the number of fake records, and the data of the sensitive property.

다만, 상대방이 제공된 정보를 바탕으로 위조 레코드를 특정할 수 있다면 k-익명성이 침해될 수 있으므로 위조 레코드를 특정하지 못하도록 정보를 제공할 필요가 있다.However, if the other party can specify the fake record based on the information provided, k-anonymity may be infringed, so it is necessary to provide information so that the fake record can not be specified.

상대방이 테이블을 분석할 때 적어도 하나 이상의 임의의 등가 클래스 E1와 또 다른 등가 클래스들 Eother로 구성된 그룹 G에서, Eother에 속하고 민감속성의 데이터값 s를 갖는 위조되지 않은 레코드의 개수가 E1에 속하고 민감속성의 데이터값 s를 갖는 위조 레코드의 개수보다 많거나 같으면, 상대방은 위조 레코드가 무엇인지 특정할 수 없다. 따라서, 위와 같은 점을 고려하여 그룹 G에 있는 등가 클래스의 ID에 대한 정보를 제공함으로써 개인의 프라이버시를 보존할 수 있다.When the other party analyzes the table, in the group G consisting of at least one or more arbitrary equivalence classes E 1 and another equivalence classes E other , the number of un-falsified records belonging to E other and having the sensitive data value s E 1 and is greater than or equal to the number of forged records with sensitive data value s, then the other party can not specify what the forged record is. Therefore, considering the above points, the privacy of an individual can be preserved by providing information on the ID of the equivalence class in the group G. [

도 4는 도 2에 도시된 일반화부에 의해 일반화된 레코드에 대한 테이블을 도시한 것이다. 도 4를 참조하면, 레코드의 데이터 중 준식별자의 데이터의 범위를 확장하여 식별할 수 없는 레코드로 일반화하였다. 일반화된 레코드의 일 예인 <[35-37], [남], [22071-23061], [폐렴]>은 나이 및 우편번호 준식별자의 데이터의 범위를 확장시킴으로써 레코드를 일반화한 것이다.FIG. 4 shows a table of records generalized by the generalization unit shown in FIG. Referring to FIG. 4, the range of the data of the semi-identifier of the data of the record is extended and generalized into a record that can not be identified. One example of a generalized record, <[35-37], [M], [22071-23061], [Pneumonia]>, is a generalization of records by extending the range of data for age and zip code identifiers.

일반화된 레코드는 제1 일반화 수준을 가질 수 있고, 적어도 하나 이상의 일반화된 데이터 각각은 제2 일반화 수준을 가질 수 있다. 제1 일반화 수준은 일반화된 레코드에 포함된 각각의 일반화된 데이터의 제2 일반화 수준의 합을 준식별자의 수(n)로 나눈 값으로 정의될 수 있다.The generalized record may have a first generalization level and each of the at least one generalized data may have a second generalization level. The first generalization level can be defined as the sum of the second generalization levels of each generalized data included in the generalized record divided by the number of quasi identifiers (n).

제2 일반화 수준은 일반화된 데이터가 가지는 값으로서 준식별자가 수치형 속성이면 일반화된 데이터의 최대값과 최소값의 차이와 수치형 속성 도메인의 최대값과 최소값의 차이의 비율에 따라 결정될 수 있다.The second generalization level can be determined by the ratio of the difference between the maximum value and the minimum value of the generalized data and the difference between the maximum value and the minimum value of the numerical attribute domain if the quasi identifier is a numerical attribute.

또한, 본 발명의 일 예에 따르면 준식별자가 수치형 속성이면 제2 일반화 수준은 수학식 1에 의해 정의될 수 있다.Also, according to an embodiment of the present invention, if the quasi identifier is a numeric attribute, the second generalization level can be defined by Equation (1).

[수학식 1][Equation 1]

Figure 112017069992502-pat00001
Figure 112017069992502-pat00001

여기서, DA는 제2 일반화 수준, Uq와 Lq은 일반화된 데이터의 최대값과 최소값, U와 L은 수치형 속성 도메인의 최대값과 최소값.Where D A is the second generalization level, U q and L q are the maximum and minimum values of the generalized data, and U and L are the maximum and minimum values of the numeric property domain.

따라서, 도 4의 테이블에서 수치형 속성 중 하나인 나이에 해당하는 데이터 [35-37]의 제2 일반화 수준은 (37 - 35)/(99 - 0) = 0.02 이다. Therefore, the second generalization level of the data [35-37] corresponding to one of the numerical attributes in the table of FIG. 4 is (37 - 35) / (99 - 0) = 0.02.

다음으로, 준식별자가 범주형 속성이면 제2 일반화 수준은 범주형 속성에 대한 분류트리의 리프 노드(leaf node)의 개수에서 1을 뺀 값과 상기 분류트리에서 일반화된 데이터에 해당하는 노드의 리프 노드의 개수에서 1을 뺀 값의 비율에 따라 결정될 수 있다.Next, if the quasi-identifier is a categorical attribute, the second generalization level is a value obtained by subtracting 1 from the number of leaf nodes in the classification tree for the categorical attribute and a leaf value of the leaf corresponding to the generalized data in the classification tree Can be determined according to the ratio of the number of nodes minus one.

또한, 본 발명의 일 예에 따르면 준식별자가 범주형 속성이면 제2 일반화 수준은 수학식 2에 의해 정의될 수 있다.Also, according to an exemplary embodiment of the present invention, if the quasi identifier is a categorical attribute, the second generalization level can be defined by Equation (2).

[수학식 2]&Quot; (2) &quot;

Figure 112017069992502-pat00002
Figure 112017069992502-pat00002

여기서, DA는 제2 일반화 수준, M은 범주형 속성에 대한 분류트리의 리프노드의 개수, Mq는 상기 분류트리에서 일반화된 데이터에 해당하는 노드의 리프노드의 개수.Where D A is a second generalized level, M is the number of leaf nodes in the classification tree for the categorical attribute, and M q is the number of leaf nodes of the node corresponding to the generalized data in the classification tree.

도 5는 범주형 속성에 대한 분류트리의 일 예를 나타낸 것이다.FIG. 5 shows an example of a classification tree for a categorical attribute.

도 5를 참조하면, 범주형 속성 중 하나인 성별에 대한 분류트리에서 리프노드의 개수인 M은 2이고, 일반화된 데이터에 해당하는 노드는 *[성별]이므로 해당 노드의 리프노드의 개수인 Mq는 2이다. 따라서, 도 3의 테이블에서 범주형 속성 중 하나인 성별에 해당하는 데이터 *[성별]의 제2 일반화 수준은 (2 - 1)/(2 - 1) = 1 이다.Referring to FIG. 5, since the number M of leaf nodes in the classification tree for one of the categorical attributes is 2, and the node corresponding to generalized data is * [sex], the number of leaf nodes q is 2. Therefore, the second generalization level of the data * [sex] corresponding to the gender of one of the categorical attributes in the table of FIG. 3 is (2 - 1) / (2 - 1) = 1.

그러나, 일반화는 레코드의 왜곡이 불가피하므로 과도한 일반화는 익명화된 데이터를 분석함에 있어서 부정적으로 작용한다. 따라서, 본 발명의 일 실시 예에 따른 일반화 장치는 과도한 일반화를 방지하기 위하여 제1 일반화 수준을 기 설정된 값 이하가 되도록 일반화할 수 있다. 기 설정된 값은 과도한 일반화를 막기 위한 기준을 나타내는 것으로서 0 에서 1사이의 실수일 수 있다. 따라서, 본 발명의 일반화부(200)를 통하여 제1 일반화 수준이 기 설정된 값 이하가 되도록 하여 과도한 일반화를 방지함으로써 데이터의 유용성을 보존할 수 있다.However, since generalization is inevitable to distort records, excessive generalization negatively affects the analysis of anonymized data. Accordingly, the generalization apparatus according to an embodiment of the present invention can generalize the first generalization level to be less than a predetermined value in order to prevent excessive generalization. The preset value represents a criterion for preventing excessive generalization, which can be a real number between 0 and 1. Therefore, through the generalization unit 200 of the present invention, the first generalization level may be less than a predetermined value to prevent excessive generalization, thereby preserving the usefulness of the data.

도 4의 테이블을 참조하면, 입력부(100)을 통하여 입력된 기 설정된 값을 0.02라고 할 때, 등가 클래스 1의 레코드의 제1 일반화 수준은 (2/99 + 0/1 + 990/99999)/3 = 0.01 이고 등가 클래스 2의 레코드의 제1 일반화 수준은 (6/99 + 0/1 + 222/99999)/3 = 0.02 이므로 기 설정된 값 이하가 되도록 일반화 되었다.Referring to the table of FIG. 4, when a predetermined value input through the input unit 100 is 0.02, the first generalization level of the record of the equivalent class 1 is (2/99 + 0/1 + 990/99999) / 3 = 0.01 and the first generalization level of the record of the equivalent class 2 is (6/99 + 0/1 + 222/99999) / 3 = 0.02, so that it is generalized to be less than a predetermined value.

일반화부(200)를 통하여 등가 클래스의 모든 레코드가 기 설정된 값 이하가 되도록 일반화되었더라도 일부 등가 클래스가 k-익명성을 만족하지 않을 수 있다. 따라서, 판별부(300)를 통하여 모든 등가 클래스가 k-익명성을 만족하여 익명화되었는지 판별한다. 만약 일부 등가 클래스 내의 일반화된 레코드의 개수가 k개 이하이면 k-익명성을 만족하지 않는 등가 클래스에 위조 레코드를 삽입한다. Some equivalence classes may not satisfy the k-anonymity even though all records of the equivalence class are generalized to be less than predetermined values through the generalization unit 200. [ Therefore, the discriminator 300 determines whether all equivalence classes satisfy the k-anonymity and are anonymized. If the number of generalized records in some equivalence classes is less than or equal to k, the counterfeit record is inserted into the equivalent class that does not satisfy k-anonymity.

도 6은 도 2에 도시된 삽입부에 의해 위조 레코드를 삽입한 후의 테이블을 도시한 것이다.FIG. 6 shows a table after insertion of a fake record by the insertion unit shown in FIG. 2. FIG.

도 6을 참조하면, 본 발명의 일 실시 예로서 판별부(300)가 도 4의 테이블이 4-익명성을 만족하는지 여부를 판단할 경우 등가 클래스 2는 4-익명성을 만족하나, 등가 클래스 1은 등가 클래스들의 개수가 3개이므로 4-익명성을 만족하지 못한다. 따라서, 본 발명의 삽입부(400)를 통하여 등가 클래스 1에 위조 레코드인 <[35-37], [남], [22071-23061], [당뇨병]>을 삽입함으로써 4-익명성을 만족하도록 할 수 있다.6, when the determination unit 300 determines whether the table of FIG. 4 satisfies 4-anonymity, the equivalent class 2 satisfies the 4-anonymity, 1 does not satisfy 4-anonymity because the number of equivalent classes is 3. Therefore, by inserting the falsification records <[35-37], [M], [22071-23061], and [diabetes]> into the equivalence class 1 through the insertion unit 400 of the present invention, can do.

도 7은 위조 레코드에 대한 정보가 포함된 테이블을 도시한 것이다.FIG. 7 shows a table including information on fake records.

앞서 언급한 바와 같이 정보제공부(500)는 일반화부(200)를 통하여 일반화된 레코드 및 삽입부(400)를 통하여 삽입된 위조 레코드에 대한 정보를 제공함으로써 데이터의 진실성을 높일 수 있다. 이 때, 위조 레코드에 대한 정보는 등가 클래스의 ID, 위조 레코드의 개수 및 민감속성의 데이터일 수 있다.As described above, the information providing unit 500 can increase the authenticity of data by providing generalized records through the generalizing unit 200 and information on the fake records inserted through the inserting unit 400. At this time, the information on the fake record may be the ID of the equivalent class, the number of fake records, and the data of the sensitive property.

다만, 상대방이 제공된 정보를 바탕으로 위조 레코드를 특정할 수 있다면 k-익명성이 침해될 수 있으므로 위조 레코드를 특정하지 못하도록 정보를 제공할 필요가 있다.However, if the other party can specify the fake record based on the information provided, k-anonymity may be infringed, so it is necessary to provide information so that the fake record can not be specified.

적어도 하나 이상의 임의의 등가 클래스 E1와 또 다른 등가 클래스들 Eother로 구성된 그룹 G에서, Eother에 속하고 민감속성의 데이터값 s를 갖는 위조되지 않은 레코드의 개수가 E1에 속하고 민감속성의 데이터값 s를 갖는 위조 레코드의 개수보다 많거나 같도록 등가 클래스의 ID에 대한 정보를 제공한다면 상대방은 위조 레코드를 특정할 수 없다.In a group G consisting of at least one arbitrary equivalence class E 1 and another equivalence class E other , the number of un-falsified records belonging to E other and having the data value s of the sensitive attribute belongs to E 1 , The counterpart can not specify the counterfeit record if information about the ID of the equivalence class is provided such that it is greater than or equal to the number of counterfeit records having the data value s of the counterpart.

도 7을 참조하면, 만일 등가 클래스의 ID에 대한 정보를 1로 준다면 상대방이 등가 클래스 1에서 민감속성의 데이터가 당뇨병인 레코드 하나를 제거함으로써 등가 클래스 1의 4-익명성이 침해될 수 있다. 따라서, 등가 클래스의 ID에 대한 정보를 1,2로 줌으로써 상대방은 위조 레코드가 등가 클래스 1에 있는지 2에 있는지 특정할 수 없다.Referring to FIG. 7, if the information on the ID of the equivalence class is given as 1, the 4-anonymity of the equivalence class 1 may be infringed by removing one record in which the sensitive attribute data is diabetes in the equivalent class 1. Therefore, by giving the information about the ID of the equivalence class to 1,2, the other party can not specify whether the forged record is in the equivalence class 1 or 2.

도 8은 도 1에 도시된 익명화 장치에 의해 수행되는 익명화 방법을 설명하기 위한 흐름도이다. 이하에서는 앞서 기재한 부분과 중복되는 설명은 생략한다.8 is a flowchart for explaining an anonymization method performed by the anonymizing apparatus shown in FIG. Hereinafter, a description overlapping with the above-described portions will be omitted.

익명화 장치(10)의 입력부(100)에 의해 수행되는 S100 단계는 각각이 준식별자 또는 민감속성에 의하여 분류되는 적어도 하나 이상의 데이터로 구성되는 개인에 대한 레코드를 입력받는 단계이다. 또한, 과도한 일반화를 방지하기 위하여 사용자가 임의로 설정한 기 설정된 값을 입력받을 수 있다.The step S100 performed by the input unit 100 of the anonymizing device 10 is a step of receiving a record for an individual composed of at least one data classified by the semi-identifier or the sensitive attribute, respectively. In addition, in order to prevent excessive generalization, a predetermined value set by the user can be inputted.

익명화 장치(10)의 일반화부(200)에 의해 수행되는 S200 단계는 일반화된 레코드의 제1 일반화 수준이 0에서 1사이의 실수인 기 설정된 값 이하가 되도록 일반화할 수 있다. 이 때, 상기 일반화된 데이터는 상기 준식별자가 수치형 속성이면 일반화된 데이터의 최대값과 최소값의 차이와 수치형 속성 도메인의 최대값과 최소값의 차이의 비율에 따라 결정되는 제2 일반화 수준을 가지며, 상기 준식별자가 범주형 속성이면 범주형 속성에 대한 분류트리의 리프 노드의 개수에서 1을 뺀 값과 상기 분류트리에서 일반화된 데이터에 해당하는 노드의 리프 노드의 개수에서 1을 뺀 값의 비율에 따라 결정되는 제2 일반화 수준을 가진다. 또한, 상기 제1 일반화 수준은 상기 제2 일반화 수준의 합을 준식별자의 수(n)로 나눈 값으로 정의될 수 있다.The step S200 performed by the generalizing unit 200 of the anonymizing device 10 may be generalized such that the first generalization level of the generalized record is less than or equal to a preset value which is a real number between 0 and 1. [ In this case, the generalized data has a second generalization level determined according to the difference between the maximum value and the minimum value of the generalized data and the ratio of the difference between the maximum value and the minimum value of the numeric attribute domain if the quasi-identifier is a numeric type attribute A ratio of a value obtained by subtracting 1 from the number of leaf nodes of the classification tree for the categorical attribute and a value obtained by subtracting 1 from the number of leaf nodes of the node corresponding to the generalized data in the classification tree, Lt; RTI ID = 0.0 &gt; generalization level. &Lt; / RTI &gt; Also, the first generalization level may be defined as a value obtained by dividing the sum of the second generalization levels by the number (n) of semi-identifiers.

익명화 장치(10)의 판별부(300)에 의해 수행되는 S300 단계는 상기 일반화된 레코드 중 민감속성의 데이터를 제외한 데이터가 동일한 적어도 하나 이상의 일반화된 레코드로 구성되는 등가 클래스가 k-익명성을 만족하는지 판별하는 단계이다.The step S300 performed by the discriminator 300 of the anonymizing device 10 may be such that an equivalent class consisting of at least one generalized record having the same data except for the sensitive data among the generalized records satisfies k-anonymity .

익명화 장치(10)의 삽입부(400)에 의해 수행되는 S400 단계는 상기 등가 클래스가 k-익명성을 만족하지 않는 경우 k-익명성을 만족하지 않는 등가 클래스에 위조 레코드를 삽입하는 단계이다.The step S400 performed by the inserting unit 400 of the anonymizing device 10 is a step of inserting a fake record into an equivalent class that does not satisfy the k-anonymity when the equivalent class does not satisfy the k-anonymity.

여기에, 정보제공부(500)에 의해 수행되고, 상기 일반화된 레코드 및 상기 위조 레코드에 대한 정보를 제공하는 단계를 더 포함할 수 있다.Here, the information providing unit 500 may further include providing information on the generalized record and the fake record.

여기에, 상대방이 정보제공부(500)를 통하여 제공되는 정보를 바탕으로 위조 레코드를 특정할 수 없도록 그룹 G에 있는 등가 클래스의 ID에 대한 정보를 제공하기 위한 그룹핑 단계가 추가될 수 있다. 보다 구체적으로, 우선 등가 클래스들을 등가 클래스 내의 위조 레코드의 개수에 따라 정렬한다. 다음으로, 임의의 등가 클래스 E1와 다른 등가 클래스 Eother을 비교하여 Eother에 속하고 민감속성의 데이터값 s를 갖는 위조되지 않은 레코드의 개수가 E1에 속하고 민감속성의 데이터값 s를 갖는 위조 레코드의 개수보다 많거나 같으면 E1과 Eother을 그룹 G로 그룹핑할 수 있다. 이후, 그룹 G에 있는 등가 클래스의 ID에 대한 정보를 제공함으로써 상대방이 위조 레코드를 특정하지 못하도록 할 수 있다.Here, a grouping step may be added to provide information on the ID of the equivalence class in the group G so that the counterpart can not specify the forgery record based on the information provided through the information providing unit 500. [ More specifically, first, the equivalence classes are sorted according to the number of counterfeit records in the equivalence class. Next, compare the arbitrary equivalence class E 1 with the other equivalence class E other to determine that the number of un-falsified records belonging to E other and having the sensitive data value s belongs to E 1 and the data value s of the sensitive property equal to more than the number of records having forgery or the E 1 and E other may be grouped into a group G. Then, by providing information on the ID of the equivalence class in the group G, it is possible to prevent the other party from specifying the forgery record.

본 발명의 일 실시 예에 따라 익명화된 데이터의 유용성을 측정하기 위한 품질 지표로서 RCE를 이용할 수 있다. RCE는 확률 밀도 함수에 기반하여 익명화된 데이터와 원본 데이터를 비교할 수 있다. RCE는 다음과 같이 정의될 수 있다.An RCE can be used as a quality indicator for measuring the usability of anonymized data according to an embodiment of the present invention. The RCE can compare the original data with the anonymized data based on the probability density function. The RCE can be defined as follows.

Figure 112017069992502-pat00003
Figure 112017069992502-pat00003

여기서, DS는 준식별자와 민감속성을 포함하는 차원적 공간,

Figure 112017069992502-pat00004
는 원본 데이터의 확률 밀도 함수,
Figure 112017069992502-pat00005
는 익명화된 데이터의 확률 밀도 함수.Here, DS is a dimensional space including a semi-identifier and a sensitivity attribute,
Figure 112017069992502-pat00004
Is a probability density function of the original data,
Figure 112017069992502-pat00005
Is a probability density function of anonymized data.

도 9a는 k값을 달리하였을 때 익명화된 레코드의 RCE(Reconstruction Error Rate)값을 나타낸 그래프를 도시한 것이고, 도 9b는 기 설정된 값을 달리하였을 때 익명화된 레코드의 RCE값을 나타낸 그래프를 도시한 것이다.FIG. 9A is a graph showing RCE values of an anonymized record when k values are different, and FIG. 9B is a graph showing RCE values of anonymized records when a predetermined value is different will be.

도 9a에서 보는 바와 같이 k값이 클수록 RCE가 증가하는데 이는 k값이 클수록 k-익명성을 만족시키기 위하여 더 많은 수의 위조 레코드가 삽입되기 때문이다.As shown in FIG. 9A, the larger the k value, the greater the RCE. The larger the k value, the greater the number of fake records inserted to satisfy the k-anonymity.

도 9b에서 보는 바와 같이 기 설정된 값이 감소할수록 RCE가 증가하는데 이는 기 설정된 값의 감소에 따라 제1 일반화 수준의 엄격한 제한 때문에 위조 레코드가 많이 만들어져있기 때문이다. 따라서, 유용성이 보존된 익명화는 RCE를 감소시킬 수 있음을 확인할 수 있다.As shown in FIG. 9B, as the predetermined value decreases, the RCE increases because a large number of counterfeit records are created due to the strict restriction of the first generalization level as the predetermined value decreases. Therefore, it can be confirmed that anonymization preserving usefulness can reduce RCE.

상술한 익명화 방법은 컴퓨터에서 실행될 수 있는 프로그램으로 작성가능하고, 컴퓨터로 읽을 수 있는 기록매체를 이용하여 상기 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다.The above-described anonymizing method can be realized by a general-purpose digital computer that can be created as a program that can be executed by a computer and operates the program using a computer-readable recording medium.

상기 다자간 연산 프로그램은 상기 기록매체에 저장되며, 상기 기록매체는 마그네틱 저장매체(예를 들면, 롬, 플로피 디스크, 하드디스크 등), 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등)와 같은 저장매체를 포함한다. 또한, 상기 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 명령어 세트가 저장되고 실행될 수 있다.The multiprocessing program is stored in the recording medium, and the recording medium may be a storage medium such as a magnetic storage medium (e.g., ROM, floppy disk, hard disk, etc.), an optical reading medium (e.g. CD-ROM, Media. In addition, the recording medium may be distributed and distributed to a network-connected computer system so that a computer-readable instruction set can be stored and executed in a distributed manner.

본 발명의 기술적 사상 내에서 당해 분야의 통상의 지식을 가진 자에 의해 그 변형이나 개량이 가능함은 명백하다고 할 것이다. 본 발명의 단순한 변형 내지 변경은 모두 본 발명의 영역에 속하는 것으로 본 발명의 구체적인 보호범위는 첨부된 특허청구범위에 의하여 명확해질 것이다.It will be apparent to those skilled in the art that variations and modifications may be made without departing from the scope of the present invention. It will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined by the appended claims.

Claims (9)

각각이 준식별자(Quasi-Identifier) 또는 민감속성(sensitive attribute)에 의하여 분류되는 적어도 하나 이상의 데이터로 구성되는 개인에 대한 레코드의 익명화 장치에 있어서,
상기 레코드의 데이터 중 준식별자의 데이터의 범위를 확장하여 상기 레코드를 일반화하는 일반화부를 포함하되,
상기 일반화부는 상기 일반화된 레코드의 제1 일반화 수준이 기 설정된 값 이하가 되도록 일반화하고,
상기 준식별자가 수치형 속성(numerical attribute)이면 상기 일반화된 레코드의 각각의 일반화된 데이터는 일반화된 데이터의 최대값과 최소값의 차이와 수치형 속성 도메인의 최대값과 최소값의 차이의 비율에 따라 결정되는 제2 일반화 수준을 가지고,
상기 준식별자가 범주형 속성(categorical attribute)이면 상기 일반화된 레코드의 각각의 일반화된 데이터는 범주형 속성에 대한 분류트리의 리프 노드(leaf node)의 개수에서 1을 뺀 값과 상기 분류트리에서 일반화된 데이터에 해당하는 노드의 리프 노드의 개수에서 1을 뺀 값의 비율에 따라 결정되는 제2 일반화 수준을 가지고,
상기 제1 일반화 수준은 상기 제2 일반화 수준의 합을 준식별자의 수(n)로 나눈 값으로 정의되고,
상기 기 설정된 값은 0에서 1사이의 실수인,
유용성 보존을 위한 익명화 장치.
An apparatus for anonymizing a record for an individual consisting of at least one data classified by a quasi-identifier or a sensitive attribute,
And a generalization unit for generalizing the record by expanding a range of data of the semi-identifier among the data of the record,
Wherein the generalization unit generalizes the first generalization level of the generalized record to a predetermined value or less,
If the quasi-identifier is a numerical attribute, each generalized data of the generalized record is determined by the difference between the maximum value and the minimum value of the generalized data and the ratio of the difference between the maximum value and the minimum value of the numeric attribute domain Having a second generalization level,
If the quasi-identifier is a categorical attribute, each generalized data of the generalized record has a value obtained by subtracting 1 from the number of leaf nodes of the classification tree for the categorical attribute, And a second generalization level determined according to a ratio of a value obtained by subtracting 1 from the number of leaf nodes of the node corresponding to the data,
Wherein the first generalization level is defined as a value obtained by dividing the sum of the second generalization levels by the number (n) of semi-identifiers,
Wherein the predetermined value is a real number between 0 and 1,
Anonymizing device for usability preservation.
제1항에 있어서,
상기 일반화된 레코드 중 민감속성의 데이터를 제외한 데이터가 동일한 적어도 하나 이상의 일반화된 레코드로 구성되는 등가 클래스(equivalent class)가 k-익명성(k-anonymity)을 만족하는지 판별하는 판별부를 더 포함하는 것을 특징으로 하는 유용성 보존을 위한 익명화 장치.
The method according to claim 1,
Further comprising a discrimination unit for discriminating whether or not an equivalent class consisting of at least one generalized record having the same data except the sensitivity attribute data among the generalized records satisfies k-anonymity An anonymizing device for preserving usability.
제2항에 있어서,
상기 등가 클래스가 k-익명성을 만족하지 않는 경우 k-익명성을 만족하지 않는 등가 클래스에 위조 레코드를 삽입하는 삽입부를 더 포함하는 것을 특징으로 하는 유용성 보존을 위한 익명화 장치.
3. The method of claim 2,
Further comprising an inserter for inserting the fake record into an equivalence class that does not satisfy the k-anonymity when the equivalence class does not satisfy the k-anonymity.
제3항에 있어서,
상기 위조 레코드는 상기 민감속성의 데이터 중 임의로 선택된 어느 하나를 포함하는 것을 특징으로 하는 유용성 보존을 위한 익명화 장치.
The method of claim 3,
Wherein the forgery record includes any one of the data of the sensitive attribute.
제3항에 있어서,
상기 일반화된 레코드 및 상기 위조 레코드에 대한 정보를 제공하는 정보제공부를 더 포함하는 것을 특징으로 하는 유용성 보존을 위한 익명화 장치.
The method of claim 3,
Further comprising an information providing unit for providing information on the generalized record and the fake record.
제5항에 있어서,
상기 위조 레코드에 대한 정보는 등가 클래스의 ID, 위조 레코드의 개수 및 민감속성의 데이터를 포함하는 것을 특징으로 하는 유용성 보존을 위한 익명화 장치.
6. The method of claim 5,
Wherein the information on the fake record includes data of an ID of an equivalent class, the number of fake records, and sensitive attribute data.
입력부에 의해 수행되고, 각각이 준식별자 또는 민감속성에 의하여 분류되는 적어도 하나 이상의 데이터로 구성되는 개인에 대한 레코드를 입력받는 단계; 및
일반화부에 의해 수행되고, 상기 레코드의 데이터 중 준식별자의 데이터의 범위를 확장하여 상기 레코드를 일반화하는 단계를 포함하되,
상기 일반화하는 단계는 상기 일반화된 레코드 중 민감속성의 데이터를 제외한 데이터가 동일한 적어도 하나 이상의 일반화된 레코드로 구성되는 등가 클래스의 제1 일반화 수준이 기 설정된 값 이하가 되도록 일반화하고,
상기 준식별자가 수치형 속성이면 상기 일반화된 레코드의 각각의 일반화된 데이터는 일반화된 데이터의 최대값과 최소값의 차이와 수치형 속성 도메인의 최대값과 최소값의 차이의 비율에 따라 결정되는 제2 일반화 수준을 가지고,
상기 준식별자가 범주형 속성이면 상기 일반화된 레코드의 각각의 일반화된 데이터는 범주형 속성에 대한 분류트리의 리프 노드의 개수에서 1을 뺀 값과 상기 분류트리에서 일반화된 데이터에 해당하는 노드의 리프 노드의 개수에서 1을 뺀 값의 비율에 따라 결정되는 제2 일반화 수준을 가지고,
상기 제1 일반화 수준은 상기 제2 일반화 수준의 합을 준식별자의 수(n)로 나눈 값으로 정의되고,
상기 기 설정된 값은 0에서 1사이의 실수인,
유용성 보존을 위한 익명화 방법.
The method comprising: receiving a record of an individual performed by an input unit and composed of at least one or more data classified by a semi-identifier or a sensitivity attribute; And
And generalizing the record by expanding a range of data of a semi-identifier among data of the record, the generalization being performed by a generalization unit,
Wherein the generalization is performed so that the first generalization level of the equivalent class, which is composed of at least one generalized record in which the data excluding the sensitive attribute data is the same among the generalized records, is less than a predetermined value,
If the quasi-identifier is a numeric attribute, each generalized data of the generalized record is a second generalization that is determined by the difference between the maximum and minimum values of the generalized data and the ratio of the difference between the maximum and minimum values of the numeric attribute domain. Having a level,
If the quasi-identifier is a categorical attribute, each generalized data of the generalized record includes a value obtained by subtracting 1 from the number of leaf nodes of the classification tree for the categorical attribute, and a leaf of the node corresponding to the generalized data in the classification tree Having a second generalization level determined by the ratio of the number of nodes minus one,
Wherein the first generalization level is defined as a value obtained by dividing the sum of the second generalization levels by the number (n) of semi-identifiers,
Wherein the predetermined value is a real number between 0 and 1,
Anonymization method for usability preservation.
제7항에 있어서,
판별부에 의해 수행되고, 상기 일반화된 레코드 중 민감속성의 데이터를 제외한 데이터가 동일한 적어도 하나 이상의 일반화된 레코드로 구성되는 등가 클래스가 k-익명성을 만족하는지 판별하는 단계; 및
삽입부에 의해 수행되고, 상기 등가 클래스가 k-익명성을 만족하지 않는 경우 k-익명성을 만족하지 않는 등가 클래스에 위조 레코드를 삽입하는 단계를 더 포함하는 것을 특징으로 하는 유용성 보존을 위한 익명화 방법.
8. The method of claim 7,
Determining whether an equivalence class, which is performed by a discrimination unit and is composed of at least one generalized record in which data excluding sensitive data among the generalized records are the same, satisfies k-anonymity; And
Further comprising inserting a forgery record in an equivalence class that is performed by an inserter and does not satisfy the k-anonymity when the equivalence class does not satisfy k-anonymity. Way.
제8항에 있어서,
정보제공부에 의해 수행되고, 상기 일반화된 레코드 및 상기 위조 레코드에 대한 정보를 제공하는 단계를 더 포함하되,
상기 위조 레코드에 대한 정보는 등가 클래스의 ID, 위조 레코드의 개수 및 민감속성의 데이터를 포함하는 것을 특징으로 하는 유용성 보존을 위한 익명화 방법.
9. The method of claim 8,
Further comprising providing information about the generalized record and the fake record, the information being provided by an information providing unit,
Wherein the information on the falsification record includes an ID of an equivalence class, a number of falsification records, and data of sensitivity attributes.
KR1020170092344A 2017-07-21 2017-07-21 Anonymization Device for Preserving Utility of Data and Method thereof KR101948603B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170092344A KR101948603B1 (en) 2017-07-21 2017-07-21 Anonymization Device for Preserving Utility of Data and Method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170092344A KR101948603B1 (en) 2017-07-21 2017-07-21 Anonymization Device for Preserving Utility of Data and Method thereof

Publications (2)

Publication Number Publication Date
KR20190010091A KR20190010091A (en) 2019-01-30
KR101948603B1 true KR101948603B1 (en) 2019-02-15

Family

ID=65277017

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170092344A KR101948603B1 (en) 2017-07-21 2017-07-21 Anonymization Device for Preserving Utility of Data and Method thereof

Country Status (1)

Country Link
KR (1) KR101948603B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20240007529A (en) 2022-07-08 2024-01-16 고려대학교 산학협력단 Device and method for de-identifying personal information

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102648905B1 (en) 2023-02-21 2024-03-18 (주)이지서티 Method and device for privacy-constrained data perturbation

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101804426B1 (en) 2016-06-17 2017-12-05 고려대학교 산학협력단 Parallel processing method of data anonymization using gpgpu

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5307499B2 (en) 2008-10-06 2013-10-02 日本電信電話株式会社 Data aggregation system, disturbance device, reconstruction device, data aggregation method, disturbance program, and reconstruction program
US20130291128A1 (en) 2010-11-09 2013-10-31 Nec Corporation Anonymizing apparatus and anonymizing method

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101804426B1 (en) 2016-06-17 2017-12-05 고려대학교 산학협력단 Parallel processing method of data anonymization using gpgpu

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20240007529A (en) 2022-07-08 2024-01-16 고려대학교 산학협력단 Device and method for de-identifying personal information

Also Published As

Publication number Publication date
KR20190010091A (en) 2019-01-30

Similar Documents

Publication Publication Date Title
TWI718643B (en) Method and device for identifying abnormal groups
US10360405B2 (en) Anonymization apparatus, and program
US20200050968A1 (en) Interactive interfaces for machine learning model evaluations
KR102178295B1 (en) Decision model construction method and device, computer device and storage medium
US10831927B2 (en) Noise propagation-based data anonymization
US20130138698A1 (en) Identity information de-identification device
US20220100899A1 (en) Protecting sensitive data in documents
CN108596410B (en) Automatic wind control event processing method and device
JP2021507360A (en) How to de-identify data, systems to de-identify data, and computer programs to identify non-data
Foster et al. Variable selection in monotone single‐index models via the adaptive LASSO
CN109918678B (en) Method and device for identifying field meaning
CN107622326A (en) User&#39;s classification, available resources Forecasting Methodology, device and equipment
US11836331B2 (en) Mathematical models of graphical user interfaces
CN111563218A (en) Page repairing method and device
US20220229854A1 (en) Constructing ground truth when classifying data
KR101948603B1 (en) Anonymization Device for Preserving Utility of Data and Method thereof
CN110569406B (en) Configurable hot spot data automatic analysis method, device, system and medium
CN107729330B (en) Method and apparatus for acquiring data set
US11308128B2 (en) Refining classification results based on glossary relationships
US20130006683A1 (en) System and method of managing testing for a healthcare systems transition
JP6692281B2 (en) Test case generation device and test case generation method
Xiao et al. On nonparametric maximum likelihood estimation with double truncation
CN107194278B (en) A kind of data generaliza-tion method based on Skyline
KR101798377B1 (en) Method for de-identification of personal information and apparatus for the same
Ramos et al. Power-law distribution in pieces: a semi-parametric approach with change point detection

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant