DOI QR코드

DOI QR Code

A Behavior-based Authentication Using the Measuring Cosine Similarity

코사인 유사도 측정을 통한 행위 기반 인증

  • 길선웅 (국립인천대학교 정보통신공학과 공학사) ;
  • 이기영 (국립인천대학교 정보통신공학과 교수)
  • Received : 2020.05.14
  • Accepted : 2020.08.07
  • Published : 2020.08.31

Abstract

Behavior-based authentication technology, which is currently being researched a lot, requires a long extraction of a lot of data to increase the recognition rate of authentication compared to other authentication technologies. This paper uses the touch sensor and the gyroscope embedded in the smartphone in the Android environment to measure five times to the user to use only the minimum data that is essential among the behavior feature data used in the behavior-based authentication study. By requesting, a total of six behavior feature data were collected by touching the five touch screen, and the mean value was calculated from the changes in data during the next touch measurement to measure the cosine similarity between the value and the measured value. After generating the allowable range of cosine similarity by performing, we propose a user behavior based authentication method that compares the cosine similarity value of the authentication attempt data. Through this paper, we succeeded in demonstrating high performance from the first EER of 37.6% to the final EER of 1.9% by adjusting the threshold applied to the cosine similarity authentication range even in a small number of feature data and experimenter environments.

현재 많은 연구가 진행되고 있는 행위 기반 인증 기술은 다른 인증 기술들에 비해서 인증의 인식률을 높이는데 많은 데이터의 장기간 추출이 필요하다. 본 논문은 안드로이드 환경의 스마트폰에 내재되어있는 터치 센서와 자이로스코프를 이용하여 그동안의 행위 기반 인증 연구에서 사용 되었던 행위 특징 데이터들 중에서 핵심적인 최소한의 데이터들만을 이용하기 위해 사용자에게 다섯 차례의 측정을 요구하여 다섯 번의 터치스크린 화면을 터치 하는 방식으로 총 6가지의 행위 특징 데이터를 수집하였고 다음 터치 측정으로 넘어가는 동안의 데이터들의 변화 값에 평균 값을 구하여 이 값과 측정값의 코사인 유사도 측정을 수행하여 코사인 유사도 허용 범위를 생성 한 후, 인증 시도 데이터의 코사인 유사도 값과 비교하는 방식의 사용자 행위 기반 인증 방식을 제안한다. 본 논문을 통해서 적은 수의 특징 데이터와 실험자수 환경에서도 코사인 유사도 인증 범위에 적용되는 임계값을 조절하는 방식을 통해서 최초 EER 37.6%에서 최종 EER 1.9%의 높은 성능을 증명하는데 성공하였다.

Keywords

Ⅰ. 서론

행위 기반 인증 기술은 다른 인증 기술들에 비해서 인증에 필요한 사용자의 행동을 추출하는데 많은 데이터가 필요하고 인식률마저 부족하다는 문제점이 존재한다. 그로인해 행위 기반 인증 기술의 인식률 개선을 위한 연구들이 활발히 연구되고 있다. 기존의 행위 기반 인증 기술 연구들에서 대부분 사용자의 인증 정확도를 높이기 위해 많은 양의 데이터들을 장기간 수집하여 정확도를 향상시키는 방향으로 연구를 진행하였다.

본 논문에서는 행위 기반 인증의 정확도 향상을 위해서 인증 기반으로 설정하는 사용자 행위 패턴 데이터를 다량으로 수집하는 기존의 연구들을 살펴보고 이를 분석하여 행위 기반 인증에 필요한 핵심적인 측정 데이터를 선정하고 최소한의 데이터 수집만으로 최대한의 정확도를 얻을 수 있는 방법에 대해 연구하였다. 기존 행위 기반 연구에서 사용되지 않았던 코사인 유사도를 활용하여 터치, 모션 센서를 통해 사용자로부터 측정한 핵심 특징 데이터에 대해서 구간별 사용자 인증 허용 범위의 임계값을 조절하는 방식으로 행위 기반 인증의 인식률을 향상 시킬 수 있는지에 대해 연구를 진행하였다.

본 논문은 2장에서는 사용자의 행위 데이터를 인증하는데 사용할 코사인 유사도에 대해 알아본 후 행위 기반 인증과 관련된 기존의 연구들을 살펴보고 핵심적인 행위 특징 데이터를 선정한다. 3장에서는 제안하는 행위 기반 인증을 구현하기 위해 추출할 사용자 행동 특징 데이터, 추출 방법에 대해서 설명하며 설계 및 구현에 대해 기술한다. 4장에서는 구현한 행위 기반 인증 기술의 인식률 향상 연구를 위해서 실험 환경을 설정하고 인증 허용 오차율 범위의 임계값을 조절하며 검증 데이터에 대한 사용자 인식률의 변화를 비교 분석하며 실험에 대한 분석을 다룬다. 5장에서는 본 논문에서 다루었던 연구 과정들과 결과들을 되짚어보고 총평하며 결론을 지으려 한다.

Ⅱ. 관련 연구

1. 이론적 배경

코사인 유사도(Cosine Similarity)는 두 벡터 A와 B 간의 코사인 각도를 이용하여 구할 수 있는 두 벡터의 유사도를 의미한다[1]. 코사인 유사도는 두 벡터의 방향이 완전히 동일하여 각도가 0°인 경우에는 1의 값을 가지고, 90°의 각을 이루면 0의 값을, 180°의 완전한 반대 방향을 가지면 -1의 값을 가지며 –1 과 1 사이의 실수 값을 가진다. 연산에 필요한 벡터의 원소들은 모두 양수이고 두 벡터의 원소의 개수가 일치한다는 전제조건 하에서 주로 사용되는데 대부분 정보 검색 및 텍스트 마이닝 분야에서 사용된다. 코사인 유사도의 공식은 아래와 같다[2].

\(\cos (\theta)=\frac{A \cdot B}{\|A\|\|B\|}=\frac{\sum_{i=1}^{n} A_{i} \times B_{i}}{\sqrt{\sum_{i=1}^{n}\left(A_{i}\right)^{2}} \times \sqrt{\sum_{i=1}^{n}\left(B_{i}\right)^{2}}}\)       (1)

이러한 코사인 유사도는 다차원의 양수 공간에서의 유사도 측정에 이용되며 벡터의 크기 값은 결과에 영을 미치지 않고 차원의 개수가 많은 다차원의 벡터일수록 유사도를 뚜렷이 구분할 수 있는 장점이 있다. 그런 특징 때문에 벡터의 원소나 비교 벡터의 원소와의 크기 값이 차이가 많이 나는 경우에도 다른 가공 없이도 유사도를 비교할 수 있다. 또한 두 벡터의 내적과 외적을 통해서 위 공식과 같이 간단한 연산이 가능하다는 장점이 있다[2]. 본 논문에서는 행위 기반 인증에서 사용자 행동 특징 데이터를 추출한 후 코사인 유사도를 통해 추출 데이터를 가공하여 행위 기반 인증에 사용한다.

2. 선행 연구

사용자의 행위 데이터를 가지고 사용자를 인가하는 본 논문의 연구를 위해서 행위 기반 인증 기술의 연구를 살펴보기에 앞서 다량의 데이터를 다루는 연구와 생체 정보를 활용하여 사용자를 인증하는 생체 인증 연구, 스마트 웨어러블 디바이스를 활용하여 인증 시스템을 구현한 연구를 먼저 살펴보았다.

2017년도에 국가기관에서 제공하는 공공 데이터를 웹 API를 활용하여 다량의 데이터를 사용함에 있어 오용없이 처리하는 방법에 대한 연구가 진행되었다.[3]

2018년도에는 생체인증을 활용하여 프라이버시 보호가 가능하면서도 본래의 인증 목적을 이루는 연구가 진행되었다. 생체 정보 데이터를 추출하여 퍼지 확약, 퍼지 볼트, 퍼지 추출, 폐기형, 동형암호에 의한 방식들의 동작 방식의 특징들에 대한 연구를 진행하였다.[4]

2019년도에는 소형화된 웨어러블 디바이스를 이용하여 사용자의 ECG(Electrocardiogram) 파형 측정을 통한 사용자 인증 시스템에 대한 연구가 진행되었다. 고유값 식별을 통해서 추출한 사용자의 데이터의 특징점을 판별하여 피실험자가 안정적으로 정지된 실험환경에서 FAR 1.73%, FRR 4.14%의 높은 결과를 보였다.[5]

이번에는 본 논문에서 다루고 있는 행위 기반 인증 기술에 대한 다양한 연구들 가운데 최근 2014년도부터의 가시적인 결과의 연구들을 살펴보려한다.

2014년도에는 스마트기기의 센서를 활용하여 타이핑 시 센서 데이터의 수집이 가능한 가상 키보드를 구현해 가속, 중력, 방향계의 데이터를 315명의 참가자에게 160자 고정 텍스트 입력을 통해 SVM분류기로 FAR 1%, FRR 8% 수준의 인증에 성공하였다[6].

2015년도에는 싱글 터치 슬라이드의 방향을 상, 하, 좌, 우 4가지로 구분하여 각 방향별 길이, 각도, 위치, 시간, 압력, 가속도, 속도 특 데이터를 51명의 참가자를 통해 스마트폰의 자연스러운 사용 과정에서 데이터를 수집하여 One-Class SVM 분류기를 이용하여 EER 8% 이하의 수준의 인증에 성공하였다[7]. 동 년도에 터치 슬라이드, 탭 2가지 분류에서 특징 데이터로 슬라이드에서 각도, 시간, 거리, 거리 비율, 속력, 방향을, 탭에서 시간, 시간 간격, 타임스탬프, 위치를 사용하였고 6명의 참가자를 통해 SFS(Sequential Forward Selection)알고리즘을 통해 분류 점수의 효율적 향상이 가능한 수집 데이터를 사용하여 FAR 0.03%, FRR 0.05%의 인증에 성공하였다[8].

2016년도에는 키 스트로크 다이나믹스와 터치 다이나믹스 기술에 센서 데이터를 추가하여 특징 데이터로 탭에서 속력, 시간, 크기를, 키 스트로크 다이나믹스에서 키를 누른 시간, 입력 사이 기기의 가속, 중력, 자력계의 값을 100명의 참가자에게 24가지 질문에 대한 답변을 250자 이상 입력 받고 One-Class SVM 단일 클래스를 사용하는 SVM.을 이용하여 앉아있는 상태에서 EER 10.05%, 걷는 상태에서 EER 7.16%의 인증에 성공하였다[9].

지금까지 살펴본 행위 기반 인증 기술 연구들의 대부분이 터치와 키 스트로크 다이나믹스 그리고 각종 센서를 이용하여 정확도의 개선을 보여주고 있다. 이때의 특징 데이터들을 세분화와 다중화시켜 다양한 시도를 통해서 행위 기반 인증 기술의 연구가 진행되고 있음을 알수 있다[10].

Ⅲ. 연구 방법

1. 사용자 행위 특징 데이터 추출

본 논문에서 제안하는 인증 기법은 사용자가 다섯 번의 터치를 시도할 때 본인만의 리듬으로 화면 좌표를 터치하고 스마트폰을 기울이며 측정을 마친다. 이렇게 한 차례의 측정을 마친 사용자에게 다섯 차례의 측정을 요구한다. 한 차례의 측정을 마친 사용자의 데이터는 아래 표 1과 같이 터치 X좌표, Y좌표, 측정 때의 스마트폰의 회전벡터 값 X, Y, Z, 터치 시의 시간으로 한 차례의 측정 때마다 30개의 데이터가 측정된다.

표 1. 한 차례 측정 때 수집되는 데이터

Table 1. Data collected in one measurement

OTNBBE_2020_v20n4_17_t0001.png 이미지

이 30개의 데이터에서 각 터치 사이를 구간으로 두면 총 4개의 구간이 생기게 된다. 각 구간 사이의 값은 터치 X좌표, Y좌표, 측정 때의 스마트폰의 회전벡터 X, Y, Z, 터치 시의 시간 값으로 사용자가 측정을 할 때의 특징 데이터 값이다. 아래 표 2와 같이 다음 터치 횟수의 데이터값에 현재 터치 횟수의 데이터 값을 차감하여 다음 터치로 이동할 때의 각 데이터 항목의 변화량을 이용한다.

표 2. 네 가지 구간별 사용자 행위 특징 데이터

Table 2. User behavior feature data by four sections

OTNBBE_2020_v20n4_17_t0002.png 이미지

2. 코사인 유사도 값 생성, 임계값 설정

앞서 구한 각 구간별 특징 데이터 값의 1회부터 5회까지 측정에서의 평균값을 구하고 이 평균값과 각 측정시도의 구간 값을 그림 1에서 보았던 코사인 유사도 공식에 사용되는 벡터로 사용하면 사용자의 검증을 위한 코사인 유사 값을 구할 수 있다. 총 5차례의 측정이 있었으므로 각 구간 당 5개의 코사인 유사도 값 총 20개의 코사인 유사도 값이 생성된다. 이 5개의 값 중 각 구간별 최소 코사인 유사도 값을 구하게 되면 사용자마다 각 구간별로 통과해야 하는 인증의 기준 값이 정해지게 된다. 아래 그림1은 사용자마다 각 구간별 최소 코사인 유사도 값을 보여준다.

OTNBBE_2020_v20n4_17_f0001.png 이미지

그림 1. 사용자의 각 구간별 최소 코사인 유사도 값

Fig. 1. Minimum cosine similarity value for each area of the user

이렇게 구한 최소 코사인 유사도 값을 그대로 범위로 사용하면 FRR(False Rejection Rate)의 비율이 너무 높아져 버릴 것이기 때문에 최소 코사인 유사도 값에 특정한 임계값을 차감하는 형태로 아래 그림 2와 같이 인증 허용 범위를 늘리거나 줄여야 한다.

OTNBBE_2020_v20n4_17_f0002.png 이미지

그림 2. 코사인 유사도 인증 허용 범위

Fig. 2. Cosine similarity certification tolerance

이때 차감할 임계값(Threshold)에 사용하는 값을 각 구간별로 구한 최대 코사인 유사도 값(Cosine Simility.Max)에서 최소 코사인 유사도 값(Cosine Simility.Min)을 빼준 값에 특정 임계 상수(Rate)를 곱한 값을 사용한다. 이러한 방법으로 최소 코사인 허용 범위를 설정하는 이유는 각 구간별로 최소, 최대 코사인 유사도 값이 다르기 때문에 FRR 비율이 높게 나올 수 있는 특정 구간에서는 최소, 최대 코사인 유사도 값의 차이가 크다. 이 때문에 사용자마다 각 구간별로 유연한 허용범위 설정이 측정과 동시에 가능하기 때문이다.

Ⅳ. 실험 및 결과

본 실험에서 사용할 데이터 셋을 모으기 위해서 실험자 세 명이 실험에 참여하였다. 실험자들은 스마트폰 화면이 서로에게 보이지 않을 수 있도록 삼각형 모양으로 마주보며 앉아 실험자 A부터 FRR 데이터 셋을 수집하기 위해 곧바로 50회 가량의 본인에 대한 행위 기반 인증을 실시하였고, 이때 나머지 실험자 B와 C는 그 행위를 지켜보며 실험자 A의 인증 행동을 관찰하도록 하였다. 실험자 A의 FRR 측정이 끝난 후에는 실험자 A에 대한 FAR(False Acceptance Rate) 데이터 셋 수집을 위하여 실험자 A 행동을 관찰하던 실험자 B와 C가 곧바로 실험자 A에 대한 침입자의 행위 기반 인증을 각각 25회 가량 진행하여 이전에 실험자 A의 인증 행동을 계속해서 따라 해보는 방식으로 실험하였다. 이렇게 실험자 A에 대한 FRR, FAR 데이터 셋을 수집한 후에는 실험자 B와 C 순서대로 같은 방식의 실험을 진행하였다.

이와 같이 실험한 결과 실험자 A와 B, C는 FRR에 대한 데이터 수집을 각각 53회, 57회, 72회 총 182회 행하였고 이를 바탕으로 데이터 수집 1회당 1구간부터 4구간까지의 인증에 시도한 코사인 유사도 값 4개의 데이터가 수집되어 총 728개의 데이터 셋을 모을 수 있었다. 실험자 A와 B, C의 FAR에 대한 데이터 수집은 각 53회, 71회, 67회의 총 191회의 시도를 통해 총 764개의 데이터 셋이 모였다. 그리하여 아래 그림3과 같이 총 1492개의 데이터 셋을 모을 수 있었다.

OTNBBE_2020_v20n4_17_f0003.png 이미지

그림 3. 1492개의 FAR, FRR 데이터 셋

Fig. 3. 1492 FAR, FRR Dataset

실험의 분석은 실험자 A와 B, C가 진행한 FRR, FAR 실험에서 측정한 인증 시도 시의 각 네 가지 구간별 코사인 유사도 값 데이터 셋 728개, 764개 총 1,492개의 데이터 셋을 저장하여 인증을 허용하는 범위 조절에 사용하는 임계값(Threshold)의 임계 상수(Rate)값을 변화시키며 실험자 A와 B, C의 평균 EER을 구하여 임계 상수(Rate)에 따른 평균 EER을 서로 비교 방식하는 방법으로 분석하였다.

위 그림 4는 임계 상수(Rate)의 변화에 따른 실험자 A와 B, C 각각의 EER 값을 평균한 본 논문에서 제안하는 행위 인증 기법의 EER 수치이다. 본 실험 결과 최대, 최소 코사인 유사도 값의 차에 곱해지는 임계 상수(Rate) 값이 증가함에 따라 EER 수치가 점점 줄어드는 결과가 나타났다.

OTNBBE_2020_v20n4_17_f0004.png 이미지

그림 4. 임계상수(RATE) 별 평균 EER 그래프

Fig. 4. Average EER graph by critical constant(RATE)

최초 임계 상수(Rate)를 0으로 설정하여 임계값 없이 측정된 사용자 최소 코사인 유사도 값만으로 인증을 진행할 시 평균 FRR은 75.275%, 평균 FAR은 0%로 평균 EER은 37.637%를 나타냈고, 최종적으로 임계 상수(Rate)가 9.5인 지점에서 평균 FRR은 2.747%, 평균 FAR은 1.047% 그리고 최종 EER은 1.897%로 가장 낮은 값을 나타내었다. 그 후 임계 상수 9.56 이후부터는 EER수치가 증가하는 추세를 보였다.

본 실험에서 임계 상수(Rate) 값이 9.5 일 때 가장 성능이 좋은 인증이 되었던 이유는 실험자에 따라서 또 그 구간에 따라서 코사인 유사도의 최대, 최소 값이 두 다르기 때문에 이번 실험에 참여한 실험자 A와 B, C의 데이터 셋에서 각 구간별 인증 범위를 가장 정확도 있게 설정할 수 있는 임계 상수(Rate)가 9.5였고 이 값은 유동적인 값이라고 분석한다. 즉 본 행위 기반 인증 기법의 EER수치를 변동시키는 임계 상수(Rate)값은 실험자의 수가 더 많아지거나 실험자가 인증 값을 생성할 때 5회 이상의 더 많은 측정 횟수를 시도하게 되거나 실험자의 제안 인증 기법의 숙련도에 따라 수시로 변동 할 수 있는 수치라고 분석한.

Ⅴ. 결론

본 논문을 통해 터치 센서와 자이로스코프를 이용하여 최소한의 행위 특징 데이터들을 코사인 유사도 측정 비교 방식을 이용하여 행위 기반 인증을 설계 및 실험하였다. 사용자에게 다섯 차례의 측정을 요구하여 터치 시의 X, Y좌표와 스마트폰 기울기에 해당하는 회전벡터 X, Y, Z와 터치 시간 값을 이용하여 총 6가지의 행위 특징 데이터를 수집하였고 다음 터치 측정으로 넘어가는 동안의 데이터들의 변화 값을 통해서 사용자를 특정 할 수 있는 데이터로 가공하였다.

측정 데이터의 유사도를 검증하기 위해서는 코사인 유사도를 이용한 비교 방식을 선택하였고 많은 수의 수집 데이터나 오랜 시간의 실험 없이도 수집한 데이터와 기준이 되는 데이터의 코사인 유사도 비교만을 통해서도 적은 수의 실험자와 특징 데이터의 환경에서도 인증 범위에 적용되는 임계값을 조절하는 방식을 통해서 최초 EER 37.637%에서 최종 EER 1.897%의 높은 성능을 증명하는데 성공하였다. 이때 임계값에 적용되는 임계 상수(Rate)의 값은 실험에 참여하는 실험자의 수나 본 논문에서 제안하는 인증 기법에 대한 숙련도 차이나, 측정 당시 실험자마다의 정확성 등의 요인으로 실험 환경이 바뀔 때마다 최저 EER의 임계 상수(Rate)는 가변적으로 늘어나거나 줄어들 것으로 분석하였다. 최소한의 특징 데이터의 사용과 적은 수의 실험 데이터, 그리고 기존 행위 기반 인증에 사용되지 않던 코사인 유사도 비교를 통해서 기존 연구들에 버금갈만한 성능을 보였다. 향후에는 사용자의 측정 횟수의 제한을 없애고 사용자의 수가 늘어날 때마다 EER 수치가 가장 낮은 임계값을 시스템 스스로 설정하여 변경하는 방식으로 보완하여 본 논문에서 제안하는 사용자 행위 기반 인증 기법의 신뢰도를 검증해 나갈 것이다.

References

  1. Wikidocs, "Cosine Similarity" Accessed Dec 13, 2019. https://wikidocs.net/24603
  2. Crescent, "Cosine Similarity Features and pros and cons" Accessed Dec 15, 2019. https://velog.io/@crescent702/cos-similarity
  3. Young-Hyun Chang, "A Study on the Public Data Activation Strategy based on App Developed by NonProfession User", The Journal of The Institute of Internet, Broadcasting and Communication (JIIBC), Vol. 6, No. 1, pp. 32-38, Mar 2017. DOI: https://doi.org/10.7236/IJASC.2017.6.1.32
  4. Heejin Park, "Survey on Privacy-preserving Techniques for Biometric Authenticatio", The Journal of KIIT, Vol. 16, No. 4, pp. 109-122, Apr 2018. DOI: https://doi.org/10.14801/jkiit.2018.16.4.109
  5. Jae-Wook Heo, Sun-Woo Jin, "Implementation and Evaluation of ECG Authentication System Using Wearable Device", Journal of the Korea Academia-Industrial cooperation Society(JKAIS), Vol. 20, No. 10, pp. 1-6, Oct 2019. DOI: https://doi.org/10.5762/KAIS.2019.20.10.1
  6. H. Gascon, S. Uellenbeck, C. Wolf, and K. Rieck, "Continuous Authentication on Mobile Devices by Analysis of Typing Motion Behavior", Sicherheit Schutz und Zuverlassigkeit Lecture Notes in Informatics(LNI) Proceedings, pp.228-240, Mar 2014. DOI: http://dl.gi.de/handle/20.500.12116/20035
  7. C. Shen, Y. Zhang, Z. Cai, T. Yu, and X. Guan, "Touch-interaction behavior for continuous user authentication on smartphones", International Conference on Biometrics Phuket IEEE, pp. 157-162, Jul 2015. DOI: https://doi.org/10.1109/icb.2015.7139046
  8. L. Lu, and Y. Liu, "Safeguard: User Reauthentication on Smartphones via Behavioral Biometrics", Transactions on Computational Social Systems IEEE, Vol. 2, No. 3, pp. 53-64, Sept 2015. DOI: https://doi.org/10.1109/tcss.2016.2517648
  9. Z. Sitova, J. Sedenka, Q. Yang, G. Peng, and G. Zhou, "HMOG: New Behavioral Biometric Features for Continuous Authentication of Smartphone Users", IEEE Transactions on Information Forensics and Security, Vol. 11, No. 5, pp. 877-892, May 2016. DOI: https://doi.org/10.1109/tifs.2015.2506542
  10. Min-Woo Kim, "Research on behavior-based user authentication technology using app use and touch information in Android", Journal of the Korea Institute of Information Security & Cryptology, Vol. 27, No. 2 pp. 361-371, Apr 2017. DOI: https://doi.org/10.13089/JKIISC.2017.27.2.361