KR20220095539A - 디바이스 핑거프린트를 이용한 가중치 부여 방법, 이를 수행하기 위한 기록 매체 및 장치 - Google Patents
디바이스 핑거프린트를 이용한 가중치 부여 방법, 이를 수행하기 위한 기록 매체 및 장치 Download PDFInfo
- Publication number
- KR20220095539A KR20220095539A KR1020200187159A KR20200187159A KR20220095539A KR 20220095539 A KR20220095539 A KR 20220095539A KR 1020200187159 A KR1020200187159 A KR 1020200187159A KR 20200187159 A KR20200187159 A KR 20200187159A KR 20220095539 A KR20220095539 A KR 20220095539A
- Authority
- KR
- South Korea
- Prior art keywords
- similarity
- feature
- entropy
- fingerprinting
- fingerprint
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/32—User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/45—Structures or tools for the administration of authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/12—Fingerprints or palmprints
- G06V40/1365—Matching; Classification
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Multimedia (AREA)
- Collating Specific Patterns (AREA)
- Measurement Of The Respiration, Hearing Ability, Form, And Blood Characteristics Of Living Organisms (AREA)
Abstract
디바이스 핑거프린트를 이용한 가중치 부여 방법은, 사용자가 로그인 한 경우, 과거의 디바이스 핑거프린팅 정보와 최근 로그인한 디바이스 핑거프린팅 정보의 각 피처별로 유사도 값을 측정하는 단계; 디바이스 핑거프린팅의 각 피처별로 디바이스 핑거프린팅 정보의 식별성에 대한 확률을 나타내는 엔트로피를 계산하는 단계; 계산된 피처별 엔트로피를 대응하는 각 피처의 유사도 값에 가중치로 적용하여 디바이스 핑거프린팅의 전체 유사도 점수를 계산하는 단계; 및 상기 디바이스 핑거프린팅의 전체 유사도 점수를 미리 설정한 임계값과 비교하여, 사용자를 인증하는 단계;를 포함한다. 이에 따라, 각 피처들에 대해 유사도의 엔트로피를 계산하고, 피처 엔트로피를 통해 임계값을 변경하여 보다 정확하게 이용자를 식별할 수 있다.
Description
본 발명은 디바이스 핑거프린트를 이용한 가중치 부여 방법, 이를 수행하기 위한 기록 매체 및 장치에 관한 것으로서, 더욱 상세하게는 핑거프린팅의 각 피처들에 대해 적절한 유사도의 엔트로피를 계산하고 피처 엔트로피를 통해 임계값을 변경하여 보다 정확한 이용자를 식별하는 기술에 관한 것이다.
최근 인터넷 기술이 발전함에 따라 온라인을 통한 비대면 방식의 금융거래, 행정서비스 이용이 가능해지면서 웹사이트에서는 이용자 보호 및 보안 강화를 위해 플러그인 기능을 사용해왔다. 하지만, 플러그인은 중복설치, 재설치, 보안 문제 등으로 이용자에게 불편함을 초래하며 이를 해소하고 편리한 인터넷 이용환경을 조성하기 위해 정부에서는 웹사이트의 플러그인을 제거하는 노플러그인(No-Plugin) 정책을 추진하고 있다.
그러나, 노플러그인 정책은 기존 금융회사의 전자금융거래 보안정책과 충돌한다. 금융 분야 웹사이트는 이용자 보호 및 전자금융거래의 안정성을 위해 설치형 소프트웨어를 통해 이용자의 매체 환경 정보를 수집하고 이상금융거래를 탐지하고 차단한다.
노플러그인 정책에 따라 기존의 설치형 방식을 무설치형으로 전환하게 될 시 수집 및 탐지 가능한 정보가 상대적으로 제한되며 이상 금융거래 방지의 실효성이 약화될 것으로 보인다. 따라서, 금융회사는 별도의 소프트웨어 설치 없이 이용 단말 정보수집 및 탐지 기능을 유지할 수 있는 대체 기술 및 대응정책에 관한 연구가 필요하다.
최근 각광받고 있는 디바이스 핑거프린팅은 웹사이트를 방문한 이용자의 네트워크, 운영체제, 하드웨어, 브라우저 구성 및 설정 정보 등을 기반으로 장치를 트래킹하는 방법으로 이용자의 단말로부터 수집한 여러 정보를 조합하여 고유한 디바이스 핑거프린트를 생성하여 이를 통해 이용자를 식별한다.
웹 기반 서비스에서의 익명화된 이용자를 식별하기 위한 많은 방법 중 특히 디바이스 핑거프린팅 정보의 차이를 사용하는 방법이 연구되었다. 그러나, 유사도 계산방법의 문제는 같은 사용자라 하더라도 시간에 피처의 항목, 피처정보, 피처에 따른 중요도가 다르기 때문에 정확한 유사도를 도출할 수 없다는 문제가 있다.
이에, 본 발명의 기술적 과제는 이러한 점에서 착안된 것으로 본 발명의 목적은 디바이스 핑거프린트를 이용한 가중치 부여 방법을 제공하는 것이다.
본 발명의 다른 목적은 상기 디바이스 핑거프린트를 이용한 가중치 부여 방법을 수행하기 위한 컴퓨터 프로그램이 기록된 기록 매체를 제공하는 것이다.
본 발명의 또 다른 목적은 상기 디바이스 핑거프린트를 이용한 가중치 부여 방법을 수행하기 위한 장치를 제공하는 것이다.
상기한 본 발명의 목적을 실현하기 위한 일 실시예에 따른 디바이스 핑거프린트를 이용한 가중치 부여 방법은, 사용자가 로그인 한 경우, 과거의 디바이스 핑거프린팅 정보와 최근 로그인한 디바이스 핑거프린팅 정보의 각 피처별로 유사도 값을 측정하는 단계; 디바이스 핑거프린팅의 각 피처별로 디바이스 핑거프린팅 정보의 식별성에 대한 확률을 나타내는 엔트로피를 계산하는 단계; 계산된 피처별 엔트로피를 대응하는 각 피처의 유사도 값에 가중치로 적용하여 디바이스 핑거프린팅의 전체 유사도 점수를 계산하는 단계; 및 상기 디바이스 핑거프린팅의 전체 유사도 점수를 미리 설정한 임계값과 비교하여, 사용자를 인증하는 단계;를 포함한다.
본 발명의 실시예에서, 상기 각 피처별로 유사도 값을 측정하는 단계는, 코사인 유사도(Cosine Similarity), 자카드 유사도(Jaccard Similarity) 및 레벤슈타인 거리(Levenshtein Distance) 중 적어도 하나를 이용할 수 있다.
본 발명의 실시예에서, 상기 디바이스 핑거프린팅의 전체 유사도 점수를 계산하는 단계는, 계산된 피처별 엔트로피를 대응하는 각 피처의 유사도 값에 가중치로 곱한 값들의 수학적인 총합으로 계산할 수 있다.
본 발명의 실시예에서, 상기 엔트로피를 계산하는 단계는, 과거의 디바이스 핑거프린팅 정보의 피처별 최소 및 최대 범위를 기초로 계산할 수 있다.
본 발명의 실시예에서, 상기 사용자를 인증하는 단계는, 상기 디바이스 핑거프린팅의 유사도 점수가 미리 설정한 임계값 이상인 경우, 사용자의 접근을 허용하는 단계; 및 상기 디바이스 핑거프린팅의 유사도 점수가 상기 임계값 보다 작은 경우, 접근차단 및 추가인증을 요구하는 단계;를 포함할 수 있다.
상기한 본 발명의 다른 목적을 실현하기 위한 일 실시예에 따른 컴퓨터로 판독 가능한 저장 매체에는, 상기 디바이스 핑거프린트를 이용한 가중치 부여 방법을 수행하기 위한 컴퓨터 프로그램이 기록되어 있다.
상기한 본 발명의 또 다른 목적을 실현하기 위한 일 실시예에 따른 디바이스 핑거프린트를 이용한 가중치 부여 장치는, 사용자가 로그인 한 경우, 과거의 디바이스 핑거프린팅 정보와 최근 로그인한 디바이스 핑거프린팅 정보의 각 피처별로 유사도 값을 측정하는 유사도 측정부; 디바이스 핑거프린팅의 각 피처별로 디바이스 핑거프린팅 정보의 식별성에 대한 확률을 나타내는 엔트로피를 계산하는 엔트로피 계산부; 계산된 피처별 엔트로피를 대응하는 각 피처의 유사도 값에 가중치로 적용하여 디바이스 핑거프린팅의 전체 유사도 점수를 계산하는 유사도 스코어링부; 및 상기 디바이스 핑거프린팅의 전체 유사도 점수를 미리 설정한 임계값과 비교하여, 사용자를 인증하는 임계값 비교부;를 포함한다.
본 발명의 실시예에서, 상기 각 유사도 측정부는, 코사인 유사도(Cosine Similarity), 자카드 유사도(Jaccard Similarity) 및 레벤슈타인 거리(Levenshtein Distance) 중 적어도 하나를 이용할 수 있다.
본 발명의 실시예에서, 상기 유사도 스코어링부는, 계산된 피처별 엔트로피를 대응하는 각 피처의 유사도 값에 가중치로 곱한 값들의 수학적인 총합으로 계산할 수 있다.
본 발명의 실시예에서, 상기 엔트로피 계산부는, 과거의 디바이스 핑거프린팅 정보의 피처별 최소 및 최대 범위를 기초로 계산할 수 있다.
본 발명의 실시예에서, 상기 임계값 비교부는, 상기 디바이스 핑거프린팅의 유사도 점수가 미리 설정한 임계값 이상인 경우, 사용자의 접근을 허용하고, 상기 디바이스 핑거프린팅의 유사도 점수가 상기 임계값 보다 작은 경우, 접근차단 및 추가인증을 요구할 수 있다.
이와 같은 디바이스 핑거프린트를 이용한 가중치 부여 방법에 따르면, 단순히 피처의 일치여부가 아닌 핑거프린팅의 가중치에 따라 스코어링이 가능하고, 고유한 특성이 높은 핑거프린팅이 일치할수록 높은 점수를 부여할 수 있다. 나아가, 각 핑거프린팅을 등급화한 후 스코어링 하는 경우, 고유성만 고려하는 것이 아니라 안정성, 불변성 등의 다수 특성을 고려하여 스코어링이 가능하다.
도 1은 본 발명의 일 실시예에 따른 디바이스 핑거프린트를 이용한 가중치 부여 장치의 블록도이다.
도 2는 본 발명에 따른 디바이스 핑거프린팅의 유사성을 비교하기 위한 예시 데이터이다.
도 3은 도 2의 예시 데이터를 기반으로 각 유사도 측정 방법에 따라 유사도를 계산한 결과를 보여준다.
도 4는 도 2의 예시 데이터에서 종래의 1 : 1 매칭으로 디바이스 핑거프린팅 정보의 일치 여부를 확인하는 방법의 결과이다.
도 5는 도 2의 예시 데이터에서 본 발명에 따른 엔트로피 기반 유사도 스코어링 방법으로 유사도를 확인한 결과이다.
도 6은 본 발명에서 사용한 디바이스 핑거프린팅 사용자인증 모델의 일례이다.
도 7은 본 발명의 일 실시예에 따른 디바이스 핑거프린트를 이용한 가중치 부여 방법의 흐름도이다.
도 2는 본 발명에 따른 디바이스 핑거프린팅의 유사성을 비교하기 위한 예시 데이터이다.
도 3은 도 2의 예시 데이터를 기반으로 각 유사도 측정 방법에 따라 유사도를 계산한 결과를 보여준다.
도 4는 도 2의 예시 데이터에서 종래의 1 : 1 매칭으로 디바이스 핑거프린팅 정보의 일치 여부를 확인하는 방법의 결과이다.
도 5는 도 2의 예시 데이터에서 본 발명에 따른 엔트로피 기반 유사도 스코어링 방법으로 유사도를 확인한 결과이다.
도 6은 본 발명에서 사용한 디바이스 핑거프린팅 사용자인증 모델의 일례이다.
도 7은 본 발명의 일 실시예에 따른 디바이스 핑거프린트를 이용한 가중치 부여 방법의 흐름도이다.
후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예에 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는, 적절하게 설명된다면, 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.
이하, 도면들을 참조하여 본 발명의 바람직한 실시예들을 보다 상세하게 설명하기로 한다.
도 1은 본 발명의 일 실시예에 따른 디바이스 핑거프린트를 이용한 가중치 부여 장치의 블록도이다.
본 발명에 따른 디바이스 핑거프린트를 이용한 가중치 부여 장치(10, 이하 장치)는 디바이스 핑거프린팅의 피처(Feature)별 유사도 스코어링 평가에서 각 피처별로 엔트로피(Entropy)를 고려하여 가중치 점수를 부여한다.
도 1을 참조하면, 본 발명에 따른 장치(10)는 유사도 측정부(110), 엔트로피 계산부(130), 유사도 스코어링부(150) 및 임계값 비교부(170)를 포함한다.
본 발명의 상기 장치(10)는 디바이스 핑거프린트를 이용한 가중치 부여를 수행하기 위한 소프트웨어(애플리케이션)가 설치되어 실행될 수 있으며, 상기 유사도 측정부(110), 상기 엔트로피 계산부(130), 상기 유사도 스코어링부(150) 및 상기 임계값 비교부(170)의 구성은 상기 장치(10)에서 실행되는 상기 디바이스 핑거프린트를 이용한 가중치 부여를 수행하기 위한 소프트웨어에 의해 제어될 수 있다.
상기 장치(10)는 별도의 단말이거나 또는 단말의 일부 모듈일 수 있다. 또한, 상기 유사도 측정부(110), 상기 엔트로피 계산부(130), 상기 유사도 스코어링부(150) 및 상기 임계값 비교부(170)의 구성은 통합 모듈로 형성되거나, 하나 이상의 모듈로 이루어 질 수 있다. 그러나, 이와 반대로 각 구성은 별도의 모듈로 이루어질 수도 있다.
상기 장치(10)는 이동성을 갖거나 고정될 수 있다. 상기 장치(10)는, 서버(server) 또는 엔진(engine) 형태일 수 있으며, 디바이스(device), 기구(apparatus), 단말(terminal), UE(user equipment), MS(mobile station), 무선기기(wireless device), 휴대기기(handheld device) 등 다른 용어로 불릴 수 있다.
상기 장치(10)는 운영체제(Operation System; OS), 즉 시스템을 기반으로 다양한 소프트웨어를 실행하거나 제작할 수 있다. 상기 운영체제는 소프트웨어가 장치의 하드웨어를 사용할 수 있도록 하기 위한 시스템 프로그램으로서, 안드로이드 OS, iOS, 윈도우 모바일 OS, 바다 OS, 심비안 OS, 블랙베리 OS 등 모바일 컴퓨터 운영체제 및 윈도우 계열, 리눅스 계열, 유닉스 계열, MAC, AIX, HP-UX 등 컴퓨터 운영체제를 모두 포함할 수 있다.
상기 유사도 측정부(110)는 사용자가 로그인 한 경우, 과거의 디바이스 핑거프린팅 정보와 최근 로그인한 디바이스 핑거프린팅 정보의 각 피처별로 유사도 값을 측정한다.
사용자 PC 장치와 브라우저는 데이터를 처리할 때 각각 피처(Feature)들의 고유값을 가지는데 이를 활용하여 개개인을 특정한 것이 핑거프린팅이다. 일부 브라우저는 개인 정보보호 수준을 높여주면서 브라우저가 사용자를 식별하는 것을 막는데 효과적으로 작동한다.
디바이스 핑거프린팅의 사용자 인증 모델에서, 사용자가 ID와 PW를 입력하면 디바이스 핑거프린팅을 생성한다. 처음 수집된 디바이스 핑거프린팅은 IP와 WebRCT를 통해 얻은 IP를 비교하여 우회 여부를 판단하여 생성된 디바이스 핑거프린팅을 저장하거나 접근차단 및 추가 인증을 요구한다.
또한, 사용자 핑거프린팅이 저장되어 있다면 과거의 핑거프린팅 정보와 최근 로그인한 핑거프린팅과 비교하여, 같으면 접근을 허용한다. 반면, 핑거프린팅 정보가 다르면 각각 핑거프린팅의 유사도 스코어링을 비교하여 임계값(Threshold) 이상이면 접근을 허용하고 그렇지 않으면 접근차단 및 추가인증을 요구하게 된다.
본 발명은 디바이스 핑거프린팅에서 엔트로피(Entropy)를 고려한 피처별 유사도 스코어링 평가 및 피처별로 엔트로피에 대한 가중치 점수를 부여한다.
디바이스 핑거프린팅은 시간이나 기기에 따라 정보가 변화되어, 같은 디바이스에서 접속을 하더라도 정확히 일치하지 않는 경우가 있다. 이를 통해 사용자는 접속을 하지 못하거나 추가인증을 요구하는 불편한 상황이 생기기 때문에 엔트로피를 이용해 올바르게 이용자를 나누는 것이 중요하다.
유사도 스코어링 방법은 코사인 유사도(Cosine Similarity), 자카드 유사도(Jaccard Similarity), 레벤슈타인 거리(Levenshtein Distance) 등이 있다. 유사도 계산 방법의 문제는 동일한 항목 개수나 핑거프린트 전체 피처에 대한 유사도를 계산하여 정확하게 유사도를 도출할 수 없다. 아래의 방법은 피처를 통합한 유사도를 비교하는 방법이 아닌 각 피처 특징에 맞는 유사도 방법에 대한 예들이다.
유사도는 두 데이터가 얼마나 같은지를 나타내는 척도이다. 모든 분야에서 데이터간의 유사도를 측정하는 것은 중요하지만, 분류 분야에서는 가장 기반이 되는 것이며 이를 통해서 더 복잡한 것들을 학습할 수 있게 해준다. 디바이스 핑거프린팅은 피처에 따라 유사도 계산방법을 다르게하여 보다 정확하게 분류할 수 있게 도와준다.
아래의 3가지 유사도 계산 방법을 통해 피처별로 유사도를 측정할 수 있다. 그러나, 아래의 유사도 계산 방법은 실시예들에 불과하며, 다른 유사도 계산 방법을 사용할 수 있다.
1. Cosine Similarity
코사인 유사도는 두 벡터가 이루는 각도를 통해 유사도를 측정하는 방식이다. 이를 수식으로 나타내면 아래의 수학식 1과 같다.
[수학식 1]
두 벡터가 이루는 각이 작을수록 유사도가 높은 것이고 각이 클수록 유사도가 작다. 코사인 유사도는 길이 정규화를 통해 비교가 가능하며 빈도수나 단어순서의 영향을 받지 않는다.
2. Jaccard Similarity
자카드 유사도는 두 문장을 각각 단어의 집합으로 만든 뒤 두 집합을 통해 유사도를 측정하는 방식 중 하나이다. 이를 수식으로 나타내면 아래의 수학식 2와 같다.
[수학식 2]
측정 방법은 두 집합의 교집합을 두 집합의 합집합으로 나눠준다. 주로 유사한 문서 판별 시스템에 사용되며 단어의 순서나 양의 영향을 받지 않는다.
3. Levenshtein Distance
[수학식 3]
철자 오류 수정, 비슷한 어구 검색 및 DNA 배열 유사성 판단 시 사용한다. 문자열을 삽입, 삭제, 변경을 통해 최소로 변화를 해야 동일한 값이 되는지 유사성을 측정한다.
도 2는 본 발명에 따른 디바이스 핑거프린팅의 유사성을 비교하기 위한 예시이고, 도 3은 도 2의 예시 데이터를 기반으로 코사인 유사도(Cosine Similarity), 자카드 유사도(Jaccard Similarity), 레벤슈타인 거리(Levenshtein Distance)로 각각 유사도를 계산한 결과를 보여준다.
상기 엔트로피 계산부(130)는 디바이스 핑거프린팅의 각 피처별로 디바이스 핑거프린팅 정보의 식별성에 대한 확률을 나타내는 엔트로피를 계산한다.
각각 피처는 다양하고 많은 속성의 정보를 사용할수록 식별성이 증가한다. 하지만 피처는 식별성뿐만 아니라 다양한 기준이 존재한다. 그 기준에 대한 프리미티브 특징에 따라 선택하여 사용이 가능하다. 식별성(고유성), 안정성, 불변성, 프라이버스 등 기준별 피처를 등급화 해야 할 필요성이 있다.
특정 속성을 가지는 핑거프린트가 얼마의 확률로 고유한지 나타내는 것을 식별성이라고 한다. 식별성은 정보 엔트로피를 측정하여 나타낸다. 엔트로피는 평균 정보량을 말하며 특정 사건이 일어날 확률이 낮을수록 불확실성은 커지고 엔트로피, 즉 정보량은 커지기 때문에 엔트로피가 클수록 핑거프린트가 중복될 확률은 낮아지고 식별성은 높다는 것을 의미한다. 아래의 수학식 4은 엔트로피를 계산하는 한가지 예시이며, 다른 방법으로도 엔트로피 계산이 가능하다.
[수학식 4]
수학식 4는 과거 피처를 바탕으로 최소-최대범위를 계산하여 나타냈다. 엔트로피의 값은 피처들의 범위에 따라 중요도를 나타내는 등급으로 표현이 가능하다. 또한, 엔트로피는 수집한 데이터의 크기, 형식에 따라 달라질 수 있으므로 절대적인 값은 아니다. 그렇기 때문에 피처에 따라 가중치를 부여해야 정확한 사용자 인증이 가능하다.
상기 유사도 스코어링부(150)는 계산된 피처별 엔트로피를 대응하는 각 피처의 유사도 값에 가중치로 적용하여 디바이스 핑거프린팅의 전체 유사도 점수를 계산한다.
디바이스 스코어는 각 프린팅 속성별로 수학적 유사도 계산의 총합으로 계산된다. 일례로, 핑거프린팅의 등급은 피처의 변화에 따라 정하게 되는데 1등급은 Cookie Enabled, HTTP encoding 2등급은 Screen, Timezone, 3등급은 Useragent, Font, Plugin으로 분류될 수 있다.
디바이스 스코어는 각 피처에서 얻은 엔트로피를 통해 기준 가중치에 엔트로피 값을 곱해준다. 과거 디바이스 핑거프린트의 피처와 매치되면 1점을 부여하고 거기에 가중치를 부여해서 아래의 수학식 5와 같이 점수를 계산한다.
[수학식 5]
상기 임계값 비교부(170)는 상기 디바이스 핑거프린팅의 전체 유사도 점수를 미리 설정한 임계값과 비교하여, 사용자를 인증한다.
상기 디바이스 핑거프린팅의 유사도 점수가 미리 설정한 임계값 이상인 경우, 사용자의 접근을 허용한다. 반면, 상기 디바이스 핑거프린팅의 유사도 점수가 상기 임계값 보다 작은 경우, 접근차단 및 추가인증을 요구할 수 있다.
수학식 5에서 계산된 각 피처들의 엔트로피 스코어는 임계값 기준에 포함된다. 고유한 특징이 높은 핑거프린팅이 일치할수록 높은 점수를 부여하며 임계값보다 크면 인증성공 임계값보다 작으면 인증에 실패하게 된다. 이를 수학식으로 나타내면 아래의 수학식 6과 같다.
[수학식 6]
도 4는 도 2의 예시에서 종래의 1 : 1 매칭으로 디바이스 핑거프린팅 정보의 일치 여부를 확인하는 방법의 결과이다. 이 경우, 수학적 유사도 스코어링으로서, 데이터 특성에 따라 기존에 알려진 유사도 계산방법을 활용하는 방법이다. 각 피처에 대해 일치 여부에 따라 0 또는 1의 값이 주어지게 되고, 핑커프린트 중 일정 개수 이상 동일한 경우에만 매칭으로 판단한다.
도 5는 도 2의 예시 데이터에서 본 발명에 따른 엔트로피 기반 유사도 스코어링 방법으로 유사도를 확인한 결과이다. 이 과정은 디바이스 핑거프린팅의 식별성을 반영한 방법으로 각 디바이스 핑거프린팅의 속성의 유사도를 계산한 0과 1 사이의 값인 스코어와 엔트로피를 곱하고 모두 더하여 총 스코어링으로 사용하였다.
도 5를 참조하면, 본 발명에 따른 엔트로피 기반 유사도 스코어링 방법을 적용하였을 때, User A에 대해 저장되어있는 값과 현재 세션에서 수집된 값인 New의 각 속성값을 비교하여 두 문자열의 유사도 값을 계산한다. 또한, 각 속성의 엔트로피 값을 가중치(Weight)로 설정 후 유사도 값과 가중치를 곱을 통해 계산된 값을 모두 더하여 User A에 대한 New의 유사도로 사용한다.
이에 따라, 본 발명은 단순히 일치여부가 아닌 핑거프린팅의 가중치에 따라 스코어링이 가능하고, 고유한 특성이 높은 핑거프린팅이 일치할수록 높은 점수를 부여할 수 있다. 나아가, 각 핑거프린팅을 등급화한 후 스코어링 하는 경우, 고유성만 고려하는 것이 아니라 안정성, 불변성 등의 다수 특성을 고려하여 스코어링이 가능하다.
도 6은 본 발명에서 사용한 디바이스 핑거프린팅 사용자인증 모델의 일례이다. 도 7은 본 발명의 일 실시예에 따른 디바이스 핑거프린트를 이용한 가중치 부여 방법의 흐름도이다.
본 실시예에 따른 디바이스 핑거프린트를 이용한 가중치 부여 방법은, 도 1의 장치(10)와 실질적으로 동일한 구성에서 진행될 수 있다. 따라서, 도 1의 장치(10)와 동일한 구성요소는 동일한 도면부호를 부여하고, 반복되는 설명은 생략한다.
또한, 본 실시예에 따른 디바이스 핑거프린트를 이용한 가중치 부여 방법은 디바이스 핑거프린트를 이용한 가중치 부여를 수행하기 위한 소프트웨어(애플리케이션)에 의해 실행될 수 있다.
본 발명은 디바이스 핑거프린팅의 피처(Feature)별 유사도 스코어링 평가에서 각 피처별로 엔트로피(Entropy)를 고려하여 가중치 점수를 부여한다.
사용자 PC 장치와 브라우저는 데이터를 처리할 때 각각 피처(Feature)들의 고유값을 가지는데 이를 활용하여 개개인을 특정한 것이 핑거프린팅이다. 일부 브라우저는 개인 정보보호 수준을 높여주면서 브라우저가 사용자를 식별하는 것을 막는데 효과적으로 작동한다.
도 6을 참조하면, 디바이스 핑거프린팅의 사용자 인증 모델에서, 사용자가 접속하여 ID와 PW를 입력하면(단계 S00), 디바이스 핑거프린팅을 시작하게 된다(단계 S10). 사용자가 입력한 정보 및 CryptoFP 등의 정보를 기초로 핑거프린팅을 생성한다(단계 S20).
처음 수집된 디바이스 핑거프린팅인 경우(단계 S30), IP와 WebRCT를 통해 얻은 IP를 비교하여 우회 여부를 판단한다(단계 S40). 우회된 IP가 아닌 경우, 생성된 디바이스 핑거프린팅을 저장하고(단계 S50), 우회된 IP인 경우 접근차단 및 추가 인증을 요구한다(단계 S90).
만약, 사용자 핑거프린팅이 저장되어 있다면(단계 S30), 과거의 핑거프린팅 정보와 최근 로그인한 핑거프린팅과 비교하여(단계 S60), 같으면 사용자 인증을 통해 사용자의 접근을 허용한다(단계 S80).
반면, 핑거프린팅 정보가 다르면 각각 핑거프린팅의 유사도 스코어링을 비교하여(단계 S70), 임계값(Threshold) 이상이면 사용자 접근을 허용하고, 그렇지 않으면 접근차단 및 추가인증을 요구하게 된다(단계 S70).
본 발명은 단계 S70에서 디바이스 핑거프린팅의 엔트로피(Entropy)를 고려한 피처별 유사도 스코어링 평가 및 피처별로 엔트로피에 대한 가중치 점수를 부여한다.
디바이스 핑거프린팅은 시간이나 기기에 따라 정보가 변화되어, 같은 디바이스에서 접속을 하더라도 정확히 일치하지 않는 경우가 있다. 이를 통해 사용자는 접속을 하지 못하거나 추가인증을 요구하는 불편한 상황이 생기기 때문에 엔트로피를 이용해 올바르게 이용자를 나누는 것이 중요하다.
도 7을 참조하면, 본 실시예에 따른 디바이스 핑거프린트를 이용한 가중치 부여 방법은, 사용자가 로그인 한 경우, 과거의 디바이스 핑거프린팅 정보와 최근 로그인한 디바이스 핑거프린팅 정보의 각 피처별로 유사도 값을 측정한다(단계 S71).
유사도 스코어링 방법은 코사인 유사도(Cosine Similarity), 자카드 유사도(Jaccard Similarity), 레벤슈타인 거리(Levenshtein Distance) 등이 있다. 유사도 계산 방법의 문제는 동일한 항목 개수나 핑거프린트 전체 피처에 대한 유사도를 계산하여 정확하게 유사도를 도출할 수 없다. 상기 제시한 방법들은 피처를 통합한 유사도를 비교하는 방법이 아닌 각 피처 특징에 맞는 유사도 방법에 대한 예들이다.
유사도는 두 데이터가 얼마나 같은지를 나타내는 척도이다. 모든 분야에서 데이터간의 유사도를 측정하는 것은 중요하지만, 분류에서 가장 기반이 되는 것이며 이를 통해서 더 복잡한 것들을 할 수 있게 해준다. 디바이스 핑거프린팅은 피처에 따라 유사도 계산방법을 다르게하여 보다 정확하게 분류할 수 있게 도와준다.
디바이스 핑거프린팅의 각 피처별로 디바이스 핑거프린팅 정보의 식별성에 대한 확률을 나타내는 엔트로피를 계산한다(단계 S72).
각각 피처는 다양하고 많은 속성의 정보를 사용할수록 식별성이 증가한다. 하지만 피처는 식별성뿐만 아니라 다양한 기준이 존재한다. 그 기준에 대한 프리미티브 특징에 따라 선택하여 사용이 가능하다. 식별성(고유성), 안정성, 불변성, 프라이버스 등 기준별 피처를 등급화 해야 할 필요성이 있다.
특정 속성을 가지는 핑거프린트가 얼마의 확률로 고유한지 나타내는 것을 식별성이라고 한다. 식별성은 정보 엔트로피를 측정하여 나타낸다. 엔트로피는 평균 정보량을 말하며 특정 사건이 일어날 확률이 낮을수록 불확실성은 커지고 엔트로피, 즉 정보량은 커지기 때문에 엔트로피가 클수록 핑거프린트가 중복될 확률은 낮아지고 식별성은 높다는 것을 의미한다.
예를 들어, 과거의 디바이스 핑거프린팅 정보의 피처별 최소 및 최대 범위를 기초로 계산할 수 있으나, 엔트로피 계산 방법은 어떤 방식이라도 적용 가능하다.
계산된 피처별 엔트로피를 대응하는 각 피처의 유사도 값에 가중치로 적용하여 디바이스 핑거프린팅의 전체 유사도 점수를 계산한다(단계 S73).
디바이스 스코어는 각 프린팅 속성별로 수학적 유사도 계산의 총합으로 계산된다. 일례로, 핑거프린팅의 등급은 피처의 변화에 따라 정하게 되는데 1등급은 Cookie Enabled, HTTP encoding 2등급은 Screen, Timezone, 3등급은 Useragent, Font, Plugin으로 분류될 수 있다.
디바이스 스코어는 각 피처에서 얻은 엔트로피를 통해 기준 가중치에 엔트로피 값을 곱해준다. 다시 말해, 각 디바이스 핑거프린팅의 피처의 유사도를 계산한 0~1 사이의 값인 스코어와 엔트로피를 곱하고 모두 더하여 총 스코어링을 계산할 수 있다.
상기 디바이스 핑거프린팅의 전체 유사도 점수를 미리 설정한 임계값과 비교하여, 사용자를 인증한다(단계 S74).
상기 디바이스 핑거프린팅의 유사도 점수가 미리 설정한 임계값 이상인 경우, 사용자의 접근을 허용하고, 상기 디바이스 핑거프린팅의 유사도 점수가 상기 임계값 보다 작은 경우, 접근차단 및 추가인증을 요구할 수 있다.
본 발명은 단순히 일치여부가 아닌 핑거프린팅의 가중치에 따라 스코어링이 가능하고, 고유한 특성이 높은 핑거프린팅이 일치할수록 높은 점수를 부여하여 보다 정확하게 이용자를 식별할 수 있다.
이와 같은, 디바이스 핑거프린트를 이용한 가중치 부여 방법은 애플리케이션으로 구현되거나 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다.
상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것들이거니와 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다.
컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다.
프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상에서는 실시예들을 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
표준 웹 기능을 사용하여 이용자로부터 수집 가능한 디바이스 핑거프린트는 매우 다양하다. 이용자를 식별하기 위해 많은 속성의 정보를 사용할수록 식별성(고유성)은 증가할 수 있지만, 정보의 무분별한 수집은 지양되어야 한다. 따라서, 디바이스 핑거프린트가 충분히 의미 있는 정보인지, 브라우저에서 수집할 수 있는지 등 다양한 기준에 따른 분석이 필요하며 사용 목적에 따라 핵심적인 정보를 선택하여 사용할 필요가 있다.
웹 표준을 지원하는 웹 브라우저를 통해 IP 정보, 브라우저 정보, 시스템 정보 등 상위정보 10개와 하위정보 50여 가지로 나누어 엔트로피 스코어를 통해 기존의 디바이스인증과 식별 등을 보다 정확하고 정밀하게 분석할 수 있다. 이처럼 디바이스 핑거프린팅은 보안 목적으로 이용자의 접속이력관리, 추적, 블랙리스트, 디바이스 스코어링 등 다양한 형태로 활용 가능하다.
10: 디바이스 핑거프린트를 이용한 가중치 부여 장치
110: 유사도 측정부
130: 엔트로피 계산부
150: 유사도 스코어링부
170: 임계값 비교부
110: 유사도 측정부
130: 엔트로피 계산부
150: 유사도 스코어링부
170: 임계값 비교부
Claims (11)
- 사용자가 로그인 한 경우, 과거의 디바이스 핑거프린팅 정보와 최근 로그인한 디바이스 핑거프린팅 정보의 각 피처별로 유사도 값을 측정하는 단계;
디바이스 핑거프린팅의 각 피처별로 디바이스 핑거프린팅 정보의 식별성에 대한 확률을 나타내는 엔트로피를 계산하는 단계;
계산된 피처별 엔트로피를 대응하는 각 피처의 유사도 값에 가중치로 적용하여 디바이스 핑거프린팅의 전체 유사도 점수를 계산하는 단계; 및
상기 디바이스 핑거프린팅의 전체 유사도 점수를 미리 설정한 임계값과 비교하여, 사용자를 인증하는 단계;를 포함하는, 디바이스 핑거프린트를 이용한 가중치 부여 방법.
- 제1항에 있어서, 상기 각 피처별로 유사도 값을 측정하는 단계는,
코사인 유사도(Cosine Similarity), 자카드 유사도(Jaccard Similarity) 및 레벤슈타인 거리(Levenshtein Distance) 중 적어도 하나를 이용하는, 디바이스 핑거프린트를 이용한 가중치 부여 방법.
- 제1항에 있어서, 상기 디바이스 핑거프린팅의 전체 유사도 점수를 계산하는 단계는,
계산된 피처별 엔트로피를 대응하는 각 피처의 유사도 값에 가중치로 곱한 값들의 수학적인 총합으로 계산하는, 디바이스 핑거프린트를 이용한 가중치 부여 방법.
- 제1항에 있어서, 상기 엔트로피를 계산하는 단계는,
과거의 디바이스 핑거프린팅 정보의 피처별 최소 및 최대 범위를 기초로 계산하는, 디바이스 핑거프린트를 이용한 가중치 부여 방법.
- 제1항에 있어서, 상기 사용자를 인증하는 단계는,
상기 디바이스 핑거프린팅의 유사도 점수가 미리 설정한 임계값 이상인 경우, 사용자의 접근을 허용하는 단계; 및
상기 디바이스 핑거프린팅의 유사도 점수가 상기 임계값 보다 작은 경우, 접근차단 및 추가인증을 요구하는 단계;를 포함하는, 디바이스 핑거프린트를 이용한 가중치 부여 방법.
- 제1항에 따른 상기 디바이스 핑거프린트를 이용한 가중치 부여 방법을 수행하기 위한 컴퓨터 프로그램이 기록된 컴퓨터로 판독 가능한 저장 매체.
- 사용자가 로그인 한 경우, 과거의 디바이스 핑거프린팅 정보와 최근 로그인한 디바이스 핑거프린팅 정보의 각 피처별로 유사도 값을 측정하는 유사도 측정부;
디바이스 핑거프린팅의 각 피처별로 디바이스 핑거프린팅 정보의 식별성에 대한 확률을 나타내는 엔트로피를 계산하는 엔트로피 계산부;
계산된 피처별 엔트로피를 대응하는 각 피처의 유사도 값에 가중치로 적용하여 디바이스 핑거프린팅의 전체 유사도 점수를 계산하는 유사도 스코어링부; 및
상기 디바이스 핑거프린팅의 전체 유사도 점수를 미리 설정한 임계값과 비교하여, 사용자를 인증하는 임계값 비교부;를 포함하는, 디바이스 핑거프린트를 이용한 가중치 부여 장치.
- 제7항에 있어서, 상기 각 유사도 측정부는,
코사인 유사도(Cosine Similarity), 자카드 유사도(Jaccard Similarity) 및 레벤슈타인 거리(Levenshtein Distance) 중 적어도 하나를 이용하는, 디바이스 핑거프린트를 이용한 가중치 부여 장치.
- 제7항에 있어서, 상기 유사도 스코어링부는,
계산된 피처별 엔트로피를 대응하는 각 피처의 유사도 값에 가중치로 곱한 값들의 수학적인 총합으로 계산하는, 디바이스 핑거프린트를 이용한 가중치 부여 장치.
- 제7항에 있어서, 상기 엔트로피 계산부는,
과거의 디바이스 핑거프린팅 정보의 피처별 최소 및 최대 범위를 기초로 계산하는, 디바이스 핑거프린트를 이용한 가중치 부여 장치.
- 제7항에 있어서, 상기 임계값 비교부는,
상기 디바이스 핑거프린팅의 유사도 점수가 미리 설정한 임계값 이상인 경우, 사용자의 접근을 허용하고,
상기 디바이스 핑거프린팅의 유사도 점수가 상기 임계값 보다 작은 경우, 접근차단 및 추가인증을 요구하는, 디바이스 핑거프린트를 이용한 가중치 부여 장치.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200187159A KR102448784B1 (ko) | 2020-12-30 | 2020-12-30 | 디바이스 핑거프린트를 이용한 가중치 부여 방법, 이를 수행하기 위한 기록 매체 및 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200187159A KR102448784B1 (ko) | 2020-12-30 | 2020-12-30 | 디바이스 핑거프린트를 이용한 가중치 부여 방법, 이를 수행하기 위한 기록 매체 및 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20220095539A true KR20220095539A (ko) | 2022-07-07 |
KR102448784B1 KR102448784B1 (ko) | 2022-09-28 |
Family
ID=82398272
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200187159A KR102448784B1 (ko) | 2020-12-30 | 2020-12-30 | 디바이스 핑거프린트를 이용한 가중치 부여 방법, 이를 수행하기 위한 기록 매체 및 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102448784B1 (ko) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20170056045A (ko) * | 2015-11-12 | 2017-05-23 | 주식회사 엔젠소프트 | 다양한 웹 서비스 환경에서 사용자의 행위 패턴 분석을 통한 이상행위 탐지 방법과 그를 위한 장치 |
JP6405343B2 (ja) | 2016-07-20 | 2018-10-17 | Necパーソナルコンピュータ株式会社 | 情報処理装置、情報処理方法、およびプログラム |
KR20180123112A (ko) * | 2016-03-15 | 2018-11-14 | 알리바바 그룹 홀딩 리미티드 | 웹사이트 로그인 방법 및 장치 |
JP2019185673A (ja) * | 2018-04-17 | 2019-10-24 | 株式会社Nttドコモ | 認証装置 |
KR102100346B1 (ko) | 2019-08-29 | 2020-04-14 | (주)프람트테크놀로지 | 데이터셋 관리 장치 및 방법 |
-
2020
- 2020-12-30 KR KR1020200187159A patent/KR102448784B1/ko active IP Right Grant
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20170056045A (ko) * | 2015-11-12 | 2017-05-23 | 주식회사 엔젠소프트 | 다양한 웹 서비스 환경에서 사용자의 행위 패턴 분석을 통한 이상행위 탐지 방법과 그를 위한 장치 |
KR101767454B1 (ko) | 2015-11-12 | 2017-08-14 | 주식회사 엔젠소프트 | 다양한 웹 서비스 환경에서 사용자의 행위 패턴 분석을 통한 이상행위 탐지 방법과 그를 위한 장치 |
KR20180123112A (ko) * | 2016-03-15 | 2018-11-14 | 알리바바 그룹 홀딩 리미티드 | 웹사이트 로그인 방법 및 장치 |
JP6405343B2 (ja) | 2016-07-20 | 2018-10-17 | Necパーソナルコンピュータ株式会社 | 情報処理装置、情報処理方法、およびプログラム |
JP2019185673A (ja) * | 2018-04-17 | 2019-10-24 | 株式会社Nttドコモ | 認証装置 |
KR102100346B1 (ko) | 2019-08-29 | 2020-04-14 | (주)프람트테크놀로지 | 데이터셋 관리 장치 및 방법 |
Also Published As
Publication number | Publication date |
---|---|
KR102448784B1 (ko) | 2022-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Golla et al. | On the accuracy of password strength meters | |
CN109325326B (zh) | 非结构化数据访问时的数据脱敏方法、装置、设备及介质 | |
CN106055574B (zh) | 一种识别非法统一资源标识符url的方法与装置 | |
CN108229963B (zh) | 用户操作行为的风险识别方法及装置 | |
US20180293377A1 (en) | Suspicious behavior detection system, information-processing device, method, and program | |
CN111079186B (zh) | 数据分析的方法、装置、设备和存储介质 | |
CN109933644B (zh) | 一种字符串匹配方法及装置 | |
CN110034921A (zh) | 基于带权模糊hash的webshell检测方法 | |
CN105740667A (zh) | 一种基于用户行为的信息识别方法及装置 | |
US11533373B2 (en) | Global iterative clustering algorithm to model entities' behaviors and detect anomalies | |
CN112839014A (zh) | 建立识别异常访问者模型的方法、***、设备及介质 | |
CN110750710A (zh) | 风控协议预警方法、装置、计算机设备和存储介质 | |
CN114493255A (zh) | 基于知识图谱的企业异常监控方法及其相关设备 | |
CN115086060A (zh) | 一种流量检测方法、装置、设备及可读存储介质 | |
CN107305615B (zh) | 数据表识别方法和*** | |
CN116701641B (zh) | 一种非结构化数据的分级分类方法及装置 | |
EP3451611B1 (en) | Method and apparatus for setting mobile device identifier | |
CN116881687B (zh) | 一种基于特征提取的电网敏感数据识别方法及装置 | |
KR102448784B1 (ko) | 디바이스 핑거프린트를 이용한 가중치 부여 방법, 이를 수행하기 위한 기록 매체 및 장치 | |
CN117609992A (zh) | 一种数据泄密检测方法、装置及存储介质 | |
CN116055067B (zh) | 一种弱口令检测的方法、装置、电子设备及介质 | |
CN109409091B (zh) | 检测Web页面的方法、装置、设备以及计算机存储介质 | |
CN113051601A (zh) | 敏感数据识别方法、装置、设备和介质 | |
CN115563288A (zh) | 一种文本检测的方法、装置、电子设备及存储介质 | |
CN115809466B (zh) | 基于stride模型的安全需求生成方法、装置、电子设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |