Korea Digital Contents Society
[ Article ]
Journal of Digital Contents Society - Vol. 21, No. 2, pp.429-437
ISSN: 1598-2009 (Print) 2287-738X (Online)
Print publication date 29 Feb 2020
Received 01 Jan 2020 Revised 01 Feb 2020 Accepted 25 Feb 2020
DOI: https://doi.org/10.9728/dcs.2020.21.2.429

IoT 환경에서 GDPR에 부합하는 선택적 개인정보 동의획득 절차 설계

이용1 ; 김화종2 ; 이구연2, *
1프리랜서
2강원대학교 컴퓨터공학과 교수
Design of Selective User Consent Procedure for Personal Information Collection Compliant to GDPR in IoT Environment
Yong Lee1 ; Hwa Jong Kim2 ; Goo Yeon Lee2, *
1Freelancer
2Professor, Department of Computer Engineering, Kangwon National University, ChunCheon, Korea

Correspondence to: *Goo Yeon Lee Tel: +82-33-250-6394 E-mail: leegyeon@kangwon.ac.kr

Copyright ⓒ 2020 The Digital Contents Society
This is an Open Access article distributed under the terms of the Creative Commons Attribution Non-CommercialLicense(http://creativecommons.org/licenses/by-nc/3.0/) which permits unrestricted non-commercial use, distribution, and reproduction in any medium, provided the original work is properly cited.

초록

의료센서나 웨어러블기기와 같은 많은 IoT 디바이스들은 화면이나 키패드 등의 입출력장치가 결여되고 제한된 자원을 갖는 환경으로 인해 개인정보수집 시 소유자의 동의를 얻기가 어렵다. 최근 GDPR과 같은 관련법에서 개인정보수집 동의에 대해 강력히 규제하면서 해당 비즈니스 분야 발전에 난관이 되고 있다. 본 연구에서는 GDPR의 요구사항을 만족하도록 IoT 환경에서 선택적 개인정보수집에 대한 동의절차를 설계한다. 본 설계에서는 사용자 디바이스가 암호화 상태로 전달한 개인정보에 대하여 데이터 수집서버는 사용자 에이전트와 개인정보수집 동의에 기반하여 연관을 맺음으로써 사용자 에이전트가 선택적으로 동의한 개인정보에 대하여 복호화할 수 있도록 한다. 이와 같은 IoT 시스템에서의 선택적 방식의 개인정보수집 동의절차는 GDPR 등의 법령에서 요구하는 투명성이나 자율성과 같은 규정을 만족하므로 개인정보를 활용하는 IoT 응용서비스를 더욱 활성화할 것으로 기대한다.

Abstract

Many IoT devices such as medical sensors and wearable devices lack screen and keypad, and have limited resources, making it difficult to obtain the owner's consent when collecting personal information. GDPR has severely regulated the consent of the collection of personal information, which poses a challenge to the development of the business field. In this paper, we design the consent procedure for the selective collection of personal information in the IoT environment to satisfy the requirements of GDPR. In this design, personal information is transmitted as an encrypted form. Data collection server must associate with user agent and is allowed to only decrypt the encrypted information for which consent has been obtained. In the IoT system, we can speculate that the selective consent procedure proposed in this paper for collecting personal information will contribute to IoT application services that utilize personal information by satisfying requirements such as transparency and free choice of GDPR.

Keywords:

GDPR, IoT, Personal Information, Privacy Policy, Selective User Consent

키워드:

GDPR, 사물인터넷, 개인 정보, 프라이버시 정책, 선택적 사용자 동의

Ⅰ. 서 론

사람들이 웨어러블 기기와 다양한 센서기기를 장착하게 되면서 새로운 정보들이 수집될 수 있게 되고, 이에 따라 사용자의 개인정보도 이동성을 가지게 되었다[1][2]. 또한 개인정보를 활용하는 많은 응용서비스들이 등장하면서 개인정보수집과 처리에 대한 소유자 동의의 필요성이 강조되고 이의 준수를 명시하는 법령들이 제정되었는데 한국의 개인정보보호법이나 유럽의 일반개인정보보호규정(GDPR, General Data Protection Regulation)이 여기에 속한다[3]-[7]. 개인정보보호 관련법에서는 개인정보의 생성, 수집, 저장, 처리 및 폐기에 이르는 개인정보의 생명주기 전 과정에 대한 엄격한 보호절차와 이의 준수 및 관리책임을 개인정보 수집 주체에게 부여하고 있다. 이러한 개인정보의 수집 및 처리 과정에서 가장 먼저 수행해야 하는 것은 개인정보 수집시의 소유자의 동의절차이다.

개인정보의 수집시 동의 절차에 대한 준수는 관련법에 의하여 규제와 감사를 받으며 위반 시에는 벌금이 부과된다. 우리나라 개인정보보호법의 경우 벌금이 수천만원대 수준으로 개인정보 수집 주체에게 엄격한 준수를 요구하기에는 미흡하나 유럽에서 시행되는 GDPR의 경우 벌금액이 전세계 매출액의 4%까지 부과할 수 있게 되어 서비스별 개인정보수집절차의 적법성과 엄격한 관리를 위한 철저한 대비가 요구되고 있다. 개인정보수집 동의절차는 오프라인의 경우에는 서비스관련자 간에 대면으로 관련서류를 확인한 후 직접 서명을 하게 되며, 온라인상에서도 정보소유자가 스마트 기기등을 통하여 개인정보처리약관을 확인하고 이에 대한 동의 또는 거부를 선택할 수 있게 함으로서 법적 절차를 준수하게 된다.

최근 다양한 IoT(Internet of Things) 디바이스가 상용화되면서 많은 정보를 생성하고 처리할 수 있게 됨에 따라 이를 활용한 여러 가지 응용 분야가 등장하여 생활과 밀접한 서비스를 제공하고 있다. 예를 들면 홈오토메이션을 위한 IoT 시스템이 집안 곳곳에 설치되어 터치기능을 가진 스크린을 부착한 냉장고, 인터넷 통신이 가능한 TV, 셋탑박스, 홈유틸리티 감시장치 등을 게이트웨이로 하여 IoT 정보수집 주체에게 집안의 정보를 전달할 수 있다. 이러한 기능은 집안의 가전제어, 불법 침입탐지, 원격검침, 온도 및 습도 등 실내환경제어, 에너지 사용량 모니터링 등의 서비스를 수행하여 생활의 질을 높일 수 있게 한다. 또한 개인화된 웨어러블 IoT 디바이스들은 신체에 부착되어 신체에서 발생하는 여러 정보를 센싱한 후 센싱 게이트웨이를 통하여 부가적인 처리를 수행할 수 있다. 자이로 센서나 가속도 센서같은 운동정보를 센싱하는 IoT 디바이스나 Fitbit과 같이 심박수, 혈압 등 신체의 건강 신호를 추적하는 IoT 디바이스들은 신체의 이상신호를 실시간으로 검출하여 의료 기관으로 전송할 수도 있다.

앞에서 언급한 IoT 시스템에서 생성되고 처리되는 여러 가지 정보는 개인정보로 포함할 수 없는 단순 정보도 있지만, 개인의 신상이나 사생활을 노출하는 개인정보에 해당하는 경우도 존재한다. 또한 개별적으로는 단순 정보로 보여서 개인정보로 취급되지 않지만 여러 가지 정보가 결합하게 될 경우 새로운 정보의 형태를 가지게 되어 개인정보에 해당되는 상황도 발생한다. 이런 경우 개인정보 관련법의 적용을 받게 되는데, IoT 환경은 IoT 디바이스가 가지는 본질적인 자원의 제한으로 인하여 해당 법령의 준수가 쉽지 않다. 특히 개인정보수집 동의를 위해서는 화면이나 키보드와 같은 입출력장치가 필요한데, 이를 탑재하지 못한 IoT 디바이스에서는 GDPR 등에서 명시하고 있는 자율성(사용자가 거부할 수 있는 권리)과 투명성(개인정보 제공자가 약관에 쉽게 접근할 수 있어야 하고 약관을 이해하기 쉽게 제공하여야 함)과 같은 개인정보수집 동의요건을 준수하기가 어렵다. 그러므로 이러한 문제를 해결하기 위해서는 제한된 자원을 가진 IoT 시스템에 적합하고 GDPR 등 개인정보보호 관련법에서 제시하는 자율성과 투명성의 수집 동의 요건을 만족하는 메커니즘의 설계가 필요하다. 이에 본 논문에서는 IoT 환경에서의 개인정보수집 동의절차에서 발생할 수 있는 보안 요구사항을 살펴보고 개인정보수집에 대한 선택적 동의를 가능하게 하는 안전한 개인정보수집 동의절차 방안을 제안하며 이의 안정성을 검증한다.


Ⅱ. 관련 연구

위치 기반 응용서비스가 등장하면서 사용자들은 위치에 따른 편의 정보를 제공받는 편리함을 누리게 되었으나, 다른 한편으로 사용자 위치정보가 추적되는 것에 대한 불안함을 가지게 되었다. 아마존에 상품을 검색할 경우 관련상품이나 정보에 대한 광고가 표시되는 것 역시 편리함과 정보노출의 불안함을 동시에 가져온다. IoT 환경에서 개인정보 수집을 기반으로 하는 응용서비스를 제공할 때에도 동일한 상황이 전개되는데, 이에 대한 최소한의 대처방법으로 GDPR 등에서 규정한 개인정보 수집시의 사용자에 대한 동의를 받을 필요성이 제기되었고, 이를 위한 여러 방안이 활발히 연구되고 있다. 현재까지 제안된 방법의 대부분은 적용도메인에 대한 장점을 가지는 대신 GDPR의 요구사항을 부분적으로만 만족시킬뿐 아직까지 법령에서 제시한 규정을 만족하는 연구는 미흡한 상황이다.

[8]의 연구에서는 IoT에서 이루어지는 통신 패턴에 따른 프라이버시, 동의 및 권한 측면에서 해결해야 할 문제들에 대하여 논의하고 다양한 IoT 디바이스의 이질성과 제한된 자원, 디바이스의 분류(Identity) 및 소유권을 고려하여 사용자의 관리가 가능한 프라이버시 정책들에 필요한 도전 과제들을 제시하였다. [9]에서는 IoT 환경에서 사용자와 서비스 공급자, IoT 디바이스가 구성하는 공간을 결합하는 정책에 의해 관리되는 에이전트 기반의 개인정보수집 동의절차를 설계하였다. 이러한 방식은 데이터 소유자의 이동성이 고려되지 않고 스마트시티나 스마트홈처럼 기반시설이 갖춰진 IoT 도메인으로 제한하는 단점이 있어 현행 법령체계의 적용에는 적당하지 않다.

[1]에서는 IoT 디바이스로 IoT 환경이 구축되는 제한된 상황을 고려한 연구를 수행하였으며, 사용자와 서비스제공자 사이에 안전한 채널을 가정하고 가상 ID가 계층적으로 관리되는 계층적 ID 기반 암호(Hierarchical Identity-Based Cryptography) 방법을 제안하여 서비스제공자가 사용자로부터 정보수집에 대한 동의를 얻을 수 있도록 하였으나 사용자의 선택권을 보장하지 못하고 있다. [10]에서는 스마트폰를 포함한 저전력 블루투스(BLE, Bluetooth Low Energy) 디바이스를 이용한 동의 절차를 제안하였다. 이 논문에서는 PrivacyBat라는 BLE 기반의 프레임워크를 설계하고 프라이버시가 포함된 정보를 취급할 때 사용자의 프라이버시 선호도에 따른 동의여부 규정을 정의하였다.

[11]의 연구에서는 GDPR에서 강조하는 동의절차의 투명성을 제공하기 위한 방안을 제시하였다. 데이터 수집장치의 존재를 감지하고 사용자가 IoT 디바이스와 연결된 스마트기기를 이용하여 개인정보수집 동의절차를 수행할 때 데이터 수집장치와 사용자 디바이스의 직접통신으로 프라이버시 정책에 대한 내용을 수신하고 선택할 수 있는 직접적인 방법과 사용자가 프라이버시 정책을 저장하는 레지스트리에 접속하여 선택할 수 있도록 하는 등록기반 방법을 제안하였다. 이 연구에서는 개인정보수집 동의에 대한 투명성을 고려하는 원칙을 제안하였으나 보안 요구사항에 대한 세부적인 절차는 미비한 상황이다.

IoT의 중요한 응용의 하나인 스마트 헬스서비스를 제공하는데 필요한 헬스정보는 사용자들이 특히 민감하게 생각하는 개인정보로서 많은 연구가 이를 다루고 있다. [12]에서는 기존의 웹사이트가 보여주는 동의절차는 사용자와 헬스정보의 다양성을 반영하지 못하는 것에 주목하고 헬스 도메인에서 정보를 수집하고 이용하는 IoT 환경이 고려해야 하는 요구사항을 프라이버시 적용 설계(Privacy by Design)로 제안하고 동의 수준을 분류하였다. [13]은 헬스케어 환경에서 PrivacyProtector라는 프레임워크를 제안하고 비밀공유와 공유정보 리페어링 방법으로 공격에 대비하여 환자정보의 프라이버시를 보호할 수 있도록 하였다.

[14]에서는 GDPR에 명시된 요구사항들이 법령 특유의 모호성과 특별성을 가지므로 개인정보의 생명주기를 고려하여 동의라는 표현의 기원, 과정, 허가, 의무사항에 대한 시맨틱 모델을 제시하고 모델에서 정의한 동의허가를 준수하는 데이터 처리와 관리에 대한 레퍼런스 구조를 제안하였다. 또한 [15]에서는 유비쿼터스 센싱 네트워크에서 수집정보에 대한 프라이버시의 보호 기술에 대하여 연구하였다.


Ⅲ. 사물인터넷 환경에서 취급하는 정보의 분류 및 특성

스마트기기, 웨어러블기기, 센싱기기 등의 발전으로 사용자의 이동성과 함께 개인정보도 이동성을 가지게 되었다. 따라서 제한된 장소에서 제한된 디바이스를 통해서만 정보를 수집하는 기존의 응용서비스와 달리, 사용자의 개인정보가 사용자가 소지한 디바이스를 통해서만 수집되는 것이 아니라 여러 곳에 산재해있는 센싱기기에 의해 수집될 수 있고, 사용자 소유의 디바이스가 수집한 정보도 사용자의 의도와 상관없이 여러 정보수집 서버에 의해 수집될 수 있게 되었다. 검색엔진이나 쇼핑몰처럼 사용자가 의도한 사이트나 정보수집 서버와는 미리 개인정보 수집에 대한 동의절차를 수행할 수 있지만, 사용자 IoT 디바이스의 이동성에 따라 정보의 수집사이트나 수집도메인을 이동하게 될 경우 미리 동의절차를 수행할 수 없는 경우가 발생한다. 이 장에서는 IoT 환경에서 수집되는 정보를 특성과 이동성에 맞춰 분류한다. 여기서 이동성이란 사용자 IoT 디바이스의 이동으로 개인정보가 정보수집자에게 수집되는 경우(사용자 이동)와 정보를 수집하는 센싱기기나 센싱게이트웨이의 이동으로 고정된 정보가 수집되는 경우(수집자 이동)를 말한다.

먼저 사용자의 이동과 수집자의 이동이 모두 발생하지 않는 경우를 살펴본다. 이는 사용자가 이동하더라도 정보수집서버를 전환하지 않고, 또한 정보수집자도 이동성을 갖지 않는 경우이다. 다음의 정보들이 해당된다.

∙ 구매정보 : 온라인 쇼핑몰 등에서 서비스나 물건 등을 살 때, 쇼핑몰회사와 신용카드사와 같은 페이먼트회사 등은 사용자의 구매취향 등의 정보를 수집하여 마케팅이나 추후 거래 등에 이용할 수 있다.
∙ 금융정보 : 사용자가 은행이나 주식거래를 수행함에 따라 사용자의 금융거래 정보가 수집될 수 있다.
∙ 검색정보 : 검색엔진이 수집하여 마케팅에 활용할 수 있다.
∙ 홈오토메이션정보 : 에너지 사용량이나 사용패턴, 가전제어 등의 정보가 수집되어 유틸리티 서비스제공자의 가격정책에 활용될 수 있다.

다음은 사용자의 이동으로 정보수집 서버나 도메인에 대한 전환이 발생하는 경우이다. 다음의 정보들이 해당된다.

∙ CCTV, 과속카메라, 배출가스탐지 등 : 교통정보시스템이나 감시카메라가 통행하는 행인의 이동정보나 차량을 상대로 교통정보 등을 수집하고 이를 활용할 수 있다.
∙ 웨어러블 기기의 센싱정보 : 걸음 수, 운동량 운동정보 등이 여기에 속한다. 사용자가 장착한 IoT 디바이스가 이동하면서 새로운 센싱 게이트웨이에 접속하게 되고 이 게이트웨이는 사용자 IoT 디바이스가 센싱한 개인정보를 수집하게 된다.
∙ 헬스정보 : 원격의료와 같은 응용서비스로 전달되는 사용자의 혈압, 심박수, 투약정보 등의 헬스정보는 의료기관이나 보험회사 등에 중요한 마케팅 자료로 활용될 수 있다.
∙ 환경정보 : 사용자 주변환경의 온도, 습도, 오염도 측정값 등은 사용자의 건강정보 등으로 활용될 수 있으며 사용자의 이동에 따라 도메인도 이동하게 된다.

마지막으로 사용자의 이동과 수집자의 이동이 동시에 발생할 수 있는 경우이다. 다음의 정보들이 해당된다.

∙ 블랙박스 : 대부분의 차량이 블랙박스를 장착하고 24시간 주변을 촬영하므로 정보소유자는 누가 정보를 수집하는 지도 알 수 없고 수집하는 차량도 누구를 대상으로 하는지도 인지하지 못하고 개인정보를 취급하게 된다.
∙ 지능형 차량 정보시스템 : 지능형 차량 정보시스템에 장착된 카메라, 속도감지, 주변탐지 센서기기 등이 차량의 이동성을 기반으로 주변 정보를 수집하게 된다.
∙ 위치정보 : 사용자의 IoT 디바이스를 통해 위치정보를 취득하여 여행, 출장 등에 활용할 수 있다. 또한 사용자의 개인정보를 센싱할 때 위치정보도 같이 수집될 수 있으며, 이를 이용한 사용자의 이동패턴 정보를 활용할 수 있게 된다.
∙ VR 게임 등의 게임정보 : VR 게임의 경우 게임유저들은 이동하면서 상대유저의 정보를 센싱하고 취득하므로 사용자의 이동과 수집자의 이동이 동시에 발생할 수 있다.

<표 1>은 이동성에 따른 정보의 분류를 보여준다. 이 논문에서는 두 번째와 세 번째의 사용자나 수집자가 이동성을 갖는 경우의 개인정보수집 동의절차에 대해 논의한다.

Classification of information collected in the IoT environment


Ⅳ. 모델 및 보안 요구사항

4-1 모델

본 논문에서 제안하는 IoT 환경에서의 선택적 개인정보수집 동의 방안의 시스템 모델과 개인정보와 처리정보의 흐름을 <그림 1>에 보여준다.

Fig. 1.

Model of Personal Information Processing in IoT

<그림 1>에서 개인정보를 생성하는 사용자 IoT 디바이스(User IoT Device)는 센싱게이트웨이를 통하여 개인정보를 수집하는 데이터 수집서버(Data Collecting Server)와 통신을 수행한다. 사용자 에이전트(User Agent)는 사용자 IoT 디바이스의 초기화 설정과 설정 갱신 절차를 수행한다. 본 논문에서 제안하는 IoT 시스템의 개인정보수집에 따른 동의 획득과정과 개인정보수집 절차는 1단계 초기화 설정과 2단계 개인정보 수집에 대한 동의획득, 3단계 개인정보 수집과정으로 이루어진다.

4-2 보안 요구사항

1) 인증

앞에서 언급한 바와 같이 사물인터넷 환경에서는 이동성을 가진 사용자 IoT 디바이스가 사용자의 개인정보를 센싱하여 데이터 수집서버에게 전송한다. 이때 데이터 수집서버와 사용자 IoT 디바이스간, 데이터 수집서버와 사용자 에이전트간에 상호인증이 필요하다. 이에 대한 연구는 이미 활발히 진행 중이고 이 논문에서는 GDPR에 따르는 개인정보에 대한 동의획득 방안을 다루므로 여기서는 서버와 디바이스간의 인증은 다루지 않는다.

2) 무결성

사용자 IoT 디바이스가 동의과정에서 사용하는 디바이스의 ID와 사용자의 연락처, 정보에 대한 일련번호, 사용되는 암호화 정보 등은 전송 중에 위변조되지 않았음을 보장하여야 한다. IoT 디바이스와 사용자 에이전트간의 통신은 동일 사용자의 관리하에 있으므로 다루지 않는다.

3) 기밀성

사용자의 개인정보에 대한 안정성을 보장하기 위해서는 이에 대한 동의를 획득한 데이터수집 서버만이 개인정보를 수집할 수 있어야 한다. 이를 위해서는 사용자 IoT 디바이스가 센싱하여 데이터수집 서버로 전송하는 개인정보는 전송 중에도 기밀성을 보장하여 의도하지 않은 자가 정보를 취득할 수 없어야 하고 정보가 노출되지 않아야 한다. 개인정보를 암호화할 키가 데이터수집 서버에 전달될 때에도 기밀성이 보장되어야 한다.

4) 키 소유 증명(Proof of Possession)

데이터 수집서버와 사용자 IoT 디바이스가 서로에게 공개키를 전달할 때 이에 대응하는 개인키를 소유하고 있음을 증명할 수 있어야 한다. 그렇지 않을 경우 데이터 수집서버와 사용자 IoT 디바이스는 자신의 존재를 위장할 수 있게 된다.

5) 재전송공격(Replay Attack) 방지

사용자 IoT 디바이스가 데이터 수집서버로 전송한 사용자의 개인정보를 중간에서 가로채어 재전송공격에 사용할 경우 데이터 수집서버는 정상적인 정보를 수신할 수 없게 되고 이로 인하여 제대로된 응용서비스를 제공할 수 없게 된다. 또한 악의적인 데이터 수집서버가 사용자 에이전트와 데이터 수집서버 간에 개인정보수집 동의절차 메시지를 재활용하여 재전송공격을 수행할 경우 사용자의 동의를 획득할 수 있게 된다.

6) IoT 적합성

웨어러블기기를 장착한 사용자의 이동성으로 인하여 개인정보수집은 정보 수집 도메인을 이동하면서 발생한다. 또한 지능형 차량 정보시스템과 같은 응용서비스의 등장으로 정보수집 도메인도 이동할 수 있게 되었다. 따라서 GDPR을 따르는 개인정보수집 동의 획득절차는 사용자나 정보수집 도메인의 이동성을 고려하여 이러한 환경에 적응할 수 있어야 하고 사용자의 뜻에 따라 선택적 동의를 할 수 있어야 한다.


Ⅴ. GDPR에 부합하는 선택적 개인정보수집 동의획득 방안 설계

5-1 가정과 표기

다음은 제안하는 선택적 개인정보수집 동의획득 방안을 설계하는 데 필요한 가정이다.

∙ 사용자 에이전트와 사용자 IoT 디바이스는 동일 사용자의 관리하에 있고 안전한 채널을 통해 통신한다고 가정한다.
∙ 데이터 수집서버가 개인정보 (PII, Personal Identifiable Information) 소유자로부터 수집동의를 얻기 위하여 접촉할 수 있는 PII 소유자의 연락처는 이메일 주소나 각종 SNS 어카운트를 가정한다.

다음은 제안하는 방식의 설명에 필요한 표기를 나타낸다.

IDdev : 디바이스의 식별자(영구적이거나 임시적)
sqno : 메시지의 일련번호
CTinfo : PII 소유자의 익명이거나 식별가능한 연락처
T : 타임스탬프
hash( • ) : 암호학적 일방향 해쉬 함수
∙ ‖ : Concatenation
CS0 : 데이터 수집서버가 개인정보수집 동의획득을 위해 사용자 에이전트에게 보내는 요청 메시지의 암호화에 사용되는 암호 알고리즘
CPP : PII 값을 암호화하는 알고리즘
PuK0, PrK0 : 데이터 수집서버가 개인정보수집 동의획득을 위해 사용자 에이전트에게 보내는 요청 메시지의 암호화에 사용되는 공개키와 이에 대응하는 IoT 디바이스가 소유하는 개인키
PuKi, PrKi, i = 1,⋯,n : 사용자 IoT 디바이스가 PII 타입 i를 암호화하는 개인키와 데이터 수집서버가 복호화하는 공개키
PuKD, PrKD : 데이터 수집서버의 공개키쌍으로 사용자 에이전트가 수집에 동의한 PII 타입에 대한 개인키 PrKi들을 암호화하는데 사용되는 공개키와 이에 대응하는 개인키
E( • )x : 키 x를 사용하여 암호화
sign( • )x : 키 x를 사용하여 공개키 알고리즘으로 서명
Ptypei : 개인정보의 PII 타입을 나타낸다. 몇 가지의 PII의 예를 <표 2>에 나타내었다.
Pvaluei : PII 타입에 해당하는 PII 값
CertPuKD : 데이터 수집서버의 공개키 PuKD에 대한 인증서
Policy : 데이터 수집서버의 개인정보수집 및 처리정책에 대한 문서나 이에 대한 링크

PII type classification

<그림 2>는 선택적 개인정보수집 동의획득 방안에서 사용자 IoT 디바이스의 초기화 설정과 데이터 수집서버간에 개인정보수집 동의 요청 및 정보수집 절차를 보여준다.

Fig. 2.

Personal information collection consent procedure in IoT

5-2 사용자 IoT 디바이스의 초기화

사용자 IoT 디바이스의 초기화 설정은 IoT 디바이스의 요청에 따라 사용자 에이전트가 수행한다. 사용자 에이전트는 PC나 스마트 기기와 같이 입출력 장치를 가진 디바이스에서 수행된다. 사용자 IoT 디바이스의 초기화 설정에는 IoT 디바이스에서 사용되는 암호 및 해쉬함수 등의 암호알고리즘과 암호키들이 생성되고, 이후 주기적으로 또는 필요에 따라 갱신한다. 사용자 IoT 디바이스의 초기화 설정과정은 다음과 같다.

5-3 개인정보수집 동의 요청 단계

1) 사용자 IoT 디바이스의 PII 메시지 전송

사용자 에이전트로부터 암호 알고리즘과 암호키, 사용자 연락처 정보 등을 전달받은 사용자 IoT 디바이스는 센싱한 개인정보를 다음과 같이 PII 메시지 형식으로 구성하여 데이터 수집서버로 전송한다.

2) 데이터 수집서버의 개인정보수집 동의요청

<그림 3>은 데이터 수집서버의 개인정보수집 동의요청 절차를 보여준다.

Fig. 3.

Consent request process of data collection server

데이터 수집서버는 사용자 IoT 디바이스가 전송한 PII 메시지를 수신하고 자신의 연관 테이블을 검색하여 수신한 PII 메시지가 기존에 수신된 디바이스와 연관된 것인지를 체크한다. 검색결과에 따라 PII 값들을 복호화하여 개인정보를 수집하거나 또는 기존에 연관이 되어 있지 않은 경우 IoT 디바이스의 사용자 에이전트에게 개인정보수집 동의요청을 전송한다.

3) 사용자 에이전트의 개인정보수집 동의 수행

사용자 에이전트는 Request_Consent 메시지를 수신하면 이에 대한 정당성을 검증하고 데이터 수집 서버가 요청한 개인정보수집 동의절차를 수행한다.

4) 데이터 수집 서버의 개인정보수집

CertPuKD에 대응하는 개인키를 소유하지 않는 다른 서버의 경우 Consent_for_selected_PIIs를 수신하더라도 암호화된 PuKi들을 복호화할 수 없고, 인증서의 주체인 데이터 수집서버만이 유효한 복호키를 획득할 수 있다. 따라서 PII 값을 복호화할 수 있는 PuKi는 동의를 획득한 선택적 데이터 수집서버에게만 공개되고 데이터 수집서버는 이 키를 이용하여 PII 값을 복호화하고 개인정보를 수집한다. 즉 데이터 수집서버는 사용자의 동의에 따라 사용자 에이전트로부터 PuKi를 받은 PII 타입 i에 대해서만 선택적으로 개인정보를 수집할 수 있게 된다.


Ⅵ. 보안 요구사항 분석

이 장에서는 4-2절에서 언급한 보안 요구사항에 따라 제안하는 방식의 안전성을 분석하고자 한다.

6-1 무결성 검증

제안하는 방식에서는 사용자 IoT 디바이스가 PII 메시지에 IDdev, sqno, T, CTinfo에 대한 해쉬값 hash(IDdevsqnoTCTinfo)와 CS0PuK0, CSP에 대한 해쉬값, hash(CSoPuK0CSP)을 포함하여 전송하고 이를 수신하는 데이터 수집서버는 이 해쉬값들을 검증하여 IoT 디바이스의 ID 정보나 일련번호, 연락처정보, 암호정보 등이 위변조되지 않았음을 확인할 수 있다. 데이터 수집서버가 전송하는 Request_Consent 메시지에도 IDdev, sqno, T에 대한 해쉬값 hash(IDdevsqnoT)를 포함하며 이를 수신한 사용자 에이전트는 데이터 수집 서버가 수집동의를 요청하는 사용자 IoT 디바이스에 대한 정보를 위변조없이 확인할 수 있게 된다.

6-2 개인정보에 대한 기밀성 제공

사용자 IoT 디바이스는 PII 메시지에 포함되어 전송하는 PII 값을 사용자 에이전트가 미리 데이터 수집 서버에게 전달한 PII 타입별 공개키에 대응하는 개인키로 암호화한다. 데이터 수집서버는 사용자 에이전트로부터 개인정보 수집에 대한 동의를 획득한 PII 정보 타입에 대해서만 공개키를 전달받고 해당 PII 타입에 대해서만 개인정보를 획득할 수 있게 된다. 사용자 에이전트로부터 동의를 획득하지 못한 PII 타입에 대해서는 PII 메시지를 수신하더라도 PII 값에 대한 암호를 복호화하지 못하고 내용을 확인할 수 없게 된다. 사용자가 의도하지 않은 데이터 수집서버들도 사용자 IoT 디바이스가 보낸 PII 메시지를 수신하더라도 PII 값을 복호화할 키를 알지 못하므로 개인정보를 획득할 수 없게 된다.

6-3 키 소유 증명(Proof of Possession)

사용자 IoT 디바이스는 공개키 PuK0에 대응하는 개인키 PrK0의 소유 증명을 위해 메시지 M을 PrK0로 서명한 sign(M)PrK0를 PII 메시지에 포함한다. 이를 수신한 데이터 수집서버는 PII 메시지에서 IoT 디바이스의 공개키 PrK0를 추출하여 이 서명값을 검증하고 사용자 IoT 디바이스의 개인키 PrK0의 소유를 확인할 수 있다. 또한 데이터 수집서버는 공개키 PuKD에 대응하는 개인키 PrKD의 소유 증명을 위해 Request_Consent 메시지에 개인키 PrKDPolicy에 서명한 값 sign(Policy)PrKD을 포함한다. 이를 수신한 사용자 에이전트는 Request_Consent 메시지에 포함된 CertPuKD에서 데이터 수집서버의 공개키 PuKD를 추출하여 sign(Policy)PrKD값을 검증하고 데이터 수집서버의 개인키 PrKD에 대한 소유를 확인한다.

6-4 재전송공격 방지

사용자 IoT 디바이스는 PII 메시지에 타임 스탬프 T와 이에 대한 해쉬값 hash(IDdevsqnoCTinfo)을 포함하여 이 메시지에 대한 재전송공격에 대비한다. 이 메시지를 수신한 데이터 수집서버는 해쉬값을 검증하여 타임스탬프 T의 무결성을 확인하고 이 메시지의 중복성을 검증할 수 있다. 또한 데이터 수집서버가 사용자 에이전트에게 전송하는 Request_Consent 메시지에도 타임 스탬프 T와 이에 대한 해쉬값 hash(IDdevsqnoT)가 포함되므로 사용자 에이전트는 이 해쉬값을 검증하고 타임스탬프를 확인하여 데이터 수집서버의 동의 요청 메시지가 중복 사용되지 않음을 확인할 수 있다.

6-5 IoT 적합성

이 논문에서 제안하는 동의절차는 사용자가 이동성을 가지고 새로운 데이터 수집서버에 접속하게 될 경우에도 효율적으로 동작할 수 있다. 데이터 수집서버는 처음 수신하는 PII 메시지를 분석하고 연관 테이블을 검색하여 해당 사용자 IoT 디바이스에 대한 항목을 찾지 못할 경우 개인정보수집 동의절차를 수행한다. 사용자의 동의를 얻기 전에는 PII 메시지를 수신하더라도 이를 복호화할 키를 갖지 못하므로 사용자의 개인정보를 획득할 수 없다. 이러한 과정은 유럽에서 도입한 GDPR에서 명시하고 있는 개인정보수집 동의절차를 만족하게 된다. 즉 데이터 수집서버는 사용자 에이전트를 통하여 사용자가 응용서비스의 개인정보 수집 및 처리 정책에 대하여 액세스할 수 있게 하여 개인정보보호법이나 GDPR에서 요구하는 동의획득의 투명성 조건을 만족할 수 있게 된다.


Ⅶ. 결론

본 논문에서는 IoT 환경에서 제공되는 다양한 응용서비스가 사용자의 개인정보를 취득하고 활용함에 따라 사용자의 개인정보를 보호하고 정당한 절차에 따라 사용될 수 있도록 하기 위해 제정된 개인정보보호법이나 유럽의 GDPR과 같은 개인정보보호법령에서의 규정을 만족하는 개인정보수집 동의 절차를 제안하였다.

제안하는 방안에서는 사용자 IoT 디바이스가 사용자 에이전트를 통하여 초기화를 수행하여 개인정보 암호화에 적용될 암호화 기법 및 암호키 등을 설정하고 이 암호키를 이용하여 개인정보를 암호화하여 전송한다. 암호화된 개인정보를 수신한 데이터 수집서버는 개인정보수집 동의를 획득하기 위해 사용자 에이전트에 개인정보수집 및 처리정책에 대한 정보를 전달하고 사용자가 사용자 에이전트를 통해 이를 열람하고 개인정보 항목에 대하여 선택적으로 동의절차를 수행할 수 있도록 한다. 데이터 수집서버는 수집동의를 획득한 개인정보 항목을 복호화할 수 있는 공개키를 전달받고 사용자 IoT디바이스가 보낸 암호화된 개인정보를 복호화하고 수집할 수 있게 된다.

또한 이 논문에서는 사용자 IoT 디바이스와 데이터 수집서버 간에 동의절차를 수행할 때 필요한 보안 요구사항들을 살펴보고 제안하는 방식이 이 요구사항들을 만족하는 지를 검증하였다. 보안 요구사항들은 의도하지 않은 데이터 수집서버가 사용자의 수집동의를 획득하거나 동의를 획득하지 않은 채로 사용자의 개인정보를 획득하는 것에 대한 방지를 목적으로 한다.

위와 같이 본 논문에서 제안하는 IoT 환경에서의 선택적 개인정보수집에 관한 동의절차는 법령에서 규정하는 투명성이나 자유로운 선택 등의 요구사항을 만족하고 또한 IoT 환경에 대한 적합성을 반영하고 있다. 이에 한정된 자원을 가진 IoT 디바이스를 활용하는 IoT 기반의 응용서비스들이 법적인 다툼없이 개인정보를 수집하고 취급하여 고부가가치의 비즈니스 분야로 확장하는데 크게 기여할 수 있을 것으로 기대된다.

Acknowledgments

이 논문은 2018년도 정부(과학기술정보통신부)의 재원으로 정보통신기술진흥센터의 지원을 받아 수행된 연구임(No. 2018-0-00261, IoT 환경에서 일반개인정보보호규정에 부합(GDPR Compliant)하는 개인정보 관리 기술 개발)

참고문헌

  • M. Laurent, J. Leneutre, S. Chabridon, and I. Laaouane, “Authenticated and Privacy- Preserving Consent Management in the Internet of Things,” Procedia Computer Science, Vol. 151, pp.256-263, 2019 [https://doi.org/10.1016/j.procs.2019.04.037]
  • G. Rosner and E. Kenneally, “Privacy and the Internet of Things: Emerging Frameworks for Policy and Design,” UC Berkeley Center for Long-Term Cybersecurity/Internet of Things Privacy Forum. Available at SSRN: https://ssrn.com/abstract=3320670, , 2018
  • D. Bastos, F. Giubilo, M. Shackleton and F. El-Moussa, “GDPR Privacy Implications for the Internet of Things,” 4th Annual IoT Security Foundation Conference, London, UK, Dec. 2018
  • www.law.go.kr/lsInfoP.do?lsiSeq=195062&efYd=20171019#0000, : [accessed: Sep. 30, 2018]
  • Proposal for a Regulation of the European Parliament and of the Council concerning the respect for private life and the protection of personal data in electronic communications and repealing Directive 2002/58/EC (Regulation on Privacy and Electronic Communications), European Commission, Jan. 2017.
  • Regulation 2016/679 of the European Parliament and of the Council of 27 April 2016 on the protection of natural persons with regard to the processing of personal data and on the free movement of such data, and repealing Directive 95/46/EC (General Data Protection Regulation), Official Journal of the European Union., May 2016.
  • www.gdpr-info.eu
  • C. Sengul, "Privacy, consent and authorization in IoT," 20th Conference on Innovations in Clouds, Internet and Networks, pp. 319-321, 2017. [https://doi.org/10.1109/ICIN.2017.7899432]
  • R. Neisse, G. Baldini, G. Steri, Y. Miyake, S. Kiyomoto, and A.R. Biswas, "An agent- based framework for Informed Consent in the internet of things", IEEE 2nd World Forum on Internet of Things, pp. 789-794, 2015. [https://doi.org/10.1109/WF-IoT.2015.7389154]
  • S.-C. Cha, M.-S. Chuang, K.-H. Yeh, Z.-J. Huang, and C. Su, "A User-Friendly Privacy Framework for Users to Achieve Consents With Nearby BLE Devices", IEEE Access, Vol. 6, pp. 20779-20787, 2018. [https://doi.org/10.1109/ACCESS.2018.2820716]
  • C. Castelluccia, M. Cunche, D. Le Metayer, and V. Morel, "Enhancing Transparency and Consent in the IoT", IEEE European Symposium on Security and Privacy Workshops, pp. 116-119, 2018. [https://doi.org/10.1109/EuroSPW.2018.00023]
  • Y. O’Connor, W. Rowan, L. Lynch, and C. Heavin, “Privacy by Design: Informed Consent and Internet of Things for Smart Health,” Procedia Computer Science, Vol. 113, pp. 653-658, 2017 [https://doi.org/10.1016/j.procs.2017.08.329]
  • E. Luo, M.Z.A. Bhuiyan, G. Wang, M.A. Rahman, J. Wu, and M. Atiquzzaman, “Privacy Protector: Privacy-Protected Patient Data Collection in IoT-Based Healthcare Systems,” IEEE Communications Magazine, Vol. 56, Issue 2, pp. 163-168, 2018 [https://doi.org/10.1109/MCOM.2018.1700364]
  • K. Fatema, E. Hadziselimovic, H.J. Pandit, C. Debruyne, D. Lewis, and D. O’Sullivan, “Compliance through Informed Consent: Semantic Based Consent Permission and Data Management Model,” 5th Society, Privacy and the Semantic Web-Policy and Technology workshop, pp. 60-75, 2017.
  • J-M Kang and K-C Bang, “A Study on Protection Technology and Scope about Information Privacy in Ubiquitous Sensing Network Environment,” Journal of Digital Contents Society, Vol. 7, No. 4, pp. 301-308, 2006.

저자소개

이 용(Yong Lee)

1997년 8월 : 연세대학교 컴퓨터과학과(이학석사)

2001년 2월 : 연세대학교 컴퓨터과학과(공학박사)

2001년~2003년 : 한국정보보호진흥원 선임연구원

2004년~2005년, 2009~2012년 코넬대학교 방문연구원

2005년~2007년 삼성전자 통신연구소 책임연구원

2007년~2011년 충주대학교 전자통신공학전공 조교수

※관심분야:네트워크 보안, 차세대 인터넷, IoT보안, 이동통신망 보안, 정보보호

김화종(Hwa Jong Kim)

1982년 : 서울대학교 전자공학과 (학사)

1984년 : KAIST 전기및전자과 (석사)

1988년 : KAIST 전기및전자과 (박사)

1993년 : 버클리대학 교환교수

2000년 : 워싱턴대학 교환교수

1988년~현재 : 강원대학교 컴퓨터정보통신공학과 교수

2013년~2017년 : 강원대학교 데이터분석센터장

※관심분야: 데이터 통신, 데이터 분석, 데이터사이언스

이구연(Goo Yeon Lee)

1986년 : 서울대학교 전자공학과 (학사)

1988년 : KAIST 전기및전자공학과 (석사)

1993년 : KAIST 전기및전자공학과 (박사)

1993년~1996년: 디지콤정보통신 연구소

1996년: 삼성전자

1997년~현재: 강원대학교 컴퓨터공학과 교수

2004년7월~2005년2월 : 미국 Cornell 대학교 방문교수

2010년1월~2011년1월 : 미국 Cornell 대학교 방문교수

2012년8월~2014년2월 : 강원대학교 IT 대학 부학장

※관심분야:데이터통신, 컴퓨터네트워크, 네트워크 보안, 차세대 인터넷, 네트워크 성능분석, 암호학, 정보보호관리체계

Fig. 1.

Fig. 1.
Model of Personal Information Processing in IoT

Fig. 2.

Fig. 2.
Personal information collection consent procedure in IoT

Fig. 3.

Fig. 3.
Consent request process of data collection server

Table 1.

Classification of information collected in the IoT environment

Classification of Information Mobility
Moving of Information
Collection Domain
according to User Mobility
Mobility
of Sensing
Gateway
Purchase, Financial, Search, Home Automation × ×
CCTV, Speed Camera, Health, Environment ×
DashCam, Intelligent Transport System, Location, VR Game

Table 2.

PII type classification

Type Actual Information Sensed
Identifier name, age, gender, address, phone number, etc
Biomedical info temperature, height, weight, heart rate, blood pressure, dosage, drug
Location, ITS visiting location, travel, business trip, velocity
Environment room temperature, humidity, air pollution
Movement momentum, walking distance, steps pattern, exercise pattern
Nutrition meal, water intake, alcohol
Interaction human interaction, human computing interaction, SNS, internet activity

Step 1. 사용자 IoT 디바이스가 Request_initialization(IDdev)를 생성하여 사용자 에이전트로 전송한다.
Step 2. 사용자 에이전트는 데이터 수집서버가 개인정보수집 동의요청 메시지를 암호화하는데 사용할 암호알고리즘 CS0와 공개키쌍 PuK0와 PrK0를 생성한다.
Step 3. 사용자 에이전트는 사용자 IoT 디바이스가 PII 값을 암호화하는데 필요한 암호 알고리즘 CSPn개의 PII 타입에 대한 공개키쌍 PuKi, PrKi, i = 1,⋯,n를 생성한다.
Step 4. 사용자 에이전트는 IoT 디바이스로 CS0, PuK0, PrK0, CSP, PuKi (i = 1,⋯,n), PrKi (i = 1,⋯,n)들과 CTinfo를 포함한 Responese_setup을 전송한다.
Step 5. 사용자 에이전트는 IoT 디바이스의 암호 알고리즘과 암호키 등을 데이터베이스에 저장하고 키 갱신주기를 설정한다.

Step 1. 사용자 IoT 디바이스는 IDdev, sqno, T, CTinfo를 사용하여 메시지 IDp를 생성한다.
    IDp = IDdevsqnoTCTinfo
Step 2. IDp에 대하여 해쉬함수를 수행한 후 메시지 M을 생성하고 이를 PrK0로 다음과 같이 서명한다.
    M = IDphash(IDp), sign(M)PrK0
Step 3. CS0PuK0, CSP를 결합하여 Cpara를 생성한다.
    Cpara = CSoPuK0CSP
Step 4. Cpara에 대하여 해쉬함수를 수행한 후 메시지 N을 생성한다.
    N = Cparahash(Cpara)
Step 5. IoT 디바이스는 Ptypei에 대한 PII 값 Pvaluei을 센싱하고 CSp와 PrKi로 암호화한 후 메시지 Li을 생성한다.
    Li = PtypeiE(Pvaluei)PrKi
Step 6. 앞에서 생성한 값들을 사용하여 다음과 같이 PII 메시지를 생성하여 데이터 수집서버로 전송한다.
    PIImessage = Msign(M)PrK0NLiLi+1‖⋯‖Ln

Step 1. 데이터 수집서버는 사용자 IoT 디바이스로부터 PIImessage를 수신한 후 여기에 포함된 M에서 IDp = IDdevsqnoTCTinfo를 추출하고 이에 대한 해쉬값을 계산하여 hash(IDp)를 검증한다.
Step 2. PIImessage에서 Cpara = CSoPuK0CSp를 추출하고 이에 대한 해쉬값을 구하여 hash(Cpara)를 검증한다.
Step 3. Cpara의 무결성이 확인되면 사용자 IoT 디바이스의 공개키 PuK0를 추출한다.
Step 4. PuK0를 사용하여 sign(M)PrK0의 서명을 검증하고 사용자 IoT 디바이스의 키 소유증명을 확인한다.
Step 5. IDp = IDdevsqnoTCTinfo에서 IDdev를 추출하여 연관테이블을 검색한다.
Step 6. 연관테이블에 IDdev가 연관되어 있지 않으면 M에서 CTinfo를 추출하여 소유자의 연락처를 알아낸다.
Step 7. M에서 추출한 IDdev, sqno, T를 사용하여 다음과 같이 M¯을 생성하고 또한 M¯에 대한 해쉬값을 구한다.
   M¯=IDdevsqnoT,hashM¯
Step 8. 데이터 수집서버의 공개키 PuKD에 대한 인증서 CertPuKD와 개인정보수집 및 처리정책에 대한 Policy, 데이터 수집서버의 개인키 PrKDPolicy에 서명한 값 sign(Policy)PrKD을 포함한 메시지를 작성하고 이를 PuK0로 암호화하여 다음의 동의요청 메시지 Request_Consent를 작성하고 이를 소유자의 연락처 CTinfo로 전송한다.
   Request_Consent=EM¯hashM¯CertPuKDPolicysignPolicyPrKDPuK0

Step 1. 사용자 IoT 디바이스의 개인키 PrK0으로 데이터 수집서버가 보낸 Request_Consent를 복호화한다.
Step 2. Request_Consent에 포함된 CertPuKD에서 데이터 수집서버의 공개키 PuKD를 추출하여 sign(Policy)PrKD값을 검증하고 데이터 수집서버의 키에 대한 소유증명를 확인한다.
Step 3. M¯에 대한 해쉬값을 구해서 hash(M¯)를 검증하고 IDdev, sqno, T를 추출하여 해당 PII 메시지를 식별한다.
Step 4. Request_Consent에 포함된 Policy를 통하여 데이터 수집서버가 수집하는 개인정보 항목과 이에 대한 처리정책 등을 포함한 개인정보수집 동의약관을 확인한다. 사용자는 사용자 에이전트의 입출력 장치를 통하여 수집을 요청하는 항목 중에서 허용하는 항목을 선정하고 필요한 동의절차를 수행한다.
Step 5. 사용자가 정보수집에 동의한 PII 타입 Ptypei들에 대응하는 공개키 PuKi들을 CertPuKD에 포함된 PuKD 로 암호화하여 다음과 같이 Consent_for_selected_PIIs를 생성하고 이를 데이터 수집서버로 전송한다.
   Consent_for_selectect_PIIs=EM¯PtypeiPuKiPtypei+1PuKi+1PuKD

Step 1. 데이터 수집서버는 수신한 Consent_for_selected_PIIsPuKD 에 대응하는 PrKD로 복호화한다.
Step 2. 연관테이블에 새로운 연관을 생성하여 IDdev에 해당하는 항목을 추가하고 Consent_for_selected_PIIs에서 복호화한 공개키 PuKi들을 저장한다.
Step 3. PuKi를 이용하여 사용자 IoT 디바이스가 전송한 PIImessage에서 PII 타입 i에 해당하는 PII 값을 복호화하고 개인정보를 수집한다. 즉 PIImessage에서 Li = PtypeiE(Pvaluei)PrKi를 추출하여 Ptypei에 대응하는 PuKiE(Pvalue)PrKi를 복호화하고 Pvaluei값을 얻는다.