KR20180097760A - 추론 공격에 대한 프라이버시 보호 실시간 서비스를 가능하게 하는 시스템 및 방법 - Google Patents

추론 공격에 대한 프라이버시 보호 실시간 서비스를 가능하게 하는 시스템 및 방법 Download PDF

Info

Publication number
KR20180097760A
KR20180097760A KR1020187023778A KR20187023778A KR20180097760A KR 20180097760 A KR20180097760 A KR 20180097760A KR 1020187023778 A KR1020187023778 A KR 1020187023778A KR 20187023778 A KR20187023778 A KR 20187023778A KR 20180097760 A KR20180097760 A KR 20180097760A
Authority
KR
South Korea
Prior art keywords
data
privacy
type
real
time data
Prior art date
Application number
KR1020187023778A
Other languages
English (en)
Other versions
KR102154739B1 (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 삼성전자주식회사
Publication of KR20180097760A publication Critical patent/KR20180097760A/ko
Application granted granted Critical
Publication of KR102154739B1 publication Critical patent/KR102154739B1/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
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • 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/604Tools and structures for managing or administering access control systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1475Passive attacks, e.g. eavesdropping or listening without modification of the traffic monitored
    • 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/03Protecting confidentiality, e.g. by encryption
    • H04W12/033Protecting confidentiality, e.g. by encryption of the user plane, e.g. user's traffic

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Automation & Control Theory (AREA)
  • Telephonic Communication Services (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)

Abstract

일 실시예는, 보호할 적어도 한 유형의 프라이버시 민감 데이터를 식별하는 일반적인 사적 데이터를 수신하는 단계, 적어도 한 유형의 실시간 데이터를 수집하는 단계, 및 상기 적어도 한 유형의 실시간 데이터를 제2 장치에 전송하는 단계와 연관된 추론 프라이버시 위험 레벨을 결정하는 단계를 포함하는, 방법을 제공한다. 상기 추론 프라이버시 위험 레벨은 상기 적어도 한 유형의 실시간 데이터를 전송하는 단계로부터 상기 일반적인 사적 데이터를 추론하는 위험의 정도를 나타낸다. 상기 방법은, 상기 적어도 한 유형의 실시간 데이터를 상기 제2 장치에 전송하는 단계 전에, 상기 추론 프라이버시 위험 레벨에 기반하여 상기 적어도 한 유형의 실시간 데이터의 적어도 일부를 변형하는 단계를 더 포함한다.

Description

추론 공격에 대한 프라이버시 보호 실시간 서비스를 가능하게 하는 시스템 및 방법
하나 이상의 실시예들은 일반적으로 프라이버시 보호에 관한 것이며, 보다 구체적으로, 추론 공격(inference attacks)에 대한 프라이버시 보호 실시간 서비스를 가능하게 하는 시스템 및 방법에 관한 것이다.
서비스 제공자들은 사용자들에게 다양한 실시간 서비스를 제공한다. 실시간 서비스의 예들에는 지능형 비서(intelligent assistant), 타겟 광고(targeted advertising), 미디어 스트리밍 등과 같은 개인화 서비스들(personalized services)이 포함된다.사용자에게 제공되는 개인화 서비스는 상기 사용자에 관한 데이터("사용자 데이터")에 기반할 수 있다. 종종, 서비스 제공자들은 사용자들에게 고품질의 개인화 서비스를 제공하기 위해 상당한 양의 사용자 데이터를 필요로 한다.
예를 들면, 휴대 전화 및 사물인터넷(Internet of Things: IoT) 장치들과 같은 전자 장치들은 실시간 장치 감지 데이터(real-time device sensed data)를 모니터링 및 수집하고, 상기 실시간 장치 감지 데이터를 서비스 제공자들에게 공개하며(release), 상기 서비스 제공자들로부터 개인화 서비스들을 수신한다. 사용자들은 상기 서비스 제공자들에게 공개할 사용자 데이터의 유형들(예를 들면, 프라이버시 위험이 낮거나 없는 것으로 간주되는 사용자 데이터)을 선택할 수 있다. 불행하게도, 사적인 사용자 데이터는 프라이버시 위험이 낮거나 없는 것으로 간주되는 사용자 데이터로부터 추론될 수 있다.
전통적으로, 사용자들은 그들의 사적인 사용자 데이터를 보호하기 위해 서비스 제공자들에게 의존한다. 그러나, 사적인 사용자 데이터가 공개되는 결과를 가져오는 다수의 데이터 침해들(breaches) 및 해킹들(hacks)(예를 들면, 악의적인 공격자들이 의도적으로 클라우드 컴퓨팅 환경 또는 서비스 제공자와 연관된 서버에 침입하여 상기 서비스 제공자에 의해 유지되는 사적인 사용자 데이터를 훔치는 것)로 인해, 최근에 데이터 프라이버시에 대한 사용자 우려가 커져왔다. 또한, 악의적인 공격자들은 서비스 제공자들에게 제공되는 사용자 데이터(예를 들면, 프라이버시 위험이 낮거나 없는 것으로 간주되는 사용자 데이터)를 도청할 수도 있고, 상기 제공되는 사용자 데이터로부터 사적인 사용자 데이터를 추론할 수도 있다. 그러므로, 사용자들이 그들의 사적인 사용자 데이터를 보호하기 위해 순전히 서비스 제공자들에게 의존할 필요가 없도록, 새로운 해결책을 갖는 것이 유익할 것이다.
데이터 프라이버시에 대한 사용자들의 우려 증가와 데이터 프라이버시와 관련된 정부의 규제 강화를 고려하면, 데이터 프라이버시를 보호하고 사용자들에게 그들의 사적인 사용자 데이터에 대한 더 많은 제어권을 제공하는 기술이 요구된다. 예를 들면, 전자 장치들이 실시간 장치 감지 데이터에 데이터 변형(distortion)을 적용하고 상기 변형된 실시간 장치 감지 데이터를 서비스 제공자들에게 공개하여, 사적인 사용자 데이터가 상기 변형된 실시간 장치 감지 데이터로부터 추론될 수 없도록 하는 것이 바람직하다. 또한, 상기 실시간 장치 감지 데이터에 적용되는 데이터 변형의 정도/레벨은 상기 서비스 제공자들로부터 수신되는 개인화 서비스들의 품질을 훼손하지 않아야 한다.
일 실시예는, 보호할 적어도 한 유형의 프라이버시 민감 데이터(privacy-sensitive data)를 식별하는 일반적인 사적 데이터(general private data)를 수신하는 단계, 적어도 한 유형의 실시간 데이터를 수집하는 단계, 및 상기 적어도 한 유형의 실시간 데이터를 제2 장치에 전송하는 단계와 연관된 추론 프라이버시 위험 레벨(inference privacy risk level)을 결정하는 단계를 포함하는, 방법을 제공한다. 상기 추론 프라이버시 위험 레벨은 상기 적어도 한 유형의 실시간 데이터를 전송하는 단계로부터 상기 일반적인 사적 데이터를 추론하는 위험의 정도를 나타낸다. 상기 방법은, 상기 적어도 한 유형의 실시간 데이터를 상기 제2 장치에 전송하는 단계 전에, 상기 추론 프라이버시 위험 레벨에 기반하여 상기 적어도 한 유형의 실시간 데이터의 적어도 일부를 변형하는(distorting) 단계를 더 포함한다.
상기 양태들 및 기타 양태들은, 첨부된 도면들과 함께, 예시적인 실시예들에 대한 다음의 설명으로부터 명백해지고 보다 용이하게 이해될 것이다:
도 1은 예시적 데이터 침해(breach)를 도시한다.
도 2는 하나 이상의 실시예들에 있어서, 장치상의(on-device) 일반 프라이버시 제어 관리자를 포함하는 예시적 전자 장치를 도시한다.
도 3a는 하나 이상의 실시예들에 있어서, 예시적 프라이버시 제어 관리자를 상세히 도시한다.
도 3b는 하나 이상의 실시예들에 있어서, 제1 사용자 인터페이스 유닛에 의해 생성되는 예시적 사용자 인터페이스를 도시한다.
도 3c는 하나 이상의 실시예들에 있어서, 제2 사용자 인터페이스 유닛에 의해 생성되는 예시적 사용자 인터페이스를 도시한다.
도 4는 하나 이상의 실시예들에 있어서, 예시적 프라이버시 위험 분석 유닛을 상세히 도시한다.
도 5는 하나 이상의 실시예들에 있어서, 예시적 데이터 변형 유닛을 상세히 도시한다.
도 6은 하나 이상의 실시예들에 있어서, 예시적 데이터 변형 엔진을 상세히 도시한다.
도 7은 하나 이상의 실시예들에 있어서, 프라이버시 제어 관리자에 의해 생성되는 제1 예시적 사용자 인터페이스를 도시한다.
도 8은 하나 이상의 실시예들에 있어서, 프라이버시 제어 관리자에 의해 생성되는 제2 예시적 사용자 인터페이스를 도시한다.
도 9는 하나 이상의 실시예들에 있어서, 프라이버시 제어 관리자에 의해 생성되는 제3 예시적 사용자 인터페이스를 도시한다.
도 10은 하나 이상의 실시예들에 있어서, 자동화된 추론 위험 평가 및 데이터 변형에 기반하여 일반적인 사적 데이터의 데이터 프라이버시 보호를 제공하기 위해 제1 장치 상에서 수행되는 프로세스의 예시적 순서도이다.
도 11은 개시된 실시예들을 구현하는 데 유용한 컴퓨터 시스템을 포함하는 정보 처리 시스템을 도시한 상위-레벨(high-level) 블록도이다.
일 실시예는, 보호할 적어도 한 유형의 프라이버시 민감 데이터를 식별하는 일반적인 사적 데이터를 수신하는 단계, 적어도 한 유형 실시간 데이터를 수집하는 단계, 및 상기 적어도 한 유형의 실시간 데이터를 제2 장치에 전송하는 단계와 연관된 추론 프라이버시 위험 레벨을 결정하는 단계를 포함하는, 방법을 제공한다. 상기 추론 프라이버시 위험 레벨은 상기 적어도 한 유형의 실시간 데이터를 전송하는 단계로부터 상기 일반적인 사적 데이터를 추론하는 위험의 정도를 나타낸다. 상기 방법은, 상기 적어도 한 유형의 실시간 데이터를 상기 제2 장치에 전송하는 단계 전에, 상기 추론 프라이버시 위험 레벨에 기반하여 상기 적어도 한 유형의 실시간 데이터의 적어도 일부를 변형하는 단계를 더 포함한다.
상기 적어도 한 유형의 프라이버시 민감 데이터는 다음의 정보: 인종 출신, 민족 출신, 하나 이상의 정치적 견해들, 하나 이상의 종교적 신념들, 하나 이상의 철학적 신념들, 하나 이상의 건강 상태들, 나이, 및 성별 중 적어도 하나를 포함할 수 있다.
상기 추론 프라이버시 위험 레벨은 부분적으로 상기 적어도 한 유형의 프라이버시 민감 데이터에 대한 적어도 하나의 특정된 프라이버시 염려(concern) 레벨에 기반한다.
상기 방법은 위험 평가 모델을 유지하는 단계를 더 포함하고, 상기 추론 프라이버시 위험 레벨은 부분적으로 상기 위험 평가 모델에 더 기반한다.
상기 제2 장치는 서비스 제공자일 수 있다.
상기 방법은: 상기 서비스 제공자에 연관된 애플리케이션을 실행하는 단계; 상기 적어도 한 유형의 실시간 데이터 중 어느 것이 상기 애플리케이션에 의해 요청되는지를 결정하는 단계; 상기 제1 장치의 디스플레이 상의 인터페이스를 제공하는 단계에 있어서, 상기 인터페이스는 상기 애플리케이션에 의해 요청되는 각 유형의 실시간 데이터를 식별하는 리스트를 포함하는 것인, 단계; 및 상기 사용자 인터페이스를 통해, 상기 애플리케이션에 의해 요청된 각 유형의 실시간 데이터에 대해 특정된 프라이버시 염려 레벨을 수신하는 단계를 더 포함하고,
상기 추론 프라이버시 위험 레벨은 부분적으로 상기 애플리케이션에 의해 요청되는 각 유형의 실시간 데이터에 대한 각각의 특정된 프라이버시 염려 레벨에 더 기반한다.
상기 방법은 서버로부터 수신되는 하나 이상의 갱신들(updates)에 기반하여 상기 위험 평가 모델을 갱신하는 단계를 더 포함한다.
다른 실시예는, 적어도 한 유형의 실시간 데이터를 수집하도록 구성된 적어도 하나의 센서, 하나 이상의 프로세서들, 및 상기 하나 이상의 프로세서들에 의해 실행될 때 상기 하나 이상의 프로세서들로 하여금 동작들을 수행하도록 하는 명령어들을 저장하는 저장 장치를 포함하는 시스템을 제공한다. 상기 동작들은 보호할 적어도 한 유형의 프라이버시 민감 데이터를 식별하는 일반적인 사적 데이터를 수신하는 단계, 및 상기 적어도 한 유형의 실시간 데이터를 제1 장치에 전송하는 단계와 연관된 추론 프라이버시 위험 레벨을 결정하는 단계를 포함한다. 상기 추론 프라이버시 위험 레벨은 상기 적어도 한 유형의 실시간 데이터를 전송하는 단계로부터 상기 일반적인 사적 데이터를 추론하는 위험의 정도를 나타낸다. 상기 동작들은, 상기 적어도 한 유형의 실시간 데이터를 상기 제1 장치에 전송하는 단계 전에, 상기 추론 프라이버시 위험 레벨에 기반하여 상기 적어도 한 유형의 실시간 데이터의 적어도 일부를 변형하는 단계를 더 포함한다.
상기 제1 장치는 다음: 모바일 스마트폰, 모바일 태블릿, 컴퓨터, 랩탑, 스마트 TV, 또는 모바일 스마트워치 중 하나를 포함할 수 있다.
일 실시예는, 보호할 적어도 한 유형의 프라이버시 민감 데이터를 식별하는 일반적인 사적 데이터를 수신하는 단계, 적어도 한 유형의 실시간 데이터를 수집하는 단계, 및 상기 적어도 한 유형의 실시간 데이터를 제2 장치에 전송하는 단계와 연관된 추론 프라이버시 위험 레벨을 결정하는 단계를 포함하는 방법을 수행하기 위한 명령어들을 포함하는, 비일시적 컴퓨터 판독가능 저장 매체를 제공한다. 상기 추론 프라이버시 위험 레벨은 상기 적어도 한 유형의 실시간 데이터를 전송하는 단계로부터 상기 일반적인 사적 데이터를 추론하는 위험의 정도를 나타낸다 상기 방법은, 상기 적어도 한 유형의 실시간 데이터를 상기 제2 장치에 전송하는 단계 전에, 상기 추론 프라이버시 위험 레벨에 기반하여 상기 적어도 한 유형의 실시간 데이터의 적어도 일부를 변형하는 단계를 더 포함한다.
하나 이상의 실시예들의 이들 및 다른 특징들, 양태들 및 이점들은 하기의 설명, 첨부된 청구항, 및 첨부 도면들을 참조하여 이해될 것이다.
하기의 설명은 하나 이상의 실시예들의 일반적인 원리를 예시하기 위한 것이며 본 명세서에서 청구하는 발명 개념을 제한하고자 한 것이 아니다. 또한, 본 명세서에서 설명되는 특정한 특징들은, 다양한 가능한 조합들 및 순열들 각각에 있어서, 설명되는 다른 특징들과 결합하여 이용될 수 있다. 본 명세서에서 구체적으로 달리 정의되지 않는 한, 모든 용어들은 본 발명이 속하는 기술분야의 숙련된 자에 의해 이해되고 및/또는 사전, 논문 등에서 정의되는 바와 같은 의미들 뿐만 아니라 본 명세서로부터 암시되는 의미들을 포함하는 가능한 가장 광범위한 해석이 이루어져야 한다.
하나 이상의 실시예들은 일반적으로 프라이버시 보호에 관한 것이며, 보다 구체적으로, 추론 공격(inference attacks)에 대한 프라이버시 보호 실시간 서비스에 관한 것이다. 일 실시예는, 보호할 적어도 한 유형의 프라이버시 민감 데이터를 식별하는 일반적인 사적 데이터(general private data)를 수신하는 단계, 적어도 한 유형의 실시간 데이터를 수집하는 단계, 및 상기 적어도 한 유형의 실시간 데이터를 제2 장치에 전송하는 단계와 연관된 추론 프라이버시 위험 레벨(inference privacy risk level)을 결정하는 단계를 포함하는, 방법을 제공한다. 상기 추론 프라이버시 위험 레벨은 상기 적어도 한 유형의 실시간 데이터를 전송하는 단계로부터 상기 일반적인 사적 데이터를 추론하는 위험의 정도를 나타낸다. 상기 방법은, 상기 적어도 한 유형의 실시간 데이터를 상기 제2 장치에 전송하는 단계 전에, 상기 추론 프라이버시 위험 레벨에 기반하여 상기 적어도 한 유형의 실시간 데이터의 적어도 일부를 변형하는(distorting) 단계를 더 포함한다.
다른 실시예는, 적어도 한 유형의 실시간 데이터를 수집하도록 구성된 적어도 하나의 센서, 하나 이상의 프로세서들, 및 상기 하나 이상의 프로세서들에 의해 실행될 때 상기 하나 이상의 프로세서들로 하여금 동작들을 수행하도록 하는 명령어들을 저장하는 저장 장치를 포함하는 시스템을 제공한다. 상기 동작들은 보호할 적어도 한 유형의 프라이버시 민감 데이터를 식별하는 일반적인 사적 데이터를 수신하는 단계, 및 상기 적어도 한 유형의 실시간 데이터를 제1 장치에 전송하는 단계와 연관된 추론 프라이버시 위험 레벨을 결정하는 단계를 포함한다. 상기 추론 프라이버시 위험 레벨은 상기 적어도 한 유형의 실시간 데이터를 전송하는 단계로부터 상기 일반적인 사적 데이터를 추론하는 위험의 정도를 나타낸다. 상기 동작들은, 상기 적어도 한 유형의 실시간 데이터를 상기 제1 장치에 전송하는 단계 전에, 상기 추론 프라이버시 위험 레벨에 기반하여 상기 적어도 한 유형의 실시간 데이터의 적어도 일부를 변형하는 단계를 더 포함한다.
일 실시예는, 보호할 적어도 한 유형의 프라이버시 민감 데이터를 식별하는 일반적인 사적 데이터를 수신하는 단계, 적어도 한 유형 실시간 데이터를 수집하는 단계, 및 상기 적어도 한 유형의 실시간 데이터를 제2 장치에 전송하는 단계와 연관된 추론 프라이버시 위험 레벨을 결정하는 단계를 포함하는 방법을 수행하기 위한 명령어들을 포함하는, 비일시적 컴퓨터 판독가능 저장 매체를 제공한다. 상기 추론 프라이버시 위험 레벨은 상기 적어도 한 유형의 실시간 데이터를 전송하는 단계로부터 상기 일반적인 사적 데이터를 추론하는 위험의 정도를 나타낸다. 상기 방법은, 상기 적어도 한 유형의 실시간 데이터를 상기 제2 장치에 전송하는 단계 전에, 상기 추론 프라이버시 위험 레벨에 기반하여 상기 적어도 한 유형의 실시간 데이터의 적어도 일부를 변형하는 단계를 더 포함한다.
본 명세서에서, 용어 "실시간 장치 감지 데이터(real-time device sensed data)"는 일반적으로 전자 장치에 의해 모니터링 및 수집되는 하나 이상의 유형들의 실시간 장치상의(on-device) 데이터를 말한다. 실시간 장치 감지 데이터는 전자 장치(즉, 상기 실시간 장치 감지 데이터를 모니터링 및 수집한 전자 장치)에 대해 특정적이다. 전자 장치에 의해 모니터링 및 수집되는 실시간 장치 감지 데이터의 예들에는 센서 데이터, 위치 데이터 등이 포함될 수 있다. 본 명세서에서, 용어들 "실시간 장치 감지 데이터" 및 "실시간 데이터"는 상호교환적으로 사용될 수 있다.
본 명세서에서, 용어 "일반적인 사적 데이터"는 일반적으로 어떤 전자 장치에도 특정적이지 않은 하나 이상의 유형들의 데이터(즉, 전자 장치에 의해 반드시 모니터링 및 수집되는 것은 아닌 데이터)를 말한다. 일반적인 사적 데이터는, 인종 또는 민족 출신, 정치적 견해들, 종교적 또는 철학적 신념들, 건강 상태, 나이, 성별 등과 같이, 사용자와 연관된 사적 사용자 데이터를 포함할 수 있다. 일반적인 사적 데이터는 실시간 장치 감지 데이터로부터 추론될 수 있다.
본 명세서에서, 용어 "프라이버시 위험"은 적어도 한 유형의 실시간 데이터를 전송하는 단계로부터 일반적인 사적 데이터를 추론하는 위험의 정도를 나타낸다. 본 명세서에서, 용어들 "프라이버시 위험" 및 "추론 프라이버시 위험 레벨"은 상호교환적으로 사용될 수 있다.
본 명세서에서, 용어들 "변형하다(distort)" 및 "데이터 변형(data distortion)"은, 데이터에 적용될 때 데이터를 제1 형태(form)로부터 제2 형태로 조작/변형하는(manipulate/transform), 데이터 처리 기법을 나타낸다; 상기 적용되는 데이터 처리 기법은 데이터 암호화를 포함할 필요는 없다.
도 1은 예시적 데이터 침해(breach)를 도시한다 사용자(30)와 연관된 전자 장치(50)는 연결(예를 들면, 무선 연결, 유선 연결, 또는 이 두 가지의 조합)을 통해 원격 서비스 제공자(100)와 데이터를 교환할 수 있다. 예를 들면, 상기 원격 서비스 제공자(100)로부터 개인화 서비스(personalized service)를 수신하기 위해, 상기 전자 장치(50)는 상기 사용자(30)와 연관된 실시간 데이터를 상기 연결을 통해 상기 원격 서비스 제공자(100)에게 공개할(release) 수 있다.
상기 공개된 사용자 데이터에 대한 데이터 프라이버시는 다수의 방법으로 훼손될 수 있다. 예를 들면, 비인가(unauthorized) 제3자(40)(예를 들면, 악의적 공격자)는 상기 연결을 도청하여, 상기 사용자(30)에 관한 일반적인 사적 데이터가 상기 연결을 통해 공개된 상기 사용자 데이터로부터 추론되는 추론 공격을 개시할 수 있다. 다른 예로서, 비인가 제3자(40)는 상기 원격 서비스 제공자(100)의 원격 서버 또는 클라우드 컴퓨팅 환경에 불법적으로 침입하여, 데이터 유출(leakage)을 초래할 수 있다; 상기 사용자(30)에 관한 일반적인 사적 데이터는 상기 데이터 유출로부터 추론될 수 있다.
종래의 데이터 프라이버시 보호 기법들은 데이터 침해들과 연관된 프라이버시 위험들이 당연한 것이라고 가정한다. 이들 기법들은 상이한 유형들의 사용자 데이터에 대한 사용자 특정 프라이버시 염려 레벨들(user-specified privacy concern levels)을 고려하지 않는다. 또한, 종래의 데이터 프라이버시 보호 기법들은 상이한 애플리케이션들 및/또는 서비스들에 보편적으로 적용될 수 없다.
도 2는, 하나 이상의 실시예들에 있어서, 장치상의 일반 프라이버시 제어 관리자(250)를 포함하는 예시적 전자 장치(50)를 도시한다. 상기 전자 장치(50)는 연결(예를 들면, 무선 연결, 유선 연결, 또는 이 두 가지의 조합)을 통해 하나 이상의 원격 서비스 제공자들(100)과 데이터를 교환하도록 구성된다.
본 명세서에서 차후 상세히 설명하는 바와 같이, 상기 프라이버시 제어 관리자(250)는: (1) 사용자(30)가 하나 이상의 유형들의 실시간 장치 감지 데이터에 대한 하나 이상의 프라이버시 염려 레벨들을 특정하는 사용자 입력을 제공할 수 있게 하는 하나 이상의 사용자 인터페이스들을 제공하고; (2) 사용자(30)가 일반적인 사적 데이터에 대한 하나 이상의 프라이버시 염려 레벨들을 특정하는 사용자 입력을 제공할 수 있게 하는 하나 이상의 사용자 인터페이스들을 제공하고; (3) 하나 이상의 유형들의 실시간 장치 감지 데이터를 원격 서비스 제공자(100)에게 공개하는 단계와 연관된 하나 이상의 프라이버시 위험들을 식별하기 위해 하나 이상의 자동화된 추론 위험 평가들(assessments)을 수행하고; (4) 하나 이상의 유형들의 실시간 장치 감지 데이터를 원격 서비스 제공자(100)에게 공개하는 단계와 연관된 하나 이상의 프라이버시 위험들을 사용자(30)에게 알려주는 하나 이상의 사용자 인터페이스들을 제공하고; 및 (5) 원격 서비스 제공자(100)에 의해 요청되는 하나 이상의 유형들의 실시간 장치 감지 데이터에 대해 하나 이상의 데이터 변형들을 수행하여, 상기 변형된 데이터가 상기 원격 서비스 제공자(100)에게 공개되도록, 상기 하나 이상의 데이터 변형들을 수행하도록 구성된다. 상기 원격 서비스 제공자(100)는 오직 상기 변형된 데이터만 볼 수 있다; 일반적인 사적 데이터는 상기 변형된 데이터로부터 추론될 수 없다. 상기 프라이버시 제어 관리자(250)는 상기한 특징들 중 하나 또는 전부를 수행하도록 구성된다.
상기 원격 서비스 제공자(100)는 상기 원격 서비스 제공자(100)가 상기 전자 장치(50)로부터 수신하는 데이터가 변형된다는 것을 인식하지 못 할 수 있다. 상기 원격 서비스 제공자(100)는 전자 장치(50)로부터 수신되는 데이터를, 상기 전자 장치(50)로 회답하여 제공할, 서비스들에 매핑하는 모델(예를 들면, 서비스 제공자 모델(353))을 유지한다
상기 프라이버시 제어 관리자(250)는 상기 전자 장치(50)와 원격 서비스 제공자 간에 교환되는 데이터를 보호하기 위한 통일된 프레임워크(unified framework)를 제공한다. 상기 프라이버시 제어 관리자(250)는, 모바일 스마트폰, 사물인터넷(Internet of Things: IoT) 장치, 스마트 텔레비전 등과 같은, 상이한 유형들의 전자 장치들(50)에 통합될 수 있다. 상기 프라이버시 제어 관리자(250)는 상이한 유형들의 원격 서비스 제공자들(100)과 호환가능하고, 상기 원격 서비스 제공자(100)에 있어서 어떠한 변경도 요구하지 않는다. 상기 프라이버시 제어 관리자(250)는 상이한 애플리케이션들 및/또는 서비스들(예를 들면, 건강 및 피트니스 애플리케이션들, 사회적 서비스들, 여행 애플리케이션들 등)과 함께 사용하기에 적합하다.
상기 프라이버시 제어 관리자(250)는 상기 전자 장치(50)에 의해 모니터링 및/또는 수집되는 상이한 유형들의 실시간 장치 감지 데이터(예를 들면, 헬스케어(healthcare) 서비스를 위해 IoT 장치들에 의해 수집되는 센서 데이터, 관심 지점(Points of Interest: PoI) 추천을 위해 모바일 스마트폰들에 의해 수집되는 위치 데이터, 텔레비전/영화 추천 및/또는 광고 서비스를 위해 스마트 텔레비전들에 의해 수집되는 텔레비전/영화 데이터)를 보호하도록 구성된다.
상기 프라이버시 제어 관리자(250)는, 상기 전자 장치(50)에 의해 수집되는 하나 이상의 유형들의 실시간 장치 감지 데이터가 원격 서비스 제공자(100)에게 공개되기 전에 상기 데이터가 상기 전자 장치(50) 상에서 변형되는(즉, 교란되고(purturbed) 및/또는 익명화되는(anonymized)), 비신뢰(untrusted) 서버 설정을 채택한다. 일 실시예에서, 공개 전에 실시간 장치 감지 데이터를 변형하는 단계는 상기 실시간 장치 감지 데이터와 일반적인 사적 데이터 간의 상관관계를 깨뜨려, 일반적인 사적 데이터가 상기 변형된 실시간 장치 감지 데이터로부터 추론될 수 없도록 할 수 있다.
상기 프라이버시 제어 관리자(250)는 자동화된 추론 위험 평가들 및 데이터 변형들에 기반하여 일반적인 사적 데이터의 지속적인 데이터 프라이버시 보호를 제공한다; 상기 추론 위험 평가들 및 데이터 변형들은 서비스 제공자들(100)과 연관된 변경들(예를 들면, 제공되는 보다 새로운 서비스들, 서비스 제공자들(100)로부터 요청되는 더 많은 정보 등) 및 공개된 변형된 데이터의 분석, 수신된 서비스들의 품질 등에 기반하여 시간이 지남에 따라 갱신된다. 상기 프라이버시 제어 관리자(250)는 상기 전자 장치(50)의 사용자(30)가 프라이버시 염려 레벨들에 대해 보다 더 안심할 수 있게 한다.
예를 들면, 원격 서비스 제공자(100)가 전자 장치(50)로부터 하나 이상의 유형들의 실시간 장치 감지 데이터를 요청할 때, 상기 프라이버시 제어 관리자(250)는 상기 요청된 데이터를 상기 원격 서비스 제공자(100)에게 공개하는 단계와 연관된 하나 이상의 프라이버시 위험들을 식별하기 위해 호출된다. 상기 프라이버시 제어 관리자(250)는 상기 식별된 프라이버시 위험들에 기반하여 상기 요청된 데이터의 적어도 일부를 변형하고, 상기 변형된 데이터를 상기 원격 서비스 제공자(100)에게 공개한다. 변형된 데이터를 공개함으로써 데이터 프라이버시가 보호된다; 나아가, 상기 요청된 데이터는 상기 원격 서비스 제공자(100)로부터 수신되는 서비스들의 품질을 훼손하지 않는 정도로 변형된다.
상기 전자 장치(50)는 디스플레이(240)를 더 포함한다 일 실시예에서, 상기 디스플레이(240)는 비디오, 그래픽, 텍스트, 및 기타 데이터 유형들을 표시하도록 구성되는 전자 표시 장치(602)(도 11)를 포함한다. 상기 디스플레이(240)는 상기 프라이버시 제어 관리자(250)에 의해 제공되는 하나 이상의 사용자 인터페이스들을 표시하도록 구성된다.
상기 전자 클라이언트 장치(50) 는 하나 이상의 입/출력(input/output: I/O) 유닛들(270)을 더 포함한다. 일 실시예에서, 상기 I/O 유닛들(270)은, 키보드, 터치스크린, 키패드, 포인팅 장치, 마우스 등과 같은, 적어도 하나의 사용자 인터페이스 장치(606)(도 11)를 포함한다. 사용자(30)는 상기 I/O 유닛들(270)을 통해 입력을 기입/특정할(enter/specify) 수 있다.
상기 전자 클라이언트 장치(50) 는 하나 이상의 저장 유닛들(220)을 더 포함한다. 일 실시예에서, 상기 저장 유닛들(220)은 저장 장치(604)(도 11)(예를 들면, 하드 디스크 드라이브) 및/또는 착탈식 저장 장치(605)(예를 들면, 착탈식 저장 드라이브, 착탈식 메모리 모듈, 자기 테이프 드라이브, 광디스크 드라이브, 저장된 컴퓨터 소프트웨어 및/또는 데이터를 갖는 컴퓨터 판독가능 매체)를 포함한다. 상기 저장 유닛들(220)은, 상기 전자 클라이언트 장치(50) 에 의해 수집되는 실시간 장치 감지 데이터를 포함하는 제1 데이터베이스(221) 및 일반적인 사적 데이터를 포함하는 제2 데이터베이스(222)와 같이, 하나 이상의 데이터베이스들을 유지한다. 본 명세서에서 차후 상세히 설명하는 바와 같이, 상기 저장 유닛들(220)은 전체 위험 분석 모델(331)(도 4) 및 추론 모델(332)(도 4)을 더 유지한다.
일 실시예에서, 상기 데이터베이스(222) 상에 유지되는 상기 일반적인 사적 데이터는, 오디오 입력, 텍스트 입력, 제스처 입력, 드롭다운(dropdown) 리스트로부터의 사용자 선택, 자유형식(freeform) 입력 등과 같은, 하나 이상의 유형들의 사용자 입력을 통해 얻어진다. 일 실시예에서, 상기 일반적인 사적 데이터는 공개적으로 이용가능한 데이터(예를 들면, 발표된 연구 또는 설문 등)에 기반하여 오프라인으로 학습된다. 다른 실시예에서, 상기 일반적인 사적 데이터는, 추론 모델(예를 들면, 도 4의 상기 추론 모델(332)) 및/또는 상기 전자 장치(50)의 사용, 특히, 입력들 및 출력들에 기반하여, 장치 상에서 학습된다. 또 다른 실시예에서, 상기 일반적인 사적 데이터는 상기 전자 장치(50)에 관한 시스템 디폴트 정보로부터 얻어진다. 상기 전자 장치(50)에 관한 상기 시스템 디폴트 정보는, 상기 장치(50)의 미디어 액세스 제어(media access control: MAC) 주소와 같은, 상기 장치(50)의 하나 이상의 장치 특성들을 포함할 수 있다. 일 실시예에서, 상기 전자 장치(50)는 상기 일반적인 사적 데이터와 연관된 프라이버시 모델(333)(도 4)를 유지한다.
일 실시예에서, 하나 이상의 애플리케이션들(260)이 상기 전자 장치(50)에 상주한다. 각각의 애플리케이션(260)은 특정한 원격 서비스 제공자(100)와 연관된다; 상기 애플리케이션(260)은 상기 원격 서비스 제공자(100)에 의해 제공되는 하나 이상의 서비스들을 요청하기 위해 호출될 수 있다.
상기 전자 장치(50)는 하나 이상의 센서들(230)을 더 포함한다. 각각의 센서(230)는 특정 유형의 실시간 장치 감지 데이터를 모니터링 및 수집하도록 구성된다. 각각의 센서(230)는 하드웨어 센서 또는 소프트웨어 센서이다 하드웨어 센서의 예들에는 관성 센서, 자기 센서, 기압계, WiFi 센서, 블루투스 센서, GPS, 마이크 등이 포함될 수 있다. 소프트웨어 센서의 예들에는 다음: 상기 전자 장치(50)를 통해 수행되는 온라인 검색들의 검색 히스토리의 기록(log); 상기 전자 장치(50)에 상주하는 다른 소프트웨어 애플리케이션들(예를 들면, 쇼핑 애플리케이션들, 모바일 결제 애플리케이션들 등)을 사용한 기록; 상기 전자 장치(50) 상에서 사용되는 브라우저의 브라우저 히스토리의 기록; 등 중 하나 이상을 위해 구성된 소프트웨어 애플리케이션들이 포함된다.
예를 들면, 상기 전자 장치(50)가 IoT 장치라면, 상기 실시간 장치 감지 데이터는 센서 데이터(예를 들면, 온도 등과 같이, 상황 정보를 식별하는 데이터)를 포함한다. 다른 예로서, 상기 전자 장치(50)가 모바일 스마트폰이라면, 상기 실시간 장치 감지 데이터는 위치 데이터(예를 들면, 상기 모바일 스마트폰의 하나 이상의 위치 행적들(traces)을 식별하는 데이터)를 포함한다. 또 다른 예로서, 상기 전자 장치(50)가 스마트 텔레비전이라면, 상기 실시간 장치 감지 데이터는 텔레비전/영화 데이터(예를 들면, 상기 스마트 텔레비전에서 시청한 하나 이상의 텔레비전 프로그램들/영화들을 식별하는 데이터)를 포함한다.
본 명세서에서 차후 상세히 설명하는 바와 같이, 상기 전자 장치(50)는 서버(210)로부터 새로운 또는 갱신된 위험 분석 추론 모델을 수신하도록 더 구성된다; 상기 위험 분석 추론 모델은 하나 이상의 유형들의 실시간 장치 감지 데이터를 원격 서비스 제공자(100)에게 공개하는 단계와 연관된 하나 이상의 프라이버시 위험들을 식별하는 데 이용된다.
상기 프라이버시 제어 관리자(250)는 데이터 프라이버시를 관리하는 부담을 완화하고, 데이터 프라이버시 및 원격 서비스 제공자(100)로부터 수신되는 서비스들의 품질 두 가지 모두를 훼손하지 않고 상기 전자 장치(50)와 상기 원격 서비스 제공자(100) 간의 원활한 정보 공유를 가능하게 한다.
도 3a는, 하나 이상의 실시예들에 있어서, 예시적 프라이버시 제어 관리자(250)를 상세히 도시한다. 상기 프라이버시 제어 관리자(250)는 제1 사용자 인터페이스 유닛(320)을 포함한다. 상기 제1 사용자 인터페이스 유닛(320)은, 사용자(30)가 일반적인 사적 데이터에 대한 하나 이상의 프라이버시 염려 레벨들을 특정하는 사용자 입력을 제공할 수 있게 하는, 적어도 하나의 사용자 인터페이스를 생성하도록 구성되는 소프트웨어 구성요소이다.
상기 프라이버시 제어 관리자(250)는, 상기 원격 서비스 제공자(100)에 관한 정보에 기반하여, 상기 서비스 제공자(100)에 의해 요청되는 하나 이상의 유형들의 실시간 장치 감지 데이터를 결정하도록 구성되는 제2 사용자 인터페이스 유닛(310)을 더 포함한다. 예를 들면, 상기 원격 서비스 제공자(100)에 관한 상기 정보는 상기 원격 서비스 제공자(100)로부터 다운로드되는 서비스 제공자 설명으로부터 얻을 수 있다. 상기 서비스 제공자 설명은 개인화 서비스를 제공하기 위해 상기 원격 서비스 제공자(100)에 의해 요청될 수 있는 실시간 장치 감지 데이터를 식별한다. 다른 예로서, 상기 원격 서비스 제공자(100)에 관한 상기 정보는 상기 원격 서비스 제공자(100)와 연관된 애플리케이션(260)에 대한 애플리케이션 코드의 코드 분석으로부터 얻을 수 있다. 예를 들면, 상기 애플리케이션(260)이 건강 애플리케이션이라면, 상기 건강 애플리케이션에 대한 애플리케이션 코드의 코드 분석에 의해, BMI 등과 같은, 실시간 장치 감지 데이터를 얻기 위한 하나 이상의 데이터 액세스들이 식별될 수 있다. 상기 제2 사용자 인터페이스 유닛(310)은 요청된 각 유형의 실시간 장치 감지 데이터를 식별하는 적어도 하나의 사용자 인터페이스를 생성하도록 더 구성되며, 상기 사용자(30)가, 요청된 각 유형의 실시간 장치 감지 데이터에 대해, 상응하는 프라이버시 염려 레벨을 특정하는 사용자 입력을 제공할 수 있게 한다.
상기 프라이버시 제어 관리자(250)는, 상기 요청된 데이터를 상기 원격 서비스 제공자(100)에게 공개하는 단계와 연관된 하나 이상의 프라이버시 위험들을 식별하기 위해, 하나 이상의 자동화된 추론 위험 평가들을 수행하도록 구성되는 프라이버시 위험 분석 유닛(330)을 더 포함한다. 상기 위험 평가들은 다음: 상기 일반적인 사적 데이터에 대한 상기 프라이버시 염려 레벨들; 요청된 각 유형의 실시간 장치 감지 데이터에 대한 각각의 프라이버시 염려 레벨; 상기 일반적인 사적 데이터; 및 요청된 각 유형의 실시간 장치 감지 데이터에 기반한다.
상기 프라이버시 제어 관리자(250)는 상기 식별된 프라이버시 위험들이 미리 결정된 문턱값(threshold)을 초과하는지 여부를 결정하도록 구성되는 알림(notification) 유닛(340)을 더 포함한다. 상기 식별된 프라이버시 위험들이 상기 미리 결정된 문턱값을 초과한다는 결정에 응답하여, 상기 알림 유닛(340)은 상기 사용자(30)에게 상기 식별된 프라이버시 위험들을 알려주는 알림을 생성하도록 더 구성된다. 상기 알림은 상기 사용자(30)가 두 가지 옵션들: (1) 상기 요청된 데이터를 변형하지 않고 상기 요청된 데이터를 상기 원격 서비스 제공자(100)에게 공개하는 것; 또는 (2) 상기 요청된 데이터에 하나 이상의 변형들을 적용하고 상기 변형된 데이터를 상기 원격 서비스 제공자(100)에게 공개하는 것 중 하나를 선택하도록 더 프롬프팅한다. 상기 미리 결정된 문턱값을 초과하지 않으면, 상기 요청된 데이터는 데이터 변형 없이 상기 서비스 제공자(100)에게 공개될 수 있다.
상기 알림 유닛(340)은 또한, 더 많은 데이터가 공개될 때 프라이버시 위험들에 있어서의 변경, 서비스 제공자들(100)에 의해 제공되는 새로운 또는 갱신된 서비스들(예를 들면, 상기 서비스 제공자들(100)에 의해 더 많은 데이터가 요청됨), 서비스 제공자들(100)과 연관된 새로운 또는 갱신된 애플리케이션들(260) 등과 같은, 하나 이상의 변경들을 상기 사용자(30)에게 알려주는 알림을 생성하도록 구성된다.
상기 프라이버시 제어 관리자(250)는 데이터 변형 유닛(350)을 더 포함한다. 상기 사용자(30)가 상기 요청된 데이터에 하나 이상의 변형들을 적용하기로 선택하면, 상기 데이터 변형 유닛(350)은 상기 요청된 데이터에 대해 상기 데이터 변형들을 수행하기 위해 호출된다. 그 다음에 상기 변형된 데이터는 상기 원격 서비스 제공자(100)에게 공개된다. 상기 데이터 변형들은 다음: 상기 식별된 프라이버시 위험들; 상기 일반적인 사적 데이터; 및 요청된 각 유형의 실시간 장치 감지 데이터에 기반한다. 상기 데이터 변형 유닛(350)은, 상기 일반적인 사적 데이터가 상기 변형된 데이터로부터 추론될 수 없도록, 상기 요청된 데이터를 변형하도록 구성된다.
도 3B는, 하나 이상의 실시예들에 있어서, 상기 제1 사용자 인터페이스 유닛(320)에 의해 생성되는 예시적 사용자 인터페이스(411)를 도시한다. 상기 사용자 인터페이스(411)는 사용자(30)가, 나이, 성별 등과 같은, 하나 이상의 유형들의 일반적인 사적 데이터에 대한 하나 이상의 프라이버시 염려 레벨들을 특정하는 사용자 입력을 제공할 수 있게 한다. 예를 들면, 도 3b에 도시한 바와 같이, 각 유형의 일반적인 사적 데이터에 대해, 상기 사용자(30)는 "사적임(Private)" 체크박스 또는 "비-사적임(Non-Private)" 체크박스를 선택함으로써 상응하는 프라이버시 염려 레벨을 특정할 수 있다. 본 발명은 도 3b에 도시한 상기 사용자 인터페이스(411)에 제한되지 않는다; 다른 유형의 사용자 인터페이스들이 상기 제1 사용자 인터페이스 유닛(320)에 의해 생성될 수 있다.
도 3c는, 하나 이상의 실시예들에 있어서, 상기 제2 사용자 인터페이스 유닛(310)에 의해 생성되는 예시적 사용자 인터페이스(412)를 도시한다. 상기 사용자 인터페이스(412)는 사용자(30)가, 혈당 레벨, 혈압 등과 같이, 애플리케이션(260)에 의해 요청되는 하나 이상의 유형들의 실시간 장치 감지 데이터에 대한 하나 이상의 프라이버시 염려 레벨들을 특정하는 사용자 입력을 제공할 수 있게 한다. 예를 들면, 도 3c에 도시한 바와 같이, 요청된 각 유형의 실시간 장치 감지 데이터에 대해, 상기 사용자(30)는 "사적임" 체크박스 또는 "비-사적임" 체크박스를 선택함으로써 상응하는 프라이버시 염려 레벨을 특정할 수 있다. 본 발명은 도 3c에 도시한 상기 사용자 인터페이스(412)에 제한되지 않는다; 다른 유형의 사용자 인터페이스들이 상기 제2 사용자 인터페이스 유닛(310)에 의해 생성될 수 있다.
도 4는, 하나 이상의 실시예들에 있어서, 예시적 프라이버시 위험 분석 유닛(330)을 상세히 도시한다. 상기 프라이버시 위험 분석 유닛(330)은 원격 서비스 제공자(100)에게 공개된 실시간 장치 감지 데이터로부터 일반적인 사적 데이터를 추론하는 프라이버시 위험들을 평가하도록 구성된다.
본 명세서에서, 용어 "노이지 데이터(noisy data)"는, 구조화되지 않은 텍스트와 같이, 기계들에 의해 올바르게 이해 및 해석될 수 없는 의미 없는 데이터를 나타낸다.
상기 프라이버시 위험 분석 유닛(330)은 전체(full) 위험 분석 추론 모델(331)을 포함한다. 상기 전체 위험 분석 추론 모델(331)은 복수의 사용자들(30)로부터의 데이터에 기반하여 오프라인으로 학습된다; 상기 복수의 사용자들(30)로부터의 상기 데이터는, 상기 전체 위험 분석 추론 모델(331)이 무시하도록 훈련되는, 노이지 데이터 샘플들을 포함할 수 있다.
일 실시예에서, 상기 전자 장치(50)에는 상기 전체 위험 분석 추론 모델(331)이 미리 로딩되어(pre-loaded) 있다. 다른 실시예에서, 상기 전체 위험 분석 추론 모델(331)은, 원격 서버(210)로부터 상기 전체 위험 분석 추론 모델(331)의 최신 버전을 다운로드함으로써, 상기 전자 장치(50)에 주기적으로 로딩된다. 상기 전체 위험 분석 추론 모델(331)은, 복수의 사용자들(30)로부터 수신되는 최신 데이터에 기반하여, 상기 원격 서버(210) 상에서 오프라인으로 주기적으로 훈련될 수 있다.
상기 프라이버시 위험 분석 유닛(330)은 절단된(truncated) 위험 분석 추론 모델(332)을 더 포함한다. 상기 절단된 위험 분석 추론 모델(332)은 상기 전체 위험 분석 추론 모델(331)의 축소 버전을 나타낸다. 상기 프라이버시 위험 분석 유닛(330)은 상기 절단된 위험 분석 추론 모델(332)에 기반하여 위험 평가를 수행한다.
일 실시예에서, 상기 절단된 위험 분석 추론 모델(332)을 얻기 위해 장치상의 축소(on-device reduction)가 상기 전체 위험 분석 추론 모델(331)에 적용되는 정도는 일반적인 사적 데이터에 대한 프라이버시 염려 레벨들에 기반한다.
본 명세서에서, 용어 "애플리케이션들의 범주(category of applications)"는 관련되어 있는 하나 이상의 애플리케이션들(260)(예를 들면, 하나 이상의 건강 관련 애플리케이션들(260))을 나타낸다.
다른 실시예에서, 애플리케이션들의 각 범주는 상응하는 절단된 위험 분석 추론 모델(332)을 가진다. 상기 상응하는 절단된 위험 분석 추론 모델(332)은 상기 애플리케이션들의 범주에 의해 요청되는 각 유형의 실시간 장치 감지 데이터에 대한 프라이버시 염려 레벨들에 특정적이다. 구체적으로, 상기 절단된 위험 분석 추론 모델(332)을 얻기 위해 장치상의 축소가 상기 전체 위험 분석 추론 모델(331)에 적용되는 정도는 상기 애플리케이션들의 범주에 의해 요청되는 각 유형의 실시간 장치 감지 데이터에 대해 특정되는 프라이버시 염려 레벨들에 기반한다.
예를 들면, 상기 관련 애플리케이션들(260)의 범주가 심박수(heart rate), 혈압, 및 혈당 레벨과 같은 실시간 장치 감지 데이터를 요청하는 하나 이상의 건강 관련 애플리케이션들을 포함하는 경우, 상기 상응하는 절단된 위험 분석 추론 모델(332)은 상기 요청된 실시간 장치 감지 데이터에 대해 특정되는 프라이버시 염려 레벨들에 기반한다.
절단된 위험 분석 추론 모델(332)은, 적어도 하나의 프라이버시 염려 레벨이 변경될 때(예를 들면, 애플리케이션(260)에 의해 요청되는 새로운 허가들(permissions)에 대한 응답에 따른 변경), 새로운 절단된 위험 분석 추론 모델(332)로 갱신된다. 일 실시예에서, 상기 전체 위험 분석 추론 모델(331)은 상기 전자 장치(50) 상에 유지되며, 상기 변경된 적어도 하나의 프라이버시 염려 레벨을 설명하는 새로운 절단된 위험 분석 추론 모델(332)을 얻기 위해, 장치상의 축소가 상기 유지되는 상기 전체 위험 분석 추론 모델(331)에 적용된다. 다른 예에서, 상기 전체 위험 분석 추론 모델(331)의 최신 버전은 원격 서버(210)로부터 상기 전자 장치(50)로 다운로드되며, 상기 변경된 적어도 하나의 프라이버시 염려 레벨을 설명하는 새로운 절단된 위험 분석 추론 모델(332)을 얻기 위해, 장치상의 축소가 상기 다운로드된 전체 위험 분석 추론 모델(331)에 적용된다.
상기 프라이버시 위험 분석 유닛(330)은 프라이버시 모델(333)을 더 포함한다. 상기 프라이버시 모델(333)은, 공개적으로 이용가능한 데이터(예를 들면, 발표된 연구 또는 설문 등)에 기반하여 오프라인으로 학습되거나, 상기 절단된 위험 분석 추론 모델(332) 및/또는 상기 전자 장치(50)의 사용(예를 들면, 입력들 및 출력들)에 기반하여 장치상에서 학습되거나, 또는 상기 전자 장치(50)에 관한 시스템 디폴트 정보로부터 얻어지는, 일반적인 사적 데이터를 나타낸다.
도 5는, 하나 이상의 실시예들에 있어서, 예시적 데이터 변형 유닛(350)을 상세히 도시한다. 상기 데이터 변형 유닛(350)은, 입력으로서, 다음: (1) 서비스 제공자(100)에 의해 요청되는 각 유형의 실시간 장치 감지 데이터; (2) 일반적인 사적 데이터; (3) 상기 요청된 데이터에 대한 프라이버시 염려 레벨들; (4) 상기 일반적인 사적 데이터 대한 프라이버시 염려 레벨들; (5) 상기 원격 서비스 제공자(100)에 특정적인 절단된 위험 분석 추론 모델(332); 및 (6) 상기 원격 서비스 제공자(100)에게 이전에 공개된 데이터와 상기 원격 서비스 제공자(100)로부터 회답으로 수신된 서비스들 간의 상관관계를 나타내는 서비스 제공자 모델(353)을 각각 수신하도록 구성되는 데이터 변형 엔진(351)을 포함한다. 상기 데이터 변형 엔진(351) 은, 상기 수신된 입력들에 기반하여, 상기 요청된 데이터에 하나 이상의 데이터 변형들을 적용하도록 더 구성된다.
일 실시예에서, 상기 서비스 제공자 모델(353)은, 상기 원격 서비스 제공자(100)로부터 상기 서비스 제공자 모델(353)을 다운로드함으로써, 상기 전자 장치(50) 상에 로딩된다.
다른 실시예에서, 상기 서비스 제공자 모델(353)은 상기 전자 장치(50)에서 학습된다. 구체적으로, 상기 원격 서비스 제공자(100)로부터의 서비스들과 교환하여 데이터가 상기 원격 서비스 제공자(100)에게 공개될 때마다, 상기 서비스 제공자 모델(353)을 계산 및 갱신하도록 구성되는 계산 유닛(352)을 더 포함한다. 상기 원격 서비스 제공자(100)로부터 수신되는 서비스들의 품질은 사용자 입력에 기반하여 결정될 수 있다(예를 들면, 수신된 서비스들의 품질에 관한 등급(rating), 점수(score) 또는 기타 입력 유형을 제공하도록 상기 사용자(30)에게 프롬프팅됨). 시간이 지남에 따라, 상기 서비스 제공자 모델(353)은 서비스들과 교환되는 데이터의 지속적인 공개와 함께 적합화된다(adapt). 상기 서비스 제공자 모델(353)이 데이터 공개들 및 수신되는 서비스들의 히스토리에 기반하여 훈련과 함께 확립됨에 따라, 상기 원격 서비스 제공자(100)로부터 수신되는 서비스들의 품질은 시간이 지남에 따라 향상될 것이다. 예를 들면, 상기 데이터 변형 엔진(351) 은 상기 서비스 제공자 모델(353)에 기반하여 상기 원격 서비스 제공자(100)에 의해 제공되는 서비스의 품질을 훼손하지 않는 최대 데이터 변형 정도를 결정할 수 있고, 상기 결정된 최대 데이터 변형 정도에 따라 상기 요청된 데이터의 적어도 일부를 변형할 수 있다.
일 실시예에서, 조건부 랜덤 필드(conditional random field: CRF) 모델에 대한 최대 사후(Maximum A Posteriori: MAP) 파라미터 학습과 같은, 기존 모델 접근법이 상기 서비스 제공자 모델(353)을 갱신하는 데 이용될 수 있다. 구체적으로, 이전 CRF 모델이 상기 서비스 제공자 모델(353)로서 설정될 수 있고, 상기 CRF 모델에 대한 하나 이상의 모델 파라미터들이 새로운 데이터에 기반한 최대 우도(maximum likelihood)를 이용하여 갱신된다.
도 6은, 하나 이상의 실시예들에 있어서, 예시적 데이터 변형 엔진(351)을 상세히 도시한다. 본 명세서에서 차후 상세히 설명하는 바와 같이, 상기 데이터 변형 엔진(351)은 선형화된(linearized) 모델을 구축하도록 구성되는 구축/갱신(construct/updata) 유닛(363)을 포함한다. 일 실시예에서, 상기 구축/갱신 유닛(363)은 상기 서비스 제공자 모델(353)에 기반하여 선형화된 모델을 구축한다. 다른 실시예에서, 상기 구축/갱신 유닛(363)은 상기 프라이버시 모델(333)에 기반하여 선형화된 모델을 구축한다.
상기 데이터 변형 엔진(351)은 의사(pseudo) 데이터 변형 엔진(362) 및 프라이버시 유출 비교 유닛(364)를 더 포함한다. 상기 의사 데이터 변형 엔진(362)은, 절단된 위험 분석 추론 모델(332) 및 상기 구축/갱신 유닛(363)에 의해 구축되는 선형화된 모델에 기반하여, 의사 변형된 데이터를 반복적으로 생성하도록 구성된다.
상기 프라이버시 유출 비교 유닛(364)은 현재 반복에서 생성된 의사 변형된 데이터가 이전 반복에서 생성된 의사 변형된 데이터와 비교하여 더 적은 데이터 프라이버시를 유출하는지를 결정하도록 구성된다. 상기 프라이버시 유출 비교 유닛(364)이 데이터 프라이버시 유출이 감소될 수 없다고 결정하면, 현재 반복에서 생성된 상기 의사 변형된 데이터는, 변형된 데이터로서 상기 원격 서비스 제공자(100)에게 공개하기 위해, 출력 유닛(361)에 제공된다. 상기 프라이버시 유출 비교 유닛(364)이 데이터 프라이버시 유출이 감소될 수 있다고 결정하면, 상기 선형화된 모델이 상기 구축/갱신 유닛(363)을 통해 갱신되고, 상기 의사 데이터 변형 엔진(362)은 상기 절단된 위험 분석 추론 모델(332) 및 상기 갱신된 선형화된 모델에 기반하여 새로운 의사 변형된 데이터를 생성하도록 트리거링된다.
상기 데이터 변형 엔진(351)에 의해 구현되는 예시적 데이터 변형 알고리즘이 하기 표 1에서 제공되는 표기법을 사용하여 다음에서 설명된다.
표기 설명
f n개의 특징들의 세트 {f1, ..., fn}. 각각의 특징 fi는 한 유형의 실시간 장치 감지 데이터(예를 들면, 자이로스코프 데이터)이거나 또는 상기 유형의 실시간 장치 감지 데이터로부터 추출된 특징(예를 들면, 통계적 특징)일 수 있다.
입력 데이터 도메인
F 전체 입력 데이터 도메인 로부터 파생되고 n-차원 특징들과 연관된 특징 도메인을 나타내는 개별 랜덤 변수들의 세트 {F1, ..., Fn}
X 랜덤 변수
Ω(X) 랜덤 변수 X의 표본 공간(sample space)
d 입력 데이터, 여기서 d∈. 각각의 입력 데이터 d에 대해, 상기 전자 장치(50)는 상기 입력 데이터 d를 나타내는 n-차원 특징 벡터 (d1, ..., dn)를 유지하며, 여기서 di∈Ω(Fi)이다.
d s 입력 데이터 d에 상응하는 n-차원 비-사적 특징 벡터. 프라이버시 보호를 위해, 상기 원격 서비스 제공자(100)는, 각각의 입력 데이터 d에 대해, (ds 1, ..., ds n)으로 표시되는 n-차원 비-사적 특징 벡터 d s 를 유지하며, 여기서 상기 전자 장치(50)가 특징 i를 상기 원격 서비스 제공자에게 공개하면 ds i=di이고, 그렇지 않으면 ds i는 알 수 없다.
fs 상기 전자 장치(50)가 상기 원격 서비스 제공자(100)에게 공개하는 비-사적 특징들의 세트, 여기서 fs={i|di≠?}⊆f
Fs fs에 대한 개별 랜덤 변수들(discrete random variables)의 세트. 본 명세서에서, fs 및 Fs 는 상호교환적으로 사용될 수 있다.
fp 상기 전자 장치(50)가 상기 원격 서비스 제공자(100)에게 공개하지 않은 프라이버시 민감 특징들의 세트, 여기서 fp=f\fs
Π 상기 전자 장치(50)의 프라이버시 도메인을 나타내는 개별 랜덤 변수들의 세트, 여기서 Π={P1, ..., Pi}이고, 각각의 랜덤 변수 Pi는 한 유형의 사적 정보(예를 들면, 나이, 성별 등)를 나타낸다. 상기 전자 장치(50)가 원본 데이터 특징들을 보호하도록 구성된 경우 Π=F이다.
Y 효용성(Utility)
P(Fs) 프라이버시 개념(Privacy notion)
U(Fs) 효용성 개념(Utility notion)
U(Y,Fs) 정보 이득(Information gain)
Σ 분류자(classifier) 알고리즘
C 클래스들의 세트 {c1, ..., cm}
θ 사용자 특정 프라이버시 염려 레벨들에 대한 문턱값 θ(즉, 프라이버시 요건)
본 명세서에서, 용어 "정보 이득(information gain)"은 상기 원격 서비스 제공자(100)에게 공개된 비-사적 특징들의 세트 Fs가 주어진 유틸리티 Y에 대한 불확실성(uncertainty)의 감소를 나타낸다.
본 명세서에서, 용어 "프라이버시 개념(privacy notion)"은, 상기 전자 장치(50)가 비-사적 특징들의 세트 Fs를 상기 원격 서비스 제공자(100)에게 공개한 후, 상기 전자 장치(50)의 프라이버시 도메인 Π의 (정보 게인을 통한) 데이터 프라이버시 유출의 척도(measure)를 나타낸다.
예측가능성(predictability)을 정량화하기 위해, 프라이버시는 상기 원격 서비스 제공자(100)에게 공개된 비-사적 특징들의 세트 Fs가 주어진 상기 프라이버시 도메인 Π의 조건부 엔트로피(conditional entropy)로 정의될 수 있다. 조건부 엔트로피는 하기에 제공되는 식 (1)에 따라 나타낼 수 있다:
Figure pct00001
(1)
프라이버시 개념 P(Fs)는 하기에 제공되는 식 (2)에 따라 나타낼 수 있다.
Figure pct00002
(2)
식 (2)에서 상기 원격 서비스 제공자(100)에게 공개된 비-사적 특징들의 세트 Fs가 주어진 프라이버시 도메인 Π에 대한 불확실성 손실(uncertainty loss)이 측정된다. H(Π)가 공개된 특징들의 상이한 세트들 Fs에 대해 일정함에 따라, P(Fs)H(Π| Fs )의 최적 해들(optimal solutions)은 동일하다. 즉, OPT(P(Fs))=OPT(H(Π|Fs))이다.
상기 전자 장치(50)의 사용자(30)는 P( Fs )<θ를 요구하는 특정 프라이버시 염려 레벨들을 갖는다고 가정한다.
일 실시예에서, 상기에 제공된 식 (2)는, 일반적인 사적 데이터가 변형된 실시간 장치 감지 데이터로부터 추론될 수 없도록, 상기 데이터 변형 엔진(351)이 실시간 장치 감지 데이터와 상기 일반적인 사적 데이터 간의 상호관계를 깨기 위해 사용하는 문턱값을 나타낸다.
본 명세서에서, 용어 "효용성 개념(utility notion)"은, 상기 전자 장치(50)가 비-사적 특징들의 세트 Fs를 상기 원격 서비스 제공자(100)에게 공개한 후, 상기 원격 서비스 제공자(100)에 의해 회신되는 서비스들의 품질의 척도(즉, 상기 공개된 비-사적 특징들의 세트 Fs의 효용성의 척도)를 나타낸다.
정보 이득 U( Y,Fs )는 하기에 제공되는 식 (3)에 따라 나타낼 수 있다:
Figure pct00003
(3)
상기 원격 서비스 제공자(100)는 각 입력 데이터 d C의 클래스에 매핑하기 위해 분류자(classifier) 알고리즘 Σ를 적용한다. 상기 분류자 알고리즘 Σ는 하기에 제공되는 식 (4)에 따라 나타낼 수 있다:
Figure pct00004
(4)
상기 데이터 변형 엔진(351)에 의해 구현되는 상기 데이터 변형 알고리즘은 적어도 다음의 목적들을 만족시킨다: (1) 상기 전자 장치(50)는 최소량의 정보를 상기 원격 서비스 제공자(100)에게 개시/공개함으로써 상기 전자 장치(50)의 프라이버시 도메인 Π를 최대한으로 보호하고; 및 (2) 상기 원격 서비스 제공자(100)는 상기 전자 장치(50)로부터 수신한 각각의 입력 데이터에 대한 일정 예측 또는 서비스를 학습하며, 여기서 상기 예측 또는 서비스는 상기 원격 서비스 제공자(100)에 의해 결정되는 함수 S이다.
일 실시예에서, 상기 데이터 변형 엔진(351)은 상기 효용성 개념 U( Fs )에 종속되는 상기 프라이버시 개념 P( Fs )를 최대화함으로써 상기 원격 서비스 제공자(100)에게 공개할 비-사적 특징들의 세트 Fs를 선택한다.
다른 실시예에서, 상기 데이터 변형 엔진(351)은, 하기에 제공되는 식 (5)로 나타내는 바와 같이, 상기 프라이버시 개념 P( Fs )에 종속되는 효용성 개념 U( Fs )를 최대화함으로써 상기 원격 서비스 제공자(100)에게 공개할 비-사적 특징들의 세트 Fs를 선택한다:
maximize U( Y,Fs )
subject to P( Π,Fs )≤θ (5)
본 명세서에서, 각각의 출력이 오직 상기 원격 서비스 제공자(100)에게 공개되는 상기 비-사적 특징들의 세트 Fs에만 관련되므로, 표기법 P( Π,Fs )P( Fs )는 간결함을 위해 상호교환적으로 사용될 수 있다. 각각의 출력이 오직 상기 원격 서비스 제공자(100)에게 공개되는 상기 비-사적 특징들의 세트 Fs에만 관련되므로, 표기법 U(Y,Fs)U(Fs)도 또한 간결함을 위해 상호교환적으로 사용될 수 있다.
일 실시예에서, 상기 데이터 변형 엔진(351)에 의해 구현되는 상기 데이터 변형 알고리즘은 내장형 반복 알고리즘(embedded iterative algorithm: EIA)이다. 하기 표 2는 상기 데이터 변형 엔진(351)에 의해 구현되는 상기 EIA를 위한 예시적 의사 코드(pseudo-code)를 제공한다.
입력: 특징 도메인(feature domain) F, 프라이버시 요건(privacy requirement)
Figure pct00005


출력: 비-사적 특징 세트 F s 를 포함하는 변형된 데이터

Figure pct00006

표 2에 나타낸 바와 같이, 하나의 반복 세트("내부 반복들")가 다른 반복 세트("외부 반복들")에 내장되며, 여기서 상기 내부 반복들 및 외부 반복들은 각각 라인 4 내지 라인 7 및 라인 1 내지 라인 9로 표시된다. 표 2의 라인 1에 나타낸 바와 같이, 상기 원격 서비스 제공자(100)에게 공개할 비-사적 특징들의 세트는 초기에
Figure pct00007
로 설정된다.
각각의 외부 반복에서, 상기 프라이버시 개념 P( Fs )는, 이전 외부 반복 t-1에서 선택된 비-사적 특징들의 세트 Fs T -1 에 기반한, 더 단순한 목적 함수
Figure pct00008
로 대체된다. 상기 더 단순한 목적 함수
Figure pct00009
는 하기에 제공되는 식 (6)에 따라 나타낼 수 있다:
Figure pct00010
(6)
일 실시예에서, 상기 구축/갱신 유닛(363)은 상기에 제공된 식 (6)에 따라 선형화된 모델을 구축한다. 상기 프라이버시 개념 P( Fs )가 상기 효용성 개념 U( Fs )에 종속되어 최대화되면, 상기 구축/갱신 유닛(363)은 상기 프라이버시 모델(333)에 기반하여 선형화된 프라이버시 모델을 구축한다. 이와 달리, 상기 효용성 개념 U(Fs)가 상기 프라이버시 개념 P( Fs )에 종속되어 최대화되면, 상기 구축/갱신 유닛(363)은 상기 서비스 제공자 모델(353)에 기반하여 선형화된 서비스 제공자 모델을 구축한다.
상기 더 단순한 목적 함수
Figure pct00011
는 선형일 수 있어, 상기에 제공된 식 (6)을 푸는 복잡성을 감소시킬 수 있다. 각각의 외부 반복은 하기에 제공되는 식 (7)을 푸는 것을 목표로 한다:
maximize U(Fs)
subject to (7).
상기 더 단순한 목적 함수
Figure pct00012
가 모듈형(modular)임에 따라, 상기 원격 서비스 제공자(100)에게 공개할 비-사적 특징들의 세트 Fs T 로부터 반복적으로 선택할 각각의 내부 반복에서 탐욕 알고리즘(greedy algorithm)이 적용된다. 구체적으로, 각각의 내부 반복에서, 효용성 U를 최대화하는 특징 f는,
Figure pct00013
가 될 때까지, 상기 비-사적 특징들의 세트에 포함되도록 선택된다.
Figure pct00014
일 때, 상기 선택된 비-사적 특징들의 세트 Fs T 는 상기 원격 서비스 제공자(100)에게 공개된다. 상기 공개된 선택된 비-사적 특징들의 세트 Fs T 는 변형된 데이터이다.
일 실시예에서, 상기 프라이버시 유출 비교 유닛(364)은, 표 2의 라인 5에서 특정된 조건을 이용하여, 현재 반복에서 생성된 의사 변형된 데이터가 이전 반복에서 생성된 의사 변형된 데이터와 비교하여 데이터 프라이버시를 덜 유출하는지 여부를 결정한다. 상기 프라이버시 유출 비교 유닛(364)이 데이터 프라이버시 유출이 감소될 수 없다고(즉, 상기 조건이 더 이상 만족되지 않는다고) 결정하면, 현재 반복에서 생성된 상기 의사 변형된 데이터는, 변형된 데이터로서 상기 원격 서비스 제공자(100)에게 공개하기 위해, 상기 출력 유닛(361)에 제공된다. 상기 프라이버시 유출 비교 유닛(364)이 데이터 프라이버시 유출이 감소될 수 있다고(즉, 상기 조건이 여전히 만족된다고) 결정하면, 상기 선형화된 서비스 제공자 모델은 상기 구축/갱신 유닛(363)을 통해 갱신되고, 상기 의사 데이터 변형 엔진(362)은 상기 절단된 위험 분석 추론 모델(332) 및 상기 갱신된 선형화된 서비스 제공자 모델에 기반하여 새로운 의사 변형된 데이터를 생성하도록 트리거링된다.
도 7은, 하나 이상의 실시예들에 있어서, 상기 프라이버시 제어 관리자(250)에 의해 생성되는 제1 예시적 사용자 인터페이스(410)를 도시한다. 사용자(30)가 그/그녀의 전자 장치(50)(예를 들면, IoT 장치) 상에서 헬스케어 관리에 관련된 애플리케이션(260)을 론칭하여 사용하기 시작할 때, 상기 프라이버시 제어 관리자(250)는 상기 애플리케이션(260)과 연관된 서비스 제공자(100)에 의해 요청되는 각 유형의 실시간 장치 감지 데이터를 열거하는 상기 사용자 인터페이스(410)를 생성한다. 상기 요청된 데이터는, "유지(oil fat)", "필요 수분" 등과 같이, 상기 사용자(30)가 비-사적인 것으로 간주하는 정보를 포함할 수 있다. 그러나, 상기 요청된 데이터는 또한, "혈압" 등과 같이, 상기 사용자(30)가 사적인 것으로 간주하며 일반적인 사적 데이터(예를 들면, 나이, 상기 사용자(30)가 당뇨병이 있는지 여부 등)가 추론될 수 있는 정보도 포함할 수 있다.
요청된 각 유형의 실시간 장치 감지 데이터에 대해, 상기 사용자(30)는 상기 프라이버시 제어 관리자(250)에 의해 생성된 다른 사용자 인터페이스(예를 들면, 도 3C의 사용자 인터페이스(412))를 통해 상응하는 프라이버시 염려 레벨을 특정할 수 있다. 일 실시예에서, 상기 애플리케이션(260)은 상응하는 절단된 위험 분석 추론 모델(332)을 가진다. 상기 상응하는 절단된 위험 분석 추론 모델(332)을 얻기 위해 장치상의 축소가 상기 전체 위험 분석 모델(331)에 적용되는 정도는 상기 특정된 프라이버시 염려 레벨들에 기반한다.
상기 프라이버시 제어 관리자(250)는 상기 상응하는 절단된 위험 분석 추론 모델(332)을 이용하여 상기 요청된 데이터에 대해 위험 평가를 수행하고, 상기 위험 평가에 기반하여 추론 위험 레벨을 표시하는 알림(420)을 생성한다. 예를 들면, 도 7에 도시한 바와 같이, 상기 추론 위험 레벨은 "중간(Medium)"일 수 있다. 일 실시예에서, 상기 알림(420)은 또한 상기 원격 서비스 제공자(100)에 의해 요청된 상기 실시간 장치 감지 데이터로부터 추론될 수 있는 하나 이상의 유형들의 일반적인 사적 데이터를 식별할 수 있다(예를 들면, 상기 원격 서비스 제공자(100)가 혈당 레벨들을 요청하면, 상기 사용자(30)는 상기 원격 서비스 제공자(100)가 상기 요청된 데이터로부터 상기 사용자(30)가 당뇨병이 있는지 여부를 추론할 수 있다는 알림을 받는다). 상기 프라이버시 제어 관리자(250)는 상기 상응하는 절단된 위험 분석 추론 모델(332)에 기반하여 어느 유형들의 일반적인 사적 데이터가 상기 요청된 실시간 장치 감지 데이터로부터 추론될 수 있는지를 결정한다.
상기 사용자(30)가 공개 전에 상기 요청된 데이터를 변형하기로 선택하면, 상기 프라이버시 제어 관리자(250)는 상기 요청된 데이터에 대해 데이터 변형을 수행하고, 상기 변형된 데이터를 상기 원격 서비스 제공자(100)에게 공개한다. 상기 애플리케이션(260)은 회답으로 상기 원격 서비스 제공자(100)로부터 서비스(430)를 수신하며, 여기서 상기 수신된 서비스(430)는 상기 공개된 변형된 데이터에 기반한 권장 건강 일일 활동(430)(예를 들면, 제안되는 일일 칼로리)을 포함한다.
도 8은, 하나 이상의 실시예들에 있어서, 상기 프라이버시 제어 관리자(250)에 의해 생성되는 제2 예시적 사용자 인터페이스(450)를 도시한다. 사용자(30)가 그/그녀의 전자 클라이언트 장치 (50)(예를 들면, 모바일 스마트폰) 상에서 쇼핑에 관련된 애플리케이션(260)을 론칭하여 사용하기 시작할 때, 상기 프라이버시 제어 관리자(250)는 상기 애플리케이션(260)과 연관된 서비스 제공자(100)에 의해 요청되는 각 유형의 실시간 장치 감지 데이터를 열거하는 상기 사용자 인터페이스(450)을 생성한다. 상기 요청된 데이터는, "위치" 등과 같이, 상기 사용자(30)가 비-사적인 것으로 간주하는 정보를 포함할 수 있다. 그러나, 상기 요청된 데이터는 또한, 상기 전자 장치(50)의 카메라에 의해 수집된 실시간 장치 감지 데이터, 사진들 등과 같이, 상기 사용자(30)가 사적인 것으로 간주하며 일반적인 사적 데이터(예를 들면, 나이, 민족(ethnicity) 등)가 추론될 수 있는 정보도 포함할 수 있다. 요청된 각 유형의 실시간 장치 감지 데이터에 대해, 상기 사용자(30)는 상기 프라이버시 제어 관리자(250)에 의해 생성된 다른 사용자 인터페이스(예를 들면, 도 3C의 사용자 인터페이스(412)와 유사한 것)를 통해 상응하는 프라이버시 염려 레벨을 특정할 수 있다.
일 실시예에서, 상기 애플리케이션(260)은 상응하는 절단된 위험 분석 추론 모델(332)을 가진다. 상기 상응하는 절단된 위험 분석 추론 모델(332)을 얻기 위해 장치상의 축소가 상기 전체 위험 분석 모델(331)에 적용되는 정도는 상기 특정된 프라이버시 염려 레벨들에 기반한다.
상기 프라이버시 제어 관리자(250)는 상기 상응하는 절단된 위험 분석 추론 모델(332)을 이용하여 상기 요청된 데이터에 대해 위험 평가를 수행하고, 상기 위험 평가에 기반하여 추론 위험 레벨을 표시하는 알림(460)을 생성한다. 예를 들면, 도 8에 도시한 바와 같이, 상기 추론 위험 레벨은 "높음(High)"일 수 있다. 일 실시예에서, 상기 알림(460)은 또한 상기 원격 서비스 제공자(100)에 의해 요청된 상기 실시간 장치 감지 데이터로부터 추론될 수 있는 하나 이상의 유형들의 일반적인 사적 데이터를 식별할 수 있다(예를 들면, 상기 원격 서비스 제공자(100)가 상기 전자 장치(50)의 카메라에 의해 수집된 실시간 장치 감지 데이터를 요청하면, 상기 사용자(30)는 상기 원격 서비스 제공자(100)가 상기 요청된 데이터로부터 상기 사용자(30)의 민족(ethnicity)을 추론할 수 있다는 알림을 받는다). 상기 프라이버시 제어 관리자(250)는 상기 상응하는 절단된 위험 분석 추론 모델(332)에 기반하여 어느 유형들의 일반적인 사적 데이터가 상기 요청된 실시간 장치 감지 데이터로부터 추론될 수 있는지를 결정한다.
상기 사용자(30)가 공개 전에 상기 요청된 데이터를 변형하기로 선택하면, 상기 프라이버시 제어 관리자(250)는 상기 요청된 데이터에 대해 데이터 변형을 수행하고, 상기 변형된 데이터를 상기 원격 서비스 제공자(100)에게 공개한다. 상기 애플리케이션(260)은 회답으로 상기 원격 서비스 제공자(100)로부터 서비스(470)를 수신하며, 여기서 상기 수신된 서비스(470)는 상기 공개된 변형된 데이터에 기반한 제품 추천을 포함한다.
도 9는, 하나 이상의 실시예들에 있어서, 상기 프라이버시 제어 관리자(250)에 의해 생성되는 제3 예시적 사용자 인터페이스(510)를 도시한다. 상기 사용자(30)가 그/그녀의 전자 클라이언트 장치 (50)(예를 들면, 스마트 텔레비전) 상에서 콘텐츠 스트리밍에 관련된 애플리케이션(260)을 론칭하여 사용하기 시작할 때, 상기 프라이버시 제어 관리자(250)는 상기 애플리케이션(260)과 연관된 서비스 제공자(100)에 의해 요청되는 각 유형의 실시간 장치 감지 데이터를 열거하는 상기 사용자 인터페이스(510)을 생성한다. 상기 요청된 데이터는, 어린이 프로그램(예를 들면, 만화)이 시청되었음을 표시하는 시청 콘텐츠 히스토리 등과 같이, 상기 사용자(30)가 사적인 것으로 간주하며 일반적인 사적 데이터(예를 들면, 상기 사용자(30)에게 아이가 있는지 여부 등)가 추론될 수 있는 정보를 포함할 수 있다. 요청된 각 유형의 실시간 장치 감지 데이터에 대해, 상기 사용자(30)는 상기 프라이버시 제어 관리자(250)에 의해 생성된 다른 사용자 인터페이스(예를 들면, 도 3C의 사용자 인터페이스(412)와 유사한 것)를 통해 상응하는 프라이버시 염려 레벨을 특정할 수 있다.
일 실시예에서, 상기 애플리케이션(260)은 상응하는 절단된 위험 분석 추론 모델(332)을 가진다. 상기 상응하는 절단된 위험 분석 추론 모델(332)을 얻기 위해 장치상의 축소가 상기 전체 위험 분석 모델(331)에 적용되는 정도는 상기 특정된 프라이버시 염려 레벨들에 기반한다.
상기 프라이버시 제어 관리자(250)는 상기 상응하는 절단된 위험 분석 추론 모델(332)을 이용하여 상기 요청된 데이터에 대해 위험 평가를 수행하고, 상기 위험 평가에 기반하여 추론 위험 레벨을 표시하는 알림(520)을 생성한다. 예를 들면, 도 9에 도시한 바와 같이, 상기 식별된 추론 위험 레벨은 "높음(High)"일 수 있다. 일 실시예에서, 상기 알림(520) 은 또한 상기 원격 서비스 제공자(100)에 의해 요청된 상기 실시간 장치 감지 데이터로부터 추론될 수 있는 하나 이상의 유형들의 일반적인 사적 데이터를 식별할 수 있다(예를 들면, 상기 원격 서비스 제공자(100)가 어린이 프로그램(예를 들면, 만화)이 시청되었음을 표시하는 시청 콘텐츠 히스토리를 요청하면, 상기 사용자(30)는 상기 원격 서비스 제공자(100)가 상기 요청된 데이터로부터 상기 사용자(30)에게 아이가 있음을 추론할 수 있다는 알림을 받는다). 상기 사용자(30)가 공개 전에 상기 요청된 데이터를 변형하기로 선택하면, 상기 프라이버시 제어 관리자(250)는 상기 요청된 데이터에 대해 데이터 변형을 수행하고, 상기 변형된 데이터를 상기 원격 서비스 제공자(100)에게 공개한다. 상기 애플리케이션(260)은 회답으로 상기 원격 서비스 제공자(100)로부터 서비스(530)를 수신하며, 여기서 상기 수신된 서비스(530)는 상기 공개된 변형된 데이터에 기반한 텔레비전 프로그램 추천을 포함한다.
도 10은, 하나 이상의 실시예들에 있어서, 자동화된 추론 위험 평가 및 데이터 변형에 기반하여 일반적인 사적 데이터의 데이터 프라이버시 보호를 제공하기 위해 제1 장치 상에서 수행되는 프로세스의 예시적 순서도이다. 프로세스 블록(801)에서, 일반적인 사적 데이터를 위한 제1 사용자 인터페이스를 생성하고, 상기 제1 사용자 인터페이스를 통해 상기 일반적인 사적 데이터에 대한 적어도 하나의 사용자 특정 프라이버시 염려 레벨을 수신한다. 일 실시예에서, 상기 프로세스 블록(801)은 상기 제1 사용자 인터페이스(320)에 의해 수행될 수 있다.
프로세스 블록(802)에서, 원격 서비스 제공자에 의해 요청된 적어도 한 유형의 실시간 장치 감지 데이터를 결정한다. 프로세스 블록(803)에서, 상기 요청된 적어도 한 유형의 실시간 장치 감지 데이터를 위한 제2 사용자 인터페이스를 생성하고, 상기 제2 사용자 인터페이스를 통해 상기 요청된 적어도 한 유형의 실시간 장치 감지 데이터에 대한 적어도 하나의 사용자 특정 프라이버시 염려 레벨을 수신한다. 일 실시예에서, 상기 프로세스 블록들(802 및 803)은 상기 제2 사용자 인터페이스(310)에 의해 수행될 수 있다.
프로세스 블록(804)에서, 각각의 사용자 특정 프라이버시 염려 레벨에 기반하여, 절단된 위험 분석 추론 모델을 얻기 위해 장치상의 축소를 전체 위험 분석 모델에 적용한다. 프로세스 블록(805)에서, 상기 절단된 위험 분석 추론 모델에 기반하여, 상기 요청된 실시간 장치 감지 데이터를 상기 원격 서비스 제공자에게 전송하는 단계와 연관된 추론 프라이버시 위험 레벨을 결정한다. 일 실시예에서, 상기 프로세스 블록들(804 및 805)은 상기 프라이버시 위험 분석 유닛(330)에 의해 수행될 수 있다.
프로세스 블록(806)에서, 사용자에게 상기 추론 프라이버시 위험 레벨을 알려주는 알림을 생성한다 프로세스 블록(807)에서, 상기 알림은 상기 사용자에게 그/그녀가 상기 요청된 실시간 장치 감지 데이터에 데이터 변형을 적용하기를 원하는지 여부에 관해 더 프롬프팅한다. 일 실시예에서, 상기 프로세스 블록들(806 및 807)은 상기 알림 유닛(340)에 의해 수행될 수 있다.
상기 사용자(30)가 상기 요청된 실시간 장치 감지 데이터에 데이터 변형을 적용하기를 원하면, 데이터 변형이 상기 요청된 실시간 장치 감지 데이터에 적용되는 프로세스 블록(808)으로 진행한다. 프로세스 블록(809)에서, 결과적인 변형된 데이터가 상기 원격 서비스 제공자에게 공개된다. 일 실시예에서, 상기 프로세스 블록들(808 및 808)은 상기 데이터 변형 엔진(351)에 의해 수행될 수 있다.
상기 사용자(30)가 상기 요청된 실시간 장치 감지 데이터에 데이터 변형을 적용하기를 원하지 않으면, 상기 요청된 실시간 장치 감지 데이터가 상기 원격 서비스 제공자에게 제공되는(즉, 데이터 변형 없이 제공되는) 프로세스 블록(810)으로 진행한다. 일 실시예에서, 상기 프로세스 블록(810)은 상기 프라이버시 위험 분석 유닛(330)에 의해 수행될 수 있다.
도 11은 개시된 실시예들을 구현하는 데 유용한 컴퓨터 시스템(600)을 포함하는 정보 처리 시스템을 도시한 상위-레벨(high-level) 블록도이다. 상기 컴퓨터 시스템(600)은 클라이언트 장치(50) 또는 서버 장치(210)에 통합될 수 있다. 상기 컴퓨터 시스템(600)은 하나 이상의 프로세서들(601)을 포함하며, 전자 표시 장치(602)(비디오, 그래픽, 텍스트, 및 기타 데이터를 표시하기 위한 것), 주 메모리(603)(예를 들면, 랜덤 액세스 메모리(random access memory: RAM)), 저장 장치(604)(예를 들면, 하드 디스크 드라이브), 착탈식 저장 장치(605)(예를 들면, 착탈식 저장 드라이브, 착탈식 메모리 모듈, 자기 테이프 드라이브, 광디스크 드라이브, 저장된 컴퓨터 소프트웨어 및/또는 데이터를 갖는 컴퓨터 판독가능 매체), 사용자 인터페이스 장치(606)(예를 들면, 키보드, 터치스크린, 키패드, 포인팅 장치), 및 통신 인터페이스(607)(예를 들면, 모뎀, 네트워크 인터페이스(예를 들면, 이더넷 카드), 통신 포트, 또는 PCMCIA 슬롯 및 카드)를 더 포함할 수 있다. 상기 주 메모리(603)는, 상기 하나 이상의 프로세서들(601)에 의해 실행될 때 상기 하나 이상의 프로세서들(601)로 하여금, 상기 데이터 변형 유닛(350)의 동작들과 같이, 상기 프라이버시 제어 관리자(250)의 상이한 구성요소들에 의해 수행되는 동작들을 수행하게 하는 명령어들(instructions)을 저장할 수 있다.
상기 통신 인터페이스(607)는 소프트웨어 및 데이터가 상기 컴퓨터 시스템과 외부 장치들 간에 전송될 수 있도록 한다. 상기 시스템(600)은, 상기한 장치들/모듈들(601 내지 607)이 연결되는, 통신 기반구조(608)(예를 들면, 통신 버스, 크로스오버 바(cross-over bar), 또는 네트워크)를 더 포함한다.
상기 통신 인터페이스(607)를 통해 전송되는 정보는, 신호를 전달하며 전선 또는 케이블, 광섬유, 전화선, 셀룰러 전화 링크, 무선 주파수(radio frequency: RF) 링크, 및/또는 기타 통신 채널들을 이용하여 구현될 수 있는 통신 링크를 통해, 상기 통신 인터페이스(607)에 의해 수신될 수 있는 전자적, 전자기적, 광학적, 또는 기타 신호들과 같은, 신호 형태일 수 있다. 본 명세서에서 상기 블록도 및/또는 순서도를 나타내는 컴퓨터 프로그램 명령어들은 컴퓨터, 프로그램가능 데이터 처리 기기(apparatus), 또는 처리 장치들 상에 로딩되어 이들에서 수행되는 일련의 동작들이 컴퓨터 구현 프로세스를 생성하도록 할 수 있다. 일 실시예에서, 상기 프로세스(800)(도 10)를 위한 처리 명령어들은, 상기 프로세서(601)에 의한 실행을 위해, 상기 메모리(603), 상기 저장 장치(604) 및 상기 착탈식 저장 장치(605) 상에 프로그램 명령어들로서 저장될 수 있다.
방법들, 기기(시스템들) 및 컴퓨터 프로그램 제품들의 순서도 예시들 및/또는 블록도들을 참조하여 실시예들이 설명되었다. 그러한 예시들/블록도들의 각 블록, 또는 이들의 조합들은 컴퓨터 프로그램 명령어들에 의해 구현될 수 있다. 상기 컴퓨터 프로그램 명령어들은 프로세서에 제공될 때 기계를 생산하여, 상기 프로세서를 통해 실행되는 상기 명령어들이 상기 순서도 및/또는 블록도에서 특정된 기능들/동작들을 구현하는 수단들을 생성한다. 상기 순서도/블록도들에서 각 블록은 하드웨어 및/또는 소프트웨어 모듈 또는 논리(logic)를 나타낼 수 있다. 대안적인 구현들에 있어서, 상기 블록들에서 언급된 기능들은 도면들에서 언급된 순서와 다르게, 동시에, 등으로 발생할 수 있다.
어들 "컴퓨터 프로그램 매체", "컴퓨터 사용가능 매체", "컴퓨터 판독가능 매체", 및 "컴퓨터 프로그램 제품"은 일반적으로, 주 메모리, 보조(secondary) 메모리, 착탈식 저장 드라이브, 하드 디스크 드라이브에 설치된 하드 디스크, 및 신호들과 같은, 매체들을 나타내는 데 사용된다. 이들 컴퓨터 프로그램 제품들은 상기 컴퓨터 시스템에 소프트웨어를 제공하는 수단들이다. 상기 컴퓨터 판독가능 매체는 상기 컴퓨터 시스템이 데이터, 명령어들, 메시지들 또는 메시지 패킷들, 및 상기 컴퓨터 판독가능 매체로부터의 기타 컴퓨터 판독가능 정보를 판독할 수 있게 한다. 상기 컴퓨터 판독가능 매체는, 예를 들면, 플로피 디스크, ROM, 플래시 메모리, 디스크 드라이브 메모리, CD-ROM, 및 기타 영구 저장소와 같은, 비휘발성 메모리를 포함할 수 있다. 상기 컴퓨터 판독가능 매체는, 예를 들면, 컴퓨터 시스템들 간에 데이터 및 컴퓨터 명령어들과 같은 정보를 전송하는 데 유용하다. 컴퓨터 프로그램 명령어들은 컴퓨터, 기타 프로그램가능 데이터 처리 기기, 또는 기타 장치들이 특정 방식으로 기능하도록 지시할 수 있는 컴퓨터 판독가능 매체에 저장될 수 있어, 상기 컴퓨터 판독가능 매체에 저장된 상기 명령어들은, 상기 순서도 및/또는 블록도 블록 또는 블록들에서 특정된 기능/행위(act)를 구현하는 명령어들을 포함하는, 제조 물품을 생산한다.
본 발명이 속하는 기술분야의 숙련된 자라면 알 수 있는 바와 같이, 실시예들의 양태들은 시스템, 방법 또는 컴퓨터 프로그램 제품으로서 체현될 수 있다. 따라서, 실시예들의 양태들은, 본 명세서에서 일반적으로 모두 "회로", "모듈" 또는 "시스템"으로 칭할 수 있는, 전적으로 하드웨어 실시예, 전적으로 소프트웨어 실시예, 또는 소프트웨어 및 하드웨어 양태들을 조합한 실시예의 형태를 취할 수 있다.또한, 실시예들의 양태들은, 체현된 컴퓨터 판독가능 프로그램 코드를 갖는 하나 이상의 컴퓨터 판독가능 매체(들)에 체현된, 컴퓨터 프로그램 제품의 형태를 취할 수 있다.
하나 이상의 컴퓨터 판독가능 매체(들)의 어떤 조합이든 이용될 수 있다. 상기 컴퓨터 판독가능 매체는 컴퓨터 판독가능 저장 매체일 수 있다. 컴퓨터 판독가능 저장 매체는, 예를 들면, 전자적, 자기적, 광학적, 전자기적, 적외선, 또는 반도체 시스템, 기기(apparatus), 장치, 또는 이들의 어떤 적절한 조합일 수 있으나, 이에 제한되지 않는다. 상기 컴퓨터 판독가능 저장 매체의 보다 구체적인 예들(비한정적(non-exhaustive) 리스트)은 다음을 포함할 수 있다: 하나 이상의 전선들을 갖는 전기적 연결부(connection), 휴대용 컴퓨터 디스켓, 하드 디스크, 랜덤 액세스 메모리(RAM), 읽기 전용 메모리(read-only memory: ROM), 소거가능 프로그램가능 읽기 전용 메모리(erasable programmable read-only memory: EPROM, 또는 플래시 메모리), 광섬유, 휴대용 컴팩트 디스크 읽기 전용 메모리(compact disc read-only memory: CD-ROM), 광학 저장 장치, 자기 저장 장치, 또는 이들의 어떤 적절한 조합). 본 문서의 맥락에서, 컴퓨터 판독가능 저장 매체는, 명령어 실행 시스템, 기기, 또는 장치에 의해 또는 이들과 연관되어 사용하기 위한 프로그램을 포함 또는 저장할 수 있는, 어떤 유형적(tangible) 매체일 수 있다.
하나 이상의 실시예들의 양태들에 대한 동작들을 수행하기 위한 컴퓨터 프로그램 코드는, 자바(Java), 스몰토크(Smalltalk), 또는 C++ 등과 같은 객체 지향 프로그래밍 언어 및 "C" 프로그래밍 언어 또는 유사한 프로그래밍 언어들과 같은 종래의 절차적(procedural) 프로그래밍 언어를 포함하여, 하나 이상의 프로그래밍 언어들의 어떠한 조합으로든 작성될 수 있다. 상기 프로그램 코드는 전적으로 사용자의 컴퓨터에서, 부분적으로 사용자의 컴퓨터에서, 독립형(stand-alone) 소프트웨어 패키지로서, 부분적으로 사용자의 컴퓨터에서 및 부분적으로 원격 컴퓨터에서, 또는 전적으로 원격 컴퓨터 또는 서버에서 실행될 수 있다. 후자의 시나리오에서, 상기 원격 컴퓨터는 로컬 영역 네트워크(local area network: LAN) 또는 광역 네트워크(wide area network: WAN)를 포함하는 어떠한 유형의 네트워크를 통해서 상기 사용자의 컴퓨터에 연결될 수 있거나, 또는 외부 컴퓨터로의 연결이 이루어질 수 있다(예를 들면, 인터넷 서비스 제공자를 이용하여 인터넷을 통해).
하나 이상의 실시예들의 양태들은 방법들, 기기(시스템들) 및 컴퓨터 프로그램 제품들의 순서도 예시들 및/또는 블록도들을 참조하여 설명된다. 상기 순서도 예시들 및/또는 블록도들의 각 블록, 및 상기 순서도 예시들 및/또는 블록도들의 블록들의 조합들은 컴퓨터 프로그램 명령어들에 의해 구현될 수 있음을 이해할 것이다. 이러한 컴퓨터 프로그램 명령어들은 기계를 생산하기 위해 특수 목적 컴퓨터 또는 기타 프로그램가능 데이터 처리 기기에 제공되어, 상기 컴퓨터 또는 기타 프로그램가능 데이터 처리 기기의 프로세서를 통해 실행되는 상기 명령어들이 상기 순서도 및/또는 블록도 블록 또는 블록들에서 특정되는 기능들/행위들을 구현하는 수단들을 생성하도록 할 수 있다.
이러한 컴퓨터 프로그램 명령어들은 또한, 컴퓨터, 기타 프로그램가능 데이터 처리 기기, 또는 기타 장치들이 특정 방식으로 기능하도록 지시할 수 있는, 컴퓨터 판독가능 매체에 저장되어, 상기 컴퓨터 판독가능 매체에 저장된 상기 명령어들이, 상기 순서도 및/또는 블록도 블록 또는 블록들에서 특정된 기능/행위를 구현하는 명령어들을 포함하는, 제조 물품을 생산하도록 할 수 있다.
상기 컴퓨터 프로그램 명령어들은 또한 컴퓨터, 기타 프로그램가능 데이터 처리 기기, 또는 기타 장치들 상에 로딩되어 상기 컴퓨터, 기타 프로그램가능 기기 또는 기타 장치들 상에서 수행될 일련의 동작 단계들이 컴퓨터 구현 프로세스를 생성하도록 하여, 상기 컴퓨터 또는 기타 프로그램가능 기기 상에서 실행되는 상기 명령어들이 상기 순서도 및/또는 블록도 블록 또는 블록들에서 특정된 기능들/행위들을 구현하는 프로세스들을 제공하도록 할 수 있다.
도면들 내의 순서도 및 블록도들은 다양한 실시예들에 따라 시스템들, 방법들, 및 컴퓨터 프로그램 제품들의 가능한 구현들의 아키텍처, 기능, 및 동작을 도시한다. 이러한 점에서, 순서도 또는 블록도들 내의 각 블록은, 특정 논리 함수(들)을 구현하기 위한 하나 이상의 실행가능 명령어들을 포함하는, 명령어들의 모듈, 세그먼트, 또는 일부를 나타낼 수 있다. 일부 대안적 구현들에서, 블록에서 언급된 기능들은 도면들에서 언급된 순서와 달리 발생할 수 있다. 예를 들면, 관여된 기능에 따라, 연속적으로 도시한 두 개의 블록들은, 실제로, 실질적으로 동시에 실행될 수 있거나, 또는 상기 블록들은 때때로 역순으로 실행될 수 있다. 상기 블록도들 및/또는 순서도 예시의 각 블록, 및 상기 블록도들 및/또는 순서도 예시 내의 블록들의 조합들은, 특정 기능들 또는 행위들을 수행하거나 또는 특수 목적 하드웨어 및 컴퓨터 명령어들의 조합들을 수행하는, 특수 목적 하드웨어 기반 시스템들에 의해 구현될 수 있음을 또한 알아야 할 것이다.
청구항에서 요소를 단수로 언급한 것은 명시적으로 그렇게 언급한 것이 아닌 한 "유일한 것(one and only)"을 의미하고자 한 것이 아니라, "하나 이상(one or more)"을 의미하고자 한 것이다.본 발명이 속하는 기술분야의 통상의 지식을 가진 자에게 현재 알려진 또는 차후 알려질, 상기한 예시적 실시예의 요소들에 대한 모든 구조적 및 기능적 등가물들은 본 청구항들에 포함되도록 하고자 한 것이다. 본 명세서에서 어떠한 청구 요소(claim element)도, 상기 요소가 어구 "~을 위한 수단(means for)" 또는 "~을 위한 단계(step for)"를 사용하여 명확히 기재되지 않는 한, 미국 특허법(35 U.S.C.) 112조 제6항의 규정 하에서 해석되어서는 안 된다.
본 명세서에서 사용된 용어는 단지 특정 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 한 것이 아니다. 본 명세서에서, 단수 형태들 "a", "an" 및 "the"는, 문맥상 명확히 달리 표시되지 않는 한, 복수 형태들도 포함하고자 한 것이다 용어들 "포함하다(comprises)" 및/또는 "포함하는(comprising)"은, 본 명세서에서 사용될 때, 언급된 특징들, 정수들(integers), 단계들, 동작들, 요소들, 및/또는 구성요소들의 존재를 특정하지만, 하나 이상의 다른 특징들, 정수들, 단계들, 동작들, 요소들, 구성요소들, 및/또는 이들의 그룹들의 존재 또는 추가를 배제하지 않는다.
하기 청구항들에서 모든 기능식 청구항(means or step plus function) 요소들의 상응하는 구조들, 물질들, 행위들, 및 등가물들은, 구체적으로 청구된 바와 같이, 다른 청구 요소들과 조합하여 상기 기능을 수행하기 위한 어떠한 구조, 물질, 또는 행위든 포함하고자 한 것이다. 실시예들에 대한 설명이 예시 및 설명의 목적으로 제시되었지만, 개시된 형태의 실시예들로 한정하거나 제한하고자 한 것이 아니다. 많은 변형들 및 변경들이 본 발명의 사상 및 범위를 벗어나지 않고 본 발명이 속하는 기술분야의 통상의 지식을 가진 자에게 명백할 것이다.
실시예들이 이들의 특정 버전들을 참조하여 설명되었지만, 다른 버전들도 가능하다. 그러므로, 첨부된 청구항들의 사상 및 범위는 본 명세서에 포함된 바람직한 버전들에 대한 설명에 제한되어서는 안 된다.

Claims (15)

  1. 적어도 하나의 하드웨어 프로세서를 포함하는 제1 장치에서,
    보호할 적어도 한 유형의 프라이버시 민감 데이터(privacy-sensitive data)를 식별하는 일반적인 사적 데이터(general private data)를 수신하는 단계;
    적어도 한 유형의 실시간 데이터를 수집하는 단계;
    상기 적어도 한 유형의 실시간 데이터를 제2 장치에 전송하는 단계와 연관된 추론 프라이버시 위험 레벨(inference privacy risk level)을 결정하는 단계에 있어서, 상기 추론 프라이버시 위험 레벨은 상기 적어도 한 유형의 실시간 데이터를 전송하는 단계로부터 상기 일반적인 사적 데이터를 추론하는 위험의 정도를 나타내는 것인, 단계; 및
    상기 적어도 한 유형의 실시간 데이터를 상기 제2 장치에 전송하는 단계 전에, 상기 추론 프라이버시 위험 레벨에 기반하여 상기 적어도 한 유형의 실시간 데이터의 적어도 일부를 변형하는(distorting) 단계를 포함하는, 방법.
  2. 제1 항에 있어서, 상기 일반적인 사적 데이터는 상기 적어도 한 유형의 프라이버시 민감 데이터에 대한 적어도 하나의 특정된 프라이버시 염려(concern) 레벨을 포함하는 것인, 방법.
  3. 제2 항에 있어서, 상기 추론 프라이버시 위험 레벨은 부분적으로 상기 적어도 한 유형의 프라이버시 민감 데이터에 대한 상기 적어도 하나의 특정된 프라이버시 염려 레벨에 기반하는 것인, 방법.
  4. 제2 항에 있어서, 상기 일반적인 사적 데이터를 수신하는 단계는
    상기 제1 장치 상의 인터페이스를 디스플레이 상에 제공하는 단계에 있어서, 상기 인터페이스는 상기 적어도 한 유형의 프라이버시 민감 데이터를 식별하는 것인, 단계 및
    상기 인터페이스를 통해 상기 적어도 한 유형의 프라이버시 민감 데이터에 대한 상기 적어도 하나의 특정된 프라이버시 염려 레벨을 수신하는 단계를 포함하는 것인, 방법.
  5. 제1 항에 있어서, 상기 제2 장치는 서비스 제공자인 것인, 방법.
  6. 제1 항에 있어서, 상기 적어도 한 유형의 실시간 데이터는 상기 제1 장치에서 캡처된 다음 정보: 위치 데이터 및 센서 데이터 중 적어도 하나를 포함하는 것인, 방법.
  7. 제1 항에 있어서, 상기 적어도 한 유형의 실시간 데이터의 적어도 일부를 변형하는 단계는,
    상기 제1 장치의 디스플레이 상에 인터페이스를 제공하는 단계에 있어서, 상기 인터페이스는 상기 추론 프라이버시 위험 레벨에 대한 적어도 하나의 알림(notification)을 포함하는 것인, 단계 및
    상기 인터페이스를 통해 상기 일반적인 사적 데이터 보호 요청 수신에 응답하여, 상기 적어도 한 유형의 실시간 데이터를 상기 제2 장치에 전송하는 단계 전에, 상기 적어도 한 유형의 실시간 데이터의 적어도 일부를 변형하는 단계를 포함하는 것인, 방법.
  8. 제7 항에 있어서, 상기 적어도 한 유형의 실시간 데이터의 적어도 일부를 변형하는 단계는:
    상기 제2 장치에 의해 제공되는 서비스의 품질을 훼손하지 않는 최대 데이터 변형 정도를 결정하는 단계; 및
    상기 결정된 최대 데이터 변형 정도에 따라 상기 적어도 한 유형의 실시간 데이터의 적어도 일부를 변형하는 단계를 포함하는 것인, 방법.
  9. 제1 항에 있어서,
    상기 제1 장치에서:
    상기 제1 장치의 디스플레이 상에 사용자 인터페이스를 제공하는 단계에 있어서, 상기 사용자 인터페이스는 다음 변경들: 상기 제1 장치 상에 새로운 애플리케이션의 설치; 상기 제1 장치 상에 상주하는 애플리케이션의 갱신(update); 및 상기 제2 장치로부터 수신되는 서비스의 갱신 중 하나 이상으로부터 발생하는 잠재적 추론 프라이버시 위험에 대한 적어도 하나의 알림을 포함하는 것인, 단계를 더 포함하는, 방법.
  10. 적어도 한 유형의 실시간 데이터를 수집하도록 구성되는 적어도 하나의 센서;
    하나 이상의 프로세서들; 및
    명령어들을 저장하는 저장 장치에 있어서, 상기 명령어들은 상기 적어도 하나의 프로세서들에 의해 실행될 때 상기 적어도 하나의 프로세서들로 하여금:
    보호할 적어도 한 유형의 프라이버시 민감 데이터를 식별하는 일반적인 사적 데이터를 수신하는 단계;
    상기 적어도 한 유형의 실시간 데이터를 제1 장치에 전송하는 단계와 연관된 추론 프라이버시 위험 레벨을 결정하는 단계에 있어서, 상기 추론 프라이버시 위험 레벨은 상기 적어도 한 유형의 실시간 데이터를 전송하는 단계로부터 상기 일반적인 사적 데이터를 추론하는 위험의 정도를 나타내는 것인, 단계; 및
    상기 적어도 한 유형의 실시간 데이터를 상기 제1 장치에 전송하는 단계 전에, 상기 추론 프라이버시 위험 레벨에 기반하여 상기 적어도 한 유형의 실시간 데이터의 적어도 일부를 변형하는 단계를 포함하는 동작들을 수행하도록 하는 것인, 저장 장치를 포함하는, 시스템.
  11. 제10 항에 있어서, 상기 일반적인 사적 데이터는 상기 적어도 한 유형의 프라이버시 민감 데이터에 대한 적어도 하나의 특정된 프라이버시 염려 레벨을 포함하는 것인, 시스템.
  12. 제11 항에 있어서 상기 추론 프라이버시 위험 레벨은 부분적으로 상기 적어도 한 유형의 프라이버시 민감 데이터에 대한 상기 적어도 하나의 특정된 프라이버시 염려 레벨에 기반하는 것인, 시스템.
  13. 제11 항에 있어서,
    디스플레이를 더 포함하고,
    상기 일반적인 사적 데이터를 수신하는 단계는:
    상기 적어도 한 유형의 프라이버시 민감 데이터를 식별하기 위해, 상기 디스플레이 상에 인터페이스를 제공하는 단계; 및
    상기 인터페이스를 통해 상기 적어도 한 유형의 프라이버시 민감 데이터에 대한 상기 적어도 하나의 특정된 프라이버시 염려 레벨을 수신하는 단계를 포함하는 것인, 시스템.
  14. 제10 항에 있어서,
    디스플레이를 더 포함하고,
    상기 적어도 한 유형의 실시간 데이터의 적어도 일부를 변형하는 단계는:
    상기 디스플레이 상에 인터페이스를 제공하는 단계에 있어서, 상기 인터페이스는 상기 추론 프라이버시 위험 레벨에 대한 적어도 하나의 알림을 포함하는 것인, 단계; 및
    상기 인터페이스를 통해 상기 일반적인 사적 데이터 보호 요청을 수신하는 단계에 응답하여, 상기 적어도 한 유형의 실시간 데이터를 상기 제1 장치에 전송하는 단계 전에, 상기 적어도 한 유형의 실시간 데이터의 적어도 일부를 변형하는 단계를 포함하는 것인, 시스템.
  15. 방법을 수행하기 위한 명령어들을 포함하는 비일시적 컴퓨터 판독가능 저장 매체에 있어서, 상기 방법은:
    보호할 적어도 한 유형의 프라이버시 민감 데이터를 식별하는 일반적인 사적 데이터를 수신하는 단계;
    적어도 한 유형의 실시간 데이터를 수집하는 단계;
    상기 적어도 한 유형의 실시간 데이터를 제1 장치에 전송하는 단계와 연관된 추론 프라이버시 위험 레벨을 결정하는 단계에 있어서, 상기 추론 프라이버시 위험 레벨은 상기 적어도 한 유형의 실시간 데이터를 전송하는 단계로부터 상기 일반적인 사적 데이터를 추론하는 위험의 정도를 나타내는 것인, 단계; 및
    상기 적어도 한 유형의 실시간 데이터를 상기 제1 장치에 전송하는 단계 전에, 상기 추론 프라이버시 위험 레벨에 기반하여 상기 적어도 한 유형의 실시간 데이터의 적어도 일부를 변형하는 단계를 포함하는 것인,비일시적 컴퓨터 판독가능 저장 매체.
KR1020187023778A 2016-01-29 2016-06-03 추론 공격에 대한 프라이버시 보호 실시간 서비스를 가능하게 하는 시스템 및 방법 KR102154739B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/011,368 US11087024B2 (en) 2016-01-29 2016-01-29 System and method to enable privacy-preserving real time services against inference attacks
US15/011,368 2016-01-29
PCT/KR2016/005943 WO2017131300A1 (en) 2016-01-29 2016-06-03 System and method to enable privacy-preserving real time services against inference attacks

Publications (2)

Publication Number Publication Date
KR20180097760A true KR20180097760A (ko) 2018-08-31
KR102154739B1 KR102154739B1 (ko) 2020-09-10

Family

ID=59386977

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020187023778A KR102154739B1 (ko) 2016-01-29 2016-06-03 추론 공격에 대한 프라이버시 보호 실시간 서비스를 가능하게 하는 시스템 및 방법

Country Status (5)

Country Link
US (1) US11087024B2 (ko)
EP (1) EP3378009B1 (ko)
KR (1) KR102154739B1 (ko)
CN (1) CN108475321B (ko)
WO (1) WO2017131300A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200095719A (ko) * 2019-02-01 2020-08-11 삼성전자주식회사 전자 장치 및 그 제어 방법
KR102643203B1 (ko) * 2023-02-06 2024-03-05 주식회사 융넷 데이터베이스 추론공격 통제 장치 및 방법

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11256828B1 (en) * 2016-07-05 2022-02-22 Wells Fargo Bank, N.A. Method and apparatus for controlling IoT devices by agent device
US11334476B2 (en) * 2017-03-28 2022-05-17 Microsoft Technology Licensing, Llc Client-side survey control
EP3506547A1 (en) * 2017-12-28 2019-07-03 Flytxt B.V. Providing security against user collusion in data analytics using random group selection
WO2019173550A1 (en) 2018-03-07 2019-09-12 Acxiom Llc Machine for audience propensity ranking using internet of things (iot) inputs
KR102092617B1 (ko) * 2018-07-05 2020-05-22 인하대학교 산학협력단 단방향 데이터 변환을 이용한 프라이버시 보장형 기계 학습 방법
US20210319098A1 (en) * 2018-12-31 2021-10-14 Intel Corporation Securing systems employing artificial intelligence
CN109492435B (zh) * 2019-01-10 2022-03-08 贵州财经大学 基于数据开放共享的隐私泄露风险评估方法、装置及系统
CN109753820B (zh) * 2019-01-10 2023-01-03 贵州财经大学 数据开放共享的方法、装置及系统
CN111539382A (zh) * 2020-05-22 2020-08-14 支付宝(杭州)信息技术有限公司 一种图像识别模型隐私风险的评估方法、装置及电子设备
WO2023238986A1 (en) * 2022-06-10 2023-12-14 Samsung Electronics Co., Ltd. Method and apparatus for securing sensor data
CN117858072A (zh) * 2022-09-30 2024-04-09 维沃移动通信有限公司 信息传输方法、装置及设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060123461A1 (en) * 2004-12-02 2006-06-08 Xerox Corporation Systems and methods for protecting privacy
US20120023586A1 (en) * 2010-07-22 2012-01-26 International Business Machines Corporation Determining privacy risk for database queries
US20140196158A1 (en) * 2013-01-10 2014-07-10 Lookout, Inc. Method and system for protecting privacy and enhancing security on an electronic device
US20150106614A1 (en) * 2013-10-14 2015-04-16 Georgia Tech Research Corporation Systems and methods of safeguarding user information while interacting with online service providers
US20150379275A1 (en) * 2013-02-08 2015-12-31 Thomson Licensing Privacy against inference attacks for large data

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080052328A1 (en) * 2006-07-10 2008-02-28 Elephantdrive, Inc. Abstracted and optimized online backup and digital asset management service
JP2009081487A (ja) 2007-09-25 2009-04-16 Tokyo Electric Power Co Inc:The セキュリティ端末装置、コンピュータプログラムおよび情報通信システム
CA2933829C (en) 2008-07-18 2019-03-12 Absolute Software Corporation Privacy management for tracked devices
US8533844B2 (en) 2008-10-21 2013-09-10 Lookout, Inc. System and method for security data collection and analysis
US9367680B2 (en) 2008-10-21 2016-06-14 Lookout, Inc. System and method for mobile communication device application advisement
US8347386B2 (en) 2008-10-21 2013-01-01 Lookout, Inc. System and method for server-coupled malware prevention
US8984628B2 (en) 2008-10-21 2015-03-17 Lookout, Inc. System and method for adverse mobile application identification
WO2010132492A2 (en) 2009-05-11 2010-11-18 Experian Marketing Solutions, Inc. Systems and methods for providing anonymized user profile data
US8312273B2 (en) * 2009-10-07 2012-11-13 Microsoft Corporation Privacy vault for maintaining the privacy of user profiles
ES2529219T3 (es) * 2009-10-20 2015-02-18 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Aparato para proporcionar una representación de señal de mezcla ascendente sobre la base de la representación de una señal de mezcla descendente, aparato para proporcionar un flujo de bits que representa una señal de audio de canales múltiples, métodos, programa de computación y un flujo de bits que utiliza una señalización de control de distorsión
CA2734545A1 (en) * 2010-03-19 2011-09-19 University Of Ottawa A system and method for evaluating marketer re-identification risk
US9071580B2 (en) 2010-11-01 2015-06-30 Blackberry Limited Method and system for securing data of a mobile communications device
US8914893B2 (en) 2011-08-24 2014-12-16 Netqin Mobile (Beijing) Co. Ltd. Method and system for mobile information security protection
US20130097417A1 (en) 2011-10-13 2013-04-18 Microsoft Corporation Secure private computation services
US9020925B2 (en) 2012-01-04 2015-04-28 Trustgo Mobile, Inc. Application certification and search system
US8707445B2 (en) 2012-02-14 2014-04-22 Identity Theft Guard Solutions, Llc Systems and methods for managing data incidents
US8713684B2 (en) 2012-02-24 2014-04-29 Appthority, Inc. Quantifying the risks of applications for mobile devices
US8832841B2 (en) 2012-05-22 2014-09-09 Verizon Patent And Licensing Inc. Mobile application security assessment
US9407443B2 (en) 2012-06-05 2016-08-02 Lookout, Inc. Component analysis of software applications on computing devices
US20130340086A1 (en) * 2012-06-13 2013-12-19 Nokia Corporation Method and apparatus for providing contextual data privacy
KR101438274B1 (ko) 2012-09-20 2014-09-15 동국대학교 경주캠퍼스 산학협력단 스마트 단말기를 통한 건강 상태 체크 방법 및 이를 이용한 건강 상태 체크 시스템
US9207969B2 (en) * 2013-01-25 2015-12-08 Microsoft Technology Licensing, Llc Parallel tracing for performance and detail
US9294485B2 (en) 2013-01-27 2016-03-22 Dropbox, Inc. Controlling access to shared content in an online content management system
US10789594B2 (en) 2013-01-31 2020-09-29 Moshir Vantures, Limited, LLC Method and system to intelligently assess and mitigate security risks on a mobile device
US20150178744A1 (en) * 2013-03-15 2015-06-25 Commerce Signals, Inc. Methods and systems for signals management
US9756460B2 (en) 2013-06-21 2017-09-05 Hewlett Packard Enterprise Development Lp Adaptive location perturbation
US9087215B2 (en) * 2013-11-01 2015-07-21 Anonos Inc. Dynamic de-identification and anonymity
WO2015118801A1 (ja) * 2014-02-04 2015-08-13 日本電気株式会社 情報判定装置、情報判定方法及び記録媒体
US9361469B2 (en) * 2014-03-26 2016-06-07 Amazon Technologies, Inc. Electronic communication with secure screen sharing of sensitive information
US20160134638A1 (en) * 2014-11-06 2016-05-12 Laudd, Inc. Systems and methods for consumer digital privileges
US10284558B2 (en) * 2015-08-12 2019-05-07 Google Llc Systems and methods for managing privacy settings of shared content
US10143913B2 (en) * 2015-11-03 2018-12-04 Polytangle Ip Limited Electronic multimedia puzzle

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060123461A1 (en) * 2004-12-02 2006-06-08 Xerox Corporation Systems and methods for protecting privacy
US20120023586A1 (en) * 2010-07-22 2012-01-26 International Business Machines Corporation Determining privacy risk for database queries
US20140196158A1 (en) * 2013-01-10 2014-07-10 Lookout, Inc. Method and system for protecting privacy and enhancing security on an electronic device
US20150379275A1 (en) * 2013-02-08 2015-12-31 Thomson Licensing Privacy against inference attacks for large data
US20150106614A1 (en) * 2013-10-14 2015-04-16 Georgia Tech Research Corporation Systems and methods of safeguarding user information while interacting with online service providers

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200095719A (ko) * 2019-02-01 2020-08-11 삼성전자주식회사 전자 장치 및 그 제어 방법
KR102643203B1 (ko) * 2023-02-06 2024-03-05 주식회사 융넷 데이터베이스 추론공격 통제 장치 및 방법

Also Published As

Publication number Publication date
US11087024B2 (en) 2021-08-10
US20170220817A1 (en) 2017-08-03
CN108475321B (zh) 2022-05-27
WO2017131300A1 (en) 2017-08-03
EP3378009A4 (en) 2018-11-14
CN108475321A (zh) 2018-08-31
EP3378009A1 (en) 2018-09-26
KR102154739B1 (ko) 2020-09-10
EP3378009B1 (en) 2021-12-29

Similar Documents

Publication Publication Date Title
KR20180097760A (ko) 추론 공격에 대한 프라이버시 보호 실시간 서비스를 가능하게 하는 시스템 및 방법
TWI772668B (zh) 一種目標對象處理方法、裝置、電子設備及儲存介質
CN108702285A (zh) 用于实现物联网(iot)设备的安全通信的系统和方法
CA2969353C (en) Associating user interactions across multiple applications on a client device
KR20160132394A (ko) 주변 디바이스들을 보안하기 위한 거동 분석
CN112287372B (zh) 用于保护剪贴板隐私的方法和装置
US10362038B2 (en) Maintaining a limited user profile for social networking system users unable to establish a user profile
US11558543B2 (en) Modifying capture of video data by an image capture device based on video data previously captured by the image capture device
US11295026B2 (en) Scan, detect, and alert when a user takes a photo of a computer monitor with a mobile phone
US20140245452A1 (en) Responding to a possible privacy leak
CN109672666B (zh) 一种网络攻击检测方法及装置
CN115277198A (zh) 一种工控系统网络的漏洞检测方法、装置及存储介质
US11341253B2 (en) Terminal apparatus and control method of terminal apparatus
US10795988B2 (en) Device and method of requesting external device to execute task
CA3086381C (en) Method for detecting the possible taking of screenshots
CN107566354B (zh) 网页内容检测方法、装置及存储介质
Gassen et al. Towards Privacy-preserving Mobile Location Analytics.
US11444943B1 (en) Exchange content between client devices when a client device determines a user is within a field of view of an image capture device of the client device and authorized to exchange content
CN107147702B (zh) 文件下载方法及装置
Dhandapani et al. Integrated Smart Alert System for Industrial Applications using Transceiver Module Analysis
JP2013065230A (ja) 情報処理装置、情報処理方法およびプログラム

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right