KR20190010091A - 데이터의 유용성 보존을 위한 익명화 장치 및 그 방법 - Google Patents

데이터의 유용성 보존을 위한 익명화 장치 및 그 방법 Download PDF

Info

Publication number
KR20190010091A
KR20190010091A KR1020170092344A KR20170092344A KR20190010091A KR 20190010091 A KR20190010091 A KR 20190010091A KR 1020170092344 A KR1020170092344 A KR 1020170092344A KR 20170092344 A KR20170092344 A KR 20170092344A KR 20190010091 A KR20190010091 A KR 20190010091A
Authority
KR
South Korea
Prior art keywords
data
record
generalized
generalization
attribute
Prior art date
Application number
KR1020170092344A
Other languages
English (en)
Other versions
KR101948603B1 (ko
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/ko
Publication of KR20190010091A publication Critical patent/KR20190010091A/ko
Application granted granted Critical
Publication of KR101948603B1 publication Critical patent/KR101948603B1/ko

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]

Landscapes

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

Abstract

익명화 장치가 개시된다. 상기 익명화 장치는 각각이 준식별자(Quasi-Identifier) 또는 민감속성(sensitive attribute)에 의하여 분류되는 적어도 하나 이상의 데이터로 구성되는 개인에 대한 레코드의 데이터 중 준식별자의 데이터의 범위를 확장하여 상기 레코드를 일반화하는 일반화부를 포함하되, 상기 일반화부는 상기 일반화된 레코드의 제1 일반화 수준이 기 설정된 값 이하가 되도록 일반화하고, 상기 준식별자가 수치형 속성(numerical attribute)이면 상기 일반화된 레코드의 각각의 일반화된 데이터는 일반화된 데이터의 최대값과 최소값의 차이와 수치형 속성 도메인의 최대값과 최소값의 차이의 비율에 따라 결정되는 제2 일반화 수준을 가지고, 상기 준식별자가 범주형 속성(categorical attribute)이면 상기 일반화된 레코드의 각각의 일반화된 데이터는 범주형 속성에 대한 분류트리의 리프 노드(leaf node)의 개수에서 1을 뺀 값과 상기 분류트리에서 일반화된 데이터에 해당하는 노드의 리프 노드의 개수에서 1을 뺀 값의 비율에 따라 결정되는 제2 일반화 수준을 가지고, 상기 제1 일반화 수준은 상기 제2 일반화 수준의 합을 준식별자의 수(n)로 나눈 값으로 정의되고, 상기 기 설정된 값은 0에서 1사이의 실수이다.

Description

데이터의 유용성 보존을 위한 익명화 장치 및 그 방법{Anonymization Device for Preserving Utility of Data and Method thereof}
본 발명은 데이터의 익명화 장치 및 그 방법에 관한 것으로, 보다 구체적으로 일반화된 레코드의 일반화 수준이 기 설정된 값 이하가 되도록 일반화하여 데이터의 유용성을 보존하는 익명화 장치 및 그 방법에 관한 것이다.
가공되지 않은 전자 건강 레코드(Electronic Health Records, EHRs)는 민감한 정보를 포함하기 때문에 이를 게시하는 경우 개개인의 프라이버시가 침해될 우려가 있다. 개인의 프라이버시를 보존하기 위한 일반적인 방법으로서 데이터를 게시하기 전에 k-익명성(k-anonymity)과 같은 프라이버시 모델을 만족하도록 익명화하는 방법 등이 있다.
다양한 익명화 기법들 중에서 일반화는 의료/건강 데이터를 가공할 때 가장 많이 사용된다. 일반화는 불가피하게 정보의 손실을 초래하는 문제가 있으므로, 정보의 손실을 최소화하는 다양한 방법들이 제안되어 왔다. 그러나, 현존하는 일반화에 기반한 익명화 방법은 막대한 정보의 손실을 초래하고 데이터의 유용성을 보존할 수 없는 문제가 있다.
일본 등록특허 JP 5858292B2 (2015.12.25. 등록) 일본 등록특허 JP 5307499B2 (2013.07.05. 등록)
본 발명의 목적은 익명화된 데이터가 과도하게 일반화되지 않도록 할 뿐만 아니라 k-익명성을 만족하도록 하여 데이터의 유용성 및 개인의 프라이버시를 보존하고, 데이터의 진실성을 보장해주는 익명화 장치 및 그 방법을 제공하는 것이다.
본 발명의 일 실시 예에 따른 익명화 장치는 각각이 준식별자(Quasi-Identifier) 또는 민감속성(sensitive attribute)에 의하여 분류되는 적어도 하나 이상의 데이터로 구성되는 개인에 대한 레코드의 데이터 중 준식별자의 데이터의 범위를 확장하여 상기 레코드를 일반화하는 일반화부를 포함하되, 상기 일반화부는 상기 일반화된 레코드의 제1 일반화 수준이 기 설정된 값 이하가 되도록 일반화하고, 상기 준식별자가 수치형 속성(numerical attribute)이면 상기 일반화된 레코드의 각각의 일반화된 데이터는 일반화된 데이터의 최대값과 최소값의 차이와 수치형 속성 도메인의 최대값과 최소값의 차이의 비율에 따라 결정되는 제2 일반화 수준을 가지고, 상기 준식별자가 범주형 속성(categorical attribute)이면 상기 일반화된 레코드의 각각의 일반화된 데이터는 범주형 속성에 대한 분류트리의 리프 노드(leaf node)의 개수에서 1을 뺀 값과 상기 분류트리에서 일반화된 데이터에 해당하는 노드의 리프 노드의 개수에서 1을 뺀 값의 비율에 따라 결정되는 제2 일반화 수준을 가지고, 상기 제1 일반화 수준은 상기 제2 일반화 수준의 합을 준식별자의 수(n)로 나눈 값으로 정의되고, 상기 기 설정된 값은 0에서 1사이의 실수이다.
본 발명의 일 실시 예에 따른 익명화 방법은 입력부에 의해 수행되고 각각이 준식별자 또는 민감속성에 의하여 분류되는 적어도 하나 이상의 데이터로 구성되는 개인에 대한 레코드를 입력받는 단계, 일반화부에 의해 수행되고 상기 레코드의 데이터 중 준식별자의 데이터의 범위를 확장하여 상기 레코드를 일반화하는 단계를 포함하되, 상기 일반화하는 단계는 상기 일반화된 레코드 중 민감속성의 데이터를 제외한 데이터가 동일한 적어도 하나 이상의 일반화된 레코드로 구성되는 등가 클래스의 제1 일반화 수준이 기 설정된 값 이하가 되도록 일반화하고, 상기 준식별자가 수치형 속성이면 상기 일반화된 레코드의 각각의 일반화된 데이터는 일반화된 데이터의 최대값과 최소값의 차이와 수치형 속성 도메인의 최대값과 최소값의 차이의 비율에 따라 결정되는 제2 일반화 수준을 가지고, 상기 준식별자가 범주형 속성이면 상기 일반화된 레코드의 각각의 일반화된 데이터는 범주형 속성에 대한 분류트리의 리프 노드의 개수에서 1을 뺀 값과 상기 분류트리에서 일반화된 데이터에 해당하는 노드의 리프 노드의 개수에서 1을 뺀 값의 비율에 따라 결정되는 제2 일반화 수준을 가지고, 상기 제1 일반화 수준은 상기 제2 일반화 수준의 합을 준식별자의 수(n)로 나눈 값으로 정의되고, 상기 기 설정된 값은 0에서 1사이의 실수이다.
본 발명의 일 실시 예에 따르면, 일반화된 레코드의 제1 일반화 수준이 기 설정된 값 이하가 되도록 일반화함으로써 데이터의 유용성을 보존할 수 있다.
또한, 위조 레코드를 삽입하여 등가 클래스가 k-익명성을 만족하도록 함으로써 개인의 프라이버시를 보존할 수 있다.
또한, 위조 레코드에 대한 정보를 제공함으로써 데이터의 진실성을 보장할 수 있다.
도 1은 본 발명의 일 실시 예에 따른 익명화 장치의 예시적인 하드웨어 블록도이다.
도 2는 도 1에 도시된 익명화 장치의 예시적인 기능 블록도이다.
도 3은 도 2에 도시된 일반화부에 의해 익명화하려는 레코드에 대한 테이블을 도시한 것이다.
도 4는 도 2에 도시된 일반화부에 의해 일반화된 레코드에 대한 테이블을 도시한 것이다.
도 5는 범주형 속성에 대한 분류트리의 일 예를 도시한 것이다.
도 6은 도 2에 도시된 삽입부에 의해 위조 레코드를 삽입한 후의 테이블을 도시한 것이다.
도 7은 위조 레코드에 대한 정보가 포함된 테이블을 도시한 것이다.
도 8은 도 1에 도시된 익명화 장치에 의해 수행되는 익명화 방법을 설명하기 위한 흐름도이다.
도 9a는 k값을 달리하였을 때 익명화된 레코드의 RCE(Reconstruction Error Rate)값을 나타낸 그래프를 도시한 것이다.
도 9b는 기 설정된 값을 달리하였을 때 익명화된 레코드의 RCE값을 나타낸 그래프를 도시한 것이다.
본 발명에 관한 구체적인 내용의 설명에 앞서 이해의 편의를 위해 본 발명이 해결하고자 하는 과제의 해결 방안의 개요 혹은 기술적 사상의 핵심을 우선 제시한다.
이하 첨부된 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있는 실시 예를 상세히 설명한다. 그러나 이들 실시 예는 본 발명을 보다 구체적으로 설명하기 위한 것으로, 본 발명의 범위가 이에 의하여 제한되지 않는다는 것은 당업계의 통상의 지식을 가진 자에게 자명할 것이다.
본 발명이 해결하고자 하는 과제의 해결 방안을 명확하게 하기 위한 발명의 구성을 본 발명의 바람직한 실시 예에 근거하여 첨부 도면을 참조하여 상세히 설명하되, 당해 도면에 대한 설명시 필요한 경우 다른 도면의 구성요소를 인용할 수 있음을 미리 밝혀둔다. 아울러 본 발명의 바람직한 실시 예에 대한 동작 원리를 상세하게 설명함에 있어 본 발명과 관련된 공지 기능 혹은 구성에 대한 구체적인 설명 그리고 그 이외의 제반 사항이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우, 그 상세한 설명을 생략한다.
도 1은 본 발명의 일 실시 예에 따른 익명화 장치의 예시적인 하드웨어 블록도이다.
도 1을 참조하면, 익명화 장치(10)는 통신 인터페이스(101), 입력 인터페이스(103), 출력 인터페이스(105), 메모리(107), 하드디스크(109), 하나 이상의 프로세서(111) 및 시스템 버스/제어 버스(113)를 포함한다.
익명화 장치(10)는 PC(Personal Computer), 인터넷 망을 통해 액세스 가능한 서버(Server), 노트북 등으로 구현될 수 있다.
각 하드웨어 블록들을 간단히 살펴보면, 통신 인터페이스(101)는 익명화 장치(10) 외부의 장치와 통신할 수 있도록 구성된다. 통신 인터페이스(101)는 유선 또는 무선 통신을 수행하도록 구성되며 예를 들어 무선랜이나 유선 랜에 연결될 수 있도록 하는 맥(MAC) 칩을 포함한다.
입력 인터페이스(103)는 익명화 장치(10)를 제어하기 위한 사용자 입력을 수신한다. 입력 인터페이스(103)는 키보드, 마우스 등을 포함하여 익명화 장치(10)를 제어할 수 있다. 예를 들어 입력 인터페이스(103)는 일반화하려는 레코드의 입력, 레코드의 일반화 및 k-익명성 만족여부 등에 대한 사용자 입력을 수신한다.
출력 인터페이스(105)는 익명화 장치(10)에 의해서 익명화된 레코드의 결과를 출력한다. 출력 인터페이스(105)는 디스플레이, 스피커 등을 포함할 수 있다.
메모리(107)는 휘발성 메모리 및/또는 비휘발성 메모리를 포함한다. 메모리(107)는 각종 데이터와 프로그램을 저장한다. 휘발성 메모리는 각종 데이터와 프로그램의 조각(segment)을 임시로 저장하고 비휘발성 메모리는 셋업 또는 부팅에 필요한 각종 셋업 데이터와 부팅 프로그램 등을 영구히 저장하고 있다.
하드디스크(109)는 대용량 저장매체로서 각종 데이터를 저장하고 각종 프로그램들을 저장한다. 하드디스크(109)는 적어도 본 발명에 따른 익명화 방법을 수행하는 프로그램을 포함한다. 하드디스크(109)는 또한 익명화 방법의 프로그램에 이용될 데이터들을 포함한다. 이러한 데이터들은 특정 프로그램에 의해서 액세스 및 관리될 수 있다. 익명화에 이용되는 데이터들과 이 특정 프로그램은 데이터베이스로 바람직하게 구성된다.
프로세서(111)는 비휘발성 메모리나 하드디스크(109) 등에 저장된 프로그램의 프로그램 코드를 로딩하여 프로그램 코드를 실행시킬 수 있다. 프로세서(111)는 프로그램 코드의 명령어(instruction)를 실행할 수 있는 실행 유닛(Execution Unit)을 포함하여 익명화를 위한 프로그램, 익명화에 이용되는 각종 데이터를 트레이닝하기 위한 프로그램 등을 실행할 수 있다.
시스템 버스/제어 버스(113)는 각 하드웨어 블록 사이에 (제어) 데이터를 송수신할 수 있도록 구성된다. 시스템 버스/제어 버스(113)는 병렬 버스이거나 시리얼 버스 등일 수 있다.
도 2는 도 1에 도시된 익명화 장치의 예시적인 기능 블록도이다.
도 2를 참조하면, 본 발명의 일 실시 예에 따른 익명화 장치(10)는 일반화부(200), 판별부(300), 삽입부(400) 및 정보제공부(500)를 포함한다. 실시 예에 따라 익명화 장치(10)는 입력부(100)를 더 포함할 수 있다.
입력부(100)는 익명화하고자 하는 개인에 대한 레코드를 입력받을 수 있다. 여기서, 레코드는 가공되지 않은 전자 건강 레코드일 수 있다. 레코드의 각각의 데이터는 준식별자 또는 민감속성에 의하여 분류될 수 있다. 준식별자는 식별자와 같이 개인을 특정할 수는 없지만, 개인의 특성을 나타내는 정보를 의미한다. 민감속성은 데이터 분석에 있어서 중요한 속성으로서 민감속성의 데이터는 제거되거나 수정되지 않는 것이 바람직하다. 또한, 입력부(100)는 과도한 일반화를 방지하기 위하여 사용자가 임의로 설정한 기 설정된 값을 입력받을 수 있다.
도 2에 도시된 일반화부에 의해 익명화하려는 레코드에 대한 테이블을 도시한 도 3을 참조하면, 전자 건강 레코드에 대한 준식별자의 일 예로서 나이, 성별 및 우편번호가 있으며, 민감속성의 데이터의 일 예로서 병명이 있다.
일반화부(200)는 레코드의 데이터 중 준식별자의 데이터의 범위를 확장하여 레코드를 일반화한다. 일반화란 레코드의 데이터 중 준식별자의 데이터의 범위를 확장하여 좀 더 일반적인 값으로 바꿈으로써 제3자가 식별하기 어렵게 만드는 것을 의미한다. 보다 구체적으로, 수치형 속성(numerical attribute)에 해당하는 데이터 값은 범위 값으로 바꾸고, 범주형 속성(categorical attribute)에 해당하는 데이터 값은 더 상위 범주의 값으로 바꿈으로써 일반화 할 수 있다. 일반화부(200)의 구체적인 동작은 도 3 내지 도 5를 참조하여 후술하기로 한다.
판별부(300)는 등가 클래스가 k-익명성을 만족하는지 판별한다. 여기서 등가클래스는 일반화된 레코드 중 민감속성의 데이터를 제외한 데이터가 동일한 적어도 하나 이상의 일반화된 레코드로 구성된다. k-익명성은 각각의 레코드를 k-1개의 다른 레코드들로부터 식별 불가능하게 만듦으로써 프라이버시 침해를 방지하는 모델이다. 보다 구체적으로, 임의의 등가 클래스 내의 일반화된 레코드의 개수가 적어도 k개 이상이면 k-익명성을 만족한다고 볼 수 있다.
삽입부(400)는 판별부(300)를 통하여 등가 클래스가 k-익명성을 만족하지 않는 경우 k-익명성을 만족하지 않는 등가 클래스에 위조 레코드를 삽입한다. 보다 구체적으로, 삽입되는 위조 레코드는 삽입되는 등가 클래스 내의 일반화된 레코드의 데이터와 동일한 데이터를 갖는다. 다만, 위조 레코드의 민감속성의 데이터는 등가 클래스 내 민감속성의 데이터 중 임의로 선택된 어느 하나일 수 있다.
정보제공부(500)는 일반화부(200)를 통하여 일반화된 레코드 및 삽입부(400)를 통하여 삽입된 위조 레코드에 대한 정보를 제공한다. 이 때, 위조 레코드에 대한 정보는 등가 클래스의 ID, 위조 레코드의 개수 및 민감속성의 데이터일 수 있다.
다만, 상대방이 제공된 정보를 바탕으로 위조 레코드를 특정할 수 있다면 k-익명성이 침해될 수 있으므로 위조 레코드를 특정하지 못하도록 정보를 제공할 필요가 있다.
상대방이 테이블을 분석할 때 적어도 하나 이상의 임의의 등가 클래스 E1와 또 다른 등가 클래스들 Eother로 구성된 그룹 G에서, Eother에 속하고 민감속성의 데이터값 s를 갖는 위조되지 않은 레코드의 개수가 E1에 속하고 민감속성의 데이터값 s를 갖는 위조 레코드의 개수보다 많거나 같으면, 상대방은 위조 레코드가 무엇인지 특정할 수 없다. 따라서, 위와 같은 점을 고려하여 그룹 G에 있는 등가 클래스의 ID에 대한 정보를 제공함으로써 개인의 프라이버시를 보존할 수 있다.
도 4는 도 2에 도시된 일반화부에 의해 일반화된 레코드에 대한 테이블을 도시한 것이다. 도 4를 참조하면, 레코드의 데이터 중 준식별자의 데이터의 범위를 확장하여 식별할 수 없는 레코드로 일반화하였다. 일반화된 레코드의 일 예인 <[35-37], [남], [22071-23061], [폐렴]>은 나이 및 우편번호 준식별자의 데이터의 범위를 확장시킴으로써 레코드를 일반화한 것이다.
일반화된 레코드는 제1 일반화 수준을 가질 수 있고, 적어도 하나 이상의 일반화된 데이터 각각은 제2 일반화 수준을 가질 수 있다. 제1 일반화 수준은 일반화된 레코드에 포함된 각각의 일반화된 데이터의 제2 일반화 수준의 합을 준식별자의 수(n)로 나눈 값으로 정의될 수 있다.
제2 일반화 수준은 일반화된 데이터가 가지는 값으로서 준식별자가 수치형 속성이면 일반화된 데이터의 최대값과 최소값의 차이와 수치형 속성 도메인의 최대값과 최소값의 차이의 비율에 따라 결정될 수 있다.
또한, 본 발명의 일 예에 따르면 준식별자가 수치형 속성이면 제2 일반화 수준은 수학식 1에 의해 정의될 수 있다.
[수학식 1]
Figure pat00001
여기서, DA는 제2 일반화 수준, Uq와 Lq은 일반화된 데이터의 최대값과 최소값, U와 L은 수치형 속성 도메인의 최대값과 최소값.
따라서, 도 4의 테이블에서 수치형 속성 중 하나인 나이에 해당하는 데이터 [35-37]의 제2 일반화 수준은 (37 - 35)/(99 - 0) = 0.02 이다.
다음으로, 준식별자가 범주형 속성이면 제2 일반화 수준은 범주형 속성에 대한 분류트리의 리프 노드(leaf node)의 개수에서 1을 뺀 값과 상기 분류트리에서 일반화된 데이터에 해당하는 노드의 리프 노드의 개수에서 1을 뺀 값의 비율에 따라 결정될 수 있다.
또한, 본 발명의 일 예에 따르면 준식별자가 범주형 속성이면 제2 일반화 수준은 수학식 2에 의해 정의될 수 있다.
[수학식 2]
Figure pat00002
여기서, DA는 제2 일반화 수준, M은 범주형 속성에 대한 분류트리의 리프노드의 개수, Mq는 상기 분류트리에서 일반화된 데이터에 해당하는 노드의 리프노드의 개수.
도 5는 범주형 속성에 대한 분류트리의 일 예를 나타낸 것이다.
도 5를 참조하면, 범주형 속성 중 하나인 성별에 대한 분류트리에서 리프노드의 개수인 M은 2이고, 일반화된 데이터에 해당하는 노드는 *[성별]이므로 해당 노드의 리프노드의 개수인 Mq는 2이다. 따라서, 도 3의 테이블에서 범주형 속성 중 하나인 성별에 해당하는 데이터 *[성별]의 제2 일반화 수준은 (2 - 1)/(2 - 1) = 1 이다.
그러나, 일반화는 레코드의 왜곡이 불가피하므로 과도한 일반화는 익명화된 데이터를 분석함에 있어서 부정적으로 작용한다. 따라서, 본 발명의 일 실시 예에 따른 일반화 장치는 과도한 일반화를 방지하기 위하여 제1 일반화 수준을 기 설정된 값 이하가 되도록 일반화할 수 있다. 기 설정된 값은 과도한 일반화를 막기 위한 기준을 나타내는 것으로서 0 에서 1사이의 실수일 수 있다. 따라서, 본 발명의 일반화부(200)를 통하여 제1 일반화 수준이 기 설정된 값 이하가 되도록 하여 과도한 일반화를 방지함으로써 데이터의 유용성을 보존할 수 있다.
도 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 이므로 기 설정된 값 이하가 되도록 일반화 되었다.
일반화부(200)를 통하여 등가 클래스의 모든 레코드가 기 설정된 값 이하가 되도록 일반화되었더라도 일부 등가 클래스가 k-익명성을 만족하지 않을 수 있다. 따라서, 판별부(300)를 통하여 모든 등가 클래스가 k-익명성을 만족하여 익명화되었는지 판별한다. 만약 일부 등가 클래스 내의 일반화된 레코드의 개수가 k개 이하이면 k-익명성을 만족하지 않는 등가 클래스에 위조 레코드를 삽입한다.
도 6은 도 2에 도시된 삽입부에 의해 위조 레코드를 삽입한 후의 테이블을 도시한 것이다.
도 6을 참조하면, 본 발명의 일 실시 예로서 판별부(300)가 도 4의 테이블이 4-익명성을 만족하는지 여부를 판단할 경우 등가 클래스 2는 4-익명성을 만족하나, 등가 클래스 1은 등가 클래스들의 개수가 3개이므로 4-익명성을 만족하지 못한다. 따라서, 본 발명의 삽입부(400)를 통하여 등가 클래스 1에 위조 레코드인 <[35-37], [남], [22071-23061], [당뇨병]>을 삽입함으로써 4-익명성을 만족하도록 할 수 있다.
도 7은 위조 레코드에 대한 정보가 포함된 테이블을 도시한 것이다.
앞서 언급한 바와 같이 정보제공부(500)는 일반화부(200)를 통하여 일반화된 레코드 및 삽입부(400)를 통하여 삽입된 위조 레코드에 대한 정보를 제공함으로써 데이터의 진실성을 높일 수 있다. 이 때, 위조 레코드에 대한 정보는 등가 클래스의 ID, 위조 레코드의 개수 및 민감속성의 데이터일 수 있다.
다만, 상대방이 제공된 정보를 바탕으로 위조 레코드를 특정할 수 있다면 k-익명성이 침해될 수 있으므로 위조 레코드를 특정하지 못하도록 정보를 제공할 필요가 있다.
적어도 하나 이상의 임의의 등가 클래스 E1와 또 다른 등가 클래스들 Eother로 구성된 그룹 G에서, Eother에 속하고 민감속성의 데이터값 s를 갖는 위조되지 않은 레코드의 개수가 E1에 속하고 민감속성의 데이터값 s를 갖는 위조 레코드의 개수보다 많거나 같도록 등가 클래스의 ID에 대한 정보를 제공한다면 상대방은 위조 레코드를 특정할 수 없다.
도 7을 참조하면, 만일 등가 클래스의 ID에 대한 정보를 1로 준다면 상대방이 등가 클래스 1에서 민감속성의 데이터가 당뇨병인 레코드 하나를 제거함으로써 등가 클래스 1의 4-익명성이 침해될 수 있다. 따라서, 등가 클래스의 ID에 대한 정보를 1,2로 줌으로써 상대방은 위조 레코드가 등가 클래스 1에 있는지 2에 있는지 특정할 수 없다.
도 8은 도 1에 도시된 익명화 장치에 의해 수행되는 익명화 방법을 설명하기 위한 흐름도이다. 이하에서는 앞서 기재한 부분과 중복되는 설명은 생략한다.
익명화 장치(10)의 입력부(100)에 의해 수행되는 S100 단계는 각각이 준식별자 또는 민감속성에 의하여 분류되는 적어도 하나 이상의 데이터로 구성되는 개인에 대한 레코드를 입력받는 단계이다. 또한, 과도한 일반화를 방지하기 위하여 사용자가 임의로 설정한 기 설정된 값을 입력받을 수 있다.
익명화 장치(10)의 일반화부(200)에 의해 수행되는 S200 단계는 일반화된 레코드의 제1 일반화 수준이 0에서 1사이의 실수인 기 설정된 값 이하가 되도록 일반화할 수 있다. 이 때, 상기 일반화된 데이터는 상기 준식별자가 수치형 속성이면 일반화된 데이터의 최대값과 최소값의 차이와 수치형 속성 도메인의 최대값과 최소값의 차이의 비율에 따라 결정되는 제2 일반화 수준을 가지며, 상기 준식별자가 범주형 속성이면 범주형 속성에 대한 분류트리의 리프 노드의 개수에서 1을 뺀 값과 상기 분류트리에서 일반화된 데이터에 해당하는 노드의 리프 노드의 개수에서 1을 뺀 값의 비율에 따라 결정되는 제2 일반화 수준을 가진다. 또한, 상기 제1 일반화 수준은 상기 제2 일반화 수준의 합을 준식별자의 수(n)로 나눈 값으로 정의될 수 있다.
익명화 장치(10)의 판별부(300)에 의해 수행되는 S300 단계는 상기 일반화된 레코드 중 민감속성의 데이터를 제외한 데이터가 동일한 적어도 하나 이상의 일반화된 레코드로 구성되는 등가 클래스가 k-익명성을 만족하는지 판별하는 단계이다.
익명화 장치(10)의 삽입부(400)에 의해 수행되는 S400 단계는 상기 등가 클래스가 k-익명성을 만족하지 않는 경우 k-익명성을 만족하지 않는 등가 클래스에 위조 레코드를 삽입하는 단계이다.
여기에, 정보제공부(500)에 의해 수행되고, 상기 일반화된 레코드 및 상기 위조 레코드에 대한 정보를 제공하는 단계를 더 포함할 수 있다.
여기에, 상대방이 정보제공부(500)를 통하여 제공되는 정보를 바탕으로 위조 레코드를 특정할 수 없도록 그룹 G에 있는 등가 클래스의 ID에 대한 정보를 제공하기 위한 그룹핑 단계가 추가될 수 있다. 보다 구체적으로, 우선 등가 클래스들을 등가 클래스 내의 위조 레코드의 개수에 따라 정렬한다. 다음으로, 임의의 등가 클래스 E1와 다른 등가 클래스 Eother을 비교하여 Eother에 속하고 민감속성의 데이터값 s를 갖는 위조되지 않은 레코드의 개수가 E1에 속하고 민감속성의 데이터값 s를 갖는 위조 레코드의 개수보다 많거나 같으면 E1과 Eother을 그룹 G로 그룹핑할 수 있다. 이후, 그룹 G에 있는 등가 클래스의 ID에 대한 정보를 제공함으로써 상대방이 위조 레코드를 특정하지 못하도록 할 수 있다.
본 발명의 일 실시 예에 따라 익명화된 데이터의 유용성을 측정하기 위한 품질 지표로서 RCE를 이용할 수 있다. RCE는 확률 밀도 함수에 기반하여 익명화된 데이터와 원본 데이터를 비교할 수 있다. RCE는 다음과 같이 정의될 수 있다.
Figure pat00003
여기서, DS는 준식별자와 민감속성을 포함하는 차원적 공간,
Figure pat00004
는 원본 데이터의 확률 밀도 함수,
Figure pat00005
는 익명화된 데이터의 확률 밀도 함수.
도 9a는 k값을 달리하였을 때 익명화된 레코드의 RCE(Reconstruction Error Rate)값을 나타낸 그래프를 도시한 것이고, 도 9b는 기 설정된 값을 달리하였을 때 익명화된 레코드의 RCE값을 나타낸 그래프를 도시한 것이다.
도 9a에서 보는 바와 같이 k값이 클수록 RCE가 증가하는데 이는 k값이 클수록 k-익명성을 만족시키기 위하여 더 많은 수의 위조 레코드가 삽입되기 때문이다.
도 9b에서 보는 바와 같이 기 설정된 값이 감소할수록 RCE가 증가하는데 이는 기 설정된 값의 감소에 따라 제1 일반화 수준의 엄격한 제한 때문에 위조 레코드가 많이 만들어져있기 때문이다. 따라서, 유용성이 보존된 익명화는 RCE를 감소시킬 수 있음을 확인할 수 있다.
상술한 익명화 방법은 컴퓨터에서 실행될 수 있는 프로그램으로 작성가능하고, 컴퓨터로 읽을 수 있는 기록매체를 이용하여 상기 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다.
상기 다자간 연산 프로그램은 상기 기록매체에 저장되며, 상기 기록매체는 마그네틱 저장매체(예를 들면, 롬, 플로피 디스크, 하드디스크 등), 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등)와 같은 저장매체를 포함한다. 또한, 상기 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 명령어 세트가 저장되고 실행될 수 있다.
본 발명의 기술적 사상 내에서 당해 분야의 통상의 지식을 가진 자에 의해 그 변형이나 개량이 가능함은 명백하다고 할 것이다. 본 발명의 단순한 변형 내지 변경은 모두 본 발명의 영역에 속하는 것으로 본 발명의 구체적인 보호범위는 첨부된 특허청구범위에 의하여 명확해질 것이다.

Claims (9)

  1. 각각이 준식별자(Quasi-Identifier) 또는 민감속성(sensitive attribute)에 의하여 분류되는 적어도 하나 이상의 데이터로 구성되는 개인에 대한 레코드의 익명화 장치에 있어서,
    상기 레코드의 데이터 중 준식별자의 데이터의 범위를 확장하여 상기 레코드를 일반화하는 일반화부를 포함하되,
    상기 일반화부는 상기 일반화된 레코드의 제1 일반화 수준이 기 설정된 값 이하가 되도록 일반화하고,
    상기 준식별자가 수치형 속성(numerical attribute)이면 상기 일반화된 레코드의 각각의 일반화된 데이터는 일반화된 데이터의 최대값과 최소값의 차이와 수치형 속성 도메인의 최대값과 최소값의 차이의 비율에 따라 결정되는 제2 일반화 수준을 가지고,
    상기 준식별자가 범주형 속성(categorical attribute)이면 상기 일반화된 레코드의 각각의 일반화된 데이터는 범주형 속성에 대한 분류트리의 리프 노드(leaf node)의 개수에서 1을 뺀 값과 상기 분류트리에서 일반화된 데이터에 해당하는 노드의 리프 노드의 개수에서 1을 뺀 값의 비율에 따라 결정되는 제2 일반화 수준을 가지고,
    상기 제1 일반화 수준은 상기 제2 일반화 수준의 합을 준식별자의 수(n)로 나눈 값으로 정의되고,
    상기 기 설정된 값은 0에서 1사이의 실수인,
    유용성 보존을 위한 익명화 장치.
  2. 제1항에 있어서,
    상기 일반화된 레코드 중 민감속성의 데이터를 제외한 데이터가 동일한 적어도 하나 이상의 일반화된 레코드로 구성되는 등가 클래스(equivalent class)가 k-익명성(k-anonymity)을 만족하는지 판별하는 판별부를 더 포함하는 것을 특징으로 하는 유용성 보존을 위한 익명화 장치.
  3. 제2항에 있어서,
    상기 등가 클래스가 k-익명성을 만족하지 않는 경우 k-익명성을 만족하지 않는 등가 클래스에 위조 레코드를 삽입하는 삽입부를 더 포함하는 것을 특징으로 하는 유용성 보존을 위한 익명화 장치.
  4. 제3항에 있어서,
    상기 위조 레코드는 상기 민감속성의 데이터 중 임의로 선택된 어느 하나를 포함하는 것을 특징으로 하는 유용성 보존을 위한 익명화 장치.
  5. 제3항에 있어서,
    상기 일반화된 레코드 및 상기 위조 레코드에 대한 정보를 제공하는 정보제공부를 더 포함하는 것을 특징으로 하는 유용성 보존을 위한 익명화 장치.
  6. 제5항에 있어서,
    상기 위조 레코드에 대한 정보는 등가 클래스의 ID, 위조 레코드의 개수 및 민감속성의 데이터를 포함하는 것을 특징으로 하는 유용성 보존을 위한 익명화 장치.
  7. 입력부에 의해 수행되고, 각각이 준식별자 또는 민감속성에 의하여 분류되는 적어도 하나 이상의 데이터로 구성되는 개인에 대한 레코드를 입력받는 단계; 및
    일반화부에 의해 수행되고, 상기 레코드의 데이터 중 준식별자의 데이터의 범위를 확장하여 상기 레코드를 일반화하는 단계를 포함하되,
    상기 일반화하는 단계는 상기 일반화된 레코드 중 민감속성의 데이터를 제외한 데이터가 동일한 적어도 하나 이상의 일반화된 레코드로 구성되는 등가 클래스의 제1 일반화 수준이 기 설정된 값 이하가 되도록 일반화하고,
    상기 준식별자가 수치형 속성이면 상기 일반화된 레코드의 각각의 일반화된 데이터는 일반화된 데이터의 최대값과 최소값의 차이와 수치형 속성 도메인의 최대값과 최소값의 차이의 비율에 따라 결정되는 제2 일반화 수준을 가지고,
    상기 준식별자가 범주형 속성이면 상기 일반화된 레코드의 각각의 일반화된 데이터는 범주형 속성에 대한 분류트리의 리프 노드의 개수에서 1을 뺀 값과 상기 분류트리에서 일반화된 데이터에 해당하는 노드의 리프 노드의 개수에서 1을 뺀 값의 비율에 따라 결정되는 제2 일반화 수준을 가지고,
    상기 제1 일반화 수준은 상기 제2 일반화 수준의 합을 준식별자의 수(n)로 나눈 값으로 정의되고,
    상기 기 설정된 값은 0에서 1사이의 실수인,
    유용성 보존을 위한 익명화 방법.
  8. 제7항에 있어서,
    판별부에 의해 수행되고, 상기 일반화된 레코드 중 민감속성의 데이터를 제외한 데이터가 동일한 적어도 하나 이상의 일반화된 레코드로 구성되는 등가 클래스가 k-익명성을 만족하는지 판별하는 단계; 및
    삽입부에 의해 수행되고, 상기 등가 클래스가 k-익명성을 만족하지 않는 경우 k-익명성을 만족하지 않는 등가 클래스에 위조 레코드를 삽입하는 단계를 더 포함하는 것을 특징으로 하는 유용성 보존을 위한 익명화 방법.
  9. 제8항에 있어서,
    정보제공부에 의해 수행되고, 상기 일반화된 레코드 및 상기 위조 레코드에 대한 정보를 제공하는 단계를 더 포함하되,
    상기 위조 레코드에 대한 정보는 등가 클래스의 ID, 위조 레코드의 개수 및 민감속성의 데이터를 포함하는 것을 특징으로 하는 유용성 보존을 위한 익명화 방법.
KR1020170092344A 2017-07-21 2017-07-21 데이터의 유용성 보존을 위한 익명화 장치 및 그 방법 KR101948603B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170092344A KR101948603B1 (ko) 2017-07-21 2017-07-21 데이터의 유용성 보존을 위한 익명화 장치 및 그 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170092344A KR101948603B1 (ko) 2017-07-21 2017-07-21 데이터의 유용성 보존을 위한 익명화 장치 및 그 방법

Publications (2)

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

Family

ID=65277017

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170092344A KR101948603B1 (ko) 2017-07-21 2017-07-21 데이터의 유용성 보존을 위한 익명화 장치 및 그 방법

Country Status (1)

Country Link
KR (1) KR101948603B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102648905B1 (ko) 2023-02-21 2024-03-18 (주)이지서티 프라이버시 보호 수준을 설정할 수 있는 데이터 변조 방법 및 장치

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20240007529A (ko) 2022-07-08 2024-01-16 고려대학교 산학협력단 개인정보 비식별화 장치 및 방법

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5307499B2 (ja) 2008-10-06 2013-10-02 日本電信電話株式会社 データ集計システム、撹乱装置、再構築装置、データ集計方法、撹乱プログラム、および再構築プログラム
JP5858292B2 (ja) 2010-11-09 2016-02-10 日本電気株式会社 匿名化装置及び匿名化方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101804426B1 (ko) 2016-06-17 2017-12-05 고려대학교 산학협력단 Gpgpu를 이용한 데이터 익명화의 병렬적 처리 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5307499B2 (ja) 2008-10-06 2013-10-02 日本電信電話株式会社 データ集計システム、撹乱装置、再構築装置、データ集計方法、撹乱プログラム、および再構築プログラム
JP5858292B2 (ja) 2010-11-09 2016-02-10 日本電気株式会社 匿名化装置及び匿名化方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102648905B1 (ko) 2023-02-21 2024-03-18 (주)이지서티 프라이버시 보호 수준을 설정할 수 있는 데이터 변조 방법 및 장치

Also Published As

Publication number Publication date
KR101948603B1 (ko) 2019-02-15

Similar Documents

Publication Publication Date Title
US20200356901A1 (en) Target variable distribution-based acceptance of machine learning test data sets
US10360405B2 (en) Anonymization apparatus, and program
US20200050968A1 (en) Interactive interfaces for machine learning model evaluations
US10831927B2 (en) Noise propagation-based data anonymization
US10817621B2 (en) Anonymization processing device, anonymization processing method, and program
TW202029079A (zh) 異常群體識別方法及裝置
Zhang et al. SynTEG: a framework for temporal structured electronic health data simulation
US20130138698A1 (en) Identity information de-identification device
US20220100899A1 (en) Protecting sensitive data in documents
TW201737072A (zh) 一種對應用程序進行項目評估的方法及系統
US20220245175A1 (en) Metadata classification
CN108596410B (zh) 一种风控事件自动处理方法及装置
JP2021507360A (ja) データを非特定化する方法、データを非特定化するためのシステム、および非データを特定化するためのコンピュータ・プログラム
US20220229854A1 (en) Constructing ground truth when classifying data
AU2017200270B1 (en) Automated form generation and analysis
US11308128B2 (en) Refining classification results based on glossary relationships
KR101948603B1 (ko) 데이터의 유용성 보존을 위한 익명화 장치 및 그 방법
US20130006683A1 (en) System and method of managing testing for a healthcare systems transition
Xiao et al. On nonparametric maximum likelihood estimation with double truncation
KR101798377B1 (ko) 개인정보의 비식별화 방법 및 장치
US11227288B1 (en) Systems and methods for integration of disparate data feeds for unified data monitoring
US11194929B2 (en) Risk identification of personally identifiable information from collective mobile app data
JP2016184213A (ja) 数値データを匿名化する方法及び数値データ匿名化サーバ
CN110647454A (zh) 确定***用户访问信息的方法及装置
CN110765118B (zh) 一种数据的修订方法、修订装置及可读存储介质

Legal Events

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